glib-web 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/concerns/application/json/libs.rb +26 -0
  3. data/app/controllers/concerns/application/json/transformation.rb +11 -0
  4. data/app/controllers/concerns/application/json/ui.rb +73 -0
  5. data/app/controllers/concerns/application/json/validation.rb +13 -0
  6. data/app/controllers/home_controller.rb +21 -0
  7. data/app/helpers/glib/web/json_ui_helper.rb +58 -0
  8. data/app/views/app/views/json_ui/vue/renderer.html.erb +29 -0
  9. data/app/views/json_ui/garage/_nav_menu.json.jbuilder +84 -0
  10. data/app/views/json_ui/garage/actions/index.json.jbuilder +25 -0
  11. data/app/views/json_ui/garage/forms/basic.json.jbuilder +53 -0
  12. data/app/views/json_ui/garage/forms/basic_post.json.jbuilder +10 -0
  13. data/app/views/json_ui/garage/forms/file_upload.json.jbuilder +38 -0
  14. data/app/views/json_ui/garage/forms/floating_submit.json.jbuilder +48 -0
  15. data/app/views/json_ui/garage/forms/generic_post.json.jbuilder +6 -0
  16. data/app/views/json_ui/garage/forms/index.json.jbuilder +43 -0
  17. data/app/views/json_ui/garage/forms/submit_indicator.json.jbuilder +32 -0
  18. data/app/views/json_ui/garage/forms/submit_indicator_post.json.jbuilder +12 -0
  19. data/app/views/json_ui/garage/home/index.json.jbuilder +61 -0
  20. data/app/views/json_ui/garage/lists/_infinite_scroll_section.json.jbuilder +10 -0
  21. data/app/views/json_ui/garage/lists/index.json.jbuilder +25 -0
  22. data/app/views/json_ui/garage/lists/infinite_scroll.json.jbuilder +27 -0
  23. data/app/views/json_ui/garage/lists/templating.json.jbuilder +45 -0
  24. data/app/views/json_ui/garage/pages/full_width_height.json.jbuilder +39 -0
  25. data/app/views/json_ui/garage/pages/index.json.jbuilder +35 -0
  26. data/app/views/json_ui/garage/pages/layout.json.jbuilder +35 -0
  27. data/app/views/json_ui/garage/pages/nav_buttons.json.jbuilder +32 -0
  28. data/app/views/json_ui/garage/panels/horizontal.json.jbuilder +213 -0
  29. data/app/views/json_ui/garage/panels/index.json.jbuilder +34 -0
  30. data/app/views/json_ui/garage/panels/split.json.jbuilder +360 -0
  31. data/app/views/json_ui/garage/panels/vertical.json.jbuilder +94 -0
  32. data/app/views/json_ui/garage/views/basic.json.jbuilder +21 -0
  33. data/app/views/json_ui/garage/views/carousels.json.jbuilder +100 -0
  34. data/app/views/json_ui/garage/views/images.json.jbuilder +56 -0
  35. data/app/views/json_ui/garage/views/index.json.jbuilder +34 -0
  36. data/config/routes.rb +4 -0
  37. data/lib/glib/engine.rb +7 -0
  38. data/lib/glib/version.rb +5 -0
  39. data/lib/glib-web.rb +2 -0
  40. metadata +40 -2
