strictdoc 0.0.56a2__tar.gz → 0.0.56a4__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.
Files changed (553) hide show
  1. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/PKG-INFO +2 -2
  2. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/pyproject.toml +1 -1
  3. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/__init__.py +1 -1
  4. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/excel/export/excel_generator.py +35 -28
  5. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/excel/import_/excel_to_sdoc_converter.py +8 -18
  6. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p01_sdoc/reqif_to_sdoc_converter.py +18 -25
  7. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p01_sdoc/sdoc_to_reqif_converter.py +19 -55
  8. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p02_simple/reqif_to_sdoc_converter.py +13 -26
  9. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p02_simple/sdoc_to_reqif_converter.py +17 -55
  10. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p11_polarion/reqif_to_sdoc_converter.py +20 -26
  11. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/error_handling.py +32 -8
  12. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/grammar/grammar.py +46 -8
  13. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/grammar/grammar_builder.py +14 -11
  14. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/grammar/grammar_grammar.py +7 -9
  15. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/grammar/type_system.py +1 -21
  16. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/grammar_reader.py +30 -13
  17. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/constants.py +2 -4
  18. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/document.py +0 -2
  19. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/document_config.py +1 -1
  20. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/document_grammar.py +29 -38
  21. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/free_text.py +6 -7
  22. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/node.py +134 -247
  23. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/object_factory.py +22 -30
  24. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/reference.py +2 -2
  25. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/type_system.py +9 -54
  26. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/processor.py +32 -45
  27. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/reader.py +10 -29
  28. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/validations/sdoc_validator.py +61 -30
  29. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/writer.py +18 -59
  30. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/cli/cli_arg_parser.py +10 -14
  31. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/cli/command_parser_builder.py +0 -8
  32. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/cli/main.py +47 -55
  33. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/commands/about_command.py +1 -2
  34. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/commands/version_command.py +1 -1
  35. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/actions/export_action.py +2 -2
  36. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/document_iterator.py +13 -12
  37. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/file_traceability_index.py +1 -1
  38. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/project_config.py +0 -22
  39. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/query_engine/query_object.py +2 -9
  40. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/traceability_index_builder.py +12 -1
  41. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/create_requirement.py +2 -11
  42. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/update_grammar_element.py +3 -9
  43. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/update_requirement.py +3 -17
  44. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/grammar_element_form_object.py +0 -3
  45. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/requirement_form_object.py +82 -56
  46. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/project_statistics.py +4 -17
  47. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/grammar_form_element/index.jinja +4 -6
  48. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/statement/index.jinja +2 -2
  49. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/fields/requirement_fields.jinja +1 -1
  50. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/json/json_generator.py +6 -35
  51. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/templates/requirement.jinja.rst +4 -4
  52. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/spdx/spdx_generator.py +1 -1
  53. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/spdx/spdx_to_sdoc_converter.py +9 -42
  54. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/git/project_diff_analyzer.py +19 -79
  55. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/parallelizer.py +30 -10
  56. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/string.py +6 -0
  57. strictdoc-0.0.56a4/strictdoc/helpers/textx.py +30 -0
  58. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/routers/main_router.py +4 -5
  59. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/tasks.py +3 -0
  60. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/tools/confluence_html_table_import.py +2 -0
  61. strictdoc-0.0.56a2/strictdoc/helpers/textx.py +0 -9
  62. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/.gitignore +0 -0
  63. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/CHANGELOG.md +0 -0
  64. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/CONTRIBUTING.md +0 -0
  65. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/Dockerfile +0 -0
  66. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/LICENSE +0 -0
  67. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/NOTICE +0 -0
  68. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/README.md +0 -0
  69. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/docs_extra/DO178_requirements.sdoc +0 -0
  70. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/docs_extra/Zephyr_requirements.sdoc +0 -0
  71. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/drafts/requirements/strictdoc.toml +0 -0
  72. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/drafts/rst_examples.sdoc +0 -0
  73. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/drafts/strictdoc_low_level_requirements.sdoc_.sdoc +0 -0
  74. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/mypy.ini +0 -0
  75. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/requirements.bootstrap.txt +0 -0
  76. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/requirements.check.txt +0 -0
  77. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/ruff.toml +0 -0
  78. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/__init__.py +0 -0
  79. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/excel/__init__.py +0 -0
  80. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/excel/excel_import.py +0 -0
  81. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/excel/export/__init__.py +0 -0
  82. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/excel/import_/__init__.py +0 -0
  83. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/__init__.py +0 -0
  84. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p01_sdoc/__init__.py +0 -0
  85. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p02_simple/__init__.py +0 -0
  86. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/p11_polarion/__init__.py +0 -0
  87. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/reqif_export.py +0 -0
  88. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/reqif_import.py +0 -0
  89. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/reqif/sdoc_reqif_fields.py +0 -0
  90. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/__init__.py +0 -0
  91. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/constants.py +0 -0
  92. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/document_reference.py +0 -0
  93. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/errors/__init__.py +0 -0
  94. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/errors/document_tree_error.py +0 -0
  95. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/free_text_reader.py +0 -0
  96. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/grammar/__init__.py +0 -0
  97. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/__init__.py +0 -0
  98. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/anchor.py +0 -0
  99. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/document_from_file.py +0 -0
  100. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/document_view.py +0 -0
  101. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/inline_link.py +0 -0
  102. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/object.py +0 -0
  103. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/models/section.py +0 -0
  104. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/pickle_cache.py +0 -0
  105. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc/validations/__init__.py +0 -0
  106. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc_source_code/__init__.py +0 -0
  107. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc_source_code/grammar.py +0 -0
  108. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc_source_code/models/__init__.py +0 -0
  109. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc_source_code/models/range_marker.py +0 -0
  110. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc_source_code/models/requirement_marker.py +0 -0
  111. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc_source_code/models/source_file_info.py +0 -0
  112. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/backend/sdoc_source_code/reader.py +0 -0
  113. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/cli/__init__.py +0 -0
  114. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/cli/argument_int_range.py +0 -0
  115. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/commands/__init__.py +0 -0
  116. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/commands/diff_command.py +0 -0
  117. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/commands/dump_grammar_command.py +0 -0
  118. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/commands/manage_autouid_command.py +0 -0
  119. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/__init__.py +0 -0
  120. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/actions/__init__.py +0 -0
  121. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/actions/import_action.py +0 -0
  122. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/actions/passthrough_action.py +0 -0
  123. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/analyzers/document_stats.py +0 -0
  124. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/analyzers/document_uid_analyzer.py +0 -0
  125. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/asset_manager.py +0 -0
  126. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/document_finder.py +0 -0
  127. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/document_meta.py +0 -0
  128. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/document_tree.py +0 -0
  129. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/document_tree_iterator.py +0 -0
  130. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/environment.py +0 -0
  131. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/file_tree.py +0 -0
  132. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/finders/__init__.py +0 -0
  133. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/finders/source_files_finder.py +0 -0
  134. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/graph/abstract_bucket.py +0 -0
  135. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/graph/many_to_many_set.py +0 -0
  136. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/graph/one_to_one_dictionary.py +0 -0
  137. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/graph/validations.py +0 -0
  138. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/graph_database.py +0 -0
  139. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/query_engine/grammar.py +0 -0
  140. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/query_engine/query_reader.py +0 -0
  141. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/source_tree.py +0 -0
  142. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/traceability_index.py +0 -0
  143. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/constants.py +0 -0
  144. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/delete_section.py +0 -0
  145. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/section.py +0 -0
  146. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/update_document_config.py +0 -0
  147. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/update_free_text.py +0 -0
  148. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/update_grammar.py +0 -0
  149. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/update_included_document.py +0 -0
  150. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/transforms/validation_error.py +0 -0
  151. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/core/tree_cycle_detector.py +0 -0
  152. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/__init__.py +0 -0
  153. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/document_dot_generator.py +0 -0
  154. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/dot_templates.py +0 -0
  155. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile1/document.dot +0 -0
  156. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile1/folder.dot +0 -0
  157. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile1/legend.dot +0 -0
  158. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile1/requirement.dot +0 -0
  159. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile1/section.dot +0 -0
  160. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile1/top_level.dot +0 -0
  161. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile2/document.dot +0 -0
  162. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile2/folder.dot +0 -0
  163. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile2/requirement.dot +0 -0
  164. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile2/section.dot +0 -0
  165. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/dot/templates/profile2/top_level.dot +0 -0
  166. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/__init__.py +0 -0
  167. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/autogen.css +0 -0
  168. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/base.css +0 -0
  169. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/collapsible_list.js +0 -0
  170. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/collapsible_toc.js +0 -0
  171. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/collapsible_tree.js +0 -0
  172. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/content.css +0 -0
  173. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/anchor_controller.js +0 -0
  174. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/copy_to_clipboard_controller.js +0 -0
  175. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/deletable_field_controller.js +0 -0
  176. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/draggable_list_controller.js +0 -0
  177. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/dropdown_menu_controller.js +0 -0
  178. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/editable_field_controller.js +0 -0
  179. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/modal_controller.js +0 -0
  180. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/movable_field_controller.js +0 -0
  181. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/scroll_into_view_controller.js +0 -0
  182. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/controllers/tabs_controller.js +0 -0
  183. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/diff.css +0 -0
  184. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/diff.js +0 -0
  185. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/element.css +0 -0
  186. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/favicon.ico +0 -0
  187. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/fonts/NotoSans-Italic-VariableFont_wdth,wght.ttf +0 -0
  188. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/fonts/NotoSans-VariableFont_wdth,wght.ttf +0 -0
  189. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/fonts/NotoSansMono-VariableFont_wdth,wght.ttf +0 -0
  190. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/form.css +0 -0
  191. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/html2pdf/bundle.js +0 -0
  192. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/layout.css +0 -0
  193. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/node.css +0 -0
  194. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/pan_with_space.js +0 -0
  195. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/project_tree.css +0 -0
  196. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/project_tree.js +0 -0
  197. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/requirement-tree.css +0 -0
  198. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/requirement.css +0 -0
  199. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/requirement__temporary.css +0 -0
  200. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/requirements-coverage.js +0 -0
  201. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/resizable_bar.js +0 -0
  202. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/source-code-coverage.js +0 -0
  203. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/source.css +0 -0
  204. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/stimulus.min.js +0 -0
  205. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/table_vew.css +0 -0
  206. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/toc_highlighting.js +0 -0
  207. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/traceability_matrix.css +0 -0
  208. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/tree(not_in_use).css +0 -0
  209. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/turbo.min.js +0 -0
  210. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/viewtype_menu.js +0 -0
  211. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static/zoomable.js +0 -0
  212. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/LICENSE-MATHJAX +0 -0
  213. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/tex.js +0 -0
  214. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_AMS-Regular.woff +0 -0
  215. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Bold.woff +0 -0
  216. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Regular.woff +0 -0
  217. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Bold.woff +0 -0
  218. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Regular.woff +0 -0
  219. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Bold.woff +0 -0
  220. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Italic.woff +0 -0
  221. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff +0 -0
  222. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-BoldItalic.woff +0 -0
  223. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff +0 -0
  224. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Regular.woff +0 -0
  225. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Bold.woff +0 -0
  226. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Italic.woff +0 -0
  227. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Regular.woff +0 -0
  228. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Script-Regular.woff +0 -0
  229. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff +0 -0
  230. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff +0 -0
  231. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff +0 -0
  232. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff +0 -0
  233. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Typewriter-Regular.woff +0 -0
  234. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Bold.woff +0 -0
  235. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff +0 -0
  236. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Zero.woff +0 -0
  237. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mathjax/tex-mml-chtml.js +0 -0
  238. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/mermaid/mermaid.min.js +0 -0
  239. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/nestor/bundle.umd.js +0 -0
  240. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/_static_extra/rapidoc/rapidoc-min.js +0 -0
  241. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/document_type.py +0 -0
  242. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/document_config_form_object.py +0 -0
  243. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/form_object.py +0 -0
  244. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/grammar_form_object.py +0 -0
  245. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/included_document_form_object.py +0 -0
  246. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/rows/row_with_grammar_element_form_object.py +0 -0
  247. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/form_objects/section_form_object.py +0 -0
  248. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/__init__.py +0 -0
  249. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/document.py +0 -0
  250. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/document_deep_trace.py +0 -0
  251. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/document_pdf.py +0 -0
  252. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/document_table.py +0 -0
  253. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/document_trace.py +0 -0
  254. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/document_tree.py +0 -0
  255. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/source_file_coverage.py +0 -0
  256. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/source_file_view_generator.py +0 -0
  257. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/traceability_matrix.py +0 -0
  258. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/diff_screen_results_view_object.py +0 -0
  259. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/diff_screen_view_object.py +0 -0
  260. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/document_screen_view_object.py +0 -0
  261. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/nestor_view_object.py +0 -0
  262. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/project_statistics_view_object.py +0 -0
  263. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/project_tree_stats.py +0 -0
  264. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/project_tree_view_object.py +0 -0
  265. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/search_screen_view_object.py +0 -0
  266. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/source_file_view_object.py +0 -0
  267. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/generators/view_objects/traceability_matrix_view_object.py +0 -0
  268. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/html_generator.py +0 -0
  269. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/html_templates.py +0 -0
  270. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/renderers/__init__.py +0 -0
  271. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/renderers/html_fragment_writer.py +0 -0
  272. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/renderers/link_renderer.py +0 -0
  273. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/renderers/markup_renderer.py +0 -0
  274. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/renderers/text_to_html_writer.py +0 -0
  275. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg__separator.jinja.html +0 -0
  276. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_add.jinja.html +0 -0
  277. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_add_above.jinja +0 -0
  278. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_add_below.jinja +0 -0
  279. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_add_child.jinja +0 -0
  280. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_anchor.jinja +0 -0
  281. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_back.jinja.html +0 -0
  282. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_book.jinja.html +0 -0
  283. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_close.jinja +0 -0
  284. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_code.jinja.html +0 -0
  285. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_copy.jinja +0 -0
  286. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_delete.jinja.html +0 -0
  287. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_diff.jinja +0 -0
  288. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_document.jinja.html +0 -0
  289. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_done.jinja +0 -0
  290. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_edit.jinja.html +0 -0
  291. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_expand.jinja.html +0 -0
  292. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_file.jinja +0 -0
  293. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_folder.jinja +0 -0
  294. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_folder_collapse.jinja +0 -0
  295. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_folder_sm.jinja +0 -0
  296. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_fragment.jinja +0 -0
  297. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_fragment_draft.jinja +0 -0
  298. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_gear.jinja.html +0 -0
  299. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_go_to_doc.jinja +0 -0
  300. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_index.jinja.html +0 -0
  301. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_list.jinja.html +0 -0
  302. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_maximize.jinja +0 -0
  303. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_minimize.jinja +0 -0
  304. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_minusminus.jinja.html +0 -0
  305. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_move_down.jinja.html +0 -0
  306. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_move_up.jinja.html +0 -0
  307. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_plusplus.jinja.html +0 -0
  308. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_project.jinja.html +0 -0
  309. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_requirement.jinja.html +0 -0
  310. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_reset.jinja +0 -0
  311. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_search.jinja +0 -0
  312. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_source.jinja.html +0 -0
  313. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_stat.jinja +0 -0
  314. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_sync.jinja +0 -0
  315. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_toc.jinja.html +0 -0
  316. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_res/svg_ico16_tree.jinja +0 -0
  317. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_shared/nav.jinja.html +0 -0
  318. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_shared/requirement_block/files_tree.jinja.html +0 -0
  319. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_shared/requirement_tree_left.jinja.html +0 -0
  320. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_shared/requirement_tree_right.jinja.html +0 -0
  321. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/_shared/tags.jinja.html +0 -0
  322. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/_shared/stream_refresh_document.jinja.html +0 -0
  323. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/_shared/stream_updated_toc.jinja.html +0 -0
  324. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/add_requirement_comment/stream_add_requirement_comment.jinja.html +0 -0
  325. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/add_requirement_relation/stream_add_requirement_relation.jinja.html +0 -0
  326. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/create_requirement/stream_cancel_new_requirement.jinja.html +0 -0
  327. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/create_requirement/stream_created_requirement.jinja.html +0 -0
  328. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/create_requirement/stream_new_requirement.jinja.html +0 -0
  329. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/create_section/stream_cancel_new_section.jinja.html +0 -0
  330. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/create_section/stream_created_section.jinja.html +0 -0
  331. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/create_section/stream_new_section.jinja.html +0 -0
  332. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_confirm_delete_requirement.jinja +0 -0
  333. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_delete_requirement.jinja.html +0 -0
  334. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/delete_section/stream_confirm_delete_section.jinja +0 -0
  335. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/delete_section/stream_delete_section.jinja.html +0 -0
  336. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_cancel_edit_document_config.jinja.html +0 -0
  337. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_edit_document_config.jinja.html +0 -0
  338. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_save_document_config.jinja.html +0 -0
  339. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/edit_requirement/stream_edit_requirement.jinja.html +0 -0
  340. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/edit_requirement/stream_update_requirement.jinja.html +0 -0
  341. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/edit_section/stream_edit_section.jinja.html +0 -0
  342. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/document/edit_section/stream_updated_section.jinja.html +0 -0
  343. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_requirement.jinja +0 -0
  344. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_section.jinja +0 -0
  345. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_form_import_reqif_document.jinja.html +0 -0
  346. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_refresh_with_imported_reqif_document.jinja.html +0 -0
  347. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/project_index/stream_create_document.jinja.html +0 -0
  348. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/actions/project_index/stream_new_document.jinja.html +0 -0
  349. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/base.jinja.html +0 -0
  350. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/abstract/index.jinja +0 -0
  351. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/abstract/pdf.jinja +0 -0
  352. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/anchor/index.jinja +0 -0
  353. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/badge/index.jinja +0 -0
  354. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/button/cancel.jinja +0 -0
  355. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/button/confirm.jinja +0 -0
  356. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/button/delete.jinja +0 -0
  357. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/button/diff.jinja +0 -0
  358. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/button/search.jinja +0 -0
  359. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/button/submit.jinja +0 -0
  360. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/confirm/_usage_example.jinja +0 -0
  361. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/confirm/index.jinja +0 -0
  362. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/document_title/index.jinja +0 -0
  363. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/field/index.jinja +0 -0
  364. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/field/contenteditable/index.jinja +0 -0
  365. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/field/file/index.jinja +0 -0
  366. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/field/text/index.jinja +0 -0
  367. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/field_action_button/index.jinja +0 -0
  368. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/index.jinja +0 -0
  369. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/row/index.jinja +0 -0
  370. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/example.jinja.html +0 -0
  371. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/frame.jinja +0 -0
  372. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/stream.jinja +0 -0
  373. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/row/row_with_comment.jinja +0 -0
  374. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/row/row_with_relation.jinja +0 -0
  375. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/row/row_with_text_field.jinja +0 -0
  376. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/form/search.jinja +0 -0
  377. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/grammar_form/index.jinja +0 -0
  378. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/grammar_form/row_with_grammar_element/index.jinja +0 -0
  379. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/grammar_form/row_with_new_grammar_element/index.jinja +0 -0
  380. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/grammar_form_element/row_with_custom_field/index.jinja +0 -0
  381. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/grammar_form_element/row_with_relation/index.jinja +0 -0
  382. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/grammar_form_element/row_with_reserved_field/index.jinja +0 -0
  383. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/header/_usage_example.jinja +0 -0
  384. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/header/header_pagetype.jinja +0 -0
  385. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/header/index.jinja +0 -0
  386. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/included_document_form/index.jinja +0 -0
  387. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/meta/index.jinja +0 -0
  388. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/modal/_usage_example.jinja +0 -0
  389. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/modal/form.jinja +0 -0
  390. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/modal/index.jinja +0 -0
  391. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/node/card.jinja +0 -0
  392. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/node/index.jinja +0 -0
  393. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/node/node_controls/card.jinja +0 -0
  394. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/node/node_controls/index.jinja +0 -0
  395. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/node/root.jinja +0 -0
  396. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/card.jinja +0 -0
  397. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/card_extends_card.jinja +0 -0
  398. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/comments/index.jinja +0 -0
  399. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/files/index.jinja +0 -0
  400. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/index.jinja +0 -0
  401. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/index_extends_node.jinja +0 -0
  402. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/links/index.jinja +0 -0
  403. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/meta/index.jinja +0 -0
  404. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/multiline/index.jinja +0 -0
  405. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/pdf.jinja +0 -0
  406. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/rationale/index.jinja +0 -0
  407. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/tiny.jinja +0 -0
  408. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/tiny_extends_card.jinja +0 -0
  409. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/title/index.jinja +0 -0
  410. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/title/pdf.jinja +0 -0
  411. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/requirement/uid/index.jinja +0 -0
  412. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/resizable_bar/index.jinja +0 -0
  413. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/card.jinja +0 -0
  414. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/card_extends_card.jinja +0 -0
  415. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/h/index.jinja +0 -0
  416. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/h/pdf.jinja +0 -0
  417. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/index.jinja +0 -0
  418. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/index_extends_node.jinja +0 -0
  419. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/pdf.jinja +0 -0
  420. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/text/index.jinja +0 -0
  421. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/tiny.jinja +0 -0
  422. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/tiny_extends_card.jinja +0 -0
  423. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/title/index.jinja +0 -0
  424. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/section/uid/index.jinja +0 -0
  425. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/components/table_key_value/index.jinja +0 -0
  426. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/rst/anchor.jinja +0 -0
  427. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/frame_header_document_title.jinja +0 -0
  428. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_requirement.jinja +0 -0
  429. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_section.jinja +0 -0
  430. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/frame_toc.jinja +0 -0
  431. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/project_tree.jinja +0 -0
  432. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/project_tree_child_documents.jinja +0 -0
  433. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_project_tree.jinja +0 -0
  434. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_toc.jinja +0 -0
  435. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/toc.jinja +0 -0
  436. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/_shared/viewtype_menu.jinja +0 -0
  437. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/actions.jinja +0 -0
  438. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/frame_document_config.jinja.html +0 -0
  439. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/frame_document_config_edit.jinja.html +0 -0
  440. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/frame_document_content.jinja.html +0 -0
  441. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/frame_requirement_form.jinja +0 -0
  442. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/frame_section_form.jinja +0 -0
  443. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/index.jinja +0 -0
  444. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/document/main.jinja +0 -0
  445. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/pdf/index.jinja +0 -0
  446. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/pdf/main.jinja +0 -0
  447. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/pdf/template/footer.jinja +0 -0
  448. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/pdf/template/frontpage.jinja +0 -0
  449. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/pdf/template/header.jinja +0 -0
  450. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/pdf/toc.jinja +0 -0
  451. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/table/index.jinja +0 -0
  452. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/table/main.jinja +0 -0
  453. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/traceability/index.jinja +0 -0
  454. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/traceability/main.jinja +0 -0
  455. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/traceability_deep/index.jinja +0 -0
  456. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/document/traceability_deep/main.jinja +0 -0
  457. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/changelog_content.jinja +0 -0
  458. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/diff_content.jinja +0 -0
  459. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/diff_controls.jinja +0 -0
  460. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/fields/document_fields.jinja +0 -0
  461. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/fields/section_fields.jinja +0 -0
  462. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/form.jinja +0 -0
  463. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/frame_changelog_result.jinja +0 -0
  464. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/frame_diff_result.jinja +0 -0
  465. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/index.jinja +0 -0
  466. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/legend.jinja +0 -0
  467. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/main.jinja +0 -0
  468. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/nav_tabs.jinja +0 -0
  469. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/node/requirement.jinja +0 -0
  470. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/node/section.jinja +0 -0
  471. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/skeleton.jinja +0 -0
  472. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/git/sync/button.jinja +0 -0
  473. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/nestor/index.jinja +0 -0
  474. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/actions.jinja +0 -0
  475. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/frame_form_import_reqif.jinja.html +0 -0
  476. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/frame_form_new_document.jinja.html +0 -0
  477. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/frame_project_tree.jinja.html +0 -0
  478. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/index.jinja +0 -0
  479. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/main.jinja +0 -0
  480. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/project_tree.jinja +0 -0
  481. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/project_tree_file.jinja +0 -0
  482. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_index/project_tree_folder.jinja +0 -0
  483. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_statistics/index.jinja +0 -0
  484. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/project_statistics/main.jinja +0 -0
  485. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/search/index.jinja +0 -0
  486. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/search/legend.jinja +0 -0
  487. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/search/main.jinja +0 -0
  488. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_coverage/file.jinja +0 -0
  489. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_coverage/folder.jinja +0 -0
  490. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_coverage/index.jinja +0 -0
  491. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_coverage/main.jinja +0 -0
  492. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_view/aside.jinja +0 -0
  493. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_view/header__source_file_name.jinja +0 -0
  494. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_view/index.jinja +0 -0
  495. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_view/main.jinja +0 -0
  496. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/source_file_view/requirement.jinja +0 -0
  497. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/traceability_matrix/file.jinja +0 -0
  498. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/traceability_matrix/index.jinja +0 -0
  499. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/traceability_matrix/main.jinja +0 -0
  500. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/traceability_matrix/project_tree_flat_anchor_list.jinja +0 -0
  501. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/traceability_matrix/requirement.jinja.html +0 -0
  502. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/screens/traceability_matrix/resizable_bar_with_project_tree.jinja +0 -0
  503. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/website/document/index.jinja +0 -0
  504. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/templates/websocket.jinja.html +0 -0
  505. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/tools/__init__.py +0 -0
  506. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html/tools/html_embedded.py +0 -0
  507. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html2pdf/html2pdf.py +0 -0
  508. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html2pdf/html2pdf_generator.py +0 -0
  509. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/html2pdf/pdf_print_driver.py +0 -0
  510. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/__init__.py +0 -0
  511. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/directives/raw_html_role.py +0 -0
  512. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/directives/wildcard_enhanced_image.py +0 -0
  513. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/document_rst_generator.py +0 -0
  514. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/rst_templates.py +0 -0
  515. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/rst_to_html_fragment_writer.py +0 -0
  516. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/rst/writer.py +0 -0
  517. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/export/spdx/spdx_sdoc_container.py +0 -0
  518. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/git/change.py +0 -0
  519. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/git/change_generator.py +0 -0
  520. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/git/git_client.py +0 -0
  521. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/__init__.py +0 -0
  522. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/auto_described.py +0 -0
  523. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/cast.py +0 -0
  524. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/diff.py +0 -0
  525. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/exception.py +0 -0
  526. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/file_modification_time.py +0 -0
  527. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/file_system.py +0 -0
  528. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/form_data.py +0 -0
  529. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/git_client.py +0 -0
  530. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/math.py +0 -0
  531. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/md5.py +0 -0
  532. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/mid.py +0 -0
  533. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/ordered_set.py +0 -0
  534. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/path_filter.py +0 -0
  535. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/paths.py +0 -0
  536. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/pickle.py +0 -0
  537. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/rst.py +0 -0
  538. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/sha256.py +0 -0
  539. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/shard.py +0 -0
  540. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/sorting.py +0 -0
  541. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/helpers/timing.py +0 -0
  542. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/__init__.py +0 -0
  543. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/app.py +0 -0
  544. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/config.py +0 -0
  545. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/error_object.py +0 -0
  546. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/helpers/turbo.py +0 -0
  547. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/main.py +0 -0
  548. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/routers/other_router.py +0 -0
  549. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc/server/server.py +0 -0
  550. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/strictdoc.toml +0 -0
  551. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/tasks_wine.py +0 -0
  552. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/tools/link_health.py +0 -0
  553. {strictdoc-0.0.56a2 → strictdoc-0.0.56a4}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strictdoc
