glib-web 0.5.56 → 0.5.57

Sign up to get free protection for your applications and to get access to all the features.
Files changed (175) hide show
  1. checksums.yaml +4 -4
  2. data/app/channels/glib/channel/is_typing_channel.rb +28 -28
  3. data/app/controllers/concerns/glib/analytics/funnel.rb +61 -61
  4. data/app/controllers/concerns/glib/auth/policy.rb +148 -148
  5. data/app/controllers/concerns/glib/json/dynamic_text.rb +126 -126
  6. data/app/controllers/concerns/glib/json/libs.rb +149 -149
  7. data/app/controllers/concerns/glib/json/new_dynamic_text.rb +122 -122
  8. data/app/controllers/concerns/glib/json/transformation.rb +11 -11
  9. data/app/controllers/concerns/glib/json/traversal.rb +92 -92
  10. data/app/controllers/concerns/glib/json/ui.rb +88 -88
  11. data/app/controllers/concerns/glib/json/validation.rb +13 -13
  12. data/app/controllers/glib/home_controller.rb +16 -16
  13. data/app/helpers/glib/app_feature_support_helper.rb +16 -16
  14. data/app/helpers/glib/dynamic_images_helper.rb +55 -55
  15. data/app/helpers/glib/dynamic_texts_helper.rb +42 -42
  16. data/app/helpers/glib/enum_helper.rb +8 -8
  17. data/app/helpers/glib/forms_helper.rb +15 -15
  18. data/app/helpers/glib/json_ui/abstract_builder.rb +294 -294
  19. data/app/helpers/glib/json_ui/action_builder.rb +140 -140
  20. data/app/helpers/glib/json_ui/action_builder/dialogs.rb +58 -58
  21. data/app/helpers/glib/json_ui/action_builder/http.rb +39 -39
  22. data/app/helpers/glib/json_ui/action_builder/lists.rb +8 -8
  23. data/app/helpers/glib/json_ui/action_builder/sheets.rb +15 -15
  24. data/app/helpers/glib/json_ui/action_builder/snackbars.rb +41 -41
  25. data/app/helpers/glib/json_ui/action_builder/windows.rb +31 -31
  26. data/app/helpers/glib/json_ui/analytics_helper.rb +17 -17
  27. data/app/helpers/glib/json_ui/dynamic_field_builders.rb +25 -25
  28. data/app/helpers/glib/json_ui/generic_builders.rb +28 -28
  29. data/app/helpers/glib/json_ui/list_builders.rb +110 -110
  30. data/app/helpers/glib/json_ui/menu_builder.rb +94 -94
  31. data/app/helpers/glib/json_ui/page_helper.rb +221 -221
  32. data/app/helpers/glib/json_ui/response_helper.rb +25 -25
  33. data/app/helpers/glib/json_ui/split_builders.rb +32 -32
  34. data/app/helpers/glib/json_ui/styling_helper.rb +47 -47
  35. data/app/helpers/glib/json_ui/table_builders.rb +74 -74
  36. data/app/helpers/glib/json_ui/view_builder.rb +209 -209
  37. data/app/helpers/glib/json_ui/view_builder/banners.rb +25 -25
  38. data/app/helpers/glib/json_ui/view_builder/charts.rb +33 -33
  39. data/app/helpers/glib/json_ui/view_builder/fields.rb +254 -254
  40. data/app/helpers/glib/json_ui/view_builder/panels.rb +251 -251
  41. data/app/helpers/glib/urls_helper.rb +12 -12
  42. data/app/models/glib/active_storage/attachment.rb +9 -9
  43. data/app/models/glib/active_storage/blob.rb +9 -9
  44. data/app/models/glib/application_record.rb +18 -18
  45. data/app/models/glib/dynamic_text_record.rb +9 -9
  46. data/app/models/glib/text.rb +95 -95
  47. data/app/policies/glib/application_policy.rb +161 -161
  48. data/app/validators/email_typo_validator.rb +38 -38
  49. data/app/validators/email_validator.rb +7 -7
  50. data/app/validators/url_validator.rb +20 -20
  51. data/app/views/json_ui/garage/_nav_menu.json.jbuilder +70 -70
  52. data/app/views/json_ui/garage/actions/_dialogs.json.jbuilder +104 -104
  53. data/app/views/json_ui/garage/actions/_http.json.jbuilder +24 -24
  54. data/app/views/json_ui/garage/actions/_lists.json.jbuilder +12 -12
  55. data/app/views/json_ui/garage/actions/_reload.json.jbuilder +17 -17
  56. data/app/views/json_ui/garage/actions/_sheets.json.jbuilder +18 -18
  57. data/app/views/json_ui/garage/actions/_snackbars.json.jbuilder +33 -33
  58. data/app/views/json_ui/garage/actions/_timeouts.json.jbuilder +18 -18
  59. data/app/views/json_ui/garage/actions/_windows.json.jbuilder +24 -24
  60. data/app/views/json_ui/garage/actions/dialogs_oauth_post.json.jbuilder +6 -6
  61. data/app/views/json_ui/garage/actions/index.json.jbuilder +24 -24
  62. data/app/views/json_ui/garage/forms/_alert_post_data.json.jbuilder +6 -6
  63. data/app/views/json_ui/garage/forms/basic.json.jbuilder +21 -21
  64. data/app/views/json_ui/garage/forms/basic_post.json.jbuilder +8 -8
  65. data/app/views/json_ui/garage/forms/checkboxes.json.jbuilder +43 -43
  66. data/app/views/json_ui/garage/forms/conditional_value.json.jbuilder +36 -36
  67. data/app/views/json_ui/garage/forms/dynamic_group.json.jbuilder +39 -39
  68. data/app/views/json_ui/garage/forms/dynamic_select.json.jbuilder +22 -22
  69. data/app/views/json_ui/garage/forms/dynamic_select_data.json.jbuilder +38 -38
  70. data/app/views/json_ui/garage/forms/file_upload.json.jbuilder +32 -32
  71. data/app/views/json_ui/garage/forms/floating_submit.json.jbuilder +19 -19
  72. data/app/views/json_ui/garage/forms/generic_post.json.jbuilder +3 -3
  73. data/app/views/json_ui/garage/forms/get_request.json.jbuilder +27 -27
  74. data/app/views/json_ui/garage/forms/index.json.jbuilder +107 -107
  75. data/app/views/json_ui/garage/forms/new_rich_text.json.jbuilder +39 -39
  76. data/app/views/json_ui/garage/forms/pickers.json.jbuilder +102 -102
  77. data/app/views/json_ui/garage/forms/rich_text.json.jbuilder +40 -40
  78. data/app/views/json_ui/garage/forms/selects.json.jbuilder +70 -70
  79. data/app/views/json_ui/garage/forms/show_hide.json.jbuilder +105 -105
  80. data/app/views/json_ui/garage/forms/styled_boxes.json.jbuilder +36 -36
  81. data/app/views/json_ui/garage/forms/submission_flow.json.jbuilder +17 -17
  82. data/app/views/json_ui/garage/forms/submission_flow_post.json.jbuilder +26 -26
  83. data/app/views/json_ui/garage/forms/submission_indicator.json.jbuilder +63 -63
  84. data/app/views/json_ui/garage/forms/submission_indicator_post.json.jbuilder +25 -25
  85. data/app/views/json_ui/garage/forms/text_validation.json.jbuilder +69 -69
  86. data/app/views/json_ui/garage/home/blank.json.jbuilder +11 -11
  87. data/app/views/json_ui/garage/home/index.json.jbuilder +36 -36
  88. data/app/views/json_ui/garage/home/slow.json.jbuilder +11 -11
  89. data/app/views/json_ui/garage/lists/_autoload_section.json.jbuilder +28 -28
  90. data/app/views/json_ui/garage/lists/autoload_all.json.jbuilder +32 -32
  91. data/app/views/json_ui/garage/lists/autoload_as_needed.json.jbuilder +35 -35
  92. data/app/views/json_ui/garage/lists/chat_ui.json.jbuilder +93 -93
  93. data/app/views/json_ui/garage/lists/edit_actions.json.jbuilder +54 -54
  94. data/app/views/json_ui/garage/lists/fab.json.jbuilder +12 -12
  95. data/app/views/json_ui/garage/lists/index.json.jbuilder +32 -32
  96. data/app/views/json_ui/garage/lists/reordering.json.jbuilder +34 -34
  97. data/app/views/json_ui/garage/lists/templating.json.jbuilder +35 -35
  98. data/app/views/json_ui/garage/notifications/action_cable.json.jbuilder +97 -97
  99. data/app/views/json_ui/garage/notifications/android_post.json.jbuilder +48 -48
  100. data/app/views/json_ui/garage/notifications/index.json.jbuilder +36 -36
  101. data/app/views/json_ui/garage/notifications/web_socket.json.jbuilder +60 -60
  102. data/app/views/json_ui/garage/pages/flat_centered.json.jbuilder +29 -29
  103. data/app/views/json_ui/garage/pages/full_width.json.jbuilder +29 -29
  104. data/app/views/json_ui/garage/pages/full_width_height.json.jbuilder +16 -16
  105. data/app/views/json_ui/garage/pages/index.json.jbuilder +58 -58
  106. data/app/views/json_ui/garage/pages/layout.json.jbuilder +18 -18
  107. data/app/views/json_ui/garage/pages/loading_indicator.json.jbuilder +10 -10
  108. data/app/views/json_ui/garage/pages/nav_buttons.json.jbuilder +21 -21
  109. data/app/views/json_ui/garage/pages/nested_scroll.json.jbuilder +40 -40
  110. data/app/views/json_ui/garage/pages/tab_bar.json.jbuilder +27 -27
  111. data/app/views/json_ui/garage/panels/_styled.json.jbuilder +78 -78
  112. data/app/views/json_ui/garage/panels/card.json.jbuilder +4 -4
  113. data/app/views/json_ui/garage/panels/carousel.json.jbuilder +37 -37
  114. data/app/views/json_ui/garage/panels/custom.json.jbuilder +17 -17
  115. data/app/views/json_ui/garage/panels/flow.json.jbuilder +49 -49
  116. data/app/views/json_ui/garage/panels/horizontal.json.jbuilder +91 -91
  117. data/app/views/json_ui/garage/panels/index.json.jbuilder +132 -132
  118. data/app/views/json_ui/garage/panels/outlined.json.jbuilder +4 -4
  119. data/app/views/json_ui/garage/panels/responsive.json.jbuilder +98 -98
  120. data/app/views/json_ui/garage/panels/split.json.jbuilder +182 -182
  121. data/app/views/json_ui/garage/panels/vertical.json.jbuilder +55 -55
  122. data/app/views/json_ui/garage/services/dynamic_text.json.jbuilder +13 -13
  123. data/app/views/json_ui/garage/services/image.json.jbuilder +47 -47
  124. data/app/views/json_ui/garage/services/index.json.jbuilder +17 -17
  125. data/app/views/json_ui/garage/tables/_autoload_section.json.jbuilder +16 -16
  126. data/app/views/json_ui/garage/tables/autoload_all.json.jbuilder +43 -43
  127. data/app/views/json_ui/garage/tables/autoload_as_needed.json.jbuilder +50 -50
  128. data/app/views/json_ui/garage/tables/export_import.json.jbuilder +29 -29
  129. data/app/views/json_ui/garage/tables/horizontal_scroll.json.jbuilder +26 -26
  130. data/app/views/json_ui/garage/tables/index.json.jbuilder +25 -25
  131. data/app/views/json_ui/garage/tables/layout.json.jbuilder +36 -36
  132. data/app/views/json_ui/garage/views/_chart_data.json.jbuilder +17 -17
  133. data/app/views/json_ui/garage/views/banners.json.jbuilder +63 -63
  134. data/app/views/json_ui/garage/views/calendar_data.json.jbuilder +30 -30
  135. data/app/views/json_ui/garage/views/charts.json.jbuilder +115 -115
  136. data/app/views/json_ui/garage/views/icons.json.jbuilder +1450 -1450
  137. data/app/views/json_ui/garage/views/images.json.jbuilder +89 -89
  138. data/app/views/json_ui/garage/views/index.json.jbuilder +54 -54
  139. data/app/views/json_ui/garage/views/links.json.jbuilder +70 -70
  140. data/app/views/json_ui/garage/views/map_cluster_data.json.jbuilder +41 -41
  141. data/app/views/json_ui/garage/views/map_data.json.jbuilder +51 -51
  142. data/app/views/json_ui/garage/views/maps.json.jbuilder +31 -31
  143. data/app/views/json_ui/garage/views/markdowns.json.jbuilder +41 -41
  144. data/app/views/json_ui/garage/views/misc.json.jbuilder +34 -34
  145. data/app/views/json_ui/garage/views/texts.json.jbuilder +44 -44
  146. data/app/views/layouts/json_ui/renderer.html.erb +35 -35
  147. data/config/routes.rb +7 -7
  148. data/lib/generators/glib/install_generator.rb +24 -24
  149. data/lib/generators/templates/20191017062519_create_texts.rb +12 -12
  150. data/lib/generators/templates/20191024063257_add_scope_to_texts.rb +7 -7
  151. data/lib/generators/templates/20191112095018_add_lang_to_texts.rb +7 -7
  152. data/lib/generators/templates/20191126071051_create_active_storage_tables.active_storage.rb +27 -27
  153. data/lib/generators/templates/database.yml +107 -107
  154. data/lib/generators/templates/dynamic_text.rb +2 -2
  155. data/lib/glib-web.rb +9 -9
  156. data/lib/glib/crypt/utils.rb +26 -26
  157. data/lib/glib/dynamic_text/config.rb +21 -21
  158. data/lib/glib/engine.rb +7 -7
  159. data/lib/glib/json_crawler.rb +11 -11
  160. data/lib/glib/json_crawler/action_crawler.rb +23 -23
  161. data/lib/glib/json_crawler/action_crawlers/action_http.rb +11 -11
  162. data/lib/glib/json_crawler/action_crawlers/forms_submit.rb +48 -48
  163. data/lib/glib/json_crawler/action_crawlers/menu.rb +12 -12
  164. data/lib/glib/json_crawler/action_crawlers/nav_initiate.rb +19 -19
  165. data/lib/glib/json_crawler/action_crawlers/run_multiple.rb +13 -13
  166. data/lib/glib/json_crawler/action_crawlers/windows_open.rb +33 -33
  167. data/lib/glib/json_crawler/coverage.rb +20 -20
  168. data/lib/glib/json_crawler/http.rb +120 -120
  169. data/lib/glib/json_crawler/router.rb +98 -98
  170. data/lib/glib/mailer_tester.rb +36 -36
  171. data/lib/glib/test_helpers.rb +52 -52
  172. data/lib/glib/value.rb +7 -7
  173. data/lib/glib/version.rb +5 -5
  174. data/lib/tasks/db.rake +95 -95
  175. metadata +2 -3
