handlebarsjs 0.1.0 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bf7edc4bc2b73dc650191c1ed0d5bed62247eee5dac4a11adaea49994e97cb37
4
- data.tar.gz: 887e5647e54f683387dd1267828c3fcdb8137b3fb7d754d1370809bef7f42e25
3
+ metadata.gz: 596f9e558bf5308c4fe912079507eb42a0ad15647ffb298f7400487d4d545146
4
+ data.tar.gz: e0b7380f763e9fbb808a0246f03c2870f608a860369f621253b5789e20122d7e
5
5
  SHA512:
6
- metadata.gz: 3026da3fd166235e97eb4a7679b1173be9cba49300b02f925cca8dbe360799f1f5612e5c4060b96d1611ae1a322e6dea693524b8eedd54075e96f507dda7e8fd
7
- data.tar.gz: 3a36a4a7e0d39e8e7e430b119a109077478e5ef43c623e8b6ba359c8a851205aa76668343063aea57620e378bd79580e920efd7c6ffcdfd83758b04bea1da1dc
6
+ metadata.gz: 665d312a9a202e08085879dd57b9ed6577318de92e29f3843297ca68f4a506c203fc082ad78dbb8574f200489dba0d835c5c32ef6e66fab083d05392b3b54525
7
+ data.tar.gz: a3f4b97ab1ac479428bb972c7350767a74a83337da1e03e6612bda7494ed1cac9121f02d62df2de405778c9a2909c47a029309ba0fb5d905f8613eeae8f4957e
@@ -99,7 +99,7 @@ KManager.action :bootstrap do
99
99
  run_command("git add .; git commit -m 'chore: #{self.options.description.downcase}'; git push")
100
100
  end
101
101
  .blueprint(
102
- active: true,
102
+ active: false,
103
103
  name: :ci_cd,
104
104
  description: 'github actions (CI/CD)',
105
105
  on_exist: :write) do
@@ -5,462 +5,166 @@ KManager.action :domain_model do
5
5
  .init(k_builder, on_exist: :write, on_action: :execute)
6
6
  .diagram(theme: :style_04)
7
7
  .page('Domain Modal', margin_left: 0, margin_top: 0, rounded: 0, background: '#fafafa') do
8
- grid_layout(wrap_at: 6, grid_w: 180, grid_h: 180)
8
+ group_element = {
9
+ theme: :style_01, w: 50, h: 50
10
+ }
9
11
 
10
- shape_element = :rectangle2 # hexagon, diamond, ellipse
11
- shape_element_w = 75
12
- shape_element_h = 50
13
- shape_element_theme = :style_03
12
+ blank = {
13
+ fill_color: '#fafafa',
14
+ stroke_color: '#fafafa',
15
+ font_color: '#fafafa',
16
+ w: 10,
17
+ h: 10
18
+ }
14
19
 
15
- # need a blank
16
- # square(fill_color: '#fafafa', stroke_color: '#fafafa', font_color: '#333333')
20
+ box_width = 160
17
21
 
18
- square(title: 'Configuration', theme: :style_01)
22
+ ################################################################################
23
+ # Domain Model
24
+ ################################################################################
19
25
 