3
- Version: 0.0.56a2
3
+ Version: 0.0.56a4
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/
@@ -28,7 +28,7 @@ Requires-Dist: html5lib>=1.1
28
28
  Requires-Dist: jinja2>=2.11.2
29
29
  Requires-Dist: lxml==4.*,>=4.6.2
30
30
  Requires-Dist: pygments==2.*,>=2.10.0
31
- Requires-Dist: python-datauri==0.*,>=0.2.9
31
+ Requires-Dist: python-datauri==2.*,>=2.1.1
32
32
  Requires-Dist: python-multipart
33
33
  Requires-Dist: reqif==0.*,>=0.0.39
34
34
  Requires-Dist: requests
@@ -66,7 +66,7 @@ dependencies = [
66
66
  # Static HTML export with embedded assets.
67
67
  "beautifulsoup4 >= 4.12.0, == 4.*",
68
68
  "html5lib>=1.1", # Used by beautifulsoup4 as an optional plugin.
69
- "python-datauri >= 0.2.9, == 0.*",
69
+ "python-datauri >= 2.1.1, == 2.*",
70
70
 
71
71
  # Excel
72
72
  "XlsxWriter >= 1.3.7, == 1.*",
@@ -1,6 +1,6 @@
1
1
  from strictdoc.core.environment import SDocRuntimeEnvironment
2
2
 
3
- __version__ = "0.0.56a2"
3
+ __version__ = "0.0.56a4"
4
4
 
5
5
 
6
6
  environment = SDocRuntimeEnvironment(__file__)
@@ -98,7 +98,11 @@ class ExcelGenerator:
98
98
  field_uc = field.upper()
99
99
 
100
100
  # Special treatment for ParentReqReference and Comments
101
- if field_uc in ("REFS:PARENT", "PARENT", "PARENTS"):
101
+ if field_uc in (
102
+ "RELATIONS:PARENT",
103
+ "PARENT",
104
+ "PARENTS",
105
+ ):
102
106
  parent_refs = node.get_requirement_references(
103
107
  ReferenceType.PARENT
104
108
  )
@@ -129,47 +133,50 @@ class ExcelGenerator:
129
133
  # Using a transition marker to separate multiple
130
134
  # comments
131
135
  if node.comments:
132
- value = ""
136
+ comment_row_value: str = ""
133
137
  for comment in node.comments:
134
- if len(value) > 0:
135
- value += "\n----------\n"
136
- value += comment
137
- worksheet.write(row, idx, value)
138
+ if len(comment_row_value) > 0:
139
+ comment_row_value += "\n----------\n"
140
+ comment_row_value += comment
141
+ worksheet.write(row, idx, comment_row_value)
138
142
  if (
139
- value
140
- and len(value)
143
+ comment_row_value
144
+ and len(comment_row_value)
141
145
  > columns[field][MAX_WIDTH_KEY]
142
146
  ):
143
- columns[field][MAX_WIDTH_KEY] = len(value)
144
- elif field_uc in node.ordered_fields_lookup.keys():
145
- req_field = node.ordered_fields_lookup[field_uc][0]
146
- value = ""
147
- if req_field.field_value_references:
147
+ columns[field][MAX_WIDTH_KEY] = len(
148
+ comment_row_value
149
+ )
150
+ elif field_uc == "RELATIONS":
151
+ if len(node.relations) > 0:
152
+ relations_components = []
148
153
  # Using a transition marker to separate
149
154
  # multiple references
150
- for ref in req_field.field_value_references:
151
- if len(value) > 0:
152
- value += "----------\n"
155
+ for ref in node.relations:
153
156
  if isinstance(ref, ParentReqReference):
154
- value += (
155
- ref.ref_type
156
- + ": "
157
- + ref.ref_uid
158
- + "\n"
157
+ relations_components.append(
158
+ ref.ref_type + ": " + ref.ref_uid
159
159
  )
160
160
  elif isinstance(ref, FileReference):
161
- value += (
161
+ relations_components.append(
162
162
  ref.ref_type
163
163
  + ": "
164
164
  + ref.get_posix_path()
165
- + "\n"
166
165
  )
167
- else:
168
- value = req_field.get_value()
166
+ relations_row_value: str = (
167
+ "\n----------\n".join(relations_components)
168
+ )
169
+ worksheet.write(row, idx, relations_row_value)
170
+ value_len = len(relations_row_value)
171
+ if value_len > columns[field][MAX_WIDTH_KEY]:
172
+ columns[field][MAX_WIDTH_KEY] = value_len
173
+ elif field_uc in node.ordered_fields_lookup.keys():
174
+ req_field = node.ordered_fields_lookup[field_uc][0]
175
+ value: str = req_field.get_value()
169
176
  worksheet.write(row, idx, value)
170
- vallength = len(value)
171
- if vallength > columns[field][MAX_WIDTH_KEY]:
172
- columns[field][MAX_WIDTH_KEY] = vallength
177
+ value_len = len(value)
178
+ if value_len > columns[field][MAX_WIDTH_KEY]:
179
+ columns[field][MAX_WIDTH_KEY] = value_len
173
180
  elif hasattr(node, "special_fields"):
174
181
  if len(node.special_fields):
175
182
  for special_field in node.special_fields:
@@ -14,6 +14,7 @@ from strictdoc.backend.sdoc.models.node import SDocNode, SDocNodeField
14
14
  from strictdoc.backend.sdoc.models.object_factory import SDocObjectFactory
15
15
  from strictdoc.backend.sdoc.models.reference import ParentReqReference
16
16
  from strictdoc.backend.sdoc.models.type_system import GrammarElementFieldString
17
+ from strictdoc.helpers.string import ensure_newline
17
18
 
18
19
 
19
20
  class RequirementColumns(NamedTuple):
@@ -38,7 +39,6 @@ def safe_name(dangerous_name):
38
39
  return dangerous_name
39
40
 
40
41
 
41
- # pylint: disable=too-many-instance-attributes
42
42
  class ExcelToSDocConverter:
43
43
  @staticmethod
44
44
  # optional argument title is present for external scripts to assign a title
@@ -173,7 +173,7 @@ class ExcelToSDocConverter:
173
173
  if comment in ("", "-"):
174
174
  comments = None
175
175
  else:
176
- comments = [comment]
176
+ comments = [ensure_newline(comment)]
177
177
  parent_uid = None
178
178
  if columns.parent_column is not None:
179
179
  parent_uid = row_values[columns.parent_column].strip()
@@ -187,7 +187,7 @@ class ExcelToSDocConverter:
187
187
  uid=uid,
188
188
  level=None,
189
189
  statement=None,
190
- statement_multiline=statement,
190
+ statement_multiline=ensure_newline(statement),
191
191
  rationale=None,
192
192
  rationale_multiline=None,
193
193
  tags=None,
@@ -197,34 +197,24 @@ class ExcelToSDocConverter:
197
197
  value = row_values[i].strip()
198
198
  if value != "":
199
199
  template_requirement.ordered_fields_lookup[name] = [
200
- SDocNodeField(
200
+ SDocNodeField.create_from_string(
201
201
  parent=None,
202
202
  field_name=name,
203
- field_value=None,
204
- field_value_multiline=value,
205
- field_value_references=None,
203
+ field_value=ensure_newline(value),
204
+ multiline=True,
206
205
  )
207
206
  ]
208
207
  if parent_uid is not None:
209
208
  reference = ParentReqReference(
210
209
  template_requirement, parent_uid, role=None
211
210
  )
212
-
213
- requirement_field = SDocNodeField(
214
- parent=template_requirement,
215
- field_name="REFS",
216
- field_value=None,
217
- field_value_multiline=None,
218
- field_value_references=[reference],
219
- )
220
- template_requirement.ordered_fields_lookup["REFS"] = [
221
- requirement_field
222
- ]
211
+ template_requirement.relations = [reference]
223
212
  requirement = SDocNode(
224
213
  parent=template_requirement.parent,
225
214
  requirement_type=template_requirement.requirement_type,
226
215
  mid=None,
227
216
  fields=list(template_requirement.enumerate_fields()),
217
+ relations=template_requirement.relations,
228
218
  )
229
219
 
230
220
  return requirement
@@ -32,12 +32,12 @@ from strictdoc.backend.sdoc.models.reference import (
32
32
  from strictdoc.backend.sdoc.models.section import SDocSection
33
33
  from strictdoc.backend.sdoc.models.type_system import (
34
34
  GrammarElementFieldMultipleChoice,
35
- GrammarElementFieldReference,
36
35
  GrammarElementFieldSingleChoice,
37
36
  GrammarElementFieldString,
38
37
  )
39
38
  from strictdoc.helpers.string import (
40
39
  create_safe_requirement_tag_string,
40
+ ensure_newline,
41
41
  unescape,
42
42
  )
43
43
 
@@ -237,7 +237,6 @@ class P01_ReqIFToSDocConverter:
237
237
  GrammarElementFieldString,
238
238
  GrammarElementFieldMultipleChoice,
239
239
  GrammarElementFieldSingleChoice,
240
- GrammarElementFieldReference,
241
240
  ]
242
241
  ] = []
243
242
  for attribute in spec_object_type.attribute_definitions:
@@ -339,8 +338,6 @@ class P01_ReqIFToSDocConverter:
339
338
  document_config.markup = context.import_markup
340
339
 
341
340
  document.grammar = DocumentGrammar.create_default(document)
342
- # FIXME: One day this will go away.
343
- document.ng_at_least_one_relations_field = False
344
341
  return document
345
342
 
346
343
  @staticmethod
@@ -463,41 +460,46 @@ class P01_ReqIFToSDocConverter:
463
460
 
464
461
  enum_values = ", ".join(enum_values_resolved)
465
462
  fields.append(
466
- SDocNodeField(
463
+ SDocNodeField.create_from_string(
467
464
  parent=None,
468
465
  field_name=sdoc_field_name,
469
466
  field_value=enum_values,
470
- field_value_multiline=None,
471
- field_value_references=None,
467
+ multiline=False,
472
468
  )
473
469
  )
474
470
  continue
475
471
  assert isinstance(attribute.value, str)
476
472
  if long_name_or_none == "ReqIF.ForeignID":
477
473
  foreign_key_id_or_none = attribute.definition_ref
478
- attribute_value: Optional[str] = unescape(attribute.value)
479
- attribute_multiline_value = None
474
+ attribute_value: str = unescape(attribute.value)
475
+ multiline: bool = False
480
476
  if (
481
477
  "\n" in attribute_value
482
478
  or attribute.attribute_type == SpecObjectAttributeType.XHTML
483
479
  or field_name == ReqIFRequirementReservedField.TEXT
484
480
  or field_name == ReqIFRequirementReservedField.COMMENT_NOTES
485
481
  ):
486
- attribute_multiline_value = attribute_value.lstrip()
487
- attribute_value = None
482
+ attribute_value = attribute_value.lstrip()
483
+ multiline = True
484
+ if attribute.attribute_type == SpecObjectAttributeType.XHTML:
485
+ attribute_value = attribute.value_stripped_xhtml
486
+ # Another strip() is hidden in .value_stripped_xhtml
487
+ # but doing this anyway to highlight the intention.
488
+ attribute_value = attribute_value.strip()
488
489
 
489
490
  sdoc_field_name = (
490
491
  P01_ReqIFToSDocConverter.convert_requirement_field_from_reqif(
491
492
  field_name,
492
493
  )
493
494
  )
495
+ if multiline:
496
+ attribute_value = ensure_newline(attribute_value)
494
497
  fields.append(
495
- SDocNodeField(
498
+ SDocNodeField.create_from_string(
496
499
  parent=None,
497
500
  field_name=sdoc_field_name,
498
501
  field_value=attribute_value,
499
- field_value_multiline=attribute_multiline_value,
500
- field_value_references=None,
502
+ multiline=multiline,
501
503
  )
502
504
  )
503
505
 
@@ -514,10 +516,9 @@ class P01_ReqIFToSDocConverter:
514
516
  requirement_type=grammar_element.tag,
515
517
  mid=requirement_mid,
516
518
  fields=fields,
519
+ relations=[],
517
520
  )
518
521
  requirement.ng_level = level
519
- # FIXME: One day this will go away.
520
- requirement.ng_uses_old_refs_field = False
521
522
 
522
523
  if foreign_key_id_or_none is not None:
523
524
  spec_object_parents = reqif_bundle.get_spec_object_parents(
@@ -541,15 +542,7 @@ class P01_ReqIFToSDocConverter:
541
542
  )
542
543
  )
543
544
  if len(parent_refs) > 0:
544
- requirement_field = SDocNodeField(
545
- parent=requirement,
546
- field_name="REFS",
547
- field_value=None,
548
- field_value_multiline=None,
549
- field_value_references=parent_refs,
550
- )
551
- fields.append(requirement_field)
552
- requirement.ordered_fields_lookup["REFS"] = [requirement_field]
545
+ requirement.relations = parent_refs
553
546
  return requirement
554
547
 
555
548
  @staticmethod
@@ -38,15 +38,14 @@ from strictdoc.backend.reqif.sdoc_reqif_fields import (
38
38
  from strictdoc.backend.sdoc.models.document import SDocDocument
39
39
  from strictdoc.backend.sdoc.models.document_grammar import DocumentGrammar
40
40
  from strictdoc.backend.sdoc.models.node import SDocNode
41
+ from strictdoc.backend.sdoc.models.reference import ParentReqReference
41
42
  from strictdoc.backend.sdoc.models.section import SDocSection
42
43
  from strictdoc.backend.sdoc.models.type_system import (
43
44
  GrammarElementField,
44
45
  GrammarElementFieldMultipleChoice,
45
- GrammarElementFieldReference,
46
46
  GrammarElementFieldSingleChoice,
47
47
  GrammarElementFieldString,
48
48
  ReferenceType,
49
- RequirementFieldName,
50
49
  )
51
50
  from strictdoc.backend.sdoc.writer import SDWriter
52
51
  from strictdoc.core.document_iterator import DocumentCachingIterator
@@ -206,24 +205,6 @@ class P01_SDocToReqIFObjectConverter:
206
205
  )
207
206
  data_types.append(data_type)
208
207
  data_types_lookup[field.title] = data_type.identifier
209
- elif isinstance(field, GrammarElementFieldReference):
210
- # TODO: implement correct reqIF Encoding for
211
- # GrammarElementFieldReference. Treat as
212
- # GrammarElementFieldString for now.
213
- if (
214
- StrictDocReqIFTypes.SINGLE_LINE_STRING.value
215
- in data_types_lookup
216
- ):
217
- continue
218
- data_type = ReqIFDataTypeDefinitionString.create(
219
- identifier=(
220
- StrictDocReqIFTypes.SINGLE_LINE_STRING.value
221
- ),
222
- )
223
- data_types.append(data_type)
224
- data_types_lookup[
225
- StrictDocReqIFTypes.SINGLE_LINE_STRING.value
226
- ] = data_type.identifier
227
208
  else:
228
209
  raise NotImplementedError(field) from None
229
210
 
@@ -562,17 +543,6 @@ class P01_SDocToReqIFObjectConverter:
562
543
 
563
544
  attributes: List[SpecObjectAttribute] = []
564
545
  for field in requirement.fields_as_parsed:
565
- if field.field_name == RequirementFieldName.REFS:
566
- parent_references: List[str] = []
567
- for reference in field.field_value_references:
568
- if reference.ref_type != ReferenceType.PARENT:
569
- continue
570
- parent_references.append(reference.ref_uid)
571
- assert requirement.reserved_uid is not None
572
- context.map_uid_to_parent_uids[requirement.reserved_uid] = (
573
- parent_references
574
- )
575
- continue
576
546
  grammar_field = grammar_element.fields_map[field.field_name]
577
547
  if isinstance(grammar_field, GrammarElementFieldSingleChoice):
578
548
  data_type_ref = data_types_lookup[field.field_name]
@@ -581,7 +551,7 @@ class P01_SDocToReqIFObjectConverter:
581
551
  for data_type in data_types:
582
552
  if data_type_ref == data_type.identifier:
583
553
  for data_type_value in data_type.values:
584
- if data_type_value.key == field.field_value:
554
+ if data_type_value.key == field.get_value():
585
555
  enum_ref_value = data_type_value.identifier
586
556
  break
587
557
 
@@ -594,7 +564,7 @@ class P01_SDocToReqIFObjectConverter:
594
564
  value=[enum_ref_value],
595
565
  )
596
566
  elif isinstance(grammar_field, GrammarElementFieldMultipleChoice):
597
- field_values: List[str] = field.field_value.split(",")
567
+ field_values: List[str] = field.get_value().split(",")
598
568
  field_values = list(map(lambda v: v.strip(), field_values))
599
569
 
600
570
  data_type_ref = data_types_lookup[field.field_name]
@@ -618,13 +588,9 @@ class P01_SDocToReqIFObjectConverter:
618
588
  value=field_values_refs,
619
589
  )
620
590
  elif isinstance(grammar_field, GrammarElementFieldString):
621
- is_multiline_field = field.field_value_multiline is not None
591
+ is_multiline_field = field.is_multiline()
622
592
 
623
- field_value: str = (
624
- field.field_value_multiline
625
- if field.field_value_multiline is not None
626
- else assert_cast(field.field_value, str)
627
- )
593
+ field_value: str = field.get_value().rstrip()
628
594
 
629
595
  attribute_type: str
630
596
  if context.multiline_is_xhtml:
@@ -650,6 +616,20 @@ class P01_SDocToReqIFObjectConverter:
650
616
  raise NotImplementedError(grammar_field) from None
651
617
  attributes.append(attribute)
652
618
 
619
+ if requirement.reserved_uid is not None:
620
+ parent_references: List[str] = []
621
+ for reference in requirement.relations:
622
+ if reference.ref_type != ReferenceType.PARENT:
623
+ continue
624
+ parent_reference: ParentReqReference = assert_cast(
625
+ reference, ParentReqReference
626
+ )
627
+ parent_references.append(parent_reference.ref_uid)
628
+
629
+ context.map_uid_to_parent_uids[requirement.reserved_uid] = (
630
+ parent_references
631
+ )
632
+
653
633
  spec_object_type: ReqIFSpecObjectType = (
654
634
  context.map_grammar_node_tags_to_spec_object_type[
655
635
  requirement.document
@@ -728,22 +708,6 @@ class P01_SDocToReqIFObjectConverter:
728
708
  long_name=field.title,
729
709
  multi_valued=True,
730
710
  )
731
- elif isinstance(field, GrammarElementFieldReference):
732
- # TODO: implement correct reqIF Encoding for
733
- # GrammarElementFieldReference. Treat as
734
- # GrammarElementFieldString for now.
735
- field_title = field.title
736
- if field_title in SDocRequirementReservedField.SET:
737
- field_title = SDOC_TO_REQIF_FIELD_MAP[field_title]
738
- attribute = SpecAttributeDefinition.create(
739
- attribute_type=SpecObjectAttributeType.STRING,
740
- identifier=field_title,
741
- datatype_definition=(
742
- StrictDocReqIFTypes.SINGLE_LINE_STRING.value
743
- ),
744
- long_name=field_title,
745
- )
746
-
747
711
  else:
748
712
  raise NotImplementedError(field) from None
749
713
  attribute_definitions.append(attribute)
@@ -32,11 +32,10 @@ from strictdoc.backend.sdoc.models.reference import (
32
32
  from strictdoc.backend.sdoc.models.section import SDocSection
33
33
  from strictdoc.backend.sdoc.models.type_system import (
34
34
  GrammarElementFieldMultipleChoice,
35
- GrammarElementFieldReference,
36
35
  GrammarElementFieldSingleChoice,
37
36
  GrammarElementFieldString,
38
37
  )
39
- from strictdoc.helpers.string import unescape
38
+ from strictdoc.helpers.string import ensure_newline, unescape
40
39
 
41
40
 
42
41
  class P02_ReqIFToSDocBuildContext:
@@ -199,7 +198,6 @@ class P02_ReqIFToSDocConverter:
199
198
  GrammarElementFieldString,
200
199
  GrammarElementFieldMultipleChoice,
201
200
  GrammarElementFieldSingleChoice,
202
- GrammarElementFieldReference,
203
201
  ]
204
202
  ] = []
205
203
  for attribute in spec_object_type.attribute_definitions:
@@ -297,8 +295,6 @@ class P02_ReqIFToSDocConverter:
297
295
  document_config.markup = context.import_markup
298
296
 
299
297
  document.grammar = DocumentGrammar.create_default(document)
300
- # FIXME: One day this will go away.
301
- document.ng_at_least_one_relations_field = False
302
298
  return document
303
299
 
304
300
  @staticmethod
@@ -421,41 +417,41 @@ class P02_ReqIFToSDocConverter:
421
417
 
422
418
  enum_values = ", ".join(enum_values_resolved)
423
419
  fields.append(
424
- SDocNodeField(
420
+ SDocNodeField.create_from_string(
425
421
  parent=None,
426
422
  field_name=sdoc_field_name,
427
423
  field_value=enum_values,
428
- field_value_multiline=None,
429
- field_value_references=None,
424
+ multiline=False,
430
425
  )
431
426
  )
432
427
  continue
433
428
  assert isinstance(attribute.value, str)
434
429
  if long_name_or_none == "ReqIF.ForeignID":
435
430
  foreign_key_id_or_none = attribute.definition_ref
436
- attribute_value: Optional[str] = unescape(attribute.value)
437
- attribute_multiline_value = None
431
+ attribute_value: str = unescape(attribute.value)
432
+ multiline: bool = False
438
433
  if (
439
434
  "\n" in attribute_value
440
435
  or attribute.attribute_type == SpecObjectAttributeType.XHTML
441
436
  or field_name == ReqIFRequirementReservedField.TEXT
442
437
  or field_name == ReqIFRequirementReservedField.COMMENT_NOTES
443
438
  ):
444
- attribute_multiline_value = attribute_value.lstrip()
445
- attribute_value = None
439
+ attribute_value = attribute_value.lstrip()
440
+ multiline = True
446
441
 
447
442
  sdoc_field_name = (
448
443
  P02_ReqIFToSDocConverter.convert_requirement_field_from_reqif(
449
444
  field_name,
450
445
  )
451
446
  )
447
+ if multiline:
448
+ attribute_value = ensure_newline(attribute_value)
452
449
  fields.append(
453
- SDocNodeField(
450
+ SDocNodeField.create_from_string(
454
451
  parent=None,
455
452
  field_name=sdoc_field_name,
456
453
  field_value=attribute_value,
457
- field_value_multiline=attribute_multiline_value,
458
- field_value_references=None,
454
+ multiline=multiline,
459
455
  )
460
456
  )
461
457
 
@@ -465,10 +461,9 @@ class P02_ReqIFToSDocConverter:
465
461
  requirement_type="REQUIREMENT",
466
462
  mid=requirement_mid,
467
463
  fields=fields,
464
+ relations=[],
468
465
  )
469
466
  requirement.ng_level = level
470
- # FIXME: One day this will go away.
471
- requirement.ng_uses_old_refs_field = False
472
467
 
473
468
  if foreign_key_id_or_none is not None:
474
469
  spec_object_parents = reqif_bundle.get_spec_object_parents(
@@ -492,13 +487,5 @@ class P02_ReqIFToSDocConverter:
492
487
  )
493
488
  )
494
489
  if len(parent_refs) > 0:
495
- requirement_field = SDocNodeField(
496
- parent=requirement,
497
- field_name="REFS",
498
- field_value=None,
499
- field_value_multiline=None,
500
- field_value_references=parent_refs,
501
- )
502
- fields.append(requirement_field)
503
- requirement.ordered_fields_lookup["REFS"] = [requirement_field]
490
+ requirement.relations = parent_refs
504
491
  return requirement