glib-web 0.5.83 → 0.5.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. checksums.yaml +4 -4
  2. data/app/channels/glib/channel/is_typing_channel.rb +34 -34
  3. data/app/channels/glib/channel/online_channel.rb +36 -36
  4. data/app/controllers/concerns/glib/analytics/funnel.rb +61 -61
  5. data/app/controllers/concerns/glib/auth/policy.rb +149 -149
  6. data/app/controllers/concerns/glib/json/dynamic_text.rb +126 -126
  7. data/app/controllers/concerns/glib/json/libs.rb +149 -149
  8. data/app/controllers/concerns/glib/json/new_dynamic_text.rb +122 -122
  9. data/app/controllers/concerns/glib/json/transformation.rb +11 -11
  10. data/app/controllers/concerns/glib/json/traversal.rb +92 -92
  11. data/app/controllers/concerns/glib/json/ui.rb +88 -88
  12. data/app/controllers/concerns/glib/json/validation.rb +13 -13
  13. data/app/controllers/glib/home_controller.rb +54 -54
  14. data/app/helpers/glib/app_feature_support_helper.rb +16 -16
  15. data/app/helpers/glib/dynamic_images_helper.rb +55 -55
  16. data/app/helpers/glib/dynamic_texts_helper.rb +42 -42
  17. data/app/helpers/glib/enum_helper.rb +18 -18
  18. data/app/helpers/glib/forms_helper.rb +15 -15
  19. data/app/helpers/glib/json_ui/abstract_builder.rb +309 -309
  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/iap.rb +15 -15
  23. data/app/helpers/glib/json_ui/action_builder/panels.rb +14 -14
  24. data/app/helpers/glib/json_ui/action_builder/sheets.rb +15 -15
  25. data/app/helpers/glib/json_ui/action_builder/snackbars.rb +41 -41
  26. data/app/helpers/glib/json_ui/action_builder/windows.rb +38 -38
  27. data/app/helpers/glib/json_ui/action_builder.rb +140 -140
  28. data/app/helpers/glib/json_ui/analytics_helper.rb +17 -17
  29. data/app/helpers/glib/json_ui/dynamic_field_builders.rb +25 -25
  30. data/app/helpers/glib/json_ui/generic_builders.rb +28 -28
  31. data/app/helpers/glib/json_ui/list_builders.rb +110 -110
  32. data/app/helpers/glib/json_ui/menu_builder.rb +96 -94
  33. data/app/helpers/glib/json_ui/page_helper.rb +221 -221
  34. data/app/helpers/glib/json_ui/response_helper.rb +25 -25
  35. data/app/helpers/glib/json_ui/styling_helper.rb +55 -55
  36. data/app/helpers/glib/json_ui/table_builders.rb +74 -74
  37. data/app/helpers/glib/json_ui/view_builder/banners.rb +26 -26
  38. data/app/helpers/glib/json_ui/view_builder/charts.rb +33 -33
  39. data/app/helpers/glib/json_ui/view_builder/fields.rb +291 -291
  40. data/app/helpers/glib/json_ui/view_builder/iap.rb +11 -11
  41. data/app/helpers/glib/json_ui/view_builder/panels.rb +258 -258
  42. data/app/helpers/glib/json_ui/view_builder.rb +248 -247
  43. data/app/helpers/glib/urls_helper.rb +12 -12
  44. data/app/models/concerns/glib/soft_deletable.rb +68 -68
  45. data/app/models/glib/active_storage/attachment.rb +9 -9
  46. data/app/models/glib/active_storage/blob.rb +9 -9
  47. data/app/models/glib/application_record.rb +18 -18
  48. data/app/models/glib/dynamic_text_record.rb +9 -9
  49. data/app/models/glib/text.rb +95 -95
  50. data/app/policies/glib/application_policy.rb +191 -191
  51. data/app/validators/email_typo_validator.rb +38 -38
  52. data/app/validators/email_validator.rb +7 -7
  53. data/app/validators/url_validator.rb +20 -20
  54. data/app/views/json_ui/garage/_nav_menu.json.jbuilder +70 -70
  55. data/app/views/json_ui/garage/actions/_dialogs.json.jbuilder +104 -104
  56. data/app/views/json_ui/garage/actions/_http.json.jbuilder +24 -24
  57. data/app/views/json_ui/garage/actions/_panels.json.jbuilder +18 -18
  58. data/app/views/json_ui/garage/actions/_reload.json.jbuilder +17 -17
  59. data/app/views/json_ui/garage/actions/_sheets.json.jbuilder +18 -18
  60. data/app/views/json_ui/garage/actions/_snackbars.json.jbuilder +33 -33
  61. data/app/views/json_ui/garage/actions/_timeouts.json.jbuilder +24 -24
  62. data/app/views/json_ui/garage/actions/_windows.json.jbuilder +24 -24
  63. data/app/views/json_ui/garage/actions/dialogs_oauth_post.json.jbuilder +6 -6
  64. data/app/views/json_ui/garage/actions/index.json.jbuilder +24 -24
  65. data/app/views/json_ui/garage/forms/_alert_post_data.json.jbuilder +10 -10
  66. data/app/views/json_ui/garage/forms/basic.json.jbuilder +21 -21
  67. data/app/views/json_ui/garage/forms/basic_post.json.jbuilder +8 -8
  68. data/app/views/json_ui/garage/forms/checkboxes.json.jbuilder +43 -43
  69. data/app/views/json_ui/garage/forms/conditional_value.json.jbuilder +36 -36
  70. data/app/views/json_ui/garage/forms/dynamic_group.json.jbuilder +39 -39
  71. data/app/views/json_ui/garage/forms/dynamic_select.json.jbuilder +24 -24
  72. data/app/views/json_ui/garage/forms/dynamic_select_data.json.jbuilder +38 -38
  73. data/app/views/json_ui/garage/forms/file_upload.json.jbuilder +37 -37
  74. data/app/views/json_ui/garage/forms/floating_submit.json.jbuilder +19 -19
  75. data/app/views/json_ui/garage/forms/generic_post.json.jbuilder +3 -3
  76. data/app/views/json_ui/garage/forms/get_request.json.jbuilder +27 -27
  77. data/app/views/json_ui/garage/forms/index.json.jbuilder +116 -116
  78. data/app/views/json_ui/garage/forms/new_rich_text.json.jbuilder +40 -40
  79. data/app/views/json_ui/garage/forms/online_participant1.json.jbuilder +25 -25
  80. data/app/views/json_ui/garage/forms/online_participant2.json.jbuilder +25 -25
  81. data/app/views/json_ui/garage/forms/payments.json.jbuilder +34 -34
  82. data/app/views/json_ui/garage/forms/pickers.json.jbuilder +81 -81
  83. data/app/views/json_ui/garage/forms/ratings.json.jbuilder +49 -49
  84. data/app/views/json_ui/garage/forms/rich_text.json.jbuilder +40 -40
  85. data/app/views/json_ui/garage/forms/selects.json.jbuilder +91 -91
  86. data/app/views/json_ui/garage/forms/show_hide.json.jbuilder +150 -150
  87. data/app/views/json_ui/garage/forms/styled_boxes.json.jbuilder +35 -35
  88. data/app/views/json_ui/garage/forms/submission_flow.json.jbuilder +17 -17
  89. data/app/views/json_ui/garage/forms/submission_flow_post.json.jbuilder +26 -26
  90. data/app/views/json_ui/garage/forms/submission_indicator.json.jbuilder +63 -63
  91. data/app/views/json_ui/garage/forms/submission_indicator_post.json.jbuilder +25 -25
  92. data/app/views/json_ui/garage/forms/text_validation.json.jbuilder +65 -65
  93. data/app/views/json_ui/garage/forms/timers.json.jbuilder +120 -120
  94. data/app/views/json_ui/garage/home/blank.json.jbuilder +10 -10
  95. data/app/views/json_ui/garage/home/index.json.jbuilder +36 -36
  96. data/app/views/json_ui/garage/home/slow.json.jbuilder +11 -11
  97. data/app/views/json_ui/garage/lists/_autoload_section.json.jbuilder +30 -30
  98. data/app/views/json_ui/garage/lists/autoload_all.json.jbuilder +32 -32
  99. data/app/views/json_ui/garage/lists/autoload_as_needed.json.jbuilder +35 -35
  100. data/app/views/json_ui/garage/lists/chat_ui.json.jbuilder +94 -94
  101. data/app/views/json_ui/garage/lists/edit_actions.json.jbuilder +62 -62
  102. data/app/views/json_ui/garage/lists/fab.json.jbuilder +12 -12
  103. data/app/views/json_ui/garage/lists/index.json.jbuilder +38 -38
  104. data/app/views/json_ui/garage/lists/reordering.json.jbuilder +34 -34
  105. data/app/views/json_ui/garage/lists/templating.json.jbuilder +35 -35
  106. data/app/views/json_ui/garage/notifications/action_cable.json.jbuilder +114 -114
  107. data/app/views/json_ui/garage/notifications/android_post.json.jbuilder +48 -48
  108. data/app/views/json_ui/garage/notifications/index.json.jbuilder +36 -36
  109. data/app/views/json_ui/garage/notifications/web_socket.json.jbuilder +60 -60
  110. data/app/views/json_ui/garage/pages/flat_centered.json.jbuilder +29 -29
  111. data/app/views/json_ui/garage/pages/full_width.json.jbuilder +29 -29
  112. data/app/views/json_ui/garage/pages/full_width_height.json.jbuilder +16 -16
  113. data/app/views/json_ui/garage/pages/index.json.jbuilder +62 -62
  114. data/app/views/json_ui/garage/pages/layout.json.jbuilder +18 -18
  115. data/app/views/json_ui/garage/pages/lifecycle_hooks.json.jbuilder +13 -13
  116. data/app/views/json_ui/garage/pages/loading_indicator.json.jbuilder +10 -10
  117. data/app/views/json_ui/garage/pages/nav_buttons.json.jbuilder +21 -21
  118. data/app/views/json_ui/garage/pages/nested_scroll.json.jbuilder +40 -40
  119. data/app/views/json_ui/garage/pages/tab_bar.json.jbuilder +66 -31
  120. data/app/views/json_ui/garage/panels/_styled.json.jbuilder +78 -78
  121. data/app/views/json_ui/garage/panels/card.json.jbuilder +4 -4
  122. data/app/views/json_ui/garage/panels/carousel.json.jbuilder +38 -38
  123. data/app/views/json_ui/garage/panels/custom.json.jbuilder +17 -17
  124. data/app/views/json_ui/garage/panels/flow.json.jbuilder +59 -59
  125. data/app/views/json_ui/garage/panels/horizontal.json.jbuilder +91 -91
  126. data/app/views/json_ui/garage/panels/index.json.jbuilder +138 -138
  127. data/app/views/json_ui/garage/panels/outlined.json.jbuilder +4 -4
  128. data/app/views/json_ui/garage/panels/responsive.json.jbuilder +98 -98
  129. data/app/views/json_ui/garage/panels/split.json.jbuilder +182 -182
  130. data/app/views/json_ui/garage/panels/ul.json.jbuilder +33 -33
  131. data/app/views/json_ui/garage/panels/vertical.json.jbuilder +55 -55
  132. data/app/views/json_ui/garage/panels/web.json.jbuilder +15 -15
  133. data/app/views/json_ui/garage/services/dynamic_text.json.jbuilder +13 -13
  134. data/app/views/json_ui/garage/services/image.json.jbuilder +47 -47
  135. data/app/views/json_ui/garage/services/index.json.jbuilder +17 -17
  136. data/app/views/json_ui/garage/tables/_autoload_section.json.jbuilder +16 -16
  137. data/app/views/json_ui/garage/tables/autoload_all.json.jbuilder +43 -43
  138. data/app/views/json_ui/garage/tables/autoload_as_needed.json.jbuilder +50 -50
  139. data/app/views/json_ui/garage/tables/export_import.json.jbuilder +29 -29
  140. data/app/views/json_ui/garage/tables/horizontal_scroll.json.jbuilder +26 -26
  141. data/app/views/json_ui/garage/tables/index.json.jbuilder +25 -25
  142. data/app/views/json_ui/garage/tables/layout.json.jbuilder +40 -40
  143. data/app/views/json_ui/garage/views/_chart_data.json.jbuilder +17 -17
  144. data/app/views/json_ui/garage/views/banners.json.jbuilder +67 -63
  145. data/app/views/json_ui/garage/views/calendar_data.json.jbuilder +30 -30
  146. data/app/views/json_ui/garage/views/charts.json.jbuilder +115 -115
  147. data/app/views/json_ui/garage/views/controls.json.jbuilder +37 -37
  148. data/app/views/json_ui/garage/views/iap.json.jbuilder +21 -21
  149. data/app/views/json_ui/garage/views/icon_names.json.jbuilder +1450 -1450
  150. data/app/views/json_ui/garage/views/icons.json.jbuilder +15 -15
  151. data/app/views/json_ui/garage/views/images.json.jbuilder +89 -89
  152. data/app/views/json_ui/garage/views/index.json.jbuilder +83 -83
  153. data/app/views/json_ui/garage/views/links.json.jbuilder +70 -70
  154. data/app/views/json_ui/garage/views/map_cluster_data.json.jbuilder +41 -41
  155. data/app/views/json_ui/garage/views/map_data.json.jbuilder +51 -51
  156. data/app/views/json_ui/garage/views/maps.json.jbuilder +31 -31
  157. data/app/views/json_ui/garage/views/markdowns.json.jbuilder +41 -41
  158. data/app/views/json_ui/garage/views/misc.json.jbuilder +34 -34
  159. data/app/views/json_ui/garage/views/progress.json.jbuilder +31 -31
  160. data/app/views/json_ui/garage/views/texts.json.jbuilder +35 -35
  161. data/app/views/layouts/json_ui/renderer.html.erb +35 -35
  162. data/config/routes.rb +7 -7
  163. data/lib/generators/glib/install_generator.rb +24 -24
  164. data/lib/generators/templates/20191017062519_create_texts.rb +12 -12
  165. data/lib/generators/templates/20191024063257_add_scope_to_texts.rb +7 -7
  166. data/lib/generators/templates/20191112095018_add_lang_to_texts.rb +7 -7
  167. data/lib/generators/templates/20191126071051_create_active_storage_tables.active_storage.rb +27 -27
  168. data/lib/generators/templates/database.yml +107 -107
  169. data/lib/generators/templates/dynamic_text.rb +2 -2
  170. data/lib/glib/crypt/utils.rb +26 -26
  171. data/lib/glib/dynamic_text/config.rb +21 -21
  172. data/lib/glib/engine.rb +7 -7
  173. data/lib/glib/json_crawler/action_crawler.rb +23 -23
  174. data/lib/glib/json_crawler/action_crawlers/action_http.rb +11 -11
  175. data/lib/glib/json_crawler/action_crawlers/forms_submit.rb +48 -48
  176. data/lib/glib/json_crawler/action_crawlers/menu.rb +12 -12
  177. data/lib/glib/json_crawler/action_crawlers/nav_initiate.rb +19 -19
  178. data/lib/glib/json_crawler/action_crawlers/run_multiple.rb +13 -13
  179. data/lib/glib/json_crawler/action_crawlers/windows_open.rb +33 -33
  180. data/lib/glib/json_crawler/coverage.rb +20 -20
  181. data/lib/glib/json_crawler/http.rb +120 -120
  182. data/lib/glib/json_crawler/router.rb +90 -90
  183. data/lib/glib/json_crawler.rb +11 -11
  184. data/lib/glib/mailer_tester.rb +36 -36
  185. data/lib/glib/test_helpers.rb +52 -52
  186. data/lib/glib/value.rb +7 -7
  187. data/lib/glib/version.rb +5 -5
  188. data/lib/glib-web.rb +9 -9
  189. data/lib/tasks/db.rake +95 -95
  190. metadata +2 -3
