strictdoc 0.0.56a3__tar.gz → 0.0.57__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 (580) hide show
  1. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/PKG-INFO +1 -2
  2. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/pyproject.toml +0 -1
  3. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/__init__.py +1 -1
  4. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/excel/export/excel_generator.py +7 -4
  5. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/excel/import_/excel_to_sdoc_converter.py +10 -6
  6. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/reqif/p01_sdoc/reqif_to_sdoc_converter.py +39 -42
  7. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/reqif/p01_sdoc/sdoc_to_reqif_converter.py +4 -110
  8. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/reqif/reqif_export.py +0 -9
  9. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/reqif/reqif_import.py +0 -10
  10. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/reqif/sdoc_reqif_fields.py +1 -3
  11. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/error_handling.py +5 -5
  12. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/free_text_reader.py +7 -2
  13. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/grammar/grammar.py +38 -4
  14. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/grammar/grammar_builder.py +14 -11
  15. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/grammar/grammar_grammar.py +6 -0
  16. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/grammar/type_system.py +1 -22
  17. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/grammar_reader.py +35 -13
  18. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/anchor.py +10 -1
  19. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/document.py +15 -9
  20. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/document_config.py +7 -2
  21. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/document_grammar.py +64 -10
  22. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/free_text.py +6 -0
  23. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/inline_link.py +6 -4
  24. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/node.py +163 -76
  25. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/object_factory.py +21 -21
  26. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/section.py +15 -4
  27. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/processor.py +76 -53
  28. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/reader.py +10 -8
  29. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/validations/sdoc_validator.py +58 -18
  30. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/writer.py +63 -31
  31. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/cli/cli_arg_parser.py +3 -0
  32. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/cli/command_parser_builder.py +8 -1
  33. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/actions/export_action.py +0 -13
  34. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/actions/passthrough_action.py +4 -1
  35. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/analyzers/document_uid_analyzer.py +2 -0
  36. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/document_iterator.py +15 -3
  37. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/environment.py +0 -16
  38. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/graph/one_to_one_dictionary.py +3 -1
  39. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/graph_database.py +4 -0
  40. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/project_config.py +2 -0
  41. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/query_engine/query_object.py +1 -1
  42. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/traceability_index.py +103 -94
  43. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/traceability_index_builder.py +73 -38
  44. strictdoc-0.0.57/strictdoc/core/transforms/create_requirement.py +285 -0
  45. strictdoc-0.0.57/strictdoc/core/transforms/delete_requirement.py +55 -0
  46. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/transforms/delete_section.py +17 -0
  47. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/transforms/section.py +6 -99
  48. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/transforms/update_document_config.py +0 -18
  49. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/transforms/update_grammar.py +1 -8
  50. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/transforms/update_grammar_element.py +0 -6
  51. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/transforms/update_included_document.py +3 -21
  52. strictdoc-0.0.57/strictdoc/core/transforms/update_requirement.py +487 -0
  53. strictdoc-0.0.57/strictdoc/core/transforms/validation_error.py +19 -0
  54. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/anchor_controller.js +1 -0
  55. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/element.css +6 -0
  56. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/node.css +12 -1
  57. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/requirement.css +32 -6
  58. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/document_config_form_object.py +0 -25
  59. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/grammar_element_form_object.py +1 -1
  60. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/included_document_form_object.py +0 -26
  61. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/requirement_form_object.py +173 -22
  62. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/section_form_object.py +0 -41
  63. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/project_statistics.py +1 -1
  64. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/document_screen_view_object.py +48 -10
  65. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/search_screen_view_object.py +5 -0
  66. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/renderers/link_renderer.py +2 -2
  67. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/renderers/markup_renderer.py +51 -52
  68. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/edit_section/stream_updated_section.jinja.html +1 -1
  69. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/anchor/index.jinja +5 -5
  70. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/confirm/index.jinja +13 -0
  71. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/included_document_form/index.jinja +0 -10
  72. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/node/index.jinja +1 -1
  73. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/node/node_controls/index.jinja +11 -11
  74. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/node/root.jinja +7 -0
  75. strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/README.txt +8 -0
  76. strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/comments/index.jinja +15 -0
  77. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/files/index.jinja +4 -3
  78. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/links/index.jinja +15 -14
  79. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/meta/index.jinja +6 -5
  80. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/multiline/index.jinja +5 -3
  81. strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/rationale/index.jinja +11 -0
  82. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/h → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/section_h}/index.jinja +9 -6
  83. strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/section_h/pdf.jinja +22 -0
  84. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/title → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/section_title}/index.jinja +7 -4
  85. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/statement/index.jinja +5 -4
  86. strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/text/index.jinja +8 -0
  87. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/title/index.jinja +5 -4
  88. strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/title/pdf.jinja +18 -0
  89. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/uid/index.jinja +3 -2
  90. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/uid → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/uid_standalone}/index.jinja +3 -2
  91. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/requirement/card.jinja +1 -0
  92. strictdoc-0.0.57/strictdoc/export/html/templates/components/requirement/index.jinja +32 -0
  93. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/requirement/index_extends_node.jinja +2 -1
  94. strictdoc-0.0.57/strictdoc/export/html/templates/components/requirement/pdf.jinja +33 -0
  95. strictdoc-0.0.57/strictdoc/export/html/templates/components/requirement/tiny.jinja +19 -0
  96. strictdoc-0.0.57/strictdoc/export/html/templates/components/section/card.jinja +9 -0
  97. strictdoc-0.0.57/strictdoc/export/html/templates/components/section/index.jinja +9 -0
  98. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/section/index_extends_node.jinja +2 -1
  99. strictdoc-0.0.57/strictdoc/export/html/templates/components/section/pdf.jinja +10 -0
  100. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/section/tiny.jinja +1 -1
  101. strictdoc-0.0.57/strictdoc/export/html/templates/components/text_node/card.jinja +10 -0
  102. strictdoc-0.0.57/strictdoc/export/html/templates/components/text_node/card_extends_card.jinja +5 -0
  103. strictdoc-0.0.57/strictdoc/export/html/templates/components/text_node/index.jinja +10 -0
  104. strictdoc-0.0.57/strictdoc/export/html/templates/components/text_node/index_extends_node.jinja +8 -0
  105. strictdoc-0.0.57/strictdoc/export/html/templates/components/text_node/pdf.jinja +11 -0
  106. strictdoc-0.0.57/strictdoc/export/html/templates/components/text_node/tiny.jinja +8 -0
  107. strictdoc-0.0.57/strictdoc/export/html/templates/components/text_node/tiny_extends_card.jinja +5 -0
  108. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/rst/anchor.jinja +9 -4
  109. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_requirement.jinja +1 -0
  110. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_section.jinja +1 -0
  111. strictdoc-0.0.57/strictdoc/export/html/templates/screens/document/document/frame_document_config.jinja.html +8 -0
  112. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/document/frame_document_config_edit.jinja.html +0 -10
  113. strictdoc-0.0.57/strictdoc/export/html/templates/screens/document/document/frame_document_content.jinja.html +25 -0
  114. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/document/frame_requirement_form.jinja +2 -1
  115. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/document/frame_section_form.jinja +0 -6
  116. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/pdf/main.jinja +17 -11
  117. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/pdf/template/frontpage.jinja +2 -2
  118. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/table/main.jinja +16 -17
  119. strictdoc-0.0.57/strictdoc/export/html/templates/screens/document/traceability/main.jinja +55 -0
  120. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/traceability_deep/main.jinja +1 -1
  121. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/fields/document_fields.jinja +0 -32
  122. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/fields/requirement_fields.jinja +1 -1
  123. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/fields/section_fields.jinja +0 -29
  124. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/node/requirement.jinja +1 -1
  125. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/traceability_matrix/main.jinja +1 -1
  126. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html2pdf/html2pdf_generator.py +4 -0
  127. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/json/json_generator.py +10 -14
  128. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/rst/templates/requirement.jinja.rst +6 -6
  129. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/rst/writer.py +26 -18
  130. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/spdx/spdx_to_sdoc_converter.py +1 -1
  131. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/git/change.py +0 -36
  132. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/git/project_diff_analyzer.py +14 -201
  133. strictdoc-0.0.57/strictdoc/helpers/rst.py +10 -0
  134. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/string.py +4 -0
  135. strictdoc-0.0.57/strictdoc/helpers/textx.py +30 -0
  136. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/routers/main_router.py +169 -113
  137. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/tasks.py +13 -71
  138. strictdoc-0.0.56a3/strictdoc/backend/reqif/p02_simple/reqif_to_sdoc_converter.py +0 -489
  139. strictdoc-0.0.56a3/strictdoc/backend/reqif/p02_simple/sdoc_to_reqif_converter.py +0 -736
  140. strictdoc-0.0.56a3/strictdoc/backend/reqif/p11_polarion/reqif_to_sdoc_converter.py +0 -461
  141. strictdoc-0.0.56a3/strictdoc/core/transforms/create_requirement.py +0 -156
  142. strictdoc-0.0.56a3/strictdoc/core/transforms/update_free_text.py +0 -181
  143. strictdoc-0.0.56a3/strictdoc/core/transforms/update_requirement.py +0 -207
  144. strictdoc-0.0.56a3/strictdoc/core/transforms/validation_error.py +0 -12
  145. strictdoc-0.0.56a3/strictdoc/export/dot/document_dot_generator.py +0 -356
  146. strictdoc-0.0.56a3/strictdoc/export/dot/dot_templates.py +0 -16
  147. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile1/document.dot +0 -12
  148. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile1/folder.dot +0 -15
  149. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile1/legend.dot +0 -69
  150. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile1/requirement.dot +0 -18
  151. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile1/section.dot +0 -34
  152. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile1/top_level.dot +0 -61
  153. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile2/document.dot +0 -4
  154. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile2/folder.dot +0 -14
  155. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile2/requirement.dot +0 -14
  156. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile2/section.dot +0 -16
  157. strictdoc-0.0.56a3/strictdoc/export/dot/templates/profile2/top_level.dot +0 -59
  158. strictdoc-0.0.56a3/strictdoc/export/html/templates/actions/document/edit_requirement/stream_update_requirement.jinja.html +0 -5
  159. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/abstract/index.jinja +0 -20
  160. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/abstract/pdf.jinja +0 -8
  161. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement/comments/index.jinja +0 -14
  162. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement/index.jinja +0 -32
  163. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement/pdf.jinja +0 -33
  164. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement/rationale/index.jinja +0 -10
  165. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement/tiny.jinja +0 -19
  166. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/requirement/title/pdf.jinja +0 -17
  167. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/card.jinja +0 -10
  168. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/h/pdf.jinja +0 -19
  169. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/index.jinja +0 -10
  170. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/pdf.jinja +0 -11
  171. strictdoc-0.0.56a3/strictdoc/export/html/templates/components/section/text/index.jinja +0 -10
  172. strictdoc-0.0.56a3/strictdoc/export/html/templates/screens/document/document/frame_document_config.jinja.html +0 -9
  173. strictdoc-0.0.56a3/strictdoc/export/html/templates/screens/document/document/frame_document_content.jinja.html +0 -22
  174. strictdoc-0.0.56a3/strictdoc/export/html/templates/screens/document/traceability/main.jinja +0 -44
  175. strictdoc-0.0.56a3/strictdoc/helpers/__init__.py +0 -0
  176. strictdoc-0.0.56a3/strictdoc/helpers/rst.py +0 -28
  177. strictdoc-0.0.56a3/strictdoc/helpers/textx.py +0 -9
  178. strictdoc-0.0.56a3/strictdoc/server/__init__.py +0 -0
  179. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/.gitignore +0 -0
  180. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/CHANGELOG.md +0 -0
  181. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/CONTRIBUTING.md +0 -0
  182. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/Dockerfile +0 -0
  183. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/LICENSE +0 -0
  184. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/NOTICE +0 -0
  185. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/README.md +0 -0
  186. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/docs_extra/DO178_requirements.sdoc +0 -0
  187. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/docs_extra/Zephyr_requirements.sdoc +0 -0
  188. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/drafts/requirements/strictdoc.toml +0 -0
  189. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/drafts/rst_examples.sdoc +0 -0
  190. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/drafts/strictdoc_low_level_requirements.sdoc_.sdoc +0 -0
  191. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/mypy.ini +0 -0
  192. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/requirements.bootstrap.txt +0 -0
  193. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/requirements.check.txt +0 -0
  194. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/ruff.toml +0 -0
  195. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/__init__.py +0 -0
  196. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/excel/__init__.py +0 -0
  197. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/excel/excel_import.py +0 -0
  198. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/excel/export/__init__.py +0 -0
  199. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/excel/import_/__init__.py +0 -0
  200. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/reqif/__init__.py +0 -0
  201. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/reqif/p01_sdoc/__init__.py +0 -0
  202. {strictdoc-0.0.56a3/strictdoc/backend/reqif/p02_simple → strictdoc-0.0.57/strictdoc/backend/sdoc}/__init__.py +0 -0
  203. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/constants.py +0 -0
  204. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/document_reference.py +0 -0
  205. {strictdoc-0.0.56a3/strictdoc/backend/reqif/p11_polarion → strictdoc-0.0.57/strictdoc/backend/sdoc/errors}/__init__.py +0 -0
  206. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/errors/document_tree_error.py +0 -0
  207. {strictdoc-0.0.56a3/strictdoc/backend/sdoc → strictdoc-0.0.57/strictdoc/backend/sdoc/grammar}/__init__.py +0 -0
  208. {strictdoc-0.0.56a3/strictdoc/backend/sdoc/errors → strictdoc-0.0.57/strictdoc/backend/sdoc/models}/__init__.py +0 -0
  209. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/constants.py +0 -0
  210. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/document_from_file.py +0 -0
  211. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/document_view.py +0 -0
  212. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/object.py +0 -0
  213. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/reference.py +0 -0
  214. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/models/type_system.py +0 -0
  215. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc/pickle_cache.py +0 -0
  216. {strictdoc-0.0.56a3/strictdoc/backend/sdoc/grammar → strictdoc-0.0.57/strictdoc/backend/sdoc/validations}/__init__.py +0 -0
  217. {strictdoc-0.0.56a3/strictdoc/backend/sdoc/models → strictdoc-0.0.57/strictdoc/backend/sdoc_source_code}/__init__.py +0 -0
  218. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc_source_code/grammar.py +0 -0
  219. {strictdoc-0.0.56a3/strictdoc/backend/sdoc/validations → strictdoc-0.0.57/strictdoc/backend/sdoc_source_code/models}/__init__.py +0 -0
  220. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc_source_code/models/range_marker.py +0 -0
  221. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc_source_code/models/requirement_marker.py +0 -0
  222. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc_source_code/models/source_file_info.py +0 -0
  223. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/backend/sdoc_source_code/reader.py +0 -0
  224. {strictdoc-0.0.56a3/strictdoc/backend/sdoc_source_code → strictdoc-0.0.57/strictdoc/cli}/__init__.py +0 -0
  225. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/cli/argument_int_range.py +0 -0
  226. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/cli/main.py +0 -0
  227. {strictdoc-0.0.56a3/strictdoc/backend/sdoc_source_code/models → strictdoc-0.0.57/strictdoc/commands}/__init__.py +0 -0
  228. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/commands/about_command.py +0 -0
  229. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/commands/diff_command.py +0 -0
  230. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/commands/dump_grammar_command.py +0 -0
  231. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/commands/manage_autouid_command.py +0 -0
  232. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/commands/version_command.py +0 -0
  233. {strictdoc-0.0.56a3/strictdoc/cli → strictdoc-0.0.57/strictdoc/core}/__init__.py +0 -0
  234. {strictdoc-0.0.56a3/strictdoc/commands → strictdoc-0.0.57/strictdoc/core/actions}/__init__.py +0 -0
  235. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/actions/import_action.py +0 -0
  236. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/analyzers/document_stats.py +0 -0
  237. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/asset_manager.py +0 -0
  238. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/document_finder.py +0 -0
  239. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/document_meta.py +0 -0
  240. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/document_tree.py +0 -0
  241. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/document_tree_iterator.py +0 -0
  242. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/file_traceability_index.py +0 -0
  243. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/file_tree.py +0 -0
  244. {strictdoc-0.0.56a3/strictdoc/core → strictdoc-0.0.57/strictdoc/core/finders}/__init__.py +0 -0
  245. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/finders/source_files_finder.py +0 -0
  246. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/graph/abstract_bucket.py +0 -0
  247. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/graph/many_to_many_set.py +0 -0
  248. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/graph/validations.py +0 -0
  249. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/query_engine/grammar.py +0 -0
  250. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/query_engine/query_reader.py +0 -0
  251. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/source_tree.py +0 -0
  252. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/transforms/constants.py +0 -0
  253. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/core/tree_cycle_detector.py +0 -0
  254. {strictdoc-0.0.56a3/strictdoc/core/actions → strictdoc-0.0.57/strictdoc/export}/__init__.py +0 -0
  255. {strictdoc-0.0.56a3/strictdoc/core/finders → strictdoc-0.0.57/strictdoc/export/html}/__init__.py +0 -0
  256. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/autogen.css +0 -0
  257. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/base.css +0 -0
  258. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/collapsible_list.js +0 -0
  259. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/collapsible_toc.js +0 -0
  260. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/collapsible_tree.js +0 -0
  261. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/content.css +0 -0
  262. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/copy_to_clipboard_controller.js +0 -0
  263. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/deletable_field_controller.js +0 -0
  264. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/draggable_list_controller.js +0 -0
  265. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/dropdown_menu_controller.js +0 -0
  266. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/editable_field_controller.js +0 -0
  267. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/modal_controller.js +0 -0
  268. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/movable_field_controller.js +0 -0
  269. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/scroll_into_view_controller.js +0 -0
  270. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/controllers/tabs_controller.js +0 -0
  271. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/diff.css +0 -0
  272. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/diff.js +0 -0
  273. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/favicon.ico +0 -0
  274. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/fonts/NotoSans-Italic-VariableFont_wdth,wght.ttf +0 -0
  275. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/fonts/NotoSans-VariableFont_wdth,wght.ttf +0 -0
  276. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/fonts/NotoSansMono-VariableFont_wdth,wght.ttf +0 -0
  277. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/form.css +0 -0
  278. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/html2pdf/bundle.js +0 -0
  279. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/layout.css +0 -0
  280. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/pan_with_space.js +0 -0
  281. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/project_tree.css +0 -0
  282. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/project_tree.js +0 -0
  283. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/requirement-tree.css +0 -0
  284. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/requirement__temporary.css +0 -0
  285. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/requirements-coverage.js +0 -0
  286. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/resizable_bar.js +0 -0
  287. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/source-code-coverage.js +0 -0
  288. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/source.css +0 -0
  289. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/stimulus.min.js +0 -0
  290. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/table_vew.css +0 -0
  291. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/toc_highlighting.js +0 -0
  292. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/traceability_matrix.css +0 -0
  293. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/tree(not_in_use).css +0 -0
  294. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/turbo.min.js +0 -0
  295. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/viewtype_menu.js +0 -0
  296. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static/zoomable.js +0 -0
  297. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/LICENSE-MATHJAX +0 -0
  298. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/tex.js +0 -0
  299. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_AMS-Regular.woff +0 -0
  300. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Bold.woff +0 -0
  301. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Regular.woff +0 -0
  302. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Bold.woff +0 -0
  303. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Regular.woff +0 -0
  304. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Bold.woff +0 -0
  305. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Italic.woff +0 -0
  306. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff +0 -0
  307. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-BoldItalic.woff +0 -0
  308. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff +0 -0
  309. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Regular.woff +0 -0
  310. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Bold.woff +0 -0
  311. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Italic.woff +0 -0
  312. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Regular.woff +0 -0
  313. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Script-Regular.woff +0 -0
  314. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff +0 -0
  315. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff +0 -0
  316. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff +0 -0
  317. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff +0 -0
  318. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Typewriter-Regular.woff +0 -0
  319. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Bold.woff +0 -0
  320. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff +0 -0
  321. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Zero.woff +0 -0
  322. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mathjax/tex-mml-chtml.js +0 -0
  323. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/mermaid/mermaid.min.js +0 -0
  324. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/nestor/bundle.umd.js +0 -0
  325. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/_static_extra/rapidoc/rapidoc-min.js +0 -0
  326. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/document_type.py +0 -0
  327. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/form_object.py +0 -0
  328. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/grammar_form_object.py +0 -0
  329. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/form_objects/rows/row_with_grammar_element_form_object.py +0 -0
  330. {strictdoc-0.0.56a3/strictdoc/export → strictdoc-0.0.57/strictdoc/export/html/generators}/__init__.py +0 -0
  331. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/document.py +0 -0
  332. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/document_deep_trace.py +0 -0
  333. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/document_pdf.py +0 -0
  334. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/document_table.py +0 -0
  335. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/document_trace.py +0 -0
  336. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/document_tree.py +0 -0
  337. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/source_file_coverage.py +0 -0
  338. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/source_file_view_generator.py +0 -0
  339. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/traceability_matrix.py +0 -0
  340. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/diff_screen_results_view_object.py +0 -0
  341. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/diff_screen_view_object.py +0 -0
  342. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/nestor_view_object.py +0 -0
  343. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/project_statistics_view_object.py +0 -0
  344. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/project_tree_stats.py +0 -0
  345. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/project_tree_view_object.py +0 -0
  346. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/source_file_view_object.py +0 -0
  347. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/generators/view_objects/traceability_matrix_view_object.py +0 -0
  348. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/html_generator.py +0 -0
  349. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/html_templates.py +0 -0
  350. {strictdoc-0.0.56a3/strictdoc/export/html → strictdoc-0.0.57/strictdoc/export/html/renderers}/__init__.py +0 -0
  351. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/renderers/html_fragment_writer.py +0 -0
  352. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/renderers/text_to_html_writer.py +0 -0
  353. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg__separator.jinja.html +0 -0
  354. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_add.jinja.html +0 -0
  355. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_add_above.jinja +0 -0
  356. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_add_below.jinja +0 -0
  357. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_add_child.jinja +0 -0
  358. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_anchor.jinja +0 -0
  359. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_back.jinja.html +0 -0
  360. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_book.jinja.html +0 -0
  361. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_close.jinja +0 -0
  362. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_code.jinja.html +0 -0
  363. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_copy.jinja +0 -0
  364. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_delete.jinja.html +0 -0
  365. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_diff.jinja +0 -0
  366. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_document.jinja.html +0 -0
  367. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_done.jinja +0 -0
  368. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_edit.jinja.html +0 -0
  369. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_expand.jinja.html +0 -0
  370. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_file.jinja +0 -0
  371. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_folder.jinja +0 -0
  372. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_folder_collapse.jinja +0 -0
  373. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_folder_sm.jinja +0 -0
  374. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_fragment.jinja +0 -0
  375. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_fragment_draft.jinja +0 -0
  376. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_gear.jinja.html +0 -0
  377. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_go_to_doc.jinja +0 -0
  378. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_index.jinja.html +0 -0
  379. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_list.jinja.html +0 -0
  380. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_maximize.jinja +0 -0
  381. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_minimize.jinja +0 -0
  382. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_minusminus.jinja.html +0 -0
  383. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_move_down.jinja.html +0 -0
  384. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_move_up.jinja.html +0 -0
  385. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_plusplus.jinja.html +0 -0
  386. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_project.jinja.html +0 -0
  387. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_requirement.jinja.html +0 -0
  388. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_reset.jinja +0 -0
  389. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_search.jinja +0 -0
  390. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_source.jinja.html +0 -0
  391. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_stat.jinja +0 -0
  392. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_sync.jinja +0 -0
  393. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_toc.jinja.html +0 -0
  394. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_res/svg_ico16_tree.jinja +0 -0
  395. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_shared/nav.jinja.html +0 -0
  396. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_shared/requirement_block/files_tree.jinja.html +0 -0
  397. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_shared/requirement_tree_left.jinja.html +0 -0
  398. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_shared/requirement_tree_right.jinja.html +0 -0
  399. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/_shared/tags.jinja.html +0 -0
  400. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/_shared/stream_refresh_document.jinja.html +0 -0
  401. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/_shared/stream_updated_toc.jinja.html +0 -0
  402. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/add_requirement_comment/stream_add_requirement_comment.jinja.html +0 -0
  403. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/add_requirement_relation/stream_add_requirement_relation.jinja.html +0 -0
  404. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/create_requirement/stream_cancel_new_requirement.jinja.html +0 -0
  405. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/create_requirement/stream_created_requirement.jinja.html +0 -0
  406. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/create_requirement/stream_new_requirement.jinja.html +0 -0
  407. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/create_section/stream_cancel_new_section.jinja.html +0 -0
  408. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/create_section/stream_created_section.jinja.html +0 -0
  409. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/create_section/stream_new_section.jinja.html +0 -0
  410. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_confirm_delete_requirement.jinja +0 -0
  411. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_delete_requirement.jinja.html +0 -0
  412. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/delete_section/stream_confirm_delete_section.jinja +0 -0
  413. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/delete_section/stream_delete_section.jinja.html +0 -0
  414. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_cancel_edit_document_config.jinja.html +0 -0
  415. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_edit_document_config.jinja.html +0 -0
  416. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_save_document_config.jinja.html +0 -0
  417. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/edit_requirement/stream_edit_requirement.jinja.html +0 -0
  418. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/document/edit_section/stream_edit_section.jinja.html +0 -0
  419. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_requirement.jinja +0 -0
  420. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_section.jinja +0 -0
  421. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_form_import_reqif_document.jinja.html +0 -0
  422. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_refresh_with_imported_reqif_document.jinja.html +0 -0
  423. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/project_index/stream_create_document.jinja.html +0 -0
  424. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/actions/project_index/stream_new_document.jinja.html +0 -0
  425. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/base.jinja.html +0 -0
  426. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/badge/index.jinja +0 -0
  427. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/button/cancel.jinja +0 -0
  428. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/button/confirm.jinja +0 -0
  429. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/button/delete.jinja +0 -0
  430. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/button/diff.jinja +0 -0
  431. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/button/search.jinja +0 -0
  432. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/button/submit.jinja +0 -0
  433. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/confirm/_usage_example.jinja +0 -0
  434. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/field/index.jinja +0 -0
  435. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/field/contenteditable/index.jinja +0 -0
  436. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/field/file/index.jinja +0 -0
  437. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/field/text/index.jinja +0 -0
  438. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/field_action_button/index.jinja +0 -0
  439. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/index.jinja +0 -0
  440. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/row/index.jinja +0 -0
  441. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/example.jinja.html +0 -0
  442. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/frame.jinja +0 -0
  443. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/stream.jinja +0 -0
  444. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/row/row_with_comment.jinja +0 -0
  445. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/row/row_with_relation.jinja +0 -0
  446. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/row/row_with_text_field.jinja +0 -0
  447. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/form/search.jinja +0 -0
  448. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/grammar_form/index.jinja +0 -0
  449. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/grammar_form/row_with_grammar_element/index.jinja +0 -0
  450. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/grammar_form/row_with_new_grammar_element/index.jinja +0 -0
  451. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/grammar_form_element/index.jinja +0 -0
  452. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/grammar_form_element/row_with_custom_field/index.jinja +0 -0
  453. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/grammar_form_element/row_with_relation/index.jinja +0 -0
  454. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/grammar_form_element/row_with_reserved_field/index.jinja +0 -0
  455. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/header/_usage_example.jinja +0 -0
  456. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/header/header_pagetype.jinja +0 -0
  457. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/header/index.jinja +0 -0
  458. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/modal/_usage_example.jinja +0 -0
  459. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/modal/form.jinja +0 -0
  460. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/modal/index.jinja +0 -0
  461. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/node/card.jinja +0 -0
  462. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/node/node_controls/card.jinja +0 -0
  463. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components/meta → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field/document_meta}/index.jinja +0 -0
  464. {strictdoc-0.0.56a3/strictdoc/export/html/templates/components → strictdoc-0.0.57/strictdoc/export/html/templates/components/node_field}/document_title/index.jinja +0 -0
  465. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/requirement/card_extends_card.jinja +0 -0
  466. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/requirement/tiny_extends_card.jinja +0 -0
  467. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/resizable_bar/index.jinja +0 -0
  468. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/section/card_extends_card.jinja +0 -0
  469. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/section/tiny_extends_card.jinja +0 -0
  470. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/components/table_key_value/index.jinja +0 -0
  471. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/frame_header_document_title.jinja +0 -0
  472. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/frame_toc.jinja +0 -0
  473. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/project_tree.jinja +0 -0
  474. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/project_tree_child_documents.jinja +0 -0
  475. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_project_tree.jinja +0 -0
  476. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_toc.jinja +0 -0
  477. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/toc.jinja +0 -0
  478. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/_shared/viewtype_menu.jinja +0 -0
  479. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/document/actions.jinja +0 -0
  480. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/document/index.jinja +0 -0
  481. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/document/main.jinja +0 -0
  482. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/pdf/index.jinja +0 -0
  483. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/pdf/template/footer.jinja +0 -0
  484. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/pdf/template/header.jinja +0 -0
  485. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/pdf/toc.jinja +0 -0
  486. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/table/index.jinja +0 -0
  487. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/traceability/index.jinja +0 -0
  488. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/document/traceability_deep/index.jinja +0 -0
  489. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/changelog_content.jinja +0 -0
  490. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/diff_content.jinja +0 -0
  491. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/diff_controls.jinja +0 -0
  492. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/form.jinja +0 -0
  493. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/frame_changelog_result.jinja +0 -0
  494. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/frame_diff_result.jinja +0 -0
  495. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/index.jinja +0 -0
  496. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/legend.jinja +0 -0
  497. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/main.jinja +0 -0
  498. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/nav_tabs.jinja +0 -0
  499. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/node/section.jinja +0 -0
  500. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/skeleton.jinja +0 -0
  501. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/git/sync/button.jinja +0 -0
  502. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/nestor/index.jinja +0 -0
  503. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/actions.jinja +0 -0
  504. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/frame_form_import_reqif.jinja.html +0 -0
  505. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/frame_form_new_document.jinja.html +0 -0
  506. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/frame_project_tree.jinja.html +0 -0
  507. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/index.jinja +0 -0
  508. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/main.jinja +0 -0
  509. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/project_tree.jinja +0 -0
  510. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/project_tree_file.jinja +0 -0
  511. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_index/project_tree_folder.jinja +0 -0
  512. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_statistics/index.jinja +0 -0
  513. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/project_statistics/main.jinja +0 -0
  514. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/search/index.jinja +0 -0
  515. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/search/legend.jinja +0 -0
  516. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/search/main.jinja +0 -0
  517. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_coverage/file.jinja +0 -0
  518. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_coverage/folder.jinja +0 -0
  519. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_coverage/index.jinja +0 -0
  520. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_coverage/main.jinja +0 -0
  521. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_view/aside.jinja +0 -0
  522. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_view/header__source_file_name.jinja +0 -0
  523. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_view/index.jinja +0 -0
  524. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_view/main.jinja +0 -0
  525. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/source_file_view/requirement.jinja +0 -0
  526. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/traceability_matrix/file.jinja +0 -0
  527. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/traceability_matrix/index.jinja +0 -0
  528. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/traceability_matrix/project_tree_flat_anchor_list.jinja +0 -0
  529. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/traceability_matrix/requirement.jinja.html +0 -0
  530. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/screens/traceability_matrix/resizable_bar_with_project_tree.jinja +0 -0
  531. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/website/document/index.jinja +0 -0
  532. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/templates/websocket.jinja.html +0 -0
  533. {strictdoc-0.0.56a3/strictdoc/export/html/generators → strictdoc-0.0.57/strictdoc/export/html/tools}/__init__.py +0 -0
  534. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html/tools/html_embedded.py +0 -0
  535. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html2pdf/html2pdf.py +0 -0
  536. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/html2pdf/pdf_print_driver.py +0 -0
  537. {strictdoc-0.0.56a3/strictdoc/export/html/renderers → strictdoc-0.0.57/strictdoc/export/rst}/__init__.py +0 -0
  538. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/rst/directives/raw_html_role.py +0 -0
  539. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/rst/directives/wildcard_enhanced_image.py +0 -0
  540. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/rst/document_rst_generator.py +0 -0
  541. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/rst/rst_templates.py +0 -0
  542. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/rst/rst_to_html_fragment_writer.py +0 -0
  543. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/spdx/spdx_generator.py +0 -0
  544. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/export/spdx/spdx_sdoc_container.py +0 -0
  545. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/git/change_generator.py +0 -0
  546. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/git/git_client.py +0 -0
  547. {strictdoc-0.0.56a3/strictdoc/export/html/tools → strictdoc-0.0.57/strictdoc/helpers}/__init__.py +0 -0
  548. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/auto_described.py +0 -0
  549. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/cast.py +0 -0
  550. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/diff.py +0 -0
  551. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/exception.py +0 -0
  552. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/file_modification_time.py +0 -0
  553. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/file_system.py +0 -0
  554. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/form_data.py +0 -0
  555. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/git_client.py +0 -0
  556. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/math.py +0 -0
  557. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/md5.py +0 -0
  558. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/mid.py +0 -0
  559. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/ordered_set.py +0 -0
  560. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/parallelizer.py +0 -0
  561. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/path_filter.py +0 -0
  562. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/paths.py +0 -0
  563. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/pickle.py +0 -0
  564. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/sha256.py +0 -0
  565. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/shard.py +0 -0
  566. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/sorting.py +0 -0
  567. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/helpers/timing.py +0 -0
  568. {strictdoc-0.0.56a3/strictdoc/export/rst → strictdoc-0.0.57/strictdoc/server}/__init__.py +0 -0
  569. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/app.py +0 -0
  570. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/config.py +0 -0
  571. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/error_object.py +0 -0
  572. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/helpers/turbo.py +0 -0
  573. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/main.py +0 -0
  574. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/routers/other_router.py +0 -0
  575. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc/server/server.py +0 -0
  576. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/strictdoc.toml +0 -0
  577. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/tasks_wine.py +0 -0
  578. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/tools/confluence_html_table_import.py +0 -0
  579. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/tools/link_health.py +0 -0
  580. {strictdoc-0.0.56a3 → strictdoc-0.0.57}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strictdoc
