rails_app_generator 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.builders/generators/project-plan.rb +5 -5
- data/CHANGELOG.md +7 -0
- data/after_templates/README.md +3 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/Procfile.dev +3 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/application.html.erb +20 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/application.tailwind.css +514 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/application_controller.rb +15 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/home/_example.html.erb +285 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/home/bootstrap.html.erb +5 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/home/home_controller.rb +12 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/home/index.html.erb +0 -0
- data/after_templates/rag_tailwind_emulating_bootstrap/home/tailwind.html.erb +5 -0
- data/after_templates/rag_tailwind_emulating_bootstrap.rb +37 -0
- data/docs/project-plan/project.drawio +40 -37
- data/docs/project-plan/project_done.svg +1 -1
- data/lib/rails_app_generator/app_generator.rb +45 -18
- data/lib/rails_app_generator/version.rb +1 -1
- data/package-lock.json +2 -2
- data/package.json +1 -1
- data/profiles/rag-tailwind-emulating-bootstrap.json +12 -0
- data/profiles/rag-tailwind-hotwire-flash.json +0 -1
- metadata +13 -4
- data/after_templates/rag_tailwind_style_reuse.rb +0 -23
- data/profiles/rag-tailwind-style-reuse.json +0 -12
@@ -0,0 +1,285 @@
|
|
1
|
+
<%#
|
2
|
+
The components were found here: https://tailwindcss.com/docs/customizing-components/
|
3
|
+
Another useful tool for inferring tailwind classes for components is here: https://usewindy.com/
|
4
|
+
%>
|
5
|
+
|
6
|
+
<h2 class="text-3xl leading-tight mb-2">Alerts</h2>
|
7
|
+
|
8
|
+
<div class="alert alert-primary">
|
9
|
+
A simple primary alert‚ check it out!
|
10
|
+
</div>
|
11
|
+
<div class="alert alert-secondary">
|
12
|
+
A simple secondary alert‚ check it out!
|
13
|
+
</div>
|
14
|
+
<div class="alert alert-success">
|
15
|
+
A simple success alert‚ check it out!
|
16
|
+
</div>
|
17
|
+
<div class="alert alert-danger">
|
18
|
+
A simple danger alert‚ check it out!
|
19
|
+
</div>
|
20
|
+
<div class="alert alert-warning">
|
21
|
+
A simple warning alert‚ check it out!
|
22
|
+
</div>
|
23
|
+
<div class="alert alert-info">
|
24
|
+
A simple info alert‚ check it out!
|
25
|
+
</div>
|
26
|
+
|
27
|
+
<h2>Buttons</h2>
|
28
|
+
|
29
|
+
<button type="button" class="btn btn-primary">Primary</button>
|
30
|
+
<button type="button" class="btn btn-secondary">Secondary</button>
|
31
|
+
<button type="button" class="btn btn-success">Success</button>
|
32
|
+
<button type="button" class="btn btn-danger">Danger</button>
|
33
|
+
<button type="button" class="btn btn-warning">Warning</button>
|
34
|
+
<button type="button" class="btn btn-info">Info</button>
|
35
|
+
<button type="button" class="btn btn-light">Light</button>
|
36
|
+
<button type="button" class="btn btn-dark">Dark</button>
|
37
|
+
<button type="button" class="btn btn-link">Link</button>
|
38
|
+
|
39
|
+
<br><br>
|
40
|
+
|
41
|
+
<h2>Cards</h2>
|
42
|
+
|
43
|
+
<div class="card" style="width: 18rem;">
|
44
|
+
<img src="https://dummyimage.com/640x4:3/" class="card-img-top" alt="...">
|
45
|
+
<div class="card-body">
|
46
|
+
<h5 class="card-title">Card title</h5>
|
47
|
+
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
|
48
|
+
<a href="#" class="btn btn-primary">Go somewhere</a>
|
49
|
+
</div>
|
50
|
+
</div>
|
51
|
+
|
52
|
+
<br><br>
|
53
|
+
|
54
|
+
<div class="card">
|
55
|
+
<div class="card-body">
|
56
|
+
This is some text within a card body.
|
57
|
+
</div>
|
58
|
+
</div>
|
59
|
+
|
60
|
+
<br><br>
|
61
|
+
|
62
|
+
<div class="card" style="width: 18rem;">
|
63
|
+
<div class="card-body">
|
64
|
+
<h5 class="card-title">Card title</h5>
|
65
|
+
<h6 class="card-subtitle mb-2 text-gray-600">Card subtitle</h6>
|
66
|
+
<p class="card-text">Some quick example text to build on the card title and make up the bulk of the card's content.</p>
|
67
|
+
<a href="#" class="card-link">Card link</a>
|
68
|
+
<a href="#" class="card-link">Another link</a>
|
69
|
+
</div>
|
70
|
+
</div>
|
71
|
+
|
72
|
+
<br>
|
73
|
+
|
74
|
+
<h2>Dropdowns</h2>
|
75
|
+
|
76
|
+
<div class="dropdown">
|
77
|
+
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
78
|
+
Dropdown button
|
79
|
+
</button>
|
80
|
+
<div class="dropdown-menu">
|
81
|
+
<a class="dropdown-item" href="#">Action</a>
|
82
|
+
<a class="dropdown-item" href="#">Another action</a>
|
83
|
+
<div class="dropdown-divider"></div>
|
84
|
+
<a class="dropdown-item" href="#">Something else here</a>
|
85
|
+
</div>
|
86
|
+
</div>
|
87
|
+
|
88
|
+
<br>
|
89
|
+
|
90
|
+
<h2>Forms</h2>
|
91
|
+
|
92
|
+
<form>
|
93
|
+
<div class="form-group">
|
94
|
+
<label for="exampleInputEmail1">Email address</label>
|
95
|
+
<input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="Enter email">
|
96
|
+
<small id="emailHelp" class="form-text text-muted">We'll never share your email with anyone else.</small>
|
97
|
+
</div>
|
98
|
+
<div class="form-group">
|
99
|
+
<label for="exampleInputPassword1">Password</label>
|
100
|
+
<input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password">
|
101
|
+
</div>
|
102
|
+
<div class="form-group form-check">
|
103
|
+
<input type="checkbox" class="form-check-input" id="exampleCheck1">
|
104
|
+
<label class="form-check-label" for="exampleCheck1">Check me out</label>
|
105
|
+
</div>
|
106
|
+
<button type="submit" class="btn btn-primary">Submit</button>
|
107
|
+
</form>
|
108
|
+
|
109
|
+
<br>
|
110
|
+
<br>
|
111
|
+
|
112
|
+
<h2 class="text-3xl leading-tight mb-2">List Groups</h2>
|
113
|
+
|
114
|
+
<ul class="list-group">
|
115
|
+
<li class="list-group-item active">Cras justo odio</li>
|
116
|
+
<li class="list-group-item">Dapibus ac facilisis in</li>
|
117
|
+
<li class="list-group-item">Porta ac consectetur ac</li>
|
118
|
+
<li class="list-group-item">Vestibulum at eros</li>
|
119
|
+
</ul>
|
120
|
+
|
121
|
+
<br>
|
122
|
+
<br>
|
123
|
+
|
124
|
+
<div class="list-group">
|
125
|
+
<a href="#" class="list-group-item list-group-item-action active">
|
126
|
+
Cras justo odio
|
127
|
+
</a>
|
128
|
+
<a href="#" class="list-group-item list-group-item-action">Dapibus ac facilisis in</a>
|
129
|
+
<a href="#" class="list-group-item list-group-item-action">Porta ac consectetur ac</a>
|
130
|
+
<a href="#" class="list-group-item list-group-item-action disabled" tabindex="-1" aria-disabled="true">Vestibulum at eros</a>
|
131
|
+
</div>
|
132
|
+
|
133
|
+
<br>
|
134
|
+
<br>
|
135
|
+
|
136
|
+
<h2 class="text-3xl leading-tight mb-2">Modals</h2>
|
137
|
+
|
138
|
+
<div id="myModal" class="modal fade" tabindex="-1" role="dialog">
|
139
|
+
<div class="modal-dialog" role="document">
|
140
|
+
<div class="modal-content">
|
141
|
+
<div class="modal-header">
|
142
|
+
<h5 class="modal-title">Modal title</h5>
|
143
|
+
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
144
|
+
<span aria-hidden="true">×</span>
|
145
|
+
</button>
|
146
|
+
</div>
|
147
|
+
<div class="modal-body">
|
148
|
+
<p>Modal body text goes here.</p>
|
149
|
+
</div>
|
150
|
+
<div class="modal-footer">
|
151
|
+
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
|
152
|
+
<button type="button" class="btn btn-primary">Save changes</button>
|
153
|
+
</div>
|
154
|
+
</div>
|
155
|
+
</div>
|
156
|
+
</div>
|
157
|
+
|
158
|
+
<button type="button" class="btn btn-warning" data-toggle="modal" data-target="#myModal">
|
159
|
+
Launch simple modal
|
160
|
+
</button>
|
161
|
+
|
162
|
+
<br>
|
163
|
+
<br>
|
164
|
+
|
165
|
+
<h2>Navbars</h2>
|
166
|
+
|
167
|
+
<nav class="navbar navbar-expand-lg navbar-light bg-light">
|
168
|
+
<a class="navbar-brand" href="#">Navbar</a>
|
169
|
+
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
|
170
|
+
<span class="navbar-toggler-icon"></span>
|
171
|
+
</button>
|
172
|
+
<div class="collapse navbar-collapse show" id="navbarNavAltMarkup">
|
173
|
+
<div class="navbar-nav">
|
174
|
+
<a class="nav-item nav-link active" href="#">Home <span class="sr-only">(current)</span></a>
|
175
|
+
<a class="nav-item nav-link" href="#">Features</a>
|
176
|
+
<a class="nav-item nav-link" href="#">Pricing</a>
|
177
|
+
<a class="nav-item nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
|
178
|
+
</div>
|
179
|
+
</div>
|
180
|
+
</nav>
|
181
|
+
|
182
|
+
<br>
|
183
|
+
|
184
|
+
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
|
185
|
+
<a class="navbar-brand" href="#">Navbar</a>
|
186
|
+
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
|
187
|
+
<span class="navbar-toggler-icon"></span>
|
188
|
+
</button>
|
189
|
+
<div class="collapse navbar-collapse show" id="navbarNavAltMarkup">
|
190
|
+
<div class="navbar-nav">
|
191
|
+
<a class="nav-item nav-link active" href="#">Home <span class="sr-only">(current)</span></a>
|
192
|
+
<a class="nav-item nav-link" href="#">Features</a>
|
193
|
+
<a class="nav-item nav-link" href="#">Pricing</a>
|
194
|
+
<a class="nav-item nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
|
195
|
+
</div>
|
196
|
+
</div>
|
197
|
+
</nav>
|
198
|
+
|
199
|
+
<br>
|
200
|
+
<nav class="navbar navbar-light bg-light">
|
201
|
+
<a class="navbar-brand">Navbar</a>
|
202
|
+
<form class="form-inline">
|
203
|
+
<input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search">
|
204
|
+
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
|
205
|
+
</form>
|
206
|
+
</nav>
|
207
|
+
|
208
|
+
<br>
|
209
|
+
|
210
|
+
<nav class="navbar navbar-dark bg-dark">
|
211
|
+
<a class="navbar-brand">Navbar</a>
|
212
|
+
<form class="form-inline">
|
213
|
+
<input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search">
|
214
|
+
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
|
215
|
+
</form>
|
216
|
+
</nav>
|
217
|
+
|
218
|
+
|
219
|
+
<br>
|
220
|
+
|
221
|
+
<h2>Tables</h2>
|
222
|
+
|
223
|
+
<table class="table">
|
224
|
+
<thead>
|
225
|
+
<tr>
|
226
|
+
<th scope="col">#</th>
|
227
|
+
<th scope="col">First</th>
|
228
|
+
<th scope="col">Last</th>
|
229
|
+
<th scope="col">Handle</th>
|
230
|
+
</tr>
|
231
|
+
</thead>
|
232
|
+
<tbody>
|
233
|
+
<tr>
|
234
|
+
<th scope="row">1</th>
|
235
|
+
<td>Mark</td>
|
236
|
+
<td>Otto</td>
|
237
|
+
<td>@mdo</td>
|
238
|
+
</tr>
|
239
|
+
<tr>
|
240
|
+
<th scope="row">2</th>
|
241
|
+
<td>Jacob</td>
|
242
|
+
<td>Thornton</td>
|
243
|
+
<td>@fat</td>
|
244
|
+
</tr>
|
245
|
+
<tr>
|
246
|
+
<th scope="row">3</th>
|
247
|
+
<td>Larry</td>
|
248
|
+
<td>the Bird</td>
|
249
|
+
<td>@twitter</td>
|
250
|
+
</tr>
|
251
|
+
</tbody>
|
252
|
+
</table>
|
253
|
+
|
254
|
+
|
255
|
+
<br><br>
|
256
|
+
|
257
|
+
<table class="table table-bordered">
|
258
|
+
<thead>
|
259
|
+
<tr>
|
260
|
+
<th scope="col">#</th>
|
261
|
+
<th scope="col">First</th>
|
262
|
+
<th scope="col">Last</th>
|
263
|
+
<th scope="col">Handle</th>
|
264
|
+
</tr>
|
265
|
+
</thead>
|
266
|
+
<tbody>
|
267
|
+
<tr>
|
268
|
+
<th scope="row">1</th>
|
269
|
+
<td>Mark</td>
|
270
|
+
<td>Otto</td>
|
271
|
+
<td>@mdo</td>
|
272
|
+
</tr>
|
273
|
+
<tr>
|
274
|
+
<th scope="row">2</th>
|
275
|
+
<td>Jacob</td>
|
276
|
+
<td>Thornton</td>
|
277
|
+
<td>@fat</td>
|
278
|
+
</tr>
|
279
|
+
<tr>
|
280
|
+
<th scope="row">3</th>
|
281
|
+
<td colspan="2">Larry the Bird</td>
|
282
|
+
<td>@twitter</td>
|
283
|
+
</tr>
|
284
|
+
</tbody>
|
285
|
+
</table>
|
File without changes
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Rails 7 using Tailwind CSS and Reusable Styles
|
4
|
+
|
5
|
+
require 'pry'
|
6
|
+
|
7
|
+
self.local_template_path = File.join(File.dirname(__FILE__), File.basename(__FILE__, '.*'))
|
8
|
+
|
9
|
+
gac 'base rails 7 image created'
|
10
|
+
|
11
|
+
add_controller('home', 'index', 'bootstrap', 'tailwind')
|
12
|
+
route("root 'home#index'")
|
13
|
+
|
14
|
+
css_install('tailwind')
|
15
|
+
css_install('bootstrap')
|
16
|
+
|
17
|
+
force_copy
|
18
|
+
|
19
|
+
copy_file 'home/index.html.erb' , 'app/views/home/index.html.erb'
|
20
|
+
copy_file 'home/bootstrap.html.erb' , 'app/views/home/bootstrap.html.erb'
|
21
|
+
copy_file 'home/tailwind.html.erb' , 'app/views/home/tailwind.html.erb'
|
22
|
+
copy_file 'home/_example.html.erb' , 'app/views/home/_example.html.erb'
|
23
|
+
copy_file 'home/home_controller.rb' , 'app/controllers/home_controller.rb'
|
24
|
+
|
25
|
+
copy_file 'application.html.erb' , 'app/views/layouts/application.html.erb'
|
26
|
+
copy_file 'application_controller.rb' , 'app/controllers/application_controller.rb'
|
27
|
+
copy_file 'application.tailwind.css' , 'app/assets/stylesheets/application.tailwind.css'
|
28
|
+
copy_file 'Procfile.dev' , 'Procfile.dev'
|
29
|
+
|
30
|
+
replacement_script = <<-JSON
|
31
|
+
"build:css_bootstrap": "sass ./app/assets/stylesheets/application.bootstrap.scss:./app/assets/builds/application_bootstrap.css --no-source-map --load-path=node_modules",
|
32
|
+
"build:css_tailwind": "tailwindcss -i ./app/assets/stylesheets/application.tailwind.css -o ./app/assets/builds/application_tailwind.css --minify"
|
33
|
+
JSON
|
34
|
+
|
35
|
+
gsub_file 'package.json', /^(.*?)"build:css"(.*?)$/, replacement_script
|
36
|
+
|
37
|
+
|
@@ -1,106 +1,109 @@
|
|
1
|
-
<mxfile host="
|
2
|
-
<diagram id="
|
1
|
+
<mxfile host="Sbx">
|
2
|
+
<diagram id="h6s" name="In progress">
|
3
3
|
<mxGraphModel dx="0" dy="0" background="#FFFAFA" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
|
4
4
|
<root>
|
5
|
-
<mxCell id="
|
6
|
-
<mxCell id="
|
7
|
-
<mxCell id="
|
5
|
+
<mxCell id="page_root_h6s" parent="h6s"/>
|
6
|
+
<mxCell id="node_root_h6s" parent="page_root_h6s"/>
|
7
|
+
<mxCell id="h6s-2" value="add profile - rag_tailwind_style_reuse" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#333333" vertex="1" parent="node_root_h6s">
|
8
8
|
<mxGeometry x="10" y="10" width="300" height="60" as="geometry"/>
|
9
9
|
</mxCell>
|
10
|
-
<mxCell id="
|
10
|
+
<mxCell id="h6s-3" value="add profile - rag_tailwind_hotwire_flash" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#d5e8d4;strokeColor=#82b366;fontColor=#333333" vertex="1" parent="node_root_h6s">
|
11
11
|
<mxGeometry x="330" y="10" width="300" height="60" as="geometry"/>
|
12
12
|
</mxCell>
|
13
13
|
</root>
|
14
14
|
</mxGraphModel>
|
15
15
|
</diagram>
|
16
|
-
<diagram id="
|
16
|
+
<diagram id="pqv" name="To Do">
|
17
17
|
<mxGraphModel dx="0" dy="0" background="#FFFAFA" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
|
18
18
|
<root>
|
19
|
-
<mxCell id="
|
20
|
-
<mxCell id="
|
21
|
-
<mxCell id="
|
19
|
+
<mxCell id="page_root_pqv" parent="pqv"/>
|
20
|
+
<mxCell id="node_root_pqv" parent="page_root_pqv"/>
|
21
|
+
<mxCell id="pqv-2" value="generator for new profiles" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
22
22
|
<mxGeometry x="10" y="10" width="300" height="60" as="geometry"/>
|
23
23
|
</mxCell>
|
24
|
-
<mxCell id="
|
24
|
+
<mxCell id="pqv-3" value="add auto open flag to profile and command line" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
25
25
|
<mxGeometry x="330" y="10" width="300" height="60" as="geometry"/>
|
26
26
|
</mxCell>
|
27
|
-
<mxCell id="
|
27
|
+
<mxCell id="pqv-4" value="add profile - stimulas" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
28
28
|
<mxGeometry x="650" y="10" width="300" height="60" as="geometry"/>
|
29
29
|
</mxCell>
|
30
|
-
<mxCell id="
|
30
|
+
<mxCell id="pqv-5" value="add profile - hotwire" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
31
31
|
<mxGeometry x="10" y="90" width="300" height="60" as="geometry"/>
|
32
32
|
</mxCell>
|
33
|
-
<mxCell id="
|
33
|
+
<mxCell id="pqv-6" value="add profile - turbo" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
34
34
|
<mxGeometry x="330" y="90" width="300" height="60" as="geometry"/>
|
35
35
|
</mxCell>
|
36
|
-
<mxCell id="
|
36
|
+
<mxCell id="pqv-7" value="add profile - vue" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
37
37
|
<mxGeometry x="650" y="90" width="300" height="60" as="geometry"/>
|
38
38
|
</mxCell>
|
39
|
-
<mxCell id="
|
39
|
+
<mxCell id="pqv-8" value="add profile - svelte" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
40
40
|
<mxGeometry x="10" y="170" width="300" height="60" as="geometry"/>
|
41
41
|
</mxCell>
|
42
|
-
<mxCell id="
|
42
|
+
<mxCell id="pqv-9" value="add profile - react" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
43
43
|
<mxGeometry x="330" y="170" width="300" height="60" as="geometry"/>
|
44
44
|
</mxCell>
|
45
|
-
<mxCell id="
|
45
|
+
<mxCell id="pqv-10" value="add profile - vite" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
46
46
|
<mxGeometry x="650" y="170" width="300" height="60" as="geometry"/>
|
47
47
|
</mxCell>
|
48
|
-
<mxCell id="
|
48
|
+
<mxCell id="pqv-11" value="add profile - docker" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
49
49
|
<mxGeometry x="10" y="250" width="300" height="60" as="geometry"/>
|
50
50
|
</mxCell>
|
51
|
-
<mxCell id="
|
51
|
+
<mxCell id="pqv-12" value="add encryption - https://youtu.be/ZmwNzod1trk?t=701" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
52
52
|
<mxGeometry x="330" y="250" width="300" height="60" as="geometry"/>
|
53
53
|
</mxCell>
|
54
|
-
<mxCell id="
|
54
|
+
<mxCell id="pqv-13" value="cli help support for diff" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
55
55
|
<mxGeometry x="650" y="250" width="300" height="60" as="geometry"/>
|
56
56
|
</mxCell>
|
57
|
-
<mxCell id="
|
57
|
+
<mxCell id="pqv-14" value="cli support for rails new (rag new should work like rails new) - buggy, need to work through" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
58
58
|
<mxGeometry x="10" y="330" width="300" height="60" as="geometry"/>
|
59
59
|
</mxCell>
|
60
|
-
<mxCell id="
|
60
|
+
<mxCell id="pqv-15" value="need an option for deleting target project path" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#333333" vertex="1" parent="node_root_pqv">
|
61
61
|
<mxGeometry x="330" y="330" width="300" height="60" as="geometry"/>
|
62
62
|
</mxCell>
|
63
63
|
</root>
|
64
64
|
</mxGraphModel>
|
65
65
|
</diagram>
|
66
|
-
<diagram id="
|
66
|
+
<diagram id="Pwy" name="Done">
|
67
67
|
<mxGraphModel dx="0" dy="0" background="#FFFAFA" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
|
68
68
|
<root>
|
69
|
-
<mxCell id="
|
70
|
-
<mxCell id="
|
71
|
-
<mxCell id="
|
69
|
+
<mxCell id="page_root_Pwy" parent="Pwy"/>
|
70
|
+
<mxCell id="node_root_Pwy" parent="page_root_Pwy"/>
|
71
|
+
<mxCell id="Pwy-2" value="add profile - tailwind-emulating-bootstrap" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
72
72
|
<mxGeometry x="10" y="10" width="300" height="60" as="geometry"/>
|
73
73
|
</mxCell>
|
74
|
-
<mxCell id="
|
74
|
+
<mxCell id="Pwy-3" value="add profile - tailwind-hotwire-form-search" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
75
75
|
<mxGeometry x="330" y="10" width="300" height="60" as="geometry"/>
|
76
76
|
</mxCell>
|
77
|
-
<mxCell id="
|
77
|
+
<mxCell id="Pwy-4" value="add profile - tailwind-hotwire-form" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
78
78
|
<mxGeometry x="650" y="10" width="300" height="60" as="geometry"/>
|
79
79
|
</mxCell>
|
80
|
-
<mxCell id="
|
80
|
+
<mxCell id="Pwy-5" value="add profile - tailwind-hotwire" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
81
81
|
<mxGeometry x="10" y="90" width="300" height="60" as="geometry"/>
|
82
82
|
</mxCell>
|
83
|
-
<mxCell id="
|
83
|
+
<mxCell id="Pwy-6" value="add profile - import-map" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
84
84
|
<mxGeometry x="330" y="90" width="300" height="60" as="geometry"/>
|
85
85
|
</mxCell>
|
86
|
-
<mxCell id="
|
86
|
+
<mxCell id="Pwy-7" value="profile - fix the bootstrap profile" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
87
87
|
<mxGeometry x="650" y="90" width="300" height="60" as="geometry"/>
|
88
88
|
</mxCell>
|
89
|
-
<mxCell id="
|
89
|
+
<mxCell id="Pwy-8" value="cli support for profile" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
90
90
|
<mxGeometry x="10" y="170" width="300" height="60" as="geometry"/>
|
91
91
|
</mxCell>
|
92
|
-
<mxCell id="
|
92
|
+
<mxCell id="Pwy-9" value="separate CLI methods into include modules" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
93
93
|
<mxGeometry x="330" y="170" width="300" height="60" as="geometry"/>
|
94
94
|
</mxCell>
|
95
|
-
<mxCell id="
|
95
|
+
<mxCell id="Pwy-10" value="cli support for diff" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
96
96
|
<mxGeometry x="650" y="170" width="300" height="60" as="geometry"/>
|
97
97
|
</mxCell>
|
98
|
-
<mxCell id="
|
98
|
+
<mxCell id="Pwy-11" value="add diff tool - open in editor" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
99
99
|
<mxGeometry x="10" y="250" width="300" height="60" as="geometry"/>
|
100
100
|
</mxCell>
|
101
|
-
<mxCell id="
|
101
|
+
<mxCell id="Pwy-12" value="add diff tool supporting lhs only, rhs only, same and different" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
102
102
|
<mxGeometry x="330" y="250" width="300" height="60" as="geometry"/>
|
103
103
|
</mxCell>
|
104
|
+
<mxCell id="Pwy-13" value="add project plan to do list" style="whiteSpace=wrap;html=1;rounded=1;glass=1;fillColor=#f8cecc;strokeColor=#b85450;fontColor=#333333" vertex="1" parent="node_root_Pwy">
|
105
|
+
<mxGeometry x="650" y="250" width="300" height="60" as="geometry"/>
|
106
|
+
</mxCell>
|
104
107
|
</root>
|
105
108
|
</mxGraphModel>
|
106
109
|
</diagram>
|
@@ -1,3 +1,3 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
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="942px" height="302px" viewBox="-0.5 -0.5 942 302"><defs><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-0.9-ffffff-0.1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.9;"/><stop offset="100%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.1;"/></linearGradient></defs><g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><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;">add profile - tailwind_hotwire_form_search</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - tailwind_hotwire_form_search</text></switch></g><rect x="320" y="0" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 -1 Q 319 -1 319 10.15 L 319 24 Q 470 42 621 24 L 621 10.15 Q 621 -1 609.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 30px; margin-left: 321px;"><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;">add profile - tailwind_hotwire_form</div></div></div></foreignObject><text x="470" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - tailwind_hotwire_form</text></switch></g><rect x="640" y="0" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 650.15 -1 Q 639 -1 639 10.15 L 639 24 Q 790 42 941 24 L 941 10.15 Q 941 -1 929.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 30px; margin-left: 641px;"><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;">add profile - tailwind_hotwire</div></div></div></foreignObject><text x="790" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - tailwind_hotwire</text></switch></g><rect x="0" y="80" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 79 Q -1 79 -1 90.15 L -1 104 Q 150 122 301 104 L 301 90.15 Q 301 79 289.85 79 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 110px; margin-left: 1px;"><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;">add profile - import_map</div></div></div></foreignObject><text x="150" y="114" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - import_map</text></switch></g><rect x="320" y="80" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 79 Q 319 79 319 90.15 L 319 104 Q 470 122 621 104 L 621 90.15 Q 621 79 609.85 79 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 110px; margin-left: 321px;"><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;">profile - fix the bootstrap profile</div></div></div></foreignObject><text x="470" y="114" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">profile - fix the bootstrap profile</text></switch></g><rect x="640" y="80" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 650.15 79 Q 639 79 639 90.15 L 639 104 Q 790 122 941 104 L 941 90.15 Q 941 79 929.85 79 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 110px; margin-left: 641px;"><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;">cli support for profile</div></div></div></foreignObject><text x="790" y="114" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">cli support for profile</text></switch></g><rect x="0" y="160" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 159 Q -1 159 -1 170.15 L -1 184 Q 150 202 301 184 L 301 170.15 Q 301 159 289.85 159 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 190px; margin-left: 1px;"><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;">separate CLI methods into include modules</div></div></div></foreignObject><text x="150" y="194" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">separate CLI methods into include modules</text></switch></g><rect x="320" y="160" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 159 Q 319 159 319 170.15 L 319 184 Q 470 202 621 184 L 621 170.15 Q 621 159 609.85 159 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 190px; margin-left: 321px;"><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;">cli support for diff</div></div></div></foreignObject><text x="470" y="194" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">cli support for diff</text></switch></g><rect x="640" y="160" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 650.15 159 Q 639 159 639 170.15 L 639 184 Q 790 202 941 184 L 941 170.15 Q 941 159 929.85 159 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 190px; margin-left: 641px;"><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;">add diff tool - open in editor</div></div></div></foreignObject><text x="790" y="194" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool - open in editor</text></switch></g><rect x="0" y="240" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 239 Q -1 239 -1 250.15 L -1 264 Q 150 282 301 264 L 301 250.15 Q 301 239 289.85 239 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 270px; margin-left: 1px;"><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;">add diff tool supporting lhs only, rhs only, same and different</div></div></div></foreignObject><text x="150" y="274" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool supporting lhs only, rhs only, same...</text></switch></g><rect x="320" y="240" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 239 Q 319 239 319 250.15 L 319 264 Q 470 282 621 264 L 621 250.15 Q 621 239 609.85 239 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 270px; margin-left: 321px;"><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;">add project plan to do list</div></div></div></foreignObject><text x="470" y="274" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add project plan to do list</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>
|
3
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="942px" height="302px" viewBox="-0.5 -0.5 942 302"><defs><linearGradient x1="0%" y1="0%" x2="0%" y2="100%" id="mx-gradient-ffffff-0.9-ffffff-0.1-s-0"><stop offset="0%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.9;"/><stop offset="100%" style="stop-color: rgb(255, 255, 255); stop-opacity: 0.1;"/></linearGradient></defs><g><rect x="0" y="0" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 -1 Q -1 -1 -1 10.15 L -1 24 Q 150 42 301 24 L 301 10.15 Q 301 -1 289.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 30px; margin-left: 1px;"><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;">add profile - tailwind-emulating-bootstrap</div></div></div></foreignObject><text x="150" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - tailwind-emulating-bootstrap</text></switch></g><rect x="320" y="0" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 -1 Q 319 -1 319 10.15 L 319 24 Q 470 42 621 24 L 621 10.15 Q 621 -1 609.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 30px; margin-left: 321px;"><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;">add profile - tailwind-hotwire-form-search</div></div></div></foreignObject><text x="470" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - tailwind-hotwire-form-search</text></switch></g><rect x="640" y="0" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 650.15 -1 Q 639 -1 639 10.15 L 639 24 Q 790 42 941 24 L 941 10.15 Q 941 -1 929.85 -1 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 30px; margin-left: 641px;"><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;">add profile - tailwind-hotwire-form</div></div></div></foreignObject><text x="790" y="34" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - tailwind-hotwire-form</text></switch></g><rect x="0" y="80" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 79 Q -1 79 -1 90.15 L -1 104 Q 150 122 301 104 L 301 90.15 Q 301 79 289.85 79 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 110px; margin-left: 1px;"><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;">add profile - tailwind-hotwire</div></div></div></foreignObject><text x="150" y="114" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - tailwind-hotwire</text></switch></g><rect x="320" y="80" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 79 Q 319 79 319 90.15 L 319 104 Q 470 122 621 104 L 621 90.15 Q 621 79 609.85 79 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 110px; margin-left: 321px;"><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;">add profile - import-map</div></div></div></foreignObject><text x="470" y="114" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add profile - import-map</text></switch></g><rect x="640" y="80" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 650.15 79 Q 639 79 639 90.15 L 639 104 Q 790 122 941 104 L 941 90.15 Q 941 79 929.85 79 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 110px; margin-left: 641px;"><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;">profile - fix the bootstrap profile</div></div></div></foreignObject><text x="790" y="114" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">profile - fix the bootstrap profile</text></switch></g><rect x="0" y="160" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 159 Q -1 159 -1 170.15 L -1 184 Q 150 202 301 184 L 301 170.15 Q 301 159 289.85 159 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 190px; margin-left: 1px;"><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;">cli support for profile</div></div></div></foreignObject><text x="150" y="194" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">cli support for profile</text></switch></g><rect x="320" y="160" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 159 Q 319 159 319 170.15 L 319 184 Q 470 202 621 184 L 621 170.15 Q 621 159 609.85 159 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 190px; margin-left: 321px;"><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;">separate CLI methods into include modules</div></div></div></foreignObject><text x="470" y="194" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">separate CLI methods into include modules</text></switch></g><rect x="640" y="160" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 650.15 159 Q 639 159 639 170.15 L 639 184 Q 790 202 941 184 L 941 170.15 Q 941 159 929.85 159 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 190px; margin-left: 641px;"><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;">cli support for diff</div></div></div></foreignObject><text x="790" y="194" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">cli support for diff</text></switch></g><rect x="0" y="240" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 10.15 239 Q -1 239 -1 250.15 L -1 264 Q 150 282 301 264 L 301 250.15 Q 301 239 289.85 239 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 270px; margin-left: 1px;"><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;">add diff tool - open in editor</div></div></div></foreignObject><text x="150" y="274" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool - open in editor</text></switch></g><rect x="320" y="240" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 330.15 239 Q 319 239 319 250.15 L 319 264 Q 470 282 621 264 L 621 250.15 Q 621 239 609.85 239 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 270px; margin-left: 321px;"><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;">add diff tool supporting lhs only, rhs only, same and different</div></div></div></foreignObject><text x="470" y="274" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add diff tool supporting lhs only, rhs only, same...</text></switch></g><rect x="640" y="240" width="300" height="60" rx="9" ry="9" fill="#f8cecc" stroke="#b85450" pointer-events="all"/><path d="M 650.15 239 Q 639 239 639 250.15 L 639 264 Q 790 282 941 264 L 941 250.15 Q 941 239 929.85 239 Z" fill="url(#mx-gradient-ffffff-0.9-ffffff-0.1-s-0)" stroke="none" 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: 298px; height: 1px; padding-top: 270px; margin-left: 641px;"><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;">add project plan to do list</div></div></div></foreignObject><text x="790" y="274" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">add project plan to do list</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>
|