20
- klass(description: '') do
21
- format
22
- .header('ShapeDefaults')
23
- .field(:type, type: :symbol)
24
- .field(:category, type: :symbol)
25
- .field(:x, type: :integer)
26
- .field(:y, type: :integer)
27
- .field(:w, type: :integer)
28
- .field(:h, type: :integer)
29
- .field(:style_modifiers, type: :string)
30
- end
31
-
32
- klass(description: '') do
33
- format
34
- .header('ShapeThemeStyle')
35
- .field(:theme, type: :symbol)
36
- .field(:fill_color, type: :string)
37
- .field(:stroke_color, type: :string)
38
- .field(:font_color, type: :string)
39
- end
40
-
41
- klass(description: 'Configuration container for the DrawIO DSL') do
42
- format
43
- .header('Configuration')
44
- .field(:base_style, type: :Struct)
45
- .field(:shapes, type: 'Hash<Struct>')
46
- .field(:themes, type: :Hash)
47
- .method('+ <ConfigurationThemes>')
48
- .method('+ <ConfigurationShapes>')
49
- end
50
-
51
- interface(description: 'Used to attach configuration to KConfig module', theme: :style_02) do
52
- format
53
- .header('ConfigurationExtension', interface_type: 'MixIn')
54
- .field(:drawio, type: :Configuration)
55
- end
56
-
57
- interface(description: 'Attach predefined DrawIO shapes to KConfig module', theme: :style_02) do
58
- format
59
- .header('ConfigurationShapes', interface_type: 'MixIn')
60
- .method(:add_shapes)
61
- end
62
-
63
- interface(description: 'Configuration for each theme', theme: :style_02) do
64
- format
65
- .header('ConfigurationThemes', interface_type: 'MixIn')
66
- .method(:add_theme)
67
- .method(:add_themes)
68
- end
69
-
70
- square(title: 'DOM Builder', theme: :style_01)
71
-
72
- klass(description: 'Build Document object model to represent DrawioDsl output file.') do
73
- format
74
- .header('DomBuilder')
75
- .field(:actions, type: :Array)
76
- .field(:last_action, type: :Hash)
77
- .field(:focus_node, type: :Anchor)
78
- .field(:current_page, type: :Page)
79
- .field(:dom)
80
- .method(:reset)
81
- .method(:queue_action)
82
- .method(:set_diagram)
83
- .method(:diagram)
84
- .method(:add_page)
85
- .method(:add_grid_layout)
86
- .method(:add_flex_layout)
87
- .method(:add_layout)
88
- .method(:add_shape)
89
- .method('+ <DomBuilderShapes>')
90
- end
91
-
92
- interface(description: 'Builder methods for each shape, line and text element to attach to DomBuilder.', theme: :style_02) do
93
- format
94
- .header('DomBuilderShapes', interface_type: 'MixIn')
95
- .method('add_* (for each shape)')
96
- end
97
-
98
- square(title: 'DrawIO DSL', theme: :style_01)
99
-
100
- klass(description: 'DSL for draw-io diagrams') do
101
- format
102
- .header('Drawio')
103
- .method(:diagram)
104
- .method(:page)
105
- .method(:save)
106
- .method(:osave)
107
- .method(:export_svg)
108
- .method(:export_png)
109
- end
110
-
111
- klass(description: 'DSL for draw-io diagrams') do
112
- format
113
- .header('DrawioPage')
114
- .method(:grid_layout)
115
- .method(:flex_layout)
116
- .method('+ <DrawioShapes>')
117
- end
118
-
119
- interface(description: 'List of DSL methods for each common shape', theme: :style_02) do
120
- format
121
- .header('DrawioShapes', interface_type: 'MixIn')
122
- .method(:random)
123
- .method('* (for each shape)')
124
- end
125
-
126
- square(title: '1000 Extension Shapes', theme: :style_01)
26
+ grid_layout(wrap_at: 6, grid_w: box_width+20, grid_h: box_width+20)
127
27
 
128
- klass(description: '1000s of extension shapes derived from Extensions.js that can be used via the add_shape method') do
28
+ klass(theme: :style_02) do
129
29
  format
130
- .header('DrawioExtensions')
131
- .field(:sections, type: :Array)
132
- .field(:current_section, type: :Hash)
133
- .method(:section)
134
- .method(:shape)
135
- .method(:to_h)
136
- .method(:build_extensions)
137
- .method(:configure_extensions)
138
- .method('+ <DrawioExtensionsActive>')
30
+ .header('Flow')
31
+ .field('attach handlebars-4.7.7.js')
32
+ .field('attach handlebars-custom.js')
139
33
  end
140
34
 
