drawio_dsl 0.8.3 → 0.8.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.builders/.data/shapes.json +27 -0
- data/.builders/.templates/basic/drawio_extensions.rb +2 -1
- data/.builders/.templates/basic/drawio_shapes.rb +1 -1
- data/.builders/blueprint/shapes.rb +3 -0
- data/.builders/generators/20-drawio-extensions.rb +1 -1
- data/.builders/generators/domain_diagram.rb +473 -0
- data/.builders/generators/parking-map.png +0 -0
- data/.builders/generators/parking_app.rb +110 -0
- data/.builders/generators/printspeak-architecture-generator.rb +45 -0
- data/.builders/generators/project-plan.rb +6 -5
- data/.builders/generators/sample_diagrams/20-styles.rb +2 -2
- data/.builders/generators/sample_diagrams/35-ids-and-arrows.rb +0 -2
- data/CHANGELOG.md +22 -0
- data/README.md +5 -3
- data/docs/domain-modal/domain_model.drawio +265 -0
- data/docs/domain-modal/domain_model.svg +3 -0
- data/docs/domain-modal/domain_model_custom.drawio +408 -0
- data/docs/domain-modal/domain_model_custom.svg +1 -0
- data/docs/domain-modal.md +9 -0
- data/docs/parking_app.drawio +25 -0
- data/docs/parking_app.svg +3 -0
- data/docs/printspeak-architecture-generator.drawio +31 -0
- data/docs/printspeak-architecture-generator.svg +3 -0
- data/docs/project-plan/project.drawio +60 -54
- data/docs/project-plan/project_done.svg +1 -1
- data/docs/project-plan/project_in_progress.svg +1 -1
- data/docs/project-plan/project_todo.svg +1 -1
- data/docs/samples/styles-glass.svg +1 -1
- data/docs/samples/styles-plain.svg +1 -1
- data/docs/samples/styles-rounded.svg +1 -1
- data/docs/samples/styles-shadow.svg +1 -1
- data/docs/samples/styles-sketch.svg +1 -1
- data/lib/drawio_dsl/configuration_shapes.rb +8 -2
- data/lib/drawio_dsl/dom_builder.rb +1 -1
- data/lib/drawio_dsl/dom_builder_shapes.rb +24 -6
- data/lib/drawio_dsl/drawio.rb +0 -19
- data/lib/drawio_dsl/drawio_extensions.rb +3 -2
- data/lib/drawio_dsl/drawio_extensions_active.rb +1 -1
- data/lib/drawio_dsl/drawio_page.rb +22 -0
- data/lib/drawio_dsl/drawio_shapes.rb +64 -46
- data/lib/drawio_dsl/formatters/base_formatter.rb +1 -1
- data/lib/drawio_dsl/formatters/html_builder.rb +1 -1
- data/lib/drawio_dsl/formatters/interface_formatter.rb +1 -1
- data/lib/drawio_dsl/formatters/klass_formatter.rb +1 -1
- data/lib/drawio_dsl/formatters/style_builder.rb +1 -1
- data/lib/drawio_dsl/schema/_.rb +4 -1
- data/lib/drawio_dsl/schema/shapes/database.rb +9 -0
- data/lib/drawio_dsl/schema/shapes/db_json.rb +9 -0
- data/lib/drawio_dsl/schema/shapes/group.rb +9 -0
- data/lib/drawio_dsl/schema/shapes/shape.rb +2 -2
- data/lib/drawio_dsl/version.rb +1 -1
- data/lib/drawio_dsl/xml_builder.rb +1 -1
- data/lib/drawio_dsl.rb +1 -0
- data/package-lock.json +2 -2
- data/package.json +1 -1
- metadata +19 -2
@@ -8,6 +8,7 @@ module DrawioDsl
|
|
8
8
|
ShapeDefaults = Struct.new(:type, :category, :x, :y, :w, :h, :style_modifiers, keyword_init: true)
|
9
9
|
Shapes = Struct.new(
|
10
10
|
:shape,
|
11
|
+
:line,
|
11
12
|
:h1,
|
12
13
|
:h2,
|
13
14
|
:h3,
|
@@ -29,9 +30,12 @@ module DrawioDsl
|
|
29
30
|
:container4,
|
30
31
|
:cross,
|
31
32
|
:envelop,
|
33
|
+
:database,
|
34
|
+
:db_json,
|
32
35
|
:diamond,
|
33
36
|
:document,
|
34
37
|
:ellipse,
|
38
|
+
:group,
|
35
39
|
:hexagon,
|
36
40
|
:interface,
|
37
41
|
:klass,
|
@@ -45,7 +49,6 @@ module DrawioDsl
|
|
45
49
|
:todo,
|
46
50
|
:face,
|
47
51
|
:triangle,
|
48
|
-
:line,
|
49
52
|
:embed_row,
|
50
53
|
:embed_col50,
|
51
54
|
:embed_col200,
|
@@ -55,6 +58,7 @@ module DrawioDsl
|
|
55
58
|
def add_shapes
|
56
59
|
@shapes = Shapes.new(
|
57
60
|
shape: ShapeDefaults.new(type: :shape, category: :element, x: 0, y: 0, w: 20, h: 20, style_modifiers: ''),
|
61
|
+
line: ShapeDefaults.new(type: :line, x: 0, category: :line, y: 0, w: 50, h: 50, style_modifiers: 'edgeStyle=none;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0'),
|
58
62
|
h1: ShapeDefaults.new(type: :h1, x: 0, category: :text, y: 0, w: 100, h: 50, style_modifiers: 'text;fontSize=89;fontColor=#ffffff;fontStyle=1;fillColor=none'),
|
59
63
|
h2: ShapeDefaults.new(type: :h2, x: 0, category: :text, y: 0, w: 100, h: 50, style_modifiers: 'text;fontSize=67;fontColor=#ffffff;fontStyle=1;fillColor=none'),
|
60
64
|
h3: ShapeDefaults.new(type: :h3, x: 0, category: :text, y: 0, w: 100, h: 50, style_modifiers: 'text;fontSize=50;fontColor=#ffffff;fontStyle=1;fillColor=none'),
|
@@ -76,9 +80,12 @@ module DrawioDsl
|
|
76
80
|
container4: ShapeDefaults.new(type: :container4, x: 0, category: :element, y: 0, w: 160, h: 160, style_modifiers: 'swimlane;resizable=0'),
|
77
81
|
cross: ShapeDefaults.new(type: :cross, x: 0, category: :element, y: 0, w: 50, h: 50, style_modifiers: 'verticalLabelPosition=bottom;verticalAlign=top;html=1;shape=mxgraph.basic.x'),
|
78
82
|
envelop: ShapeDefaults.new(type: :envelop, x: 0, category: :element, y: 0, w: 160, h: 100, style_modifiers: 'shape=message'),
|
83
|
+
database: ShapeDefaults.new(type: :database, x: 0, category: :element, y: 0, w: 160, h: 80, style_modifiers: 'shape=mxgraph.flowchart.database;strokeWidth=1'),
|
84
|
+
db_json: ShapeDefaults.new(type: :db_json, x: 0, category: :element, y: 0, w: 160, h: 40, style_modifiers: 'shape=mxgraph.flowchart.database;strokeWidth=1'),
|
79
85
|
diamond: ShapeDefaults.new(type: :diamond, x: 0, category: :element, y: 0, w: 100, h: 100, style_modifiers: 'rhombus'),
|
80
86
|
document: ShapeDefaults.new(type: :document, x: 0, category: :element, y: 0, w: 160, h: 160, style_modifiers: 'shape=mxgraph.basic.document'),
|
81
87
|
ellipse: ShapeDefaults.new(type: :ellipse, x: 0, category: :element, y: 0, w: 200, h: 120, style_modifiers: 'ellipse'),
|
88
|
+
group: ShapeDefaults.new(type: :group, x: 0, category: :element, y: 0, w: 210, h: 210, style_modifiers: 'fontSize=20;verticalAlign=top'),
|
82
89
|
hexagon: ShapeDefaults.new(type: :hexagon, x: 0, category: :element, y: 0, w: 200, h: 120, style_modifiers: 'shape=hexagon'),
|
83
90
|
interface: ShapeDefaults.new(type: :interface, x: 0, category: :element, y: 0, w: 160, h: 160, style_modifiers: 'align=left;overflow=fill;fontSize=12;fontFamily=Helvetica'),
|
84
91
|
klass: ShapeDefaults.new(type: :klass, x: 0, category: :element, y: 0, w: 160, h: 160, style_modifiers: 'align=left;overflow=fill;fontSize=12;fontFamily=Helvetica'),
|
@@ -92,7 +99,6 @@ module DrawioDsl
|
|
92
99
|
todo: ShapeDefaults.new(type: :todo, x: 0, category: :element, y: 0, w: 300, h: 60, style_modifiers: ''),
|
93
100
|
face: ShapeDefaults.new(type: :face, x: 0, category: :element, y: 0, w: 100, h: 100, style_modifiers: 'verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.basic.smiley'),
|
94
101
|
triangle: ShapeDefaults.new(type: :triangle, x: 0, category: :element, y: 0, w: 100, h: 100, style_modifiers: 'triangle'),
|
95
|
-
line: ShapeDefaults.new(type: :line, x: 0, category: :line, y: 0, w: 50, h: 50, style_modifiers: 'edgeStyle=none;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0'),
|
96
102
|
embed_row: ShapeDefaults.new(type: :embed_row, x: 0, category: :element, y: 0, w: 200, h: 40, style_modifiers: 'shape=partialRectangle;collapsible=0;dropTarget=0;pointerEvents=0;top=0;left=0;bottom=1;right=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest'),
|
97
103
|
embed_col50: ShapeDefaults.new(type: :embed_col50, x: 0, category: :element, y: 0, w: 50, h: 40, style_modifiers: 'shape=partialRectangle;connectable=0;top=0;left=0;bottom=0;right=0;fontStyle=1;overflow=hidden'),
|
98
104
|
embed_col200: ShapeDefaults.new(type: :embed_col200, x: 0, category: :element, y: 0, w: 150, h: 40, style_modifiers: 'shape=partialRectangle;connectable=0;top=0;left=0;bottom=0;right=0;align=left;spacingLeft=6;overflow=hidden')
|
@@ -4,6 +4,12 @@
|
|
4
4
|
module DrawioDsl
|
5
5
|
# DrawioDsl is a DSL for draw-io diagrams.
|
6
6
|
module DomBuilderShapes
|
7
|
+
def add_line(id = nil, **opts, &block)
|
8
|
+
opts = { id: id }.merge(opts) if id
|
9
|
+
line = DrawioDsl::Schema::Line.new(current_page, **opts, &block)
|
10
|
+
add_shape(line)
|
11
|
+
end
|
12
|
+
|
7
13
|
def add_h1(id = nil, **opts, &block)
|
8
14
|
opts = { id: id }.merge(opts) if id
|
9
15
|
h1 = DrawioDsl::Schema::H1.new(current_page, **opts, &block)
|
@@ -130,6 +136,18 @@ module DrawioDsl
|
|
130
136
|
add_shape(envelop)
|
131
137
|
end
|
132
138
|
|
139
|
+
def add_database(id = nil, **opts, &block)
|
140
|
+
opts = { id: id }.merge(opts) if id
|
141
|
+
database = DrawioDsl::Schema::Database.new(current_page, **opts, &block)
|
142
|
+
add_shape(database)
|
143
|
+
end
|
144
|
+
|
145
|
+
def add_db_json(id = nil, **opts, &block)
|
146
|
+
opts = { id: id }.merge(opts) if id
|
147
|
+
db_json = DrawioDsl::Schema::DbJson.new(current_page, **opts, &block)
|
148
|
+
add_shape(db_json)
|
149
|
+
end
|
150
|
+
|
133
151
|
def add_diamond(id = nil, **opts, &block)
|
134
152
|
opts = { id: id }.merge(opts) if id
|
135
153
|
diamond = DrawioDsl::Schema::Diamond.new(current_page, **opts, &block)
|
@@ -148,6 +166,12 @@ module DrawioDsl
|
|
148
166
|
add_shape(ellipse)
|
149
167
|
end
|
150
168
|
|
169
|
+
def add_group(id = nil, **opts, &block)
|
170
|
+
opts = { id: id }.merge(opts) if id
|
171
|
+
group = DrawioDsl::Schema::Group.new(current_page, **opts, &block)
|
172
|
+
add_shape(group)
|
173
|
+
end
|
174
|
+
|
151
175
|
def add_hexagon(id = nil, **opts, &block)
|
152
176
|
opts = { id: id }.merge(opts) if id
|
153
177
|
hexagon = DrawioDsl::Schema::Hexagon.new(current_page, **opts, &block)
|
@@ -226,12 +250,6 @@ module DrawioDsl
|
|
226
250
|
add_shape(triangle)
|
227
251
|
end
|
228
252
|
|
229
|
-
def add_line(id = nil, **opts, &block)
|
230
|
-
opts = { id: id }.merge(opts) if id
|
231
|
-
line = DrawioDsl::Schema::Line.new(current_page, **opts, &block)
|
232
|
-
add_shape(line)
|
233
|
-
end
|
234
|
-
|
235
253
|
def add_embed_row(id = nil, **opts, &block)
|
236
254
|
opts = { id: id }.merge(opts) if id
|
237
255
|
embed_row = DrawioDsl::Schema::EmbedRow.new(current_page, **opts, &block)
|
data/lib/drawio_dsl/drawio.rb
CHANGED
@@ -67,23 +67,4 @@ module DrawioDsl
|
|
67
67
|
self
|
68
68
|
end
|
69
69
|
end
|
70
|
-
|
71
|
-
# DrawioDsl::DrawioPage is created when you call .page on the draw-io DSL.
|
72
|
-
class DrawioPage < KDirector::Directors::ChildDirector
|
73
|
-
include DrawioDsl::DrawioShapes
|
74
|
-
|
75
|
-
def initialize(parent, **opts)
|
76
|
-
super(parent, **opts)
|
77
|
-
|
78
|
-
builder.add_page(**opts)
|
79
|
-
end
|
80
|
-
|
81
|
-
def grid_layout(**opts)
|
82
|
-
builder.add_grid_layout(**opts)
|
83
|
-
end
|
84
|
-
|
85
|
-
def flex_layout(**opts)
|
86
|
-
builder.add_flex_layout(**opts)
|
87
|
-
end
|
88
|
-
end
|
89
70
|
end
|
@@ -2,8 +2,9 @@
|
|
2
2
|
|
3
3
|
module DrawioDsl
|
4
4
|
# :nocov:
|
5
|
-
|
6
|
-
|
5
|
+
# 1000's of extension shapes derived from Extensions.js that can be used via the add_shape method
|
6
|
+
class DrawioExtensions
|
7
|
+
include DrawioDsl::DrawioExtensionsActive
|
7
8
|
|
8
9
|
attr_reader :sections
|
9
10
|
attr_reader :current_section
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module DrawioDsl
|
4
|
+
# DrawioDsl::DrawioPage is created when you call .page on the draw-io DSL.
|
5
|
+
class DrawioPage < KDirector::Directors::ChildDirector
|
6
|
+
include DrawioDsl::DrawioShapes
|
7
|
+
|
8
|
+
def initialize(parent, **opts)
|
9
|
+
super(parent, **opts)
|
10
|
+
|
11
|
+
builder.add_page(**opts)
|
12
|
+
end
|
13
|
+
|
14
|
+
def grid_layout(**opts)
|
15
|
+
builder.add_grid_layout(**opts)
|
16
|
+
end
|
17
|
+
|
18
|
+
def flex_layout(**opts)
|
19
|
+
builder.add_flex_layout(**opts)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -1,96 +1,106 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module DrawioDsl
|
4
|
-
#
|
4
|
+
# List of DSL methods for each common shape
|
5
5
|
# :nocov:
|
6
6
|
module DrawioShapes
|
7
7
|
def random(**opts)
|
8
|
-
case rand(
|
8
|
+
case rand(44)
|
9
9
|
when 0
|
10
|
-
|
10
|
+
line(**opts)
|
11
11
|
when 1
|
12
|
-
|
12
|
+
h1(**opts)
|
13
13
|
when 2
|
14
|
-
|
14
|
+
h2(**opts)
|
15
15
|
when 3
|
16
|
-
|
16
|
+
h3(**opts)
|
17
17
|
when 4
|
18
|
-
|
18
|
+
h4(**opts)
|
19
19
|
when 5
|
20
|
-
|
20
|
+
h5(**opts)
|
21
21
|
when 6
|
22
|
-
|
22
|
+
h6(**opts)
|
23
23
|
when 7
|
24
|
-
|
24
|
+
p(**opts)
|
25
25
|
when 8
|
26
|
-
|
26
|
+
actor(**opts)
|
27
27
|
when 9
|
28
|
-
|
28
|
+
actor2(**opts)
|
29
29
|
when 10
|
30
|
-
|
30
|
+
callout(**opts)
|
31
31
|
when 11
|
32
|
-
|
32
|
+
callout2(**opts)
|
33
33
|
when 12
|
34
|
-
|
34
|
+
callout3(**opts)
|
35
35
|
when 13
|
36
|
-
|
36
|
+
callout4(**opts)
|
37
37
|
when 14
|
38
|
-
|
38
|
+
circle(**opts)
|
39
39
|
when 15
|
40
|
-
|
40
|
+
cloud(**opts)
|
41
41
|
when 16
|
42
|
-
|
42
|
+
container(**opts)
|
43
43
|
when 17
|
44
|
-
|
44
|
+
container2(**opts)
|
45
45
|
when 18
|
46
|
-
|
46
|
+
container3(**opts)
|
47
47
|
when 19
|
48
|
-
|
48
|
+
container4(**opts)
|
49
49
|
when 20
|
50
|
-
|
50
|
+
cross(**opts)
|
51
51
|
when 21
|
52
|
-
|
52
|
+
envelop(**opts)
|
53
53
|
when 22
|
54
|
-
|
54
|
+
database(**opts)
|
55
55
|
when 23
|
56
|
-
|
56
|
+
db_json(**opts)
|
57
57
|
when 24
|
58
|
-
|
58
|
+
diamond(**opts)
|
59
59
|
when 25
|
60
|
-
|
60
|
+
document(**opts)
|
61
61
|
when 26
|
62
|
-
|
62
|
+
ellipse(**opts)
|
63
63
|
when 27
|
64
|
-
|
64
|
+
group(**opts)
|
65
65
|
when 28
|
66
|
-
|
66
|
+
hexagon(**opts)
|
67
67
|
when 29
|
68
|
-
|
68
|
+
interface(**opts)
|
69
69
|
when 30
|
70
|
-
|
70
|
+
klass(**opts)
|
71
71
|
when 31
|
72
|
-
|
72
|
+
note(**opts)
|
73
73
|
when 32
|
74
|
-
|
74
|
+
process(**opts)
|
75
75
|
when 33
|
76
|
-
|
76
|
+
rectangle(**opts)
|
77
77
|
when 34
|
78
|
-
|
78
|
+
rectangle2(**opts)
|
79
79
|
when 35
|
80
|
-
|
80
|
+
square(**opts)
|
81
81
|
when 36
|
82
|
-
|
82
|
+
step(**opts)
|
83
83
|
when 37
|
84
|
-
|
84
|
+
tick(**opts)
|
85
85
|
when 38
|
86
|
-
|
86
|
+
todo(**opts)
|
87
87
|
when 39
|
88
|
-
|
88
|
+
face(**opts)
|
89
89
|
when 40
|
90
|
+
triangle(**opts)
|
91
|
+
when 41
|
92
|
+
embed_row(**opts)
|
93
|
+
when 42
|
94
|
+
embed_col50(**opts)
|
95
|
+
when 43
|
90
96
|
embed_col200(**opts)
|
91
97
|
end
|
92
98
|
end
|
93
99
|
|
100
|
+
def line(id = nil, **opts, &block)
|
101
|
+
builder.add_line(id, **opts, &block)
|
102
|
+
end
|
103
|
+
|
94
104
|
def h1(id = nil, **opts, &block)
|
95
105
|
builder.add_h1(id, **opts, &block)
|
96
106
|
end
|
@@ -175,6 +185,14 @@ module DrawioDsl
|
|
175
185
|
builder.add_envelop(id, **opts, &block)
|
176
186
|
end
|
177
187
|
|
188
|
+
def database(id = nil, **opts, &block)
|
189
|
+
builder.add_database(id, **opts, &block)
|
190
|
+
end
|
191
|
+
|
192
|
+
def db_json(id = nil, **opts, &block)
|
193
|
+
builder.add_db_json(id, **opts, &block)
|
194
|
+
end
|
195
|
+
|
178
196
|
def diamond(id = nil, **opts, &block)
|
179
197
|
builder.add_diamond(id, **opts, &block)
|
180
198
|
end
|
@@ -187,6 +205,10 @@ module DrawioDsl
|
|
187
205
|
builder.add_ellipse(id, **opts, &block)
|
188
206
|
end
|
189
207
|
|
208
|
+
def group(id = nil, **opts, &block)
|
209
|
+
builder.add_group(id, **opts, &block)
|
210
|
+
end
|
211
|
+
|
190
212
|
def hexagon(id = nil, **opts, &block)
|
191
213
|
builder.add_hexagon(id, **opts, &block)
|
192
214
|
end
|
@@ -239,10 +261,6 @@ module DrawioDsl
|
|
239
261
|
builder.add_triangle(id, **opts, &block)
|
240
262
|
end
|
241
263
|
|
242
|
-
def line(id = nil, **opts, &block)
|
243
|
-
builder.add_line(id, **opts, &block)
|
244
|
-
end
|
245
|
-
|
246
264
|
def embed_row(id = nil, **opts, &block)
|
247
265
|
builder.add_embed_row(id, **opts, &block)
|
248
266
|
end
|
@@ -4,7 +4,7 @@
|
|
4
4
|
module DrawioDsl
|
5
5
|
# HTML formatters can be used on shapes to render HTML using a DSL
|
6
6
|
module Formatters
|
7
|
-
#
|
7
|
+
# HTML builder has methods for common HTML elements that get written sequentially
|
8
8
|
class HtmlBuilder
|
9
9
|
attr_reader :element_style_defaults
|
10
10
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
module DrawioDsl
|
5
5
|
# HTML formatters can be used on shapes to render HTML using a DSL
|
6
6
|
module Formatters
|
7
|
-
#
|
7
|
+
# Format the HTML to display an interface on a class diagram
|
8
8
|
class InterfaceFormatter < BaseFormatter
|
9
9
|
def initialize
|
10
10
|
super({ p: { margin: '0px', margin_left: '4px', margin_top: '4px' } })
|
@@ -4,7 +4,7 @@
|
|
4
4
|
module DrawioDsl
|
5
5
|
# HTML formatters can be used on shapes to render HTML using a DSL
|
6
6
|
module Formatters
|
7
|
-
#
|
7
|
+
# Format the HTML to display an class on a class diagram
|
8
8
|
class KlassFormatter < BaseFormatter
|
9
9
|
def initialize
|
10
10
|
super({ p: { margin: '0px', margin_left: '4px', margin_top: '4px' } })
|
@@ -4,7 +4,7 @@
|
|
4
4
|
module DrawioDsl
|
5
5
|
# HTML formatters can be used on shapes to render HTML using a DSL
|
6
6
|
module Formatters
|
7
|
-
#
|
7
|
+
# Build the style attribute for a HTML element
|
8
8
|
class StyleBuilder
|
9
9
|
MAPPINGS = {
|
10
10
|
margin: 'margin',
|
data/lib/drawio_dsl/schema/_.rb
CHANGED
@@ -12,6 +12,7 @@ require_relative 'layouts/flex_layout'
|
|
12
12
|
require_relative 'layouts/grid_layout'
|
13
13
|
|
14
14
|
require_relative 'shapes/shape'
|
15
|
+
require_relative 'shapes/line'
|
15
16
|
require_relative 'shapes/h1'
|
16
17
|
require_relative 'shapes/h2'
|
17
18
|
require_relative 'shapes/h3'
|
@@ -33,9 +34,12 @@ require_relative 'shapes/container3'
|
|
33
34
|
require_relative 'shapes/container4'
|
34
35
|
require_relative 'shapes/cross'
|
35
36
|
require_relative 'shapes/envelop'
|
37
|
+
require_relative 'shapes/database'
|
38
|
+
require_relative 'shapes/db_json'
|
36
39
|
require_relative 'shapes/diamond'
|
37
40
|
require_relative 'shapes/document'
|
38
41
|
require_relative 'shapes/ellipse'
|
42
|
+
require_relative 'shapes/group'
|
39
43
|
require_relative 'shapes/hexagon'
|
40
44
|
require_relative 'shapes/interface'
|
41
45
|
require_relative 'shapes/klass'
|
@@ -49,7 +53,6 @@ require_relative 'shapes/tick'
|
|
49
53
|
require_relative 'shapes/todo'
|
50
54
|
require_relative 'shapes/face'
|
51
55
|
require_relative 'shapes/triangle'
|
52
|
-
require_relative 'shapes/line'
|
53
56
|
require_relative 'shapes/embed_row'
|
54
57
|
require_relative 'shapes/embed_col50'
|
55
58
|
require_relative 'shapes/embed_col200'
|
@@ -119,8 +119,8 @@ module DrawioDsl
|
|
119
119
|
# rubocop:enable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
|
120
120
|
|
121
121
|
def as_xml(xml)
|
122
|
-
log.error category
|
123
|
-
log.error type
|
122
|
+
# log.error category
|
123
|
+
# log.error type
|
124
124
|
draw_element(xml) if category == :element
|
125
125
|
draw_line(xml) if category == :line
|
126
126
|
end
|
data/lib/drawio_dsl/version.rb
CHANGED
data/lib/drawio_dsl.rb
CHANGED
@@ -21,6 +21,7 @@ require_relative 'drawio_dsl/layout_engine'
|
|
21
21
|
require_relative 'drawio_dsl/drawio_shapes'
|
22
22
|
require_relative 'drawio_dsl/drawio_extensions_active'
|
23
23
|
require_relative 'drawio_dsl/drawio_extensions'
|
24
|
+
require_relative 'drawio_dsl/drawio_page'
|
24
25
|
require_relative 'drawio_dsl/drawio'
|
25
26
|
|
26
27
|
module DrawioDsl
|
data/package-lock.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "drawio_dsl",
|
3
|
-
"version": "0.8.
|
3
|
+
"version": "0.8.6",
|
4
4
|
"lockfileVersion": 2,
|
5
5
|
"requires": true,
|
6
6
|
"packages": {
|
7
7
|
"": {
|
8
8
|
"name": "drawio_dsl",
|
9
|
-
"version": "0.8.
|
9
|
+
"version": "0.8.6",
|
10
10
|
"devDependencies": {
|
11
11
|
"@klueless-js/semantic-release-rubygem": "github:klueless-js/semantic-release-rubygem",
|
12
12
|
"@semantic-release/changelog": "^6.0.1",
|
data/package.json
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: drawio_dsl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Cruwys
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-03-
|
11
|
+
date: 2022-03-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: k_config
|
@@ -88,6 +88,10 @@ files:
|
|
88
88
|
- ".builders/generators/02-generate-app.rb"
|
89
89
|
- ".builders/generators/10-transform-drawio-js.rb"
|
90
90
|
- ".builders/generators/20-drawio-extensions.rb"
|
91
|
+
- ".builders/generators/domain_diagram.rb"
|
92
|
+
- ".builders/generators/parking-map.png"
|
93
|
+
- ".builders/generators/parking_app.rb"
|
94
|
+
- ".builders/generators/printspeak-architecture-generator.rb"
|
91
95
|
- ".builders/generators/project-plan.rb"
|
92
96
|
- ".builders/generators/sample_diagrams/05-samples.rb"
|
93
97
|
- ".builders/generators/sample_diagrams/10-page-margin.rb"
|
@@ -111,6 +115,11 @@ files:
|
|
111
115
|
- Rakefile
|
112
116
|
- bin/console
|
113
117
|
- bin/setup
|
118
|
+
- docs/domain-modal.md
|
119
|
+
- docs/domain-modal/domain_model.drawio
|
120
|
+
- docs/domain-modal/domain_model.svg
|
121
|
+
- docs/domain-modal/domain_model_custom.drawio
|
122
|
+
- docs/domain-modal/domain_model_custom.svg
|
114
123
|
- docs/extensions.md
|
115
124
|
- docs/extensions/analyti_cs.svg
|
116
125
|
- docs/extensions/android_inputs.svg
|
@@ -265,6 +274,10 @@ files:
|
|
265
274
|
- docs/extensions/venn_gradient.svg
|
266
275
|
- docs/extensions/venn_plain.svg
|
267
276
|
- docs/extensions/vessels.svg
|
277
|
+
- docs/parking_app.drawio
|
278
|
+
- docs/parking_app.svg
|
279
|
+
- docs/printspeak-architecture-generator.drawio
|
280
|
+
- docs/printspeak-architecture-generator.svg
|
268
281
|
- docs/project-plan.md
|
269
282
|
- docs/project-plan/project.drawio
|
270
283
|
- docs/project-plan/project_done.svg
|
@@ -297,6 +310,7 @@ files:
|
|
297
310
|
- lib/drawio_dsl/drawio_extensions.json
|
298
311
|
- lib/drawio_dsl/drawio_extensions.rb
|
299
312
|
- lib/drawio_dsl/drawio_extensions_active.rb
|
313
|
+
- lib/drawio_dsl/drawio_page.rb
|
300
314
|
- lib/drawio_dsl/drawio_shapes.rb
|
301
315
|
- lib/drawio_dsl/formatters/_.rb
|
302
316
|
- lib/drawio_dsl/formatters/base_formatter.rb
|
@@ -329,6 +343,8 @@ files:
|
|
329
343
|
- lib/drawio_dsl/schema/shapes/container3.rb
|
330
344
|
- lib/drawio_dsl/schema/shapes/container4.rb
|
331
345
|
- lib/drawio_dsl/schema/shapes/cross.rb
|
346
|
+
- lib/drawio_dsl/schema/shapes/database.rb
|
347
|
+
- lib/drawio_dsl/schema/shapes/db_json.rb
|
332
348
|
- lib/drawio_dsl/schema/shapes/diamond.rb
|
333
349
|
- lib/drawio_dsl/schema/shapes/document.rb
|
334
350
|
- lib/drawio_dsl/schema/shapes/ellipse.rb
|
@@ -337,6 +353,7 @@ files:
|
|
337
353
|
- lib/drawio_dsl/schema/shapes/embed_row.rb
|
338
354
|
- lib/drawio_dsl/schema/shapes/envelop.rb
|
339
355
|
- lib/drawio_dsl/schema/shapes/face.rb
|
356
|
+
- lib/drawio_dsl/schema/shapes/group.rb
|
340
357
|
- lib/drawio_dsl/schema/shapes/h1.rb
|
341
358
|
- lib/drawio_dsl/schema/shapes/h2.rb
|
342
359
|
- lib/drawio_dsl/schema/shapes/h3.rb
|