drawio_dsl 0.8.4 → 0.8.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.builders/.data/shapes.json +18 -0
  3. data/.builders/.templates/basic/drawio_extensions.rb +2 -1
  4. data/.builders/.templates/basic/drawio_shapes.rb +1 -1
  5. data/.builders/blueprint/shapes.rb +2 -0
  6. data/.builders/generators/20-drawio-extensions.rb +1 -1
  7. data/.builders/generators/domain_diagram.rb +448 -15
  8. data/.builders/generators/parking-map.png +0 -0
  9. data/.builders/generators/parking_app.rb +110 -0
  10. data/.builders/generators/printspeak-architecture-generator.rb +15 -10
  11. data/.builders/generators/project-plan.rb +7 -4
  12. data/.builders/generators/sample_diagrams/20-styles.rb +2 -2
  13. data/.builders/generators/sample_diagrams/30-html-shapes.rb +36 -14
  14. data/.builders/generators/sample_diagrams/35-ids-and-arrows.rb +0 -2
  15. data/CHANGELOG.md +21 -0
  16. data/README.md +5 -3
  17. data/docs/domain-modal/domain_model.drawio +265 -0
  18. data/docs/domain-modal/domain_model.svg +3 -0
  19. data/docs/domain-modal/domain_model_custom.drawio +408 -0
  20. data/docs/domain-modal/domain_model_custom.svg +1 -0
  21. data/docs/domain-modal.md +9 -0
  22. data/docs/parking_app.drawio +25 -0
  23. data/docs/parking_app.svg +3 -0
  24. data/docs/printspeak-architecture-generator.drawio +31 -0
  25. data/docs/printspeak-architecture-generator.svg +3 -0
  26. data/docs/project-plan/project.drawio +63 -54
  27. data/docs/project-plan/project_done.svg +1 -1
  28. data/docs/project-plan/project_in_progress.svg +1 -1
  29. data/docs/project-plan/project_todo.svg +1 -1
  30. data/docs/samples/styles-glass.svg +1 -1
  31. data/docs/samples/styles-plain.svg +1 -1
  32. data/docs/samples/styles-rounded.svg +1 -1
  33. data/docs/samples/styles-shadow.svg +1 -1
  34. data/docs/samples/styles-sketch.svg +1 -1
  35. data/lib/drawio_dsl/configuration_shapes.rb +4 -0
  36. data/lib/drawio_dsl/dom_builder.rb +1 -1
  37. data/lib/drawio_dsl/dom_builder_shapes.rb +12 -0
  38. data/lib/drawio_dsl/drawio.rb +0 -19
  39. data/lib/drawio_dsl/drawio_extensions.rb +3 -2
  40. data/lib/drawio_dsl/drawio_extensions_active.rb +1 -1
  41. data/lib/drawio_dsl/drawio_page.rb +22 -0
  42. data/lib/drawio_dsl/drawio_shapes.rb +32 -20
  43. data/lib/drawio_dsl/formatters/base_formatter.rb +121 -1
  44. data/lib/drawio_dsl/formatters/html_builder.rb +40 -1
  45. data/lib/drawio_dsl/formatters/interface_formatter.rb +14 -2
  46. data/lib/drawio_dsl/formatters/klass_formatter.rb +14 -2
  47. data/lib/drawio_dsl/formatters/style_builder.rb +1 -1
  48. data/lib/drawio_dsl/schema/_.rb +2 -0
  49. data/lib/drawio_dsl/schema/shapes/db_json.rb +9 -0
  50. data/lib/drawio_dsl/schema/shapes/group.rb +9 -0
  51. data/lib/drawio_dsl/schema/shapes/shape.rb +2 -2
  52. data/lib/drawio_dsl/version.rb +1 -1
  53. data/lib/drawio_dsl/xml_builder.rb +1 -1
  54. data/lib/drawio_dsl.rb +1 -0
  55. data/package-lock.json +2 -2
  56. data/package.json +1 -1
  57. metadata +16 -4
  58. data/docs/domain.drawio +0 -31
  59. data/docs/domain_model.svg +0 -3