3
- Version: 0.0.56a3
3
+ Version: 0.0.57
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/
@@ -23,7 +23,6 @@ Requires-Python: >=3.7
23
23
  Requires-Dist: beautifulsoup4==4.*,>=4.12.0
24
24
  Requires-Dist: docutils==0.*,>=0.16
25
25
  Requires-Dist: fastapi>=0.83.0
26
- Requires-Dist: graphviz>=0.20.1
27
26
  Requires-Dist: html5lib>=1.1
28
27
  Requires-Dist: jinja2>=2.11.2
29
28
  Requires-Dist: lxml==4.*,>=4.6.2
@@ -50,7 +50,6 @@ classifiers = [
50
50
  dependencies = [
51
51
  "textx >= 3.0.0, == 3.*",
52
52
  "jinja2 >= 2.11.2",
53
- "graphviz >= 0.20.1",
54
53
  # Reading project config from strictdoc.toml file.
55
54
  "toml",
56
55
 
@@ -1,6 +1,6 @@
1
1
  from strictdoc.core.environment import SDocRuntimeEnvironment
2
2
 
3
- __version__ = "0.0.56a3"
3
+ __version__ = "0.0.57"
4
4
 
5
5
 
6
6
  environment = SDocRuntimeEnvironment(__file__)
@@ -132,12 +132,15 @@ class ExcelGenerator:
132
132
  elif field_uc in ("COMMENT", "COMMENTS"):
133
133
  # Using a transition marker to separate multiple
134
134
  # comments
135
- if node.comments:
135
+ comment_fields = node.get_comment_fields()
136
+ if len(comment_fields) > 0:
136
137
  comment_row_value: str = ""
137
- for comment in node.comments:
138
+ for comment_field_ in comment_fields:
138
139
  if len(comment_row_value) > 0:
139
140
  comment_row_value += "\n----------\n"
140
- comment_row_value += comment
141
+ comment_row_value += (
142
+ comment_field_.get_text_value()
143
+ )
141
144
  worksheet.write(row, idx, comment_row_value)
142
145
  if (
143
146
  comment_row_value
@@ -172,7 +175,7 @@ class ExcelGenerator:
172
175
  columns[field][MAX_WIDTH_KEY] = value_len
173
176
  elif field_uc in node.ordered_fields_lookup.keys():
174
177
  req_field = node.ordered_fields_lookup[field_uc][0]
175
- value: str = req_field.get_value()
178
+ value: str = req_field.get_text_value()
176
179
  worksheet.write(row, idx, value)
177
180
  value_len = len(value)
178
181
  if value_len > columns[field][MAX_WIDTH_KEY]:
@@ -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):
@@ -129,8 +130,11 @@ class ExcelToSDocConverter:
129
130
  section_contents=[],
130
131
  )
131
132
 
133
+ # FIXME: This is becoming very limiting. It must work against a complete grammar.
132
134
  fields = list(
133
- DocumentGrammar.create_default(document).elements[0].fields
135
+ DocumentGrammar.create_default(document)
136
+ .elements_by_type["REQUIREMENT"]
137
+ .fields
134
138
  )
135
139
 
136
140
  for _, name in extra_header_pairs:
@@ -172,7 +176,7 @@ class ExcelToSDocConverter:
172
176
  if comment in ("", "-"):
173
177
  comments = None
174
178
  else:
175
- comments = [comment]
179
+ comments = [ensure_newline(comment)]
176
180
  parent_uid = None
177
181
  if columns.parent_column is not None:
178
182
  parent_uid = row_values[columns.parent_column].strip()
@@ -186,7 +190,7 @@ class ExcelToSDocConverter:
186
190
  uid=uid,
187
191
  level=None,
188
192
  statement=None,
189
- statement_multiline=statement,
193
+ statement_multiline=ensure_newline(statement),
190
194
  rationale=None,
191
195
  rationale_multiline=None,
192
196
  tags=None,
@@ -196,11 +200,11 @@ class ExcelToSDocConverter:
196
200
  value = row_values[i].strip()
197
201
  if value != "":
198
202
  template_requirement.ordered_fields_lookup[name] = [
199
- SDocNodeField(
203
+ SDocNodeField.create_from_string(
200
204
  parent=None,
201
205
  field_name=name,
202
- field_value=None,
203
- field_value_multiline=value,
206
+ field_value=ensure_newline(value),
207
+ multiline=True,
204
208
  )
205
209
  ]
206
210
  if parent_uid is not None:
@@ -37,6 +37,7 @@ from strictdoc.backend.sdoc.models.type_system import (
37
37
  )
38
38
  from strictdoc.helpers.string import (
39
39
  create_safe_requirement_tag_string,
40
+ ensure_newline,
40
41
  unescape,
41
42
  )
42
43
 
@@ -93,15 +94,6 @@ class P01_ReqIFToSDocConverter:
93
94
  )
94
95
  return spec_object_type.long_name == "SECTION"
95
96
 
96
- @staticmethod
97
- def is_spec_object_free_text(
98
- spec_object: ReqIFSpecObject, reqif_bundle: ReqIFBundle
99
- ):
100
- spec_object_type = reqif_bundle.lookup.get_spec_type_by_ref(
101
- spec_object.spec_object_type
102
- )
103
- return spec_object_type.long_name == "FREETEXT"
104
-
105
97
  @staticmethod
106
98
  def convert_requirement_field_from_reqif(field_name: str) -> str:
107
99
  if field_name in ReqIFRequirementReservedField.SET:
@@ -157,7 +149,7 @@ class P01_ReqIFToSDocConverter:
157
149
  reqif_bundle=reqif_bundle,
158
150
  )