@@ -0,0 +1,213 @@
1
+ json.title 'Panels'
2
+
3
+ render "#{@path_prefix}/nav_menu", json: json
4
+
5
+ json_body_with_scroll json do
6
+ json.child! do
7
+ json.view 'h1-v1'
8
+ json.text 'Horizontal panel'
9
+ end
10
+ json.child! do
11
+ json.view 'panels/horizontal-v1'
12
+ json.backgroundColor '#b3bac2'
13
+ json.subviews do
14
+ json.child! do
15
+ json.view 'button-v1'
16
+ json.text '1'
17
+ end
18
+
19
+ json.child! do
20
+ json.view 'button-v1'
21
+ json.text '2'
22
+ end
23
+
24
+ json.child! do
25
+ json.view 'button-v1'
26
+ json.text '3'
27
+ end
28
+ end
29
+ end
30
+
31
+ json.child! do
32
+ json.view 'label-v1'
33
+ json.text "\n"
34
+ end
35
+ json.child! do
36
+ json.view 'h1-v1'
37
+ json.text 'Horizontal panel with equal filling'
38
+ end
39
+ json.child! do
40
+ json.view 'panels/horizontal-v1'
41
+ json.backgroundColor '#b3bac2'
42
+ json.width 300
43
+ json.distribution 'fillEqually'
44
+ json.subviews do
45
+ json.child! do
46
+ json.view 'button-v1'
47
+ json.text '1'
48
+ end
49
+
50
+ json.child! do
51
+ json.view 'button-v1'
52
+ json.text '2'
53
+ json.height 50
54
+ end
55
+
56
+ json.child! do
57
+ json.view 'button-v1'
58
+ json.text '3'
59
+ json.height 70
60
+ end
61
+ end
62
+ end
63
+
64
+ json.child! do
65
+ json.view 'label-v1'
66
+ json.text "\n"
67
+ end
68
+ json.child! do
69
+ json.view 'h1-v1'
70
+ json.text 'Horizontal panel with equal spacing'
71
+ end
72
+ json.child! do
73
+ json.view 'panels/horizontal-v1'
74
+ json.backgroundColor '#b3bac2'
75
+ json.width 300
76
+ json.distribution 'spaceEqually'
77
+ json.subviews do
78
+ json.child! do
79
+ json.view 'button-v1'
80
+ json.text '1'
81
+ end
82
+
83
+ json.child! do
84
+ json.view 'button-v1'
85
+ json.text '2'
86
+ end
87
+
88
+ json.child! do
89
+ json.view 'button-v1'
90
+ json.text '3'
91
+ end
92
+ end
93
+ end
94
+
95
+ json.child! do
96
+ json.view 'label-v1'
97
+ json.text "\n"
98
+ end
99
+ json.child! do
100
+ json.view 'h1-v1'
101
+ json.text 'Horizontal panel (containing vertical panel)'
102
+ end
103
+ json.child! do
104
+ json.view 'panels/horizontal-v1'
105
+ json.subviews do
106
+ json.child! do
107
+ json.view 'button-v1'
108
+ json.text '1'
109
+ end
110
+
111
+ json.child! do
112
+ json.view 'panels/vertical-v1'
113
+ json.subviews do
114
+ json.child! do
115
+ json.view 'button-v1'
116
+ json.text 'A'
117
+ end
118
+
119
+ json.child! do
120
+ json.view 'button-v1'
121
+ json.text 'B'
122
+ end
123
+ end
124
+ end
125
+
126
+ json.child! do
127
+ json.view 'button-v1'
128
+ json.text '3'
129
+ end
130
+ end
131
+ end
132
+
133
+ json.child! do
134
+ json.view 'label-v1'
135
+ json.text "\n"
136
+ end
137
+ json.child! do
138
+ json.view 'h1-v1'
139
+ json.text 'Horizontal panel with equal filling (containing vertical panel)'
140
+ end
141
+ json.child! do
142
+ json.view 'panels/horizontal-v1'
143
+ json.width 'matchParent'
144
+ json.distribution 'fillEqually'
145
+ json.subviews do
146
+ json.child! do
147
+ json.view 'button-v1'
148
+ json.text '1'
149
+ end
150
+
151
+ json.child! do
152
+ json.view 'panels/vertical-v1'
153
+ json.subviews do
154
+ json.child! do
155
+ json.view 'button-v1'
156
+ json.text 'A'
157
+ end
158
+
159
+ json.child! do
160
+ json.view 'button-v1'
161
+ json.text 'B'
162
+ end
163
+ end
164
+ end
165
+
166
+ json.child! do
167
+ json.view 'button-v1'
168
+ json.text '3'
169
+ end
170
+ end
171
+ end
172
+
173
+ json.child! do
174
+ json.view 'label-v1'
175
+ json.text "\n"
176
+ end
177
+ json.child! do
178
+ json.view 'h1-v1'
179
+ json.text 'Horizontal panel with equal spacing (containing vertical panel)'
180
+ end
181
+ json.child! do
182
+ json.view 'panels/horizontal-v1'
183
+ json.width 'matchParent'
184
+ json.distribution 'spaceEqually'
185
+ json.subviews do
186
+ json.child! do
187
+ json.view 'button-v1'
188
+ json.text '1'
189
+ end
190
+
191
+ json.child! do
192
+ json.view 'panels/vertical-v1'
193
+ json.subviews do
194
+ json.child! do
195
+ json.view 'button-v1'
196
+ json.text 'A'
197
+ end
198
+
199
+ json.child! do
200
+ json.view 'button-v1'
201
+ json.text 'B'
202
+ end
203
+ end
204
+ end
205
+
206
+ json.child! do
207
+ json.view 'button-v1'
208
+ json.text '3'
209
+ end
210
+ end
211
+ end
212
+
213
+ end
@@ -0,0 +1,34 @@
1
+ json.title 'Panels'
2
+
3
+ render "#{@path_prefix}/nav_menu", json: json
4
+
5
+ json_body_with_list json do
6
+ json.rows do
7
+ json.child! do
8
+ json.template 'thumbnail-v1'
9
+ json.title 'Vertical'
10
+ json.onClick do
11
+ json.action 'windows/open-v1'
12
+ json.url json_ui_garage_url(path: 'panels/vertical')
13
+ end
14
+ end
15
+
16
+ json.child! do
17
+ json.template 'thumbnail-v1'
18
+ json.title 'Horizontal'
19
+ json.onClick do
20
+ json.action 'windows/open-v1'
21
+ json.url json_ui_garage_url(path: 'panels/horizontal')
22
+ end
23
+ end
24
+
25
+ json.child! do
26
+ json.template 'thumbnail-v1'
27
+ json.title 'Split'
28
+ json.onClick do
29
+ json.action 'windows/open-v1'
30
+ json.url json_ui_garage_url(path: 'panels/split')
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,360 @@
1
+ json.title 'Panels'
2
+
3
+ render "#{@path_prefix}/nav_menu", json: json
4
+
5
+ json_body_with_scroll json do
6
+ json.child! do
7
+ json.view 'h1-v1'
8
+ json.text '2 columns'
9
+ end
10
+ json.child! do
11
+ json.view 'panels/split-v1'
12
+ json.content do
13
+ json.left do
14
+ json.view 'button-v1'
15
+ json.text '1'
16
+ end
17
+
18
+ json.right do
19
+ json.view 'button-v1'
20
+ json.text '2'
21
+ end
22
+ end
23
+ end
24
+
25
+ json.child! do
26
+ json.view 'label-v1'
27
+ json.text "\n"
28
+ end
29
+ json.child! do
30
+ json.view 'h1-v1'
31
+ json.text '3 columns'
32
+ end
33
+ json.child! do
34
+ json.view 'panels/split-v1'
35
+ json.content do
36
+ json.left do
37
+ json.view 'button-v1'
38
+ json.text '1'
39
+ end
40
+
41
+ json.center do
42
+ json.view 'button-v1'
43
+ json.text '2'
44
+ end
45
+
46
+ json.right do
47
+ json.view 'button-v1'
48
+ json.text '3'
49
+ end
50
+ end
51
+ end
52
+
53
+ json.child! do
54
+ json.view 'label-v1'
55
+ json.text "\n"
56
+ end
57
+ json.child! do
58
+ json.view 'h1-v1'
59
+ json.text 'Expandable left'
60
+ end
61
+ json.child! do
62
+ json.view 'panels/split-v1'
63
+ json.content do
64
+ json.center do
65
+ json.view 'button-v1'
66
+ json.text '1'
67
+ end
68
+
69
+ json.right do
70
+ json.view 'button-v1'
71
+ json.text '2'
72
+ end
73
+ end
74
+ end
75
+
76
+ json.child! do
77
+ json.view 'label-v1'
78
+ json.text "\n"
79
+ end
80
+ json.child! do
81
+ json.view 'h1-v1'
82
+ json.text 'Expandable right'
83
+ end
84
+ json.child! do
85
+ json.view 'panels/split-v1'
86
+ json.content do
87
+ json.left do
88
+ json.view 'button-v1'
89
+ json.text '1'
90
+ end
91
+
92
+ json.center do
93
+ json.view 'button-v1'
94
+ json.text '2'
95
+ end
96
+ end
97
+ end
98
+
99
+ json.child! do
100
+ json.view 'label-v1'
101
+ json.text "\n"
102
+ end
103
+ json.child! do
104
+ json.view 'h1-v1'
105
+ json.text 'Short center text'
106
+ end
107
+ json.child! do
108
+ json.view 'panels/split-v1'
109
+ json.content do
110
+ json.left do
111
+ json.view 'button-v1'
112
+ json.text '1'
113
+ end
114
+
115
+ json.center do
116
+ json.view 'label-v1'
117
+ json.text 'short'
118
+ end
119
+
120
+ json.right do
121
+ json.view 'button-v1'
122
+ json.text '2'
123
+ end
124
+ end
125
+ end
126
+
127
+ json.child! do
128
+ json.view 'label-v1'
129
+ json.text "\n"
130
+ end
131
+ json.child! do
132
+ json.view 'h1-v1'
133
+ json.text 'Long center text'
134
+ end
135
+ json.child! do
136
+ json.view 'panels/split-v1'
137
+ json.content do
138
+ json.left do
139
+ json.view 'button-v1'
140
+ json.text '1'
141
+ end
142
+
143
+ json.center do
144
+ json.view 'label-v1'
145
+ json.text 'a very very very very very very very very very very very very very very very very very very very very very very very very very very very very long text'
146
+ end
147
+
148
+ json.right do
149
+ json.view 'button-v1'
150
+ json.text '2'
151
+ end
152
+ end
153
+ end
154
+
155
+ json.child! do
156
+ json.view 'label-v1'
157
+ json.text "\n"
158
+ end
159
+ json.child! do
160
+ json.view 'h1-v1'
161
+ json.text 'Few center items'
162
+ end
163
+ json.child! do
164
+ json.view 'panels/split-v1'
165
+ json.content do
166
+ json.left do
167
+ json.view 'button-v1'
168
+ json.text 'L'
169
+ end
170
+
171
+ json.center do
172
+ json.view 'panels/horizontal-v1'
173
+ json.backgroundColor '#b3bac2'
174
+ json.subviews do
175
+ json.child! do
176
+ json.view 'button-v1'
177
+ json.text '1'
178
+ end
179
+
180
+ json.child! do
181
+ json.view 'button-v1'
182
+ json.text '2'
183
+ end
184
+
185
+ json.child! do
186
+ json.view 'button-v1'
187
+ json.text '3'
188
+ end
189
+ end
190
+ end
191
+
192
+ json.right do
193
+ json.view 'button-v1'
194
+ json.text 'R'
195
+ end
196
+ end
197
+ end
198
+
199
+ json.child! do
200
+ json.view 'label-v1'
201
+ json.text "\n"
202
+ end
203
+ json.child! do
204
+ json.view 'h1-v1'
205
+ json.text 'Many center items'
206
+ end
207
+ json.child! do
208
+ json.view 'panels/split-v1'
209
+ json.content do
210
+ json.left do
211
+ json.view 'button-v1'
212
+ json.text 'L'
213
+ end
214
+
215
+ json.center do
216
+ json.view 'panels/horizontal-v1'
217
+ json.backgroundColor '#b3bac2'
218
+ # json.height 200
219
+ json.subviews do
220
+ (1..20).each do |index|
221
+ json.child! do
222
+ json.view 'button-v1'
223
+ json.text index.to_s
224
+ end
225
+ end
226
+ end
227
+ end
228
+
229
+ json.right do
230
+ json.view 'button-v1'
231
+ json.text 'R'
232
+ end
233
+ end
234
+ end
235
+
236
+ json.child! do
237
+ json.view 'label-v1'
238
+ json.text "\n"
239
+ end
240
+ json.child! do
241
+ json.view 'h1-v1'
242
+ json.text 'Center filled equally'
243
+ end
244
+ json.child! do
245
+ json.view 'panels/split-v1'
246
+ json.content do
247
+ json.left do
248
+ json.view 'button-v1'
249
+ json.text 'L'
250
+ end
251
+
252
+ json.center do
253
+ json.view 'panels/horizontal-v1'
254
+ json.distribution 'fillEqually'
255
+ json.backgroundColor '#b3bac2'
256
+ json.subviews do
257
+ json.child! do
258
+ json.view 'button-v1'
259
+ json.text '1'
260
+ end
261
+
262
+ json.child! do
263
+ json.view 'button-v1'
264
+ json.text '2'
265
+ end
266
+
267
+ json.child! do
268
+ json.view 'button-v1'
269
+ json.text '3'
270
+ end
271
+ end
272
+ end
273
+
274
+ json.right do
275
+ json.view 'button-v1'
276
+ json.text 'R'
277
+ end
278
+ end
279
+ end
280
+
281
+ json.child! do
282
+ json.view 'label-v1'
283
+ json.text "\n"
284
+ end
285
+ json.child! do
286
+ json.view 'h1-v1'
287
+ json.text 'Center spaced equally'
288
+ end
289
+ json.child! do
290
+ json.view 'panels/split-v1'
291
+ json.content do
292
+ json.left do
293
+ json.view 'button-v1'
294
+ json.text 'L'
295
+ end
296
+
297
+ json.center do
298
+ json.view 'panels/horizontal-v1'
299
+ json.distribution 'spaceEqually'
300
+ json.backgroundColor '#b3bac2'
301
+ json.subviews do
302
+ json.child! do
303
+ json.view 'button-v1'
304
+ json.text '1'
305
+ end
306
+
307
+ json.child! do
308
+ json.view 'button-v1'
309
+ json.text '2'
310
+ end
311
+
312
+ json.child! do
313
+ json.view 'button-v1'
314
+ json.text '3'
315
+ end
316
+ end
317
+ end
318
+
319
+ json.right do
320
+ json.view 'button-v1'
321
+ json.text 'R'
322
+ end
323
+ end
324
+ end
325
+
326
+ json.child! do
327
+ json.view 'label-v1'
328
+ json.text "\n"
329
+ end
330
+ json.child! do
331
+ json.view 'h1-v1'
332
+ json.text 'Combo 1'
333
+ end
334
+ json.child! do
335
+ json.view 'panels/split-v1'
336
+ json.content do
337
+ json.left do
338
+ json.view 'label-v1'
339
+ json.text 'a very very very very very very very very very very very very very very very very very very very very very very very very very very very very long text'
340
+ end
341
+
342
+ json.right do
343
+ json.view 'panels/horizontal-v1'
344
+ json.backgroundColor '#b3bac2'
345
+ json.subviews do
346
+ json.child! do
347
+ json.view 'label-v1'
348
+ json.text 'Label One'
349
+ end
350
+
351
+ json.child! do
352
+ json.view 'label-v1'
353
+ json.text 'Label Two'
354
+ end
355
+ end
356
+ end
357
+ end
358
+ end
359
+
360
+ end