141
- interface(description: 'Mark shapes as active or not, based on incomplete style being made inactive', theme: :style_02) do
142
- format
143
- .header('DrawioExtensionsActive', interface_type: 'MixIn')
144
- .method(:apply_active_flags)
145
- .method(:check_if_active)
146
- end
147
-
148
- klass(description: 'Layout engine is responsible for laying out the elements on the page') do
149
- format
150
- .header('LayoutEngine')
151
- .field(:page, type: :Page)
152
- .field(:current_page, type: :Page)
153
- .field(:current_layout, type: :Layout)
154
- .method(:call)
155
- .method(:traverse_node)
156
- .method(:process_node)
157
- end
158
-
159
- klass(description: 'Build the DrawioDsl XML file that is the basis of any draw-io diagrams.') do
160
- format
161
- .header('XmlBuilder')
162
- .field(:diagram)
163
- .method(:build)
164
- end
165
-
166
- square(title: 'Formatters', theme: :style_01)
167
-
168
- klass(description: 'HTML builder has methods for common HTML elements that get written sequentially') do
169
- format
170
- .header('HtmlBuilder')
171
- .field(:element_style_defaults, type: :Hash)
172
- .method(:default_for)
173
- .method(:style_for)
174
- .method(:empty?)
175
- .method(:exist?)
176
- .method(:as_html)
177
- .method(:hr)
178
- .method(:b)
179
- .method(:p)
180
- .method(:add_line)
181
- .method(:add_placeholder)
182
- .method(:group)
183
- .method(:build_lines)
184
- .method(:lines)
185
- .method(:groups)
186
- end
187
35
 
188
- interface(description: 'Create an instance of a HTML formatter on the shape', theme: :style_02) do
36
+ klass() do
189
37
  format