@@ -1,182 +1,182 @@
1
- json.title 'Panels'
2
-
3
- json_ui_page json do |page|
4
- render "#{@path_prefix}/nav_menu", json: json, page: page
5
-
6
- page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
7
-
8
- scroll.h1 text: '2 columns'
9
- scroll.panels_split width: 'matchParent', content: ->(content) do
10
- content.left childViews: ->(left) do
11
- left.button text: '1'
12
- end
13
- content.right childViews: ->(right) do
14
- right.button text: '2'
15
- end
16
- end
17
-
18
- scroll.label text: "\n"
19
- scroll.h1 text: '3 columns'
20
- scroll.panels_split width: 'matchParent', content: ->(content) do
21
- content.left childViews: ->(left) do
22
- left.button text: '1'
23
- end
24
- content.center childViews: ->(center) do
25
- center.button width: 'matchParent', text: '2'
26
- end
27
- content.right childViews: ->(right) do
28
- right.button text: '3'
29
- end
30
- end
31
-
32
- scroll.label text: "\n"
33
- scroll.h1 text: 'Expandable left'
34
- scroll.panels_split width: 'matchParent', content: ->(content) do
35
- content.center childViews: ->(center) do
36
- center.button width: 'matchParent', text: '1'
37
- end
38
- content.right childViews: ->(right) do
39
- right.button text: '2'
40
- end
41
- end
42
-
43
- scroll.label text: "\n"
44
- scroll.h1 text: 'Expandable right'
45
- scroll.panels_split width: 'matchParent', content: ->(content) do
46
- content.left childViews: ->(left) do
47
- left.button text: '1'
48
- end
49
- content.center childViews: ->(center) do
50
- center.button width: 'matchParent', text: '2'
51
- end
52
- end
53
-
54
- scroll.label text: "\n"
55
- scroll.h1 text: 'Short center text'
56
- scroll.panels_split width: 'matchParent', content: ->(content) do
57
- content.left childViews: ->(left) do
58
- left.button text: '1'
59
- end
60
- content.center childViews: ->(center) do
61
- center.label text: 'short'
62
- end
63
- content.right childViews: ->(right) do
64
- right.button text: '2'
65
- end
66
- end
67
-
68
- scroll.label text: "\n"
69
- scroll.h1 text: 'Long center text'
70
- scroll.panels_split width: 'matchParent', content: ->(content) do
71
- content.left childViews: ->(left) do
72
- left.button text: '1'
73
- end
74
- content.center childViews: ->(center) do
75
- center.label 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'
76
- end
77
- content.right childViews: ->(right) do
78
- right.button text: '2'
79
- end
80
- end
81
-
82
- scroll.label text: "\n"
83
- scroll.h1 text: 'Few center items'
84
- scroll.panels_split width: 'matchParent', content: ->(content) do
85
- content.left childViews: ->(left) do
86
- left.button text: 'L'
87
- end
88
- content.center childViews: ->(center) do
89
- center.panels_horizontal childViews: ->(h) do
90
- h.button text: '1'
91
- h.button text: '2'
92
- h.button text: '3'
93
- end
94
- end
95
- content.right childViews: ->(right) do
96
- right.button text: 'R'
97
- end
98
- end
99
-
100
- scroll.label text: "\n"
101
- scroll.h1 text: 'Many center items'
102
- scroll.panels_split width: 'matchParent', content: ->(content) do
103
- content.left childViews: ->(left) do
104
- left.button text: 'L'
105
- end
106
- content.center childViews: ->(center) do
107
- center.panels_flow width: 'matchParent', backgroundColor: '#b3bac2', childViews: ->(h) do
108
- (1..20).each do |index|
109
- h.button text: index
110
- end
111
- end
112
- end
113
- content.right childViews: ->(right) do
114
- right.button text: 'R'
115
- end
116
- end
117
-
118
- scroll.label text: "\n"
119
- scroll.h1 text: 'Center filled equally'
120
- scroll.panels_split width: 'matchParent', content: ->(content) do
121
- content.left childViews: ->(left) do
122
- left.button text: 'L'
123
- end
124
- content.center childViews: ->(center) do
125
- center.panels_horizontal width: 'matchParent', backgroundColor: '#b3bac2', distribution: 'fillEqually', childViews: ->(h) do
126
- h.button text: '1'
127
- h.button text: '2'
128
- h.button text: '3'
129
- end
130
- end
131
- content.right childViews: ->(right) do
132
- right.button text: 'R'
133
- end
134
- end
135
-
136
- scroll.label text: "\n"
137
- scroll.h1 text: 'Center spaced equally'
138
- scroll.panels_split width: 'matchParent', content: ->(content) do
139
- content.left childViews: ->(left) do
140
- left.button text: 'L'
141
- end
142
- content.center childViews: ->(center) do
143
- center.panels_horizontal width: 'matchParent', backgroundColor: '#b3bac2', distribution: 'spaceEqually', childViews: ->(h) do
144
- h.button text: '1'
145
- h.button text: '2'
146
- h.button text: '3'
147
- end
148
- end
149
- content.right childViews: ->(right) do
150
- right.button text: 'R'
151
- end
152
- end
153
-
154
- scroll.label text: "\n"
155
- scroll.h1 text: 'Combo 1'
156
- scroll.panels_split width: 'matchParent', content: ->(content) do
157
- content.left childViews: ->(left) do
158
- left.label 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'
159
- end
160
- content.right width: 120, backgroundColor: '#b3bac2', childViews: ->(right) do
161
- right.panels_horizontal distribution: 'spaceEqually', childViews: ->(h) do
162
- h.label text: 'Label One'
163
- h.label text: 'Label Two'
164
- end
165
- end
166
- end
167
-
168
- scroll.label text: "\n"
169
- scroll.h1 text: 'Combo 2'
170
- scroll.panels_split width: 200, backgroundColor: '#b3bac2', padding: { right: 10 }, content: ->(content) do
171
- content.left childViews: ->(left) do
172
- left.button text: 'Big'
173
- end
174
- content.right childViews: ->(right) do
175
- right.panels_horizontal height: 'matchParent', align: 'middle', childViews: ->(h) do
176
- h.spacer width: 10
177
- h.button text: 'small', styleClass: 'link'
178
- end
179
- end
180
- end
181
- end
182
- end
1
+ json.title 'Panels'
2
+
3
+ json_ui_page json do |page|
4
+ render "#{@path_prefix}/nav_menu", json: json, page: page
5
+
6
+ page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
7
+
8
+ scroll.h1 text: '2 columns'
9
+ scroll.panels_split width: 'matchParent', content: ->(content) do
10
+ content.left childViews: ->(left) do
11
+ left.button text: '1'
12
+ end
13
+ content.right childViews: ->(right) do
14
+ right.button text: '2'
15
+ end
16
+ end
17
+
18
+ scroll.label text: "\n"
19
+ scroll.h1 text: '3 columns'
20
+ scroll.panels_split width: 'matchParent', content: ->(content) do
21
+ content.left childViews: ->(left) do
22
+ left.button text: '1'
23
+ end
24
+ content.center childViews: ->(center) do
25
+ center.button width: 'matchParent', text: '2'
26
+ end
27
+ content.right childViews: ->(right) do
28
+ right.button text: '3'
29
+ end
30
+ end
31
+
32
+ scroll.label text: "\n"
33
+ scroll.h1 text: 'Expandable left'
34
+ scroll.panels_split width: 'matchParent', content: ->(content) do
35
+ content.center childViews: ->(center) do
36
+ center.button width: 'matchParent', text: '1'
37
+ end
38
+ content.right childViews: ->(right) do
39
+ right.button text: '2'
40
+ end
41
+ end
42
+
43
+ scroll.label text: "\n"
44
+ scroll.h1 text: 'Expandable right'
45
+ scroll.panels_split width: 'matchParent', content: ->(content) do
46
+ content.left childViews: ->(left) do
47
+ left.button text: '1'
48
+ end
49
+ content.center childViews: ->(center) do
50
+ center.button width: 'matchParent', text: '2'
51
+ end
52
+ end
53
+
54
+ scroll.label text: "\n"
55
+ scroll.h1 text: 'Short center text'
56
+ scroll.panels_split width: 'matchParent', content: ->(content) do
57
+ content.left childViews: ->(left) do
58
+ left.button text: '1'
59
+ end
60
+ content.center childViews: ->(center) do
61
+ center.label text: 'short'
62
+ end
63
+ content.right childViews: ->(right) do
64
+ right.button text: '2'
65
+ end
66
+ end
67
+
68
+ scroll.label text: "\n"
69
+ scroll.h1 text: 'Long center text'
70
+ scroll.panels_split width: 'matchParent', content: ->(content) do
71
+ content.left childViews: ->(left) do
72
+ left.button text: '1'
73
+ end
74
+ content.center childViews: ->(center) do
75
+ center.label 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'
76
+ end
77
+ content.right childViews: ->(right) do
78
+ right.button text: '2'
79
+ end
80
+ end
81
+
82
+ scroll.label text: "\n"
83
+ scroll.h1 text: 'Few center items'
84
+ scroll.panels_split width: 'matchParent', content: ->(content) do
85
+ content.left childViews: ->(left) do
86
+ left.button text: 'L'
87
+ end
88
+ content.center childViews: ->(center) do
89
+ center.panels_horizontal childViews: ->(h) do
90
+ h.button text: '1'
91
+ h.button text: '2'
92
+ h.button text: '3'
93
+ end
94
+ end
95
+ content.right childViews: ->(right) do
96
+ right.button text: 'R'
97
+ end
98
+ end
99
+
100
+ scroll.label text: "\n"
101
+ scroll.h1 text: 'Many center items'
102
+ scroll.panels_split width: 'matchParent', content: ->(content) do
103
+ content.left childViews: ->(left) do
104
+ left.button text: 'L'
105
+ end
106
+ content.center childViews: ->(center) do
107
+ center.panels_flow width: 'matchParent', backgroundColor: '#b3bac2', childViews: ->(h) do
108
+ (1..20).each do |index|
109
+ h.button text: index
110
+ end
111
+ end
112
+ end
113
+ content.right childViews: ->(right) do
114
+ right.button text: 'R'
115
+ end
116
+ end
117
+
118
+ scroll.label text: "\n"
119
+ scroll.h1 text: 'Center filled equally'
120
+ scroll.panels_split width: 'matchParent', content: ->(content) do
121
+ content.left childViews: ->(left) do
122
+ left.button text: 'L'
123
+ end
124
+ content.center childViews: ->(center) do
125
+ center.panels_horizontal width: 'matchParent', backgroundColor: '#b3bac2', distribution: 'fillEqually', childViews: ->(h) do
126
+ h.button text: '1'
127
+ h.button text: '2'
128
+ h.button text: '3'
129
+ end
130
+ end
131
+ content.right childViews: ->(right) do
132
+ right.button text: 'R'
133
+ end
134
+ end
135
+
136
+ scroll.label text: "\n"
137
+ scroll.h1 text: 'Center spaced equally'
138
+ scroll.panels_split width: 'matchParent', content: ->(content) do
139
+ content.left childViews: ->(left) do
140
+ left.button text: 'L'
141
+ end
142
+ content.center childViews: ->(center) do
143
+ center.panels_horizontal width: 'matchParent', backgroundColor: '#b3bac2', distribution: 'spaceEqually', childViews: ->(h) do
144
+ h.button text: '1'
145
+ h.button text: '2'
146
+ h.button text: '3'
147
+ end
148
+ end
149
+ content.right childViews: ->(right) do
150
+ right.button text: 'R'
151
+ end
152
+ end
153
+
154
+ scroll.label text: "\n"
155
+ scroll.h1 text: 'Combo 1'
156
+ scroll.panels_split width: 'matchParent', content: ->(content) do
157
+ content.left childViews: ->(left) do
158
+ left.label 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'
159
+ end
160
+ content.right width: 120, backgroundColor: '#b3bac2', childViews: ->(right) do
161
+ right.panels_horizontal distribution: 'spaceEqually', childViews: ->(h) do
162
+ h.label text: 'Label One'
163
+ h.label text: 'Label Two'
164
+ end
165
+ end
166
+ end
167
+
168
+ scroll.label text: "\n"
169
+ scroll.h1 text: 'Combo 2'
170
+ scroll.panels_split width: 200, backgroundColor: '#b3bac2', padding: { right: 10 }, content: ->(content) do
171
+ content.left childViews: ->(left) do
172
+ left.button text: 'Big'
173
+ end
174
+ content.right childViews: ->(right) do
175
+ right.panels_horizontal height: 'matchParent', align: 'middle', childViews: ->(h) do
176
+ h.spacer width: 10
177
+ h.button text: 'small', styleClass: 'link'
178
+ end
179
+ end
180
+ end
181
+ end
182
+ end
@@ -1,55 +1,55 @@
1
- json.title 'Panels'
2
-
3
- json_ui_page json do |page|
4
- render "#{@path_prefix}/nav_menu", json: json, page: page
5
-
6
- page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
7
- scroll.h1 text: 'Basic'
8
- scroll.panels_vertical backgroundColor: '#b3bac2', childViews: ->(panel) do
9
- panel.button text: 'Button1'
10
- panel.button text: 'Button2', width: 200
11
- panel.button text: 'Button3', width: 300
12
- end
13
-
14
- scroll.label text: "\n"
15
- scroll.h1 text: 'Equal filling'
16
- scroll.panels_vertical backgroundColor: '#b3bac2', height: 300, distribution: 'fillEqually', childViews: ->(panel) do
17
- panel.button text: 'Button1'
18
- panel.button text: 'Button2'
19
- panel.button text: 'Button3'
20
- end
21
-
22
- scroll.label text: "\n"
23
- scroll.h1 text: 'Equal spacing'
24
- scroll.panels_vertical backgroundColor: '#b3bac2', height: 300, distribution: 'spaceEqually', childViews: ->(panel) do
25
- panel.button text: 'Button1'
26
- panel.button text: 'Button2'
27
- panel.button text: 'Button3'
28
- end
29
-
30
- scroll.label text: "\n"
31
- scroll.h1 text: 'Alignments'
32
- scroll.panels_vertical width: 'matchParent', backgroundColor: '#b3bac2', align: 'center', childViews: ->(panel) do
33
- panel.button text: 'Center'
34
- end
35
- scroll.panels_vertical width: 'matchParent', backgroundColor: '#b3bac2', align: 'right', childViews: ->(panel) do
36
- panel.button text: 'Right'
37
- end
38
-
39
- scroll.label text: "\n"
40
- scroll.h1 text: 'Spacers'
41
- scroll.panels_vertical width: 'matchParent', childViews: ->(panel) do
42
- panel.button text: '1'
43
- panel.spacer height: 10
44
- panel.button text: '2'
45
- panel.spacer height: 50
46
- panel.button text: '3'
47
- end
48
-
49
- scroll.label text: "\n"
50
- scroll.h1 text: 'Click action'
51
- scroll.panels_vertical width: 100, height: 100, backgroundColor: '#b3bac2', onClick: ->(action) do
52
- action.dialogs_alert message: 'Perform action'
53
- end
54
- end
55
- end
1
+ json.title 'Panels'
2
+
3
+ json_ui_page json do |page|
4
+ render "#{@path_prefix}/nav_menu", json: json, page: page
5
+
6
+ page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
7
+ scroll.h1 text: 'Basic'
8
+ scroll.panels_vertical backgroundColor: '#b3bac2', childViews: ->(panel) do
9
+ panel.button text: 'Button1'
10
+ panel.button text: 'Button2', width: 200
11
+ panel.button text: 'Button3', width: 300
12
+ end
13
+
14
+ scroll.label text: "\n"
15
+ scroll.h1 text: 'Equal filling'
16
+ scroll.panels_vertical backgroundColor: '#b3bac2', height: 300, distribution: 'fillEqually', childViews: ->(panel) do
17
+ panel.button text: 'Button1'
18
+ panel.button text: 'Button2'
19
+ panel.button text: 'Button3'
20
+ end
21
+
22
+ scroll.label text: "\n"
23
+ scroll.h1 text: 'Equal spacing'
24
+ scroll.panels_vertical backgroundColor: '#b3bac2', height: 300, distribution: 'spaceEqually', childViews: ->(panel) do
25
+ panel.button text: 'Button1'
26
+ panel.button text: 'Button2'
27
+ panel.button text: 'Button3'
28
+ end
29
+
30
+ scroll.label text: "\n"
31
+ scroll.h1 text: 'Alignments'
32
+ scroll.panels_vertical width: 'matchParent', backgroundColor: '#b3bac2', align: 'center', childViews: ->(panel) do
33
+ panel.button text: 'Center'
34
+ end
35
+ scroll.panels_vertical width: 'matchParent', backgroundColor: '#b3bac2', align: 'right', childViews: ->(panel) do
36
+ panel.button text: 'Right'
37
+ end
38
+
39
+ scroll.label text: "\n"
40
+ scroll.h1 text: 'Spacers'
41
+ scroll.panels_vertical width: 'matchParent', childViews: ->(panel) do
42
+ panel.button text: '1'
43
+ panel.spacer height: 10
44
+ panel.button text: '2'
45
+ panel.spacer height: 50
46
+ panel.button text: '3'
47
+ end
48
+
49
+ scroll.label text: "\n"
50
+ scroll.h1 text: 'Click action'
51
+ scroll.panels_vertical width: 100, height: 100, backgroundColor: '#b3bac2', onClick: ->(action) do
52
+ action.dialogs_alert message: 'Perform action'
53
+ end
54
+ end
55
+ end