159
151
 
160
- converted_node: Union[SDocSection, SDocNode, FreeText]
152
+ converted_node: Union[SDocSection, SDocNode]
161
153
  if is_section:
162
154
  converted_node = (
163
155
  P01_ReqIFToSDocConverter.create_section_from_spec_object(
@@ -167,18 +159,6 @@ class P01_ReqIFToSDocConverter:
167
159
  reqif_bundle=reqif_bundle,
168
160
  )
169
161
  )
170
- elif P01_ReqIFToSDocConverter.is_spec_object_free_text(
171
- spec_object,
172
- reqif_bundle=reqif_bundle,
173
- ):
174
- converted_node = (
175
- P01_ReqIFToSDocConverter.create_free_text_from_spec_object(
176
- spec_object=spec_object,
177
- )
178
- )
179
- if len(current_section_.free_texts) == 0:
180
- current_section_.free_texts.append(converted_node)
181
- return converted_node, False
182
162
  else:
183
163
  converted_node = P01_ReqIFToSDocConverter.create_requirement_from_spec_object(
184
164
  spec_object=spec_object,
@@ -367,17 +347,6 @@ class P01_ReqIFToSDocConverter:
367
347
  else:
368
348
  raise NotImplementedError(spec_object, attribute_map)
369
349
 
370
- free_texts = []
371
- if ReqIFChapterField.TEXT in spec_object.attribute_map:
372
- free_text = unescape(
373
- spec_object.attribute_map[ReqIFChapterField.TEXT].value
374
- )
375
- free_texts.append(
376
- FreeText(
377
- parent=None,
378
- parts=[free_text],
379
- )
380
- )
381
350
  # Sanitize the title. Titles can also come from XHTML attributes with
382
351
  # custom newlines such as:
383
352
  # <ATTRIBUTE-VALUE-XHTML>
@@ -395,10 +364,31 @@ class P01_ReqIFToSDocConverter:
395
364
  custom_level=None,
396
365
  title=section_title,
397
366
  requirement_prefix=None,
398
- free_texts=free_texts,
367
+ free_texts=[],
399
368
  section_contents=[],
400
369
  )