@@ -1,78 +1,78 @@
1
- json.title 'Panels'
2
-
3
- render "#{@path_prefix}/nav_menu", json: json, page: page
4
-
5
- page.scroll backgroundColor: '#fafafa', padding: { top: 10, right: 10, bottom: 10, left: 10 }, childViews: ->(scroll) do
6
- scroll.h2 text: 'Vertical panel'
7
- scroll.spacer height: 6
8
- scroll.panels_vertical styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', childViews: ->(panel) do
9
- panel.button text: 'Button1'
10
- panel.button text: 'Button2'
11
- panel.button text: 'Button3'
12
- end
13
-
14
- scroll.spacer height: 20
15
- scroll.h2 text: 'Horizontal panel'
16
- scroll.spacer height: 6
17
- scroll.panels_horizontal styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', childViews: ->(panel) do
18
- panel.button text: 'Button1'
19
- panel.button text: 'Button2'
20
- panel.button text: 'Button3'
21
- end
22
-
23
- scroll.spacer height: 20
24
- scroll.h2 text: 'Split panel'
25
- scroll.spacer height: 6
26
- scroll.panels_split styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', content: ->(split) do
27
- split.left childViews: ->(left) do
28
- left.button text: '1'
29
- end
30
- split.center childViews: ->(center) do
31
- center.button width: 'matchParent', text: '2'
32
- end
33
- split.right childViews: ->(right) do
34
- right.button text: '3'
35
- end
36
- end
37
-
38
-
39
- scroll.spacer height: 20
40
- scroll.h2 text: 'Responsive panel'
41
- scroll.spacer height: 6
42
- scroll.panels_responsive styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', childViews: ->(horizontal) do
43
- horizontal.panels_column lg: { cols: 8 }, backgroundColor: '#c3cad2', childViews: ->(column) do
44
- column.button text: '1'
45
- end
46
- horizontal.panels_column lg: { cols: 4 }, backgroundColor: '#b3bac2', childViews: ->(column) do
47
- column.button text: '2'
48
- end
49
- end
50
-
51
- scroll.spacer height: 20
52
- scroll.h2 text: 'Grid-like layout'
53
- scroll.spacer height: 6
54
- scroll.panels_responsive width: 'matchParent', childViews: ->(horizontal) do
55
- gap = { top: 12, left: 10, right: 10, bottom: 12 }
56
- horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
57
- column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
58
- column.button text: '1'
59
- end
60
- end
61
- horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
62
- column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
63
- column.button text: '2'
64
- end
65
- end
66
- horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
67
- column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
68
- column.button text: '3'
69
- end
70
- end
71
- horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
72
- column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
73
- column.button text: '4'
74
- end
75
- end
76
- end
77
-
78
- end
1
+ json.title 'Panels'
2
+
3
+ render "#{@path_prefix}/nav_menu", json: json, page: page
4
+
5
+ page.scroll backgroundColor: '#fafafa', padding: { top: 10, right: 10, bottom: 10, left: 10 }, childViews: ->(scroll) do
6
+ scroll.h2 text: 'Vertical panel'
7
+ scroll.spacer height: 6
8
+ scroll.panels_vertical styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', childViews: ->(panel) do
9
+ panel.button text: 'Button1'
10
+ panel.button text: 'Button2'
11
+ panel.button text: 'Button3'
12
+ end
13
+
14
+ scroll.spacer height: 20
15
+ scroll.h2 text: 'Horizontal panel'
16
+ scroll.spacer height: 6
17
+ scroll.panels_horizontal styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', childViews: ->(panel) do
18
+ panel.button text: 'Button1'
19
+ panel.button text: 'Button2'
20
+ panel.button text: 'Button3'
21
+ end
22
+
23
+ scroll.spacer height: 20
24
+ scroll.h2 text: 'Split panel'
25
+ scroll.spacer height: 6
26
+ scroll.panels_split styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', content: ->(split) do
27
+ split.left childViews: ->(left) do
28
+ left.button text: '1'
29
+ end
30
+ split.center childViews: ->(center) do
31
+ center.button width: 'matchParent', text: '2'
32
+ end
33
+ split.right childViews: ->(right) do
34
+ right.button text: '3'
35
+ end
36
+ end
37
+
38
+
39
+ scroll.spacer height: 20
40
+ scroll.h2 text: 'Responsive panel'
41
+ scroll.spacer height: 6
42
+ scroll.panels_responsive styleClasses: styleClasses, padding: glib_json_padding_body, width: 'matchParent', childViews: ->(horizontal) do
43
+ horizontal.panels_column lg: { cols: 8 }, backgroundColor: '#c3cad2', childViews: ->(column) do
44
+ column.button text: '1'
45
+ end
46
+ horizontal.panels_column lg: { cols: 4 }, backgroundColor: '#b3bac2', childViews: ->(column) do
47
+ column.button text: '2'
48
+ end
49
+ end
50
+
51
+ scroll.spacer height: 20
52
+ scroll.h2 text: 'Grid-like layout'
53
+ scroll.spacer height: 6
54
+ scroll.panels_responsive width: 'matchParent', childViews: ->(horizontal) do
55
+ gap = { top: 12, left: 10, right: 10, bottom: 12 }
56
+ horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
57
+ column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
58
+ column.button text: '1'
59
+ end
60
+ end
61
+ horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
62
+ column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
63
+ column.button text: '2'
64
+ end
65
+ end
66
+ horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
67
+ column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
68
+ column.button text: '3'
69
+ end
70
+ end
71
+ horizontal.panels_column lg: { cols: 4 }, padding: gap, childViews: ->(column) do
72
+ column.panels_vertical styleClasses: styleClasses, width: 'matchParent', padding: glib_json_padding_body, childViews: ->(column) do
73
+ column.button text: '4'
74
+ end
75
+ end
76
+ end
77
+
78
+ end
@@ -1,4 +1,4 @@
1
- json.title 'Card Panels'
2
-
3
- page = json_ui_page json
4
- render "#{@path_prefix}/panels/styled", json: json, page: page, styleClasses: ['card']
1
+ json.title 'Card Panels'
2
+
3
+ page = json_ui_page json
4
+ render "#{@path_prefix}/panels/styled", json: json, page: page, styleClasses: ['card']
@@ -1,38 +1,38 @@
1
- json.title 'Panels'
2
-
3
- image_url1 = 'https://ichef.bbci.co.uk/news/976/cpsprodpb/18106/production/_97266589_gettyimages-474547165.jpg'
4
- image_url2 = 'https://s.abcnews.com/images/International/Guam03-gty-jrl-170809_16x9_992.jpg'
5
-
6
- json_ui_page json do |page|
7
- render "#{@path_prefix}/nav_menu", json: json, page: page
8
-
9
- page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
10
- scroll.h1 text: 'Carousel with labels'
11
- scroll.panels_carousel width: 'matchParent', childViews: ->(carousel) do
12
- carousel.label text: 'Item 1'
13
- carousel.label text: 'Item 2'
14
- end
15
-
16
- scroll.spacer height: 20
17
- scroll.h1 text: 'Carousel with images'
18
- scroll.panels_carousel width: 'matchParent', childViews: ->(carousel) do
19
- carousel.image url: image_url1, width: 'matchParent'
20
- carousel.image url: image_url2, width: 'matchParent'
21
- end
22
-
23
- scroll.spacer height: 20
24
- scroll.h1 text: 'Carousel with complex layout'
25
- scroll.panels_carousel width: 'matchParent', childViews: ->(carousel) do
26
- height = 480
27
-
28
- carousel.panels_vertical align: 'center', childViews: ->(panel) do
29
- panel.h3 text: 'Item 1'
30
- panel.image height: height, url: image_url1
31
- end
32
- carousel.panels_vertical align: 'center', childViews: ->(panel) do
33
- panel.h3 text: 'Item 2'
34
- panel.image height: height, url: image_url2
35
- end
36
- end
37
- end
38
- end
1
+ json.title 'Panels'
2
+
3
+ image_url1 = 'https://ichef.bbci.co.uk/news/976/cpsprodpb/18106/production/_97266589_gettyimages-474547165.jpg'
4
+ image_url2 = 'https://s.abcnews.com/images/International/Guam03-gty-jrl-170809_16x9_992.jpg'
5
+
6
+ json_ui_page json do |page|
7
+ render "#{@path_prefix}/nav_menu", json: json, page: page
8
+
9
+ page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
10
+ scroll.h1 text: 'Carousel with labels'
11
+ scroll.panels_carousel width: 'matchParent', childViews: ->(carousel) do
12
+ carousel.label text: 'Item 1'
13
+ carousel.label text: 'Item 2'
14
+ end
15
+
16
+ scroll.spacer height: 20
17
+ scroll.h1 text: 'Carousel with images'
18
+ scroll.panels_carousel width: 'matchParent', childViews: ->(carousel) do
19
+ carousel.image url: image_url1, width: 'matchParent'
20
+ carousel.image url: image_url2, width: 'matchParent'
21
+ end
22
+
23
+ scroll.spacer height: 20
24
+ scroll.h1 text: 'Carousel with complex layout'
25
+ scroll.panels_carousel width: 'matchParent', childViews: ->(carousel) do
26
+ height = 480
27
+
28
+ carousel.panels_vertical align: 'center', childViews: ->(panel) do
29
+ panel.h3 text: 'Item 1'
30
+ panel.image height: height, url: image_url1
31
+ end
32
+ carousel.panels_vertical align: 'center', childViews: ->(panel) do
33
+ panel.h3 text: 'Item 2'
34
+ panel.image height: height, url: image_url2
35
+ end
36
+ end
37
+ end
38
+ end
@@ -1,17 +1,17 @@
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.h2 text: 'Thumbnail Template'
8
- scroll.spacer height: 6
9
- scroll.panels_custom template: 'thumbnail', width: 'matchParent', backgroundColor: '#fafafa',
10
- data: { imageUrl: glib_json_image_standard_url, title: 'Title', subtitle: 'Use the same template from list templates' }
11
-
12
- scroll.spacer height: 20
13
- scroll.h2 text: 'Non-existent Template'
14
- scroll.spacer height: 6
15
- scroll.panels_custom template: 'nonExistentTemplate'
16
- end
17
- 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.h2 text: 'Thumbnail Template'
8
+ scroll.spacer height: 6
9
+ scroll.panels_custom template: 'thumbnail', width: 'matchParent', backgroundColor: '#fafafa',
10
+ data: { imageUrl: glib_json_image_standard_url, title: 'Title', subtitle: 'Use the same template from list templates' }
11
+
12
+ scroll.spacer height: 20
13
+ scroll.h2 text: 'Non-existent Template'
14
+ scroll.spacer height: 6
15
+ scroll.panels_custom template: 'nonExistentTemplate'
16
+ end
17
+ end
@@ -1,59 +1,59 @@
1
- json.title 'Panels'
2
-
3
- page = json_ui_page json
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_flow width: 300, backgroundColor: '#b3bac2', childViews: ->(panel) do
9
- panel.button text: '1'
10
- panel.button text: '2'
11
- panel.button text: '3'
12
- panel.button text: '4'
13
- panel.button text: '5'
14
- panel.button text: '6'
15
- panel.button text: '7'
16
- end
17
-
18
- scroll.label text: "\n"
19
- scroll.h1 text: 'Spacers'
20
- scroll.panels_flow width: 300, backgroundColor: '#b3bac2', childViews: ->(panel) do
21
- panel.button text: '1'
22
- panel.spacer width: 30
23
- panel.button text: '2'
24
- panel.spacer width: 30
25
- panel.button text: '3'
26
- panel.spacer width: 30
27
- panel.button text: '4'
28
- panel.spacer width: 30
29
- panel.button text: '5'
30
- end
31
-
32
- scroll.label text: "\n"
33
- scroll.h1 text: 'Inner Paddings'
34
- scroll.panels_flow innerPadding: { top: 10, bottom: 10, left: 10, right: 10 }, width: 300, backgroundColor: '#b3bac2', childViews: ->(panel) do
35
- panel.button text: '1'
36
- panel.button text: '2'
37
- panel.button text: '3'
38
- panel.button text: '4'
39
- panel.button text: '5'
40
- end
41
-
42
- # scroll.label text: "\n"
43
- # scroll.h1 text: 'Alignments'
44
- # scroll.panels_horizontal align: 'top', childViews: ->(panel) do
45
- # panel.button height: 50, text: 'Button'
46
- # panel.spacer width: 10
47
- # panel.label text: 'top'
48
- # end
49
- # scroll.panels_horizontal align: 'middle', childViews: ->(panel) do
50
- # panel.button height: 50, text: 'Button'
51
- # panel.spacer width: 10
52
- # panel.label text: 'middle'
53
- # end
54
- # scroll.panels_horizontal align: 'bottom', childViews: ->(panel) do
55
- # panel.button height: 50, text: 'Button'
56
- # panel.spacer width: 10
57
- # panel.label text: 'bottom'
58
- # end
59
- end
1
+ json.title 'Panels'
2
+
3
+ page = json_ui_page json
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_flow width: 300, backgroundColor: '#b3bac2', childViews: ->(panel) do
9
+ panel.button text: '1'
10
+ panel.button text: '2'
11
+ panel.button text: '3'
12
+ panel.button text: '4'
13
+ panel.button text: '5'
14
+ panel.button text: '6'
15
+ panel.button text: '7'
16
+ end
17
+
18
+ scroll.label text: "\n"
19
+ scroll.h1 text: 'Spacers'
20
+ scroll.panels_flow width: 300, backgroundColor: '#b3bac2', childViews: ->(panel) do
21
+ panel.button text: '1'
22
+ panel.spacer width: 30
23
+ panel.button text: '2'
24
+ panel.spacer width: 30
25
+ panel.button text: '3'
26
+ panel.spacer width: 30
27
+ panel.button text: '4'
28
+ panel.spacer width: 30
29
+ panel.button text: '5'
30
+ end
31
+
32
+ scroll.label text: "\n"
33
+ scroll.h1 text: 'Inner Paddings'
34
+ scroll.panels_flow innerPadding: { top: 10, bottom: 10, left: 10, right: 10 }, width: 300, backgroundColor: '#b3bac2', childViews: ->(panel) do
35
+ panel.button text: '1'
36
+ panel.button text: '2'
37
+ panel.button text: '3'
38
+ panel.button text: '4'
39
+ panel.button text: '5'
40
+ end
41
+
42
+ # scroll.label text: "\n"
43
+ # scroll.h1 text: 'Alignments'
44
+ # scroll.panels_horizontal align: 'top', childViews: ->(panel) do
45
+ # panel.button height: 50, text: 'Button'
46
+ # panel.spacer width: 10
47
+ # panel.label text: 'top'
48
+ # end
49
+ # scroll.panels_horizontal align: 'middle', childViews: ->(panel) do
50
+ # panel.button height: 50, text: 'Button'
51
+ # panel.spacer width: 10
52
+ # panel.label text: 'middle'
53
+ # end
54
+ # scroll.panels_horizontal align: 'bottom', childViews: ->(panel) do
55
+ # panel.button height: 50, text: 'Button'
56
+ # panel.spacer width: 10
57
+ # panel.label text: 'bottom'
58
+ # end
59
+ end
@@ -1,91 +1,91 @@
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_horizontal backgroundColor: '#b3bac2', childViews: ->(panel) do
9
- panel.button text: '1'
10
- panel.button text: '2'
11
- panel.button text: '3'
12
- end
13
-
14
- scroll.label text: "\n"
15
- scroll.h1 text: 'Equal filling'
16
- scroll.panels_horizontal backgroundColor: '#b3bac2', width: 300, distribution: 'fillEqually', childViews: ->(panel) do
17
- panel.button text: '1'
18
- panel.button text: '2', height: 50
19
- panel.button text: '3', height: 70
20
- end
21
-
22
- scroll.label text: "\n"
23
- scroll.h1 text: 'Equal spacing'
24
- scroll.panels_horizontal backgroundColor: '#b3bac2', width: 300, distribution: 'spaceEqually', childViews: ->(panel) do
25
- panel.button text: '1'
26
- panel.button text: '2'
27
- panel.button text: '3'
28
- end
29
-
30
- scroll.label text: "\n"
31
- scroll.h1 text: 'Vertical panel combo'
32
- scroll.panels_horizontal distribution: 'spaceEqually', childViews: ->(panel) do
33
- panel.button text: '1'
34
- panel.panels_vertical childViews: ->(v) do
35
- v.button text: 'A'
36
- v.button text: 'B'
37
- end
38
- panel.button text: '3'
39
- end
40
-
41
- scroll.label text: "\n"
42
- scroll.h1 text: 'Vertical panel combo (equal filling)'
43
- scroll.panels_horizontal width: 'matchParent', distribution: 'fillEqually', childViews: ->(panel) do
44
- panel.button text: '1'
45
- panel.panels_vertical childViews: ->(v) do
46
- v.button text: 'A'
47
- v.button text: 'B'
48
- end
49
- panel.button text: '3'
50
- end
51
-
52
- scroll.label text: "\n"
53
- scroll.h1 text: 'Vertical panel combo (equal spacing)'
54
- scroll.panels_horizontal width: 'matchParent', distribution: 'spaceEqually', childViews: ->(panel) do
55
- panel.button text: '1'
56
- panel.panels_vertical childViews: ->(v) do
57
- v.button text: 'A'
58
- v.button text: 'B'
59
- end
60
- panel.button text: '3'
61
- end
62
-
63
- scroll.label text: "\n"
64
- scroll.h1 text: 'Spacers'
65
- scroll.panels_horizontal width: 'matchParent', childViews: ->(panel) do
66
- panel.button text: '1'
67
- panel.spacer width: 10
68
- panel.button text: '2'
69
- panel.spacer width: 50
70
- panel.button text: '3'
71
- end
72
-
73
- scroll.label text: "\n"
74
- scroll.h1 text: 'Alignments'
75
- scroll.panels_horizontal align: 'top', childViews: ->(panel) do
76
- panel.button height: 50, text: 'Button'
77
- panel.spacer width: 10
78
- panel.label text: 'top'
79
- end
80
- scroll.panels_horizontal align: 'middle', childViews: ->(panel) do
81
- panel.button height: 50, text: 'Button'
82
- panel.spacer width: 10
83
- panel.label text: 'middle'
84
- end
85
- scroll.panels_horizontal align: 'bottom', childViews: ->(panel) do
86
- panel.button height: 50, text: 'Button'
87
- panel.spacer width: 10
88
- panel.label text: 'bottom'
89
- end
90
- end
91
- 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_horizontal backgroundColor: '#b3bac2', childViews: ->(panel) do
9
+ panel.button text: '1'
10
+ panel.button text: '2'
11
+ panel.button text: '3'
12
+ end
13
+
14
+ scroll.label text: "\n"
15
+ scroll.h1 text: 'Equal filling'
16
+ scroll.panels_horizontal backgroundColor: '#b3bac2', width: 300, distribution: 'fillEqually', childViews: ->(panel) do
17
+ panel.button text: '1'
18
+ panel.button text: '2', height: 50
19
+ panel.button text: '3', height: 70
20
+ end
21
+
22
+ scroll.label text: "\n"
23
+ scroll.h1 text: 'Equal spacing'
24
+ scroll.panels_horizontal backgroundColor: '#b3bac2', width: 300, distribution: 'spaceEqually', childViews: ->(panel) do
25
+ panel.button text: '1'
26
+ panel.button text: '2'
27
+ panel.button text: '3'
28
+ end
29
+
30
+ scroll.label text: "\n"
31
+ scroll.h1 text: 'Vertical panel combo'
32
+ scroll.panels_horizontal distribution: 'spaceEqually', childViews: ->(panel) do
33
+ panel.button text: '1'
34
+ panel.panels_vertical childViews: ->(v) do
35
+ v.button text: 'A'
36
+ v.button text: 'B'
37
+ end
38
+ panel.button text: '3'
39
+ end
40
+
41
+ scroll.label text: "\n"
42
+ scroll.h1 text: 'Vertical panel combo (equal filling)'
43
+ scroll.panels_horizontal width: 'matchParent', distribution: 'fillEqually', childViews: ->(panel) do
44
+ panel.button text: '1'
45
+ panel.panels_vertical childViews: ->(v) do
46
+ v.button text: 'A'
47
+ v.button text: 'B'
48
+ end
49
+ panel.button text: '3'
50
+ end
51
+
52
+ scroll.label text: "\n"
53
+ scroll.h1 text: 'Vertical panel combo (equal spacing)'
54
+ scroll.panels_horizontal width: 'matchParent', distribution: 'spaceEqually', childViews: ->(panel) do
55
+ panel.button text: '1'
56
+ panel.panels_vertical childViews: ->(v) do
57
+ v.button text: 'A'
58
+ v.button text: 'B'
59
+ end
60
+ panel.button text: '3'
61
+ end
62
+
63
+ scroll.label text: "\n"
64
+ scroll.h1 text: 'Spacers'
65
+ scroll.panels_horizontal width: 'matchParent', childViews: ->(panel) do
66
+ panel.button text: '1'
67
+ panel.spacer width: 10
68
+ panel.button text: '2'
69
+ panel.spacer width: 50
70
+ panel.button text: '3'
71
+ end
72
+
73
+ scroll.label text: "\n"
74
+ scroll.h1 text: 'Alignments'
75
+ scroll.panels_horizontal align: 'top', childViews: ->(panel) do
76
+ panel.button height: 50, text: 'Button'
77
+ panel.spacer width: 10
78
+ panel.label text: 'top'
79
+ end
80
+ scroll.panels_horizontal align: 'middle', childViews: ->(panel) do
81
+ panel.button height: 50, text: 'Button'
82
+ panel.spacer width: 10
83
+ panel.label text: 'middle'
84
+ end
85
+ scroll.panels_horizontal align: 'bottom', childViews: ->(panel) do
86
+ panel.button height: 50, text: 'Button'
87
+ panel.spacer width: 10
88
+ panel.label text: 'bottom'
89
+ end
90
+ end
91
+ end