data/docs/domain.drawio DELETED
@@ -1,31 +0,0 @@
1
- <mxfile host="65bd71144e">
2
- <diagram id="X2d" name="Style-Plain">
3
- <mxGraphModel dx="862" dy="583" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" background="#fafafa" math="0" shadow="0">
4
- <root>
5
- <mxCell id="page_root_X2d"/>
6
- <mxCell id="node_root_X2d" parent="page_root_X2d"/>
7
- <mxCell id="X2d-2" value="&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px;text-align:center&quot;&gt;&lt;b&gt;Container&lt;/b&gt;&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;" style="whiteSpace=wrap;html=1;rounded=0;fillColor=#ffe6cc;strokeColor=#d79b00;fontColor=#333333;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica" parent="node_root_X2d" vertex="1">
8
- <mxGeometry x="30" y="30" width="160" height="160" as="geometry"/>
9
- </mxCell>
10
- <mxCell id="X2d-3" value="&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px;text-align:center&quot;&gt;&lt;i&gt;&amp;lt;&amp;lt; MixIn &amp;gt;&amp;gt;&lt;/i&gt;&lt;/p&gt;&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px;text-align:center&quot;&gt;&lt;b&gt;Block Processor&lt;/b&gt;&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;" style="whiteSpace=wrap;html=1;rounded=0;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica" parent="node_root_X2d" vertex="1">
11
- <mxGeometry x="250" y="30" width="160" height="160" as="geometry"/>
12
- </mxCell>
13
- <mxCell id="X2d-4" value="Documents" style="whiteSpace=wrap;html=1;rounded=0;fillColor=#f5f5f5;strokeColor=#666666;fontColor=#333333" parent="node_root_X2d" vertex="1">
14
- <mxGeometry x="470" y="30" width="160" height="160" as="geometry"/>
15
- </mxCell>
16
- <mxCell id="X2d-5" value="&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px;text-align:center&quot;&gt;&lt;i&gt;&amp;lt;&amp;lt; MixIn &amp;gt;&amp;gt;&lt;/i&gt;&lt;/p&gt;&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px;text-align:center&quot;&gt;&lt;b&gt;Block Processor&lt;/b&gt;&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px&quot;&gt;block: proc&lt;/p&gt;&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px&quot;&gt;block_state: symbol&lt;/p&gt;&lt;hr size=&quot;1&quot;/&gt;&lt;p style=&quot;margin:0px;margin-left:4px;margin-top:4px&quot;&gt;depend_on()&lt;/p&gt;" style="whiteSpace=wrap;html=1;rounded=0;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica" parent="node_root_X2d" vertex="1">
17
- <mxGeometry x="690" y="30" width="160" height="160" as="geometry"/>
18
- </mxCell>
19
- <mxCell id="4tbYCbTjaN7O87TdMOiT-0" value="&lt;div style=&quot;color: rgb(212 , 212 , 212) ; background-color: rgb(30 , 30 , 30) ; font-family: &amp;#34;menlo&amp;#34; , &amp;#34;monaco&amp;#34; , &amp;#34;courier new&amp;#34; , monospace ; line-height: 18px&quot;&gt;&lt;span style=&quot;color: #ce9178&quot;&gt;db_schema.json&lt;/span&gt;&lt;/div&gt;" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" vertex="1" parent="node_root_X2d">
20
- <mxGeometry x="50" y="199" width="60" height="80" as="geometry"/>
21
- </mxCell>
22
- <mxCell id="4tbYCbTjaN7O87TdMOiT-1" value="11111111" style="shape=datastore;whiteSpace=wrap;html=1;" vertex="1" parent="node_root_X2d">
23
- <mxGeometry x="182" y="112" width="60" height="60" as="geometry"/>
24
- </mxCell>
25
- <mxCell id="4tbYCbTjaN7O87TdMOiT-2" value="db_schema.json" style="strokeWidth=1;html=1;shape=mxgraph.flowchart.database;whiteSpace=wrap;" vertex="1" parent="node_root_X2d">
26
- <mxGeometry x="193" y="249" width="138" height="60" as="geometry"/>
27
- </mxCell>
28
- </root>
29
- </mxGraphModel>
30
- </diagram>
31
- </mxfile>
@@ -1,3 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="822px" height="162px" viewBox="-0.5 -0.5 822 162"><defs/><g><rect x="0" y="0" width="160" height="160" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 162px; height: 160px; padding-top: 0px; margin-left: 0px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: left; width: 160px; height: 160px; overflow: hidden;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; width: 100%; height: 100%; white-space: normal; overflow-wrap: normal;"><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px ; text-align: center"><b>Container</b></p><hr size="1" /></div></div></div></foreignObject><text x="0" y="84" fill="#333333" font-family="Helvetica" font-size="12px">Container</text></switch></g><rect x="220" y="0" width="160" height="160" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 162px; height: 160px; padding-top: 0px; margin-left: 220px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: left; width: 160px; height: 160px; overflow: hidden;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; width: 100%; height: 100%; white-space: normal; overflow-wrap: normal;"><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px ; text-align: center"><i>&lt;&lt; MixIn &gt;&gt;</i></p><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px ; text-align: center"><b>Block Processor</b></p><hr size="1" /></div></div></div></foreignObject><text x="220" y="84" fill="#333333" font-family="Helvetica" font-size="12px">&lt;&lt; MixIn &gt;&gt;...</text></switch></g><rect x="440" y="0" width="160" height="160" fill="#f5f5f5" stroke="#666666" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 80px; margin-left: 441px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Documents</div></div></div></foreignObject><text x="520" y="84" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">Documents</text></switch></g><rect x="660" y="0" width="160" height="160" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 162px; height: 160px; padding-top: 0px; margin-left: 660px;"><div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: left; width: 160px; height: 160px; overflow: hidden;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; width: 100%; height: 100%; white-space: normal; overflow-wrap: normal;"><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px ; text-align: center"><i>&lt;&lt; MixIn &gt;&gt;</i></p><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px ; text-align: center"><b>Block Processor</b></p><hr size="1" /><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px">block: proc</p><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px">block_state: symbol</p><hr size="1" /><p style="margin: 0px ; margin-left: 4px ; margin-top: 4px">depend_on()</p></div></div></div></foreignObject><text x="660" y="84" fill="#333333" font-family="Helvetica" font-size="12px">&lt;&lt; MixIn &gt;&gt;...</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>