401
370
  section.ng_level = level
371
+
372
+ if ReqIFChapterField.TEXT in spec_object.attribute_map:
373
+ free_text = unescape(
374
+ spec_object.attribute_map[ReqIFChapterField.TEXT].value
375
+ )
376
+ node_field = SDocNodeField.create_from_string(
377
+ None,
378
+ field_name="STATEMENT",
379
+ field_value=free_text,
380
+ multiline=True,
381
+ )
382
+ node: SDocNode = SDocNode(
383
+ parent=section,
384
+ requirement_type="TEXT",
385
+ mid=None,
386
+ fields=[node_field],
387
+ relations=[],
388
+ )
389
+ node_field.parent = node
390
+ section.section_contents.append(node)
391
+
402
392
  return section
403
393
 
404
394
  @staticmethod
@@ -459,39 +449,46 @@ class P01_ReqIFToSDocConverter:
459
449
 
460
450
  enum_values = ", ".join(enum_values_resolved)
461
451
  fields.append(
462
- SDocNodeField(
452
+ SDocNodeField.create_from_string(
463
453
  parent=None,
464
454
  field_name=sdoc_field_name,
465
455
  field_value=enum_values,
466
- field_value_multiline=None,
456
+ multiline=False,
467
457
  )
468
458
  )
469
459
  continue
470
460
  assert isinstance(attribute.value, str)
471
461
  if long_name_or_none == "ReqIF.ForeignID":
472
462
  foreign_key_id_or_none = attribute.definition_ref
473
- attribute_value: Optional[str] = unescape(attribute.value)
474
- attribute_multiline_value = None
463
+ attribute_value: str = unescape(attribute.value)
464
+ multiline: bool = False
475
465
  if (
476
466
  "\n" in attribute_value
477
467
  or attribute.attribute_type == SpecObjectAttributeType.XHTML
478
468
  or field_name == ReqIFRequirementReservedField.TEXT
479
469
  or field_name == ReqIFRequirementReservedField.COMMENT_NOTES
480
470
  ):
481
- attribute_multiline_value = attribute_value.lstrip()
482
- attribute_value = None
471
+ attribute_value = attribute_value.lstrip()
472
+ multiline = True
473
+ if attribute.attribute_type == SpecObjectAttributeType.XHTML:
474
+ attribute_value = attribute.value_stripped_xhtml
475
+ # Another strip() is hidden in .value_stripped_xhtml
476
+ # but doing this anyway to highlight the intention.
477
+ attribute_value = attribute_value.strip()
483
478
 
484
479
  sdoc_field_name = (
485
480
  P01_ReqIFToSDocConverter.convert_requirement_field_from_reqif(
486
481
  field_name,
487
482
  )
488
483
  )
484
+ if multiline:
485
+ attribute_value = ensure_newline(attribute_value)
489
486
  fields.append(
490
- SDocNodeField(
487
+ SDocNodeField.create_from_string(
491
488
  parent=None,
492
489
  field_name=sdoc_field_name,
493
490
  field_value=attribute_value,
494
- field_value_multiline=attribute_multiline_value,
491
+ multiline=multiline,
495
492
  )
496
493
  )
497
494
 
@@ -47,7 +47,6 @@ from strictdoc.backend.sdoc.models.type_system import (
47
47
  GrammarElementFieldString,
48
48
  ReferenceType,
49
49
  )
50
- from strictdoc.backend.sdoc.writer import SDWriter
51
50
  from strictdoc.core.document_iterator import DocumentCachingIterator
52
51
  from strictdoc.core.document_tree import DocumentTree
53
52
  from strictdoc.helpers.cast import assert_cast
@@ -234,29 +233,7 @@ class P01_SDocToReqIFObjectConverter:
234
233
  )
235
234
 
236
235
  current_hierarchy = root_hierarchy
237
- if len(document.free_texts) > 0:
238
- # fmt: off
239
- document_free_text_spec_object = (
240
- P01_SDocToReqIFObjectConverter
241
- ._convert_document_free_text_to_spec_object(
242
- document,
243
- context=context,
244
- )
245
- )
246
- # fmt: on
247
- spec_objects.append(document_free_text_spec_object)
248
- hierarchy = ReqIFSpecHierarchy(
249
- xml_node=None,
250
- is_self_closed=False,
251
- identifier=generate_unique_identifier("SPEC-HIERARCHY"),
252
- last_change=None,
253
- long_name=None,
254
- spec_object=document_free_text_spec_object.identifier,
255
- children=[],
256
- ref_then_children_order=True,
257
- level=document.ng_level + 1,
258
- )
259
- current_hierarchy.add_child(hierarchy)
236
+
260
237
  # FIXME: ReqIF must export complete documents including fragments.
261
238
  for node in document_iterator.all_content(
262
239
  print_fragments=False, print_fragments_from_files=False
@@ -421,44 +398,6 @@ class P01_SDocToReqIFObjectConverter:
421
398
  )
422
399
  return reqif_bundle
423
400
 
424
- @classmethod
425
- def _convert_document_free_text_to_spec_object(
426
- cls,
427
- document: SDocDocument,
428
- context: P01_SDocToReqIFBuildContext,
429
- ) -> ReqIFSpecObject:
430
- assert isinstance(document, SDocDocument)
431
- assert len(document.free_texts) > 0
432
- attributes = []
433
- free_text_value = (
434
- SDWriter.print_free_text_content(document.free_texts[0])
435
- ).rstrip()
436
- if context.multiline_is_xhtml:
437
- attribute_type = SpecObjectAttributeType.XHTML
438
- else:
439
- attribute_type = SpecObjectAttributeType.STRING
440
- free_text_value = escape(free_text_value)
441
-
442
- free_text_attribute = SpecObjectAttribute(
443
- xml_node=None,
444
- attribute_type=attribute_type,
445
- definition_ref=ReqIFChapterField.TEXT,
446
- value=free_text_value,
447
- )
448
- attributes.append(free_text_attribute)
449
- spec_object = ReqIFSpecObject(
450
- xml_node=None,
451
- description=None,
452
- identifier=generate_unique_identifier("DOCUMENT_FREETEXT"),
453
- last_change=None,
454
- long_name=None,
455
- spec_object_type=context.map_grammar_node_tags_to_spec_object_type[
456
- document
457
- ]["FREETEXT"].identifier,
458
- attributes=attributes,
459
- )
460
- return spec_object
461
-
462
401
  @classmethod
463
402
  def _convert_section_to_spec_object(
464
403
  cls,
@@ -475,23 +414,6 @@ class P01_SDocToReqIFObjectConverter:
475
414
  value=section.title,
476
415
  )
477
416
  attributes.append(title_attribute)
478
- if len(section.free_texts) > 0:
479
- free_text_value = (
480
- SDWriter.print_free_text_content(section.free_texts[0])
481
- ).rstrip()
482
- if context.multiline_is_xhtml:
483
- attribute_type = SpecObjectAttributeType.XHTML
484
- else:
485
- attribute_type = SpecObjectAttributeType.STRING
486
- free_text_value = escape(free_text_value)
487
-
488
- free_text_attribute = SpecObjectAttribute(
489
- xml_node=None,
490
- attribute_type=attribute_type,
491
- definition_ref=ReqIFChapterField.TEXT,
492
- value=free_text_value,
493
- )
494
- attributes.append(free_text_attribute)
495
417
 
496
418
  """
497
419
  If MIDs is enabled and this section has an MID, use it for
@@ -551,7 +473,7 @@ class P01_SDocToReqIFObjectConverter:
551
473
  for data_type in data_types:
552
474
  if data_type_ref == data_type.identifier:
553
475
  for data_type_value in data_type.values:
554
- if data_type_value.key == field.get_value():
476
+ if data_type_value.key == field.get_text_value():
555
477
  enum_ref_value = data_type_value.identifier
556
478
  break
557
479
 
@@ -564,7 +486,7 @@ class P01_SDocToReqIFObjectConverter:
564
486
  value=[enum_ref_value],
565
487
  )
566
488
  elif isinstance(grammar_field, GrammarElementFieldMultipleChoice):
567
- field_values: List[str] = field.get_value().split(",")
489
+ field_values: List[str] = field.get_text_value().split(",")
568
490
  field_values = list(map(lambda v: v.strip(), field_values))
569
491
 
570
492
  data_type_ref = data_types_lookup[field.field_name]
@@ -590,7 +512,7 @@ class P01_SDocToReqIFObjectConverter:
590
512
  elif isinstance(grammar_field, GrammarElementFieldString):
591
513
  is_multiline_field = field.is_multiline()
592
514
 
593
- field_value: str = field.get_value()
515
+ field_value: str = field.get_text_value().rstrip()
594
516
 
595
517
  attribute_type: str
596
518
  if context.multiline_is_xhtml:
@@ -742,13 +664,6 @@ class P01_SDocToReqIFObjectConverter:
742
664
  "SECTION"
743
665
  ] = section_spec_type
744
666
  spec_object_types.append(section_spec_type)
745
- free_text_spec_type = (
746
- P01_SDocToReqIFObjectConverter._create_free_text_spec_object_type()
747
- )
748
- context.map_grammar_node_tags_to_spec_object_type[grammar.parent][
749
- "FREETEXT"
750
- ] = free_text_spec_type
751
- spec_object_types.append(free_text_spec_type)
752
667
 
753
668
  return spec_object_types
754
669
 
@@ -772,24 +687,3 @@ class P01_SDocToReqIFObjectConverter:
772
687
  attribute_definitions=attribute_definitions,
773
688
  )
774
689
  return spec_object_type
775
-
776
- @classmethod
777
- def _create_free_text_spec_object_type(
778
- cls,
779
- ):
780
- attribute_definitions = []
781
- chapter_name_attribute = SpecAttributeDefinition.create(
782
- attribute_type=SpecObjectAttributeType.STRING,
783
- identifier=ReqIFChapterField.TEXT,
784
- datatype_definition=(StrictDocReqIFTypes.MULTI_LINE_STRING.value),
785
- long_name=ReqIFChapterField.TEXT,
786
- )
787
- attribute_definitions.append(chapter_name_attribute)
788
-
789
- spec_object_type_identifier = "FREE_TEXT_" + uuid.uuid4().hex
790
- spec_object_type = ReqIFSpecObjectType.create(
791
- identifier=spec_object_type_identifier,
792
- long_name="FREETEXT",
793
- attribute_definitions=attribute_definitions,
794
- )
795
- return spec_object_type
@@ -8,9 +8,6 @@ from reqif.unparser import ReqIFUnparser, ReqIFZUnparser
8
8
  from strictdoc.backend.reqif.p01_sdoc.sdoc_to_reqif_converter import (
9
9
  P01_SDocToReqIFObjectConverter,
10
10
  )
11
- from strictdoc.backend.reqif.p02_simple.sdoc_to_reqif_converter import (
12
- P02_SDocToReqIFObjectConverter,
13
- )
14
11
  from strictdoc.backend.reqif.sdoc_reqif_fields import ReqIFProfile
15
12
  from strictdoc.core.project_config import ProjectConfig
16
13
  from strictdoc.core.traceability_index import TraceabilityIndex
@@ -32,12 +29,6 @@ class ReqIFExport:
32
29
  multiline_is_xhtml=project_config.reqif_multiline_is_xhtml,
33
30
  enable_mid=project_config.reqif_enable_mid,
34
31
  )
35
- elif project_config.reqif_profile == ReqIFProfile.P02_SIMPLE:
36
- reqif_bundle = P02_SDocToReqIFObjectConverter.convert_document_tree(
37
- document_tree=traceability_index.document_tree,
38
- multiline_is_xhtml=project_config.reqif_multiline_is_xhtml,
39
- enable_mid=project_config.reqif_enable_mid,
40
- )
41
32
  else:
42
33
  raise NotImplementedError(
43
34
  f"Requirements profile does not implement the ReqIF export yet: "
@@ -8,12 +8,6 @@ from reqif.reqif_bundle import ReqIFBundle, ReqIFZBundle
8
8
  from strictdoc.backend.reqif.p01_sdoc.reqif_to_sdoc_converter import (
9
9
  P01_ReqIFToSDocConverter,
10
10
  )
11
- from strictdoc.backend.reqif.p02_simple.reqif_to_sdoc_converter import (
12
- P02_ReqIFToSDocConverter,
13
- )
14
- from strictdoc.backend.reqif.p11_polarion.reqif_to_sdoc_converter import (
15
- P11_ReqIFToSDocConverter,
16
- )
17
11
  from strictdoc.backend.reqif.sdoc_reqif_fields import ReqIFProfile
18
12
  from strictdoc.backend.sdoc.models.document import SDocDocument
19
13
  from strictdoc.cli.cli_arg_parser import ImportReqIFCommandConfig
@@ -65,10 +59,6 @@ class ReqIFImport:
65
59
  or import_config.profile == ReqIFProfile.P01_SDOC
66
60
  ):
67
61
  return P01_ReqIFToSDocConverter()
68
- if import_config.profile == ReqIFProfile.P02_SIMPLE:
69
- return P02_ReqIFToSDocConverter()
70
- if import_config.profile == ReqIFProfile.P11_POLARION:
71
- return P11_ReqIFToSDocConverter()
72
62
  raise NotImplementedError(
73
63
  f"Unsupported profile: {import_config.profile}"
74
64
  )
@@ -1,9 +1,7 @@
1
1
  class ReqIFProfile:
2
2
  P01_SDOC = "p01_sdoc"
3
- P02_SIMPLE = "p02_simple"
4
- P11_POLARION = "p11_polarion"
5
3
 
6
- ALL = [P01_SDOC, P02_SIMPLE, P11_POLARION]
4
+ ALL = [P01_SDOC]
7
5
 
8
6
 
9
7
  SDOC_SPEC_OBJECT_TYPE_SINGLETON = "REQUIREMENT_OR_SECTION"
@@ -150,7 +150,7 @@ class StrictDocSemanticError(Exception):
150
150
  return StrictDocSemanticError(
151
151
  title=(
152
152
  f"Requirement field has an invalid SingleChoice value: "
153
- f"{requirement_field.field_value}."
153
+ f"{requirement_field.get_text_value()}."
154
154
  ),
155
155
  hint=(
156
156
  f"Problematic field: {requirement_field.field_name}. "
@@ -176,7 +176,7 @@ class StrictDocSemanticError(Exception):
176
176
  return StrictDocSemanticError(
177
177
  title=(
178
178
  f"Requirement field has an invalid MultipleChoice value: "
179
- f"{requirement_field.field_value}."
179
+ f"{requirement_field.get_text_value()}."
180
180
  ),
181
181
  hint=(
182
182
  f"Problematic field: {requirement_field.field_name}. "
@@ -201,7 +201,7 @@ class StrictDocSemanticError(Exception):
201
201
  return StrictDocSemanticError(
202
202
  title=(
203
203
  f"Requirement field of type MultipleChoice is invalid: "
204
- f"{requirement_field.field_value}."
204
+ f"{requirement_field.get_text_value()}."
205
205
  ),
206
206
  hint="MultipleChoice field requires ', '-separated values.",
207
207
  example=None,
@@ -219,7 +219,7 @@ class StrictDocSemanticError(Exception):
219
219
  return StrictDocSemanticError(
220
220
  title=(
221
221
  f"Requirement field of type Tag is invalid: "
222
- f"{requirement_field.field_value}."
222
+ f"{requirement_field.get_text_value()}."
223
223
  ),
224
224
  hint="Tag field requires ', '-separated values.",
225
225
  example=None,
@@ -365,7 +365,7 @@ class StrictDocSemanticError(Exception):
365
365
  filename=filename,
366
366
  )
367
367
 
368
- def to_print_message(self):
368
+ def to_print_message(self) -> str:
369
369
  message = ""
370
370
  message += f"error: could not parse file: {self.file_path}.\n"
371
371
  message += f"Semantic error: {self.title}\n"
@@ -1,4 +1,6 @@
1
1
  # mypy: disable-error-code="no-untyped-call,no-untyped-def"
2
+ from typing import Tuple
3
+
2
4
  from textx import metamodel_from_str
3
5
 
4
6
  from strictdoc.backend.sdoc.grammar.grammar_builder import SDocGrammarBuilder
@@ -11,7 +13,9 @@ from strictdoc.helpers.textx import drop_textx_meta
11
13
 
12
14
  class SDFreeTextReader:
13
15
  @staticmethod
14
- def _read(input_string, file_path=None):
16
+ def _read(
17
+ input_string, file_path=None
18
+ ) -> Tuple[FreeTextContainer, ParseContext]:
15
19
  meta_model = metamodel_from_str(
16
20
  SDocGrammarBuilder.create_free_text_grammar(),
17
21
  classes=[FreeTextContainer, InlineLink, Anchor],
@@ -32,6 +36,7 @@ class SDFreeTextReader:
32
36
  return document, parse_context
33
37
 
34
38
  @staticmethod
35
- def read(input_string, file_path=None):
39
+ def read(input_string: str, file_path=None) -> FreeTextContainer:
40
+ assert isinstance(input_string, str), input_string
36
41
  document, _ = SDFreeTextReader._read(input_string, file_path)
37
42
  return document
@@ -1,4 +1,8 @@
1
1
  REGEX_UID = r"([A-Za-z0-9]+[A-Za-z0-9_\-]*)"
2
+
3
+ NEGATIVE_MULTILINE_STRING_START = "(?!>>>\n)"
4
+ NEGATIVE_MULTILINE_STRING_END = "(?!^<<<)"
5
+ NEGATIVE_RELATIONS = "(?!^RELATIONS)"
2
6
  NEGATIVE_FREETEXT_END = "(?!^\\[\\/FREETEXT\\]\n)"
3
7
  NEGATIVE_INLINE_LINK_START = rf"(?!\[LINK: {REGEX_UID})"
4
8
  NEGATIVE_ANCHOR_START = rf"(?!^\[ANCHOR: {REGEX_UID})"
@@ -8,8 +12,12 @@ TextPart[noskipws]:
8
12
  (Anchor | InlineLink | NormalString)
9
13
  ;
10
14
 
15
+ SingleLineTextPart[noskipws]:
16
+ (Anchor | InlineLink | /{NEGATIVE_MULTILINE_STRING_START}\S.*/)
17
+ ;
18
+
11
19
  NormalString[noskipws]:
12
- (/(?ms){NEGATIVE_FREETEXT_END}{NEGATIVE_INLINE_LINK_START}{NEGATIVE_ANCHOR_START}./)+
20
+ (/(?ms){NEGATIVE_MULTILINE_STRING_END}{NEGATIVE_FREETEXT_END}{NEGATIVE_INLINE_LINK_START}{NEGATIVE_ANCHOR_START}./)+
13
21
  ;
14
22
 
15
23
  InlineLink[noskipws]:
@@ -21,6 +29,23 @@ Anchor[noskipws]:
21
29
  value = /{REGEX_UID}/ (', ' title = /\w+[\s\w+]*/)?
22
30
  /\](\Z|\n)/
23
31
  ;
32
+
33
+ // According to the Strict Grammar Rule #3, both SingleLineString and
34
+ // MultiLineString can never be empty strings.
35
+ // Both must eventualy start with a non-space character.
36
+ SingleLineString:
37
+ /{NEGATIVE_MULTILINE_STRING_START}\S.*$/
38
+ ;
39
+
40
+ MultiLineString[noskipws]:
41
+ />>>\n/-
42
+ parts*=TextPart
43
+ /^<<</-
44
+ ;
45
+
46
+ FieldName[noskipws]:
47
+ /{NEGATIVE_RELATIONS}[A-Z]+[A-Z_]*/
48
+ ;
24
49
  """
25
50
 
26
51
  FREE_TEXT_PARSER_GRAMMAR = r"""
@@ -148,7 +173,7 @@ ReservedKeyword[noskipws]:
148
173
  ;
149
174
 
150
175
  SDocNode[noskipws]:
151
- '[' !SDocCompositeNodeTagName requirement_type = RequirementType ']' '\n'
176
+ '[' !'SECTION' !SDocCompositeNodeTagName requirement_type = RequirementType ']' '\n'
152
177
  ('MID: ' mid = SingleLineString '\n')?
153
178
  fields *= SDocNodeField
154
179
  (
@@ -165,8 +190,17 @@ SDocNodeField[noskipws]:
165
190
  (
166
191
  field_name = FieldName ':'
167
192
  (
168
- ((' ' field_value = SingleLineString) '\n') |
169
- (' ' (field_value_multiline = MultiLineString) '\n')
193
+ (' ' parts+=SingleLineTextPart '\n')
194
+ |
195
+ (
196
+ ' '
197
+ (
198
+ multiline__ = />>>\n/
199
+ parts+=TextPart
200
+ /^<<</
201
+ )
202
+ '\n'
203
+ )
170
204
  )
171
205
  )
172
206
  ;