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,63 +1,67 @@
|
|
|
1
|
-
json.title 'Views'
|
|
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.spacer height: 20
|
|
9
|
-
scroll.h2 text: 'Basic'
|
|
10
|
-
scroll.spacer height: 6
|
|
11
|
-
scroll.banners_alert width: 'matchParent', icon: 'info', message: 'This is an alert banner'
|
|
12
|
-
|
|
13
|
-
scroll.spacer height: 20
|
|
14
|
-
scroll.h2 text: 'With color styling'
|
|
15
|
-
scroll.spacer height: 6
|
|
16
|
-
scroll.banners_alert width: 'matchParent', icon: 'info', message: 'This is an alert banner', styleClass: 'success'
|
|
17
|
-
|
|
18
|
-
scroll.spacer height: 20
|
|
19
|
-
scroll.h2 text: 'With select options'
|
|
20
|
-
scroll.spacer height: 6
|
|
21
|
-
scroll.banners_select width: 'matchParent', icon: 'info', message: 'This is a select banner', buttons: ->(menu) do
|
|
22
|
-
menu.button icon: 'add', text: 'Add', onClick: ->(action) do
|
|
23
|
-
action.windows_open url: json_ui_garage_url(path: 'home/blank')
|
|
24
|
-
end
|
|
25
|
-
menu.button icon: 'edit', text: 'Edit', onClick: ->(action) do
|
|
26
|
-
action.windows_open url: json_ui_garage_url(path: 'home/slow')
|
|
27
|
-
end
|
|
28
|
-
menu.button icon: 'delete', text: 'Delete', onClick: ->(action) do
|
|
29
|
-
action.dialogs_alert message: 'Alert'
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
menu.button icon: 'more_vert', childButtons: ->(submenu) do
|
|
33
|
-
submenu.button
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
#
|
|
55
|
-
#
|
|
56
|
-
# "\n" +
|
|
57
|
-
# '
|
|
58
|
-
#
|
|
59
|
-
#
|
|
60
|
-
#
|
|
61
|
-
#
|
|
62
|
-
|
|
63
|
-
|
|
1
|
+
json.title 'Views'
|
|
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.spacer height: 20
|
|
9
|
+
scroll.h2 text: 'Basic'
|
|
10
|
+
scroll.spacer height: 6
|
|
11
|
+
scroll.banners_alert width: 'matchParent', icon: 'info', message: 'This is an alert banner'
|
|
12
|
+
|
|
13
|
+
scroll.spacer height: 20
|
|
14
|
+
scroll.h2 text: 'With color styling'
|
|
15
|
+
scroll.spacer height: 6
|
|
16
|
+
scroll.banners_alert width: 'matchParent', icon: 'info', message: 'This is an alert banner', styleClass: 'success'
|
|
17
|
+
|
|
18
|
+
scroll.spacer height: 20
|
|
19
|
+
scroll.h2 text: 'With select options'
|
|
20
|
+
scroll.spacer height: 6
|
|
21
|
+
scroll.banners_select width: 'matchParent', icon: 'info', message: 'This is a select banner', buttons: ->(menu) do
|
|
22
|
+
menu.button icon: 'add', text: 'Add', badgeContent: 80, onClick: ->(action) do
|
|
23
|
+
action.windows_open url: json_ui_garage_url(path: 'home/blank')
|
|
24
|
+
end
|
|
25
|
+
menu.button icon: 'edit', text: 'Edit', onClick: ->(action) do
|
|
26
|
+
action.windows_open url: json_ui_garage_url(path: 'home/slow')
|
|
27
|
+
end
|
|
28
|
+
menu.button icon: 'delete', text: 'Delete', onClick: ->(action) do
|
|
29
|
+
action.dialogs_alert message: 'Alert'
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
menu.button icon: 'more_vert', childButtons: ->(submenu) do
|
|
33
|
+
submenu.button \
|
|
34
|
+
icon: 'add',
|
|
35
|
+
text: 'Option1',
|
|
36
|
+
badgeContent: 3,
|
|
37
|
+
onClick: ->(action) do
|
|
38
|
+
action.windows_open url: json_ui_garage_url(path: 'home/blank')
|
|
39
|
+
end
|
|
40
|
+
submenu.button icon: 'edit', text: 'Option2', onClick: ->(action) do
|
|
41
|
+
action.windows_open url: json_ui_garage_url(path: 'home/slow')
|
|
42
|
+
end
|
|
43
|
+
submenu.button icon: 'delete', text: 'Option3', onClick: ->(action) do
|
|
44
|
+
action.dialogs_alert message: 'Alert'
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
scroll.spacer height: 20
|
|
50
|
+
scroll.h2 text: 'Alert banner with frameless styling (Experimental)'
|
|
51
|
+
scroll.spacer height: 6
|
|
52
|
+
scroll.banners_alert width: 'matchParent', icon: 'info', message: 'This is an alert banner', styleClass: 'frameless'
|
|
53
|
+
|
|
54
|
+
# # TODO: Deprecate in favour of `banners/custom` and `markdown`
|
|
55
|
+
# markdown = '## Emphasis' + "\n" +
|
|
56
|
+
# "\n" +
|
|
57
|
+
# '**This is bold text**' + "\n" +
|
|
58
|
+
# "\n" +
|
|
59
|
+
# '*This is italic text*' + "\n" +
|
|
60
|
+
# "\n" +
|
|
61
|
+
# '~~Strikethrough~~'
|
|
62
|
+
# scroll.spacer height: 20
|
|
63
|
+
# scroll.h2 text: 'Alert banner with markdown'
|
|
64
|
+
# scroll.spacer height: 6
|
|
65
|
+
# scroll.banners_alert width: 'matchParent', icon: 'info', message: markdown, message_format: 'markdown'
|
|
66
|
+
end
|
|
67
|
+
end
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
section = json_ui_section json
|
|
2
|
-
section.rows builder: ->(row) do
|
|
3
|
-
row.custom title: 'Hackathon',
|
|
4
|
-
extra: {
|
|
5
|
-
start: '2018-12-14',
|
|
6
|
-
end: '2018-12-17'
|
|
7
|
-
},
|
|
8
|
-
onClick: ->(action) do
|
|
9
|
-
action.dialogs_alert message: 'At Town Hall'
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
row.custom title: 'Birthday',
|
|
13
|
-
extra: {
|
|
14
|
-
start: '2018-12-30',
|
|
15
|
-
end: '2018-12-30'
|
|
16
|
-
},
|
|
17
|
-
onClick: ->(action) do
|
|
18
|
-
action.dialogs_alert message: 'At home'
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
row.custom title: 'Conference',
|
|
22
|
-
extra: {
|
|
23
|
-
start: '2018-12-31',
|
|
24
|
-
end: '2019-01-02'
|
|
25
|
-
},
|
|
26
|
-
onClick: ->(action) do
|
|
27
|
-
action.dialogs_alert message: 'In Perth'
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
end
|
|
1
|
+
section = json_ui_section json
|
|
2
|
+
section.rows builder: ->(row) do
|
|
3
|
+
row.custom title: 'Hackathon',
|
|
4
|
+
extra: {
|
|
5
|
+
start: '2018-12-14',
|
|
6
|
+
end: '2018-12-17'
|
|
7
|
+
},
|
|
8
|
+
onClick: ->(action) do
|
|
9
|
+
action.dialogs_alert message: 'At Town Hall'
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
row.custom title: 'Birthday',
|
|
13
|
+
extra: {
|
|
14
|
+
start: '2018-12-30',
|
|
15
|
+
end: '2018-12-30'
|
|
16
|
+
},
|
|
17
|
+
onClick: ->(action) do
|
|
18
|
+
action.dialogs_alert message: 'At home'
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
row.custom title: 'Conference',
|
|
22
|
+
extra: {
|
|
23
|
+
start: '2018-12-31',
|
|
24
|
+
end: '2019-01-02'
|
|
25
|
+
},
|
|
26
|
+
onClick: ->(action) do
|
|
27
|
+
action.dialogs_alert message: 'In Perth'
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
@@ -1,115 +1,115 @@
|
|
|
1
|
-
|
|
2
|
-
if params[:data_only].present?
|
|
3
|
-
json_ui_page json do |page|
|
|
4
|
-
page.data content: ->(data) do
|
|
5
|
-
render "#{@path_prefix}/views/chart_data", json: json, builder: data
|
|
6
|
-
end
|
|
7
|
-
end
|
|
8
|
-
else
|
|
9
|
-
json.title 'Views'
|
|
10
|
-
|
|
11
|
-
json_ui_page json do |page|
|
|
12
|
-
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
13
|
-
|
|
14
|
-
page.scroll padding: {top: 20, left: 20, right: 20, bottom: 20}, childViews: ->(scroll) do
|
|
15
|
-
scroll.h1 text: 'Line chart'
|
|
16
|
-
scroll.charts_line dataSeries: [
|
|
17
|
-
-> do
|
|
18
|
-
json.title 'Line 1'
|
|
19
|
-
|
|
20
|
-
points = {
|
|
21
|
-
'Sat, 10 Nov 2018' => 1,
|
|
22
|
-
'Sun, 11 Nov 2018' => 7,
|
|
23
|
-
'Mon, 12 Nov 2018' => 2,
|
|
24
|
-
'Tue, 13 Nov 2018' => 0,
|
|
25
|
-
'Wed, 14 Nov 2018' => 1,
|
|
26
|
-
'Thu, 15 Nov 2018' => 1,
|
|
27
|
-
'Fri, 16 Nov 2018' => 5,
|
|
28
|
-
}
|
|
29
|
-
json.points points.map { |k, v| { x: k, y: v } }
|
|
30
|
-
end,
|
|
31
|
-
-> do
|
|
32
|
-
json.title 'Line 2'
|
|
33
|
-
|
|
34
|
-
points = {
|
|
35
|
-
'Sat, 10 Nov 2018' => 5,
|
|
36
|
-
'Sun, 11 Nov 2018' => 3,
|
|
37
|
-
'Mon, 12 Nov 2018' => 8,
|
|
38
|
-
'Tue, 13 Nov 2018' => 5,
|
|
39
|
-
'Wed, 14 Nov 2018' => 3,
|
|
40
|
-
'Thu, 15 Nov 2018' => 5,
|
|
41
|
-
'Fri, 16 Nov 2018' => 1,
|
|
42
|
-
}
|
|
43
|
-
json.points points.map { |k, v| { x: k, y: v } }
|
|
44
|
-
end
|
|
45
|
-
]
|
|
46
|
-
|
|
47
|
-
scroll.spacer height: 20
|
|
48
|
-
scroll.h1 text: 'Line chart using remote data'
|
|
49
|
-
render "#{@path_prefix}/views/chart_data", json: json, builder: scroll
|
|
50
|
-
|
|
51
|
-
scroll.h2 text: 'Column chart (Clustered)'
|
|
52
|
-
scroll.charts_column dataGroups: [
|
|
53
|
-
-> do
|
|
54
|
-
json.title 'Column 1'
|
|
55
|
-
|
|
56
|
-
points = {
|
|
57
|
-
'2010' => 10,
|
|
58
|
-
'2020' => 16,
|
|
59
|
-
}
|
|
60
|
-
json.points points
|
|
61
|
-
end,
|
|
62
|
-
-> do
|
|
63
|
-
json.title 'Column 2'
|
|
64
|
-
|
|
65
|
-
points = {
|
|
66
|
-
'2010' => 24,
|
|
67
|
-
'2020' => 22,
|
|
68
|
-
}
|
|
69
|
-
json.points points
|
|
70
|
-
end,
|
|
71
|
-
-> do
|
|
72
|
-
json.title 'Column 3'
|
|
73
|
-
|
|
74
|
-
points = {
|
|
75
|
-
'2010' => 20,
|
|
76
|
-
'2020' => 23,
|
|
77
|
-
}
|
|
78
|
-
json.points points
|
|
79
|
-
end
|
|
80
|
-
]
|
|
81
|
-
|
|
82
|
-
scroll.h2 text: 'Column chart (Stacked)'
|
|
83
|
-
scroll.charts_column stacked: true, dataGroups: [
|
|
84
|
-
-> do
|
|
85
|
-
json.title 'Column 1'
|
|
86
|
-
|
|
87
|
-
points = {
|
|
88
|
-
'2010' => 10,
|
|
89
|
-
'2020' => 16,
|
|
90
|
-
}
|
|
91
|
-
json.points points
|
|
92
|
-
end,
|
|
93
|
-
-> do
|
|
94
|
-
json.title 'Column 2'
|
|
95
|
-
|
|
96
|
-
points = {
|
|
97
|
-
'2010' => 24,
|
|
98
|
-
'2020' => 22,
|
|
99
|
-
}
|
|
100
|
-
json.points points
|
|
101
|
-
end,
|
|
102
|
-
-> do
|
|
103
|
-
json.title 'Column 3'
|
|
104
|
-
|
|
105
|
-
points = {
|
|
106
|
-
'2010' => 20,
|
|
107
|
-
'2020' => 23,
|
|
108
|
-
}
|
|
109
|
-
json.points points
|
|
110
|
-
end
|
|
111
|
-
]
|
|
112
|
-
end
|
|
113
|
-
end
|
|
114
|
-
|
|
115
|
-
end
|
|
1
|
+
|
|
2
|
+
if params[:data_only].present?
|
|
3
|
+
json_ui_page json do |page|
|
|
4
|
+
page.data content: ->(data) do
|
|
5
|
+
render "#{@path_prefix}/views/chart_data", json: json, builder: data
|
|
6
|
+
end
|
|
7
|
+
end
|
|
8
|
+
else
|
|
9
|
+
json.title 'Views'
|
|
10
|
+
|
|
11
|
+
json_ui_page json do |page|
|
|
12
|
+
render "#{@path_prefix}/nav_menu", json: json, page: page
|
|
13
|
+
|
|
14
|
+
page.scroll padding: {top: 20, left: 20, right: 20, bottom: 20}, childViews: ->(scroll) do
|
|
15
|
+
scroll.h1 text: 'Line chart'
|
|
16
|
+
scroll.charts_line dataSeries: [
|
|
17
|
+
-> do
|
|
18
|
+
json.title 'Line 1'
|
|
19
|
+
|
|
20
|
+
points = {
|
|
21
|
+
'Sat, 10 Nov 2018' => 1,
|
|
22
|
+
'Sun, 11 Nov 2018' => 7,
|
|
23
|
+
'Mon, 12 Nov 2018' => 2,
|
|
24
|
+
'Tue, 13 Nov 2018' => 0,
|
|
25
|
+
'Wed, 14 Nov 2018' => 1,
|
|
26
|
+
'Thu, 15 Nov 2018' => 1,
|
|
27
|
+
'Fri, 16 Nov 2018' => 5,
|
|
28
|
+
}
|
|
29
|
+
json.points points.map { |k, v| { x: k, y: v } }
|
|
30
|
+
end,
|
|
31
|
+
-> do
|
|
32
|
+
json.title 'Line 2'
|
|
33
|
+
|
|
34
|
+
points = {
|
|
35
|
+
'Sat, 10 Nov 2018' => 5,
|
|
36
|
+
'Sun, 11 Nov 2018' => 3,
|
|
37
|
+
'Mon, 12 Nov 2018' => 8,
|
|
38
|
+
'Tue, 13 Nov 2018' => 5,
|
|
39
|
+
'Wed, 14 Nov 2018' => 3,
|
|
40
|
+
'Thu, 15 Nov 2018' => 5,
|
|
41
|
+
'Fri, 16 Nov 2018' => 1,
|
|
42
|
+
}
|
|
43
|
+
json.points points.map { |k, v| { x: k, y: v } }
|
|
44
|
+
end
|
|
45
|
+
]
|
|
46
|
+
|
|
47
|
+
scroll.spacer height: 20
|
|
48
|
+
scroll.h1 text: 'Line chart using remote data'
|
|
49
|
+
render "#{@path_prefix}/views/chart_data", json: json, builder: scroll
|
|
50
|
+
|
|
51
|
+
scroll.h2 text: 'Column chart (Clustered)'
|
|
52
|
+
scroll.charts_column dataGroups: [
|
|
53
|
+
-> do
|
|
54
|
+
json.title 'Column 1'
|
|
55
|
+
|
|
56
|
+
points = {
|
|
57
|
+
'2010' => 10,
|
|
58
|
+
'2020' => 16,
|
|
59
|
+
}
|
|
60
|
+
json.points points
|
|
61
|
+
end,
|
|
62
|
+
-> do
|
|
63
|
+
json.title 'Column 2'
|
|
64
|
+
|
|
65
|
+
points = {
|
|
66
|
+
'2010' => 24,
|
|
67
|
+
'2020' => 22,
|
|
68
|
+
}
|
|
69
|
+
json.points points
|
|
70
|
+
end,
|
|
71
|
+
-> do
|
|
72
|
+
json.title 'Column 3'
|
|
73
|
+
|
|
74
|
+
points = {
|
|
75
|
+
'2010' => 20,
|
|
76
|
+
'2020' => 23,
|
|
77
|
+
}
|
|
78
|
+
json.points points
|
|
79
|
+
end
|
|
80
|
+
]
|
|
81
|
+
|
|
82
|
+
scroll.h2 text: 'Column chart (Stacked)'
|
|
83
|
+
scroll.charts_column stacked: true, dataGroups: [
|
|
84
|
+
-> do
|
|
85
|
+
json.title 'Column 1'
|
|
86
|
+
|
|
87
|
+
points = {
|
|
88
|
+
'2010' => 10,
|
|
89
|
+
'2020' => 16,
|
|
90
|
+
}
|
|
91
|
+
json.points points
|
|
92
|
+
end,
|
|
93
|
+
-> do
|
|
94
|
+
json.title 'Column 2'
|
|
95
|
+
|
|
96
|
+
points = {
|
|
97
|
+
'2010' => 24,
|
|
98
|
+
'2020' => 22,
|
|
99
|
+
}
|
|
100
|
+
json.points points
|
|
101
|
+
end,
|
|
102
|
+
-> do
|
|
103
|
+
json.title 'Column 3'
|
|
104
|
+
|
|
105
|
+
points = {
|
|
106
|
+
'2010' => 20,
|
|
107
|
+
'2020' => 23,
|
|
108
|
+
}
|
|
109
|
+
json.points points
|
|
110
|
+
end
|
|
111
|
+
]
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
end
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
json.title 'Views'
|
|
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.h2 text: 'Button'
|
|
8
|
-
scroll.spacer height: 6
|
|
9
|
-
scroll.button text: 'Click me', onClick: ->(action) do
|
|
10
|
-
action.dialogs_alert message: 'Perform action'
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
scroll.spacer height: 20
|
|
14
|
-
scroll.h2 text: 'Chip'
|
|
15
|
-
scroll.spacer height: 6
|
|
16
|
-
scroll.chip styleClass: 'success', text: 'pending'
|
|
17
|
-
scroll.spacer height: 6
|
|
18
|
-
scroll.chip text: 'Skills', onClick: ->(action) do
|
|
19
|
-
action.dialogs_alert message: 'Perform action'
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
scroll.spacer height: 20
|
|
23
|
-
scroll.h2 text: 'Switch'
|
|
24
|
-
scroll.spacer height: 6
|
|
25
|
-
scroll.switch \
|
|
26
|
-
text: 'Email notification',
|
|
27
|
-
onEnabled: ->(action) do
|
|
28
|
-
action.dialogs_alert message: 'Enabled'
|
|
29
|
-
end
|
|
30
|
-
scroll.switch \
|
|
31
|
-
enabled: true,
|
|
32
|
-
text: 'Push notification',
|
|
33
|
-
onDisabled: ->(action) do
|
|
34
|
-
action.dialogs_alert message: 'Disabled'
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
end
|
|
1
|
+
json.title 'Views'
|
|
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.h2 text: 'Button'
|
|
8
|
+
scroll.spacer height: 6
|
|
9
|
+
scroll.button text: 'Click me', onClick: ->(action) do
|
|
10
|
+
action.dialogs_alert message: 'Perform action'
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
scroll.spacer height: 20
|
|
14
|
+
scroll.h2 text: 'Chip'
|
|
15
|
+
scroll.spacer height: 6
|
|
16
|
+
scroll.chip styleClass: 'success', text: 'pending'
|
|
17
|
+
scroll.spacer height: 6
|
|
18
|
+
scroll.chip text: 'Skills', onClick: ->(action) do
|
|
19
|
+
action.dialogs_alert message: 'Perform action'
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
scroll.spacer height: 20
|
|
23
|
+
scroll.h2 text: 'Switch'
|
|
24
|
+
scroll.spacer height: 6
|
|
25
|
+
scroll.switch \
|
|
26
|
+
text: 'Email notification',
|
|
27
|
+
onEnabled: ->(action) do
|
|
28
|
+
action.dialogs_alert message: 'Enabled'
|
|
29
|
+
end
|
|
30
|
+
scroll.switch \
|
|
31
|
+
enabled: true,
|
|
32
|
+
text: 'Push notification',
|
|
33
|
+
onDisabled: ->(action) do
|
|
34
|
+
action.dialogs_alert message: 'Disabled'
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
json.title 'Views'
|
|
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
|
-
product_id = 'APP_STORE_PRODUCT_KEY'
|
|
9
|
-
|
|
10
|
-
scroll.h2 text: 'IAP product button'
|
|
11
|
-
scroll.spacer height: 6
|
|
12
|
-
scroll.iap_productButton text: 'GET', productId: product_id, onClick: ->(action) do
|
|
13
|
-
action.iap_initiatePurchase mode: 'purchase', productId: product_id, onSuccess: ->(subaction) do
|
|
14
|
-
subaction.dialogs_alert message: 'Success'
|
|
15
|
-
end, onFailure: ->(subaction) do
|
|
16
|
-
subaction.dialogs_alert message: 'Failure'
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
end
|
|
21
|
-
end
|
|
1
|
+
json.title 'Views'
|
|
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
|
+
product_id = 'APP_STORE_PRODUCT_KEY'
|
|
9
|
+
|
|
10
|
+
scroll.h2 text: 'IAP product button'
|
|
11
|
+
scroll.spacer height: 6
|
|
12
|
+
scroll.iap_productButton text: 'GET', productId: product_id, onClick: ->(action) do
|
|
13
|
+
action.iap_initiatePurchase mode: 'purchase', productId: product_id, onSuccess: ->(subaction) do
|
|
14
|
+
subaction.dialogs_alert message: 'Success'
|
|
15
|
+
end, onFailure: ->(subaction) do
|
|
16
|
+
subaction.dialogs_alert message: 'Failure'
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
end
|