data-flow-diagram 1.11.1.post2__tar.gz → 1.12.0__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 (22) hide show
  1. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/PKG-INFO +1 -1
  2. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/setup.py +4 -0
  3. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/dfd.py +11 -2
  4. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/dfd_dot_templates.py +7 -7
  5. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram.egg-info/PKG-INFO +1 -1
  6. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/README.md +0 -0
  7. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/pyproject.toml +0 -0
  8. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/setup.cfg +0 -0
  9. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/__init__.py +0 -0
  10. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/config.py +0 -0
  11. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/dependency_checker.py +0 -0
  12. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/dot.py +0 -0
  13. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/error.py +0 -0
  14. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/markdown.py +0 -0
  15. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/model.py +0 -0
  16. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/parser.py +0 -0
  17. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram/scanner.py +0 -0
  18. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram.egg-info/SOURCES.txt +0 -0
  19. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram.egg-info/dependency_links.txt +0 -0
  20. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram.egg-info/entry_points.txt +0 -0
  21. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram.egg-info/requires.txt +0 -0
  22. {data_flow_diagram-1.11.1.post2 → data_flow_diagram-1.12.0}/src/data_flow_diagram.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: data-flow-diagram
3
- Version: 1.11.1.post2
3
+ Version: 1.12.0
4
4
  Summary: Commandline tool to generate data flow diagrams from text
5
5
  Home-page: https://github.com/pbauermeister/dfd
6
6
  Author: Pascal Bauermeister
@@ -8,6 +8,10 @@ from setuptools import setup, find_packages
8
8
  import pathlib
9
9
 
10
10
  CHANGES = """
11
+
12
+ ## Version 1.12.0:
13
+ - Support style (and hence attrib) on Stores and Channels.
14
+
11
15
  ## Version 1.11.1.post2:
12
16
 
13
17
  Bug fixes:
@@ -99,12 +99,12 @@ class Generator:
99
99
  f'{attrs}]'
100
100
  )
101
101
  case model.STORE:
102
- d = self._item_to_html_dict(copy)
102
+ d = self._attrib_to_dict(copy, attrs)
103
103
  line = TMPL.STORE.format(**d)
104
104
  case model.NONE:
105
105
  line = f'"{copy.name}" [shape=none label="{copy.text}" {attrs}]'
106
106
  case model.CHANNEL:
107
- d = self._item_to_html_dict(copy)
107
+ d = self._attrib_to_dict(copy, attrs)
108
108
  if self.graph_options.is_vertical:
109
109
  line = TMPL.CHANNEL_HORIZONTAL.format(**d)
110
110
  else:
@@ -116,6 +116,15 @@ class Generator:
116
116
  )
117
117
  self.append(line, item)
118
118
 
119
+ def _attrib_to_dict(self, item: model.Item, attrs: str) -> dict[str, str]:
120
+ d = self._item_to_html_dict(item)
121
+ d.update({'fontcolor': 'black', 'color': 'black'})
122
+ attrs_d = {
123
+ k: v for k, v in [each.split('=', 1) for each in attrs.split()]
124
+ }
125
+ d.update(attrs_d)
126
+ return d
127
+
119
128
  def _item_to_html_dict(self, item: model.Item) -> dict[str, Any]:
120
129
  d = item.__dict__
121
130
  d['text'] = d['text'].replace('\\n', '<br/>')
@@ -1,9 +1,9 @@
1
1
  STORE = """
2
2
  "{name}" [shape=none label=<
3
3
  <TABLE BORDER="0">
4
- <TR><TD BGCOLOR="black" WIDTH="6"></TD></TR>
5
- <TR><TD>{text}</TD></TR>
6
- <TR><TD BGCOLOR="black" WIDTH="6"></TD></TR>
4
+ <TR><TD BGCOLOR="{color}" WIDTH="6"></TD></TR>
5
+ <TR><TD><FONT COLOR="{fontcolor}">{text}</FONT></TD></TR>
6
+ <TR><TD BGCOLOR="{color}" WIDTH="6"></TD></TR>
7
7
  </TABLE>>]
8
8
  """.strip()
9
9
 
@@ -13,11 +13,11 @@ CHANNEL = """
13
13
  <TABLE BORDER="0">
14
14
  <TR>
15
15
  <TD WIDTH="48"></TD>
16
- <TD BGCOLOR="black" WIDTH="0" PORT="x"><BR/><BR/></TD>
16
+ <TD BGCOLOR="{color}" WIDTH="0" PORT="x"><BR/><BR/></TD>
17
17
  <TD WIDTH="48"></TD>
18
18
  </TR>
19
19
  <TR>
20
- <TD COLSPAN="3">{text}</TD>
20
+ <TD COLSPAN="3"><FONT COLOR="{fontcolor}">{text}</FONT></TD>
21
21
  </TR>
22
22
  </TABLE>>]
23
23
  """.strip()
@@ -26,8 +26,8 @@ CHANNEL = """
26
26
  CHANNEL_HORIZONTAL = """
27
27
  "{name}" [shape=none label=<
28
28
  <TABLE BORDER="0">
29
- <TR><TD BGCOLOR="black" PORT="x"></TD></TR>
30
- <TR><TD>{text}</TD></TR>
29
+ <TR><TD BGCOLOR="{color}" PORT="x"></TD></TR>
30
+ <TR><TD><FONT COLOR="{fontcolor}">{text}</FONT></TD></TR>
31
31
  </TABLE>>]
32
32
  """.strip()
33
33
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: data-flow-diagram
3
- Version: 1.11.1.post2
3
+ Version: 1.12.0
4
4
  Summary: Commandline tool to generate data flow diagrams from text
5
5
  Home-page: https://github.com/pbauermeister/dfd
6
6
  Author: Pascal Bauermeister