190
- .header('Factory', interface_type: 'MixIn')
191
- .method(:formatter)
192
- .method(:format_instance)
193
- end
194
-
195
- klass(description: 'Base for any HTML formatter') do
196
- format
197
- .header('BaseFormatter')
198
- .field(:html, type: :String)
199
- .method(:empty?)
200
- .method(:as_html)
201
- end
202
-
203
- klass(description: 'Format the HTML to display an interface on a class diagram') do
204
- format
205
- .header('InterfaceFormatter')
206
- .method(:header)
207
- .method(:field)
208
- .method(:method)
209
- .method(:as_html)
210
- end
211
-
212
- klass(description: 'Format the HTML to display an class on a class diagram') do
213
- format
214
- .header('KlassFormatter')
215
- .method(:header)
216
- .method(:field)
217
- .method(:method)
218
- .method(:as_html)
219
- end
220
-
221
- klass(description: 'style_builder') do
222
- format
223
- .header('StyleBuilder')
224
- .field(:defaults, type: :Hash)
225
- .field(:custom, type: :Hash)
226
- .method(:customize)
227
- .method(:style)
228
- .method(:style_attribute)
229
- .method(:build)
230
- end
231
-
232
- square(title: 'Schema', theme: :style_01)
233
-
234
- klass(description: 'Shape is a graphical element, it can be a shape, a text, or a group') do
235
- format
236
- .header('Shape')
237
- .field(:category, type: :Symbol)
238
- .field(:theme, type: :Symbol)
239
- .field(:title, type: :String)
240
- .field(:value, type: :String)
241
- .field(:white_space, type: :int)
242
- .field(:html, type: :int)
243
- .field(:rounded, type: :int)
244
- .field(:shadow, type: :int)
245
- .field(:glass, type: :int)
246
- .field(:sketch, type: :int)
247
- .field(:fill_color, type: :String)
248
- .field(:stroke_color, type: :String)
249
- .field(:font_color, type: :String)
250
- .field(:gradient, type: :String)
251
- .field(:x, type: :int)
252
- .field(:y, type: :int)
253
- .field(:w, type: :int)
254
- .field(:h, type: :int)
255
- .field(:style_modifiers, type: :Hash)
256
- .field(:source, type: 'Symbol (id)')
257
- .field(:target, type: 'Symbol (id)')
258
- .method('> configure_shape')
259
- .method(:initialize)
260
- .method(:shape_defaults)
261
- .method(:apply_defaults)
262
- .method(:format)
263
- .method(:style)
264
- .method(:as_xml)
265
- .method(:draw_element)
266
- .method(:draw_line)
267
- .method(:to_h)
268
- end
269
-
270
- klass(description: 'common_style') do
271
- format
272
- .header('CommonStyle')
273
- .field(:white_space, type: :int)
274
- .field(:html, type: :int)
275
- .field(:rounded, type: :int)
276
- .field(:shadow, type: :int)
277
- .field(:glass, type: :int)
278
- .field(:sketch, type: :int)
279
- .method(:to_h)
280
- end
281
-
282
- klass(description: 'default_palette') do
283
- format
284
- .header('DefaultPalette')
285
- .field(:fill_color, type: :String)
286
- .field(:stroke_color, type: :String)
287
- .field(:font_color, type: :String)
288
- .field(:gradient, type: :String)
289
- .method(:to_h)
290
- end
291
-
292
- klass(description: 'diagram') do
293
- format
294
- .header('Diagram')
295
- .field(:host, type: :String)
296
- .field(:theme, type: :String)
297
- .field(:style, type: :CommonStyle)
298
- .field(:palette, type: :DefaultPalette)
299
- .field(:pages, type: :Array)
300
- .method(:to_h)
301
- end
302
- klass(description: 'node') do
303
- format
304
- .header('Node')
305
- .field(:id, type: :String)
306
- .field(:page, type: :Page)
307
- .field(:parent, type: :Node)
308
- .field(:classification, type: :String)
309
- .field(:type, type: :String)
310
- .field(:nodes, type: :Array)
311
- .method(:initialize)
312
- .method(:to_h)
313
- .method(:root?)
314
- .method(:add_node)
315
- end
316
-
317
- klass(description: 'node_list') do
318
- format
319
- .header('NodeList')
320
- .field(:nodes, type: :Array)
321
- .method(:add)
322
- .method(:all)
323
- .method(:shapes)
324
- .method(:layouts)
325
- .method(:length)
326
- .method(:empty?)
327
- .method(:any?)
328
- .method(:first)
329
- .method(:as_xml)
330
- .method(:to_h)
331
- end
332
-
333
- klass(description: 'page') do
334
- format
335
- .header('Page')
336
- .field(:diagram, type: :Diagram)
337
- .field(:position_x, type: :int)
338
- .field(:position_y, type: :int)
339
- .field(:id, type: :String)
340
- .field(:active, type: :bool)
341
- .field(:name, type: :String)
342
- .field(:theme, type: :Symbol)
343
- .field(:style, type: :CommonStyle)
344
- .field(:palette, type: :DefaultPalette)
345
- .field(:margin_left, type: :int)
346
- .field(:margin_top, type: :int)
347
- .field(:nodes, type: :Array)
348
- .field(:grid, type: :String)
349
- .field(:grid_size, type: :int)
350
- .field(:guides, type: :String)
351
- .field(:tooltips, type: :String)
352
- .field(:connect, type: :String)
353
- .field(:arrows, type: :String)
354
- .field(:fold, type: :String)
355
- .field(:page_no, type: :String)
356
- .field(:page_scale, type: :String)
357
- .field(:page_width, type: :String)
358
- .field(:page_height, type: :String)
359
- .field(:background, type: :String)
360
- .field(:page_shadow, type: :String)
361
- .field(:math, type: :String)
362
- .field(:active?, type: :Boolean)
363
- .method(:add_node)
364
- .method(:as_xml)
365
- .method(:to_h)
366
- .method(:settings)
367
- end
368
-
369
- square(title: 'Schema/Layouts', theme: :style_01)
370
-
371
- klass(description: 'flex_layout') do
372
- format
373
- .header('FlexLayout')
374
- .field(:direction, type: :String)
375
- .field(:wrap_at, type: :int)
376
- .field(:gap, type: :int)
377
- .field(:perpendicular_max, type: :int)
378
- .method(:position_shape)
379
- .method(:to_h)
380
- end
381
-
382
- klass(description: 'grid_layout') do
383
- format
384
- .header('GridLayout')
385
- .field(:direction, type: :String)
386
- .field(:wrap_at, type: :int)
387
- .field(:grid_size, type: :int)
388
- .field(:grid_w, type: :int)
389
- .field(:grid_h, type: :int)
390
- .field(:cell_no, type: :int)
391
- .field(:h_align, type: :String)
392
- .field(:v_align, type: :String)
393
- .method(:position_shape)
394
- .method(:to_h)
395
- end
396
-
397
- klass(description: 'layout') do
398
- format
399
- .header('Layout')
400
- .field(:anchor_x, type: :String)
401
- .field(:anchor_y, type: :String)
402
- .method(:fire_after_init)
403
- .method(:after_init)
404
- .method(:to_h)
405
- end
406
-
407
-
408
- square(title: 'Schema/virtual', theme: :style_01)
409
- send(shape_element, title: 'anchor' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
410
- square(title: 'Schema/shapes', theme: :style_01)
411
-
412
- grid_layout(wrap_at: 12, grid_w: 90, grid_h: 70)
413
-
414
- send(shape_element, title: 'actor' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
415
- send(shape_element, title: 'actor2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
416
- send(shape_element, title: 'callout' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
417
- send(shape_element, title: 'callout2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
418
- send(shape_element, title: 'callout3' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
419
- send(shape_element, title: 'callout4' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
420
- send(shape_element, title: 'circle' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
421
- send(shape_element, title: 'cloud' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
422
- send(shape_element, title: 'container' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
423
- send(shape_element, title: 'container2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
424
- send(shape_element, title: 'container3' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
425
- send(shape_element, title: 'container4' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
426
- send(shape_element, title: 'cross' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
427
- send(shape_element, title: 'database' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
428
- send(shape_element, title: 'db_json' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
429
- send(shape_element, title: 'diamond' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
430
- send(shape_element, title: 'document' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
431
- send(shape_element, title: 'ellipse' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
432
- send(shape_element, title: 'embed_col200' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
433
- send(shape_element, title: 'embed_col50' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
434
- send(shape_element, title: 'embed_row' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
435
- send(shape_element, title: 'envelop' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
436
- send(shape_element, title: 'face' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
437
- send(shape_element, title: 'h1' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
438
- send(shape_element, title: 'h2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
439
- send(shape_element, title: 'h3' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
440
- send(shape_element, title: 'h4' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
441
- send(shape_element, title: 'h5' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
442
- send(shape_element, title: 'h6' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
443
- send(shape_element, title: 'hexagon' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
444
- send(shape_element, title: 'interface' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
445
- send(shape_element, title: 'klass' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
446
- send(shape_element, title: 'line' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
447
- send(shape_element, title: 'note' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
448
- send(shape_element, title: 'p' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
449
- send(shape_element, title: 'process' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
450
- send(shape_element, title: 'rectangle' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
451
- send(shape_element, title: 'rectangle2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
452
- send(shape_element, title: 'shape' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
453
- send(shape_element, title: 'square' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
454
- send(shape_element, title: 'step' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
455
- send(shape_element, title: 'tick' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
456
- send(shape_element, title: 'todo' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
457
- send(shape_element, title: 'triangle' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
38
+ .header('Configuration')
39
+ .field(:javascript)
40
+ .field(:javascript_file)
41
+ end
42
+
43
+ klass() do
44
+ format
45
+ .header('Manager')
46
+ .field(:snapshot , type: 'MR::Snapshot')
47
+ .method(:load_javascript)
48
+ .method(:register_helper) # support javascript or ruby
49
+ .method(:register_partial)
50
+ .method(:compile_template) # compiles a template and then returns it as a memory object to
51
+ .method(:execute_template) #
52
+ .method(:execute_javascript)
53
+
54
+ end
55
+
56
+ klass() do
57
+ format
58
+ .header('Context')
59
+ end
60
+
61
+ 2.times { square(**blank) }
62
+
63
+ ################################################################################
64
+ # Gem Architecture
65
+ ################################################################################
66
+
67
+ box_width = 80
68
+
69
+ grid_layout(wrap_at: 6, grid_w: box_width+20, grid_h: box_width+20)
70
+
71
+ original = {
72
+ theme: :style_04, w: box_width, h: box_width
73
+ }
74
+ new_gems = {
75
+ theme: :style_03, w: box_width, h: box_width
76
+ }
77
+ old_gems = {
78
+ theme: :style_06, w: box_width, h: box_width
79
+ }
80
+ v8_engine = {
81
+ theme: :style_10, w: box_width, h: box_width
82
+ }
83
+
84
+ square(:a1, **original , title: 'KManager -> KBuilder')
85
+ square(:a2, **original , title: 'Handlebars-Helpers (ruby)')
86
+ square(:a3, **new_gems , title: 'HandlebarsJS (ruby)')
87
+ square(:a4, **new_gems , title: 'Mini Racer')
88
+ square(:a5, **old_gems , title: 'Handlebars (ruby)')
89
+ square(:a6, **old_gems , title: 'The Ruby Racer')
90
+
91
+ square(:a7, **v8_engine , title: 'Node V8 engine')
92
+ square(:a8, **original , title: 'Handlebars.js (javascript)')
93
+
94
+ solid(source: :a1, target: :a2, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
95
+ solid(source: :a2, target: :a3, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
96
+ solid(source: :a3, target: :a4, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
97
+ solid(source: :a2, target: :a5, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
98
+ solid(source: :a5, target: :a6, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
99
+
100
+ solid(source: :a4, target: :a7, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
101
+ solid(source: :a6, target: :a7, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
102
+
103
+ solid(source: :a7, target: :a8, exit_point: :e, entry_point: :w, waypoint: :orthogonal_curved)
104
+
105
+ 4.times { square(**blank) }
106
+
107
+ grid_layout(wrap_at: 1, grid_w: box_width+20, grid_h: box_width+20)
108
+ group(title: 'Domain Model', **group_element)
109
+ group(title: 'GEM Architecture Flow', **group_element)
110
+
111
+ # grid_layout(wrap_at: 12, grid_w: 90, grid_h: 70)
112
+
113
+ # shape_element = :rectangle2 # hexagon, diamond, ellipse
114
+ # shape_element_w = 75
115
+ # shape_element_h = 50
116
+ # shape_element_theme = :style_03
117
+
118
+ # send(shape_element, title: 'actor' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
119
+ # send(shape_element, title: 'actor2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
120
+ # send(shape_element, title: 'callout' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
121
+ # send(shape_element, title: 'callout2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
122
+ # send(shape_element, title: 'callout3' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
123
+ # send(shape_element, title: 'callout4' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
124
+ # send(shape_element, title: 'circle' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
125
+ # send(shape_element, title: 'cloud' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
126
+ # send(shape_element, title: 'container' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
127
+ # send(shape_element, title: 'container2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
128
+ # send(shape_element, title: 'container3' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
129
+ # send(shape_element, title: 'container4' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
130
+ # send(shape_element, title: 'cross' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
131
+ # send(shape_element, title: 'database' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
132
+ # send(shape_element, title: 'db_json' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
133
+ # send(shape_element, title: 'diamond' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
134
+ # send(shape_element, title: 'document' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
135
+ # send(shape_element, title: 'ellipse' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
136
+ # send(shape_element, title: 'embed_col200' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
137
+ # send(shape_element, title: 'embed_col50' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
138
+ # send(shape_element, title: 'embed_row' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
139
+ # send(shape_element, title: 'envelop' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
140
+ # send(shape_element, title: 'face' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
141
+ # send(shape_element, title: 'h1' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
142
+ # send(shape_element, title: 'h2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
143
+ # send(shape_element, title: 'h3' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
144
+ # send(shape_element, title: 'h4' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
145
+ # send(shape_element, title: 'h5' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
146
+ # send(shape_element, title: 'h6' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
147
+ # send(shape_element, title: 'hexagon' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
148
+ # send(shape_element, title: 'interface' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
149
+ # send(shape_element, title: 'klass' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
150
+ # send(shape_element, title: 'line' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
151
+ # send(shape_element, title: 'note' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
152
+ # send(shape_element, title: 'p' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
153
+ # send(shape_element, title: 'process' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
154
+ # send(shape_element, title: 'rectangle' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
155
+ # send(shape_element, title: 'rectangle2' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
156
+ # send(shape_element, title: 'shape' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
157
+ # send(shape_element, title: 'square' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
158
+ # send(shape_element, title: 'step' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
159
+ # send(shape_element, title: 'tick' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
160
+ # send(shape_element, title: 'todo' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
161
+ # send(shape_element, title: 'triangle' , w: shape_element_w, h: shape_element_h, theme: shape_element_theme)
458
162
 
459
163
  end
460
164
  .cd(:docs)
461
- .osave('domain_model.drawio')
165
+ .save('domain_model.drawio')
462
166
  .save_json('domain_model')
463
- .export_svg('domain_model', page: 1)
167
+ # .export_svg('domain_model', page: 1)
464
168
  end
465
169
  end
466
170
 
@@ -15,6 +15,7 @@ KManager.action :project_plan do
15
15
  todo(title: 'add handlebarsjs file and load into snapshot')
16
16
  todo(title: 'get handlebars working with simple templates')
17
17
  todo(title: 'write a simple handlebars help in ruby')
18
+ todo(title: 'add project plan markdown to this gem and template')
18
19
  end
19
20
  .page('To Do', theme: :style_02, margin_left: 0, margin_top: 0) do
20
21