glib-web 0.5.71 → 0.5.72
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 +148 -148
- 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 -8
- 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.rb +140 -140
- 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/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 +33 -33
- 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 +94 -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/split_builders.rb +32 -32
- 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.rb +240 -240
- 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 +278 -279
- data/app/helpers/glib/json_ui/view_builder/panels.rb +256 -256
- data/app/helpers/glib/urls_helper.rb +12 -12
- 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 +161 -161
- 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 +6 -6
- 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 -22
- 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 +32 -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 +113 -113
- data/app/views/json_ui/garage/forms/new_rich_text.json.jbuilder +39 -39
- 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/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 -84
- data/app/views/json_ui/garage/forms/show_hide.json.jbuilder +130 -130
- 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 +81 -81
- 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 +28 -28
- 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 +31 -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 +37 -37
- 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 -134
- 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 -0
- 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 +63 -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/icon_names.json.jbuilder +1450 -1450
- data/app/views/json_ui/garage/views/icons.json.jbuilder +15 -14
- data/app/views/json_ui/garage/views/images.json.jbuilder +89 -89
- data/app/views/json_ui/garage/views/index.json.jbuilder +67 -67
- 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/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-web.rb +9 -9
- 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.rb +11 -11
- 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 +98 -98
- 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/tasks/db.rake +95 -95
- metadata +3 -3
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
class Glib::JsonUi::ActionBuilder
|
|
2
|
-
module Panels
|
|
3
|
-
class ScrollToBottom < Action
|
|
4
|
-
action :onScroll
|
|
5
|
-
bool :animate
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
class ScrollTo < Action
|
|
9
|
-
string :viewId
|
|
10
|
-
action :onScroll
|
|
11
|
-
bool :animate
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
1
|
+
class Glib::JsonUi::ActionBuilder
|
|
2
|
+
module Panels
|
|
3
|
+
class ScrollToBottom < Action
|
|
4
|
+
action :onScroll
|
|
5
|
+
bool :animate
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
class ScrollTo < Action
|
|
9
|
+
string :viewId
|
|
10
|
+
action :onScroll
|
|
11
|
+
bool :animate
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
class Glib::JsonUi::ActionBuilder
|
|
2
|
-
module Sheets
|
|
3
|
-
|
|
4
|
-
class Select < Action
|
|
5
|
-
string :message
|
|
6
|
-
|
|
7
|
-
def buttons(block)
|
|
8
|
-
json.buttons do
|
|
9
|
-
block.call page.menu_builder
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
end
|
|
15
|
-
end
|
|
1
|
+
class Glib::JsonUi::ActionBuilder
|
|
2
|
+
module Sheets
|
|
3
|
+
|
|
4
|
+
class Select < Action
|
|
5
|
+
string :message
|
|
6
|
+
|
|
7
|
+
def buttons(block)
|
|
8
|
+
json.buttons do
|
|
9
|
+
block.call page.menu_builder
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
class Glib::JsonUi::ActionBuilder
|
|
2
|
-
|
|
3
|
-
module Snackbars
|
|
4
|
-
class Alert < Action
|
|
5
|
-
string :message
|
|
6
|
-
# string :message_format
|
|
7
|
-
action :onClose
|
|
8
|
-
|
|
9
|
-
string :verticalPosition
|
|
10
|
-
string :horizontalPosition
|
|
11
|
-
singleton_array :styleClass, :styleClasses
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
# class Confirm < Action
|
|
15
|
-
# string :message
|
|
16
|
-
# action :onConfirm
|
|
17
|
-
# action :onCancel
|
|
18
|
-
|
|
19
|
-
# string :verticalPosition
|
|
20
|
-
# string :horizontalPosition
|
|
21
|
-
# singleton_array :styleClass, :styleClasses
|
|
22
|
-
# end
|
|
23
|
-
|
|
24
|
-
class Select < Action
|
|
25
|
-
string :message
|
|
26
|
-
|
|
27
|
-
string :verticalPosition
|
|
28
|
-
string :horizontalPosition
|
|
29
|
-
singleton_array :styleClass, :styleClasses
|
|
30
|
-
|
|
31
|
-
def buttons(block)
|
|
32
|
-
json.buttons do
|
|
33
|
-
block.call page.menu_builder
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
end
|
|
1
|
+
class Glib::JsonUi::ActionBuilder
|
|
2
|
+
|
|
3
|
+
module Snackbars
|
|
4
|
+
class Alert < Action
|
|
5
|
+
string :message
|
|
6
|
+
# string :message_format
|
|
7
|
+
action :onClose
|
|
8
|
+
|
|
9
|
+
string :verticalPosition
|
|
10
|
+
string :horizontalPosition
|
|
11
|
+
singleton_array :styleClass, :styleClasses
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# class Confirm < Action
|
|
15
|
+
# string :message
|
|
16
|
+
# action :onConfirm
|
|
17
|
+
# action :onCancel
|
|
18
|
+
|
|
19
|
+
# string :verticalPosition
|
|
20
|
+
# string :horizontalPosition
|
|
21
|
+
# singleton_array :styleClass, :styleClasses
|
|
22
|
+
# end
|
|
23
|
+
|
|
24
|
+
class Select < Action
|
|
25
|
+
string :message
|
|
26
|
+
|
|
27
|
+
string :verticalPosition
|
|
28
|
+
string :horizontalPosition
|
|
29
|
+
singleton_array :styleClass, :styleClasses
|
|
30
|
+
|
|
31
|
+
def buttons(block)
|
|
32
|
+
json.buttons do
|
|
33
|
+
block.call page.menu_builder
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
end
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
class Glib::JsonUi::ActionBuilder
|
|
2
|
-
module Windows
|
|
3
|
-
class Close < Action
|
|
4
|
-
action :onClose
|
|
5
|
-
# action :onAfterClose
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
class CloseAll < Action
|
|
9
|
-
action :onClose
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
class Open < Action
|
|
13
|
-
string :url, cache: true
|
|
14
|
-
action :onOpen
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
class OpenWeb < Action
|
|
18
|
-
string :url
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
class Reload < Action
|
|
22
|
-
string :url, cache: true
|
|
23
|
-
action :onReload
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
class CloseWithReload < Action
|
|
27
|
-
string :fallbackUrl
|
|
28
|
-
action :onReload
|
|
29
|
-
|
|
30
|
-
required :fallbackUrl
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
end
|
|
1
|
+
class Glib::JsonUi::ActionBuilder
|
|
2
|
+
module Windows
|
|
3
|
+
class Close < Action
|
|
4
|
+
action :onClose
|
|
5
|
+
# action :onAfterClose
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
class CloseAll < Action
|
|
9
|
+
action :onClose
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
class Open < Action
|
|
13
|
+
string :url, cache: true
|
|
14
|
+
action :onOpen
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
class OpenWeb < Action
|
|
18
|
+
string :url
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
class Reload < Action
|
|
22
|
+
string :url, cache: true
|
|
23
|
+
action :onReload
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
class CloseWithReload < Action
|
|
27
|
+
string :fallbackUrl
|
|
28
|
+
action :onReload
|
|
29
|
+
|
|
30
|
+
required :fallbackUrl
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
module Glib
|
|
2
|
-
module JsonUi
|
|
3
|
-
module AnalyticsHelper
|
|
4
|
-
def __json_ui_analytics(json)
|
|
5
|
-
if try(:glib_analytics_included?)
|
|
6
|
-
json.analytics do
|
|
7
|
-
json.feature do
|
|
8
|
-
json.group controller_name
|
|
9
|
-
json.action action_name
|
|
10
|
-
json.segment glib_analytics_feature_segment
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
end
|
|
1
|
+
module Glib
|
|
2
|
+
module JsonUi
|
|
3
|
+
module AnalyticsHelper
|
|
4
|
+
def __json_ui_analytics(json)
|
|
5
|
+
if try(:glib_analytics_included?)
|
|
6
|
+
json.analytics do
|
|
7
|
+
json.feature do
|
|
8
|
+
json.group controller_name
|
|
9
|
+
json.action action_name
|
|
10
|
+
json.segment glib_analytics_feature_segment
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
module Glib
|
|
2
|
-
module JsonUi
|
|
3
|
-
module DynamicFieldBuilders
|
|
4
|
-
|
|
5
|
-
class Group < AbstractBuilder
|
|
6
|
-
def initialize(json, page, template)
|
|
7
|
-
super json, page
|
|
8
|
-
@template = template
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# string :titlePrefix
|
|
12
|
-
def titlePrefix(string)
|
|
13
|
-
json.titlePrefix string
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def template(options = {})
|
|
17
|
-
# json.template do
|
|
18
|
-
page.vertical_content(options)
|
|
19
|
-
# end
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
1
|
+
module Glib
|
|
2
|
+
module JsonUi
|
|
3
|
+
module DynamicFieldBuilders
|
|
4
|
+
|
|
5
|
+
class Group < AbstractBuilder
|
|
6
|
+
def initialize(json, page, template)
|
|
7
|
+
super json, page
|
|
8
|
+
@template = template
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# string :titlePrefix
|
|
12
|
+
def titlePrefix(string)
|
|
13
|
+
json.titlePrefix string
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def template(options = {})
|
|
17
|
+
# json.template do
|
|
18
|
+
page.vertical_content(options)
|
|
19
|
+
# end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
module Glib
|
|
2
|
-
module JsonUi
|
|
3
|
-
module GenericBuilders
|
|
4
|
-
|
|
5
|
-
class Content < AbstractBuilder
|
|
6
|
-
def initialize(json, page, template)
|
|
7
|
-
super json, page
|
|
8
|
-
@template = template
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def definePanels(names)
|
|
12
|
-
names.each do |name|
|
|
13
|
-
define_singleton_method(name) do |options|
|
|
14
|
-
json.set!(name) { page.vertical_content(options) }
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
# def body(options = {})
|
|
20
|
-
# json.body do
|
|
21
|
-
# page.vertical_content(options)
|
|
22
|
-
# end
|
|
23
|
-
# end
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
end
|
|
1
|
+
module Glib
|
|
2
|
+
module JsonUi
|
|
3
|
+
module GenericBuilders
|
|
4
|
+
|
|
5
|
+
class Content < AbstractBuilder
|
|
6
|
+
def initialize(json, page, template)
|
|
7
|
+
super json, page
|
|
8
|
+
@template = template
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def definePanels(names)
|
|
12
|
+
names.each do |name|
|
|
13
|
+
define_singleton_method(name) do |options|
|
|
14
|
+
json.set!(name) { page.vertical_content(options) }
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# def body(options = {})
|
|
20
|
+
# json.body do
|
|
21
|
+
# page.vertical_content(options)
|
|
22
|
+
# end
|
|
23
|
+
# end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -1,110 +1,110 @@
|
|
|
1
|
-
module Glib
|
|
2
|
-
module JsonUi
|
|
3
|
-
module ListBuilders
|
|
4
|
-
class Template < AbstractBuilder
|
|
5
|
-
def method_missing(m, *args)
|
|
6
|
-
add_element_to_array 'template', m, *args
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
class AbstractTemplate < JsonUiElement
|
|
10
|
-
menu :leftButtons
|
|
11
|
-
menu :rightButtons
|
|
12
|
-
menu :editButtons
|
|
13
|
-
menu :chips
|
|
14
|
-
singleton_array :styleClass, :styleClasses
|
|
15
|
-
color :backgroundColor
|
|
16
|
-
|
|
17
|
-
# def editButtons(block)
|
|
18
|
-
# json.editButtons do
|
|
19
|
-
# block.call page.menu_builder
|
|
20
|
-
# end
|
|
21
|
-
# end
|
|
22
|
-
|
|
23
|
-
# def chips(block)
|
|
24
|
-
# json.chips do
|
|
25
|
-
# block.call page.menu_builder
|
|
26
|
-
# end
|
|
27
|
-
# end
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
class Standard < AbstractTemplate
|
|
31
|
-
string :id
|
|
32
|
-
string :title
|
|
33
|
-
string :subtitle
|
|
34
|
-
string :subsubtitle
|
|
35
|
-
string :imageUrl
|
|
36
|
-
action :onClick
|
|
37
|
-
action :onLongPress
|
|
38
|
-
icon :icon
|
|
39
|
-
bool :avatar
|
|
40
|
-
action :onReorder
|
|
41
|
-
string :paramNameForFormData
|
|
42
|
-
string :paramNameForNewAbsoluteIndex
|
|
43
|
-
string :paramNameForNewSectionIndex
|
|
44
|
-
string :paramNameForNewSectionedRowIndex
|
|
45
|
-
|
|
46
|
-
string :paramNameForNewIndex # Deprecated
|
|
47
|
-
|
|
48
|
-
# # NOTE: Experimental. Still deciding whether this needs to be a full blown panel or
|
|
49
|
-
# # an array of badges (with relevant properties, e.g. text, color, etc)
|
|
50
|
-
# views :accessoryViews
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
class Featured < Standard
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
class Thumbnail < Standard
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
class CommentOutgoing < Standard
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
class CommentIncoming < Standard
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
class Custom < Standard
|
|
66
|
-
string :template
|
|
67
|
-
|
|
68
|
-
# TODO: Experimental
|
|
69
|
-
hash :extra
|
|
70
|
-
|
|
71
|
-
# TODO: Deprecate
|
|
72
|
-
hash :data
|
|
73
|
-
end
|
|
74
|
-
end
|
|
75
|
-
|
|
76
|
-
class Section < AbstractBuilder
|
|
77
|
-
def initialize(json, page, template)
|
|
78
|
-
super json, page
|
|
79
|
-
@template = template
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
def header(options = {})
|
|
83
|
-
json.header do
|
|
84
|
-
page.vertical_content(options)
|
|
85
|
-
end
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
def rows(options = {})
|
|
89
|
-
block = options[:builder]
|
|
90
|
-
json.rows do
|
|
91
|
-
if (objects = options[:objects])
|
|
92
|
-
objects.each_with_index do |object, index|
|
|
93
|
-
block&.call @template, object, index
|
|
94
|
-
end
|
|
95
|
-
else
|
|
96
|
-
block&.call @template
|
|
97
|
-
end
|
|
98
|
-
end
|
|
99
|
-
end
|
|
100
|
-
|
|
101
|
-
def footer(options = {})
|
|
102
|
-
json.footer do
|
|
103
|
-
page.vertical_content(options)
|
|
104
|
-
end
|
|
105
|
-
end
|
|
106
|
-
end
|
|
107
|
-
|
|
108
|
-
end
|
|
109
|
-
end
|
|
110
|
-
end
|
|
1
|
+
module Glib
|
|
2
|
+
module JsonUi
|
|
3
|
+
module ListBuilders
|
|
4
|
+
class Template < AbstractBuilder
|
|
5
|
+
def method_missing(m, *args)
|
|
6
|
+
add_element_to_array 'template', m, *args
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
class AbstractTemplate < JsonUiElement
|
|
10
|
+
menu :leftButtons
|
|
11
|
+
menu :rightButtons
|
|
12
|
+
menu :editButtons
|
|
13
|
+
menu :chips
|
|
14
|
+
singleton_array :styleClass, :styleClasses
|
|
15
|
+
color :backgroundColor
|
|
16
|
+
|
|
17
|
+
# def editButtons(block)
|
|
18
|
+
# json.editButtons do
|
|
19
|
+
# block.call page.menu_builder
|
|
20
|
+
# end
|
|
21
|
+
# end
|
|
22
|
+
|
|
23
|
+
# def chips(block)
|
|
24
|
+
# json.chips do
|
|
25
|
+
# block.call page.menu_builder
|
|
26
|
+
# end
|
|
27
|
+
# end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
class Standard < AbstractTemplate
|
|
31
|
+
string :id
|
|
32
|
+
string :title
|
|
33
|
+
string :subtitle
|
|
34
|
+
string :subsubtitle
|
|
35
|
+
string :imageUrl
|
|
36
|
+
action :onClick
|
|
37
|
+
action :onLongPress
|
|
38
|
+
icon :icon
|
|
39
|
+
bool :avatar
|
|
40
|
+
action :onReorder
|
|
41
|
+
string :paramNameForFormData
|
|
42
|
+
string :paramNameForNewAbsoluteIndex
|
|
43
|
+
string :paramNameForNewSectionIndex
|
|
44
|
+
string :paramNameForNewSectionedRowIndex
|
|
45
|
+
|
|
46
|
+
string :paramNameForNewIndex # Deprecated
|
|
47
|
+
|
|
48
|
+
# # NOTE: Experimental. Still deciding whether this needs to be a full blown panel or
|
|
49
|
+
# # an array of badges (with relevant properties, e.g. text, color, etc)
|
|
50
|
+
# views :accessoryViews
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
class Featured < Standard
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
class Thumbnail < Standard
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
class CommentOutgoing < Standard
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
class CommentIncoming < Standard
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
class Custom < Standard
|
|
66
|
+
string :template
|
|
67
|
+
|
|
68
|
+
# TODO: Experimental
|
|
69
|
+
hash :extra
|
|
70
|
+
|
|
71
|
+
# TODO: Deprecate
|
|
72
|
+
hash :data
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
class Section < AbstractBuilder
|
|
77
|
+
def initialize(json, page, template)
|
|
78
|
+
super json, page
|
|
79
|
+
@template = template
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
def header(options = {})
|
|
83
|
+
json.header do
|
|
84
|
+
page.vertical_content(options)
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
def rows(options = {})
|
|
89
|
+
block = options[:builder]
|
|
90
|
+
json.rows do
|
|
91
|
+
if (objects = options[:objects])
|
|
92
|
+
objects.each_with_index do |object, index|
|
|
93
|
+
block&.call @template, object, index
|
|
94
|
+
end
|
|
95
|
+
else
|
|
96
|
+
block&.call @template
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
def footer(options = {})
|
|
102
|
+
json.footer do
|
|
103
|
+
page.vertical_content(options)
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
end
|