glib-web 4.1.2 → 4.1.4
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d36f47f5f0236550243e1344d2bdee89559141b549575142afbd1ea5a13464d1
|
4
|
+
data.tar.gz: c772a7b58eb06904c442d220a7eae112eaeb5416774a8db28623caa770ec95e5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 176d31f10a75945b693d0e0f26497d19a95ee63863d9cf585004cfe4b9011c64d5908ee622b3a0a83dd01b3a7d4c8babee9cd84af5c2ec3315aaac8e860dc536
|
7
|
+
data.tar.gz: e75efdc5c2b79a11c380d3905cb2d8d495c74cb01c88264dc0b362c0393007037d3bb814af0bb70ec0c82ce6779db51ca9ecd2be2f7ebb79a2880636645508ae
|
@@ -10,7 +10,7 @@ end
|
|
10
10
|
|
11
11
|
|
12
12
|
if local_assigns[:top_nav] || json_ui_app_is_web?
|
13
|
-
page.leftDrawer styleClasses:['maxi'], content: ->(drawer) do
|
13
|
+
page.leftDrawer styleClasses: ['maxi'], content: ->(drawer) do
|
14
14
|
drawer.header childViews: ->(header) do
|
15
15
|
header.button text: 'App', styleClasses: ['link', 'logo'], onClick: ->(action) do
|
16
16
|
action.windows_open url: root_url
|
@@ -51,6 +51,10 @@ if local_assigns[:top_nav] || json_ui_app_is_web?
|
|
51
51
|
action.windows_open url: json_ui_garage_url(path: 'services/index')
|
52
52
|
end
|
53
53
|
|
54
|
+
menu.button text: 'Test Page', onClick: ->(action) do
|
55
|
+
action.windows_open url: json_ui_garage_url(path: 'test_page/index')
|
56
|
+
end
|
57
|
+
|
54
58
|
menu.divider
|
55
59
|
menu.label text: 'Misc Menu'
|
56
60
|
|
@@ -106,8 +106,8 @@ page.form \
|
|
106
106
|
end
|
107
107
|
end,
|
108
108
|
childViews: ->(group) do
|
109
|
-
group.fields_radio value: 'show', label: 'Show'
|
110
|
-
group.fields_radio value: 'hide', label: 'Hide'
|
109
|
+
group.fields_radio value: 'show', label: 'Show', icon: 'edit', iconSize: 40
|
110
|
+
group.fields_radio value: 'hide', label: 'Hide', imageUrl: 'https://cdn.pixabay.com/photo/2020/08/05/13/12/eco-5465432_1280.png'
|
111
111
|
group.fields_radio value: '', label: 'Empty'
|
112
112
|
end
|
113
113
|
form.spacer height: 10
|
@@ -0,0 +1,120 @@
|
|
1
|
+
json.title 'Test Page'
|
2
|
+
|
3
|
+
page = json_ui_page json
|
4
|
+
|
5
|
+
page.body childViews: ->(body) do
|
6
|
+
body.panels_responsive padding: glib_json_padding_body, childViews: ->(res) do
|
7
|
+
res.panels_column lg: { cols: 6 }, childViews: ->(col) do
|
8
|
+
res.h2 text: 'Reactivity & validation'
|
9
|
+
res.spacer height: 8
|
10
|
+
res.panels_form \
|
11
|
+
url: json_ui_garage_url(path: 'forms/generic_post'),
|
12
|
+
method: 'post',
|
13
|
+
childViews: ->(form) do
|
14
|
+
form.panels_flow innerPadding: { bottom: 0 }, width: 'matchParent', childViews: ->(hori) do
|
15
|
+
hori.button text: 'components/set', onClick: ->(action) do
|
16
|
+
action.runMultiple childActions: ->(saction) do
|
17
|
+
saction.components_set targetId: 'text', data: { value: 'Doe John' }
|
18
|
+
saction.components_set targetId: 'textarea', data: { value: 'The quick brown fox jumps over the lazy dog' }
|
19
|
+
new_options = [{ text: 'Option99', value: 'option99' }]
|
20
|
+
['select', 'chip_group'].each do |id|
|
21
|
+
saction.components_set targetId: id, data: { options: new_options, value: ['option99'] }
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
hori.spacer width: 4
|
26
|
+
hori.button text: 'logics/set', onClick: ->(action) do
|
27
|
+
action.logics_set targetId: 'date', conditionalData: { value: { "+": [{ "var": ['user[date]'] }, 60 * 60 * 24 * 3] } }
|
28
|
+
end
|
29
|
+
hori.spacer width: 4
|
30
|
+
hori.button text: 'components/replace', onClick: ->(action) do
|
31
|
+
action.runMultiple childActions: ->(saction) do
|
32
|
+
saction.components_replace targetId: 'radio_group', newView: ->(view) do
|
33
|
+
view.fields_radioGroup value: '', childViews: ->(sview) do
|
34
|
+
sview.fields_radio label: 'Option99', value: 'option99'
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
saction.components_replace targetId: 'check_group', newView: ->(view) do
|
39
|
+
view.fields_checkGroup value: '', childViews: ->(sview) do
|
40
|
+
sview.fields_check label: 'Option99', value: nil, checkValue: 'option99'
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
hori.spacer width: 4
|
46
|
+
hori.button text: 'hide select', onClick: ->(action) do
|
47
|
+
action.components_set targetId: 'select', data: { displayed: false }
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
form.spacer height: 8
|
52
|
+
form.hr width: 'matchParent'
|
53
|
+
form.spacer height: 8
|
54
|
+
|
55
|
+
validation = { required: { message: 'Required' } }
|
56
|
+
options = ['option1', 'option2', 'option3', 'option4'].map { |option| { 'text'=> option.humanize, 'value' => option } }
|
57
|
+
|
58
|
+
form.fields_date width: 'matchParent', name: 'user[date]', id: 'date', value: Date.new(2024, 7, 24), validation: validation
|
59
|
+
form.hr width: 'matchParent'
|
60
|
+
form.fields_select multiple: true, width: 'matchParent', name: 'user[select][]', id: 'select', options: options, value: ['option1', 'option2'], validation: validation
|
61
|
+
form.hr width: 'matchParent'
|
62
|
+
form.fields_chipGroup width: 'matchParent', name: 'user[chip_group]', id: 'chip_group', options: options, value: ['option2'], validation: validation
|
63
|
+
form.hr width: 'matchParent'
|
64
|
+
form.fields_radioGroup width: 'matchParent', name: 'user[radio_group]', id: 'radio_group', value: 'option3', validation: validation, childViews: ->(radio) do
|
65
|
+
options.each do |option|
|
66
|
+
radio.fields_radio label: option['text'], value: option['value']
|
67
|
+
end
|
68
|
+
end
|
69
|
+
form.hr width: 'matchParent'
|
70
|
+
check_group_value = ['option3', 'option1']
|
71
|
+
form.fields_checkGroup width: 'matchParent', name: 'user[check_group]', id: 'check_group', value: check_group_value, validation: validation, childViews: ->(radio) do
|
72
|
+
options.each do |option|
|
73
|
+
radio.fields_check label: option['text'], checkValue: option['value']
|
74
|
+
end
|
75
|
+
end
|
76
|
+
form.hr width: 'matchParent'
|
77
|
+
form.fields_text width: 'matchParent', name: 'user[text]', id: 'text', value: 'John Doe', validation: validation
|
78
|
+
|
79
|
+
form.hr width: 'matchParent'
|
80
|
+
|
81
|
+
form.fields_textarea width: 'matchParent', name: 'user[textarea]', id: 'textarea', value: 'Lorem ipsum et dumet bla bla bla...'
|
82
|
+
|
83
|
+
form.hr width: 'matchParent'
|
84
|
+
form.fields_submit text: 'submit'
|
85
|
+
form.spacer height: 2
|
86
|
+
form.fields_submit text: 'submit (if form valid)', disableIfFormInvalid: true
|
87
|
+
end
|
88
|
+
|
89
|
+
|
90
|
+
res.spacer height: 16
|
91
|
+
|
92
|
+
end
|
93
|
+
|
94
|
+
|
95
|
+
res.panels_column lg: { cols: 6 }, childViews: ->(col) do
|
96
|
+
res.h2 text: 'Dialog'
|
97
|
+
res.spacer height: 8
|
98
|
+
res.button text: 'Dialog updateExisting', onClick: ->(action) do
|
99
|
+
action.runMultiple childActions: ->(saction) do
|
100
|
+
saction.dialogs_show updateExisting: true, content: ->(dialog) do
|
101
|
+
dialog.body padding: glib_json_padding_body, childViews: ->(sbody) do
|
102
|
+
sbody.h1 text: 'Hello world'
|
103
|
+
sbody.button text: 'change dialog content', onClick: ->(ssaction) do
|
104
|
+
ssaction.dialogs_show updateExisting: true, disableCloseButton: true, content: ->(sdialog) do
|
105
|
+
sdialog.body padding: glib_json_padding_body, childViews: ->(ssbody) do
|
106
|
+
ssbody.h1 text: 'Hello world (updated)'
|
107
|
+
ssbody.spacer height: 8
|
108
|
+
ssbody.button text: 'close', onClick: ->(xaction) do
|
109
|
+
xaction.dialogs_close
|
110
|
+
end
|
111
|
+
end
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
end
|
120
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: glib-web
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.1.
|
4
|
+
version: 4.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ''
|
@@ -271,6 +271,7 @@ files:
|
|
271
271
|
- app/views/json_ui/garage/tables/index.json.jbuilder
|
272
272
|
- app/views/json_ui/garage/tables/layout.json.jbuilder
|
273
273
|
- app/views/json_ui/garage/tables/panel_content.json.jbuilder
|
274
|
+
- app/views/json_ui/garage/test_page/index.json.jbuilder
|
274
275
|
- app/views/json_ui/garage/views/_chart_data.json.jbuilder
|
275
276
|
- app/views/json_ui/garage/views/banners.json.jbuilder
|
276
277
|
- app/views/json_ui/garage/views/calendar_data.json.jbuilder
|