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.
- checksums.yaml +4 -4
- data/app/channels/glib/channel/is_typing_channel.rb +34 -34
- data/app/channels/glib/channel/online_channel.rb +36 -36
- data/app/controllers/concerns/glib/analytics/funnel.rb +61 -61
- data/app/controllers/concerns/glib/auth/policy.rb +149 -149
- data/app/controllers/concerns/glib/json/dynamic_text.rb +126 -126
- data/app/controllers/concerns/glib/json/libs.rb +149 -149
- data/app/controllers/concerns/glib/json/new_dynamic_text.rb +122 -122
- data/app/controllers/concerns/glib/json/transformation.rb +11 -11
- data/app/controllers/concerns/glib/json/traversal.rb +92 -92
- data/app/controllers/concerns/glib/json/ui.rb +88 -88
- data/app/controllers/concerns/glib/json/validation.rb +13 -13
- data/app/controllers/glib/home_controller.rb +54 -54
- data/app/helpers/glib/app_feature_support_helper.rb +16 -16
- data/app/helpers/glib/dynamic_images_helper.rb +55 -55
- data/app/helpers/glib/dynamic_texts_helper.rb +42 -42
- data/app/helpers/glib/enum_helper.rb +18 -18
- data/app/helpers/glib/forms_helper.rb +15 -15
- data/app/helpers/glib/json_ui/abstract_builder.rb +309 -309
- data/app/helpers/glib/json_ui/action_builder/dialogs.rb +58 -58
- data/app/helpers/glib/json_ui/action_builder/http.rb +39 -39
- data/app/helpers/glib/json_ui/action_builder/iap.rb +15 -15
- data/app/helpers/glib/json_ui/action_builder/panels.rb +14 -14
- data/app/helpers/glib/json_ui/action_builder/sheets.rb +15 -15
- data/app/helpers/glib/json_ui/action_builder/snackbars.rb +41 -41
- data/app/helpers/glib/json_ui/action_builder/windows.rb +38 -38
- data/app/helpers/glib/json_ui/action_builder.rb +140 -140
- data/app/helpers/glib/json_ui/analytics_helper.rb +17 -17
- data/app/helpers/glib/json_ui/dynamic_field_builders.rb +25 -25
- data/app/helpers/glib/json_ui/generic_builders.rb +28 -28
- data/app/helpers/glib/json_ui/list_builders.rb +110 -110
- data/app/helpers/glib/json_ui/menu_builder.rb +96 -94
- data/app/helpers/glib/json_ui/page_helper.rb +221 -221
- data/app/helpers/glib/json_ui/response_helper.rb +25 -25
- data/app/helpers/glib/json_ui/styling_helper.rb +55 -55
- data/app/helpers/glib/json_ui/table_builders.rb +74 -74
- data/app/helpers/glib/json_ui/view_builder/banners.rb +26 -26
- data/app/helpers/glib/json_ui/view_builder/charts.rb +33 -33
- data/app/helpers/glib/json_ui/view_builder/fields.rb +291 -291
- data/app/helpers/glib/json_ui/view_builder/iap.rb +11 -11
- data/app/helpers/glib/json_ui/view_builder/panels.rb +258 -258
- data/app/helpers/glib/json_ui/view_builder.rb +248 -247
- data/app/helpers/glib/urls_helper.rb +12 -12
- data/app/models/concerns/glib/soft_deletable.rb +68 -68
- data/app/models/glib/active_storage/attachment.rb +9 -9
- data/app/models/glib/active_storage/blob.rb +9 -9
- data/app/models/glib/application_record.rb +18 -18
- data/app/models/glib/dynamic_text_record.rb +9 -9
- data/app/models/glib/text.rb +95 -95
- data/app/policies/glib/application_policy.rb +191 -191
- data/app/validators/email_typo_validator.rb +38 -38
- data/app/validators/email_validator.rb +7 -7
- data/app/validators/url_validator.rb +20 -20
- data/app/views/json_ui/garage/_nav_menu.json.jbuilder +70 -70
- data/app/views/json_ui/garage/actions/_dialogs.json.jbuilder +104 -104
- data/app/views/json_ui/garage/actions/_http.json.jbuilder +24 -24
- data/app/views/json_ui/garage/actions/_panels.json.jbuilder +18 -18
- data/app/views/json_ui/garage/actions/_reload.json.jbuilder +17 -17
- data/app/views/json_ui/garage/actions/_sheets.json.jbuilder +18 -18
- data/app/views/json_ui/garage/actions/_snackbars.json.jbuilder +33 -33
- data/app/views/json_ui/garage/actions/_timeouts.json.jbuilder +24 -24
- data/app/views/json_ui/garage/actions/_windows.json.jbuilder +24 -24
- data/app/views/json_ui/garage/actions/dialogs_oauth_post.json.jbuilder +6 -6
- data/app/views/json_ui/garage/actions/index.json.jbuilder +24 -24
- data/app/views/json_ui/garage/forms/_alert_post_data.json.jbuilder +10 -10
- data/app/views/json_ui/garage/forms/basic.json.jbuilder +21 -21
- data/app/views/json_ui/garage/forms/basic_post.json.jbuilder +8 -8
- data/app/views/json_ui/garage/forms/checkboxes.json.jbuilder +43 -43
- data/app/views/json_ui/garage/forms/conditional_value.json.jbuilder +36 -36
- data/app/views/json_ui/garage/forms/dynamic_group.json.jbuilder +39 -39
- data/app/views/json_ui/garage/forms/dynamic_select.json.jbuilder +24 -24
- data/app/views/json_ui/garage/forms/dynamic_select_data.json.jbuilder +38 -38
- data/app/views/json_ui/garage/forms/file_upload.json.jbuilder +37 -37
- data/app/views/json_ui/garage/forms/floating_submit.json.jbuilder +19 -19
- data/app/views/json_ui/garage/forms/generic_post.json.jbuilder +3 -3
- data/app/views/json_ui/garage/forms/get_request.json.jbuilder +27 -27
- data/app/views/json_ui/garage/forms/index.json.jbuilder +116 -116
- data/app/views/json_ui/garage/forms/new_rich_text.json.jbuilder +40 -40
- data/app/views/json_ui/garage/forms/online_participant1.json.jbuilder +25 -25
- data/app/views/json_ui/garage/forms/online_participant2.json.jbuilder +25 -25
- data/app/views/json_ui/garage/forms/payments.json.jbuilder +34 -34
- data/app/views/json_ui/garage/forms/pickers.json.jbuilder +81 -81
- data/app/views/json_ui/garage/forms/ratings.json.jbuilder +49 -49
- data/app/views/json_ui/garage/forms/rich_text.json.jbuilder +40 -40
- data/app/views/json_ui/garage/forms/selects.json.jbuilder +91 -91
- data/app/views/json_ui/garage/forms/show_hide.json.jbuilder +150 -150
- data/app/views/json_ui/garage/forms/styled_boxes.json.jbuilder +35 -35
- data/app/views/json_ui/garage/forms/submission_flow.json.jbuilder +17 -17
- data/app/views/json_ui/garage/forms/submission_flow_post.json.jbuilder +26 -26
- data/app/views/json_ui/garage/forms/submission_indicator.json.jbuilder +63 -63
- data/app/views/json_ui/garage/forms/submission_indicator_post.json.jbuilder +25 -25
- data/app/views/json_ui/garage/forms/text_validation.json.jbuilder +65 -65
- data/app/views/json_ui/garage/forms/timers.json.jbuilder +120 -120
- data/app/views/json_ui/garage/home/blank.json.jbuilder +10 -10
- data/app/views/json_ui/garage/home/index.json.jbuilder +36 -36
- data/app/views/json_ui/garage/home/slow.json.jbuilder +11 -11
- data/app/views/json_ui/garage/lists/_autoload_section.json.jbuilder +30 -30
- data/app/views/json_ui/garage/lists/autoload_all.json.jbuilder +32 -32
- data/app/views/json_ui/garage/lists/autoload_as_needed.json.jbuilder +35 -35
- data/app/views/json_ui/garage/lists/chat_ui.json.jbuilder +94 -94
- data/app/views/json_ui/garage/lists/edit_actions.json.jbuilder +62 -62
- data/app/views/json_ui/garage/lists/fab.json.jbuilder +12 -12
- data/app/views/json_ui/garage/lists/index.json.jbuilder +38 -38
- data/app/views/json_ui/garage/lists/reordering.json.jbuilder +34 -34
- data/app/views/json_ui/garage/lists/templating.json.jbuilder +35 -35
- data/app/views/json_ui/garage/notifications/action_cable.json.jbuilder +114 -114
- data/app/views/json_ui/garage/notifications/android_post.json.jbuilder +48 -48
- data/app/views/json_ui/garage/notifications/index.json.jbuilder +36 -36
- data/app/views/json_ui/garage/notifications/web_socket.json.jbuilder +60 -60
- data/app/views/json_ui/garage/pages/flat_centered.json.jbuilder +29 -29
- data/app/views/json_ui/garage/pages/full_width.json.jbuilder +29 -29
- data/app/views/json_ui/garage/pages/full_width_height.json.jbuilder +16 -16
- data/app/views/json_ui/garage/pages/index.json.jbuilder +62 -62
- data/app/views/json_ui/garage/pages/layout.json.jbuilder +18 -18
- data/app/views/json_ui/garage/pages/lifecycle_hooks.json.jbuilder +13 -13
- data/app/views/json_ui/garage/pages/loading_indicator.json.jbuilder +10 -10
- data/app/views/json_ui/garage/pages/nav_buttons.json.jbuilder +21 -21
- data/app/views/json_ui/garage/pages/nested_scroll.json.jbuilder +40 -40
- data/app/views/json_ui/garage/pages/tab_bar.json.jbuilder +66 -31
- data/app/views/json_ui/garage/panels/_styled.json.jbuilder +78 -78
- data/app/views/json_ui/garage/panels/card.json.jbuilder +4 -4
- data/app/views/json_ui/garage/panels/carousel.json.jbuilder +38 -38
- data/app/views/json_ui/garage/panels/custom.json.jbuilder +17 -17
- data/app/views/json_ui/garage/panels/flow.json.jbuilder +59 -59
- data/app/views/json_ui/garage/panels/horizontal.json.jbuilder +91 -91
- data/app/views/json_ui/garage/panels/index.json.jbuilder +138 -138
- data/app/views/json_ui/garage/panels/outlined.json.jbuilder +4 -4
- data/app/views/json_ui/garage/panels/responsive.json.jbuilder +98 -98
- data/app/views/json_ui/garage/panels/split.json.jbuilder +182 -182
- data/app/views/json_ui/garage/panels/ul.json.jbuilder +33 -33
- data/app/views/json_ui/garage/panels/vertical.json.jbuilder +55 -55
- data/app/views/json_ui/garage/panels/web.json.jbuilder +15 -15
- data/app/views/json_ui/garage/services/dynamic_text.json.jbuilder +13 -13
- data/app/views/json_ui/garage/services/image.json.jbuilder +47 -47
- data/app/views/json_ui/garage/services/index.json.jbuilder +17 -17
- data/app/views/json_ui/garage/tables/_autoload_section.json.jbuilder +16 -16
- data/app/views/json_ui/garage/tables/autoload_all.json.jbuilder +43 -43
- data/app/views/json_ui/garage/tables/autoload_as_needed.json.jbuilder +50 -50
- data/app/views/json_ui/garage/tables/export_import.json.jbuilder +29 -29
- data/app/views/json_ui/garage/tables/horizontal_scroll.json.jbuilder +26 -26
- data/app/views/json_ui/garage/tables/index.json.jbuilder +25 -25
- data/app/views/json_ui/garage/tables/layout.json.jbuilder +40 -40
- data/app/views/json_ui/garage/views/_chart_data.json.jbuilder +17 -17
- data/app/views/json_ui/garage/views/banners.json.jbuilder +67 -63
- data/app/views/json_ui/garage/views/calendar_data.json.jbuilder +30 -30
- data/app/views/json_ui/garage/views/charts.json.jbuilder +115 -115
- data/app/views/json_ui/garage/views/controls.json.jbuilder +37 -37
- data/app/views/json_ui/garage/views/iap.json.jbuilder +21 -21
- data/app/views/json_ui/garage/views/icon_names.json.jbuilder +1450 -1450
- data/app/views/json_ui/garage/views/icons.json.jbuilder +15 -15
- data/app/views/json_ui/garage/views/images.json.jbuilder +89 -89
- data/app/views/json_ui/garage/views/index.json.jbuilder +83 -83
- data/app/views/json_ui/garage/views/links.json.jbuilder +70 -70
- data/app/views/json_ui/garage/views/map_cluster_data.json.jbuilder +41 -41
- data/app/views/json_ui/garage/views/map_data.json.jbuilder +51 -51
- data/app/views/json_ui/garage/views/maps.json.jbuilder +31 -31
- data/app/views/json_ui/garage/views/markdowns.json.jbuilder +41 -41
- data/app/views/json_ui/garage/views/misc.json.jbuilder +34 -34
- data/app/views/json_ui/garage/views/progress.json.jbuilder +31 -31
- data/app/views/json_ui/garage/views/texts.json.jbuilder +35 -35
- data/app/views/layouts/json_ui/renderer.html.erb +35 -35
- data/config/routes.rb +7 -7
- data/lib/generators/glib/install_generator.rb +24 -24
- data/lib/generators/templates/20191017062519_create_texts.rb +12 -12
- data/lib/generators/templates/20191024063257_add_scope_to_texts.rb +7 -7
- data/lib/generators/templates/20191112095018_add_lang_to_texts.rb +7 -7
- data/lib/generators/templates/20191126071051_create_active_storage_tables.active_storage.rb +27 -27
- data/lib/generators/templates/database.yml +107 -107
- data/lib/generators/templates/dynamic_text.rb +2 -2
- data/lib/glib/crypt/utils.rb +26 -26
- data/lib/glib/dynamic_text/config.rb +21 -21
- data/lib/glib/engine.rb +7 -7
- data/lib/glib/json_crawler/action_crawler.rb +23 -23
- data/lib/glib/json_crawler/action_crawlers/action_http.rb +11 -11
- data/lib/glib/json_crawler/action_crawlers/forms_submit.rb +48 -48
- data/lib/glib/json_crawler/action_crawlers/menu.rb +12 -12
- data/lib/glib/json_crawler/action_crawlers/nav_initiate.rb +19 -19
- data/lib/glib/json_crawler/action_crawlers/run_multiple.rb +13 -13
- data/lib/glib/json_crawler/action_crawlers/windows_open.rb +33 -33
- data/lib/glib/json_crawler/coverage.rb +20 -20
- data/lib/glib/json_crawler/http.rb +120 -120
- data/lib/glib/json_crawler/router.rb +90 -90
- data/lib/glib/json_crawler.rb +11 -11
- data/lib/glib/mailer_tester.rb +36 -36
- data/lib/glib/test_helpers.rb +52 -52
- data/lib/glib/value.rb +7 -7
- data/lib/glib/version.rb +5 -5
- data/lib/glib-web.rb +9 -9
- data/lib/tasks/db.rake +95 -95
- metadata +2 -3
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
json_ui_page json do |page|
|
|
4
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
-
|
|
6
|
-
page.template 'flatCentered'
|
|
7
|
-
|
|
8
|
-
page.header childViews: ->(header) do
|
|
9
|
-
header.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
10
|
-
vertical.h1 text: 'Header'
|
|
11
|
-
end
|
|
12
|
-
header.spacer height: 20
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
page.footer childViews: ->(footer) do
|
|
16
|
-
footer.spacer height: 20
|
|
17
|
-
footer.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
18
|
-
vertical.h1 text: 'Footer'
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
page.body childViews: ->(scroll) do
|
|
23
|
-
scroll.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
24
|
-
(1..100).each do |index|
|
|
25
|
-
scroll.label text: 'Content'
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
json_ui_page json do |page|
|
|
4
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
+
|
|
6
|
+
page.template 'flatCentered'
|
|
7
|
+
|
|
8
|
+
page.header childViews: ->(header) do
|
|
9
|
+
header.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
10
|
+
vertical.h1 text: 'Header'
|
|
11
|
+
end
|
|
12
|
+
header.spacer height: 20
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
page.footer childViews: ->(footer) do
|
|
16
|
+
footer.spacer height: 20
|
|
17
|
+
footer.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
18
|
+
vertical.h1 text: 'Footer'
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
page.body childViews: ->(scroll) do
|
|
23
|
+
scroll.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
24
|
+
(1..100).each do |index|
|
|
25
|
+
scroll.label text: 'Content'
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
json_ui_page json do |page|
|
|
4
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
-
|
|
6
|
-
page.template 'fullWidth'
|
|
7
|
-
|
|
8
|
-
page.header childViews: ->(header) do
|
|
9
|
-
header.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
10
|
-
vertical.h1 text: 'Header'
|
|
11
|
-
end
|
|
12
|
-
header.spacer height: 10
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
page.footer childViews: ->(footer) do
|
|
16
|
-
footer.spacer height: 10
|
|
17
|
-
footer.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
18
|
-
vertical.h1 text: 'Footer'
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
page.body childViews: ->(scroll) do
|
|
23
|
-
scroll.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
24
|
-
(1..100).each do |index|
|
|
25
|
-
vertical.label text: 'Content'
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
json_ui_page json do |page|
|
|
4
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
+
|
|
6
|
+
page.template 'fullWidth'
|
|
7
|
+
|
|
8
|
+
page.header childViews: ->(header) do
|
|
9
|
+
header.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
10
|
+
vertical.h1 text: 'Header'
|
|
11
|
+
end
|
|
12
|
+
header.spacer height: 10
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
page.footer childViews: ->(footer) do
|
|
16
|
+
footer.spacer height: 10
|
|
17
|
+
footer.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
18
|
+
vertical.h1 text: 'Footer'
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
page.body childViews: ->(scroll) do
|
|
23
|
+
scroll.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
24
|
+
(1..100).each do |index|
|
|
25
|
+
vertical.label text: 'Content'
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
page = json_ui_page json
|
|
4
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
-
|
|
6
|
-
page.header padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(header) do
|
|
7
|
-
header.h1 text: 'Header'
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
page.body height: 'matchParent', padding: glib_json_padding_body, childViews: ->(body) do
|
|
11
|
-
body.button width: 'matchParent', height: 'matchParent', text: 'Full Width/Height'
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
page.footer height: 80, padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(footer) do
|
|
15
|
-
footer.h1 text: 'Footer'
|
|
16
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
page = json_ui_page json
|
|
4
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
+
|
|
6
|
+
page.header padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(header) do
|
|
7
|
+
header.h1 text: 'Header'
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
page.body height: 'matchParent', padding: glib_json_padding_body, childViews: ->(body) do
|
|
11
|
+
body.button width: 'matchParent', height: 'matchParent', text: 'Full Width/Height'
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
page.footer height: 80, padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(footer) do
|
|
15
|
+
footer.h1 text: 'Footer'
|
|
16
|
+
end
|
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
json_ui_page json do |page|
|
|
4
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page, top_nav: true
|
|
5
|
-
|
|
6
|
-
page.list sections: [
|
|
7
|
-
->(section) do
|
|
8
|
-
section.rows builder: ->(template) do
|
|
9
|
-
template.thumbnail title: 'Hamburger Layout', onClick: ->(action) do
|
|
10
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/layout')
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
template.thumbnail title: 'Full Width/Height', onClick: ->(action) do
|
|
14
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/full_width_height')
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
template.thumbnail title: 'Tab Bar', onClick: ->(action) do
|
|
18
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/tab_bar')
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
template.thumbnail title: 'Nav Buttons', onClick: ->(action) do
|
|
22
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/nav_buttons')
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
template.thumbnail title: 'Loading Indicator', onClick: ->(action) do
|
|
26
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/loading_indicator')
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
template.thumbnail title: 'Lifecycle Hooks', onClick: ->(action) do
|
|
30
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/lifecycle_hooks')
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
end,
|
|
34
|
-
->(section) do
|
|
35
|
-
section.header padding: glib_json_padding_list, childViews: ->(header) do
|
|
36
|
-
header.h2 text: 'Templates (Web Only)'
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
section.rows builder: ->(template) do
|
|
40
|
-
template.thumbnail title: 'Flat Centered', onClick: ->(action) do
|
|
41
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/flat_centered')
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
template.thumbnail title: 'Full Width', onClick: ->(action) do
|
|
45
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/full_width')
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end,
|
|
49
|
-
->(section) do
|
|
50
|
-
section.header padding: glib_json_padding_list, childViews: ->(header) do
|
|
51
|
-
header.h2 text: 'Misc (Web Only)'
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
section.rows builder: ->(template) do
|
|
55
|
-
template.thumbnail title: 'Nested Scroll', onClick: ->(action) do
|
|
56
|
-
action.windows_open url: json_ui_garage_url(path: 'pages/nested_scroll')
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
end
|
|
60
|
-
]
|
|
61
|
-
|
|
62
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
json_ui_page json do |page|
|
|
4
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page, top_nav: true
|
|
5
|
+
|
|
6
|
+
page.list sections: [
|
|
7
|
+
->(section) do
|
|
8
|
+
section.rows builder: ->(template) do
|
|
9
|
+
template.thumbnail title: 'Hamburger Layout', onClick: ->(action) do
|
|
10
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/layout')
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
template.thumbnail title: 'Full Width/Height', onClick: ->(action) do
|
|
14
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/full_width_height')
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
template.thumbnail title: 'Tab Bar', onClick: ->(action) do
|
|
18
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/tab_bar')
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
template.thumbnail title: 'Nav Buttons', onClick: ->(action) do
|
|
22
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/nav_buttons')
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
template.thumbnail title: 'Loading Indicator', onClick: ->(action) do
|
|
26
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/loading_indicator')
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
template.thumbnail title: 'Lifecycle Hooks', onClick: ->(action) do
|
|
30
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/lifecycle_hooks')
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end,
|
|
34
|
+
->(section) do
|
|
35
|
+
section.header padding: glib_json_padding_list, childViews: ->(header) do
|
|
36
|
+
header.h2 text: 'Templates (Web Only)'
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
section.rows builder: ->(template) do
|
|
40
|
+
template.thumbnail title: 'Flat Centered', onClick: ->(action) do
|
|
41
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/flat_centered')
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
template.thumbnail title: 'Full Width', onClick: ->(action) do
|
|
45
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/full_width')
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end,
|
|
49
|
+
->(section) do
|
|
50
|
+
section.header padding: glib_json_padding_list, childViews: ->(header) do
|
|
51
|
+
header.h2 text: 'Misc (Web Only)'
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
section.rows builder: ->(template) do
|
|
55
|
+
template.thumbnail title: 'Nested Scroll', onClick: ->(action) do
|
|
56
|
+
action.windows_open url: json_ui_garage_url(path: 'pages/nested_scroll')
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
]
|
|
61
|
+
|
|
62
|
+
end
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
page = json_ui_page json
|
|
4
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
-
|
|
6
|
-
page.header padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(header) do
|
|
7
|
-
header.h1 text: 'Header'
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
page.footer padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(footer) do
|
|
11
|
-
footer.h1 text: 'Footer'
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
15
|
-
(1..100).each do |index|
|
|
16
|
-
scroll.label text: 'Content'
|
|
17
|
-
end
|
|
18
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
page = json_ui_page json
|
|
4
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
+
|
|
6
|
+
page.header padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(header) do
|
|
7
|
+
header.h1 text: 'Header'
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
page.footer padding: glib_json_padding_body, backgroundColor: '#b3bac2', childViews: ->(footer) do
|
|
11
|
+
footer.h1 text: 'Footer'
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
15
|
+
(1..100).each do |index|
|
|
16
|
+
scroll.label text: 'Content'
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
page = json_ui_page json
|
|
4
|
-
|
|
5
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
6
|
-
|
|
7
|
-
page.on load: ->(action) do
|
|
8
|
-
action.dialogs_alert message: 'This is an onLoad action'
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
12
|
-
scroll.label text: 'A dialog should appear automatically.'
|
|
13
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
page = json_ui_page json
|
|
4
|
+
|
|
5
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
6
|
+
|
|
7
|
+
page.on load: ->(action) do
|
|
8
|
+
action.dialogs_alert message: 'This is an onLoad action'
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
12
|
+
scroll.label text: 'A dialog should appear automatically.'
|
|
13
|
+
end
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
sleep 1
|
|
2
|
-
|
|
3
|
-
json.title 'Pages'
|
|
4
|
-
|
|
5
|
-
page = json_ui_page json
|
|
6
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
7
|
-
|
|
8
|
-
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
9
|
-
scroll.label text: 'On the web, the loading indicator should be show on the browser tab.'
|
|
10
|
-
end
|
|
1
|
+
sleep 1
|
|
2
|
+
|
|
3
|
+
json.title 'Pages'
|
|
4
|
+
|
|
5
|
+
page = json_ui_page json
|
|
6
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
7
|
+
|
|
8
|
+
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
9
|
+
scroll.label text: 'On the web, the loading indicator should be show on the browser tab.'
|
|
10
|
+
end
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
page = json_ui_page json
|
|
4
|
-
|
|
5
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
6
|
-
|
|
7
|
-
page.navBar backgroundColor: '#a8c4e3', color: '#ffffff', rightButtons: ->(menu) do
|
|
8
|
-
menu.button icon: 'search', text: 'Search', onClick: ->(action) do
|
|
9
|
-
action.dialogs_alert message: 'Perform some action'
|
|
10
|
-
end
|
|
11
|
-
menu.button icon: { name: 'star', badge: { text: '1', backgroundColor: '#ff0000' } }, onClick: ->(action) do
|
|
12
|
-
action.dialogs_alert message: 'Perform some action'
|
|
13
|
-
end
|
|
14
|
-
menu.button icon: { name: 'map', badge: '2' }, onClick: ->(action) do
|
|
15
|
-
action.dialogs_alert message: 'Perform some action'
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
20
|
-
scroll.label text: 'See the right menu buttons on the nav bar'
|
|
21
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
page = json_ui_page json
|
|
4
|
+
|
|
5
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
6
|
+
|
|
7
|
+
page.navBar backgroundColor: '#a8c4e3', color: '#ffffff', rightButtons: ->(menu) do
|
|
8
|
+
menu.button icon: 'search', text: 'Search', onClick: ->(action) do
|
|
9
|
+
action.dialogs_alert message: 'Perform some action'
|
|
10
|
+
end
|
|
11
|
+
menu.button icon: { name: 'star', badge: { text: '1', backgroundColor: '#ff0000' } }, onClick: ->(action) do
|
|
12
|
+
action.dialogs_alert message: 'Perform some action'
|
|
13
|
+
end
|
|
14
|
+
menu.button icon: { name: 'map', badge: '2' }, onClick: ->(action) do
|
|
15
|
+
action.dialogs_alert message: 'Perform some action'
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
20
|
+
scroll.label text: 'See the right menu buttons on the nav bar'
|
|
21
|
+
end
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
page = json_ui_page json
|
|
4
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
-
|
|
6
|
-
# page.template 'fullWidth'
|
|
7
|
-
|
|
8
|
-
page.header childViews: ->(header) do
|
|
9
|
-
header.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
10
|
-
vertical.h1 text: 'Header'
|
|
11
|
-
end
|
|
12
|
-
header.spacer height: 10
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
page.footer childViews: ->(footer) do
|
|
16
|
-
footer.spacer height: 10
|
|
17
|
-
footer.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
18
|
-
vertical.h1 text: 'Footer'
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
23
|
-
scroll.label text: 'Inner Header'
|
|
24
|
-
scroll.label text: 'Inner Header'
|
|
25
|
-
scroll.label text: 'Inner Header'
|
|
26
|
-
scroll.spacer height: 20
|
|
27
|
-
|
|
28
|
-
scroll.panels_vertical width: 'matchParent', styleClass: 'card', backgroundColor: glib_color_panel_background, padding: glib_json_padding_body.merge(right: nil), childViews: ->(padder) do
|
|
29
|
-
padder.panels_scroll width: 'matchParent', height: 300, childViews: ->(inner_scroll) do
|
|
30
|
-
(1..100).each do |index|
|
|
31
|
-
inner_scroll.label text: 'Content'
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
scroll.spacer height: 20
|
|
37
|
-
scroll.label text: 'Inner Footer'
|
|
38
|
-
scroll.label text: 'Inner Footer'
|
|
39
|
-
scroll.label text: 'Inner Footer'
|
|
40
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
2
|
+
|
|
3
|
+
page = json_ui_page json
|
|
4
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
+
|
|
6
|
+
# page.template 'fullWidth'
|
|
7
|
+
|
|
8
|
+
page.header childViews: ->(header) do
|
|
9
|
+
header.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
10
|
+
vertical.h1 text: 'Header'
|
|
11
|
+
end
|
|
12
|
+
header.spacer height: 10
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
page.footer childViews: ->(footer) do
|
|
16
|
+
footer.spacer height: 10
|
|
17
|
+
footer.panels_vertical width: 'matchParent', styleClass: 'card', padding: glib_json_padding_body, childViews: ->(vertical) do
|
|
18
|
+
vertical.h1 text: 'Footer'
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
page.scroll padding: glib_json_padding_body, childViews: ->(scroll) do
|
|
23
|
+
scroll.label text: 'Inner Header'
|
|
24
|
+
scroll.label text: 'Inner Header'
|
|
25
|
+
scroll.label text: 'Inner Header'
|
|
26
|
+
scroll.spacer height: 20
|
|
27
|
+
|
|
28
|
+
scroll.panels_vertical width: 'matchParent', styleClass: 'card', backgroundColor: glib_color_panel_background, padding: glib_json_padding_body.merge(right: nil), childViews: ->(padder) do
|
|
29
|
+
padder.panels_scroll width: 'matchParent', height: 300, childViews: ->(inner_scroll) do
|
|
30
|
+
(1..100).each do |index|
|
|
31
|
+
inner_scroll.label text: 'Content'
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
scroll.spacer height: 20
|
|
37
|
+
scroll.label text: 'Inner Footer'
|
|
38
|
+
scroll.label text: 'Inner Footer'
|
|
39
|
+
scroll.label text: 'Inner Footer'
|
|
40
|
+
end
|
|
@@ -1,31 +1,66 @@
|
|
|
1
|
-
json.title 'Pages'
|
|
2
|
-
|
|
3
|
-
json_ui_page json do |page|
|
|
4
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
5
|
-
|
|
6
|
-
page.
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
end
|
|
1
|
+
json.title 'Pages'
|
|
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.panels_column lg: { cols: 8 }, childViews: ->(column) do
|
|
8
|
+
column.h2 text: 'Tab Bar'
|
|
9
|
+
column.tabBar height: 75, buttons: ->(menu) do
|
|
10
|
+
{
|
|
11
|
+
'FIRST' => 'home',
|
|
12
|
+
'SECOND' => 'schedule',
|
|
13
|
+
'THIRD' => 'analytics'
|
|
14
|
+
}.each_with_index do |(text, icon), index|
|
|
15
|
+
menu.button \
|
|
16
|
+
icon: icon,
|
|
17
|
+
text: text,
|
|
18
|
+
badgeContent: [nil, 8, '⭐⭐⭐'][index],
|
|
19
|
+
badgeColor: [nil, '#272551', '#008000'][index],
|
|
20
|
+
disabled: params[:tab].to_i == index,
|
|
21
|
+
onClick: ->(action) do
|
|
22
|
+
action.windows_reload url: json_ui_garage_url(path: 'pages/tab_bar', tab: index)
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
column.spacer height: 10
|
|
27
|
+
column.label text: "Tab index #{params[:tab].to_i} selected"
|
|
28
|
+
column.spacer height: 10
|
|
29
|
+
10.times do |i|
|
|
30
|
+
column.label text: "Line #{i + 1}"
|
|
31
|
+
end
|
|
32
|
+
column.spacer height: 40
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
scroll.panels_column lg: { cols: 8 }, childViews: ->(column) do
|
|
36
|
+
column.h2 text: 'Tab Bar with full-width-divider'
|
|
37
|
+
column.tabBar styleClass: 'full-width-divider', buttons: ->(menu) do
|
|
38
|
+
5.times do |index|
|
|
39
|
+
menu.button \
|
|
40
|
+
text: "Tab #{index}",
|
|
41
|
+
disabled: params[:tab_with_grow].to_i == index,
|
|
42
|
+
onClick: ->(action) do
|
|
43
|
+
action.windows_reload url: json_ui_garage_url(path: 'pages/tab_bar', tab_with_grow: index)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
column.spacer height: 40
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
scroll.panels_column lg: { cols: 8 }, childViews: ->(column) do
|
|
51
|
+
column.h2 text: 'Tab Bar with grow'
|
|
52
|
+
column.tabBar styleClass: 'grow', buttons: ->(menu) do
|
|
53
|
+
5.times do |index|
|
|
54
|
+
menu.button \
|
|
55
|
+
text: "Tab #{index}",
|
|
56
|
+
disabled: params[:tab_with_grow].to_i == index,
|
|
57
|
+
onClick: ->(action) do
|
|
58
|
+
action.windows_reload url: json_ui_garage_url(path: 'pages/tab_bar', tab_with_grow: index)
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
column.spacer height: 40
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
end
|