ui_bibz 3.0.0.beta17 → 3.0.1
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/.rubocop.yml +0 -1
- data/.ruby-version +1 -1
- data/Gemfile.lock +103 -97
- data/lib/ui_bibz.rb +1 -1
- data/lib/ui_bibz/concerns/models/searchable.rb +4 -2
- data/lib/ui_bibz/infos.rb +3 -3
- data/lib/ui_bibz/inputs/ui_bibz_form/ui_bibz_form_builder.rb +1 -1
- data/lib/ui_bibz/ui/concerns/card_itemable_concern.rb +1 -1
- data/lib/ui_bibz/ui/concerns/html_concern.rb +1 -1
- data/lib/ui_bibz/ui/concerns/navigation_concern.rb +1 -1
- data/lib/ui_bibz/ui/concerns/notification_concern.rb +3 -3
- data/lib/ui_bibz/ui/core/boxes/card.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/card_body.rb +1 -1
- data/lib/ui_bibz/ui/core/boxes/components/card_col.rb +1 -1
- data/lib/ui_bibz/ui/core/component.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/buttons/button.rb +4 -4
- data/lib/ui_bibz/ui/core/forms/buttons/button_link.rb +3 -3
- data/lib/ui_bibz/ui/core/forms/choices/choice_group.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/numbers/formula_field.rb +1 -1
- data/lib/ui_bibz/ui/core/forms/numbers/slider_header.rb +2 -2
- data/lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb +11 -0
- data/lib/ui_bibz/ui/core/forms/surrounds/surround_field.rb +1 -1
- data/lib/ui_bibz/ui/core/layouts/col.rb +1 -3
- data/lib/ui_bibz/ui/core/layouts/row.rb +1 -3
- data/lib/ui_bibz/ui/core/navigations/breadcrumb.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/breadcrumb_link.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/nav_link_link.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/components/navbar_form.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/link.rb +1 -1
- data/lib/ui_bibz/ui/core/navigations/navbar.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/components/bar.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/components/toast_header.rb +1 -1
- data/lib/ui_bibz/ui/core/notifications/toast.rb +1 -1
- data/lib/ui_bibz/ui/ux/tables/components/store.rb +1 -1
- data/lib/ui_bibz/ui/ux/tables/extensions/paginable.rb +0 -1
- data/lib/ui_bibz/ui/ux/tables/table.rb +6 -2
- data/lib/ui_bibz/ui/ux/tables/table_search_field.rb +1 -0
- data/lib/ui_bibz/utils/breakdown_class_name_generator.rb +2 -2
- data/lib/ui_bibz/utils/screwdriver.rb +1 -1
- data/test/simple_form_test.rb +1 -1
- data/test/ui/core/forms/choices/checkbox_field_test.rb +7 -0
- data/test/ui/core/forms/selects/{multi_select_field_test.rb → dropdown_select_field_test.rb} +5 -5
- data/test/ui/ux/tables/table_test.rb +8 -1
- data/ui_bibz.gemspec +3 -2
- metadata +28 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3ea698e25d31853e0cf7b8fe660f0b5ec71495e8fb76e5669aaa101a037c43ec
|
|
4
|
+
data.tar.gz: d9c1a0975f1799f749b767743fea8ab0e9cac10a22694417bb9aae162aefad15
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d2f33e5118202bddb6a7dd05e4db66dc92bbe9e9aa8598ee055aa0756352566b1052c2d6bae950647880d39cc2daf4c1bc3d69169c144fd54115dd40940bc035
|
|
7
|
+
data.tar.gz: 9fc847dbd4165c92043f7376276db0720f102ed98a4af29161fd4fd48225fcfc930db39a90895b975a97196678618efec022998f8c15f5c94be94003b813efce
|
data/.rubocop.yml
CHANGED
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
ruby-
|
|
1
|
+
ruby-3.0.1
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
ui_bibz (3.0.
|
|
4
|
+
ui_bibz (3.0.1)
|
|
5
5
|
will-paginate-i18n
|
|
6
6
|
will_paginate (~> 3.3.0)
|
|
7
7
|
will_paginate-bootstrap4
|
|
@@ -9,69 +9,73 @@ PATH
|
|
|
9
9
|
GEM
|
|
10
10
|
remote: https://rubygems.org/
|
|
11
11
|
specs:
|
|
12
|
-
actioncable (6.
|
|
13
|
-
actionpack (= 6.
|
|
12
|
+
actioncable (6.1.4)
|
|
13
|
+
actionpack (= 6.1.4)
|
|
14
|
+
activesupport (= 6.1.4)
|
|
14
15
|
nio4r (~> 2.0)
|
|
15
16
|
websocket-driver (>= 0.6.1)
|
|
16
|
-
actionmailbox (6.
|
|
17
|
-
actionpack (= 6.
|
|
18
|
-
activejob (= 6.
|
|
19
|
-
activerecord (= 6.
|
|
20
|
-
activestorage (= 6.
|
|
21
|
-
activesupport (= 6.
|
|
17
|
+
actionmailbox (6.1.4)
|
|
18
|
+
actionpack (= 6.1.4)
|
|
19
|
+
activejob (= 6.1.4)
|
|
20
|
+
activerecord (= 6.1.4)
|
|
21
|
+
activestorage (= 6.1.4)
|
|
22
|
+
activesupport (= 6.1.4)
|
|
22
23
|
mail (>= 2.7.1)
|
|
23
|
-
actionmailer (6.
|
|
24
|
-
actionpack (= 6.
|
|
25
|
-
actionview (= 6.
|
|
26
|
-
activejob (= 6.
|
|
24
|
+
actionmailer (6.1.4)
|
|
25
|
+
actionpack (= 6.1.4)
|
|
26
|
+
actionview (= 6.1.4)
|
|
27
|
+
activejob (= 6.1.4)
|
|
28
|
+
activesupport (= 6.1.4)
|
|
27
29
|
mail (~> 2.5, >= 2.5.4)
|
|
28
30
|
rails-dom-testing (~> 2.0)
|
|
29
|
-
actionpack (6.
|
|
30
|
-
actionview (= 6.
|
|
31
|
-
activesupport (= 6.
|
|
32
|
-
rack (~> 2.0, >= 2.0.
|
|
31
|
+
actionpack (6.1.4)
|
|
32
|
+
actionview (= 6.1.4)
|
|
33
|
+
activesupport (= 6.1.4)
|
|
34
|
+
rack (~> 2.0, >= 2.0.9)
|
|
33
35
|
rack-test (>= 0.6.3)
|
|
34
36
|
rails-dom-testing (~> 2.0)
|
|
35
37
|
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
|
36
|
-
actiontext (6.
|
|
37
|
-
actionpack (= 6.
|
|
38
|
-
activerecord (= 6.
|
|
39
|
-
activestorage (= 6.
|
|
40
|
-
activesupport (= 6.
|
|
38
|
+
actiontext (6.1.4)
|
|
39
|
+
actionpack (= 6.1.4)
|
|
40
|
+
activerecord (= 6.1.4)
|
|
41
|
+
activestorage (= 6.1.4)
|
|
42
|
+
activesupport (= 6.1.4)
|
|
41
43
|
nokogiri (>= 1.8.5)
|
|
42
|
-
actionview (6.
|
|
43
|
-
activesupport (= 6.
|
|
44
|
+
actionview (6.1.4)
|
|
45
|
+
activesupport (= 6.1.4)
|
|
44
46
|
builder (~> 3.1)
|
|
45
47
|
erubi (~> 1.4)
|
|
46
48
|
rails-dom-testing (~> 2.0)
|
|
47
49
|
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
|
48
|
-
activejob (6.
|
|
49
|
-
activesupport (= 6.
|
|
50
|
+
activejob (6.1.4)
|
|
51
|
+
activesupport (= 6.1.4)
|
|
50
52
|
globalid (>= 0.3.6)
|
|
51
|
-
activemodel (6.
|
|
52
|
-
activesupport (= 6.
|
|
53
|
-
activerecord (6.
|
|
54
|
-
activemodel (= 6.
|
|
55
|
-
activesupport (= 6.
|
|
56
|
-
activestorage (6.
|
|
57
|
-
actionpack (= 6.
|
|
58
|
-
activejob (= 6.
|
|
59
|
-
activerecord (= 6.
|
|
53
|
+
activemodel (6.1.4)
|
|
54
|
+
activesupport (= 6.1.4)
|
|
55
|
+
activerecord (6.1.4)
|
|
56
|
+
activemodel (= 6.1.4)
|
|
57
|
+
activesupport (= 6.1.4)
|
|
58
|
+
activestorage (6.1.4)
|
|
59
|
+
actionpack (= 6.1.4)
|
|
60
|
+
activejob (= 6.1.4)
|
|
61
|
+
activerecord (= 6.1.4)
|
|
62
|
+
activesupport (= 6.1.4)
|
|
60
63
|
marcel (~> 1.0.0)
|
|
61
|
-
|
|
64
|
+
mini_mime (>= 1.1.0)
|
|
65
|
+
activesupport (6.1.4)
|
|
62
66
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
63
|
-
i18n (>=
|
|
64
|
-
minitest (
|
|
65
|
-
tzinfo (~>
|
|
66
|
-
zeitwerk (~> 2.
|
|
67
|
+
i18n (>= 1.6, < 2)
|
|
68
|
+
minitest (>= 5.1)
|
|
69
|
+
tzinfo (~> 2.0)
|
|
70
|
+
zeitwerk (~> 2.3)
|
|
67
71
|
ast (2.4.2)
|
|
68
72
|
awesome_print (1.9.2)
|
|
69
73
|
builder (3.2.4)
|
|
70
74
|
byebug (11.1.3)
|
|
71
|
-
childprocess (4.
|
|
72
|
-
concurrent-ruby (1.1.
|
|
75
|
+
childprocess (4.1.0)
|
|
76
|
+
concurrent-ruby (1.1.9)
|
|
73
77
|
crass (1.0.6)
|
|
74
|
-
docile (1.
|
|
78
|
+
docile (1.4.0)
|
|
75
79
|
erubi (1.10.0)
|
|
76
80
|
erubis (2.7.0)
|
|
77
81
|
factory_bot (4.11.1)
|
|
@@ -79,9 +83,9 @@ GEM
|
|
|
79
83
|
factory_bot_rails (4.11.1)
|
|
80
84
|
factory_bot (~> 4.11.1)
|
|
81
85
|
railties (>= 3.0.0)
|
|
82
|
-
globalid (0.
|
|
83
|
-
activesupport (>=
|
|
84
|
-
haml (5.2.
|
|
86
|
+
globalid (0.5.2)
|
|
87
|
+
activesupport (>= 5.0)
|
|
88
|
+
haml (5.2.2)
|
|
85
89
|
temple (>= 0.8.0)
|
|
86
90
|
tilt
|
|
87
91
|
haml-rails (2.0.1)
|
|
@@ -95,91 +99,92 @@ GEM
|
|
|
95
99
|
haml (>= 4.0, < 6)
|
|
96
100
|
nokogiri (>= 1.6.0)
|
|
97
101
|
ruby_parser (~> 3.5)
|
|
98
|
-
i18n (1.8.
|
|
102
|
+
i18n (1.8.10)
|
|
99
103
|
concurrent-ruby (~> 1.0)
|
|
100
104
|
iniparse (1.5.0)
|
|
101
105
|
jquery-rails (4.4.0)
|
|
102
106
|
rails-dom-testing (>= 1, < 3)
|
|
103
107
|
railties (>= 4.2.0)
|
|
104
108
|
thor (>= 0.14, < 2.0)
|
|
105
|
-
loofah (2.
|
|
109
|
+
loofah (2.12.0)
|
|
106
110
|
crass (~> 1.0.2)
|
|
107
111
|
nokogiri (>= 1.5.9)
|
|
108
112
|
mail (2.7.1)
|
|
109
113
|
mini_mime (>= 0.1.1)
|
|
110
|
-
marcel (1.0.
|
|
114
|
+
marcel (1.0.1)
|
|
111
115
|
method_source (1.0.0)
|
|
112
|
-
mini_mime (1.0
|
|
113
|
-
mini_portile2 (2.
|
|
116
|
+
mini_mime (1.1.0)
|
|
117
|
+
mini_portile2 (2.6.1)
|
|
114
118
|
minitest (5.14.4)
|
|
115
|
-
nio4r (2.5.
|
|
116
|
-
nokogiri (1.
|
|
117
|
-
mini_portile2 (~> 2.
|
|
119
|
+
nio4r (2.5.8)
|
|
120
|
+
nokogiri (1.12.3)
|
|
121
|
+
mini_portile2 (~> 2.6.1)
|
|
118
122
|
racc (~> 1.4)
|
|
119
|
-
overcommit (0.
|
|
123
|
+
overcommit (0.58.0)
|
|
120
124
|
childprocess (>= 0.6.3, < 5)
|
|
121
125
|
iniparse (~> 1.4)
|
|
126
|
+
rexml (~> 3.2)
|
|
122
127
|
parallel (1.20.1)
|
|
123
|
-
parser (3.0.
|
|
128
|
+
parser (3.0.2.0)
|
|
124
129
|
ast (~> 2.4.1)
|
|
125
130
|
racc (1.5.2)
|
|
126
131
|
rack (2.2.3)
|
|
127
132
|
rack-test (1.1.0)
|
|
128
133
|
rack (>= 1.0, < 3)
|
|
129
|
-
rails (6.
|
|
130
|
-
actioncable (= 6.
|
|
131
|
-
actionmailbox (= 6.
|
|
132
|
-
actionmailer (= 6.
|
|
133
|
-
actionpack (= 6.
|
|
134
|
-
actiontext (= 6.
|
|
135
|
-
actionview (= 6.
|
|
136
|
-
activejob (= 6.
|
|
137
|
-
activemodel (= 6.
|
|
138
|
-
activerecord (= 6.
|
|
139
|
-
activestorage (= 6.
|
|
140
|
-
activesupport (= 6.
|
|
141
|
-
bundler (>= 1.
|
|
142
|
-
railties (= 6.
|
|
134
|
+
rails (6.1.4)
|
|
135
|
+
actioncable (= 6.1.4)
|
|
136
|
+
actionmailbox (= 6.1.4)
|
|
137
|
+
actionmailer (= 6.1.4)
|
|
138
|
+
actionpack (= 6.1.4)
|
|
139
|
+
actiontext (= 6.1.4)
|
|
140
|
+
actionview (= 6.1.4)
|
|
141
|
+
activejob (= 6.1.4)
|
|
142
|
+
activemodel (= 6.1.4)
|
|
143
|
+
activerecord (= 6.1.4)
|
|
144
|
+
activestorage (= 6.1.4)
|
|
145
|
+
activesupport (= 6.1.4)
|
|
146
|
+
bundler (>= 1.15.0)
|
|
147
|
+
railties (= 6.1.4)
|
|
143
148
|
sprockets-rails (>= 2.0.0)
|
|
144
149
|
rails-dom-testing (2.0.3)
|
|
145
150
|
activesupport (>= 4.2.0)
|
|
146
151
|
nokogiri (>= 1.6)
|
|
147
152
|
rails-html-sanitizer (1.3.0)
|
|
148
153
|
loofah (~> 2.3)
|
|
149
|
-
railties (6.
|
|
150
|
-
actionpack (= 6.
|
|
151
|
-
activesupport (= 6.
|
|
154
|
+
railties (6.1.4)
|
|
155
|
+
actionpack (= 6.1.4)
|
|
156
|
+
activesupport (= 6.1.4)
|
|
152
157
|
method_source
|
|
153
|
-
rake (>= 0.
|
|
154
|
-
thor (
|
|
158
|
+
rake (>= 0.13)
|
|
159
|
+
thor (~> 1.0)
|
|
155
160
|
rainbow (3.0.0)
|
|
156
|
-
rake (13.0.
|
|
161
|
+
rake (13.0.6)
|
|
157
162
|
regexp_parser (2.1.1)
|
|
158
|
-
rexml (3.2.
|
|
159
|
-
rubocop (1.
|
|
163
|
+
rexml (3.2.5)
|
|
164
|
+
rubocop (1.19.0)
|
|
160
165
|
parallel (~> 1.10)
|
|
161
166
|
parser (>= 3.0.0.0)
|
|
162
167
|
rainbow (>= 2.2.2, < 4.0)
|
|
163
168
|
regexp_parser (>= 1.8, < 3.0)
|
|
164
169
|
rexml
|
|
165
|
-
rubocop-ast (>= 1.
|
|
170
|
+
rubocop-ast (>= 1.9.1, < 2.0)
|
|
166
171
|
ruby-progressbar (~> 1.7)
|
|
167
172
|
unicode-display_width (>= 1.4.0, < 3.0)
|
|
168
|
-
rubocop-ast (1.
|
|
169
|
-
parser (>=
|
|
170
|
-
rubocop-minitest (0.
|
|
173
|
+
rubocop-ast (1.10.0)
|
|
174
|
+
parser (>= 3.0.1.1)
|
|
175
|
+
rubocop-minitest (0.15.0)
|
|
171
176
|
rubocop (>= 0.90, < 2.0)
|
|
172
|
-
rubocop-performance (1.
|
|
173
|
-
rubocop (>=
|
|
177
|
+
rubocop-performance (1.11.5)
|
|
178
|
+
rubocop (>= 1.7.0, < 2.0)
|
|
174
179
|
rubocop-ast (>= 0.4.0)
|
|
175
|
-
rubocop-rails (2.
|
|
180
|
+
rubocop-rails (2.11.3)
|
|
176
181
|
activesupport (>= 4.2.0)
|
|
177
182
|
rack (>= 1.1)
|
|
178
|
-
rubocop (>=
|
|
183
|
+
rubocop (>= 1.7.0, < 2.0)
|
|
179
184
|
ruby-progressbar (1.11.0)
|
|
180
|
-
ruby_parser (3.
|
|
181
|
-
sexp_processor (~> 4.
|
|
182
|
-
sexp_processor (4.15.
|
|
185
|
+
ruby_parser (3.17.0)
|
|
186
|
+
sexp_processor (~> 4.15, >= 4.15.1)
|
|
187
|
+
sexp_processor (4.15.3)
|
|
183
188
|
simple_form (5.1.0)
|
|
184
189
|
actionpack (>= 5.2)
|
|
185
190
|
activemodel (>= 5.2)
|
|
@@ -188,7 +193,7 @@ GEM
|
|
|
188
193
|
simplecov-html (~> 0.11)
|
|
189
194
|
simplecov_json_formatter (~> 0.1)
|
|
190
195
|
simplecov-html (0.12.3)
|
|
191
|
-
simplecov_json_formatter (0.1.
|
|
196
|
+
simplecov_json_formatter (0.1.3)
|
|
192
197
|
sprockets (4.0.2)
|
|
193
198
|
concurrent-ruby (~> 1.0)
|
|
194
199
|
rack (> 1, < 3)
|
|
@@ -199,18 +204,18 @@ GEM
|
|
|
199
204
|
sqlite3 (1.4.2)
|
|
200
205
|
temple (0.8.2)
|
|
201
206
|
thor (1.1.0)
|
|
202
|
-
thread_safe (0.3.6)
|
|
203
207
|
tilt (2.0.10)
|
|
204
|
-
tzinfo (
|
|
205
|
-
|
|
208
|
+
tzinfo (2.0.4)
|
|
209
|
+
concurrent-ruby (~> 1.0)
|
|
206
210
|
unicode-display_width (2.0.0)
|
|
207
|
-
websocket-driver (0.7.
|
|
211
|
+
websocket-driver (0.7.5)
|
|
208
212
|
websocket-extensions (>= 0.1.0)
|
|
209
213
|
websocket-extensions (0.1.5)
|
|
210
214
|
will-paginate-i18n (0.1.15)
|
|
211
|
-
will_paginate (3.3.
|
|
215
|
+
will_paginate (3.3.1)
|
|
212
216
|
will_paginate-bootstrap4 (0.2.2)
|
|
213
217
|
will_paginate (~> 3.0, >= 3.0.0)
|
|
218
|
+
yard (0.9.26)
|
|
214
219
|
zeitwerk (2.4.2)
|
|
215
220
|
|
|
216
221
|
PLATFORMS
|
|
@@ -224,7 +229,7 @@ DEPENDENCIES
|
|
|
224
229
|
jquery-rails (>= 3.1.0)
|
|
225
230
|
minitest
|
|
226
231
|
overcommit
|
|
227
|
-
rails (~> 6.
|
|
232
|
+
rails (~> 6.1.3, >= 6.1.3.2)
|
|
228
233
|
rubocop
|
|
229
234
|
rubocop-ast
|
|
230
235
|
rubocop-minitest
|
|
@@ -234,6 +239,7 @@ DEPENDENCIES
|
|
|
234
239
|
simplecov
|
|
235
240
|
sqlite3
|
|
236
241
|
ui_bibz!
|
|
242
|
+
yard
|
|
237
243
|
|
|
238
244
|
BUNDLED WITH
|
|
239
|
-
2.
|
|
245
|
+
2.2.21
|
data/lib/ui_bibz.rb
CHANGED
|
@@ -16,7 +16,7 @@ module UiBibz::Concerns::Models::Searchable
|
|
|
16
16
|
|
|
17
17
|
def self.generate_parameters
|
|
18
18
|
{
|
|
19
|
-
controller: @params[:controller],
|
|
19
|
+
controller: @arguments[:controller] || @params[:controller],
|
|
20
20
|
param_id: @params[:id],
|
|
21
21
|
params: @params,
|
|
22
22
|
direction: @params[:direction],
|
|
@@ -37,11 +37,13 @@ module UiBibz::Concerns::Models::Searchable
|
|
|
37
37
|
|
|
38
38
|
# If there is more one table in html page
|
|
39
39
|
def self.initialize_params
|
|
40
|
+
@tmp_params = { per_page: @arguments[:per_page] }
|
|
41
|
+
|
|
40
42
|
return unless good_store_id?
|
|
41
43
|
|
|
42
44
|
@tmp_params = {
|
|
43
45
|
search: @params[:search],
|
|
44
|
-
per_page: @params[:per_page],
|
|
46
|
+
per_page: @params[:per_page] || @arguments[:per_page],
|
|
45
47
|
page: new_search? ? nil : @params[:page],
|
|
46
48
|
sort: @params[:sort],
|
|
47
49
|
direction: @params[:direction]
|
data/lib/ui_bibz/infos.rb
CHANGED
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
module UiBibz
|
|
4
4
|
NAME = 'Ui Bibz'
|
|
5
5
|
SLUG = 'ui_bibz'
|
|
6
|
-
BOOTSTRAP_VERSION = '5.0.
|
|
6
|
+
BOOTSTRAP_VERSION = '5.0.2'
|
|
7
7
|
DESCRIPTION = "A Rails Interface Framework using Bootstrap #{BOOTSTRAP_VERSION}."
|
|
8
8
|
SUMMARY = "Ui Bibz is an Ui Framework that allows you to build an interface very quickly and simply using Bootstrap #{BOOTSTRAP_VERSION}."
|
|
9
9
|
LICENSE = 'MIT'
|
|
10
|
-
FONTAWESOME_VERSION = '5.15.
|
|
10
|
+
FONTAWESOME_VERSION = '5.15.3'
|
|
11
11
|
HOMEPAGE = 'https://hummel.link/ui-bibz/'
|
|
12
12
|
REPO = 'git+https://github.com/thooams/ui_bibz.git'
|
|
13
13
|
EMAIL = 'thomas@hummel.link'
|
|
14
14
|
AUTHOR = 'Thooams [Thomas HUMMEL]'
|
|
15
|
-
VERSION = '3.0.
|
|
15
|
+
VERSION = '3.0.1'
|
|
16
16
|
AUTHORS = ['Thooams'].freeze
|
|
17
17
|
end
|
|
@@ -20,7 +20,7 @@ module UiBibzForm
|
|
|
20
20
|
required = surround_field.required_fields.any?(true)
|
|
21
21
|
wrapper_classes = UiBibz::Utils::Screwdriver.join_classes(('has-error' if errors_text.present?), wrapper_html.try(:[], :class))
|
|
22
22
|
label_classes = UiBibz::Utils::Screwdriver.join_classes(('required' if required), 'control-label')
|
|
23
|
-
abbr_html = content_tag('abbr', I18n.t(:
|
|
23
|
+
abbr_html = content_tag('abbr', I18n.t(:'simple_form.required.mark', default: '*'), title: I18n.t(:'simple_form.required.text', default: 'required')) if required
|
|
24
24
|
|
|
25
25
|
wrapper_html[:class] = wrapper_classes
|
|
26
26
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
module UiBibz::Ui::Concerns::NotificationConcern
|
|
3
|
+
module UiBibz::Ui::Concerns::NotificationConcern # :nodoc:
|
|
4
4
|
extend ActiveSupport::Concern
|
|
5
5
|
|
|
6
6
|
included do
|
|
7
7
|
def data_attributes
|
|
8
|
-
self.class.const_get('DATA_ATTRIBUTES').
|
|
8
|
+
self.class.const_get('DATA_ATTRIBUTES').filter_map do |data_attribute|
|
|
9
9
|
options[data_attribute].to_s.blank? ? nil : { "data-bs-#{data_attribute}" => data_attribute_value(data_attribute) }
|
|
10
|
-
end.
|
|
10
|
+
end.reduce(&:merge) || {}
|
|
11
11
|
end
|
|
12
12
|
end
|
|
13
13
|
end
|
|
@@ -90,7 +90,7 @@ module UiBibz::Ui::Core::Boxes
|
|
|
90
90
|
class Card < UiBibz::Ui::Core::Component
|
|
91
91
|
include UiBibz::Ui::Concerns::CardItemableConcern
|
|
92
92
|
|
|
93
|
-
#
|
|
93
|
+
# (see UiBibz::Ui::Core::Component#initialize)
|
|
94
94
|
def initialize(content = nil, options = nil, html_options = nil, &block)
|
|
95
95
|
super
|
|
96
96
|
@items = @content.nil? ? [] : [UiBibz::Ui::Core::Boxes::Components::CardBody.new(@content).render]
|
|
@@ -46,7 +46,7 @@ module UiBibz::Ui::Core::Boxes::Components
|
|
|
46
46
|
# Render html tag
|
|
47
47
|
def pre_render
|
|
48
48
|
if options[:collapse]
|
|
49
|
-
content_tag :div, class: join_classes('collapse', show), id: options[:collapse],
|
|
49
|
+
content_tag :div, class: join_classes('collapse', show), id: options[:collapse], 'data-bs-parent': "##{options[:parent_collapse]}" do
|
|
50
50
|
content_tag :div, @items.join.html_safe, html_options
|
|
51
51
|
end
|
|
52
52
|
else
|
|
@@ -47,7 +47,7 @@ module UiBibz::Ui::Core::Boxes::Components
|
|
|
47
47
|
|
|
48
48
|
# See UiBibz::Ui::Core::Component.initialize
|
|
49
49
|
def initialize(content = nil, options = nil, html_options = nil, &block)
|
|
50
|
-
content =
|
|
50
|
+
content = { num: content } if content.is_a?(Integer)
|
|
51
51
|
super
|
|
52
52
|
@items = [@content]
|
|
53
53
|
end
|
|
@@ -148,7 +148,7 @@ module UiBibz::Ui::Core
|
|
|
148
148
|
# Add html data arguments
|
|
149
149
|
def add_html_data(name, value: true)
|
|
150
150
|
html_options[:data] = {} if html_options[:data].nil?
|
|
151
|
-
value = value.is_a?(String)
|
|
151
|
+
value = value.strip if value.is_a?(String)
|
|
152
152
|
html_options[:data].update({ name => value })
|
|
153
153
|
end
|
|
154
154
|
|
|
@@ -83,10 +83,10 @@ module UiBibz::Ui::Core::Forms::Buttons
|
|
|
83
83
|
def collapse
|
|
84
84
|
# Must be flat hash not deep hash
|
|
85
85
|
{
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
86
|
+
'data-bs-toggle': :collapse,
|
|
87
|
+
'data-bs-target': "##{options[:collapse]}",
|
|
88
|
+
'aria-controls': options[:collapse],
|
|
89
|
+
'aria-expanded': options[:expand_collapse].nil? ? false : options[:expand_collapse]
|
|
90
90
|
}
|
|
91
91
|
end
|
|
92
92
|
|
|
@@ -78,9 +78,9 @@ module UiBibz::Ui::Core::Forms::Buttons
|
|
|
78
78
|
def collapse
|
|
79
79
|
# Must be flat hash not deep hash
|
|
80
80
|
{
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
81
|
+
'data-bs-toggle': :collapse,
|
|
82
|
+
'aria-controls': options[:collapse],
|
|
83
|
+
'aria-expanded': options[:expand_collaspe].nil? ? false : options[:expand_collaspe]
|
|
84
84
|
}
|
|
85
85
|
end
|
|
86
86
|
end
|
|
@@ -53,7 +53,7 @@ module UiBibz::Ui::Core::Forms::Numbers
|
|
|
53
53
|
sf.text_field formula_field_name, nil, text_field_formula_html_options
|
|
54
54
|
sf.addon '=', class: 'formula-field-sign'
|
|
55
55
|
sf.text_field content, nil, text_field_input_html_options
|
|
56
|
-
sf.addon formula_field_alert_glyph, { class: 'formula-field-alert' }, { data: {
|
|
56
|
+
sf.addon formula_field_alert_glyph, { class: 'formula-field-alert' }, { data: { 'bs-toggle': 'tooltip' } }
|
|
57
57
|
sf.addon @options[:prepend] unless @options[:prepend].nil?
|
|
58
58
|
end.render
|
|
59
59
|
end
|
|
@@ -53,14 +53,14 @@ module UiBibz::Ui::Core::Forms::Numbers
|
|
|
53
53
|
def header_min
|
|
54
54
|
content_tag :div, class: 'slider-header-min' do
|
|
55
55
|
concat content_tag :label, options[:label_min] || 'Min: ', for: options[:label_for_min]
|
|
56
|
-
concat content_tag :span, options[:thumb_min],
|
|
56
|
+
concat content_tag :span, options[:thumb_min], 'data-unit': options[:unit] || options[:unit_min]
|
|
57
57
|
end
|
|
58
58
|
end
|
|
59
59
|
|
|
60
60
|
def header_max
|
|
61
61
|
content_tag :div, class: 'slider-header-max' do
|
|
62
62
|
concat content_tag :label, options[:label_max] || 'Max: ', for: options[:label_for_max]
|
|
63
|
-
concat content_tag :span, options[:thumb_max],
|
|
63
|
+
concat content_tag :span, options[:thumb_max], 'data-unit': options[:unit] || options[:unit_max]
|
|
64
64
|
end
|
|
65
65
|
end
|
|
66
66
|
|
|
@@ -25,6 +25,7 @@ module UiBibz::Ui::Core::Forms::Selects
|
|
|
25
25
|
# * +searchable+ - Boolean
|
|
26
26
|
# * +select_all_option+ - Boolean
|
|
27
27
|
# * +append+ - String, Html
|
|
28
|
+
# * +non_selected_text+ - String
|
|
28
29
|
# * +open+ - Boolean
|
|
29
30
|
# * +theme+ - Symbol, defaut: +:dark+
|
|
30
31
|
# * +prepend+ - String, Html
|
|
@@ -83,10 +84,12 @@ module UiBibz::Ui::Core::Forms::Selects
|
|
|
83
84
|
clickable_opt_group
|
|
84
85
|
collapsible_opt_group
|
|
85
86
|
searchable
|
|
87
|
+
non_selected_text
|
|
86
88
|
select_all_options
|
|
87
89
|
number_displayed
|
|
88
90
|
dropdown_menu_classes
|
|
89
91
|
dropdown_classes
|
|
92
|
+
n_selected_text
|
|
90
93
|
end
|
|
91
94
|
|
|
92
95
|
def clickable_opt_group
|
|
@@ -101,6 +104,10 @@ module UiBibz::Ui::Core::Forms::Selects
|
|
|
101
104
|
add_html_data('enable_filtering') if options[:searchable]
|
|
102
105
|
end
|
|
103
106
|
|
|
107
|
+
def n_selected_text
|
|
108
|
+
add_html_data('n_selected_text', value: options[:n_selected_text]) if options[:n_selected_text]
|
|
109
|
+
end
|
|
110
|
+
|
|
104
111
|
def number_displayed
|
|
105
112
|
add_html_data('number_displayed') if options[:number_displayed]
|
|
106
113
|
end
|
|
@@ -109,6 +116,10 @@ module UiBibz::Ui::Core::Forms::Selects
|
|
|
109
116
|
add_html_data('include_select_all_option') if options[:select_all_options]
|
|
110
117
|
end
|
|
111
118
|
|
|
119
|
+
def non_selected_text
|
|
120
|
+
add_html_data('non_selected_text', value: options[:non_selected_text]) if options[:non_selected_text]
|
|
121
|
+
end
|
|
122
|
+
|
|
112
123
|
def dropdown_menu_classes
|
|
113
124
|
classes = join_classes(theme, alignment, open)
|
|
114
125
|
add_html_data('dropdown_menu_classes', value: classes.nil? ? nil : classes.join(' '))
|
|
@@ -116,7 +116,7 @@ module UiBibz::Ui::Core::Forms::Surrounds
|
|
|
116
116
|
end
|
|
117
117
|
|
|
118
118
|
def dropdown_select_field(content = nil, options = nil, html_options = nil, &block)
|
|
119
|
-
html_options = (html_options || {}).merge(
|
|
119
|
+
html_options = (html_options || {}).merge('data-wrapper-classes': 'input-group-btn')
|
|
120
120
|
@items << UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new(content, options, html_options, &block).render
|
|
121
121
|
end
|
|
122
122
|
|
|
@@ -52,9 +52,7 @@ module UiBibz::Ui::Core::Layouts
|
|
|
52
52
|
class Col < UiBibz::Ui::Core::Component
|
|
53
53
|
# See UiBibz::Ui::Core::Component.initialize
|
|
54
54
|
def initialize(content = nil, options = nil, html_options = nil, &block)
|
|
55
|
-
|
|
56
|
-
content = content.is_a?(Integer) ? { num: content } : content
|
|
57
|
-
end
|
|
55
|
+
content = { num: content } if !block.nil? && content.is_a?(Integer)
|
|
58
56
|
super
|
|
59
57
|
end
|
|
60
58
|
|
|
@@ -50,9 +50,7 @@ module UiBibz::Ui::Core::Layouts
|
|
|
50
50
|
|
|
51
51
|
# See UiBibz::Ui::Core::Component.initialize
|
|
52
52
|
def initialize(content = nil, options = nil, html_options = nil, &block)
|
|
53
|
-
|
|
54
|
-
content = content.is_a?(Integer) ? { num: content } : content
|
|
55
|
-
end
|
|
53
|
+
content = { num: content } if !block.nil? && content.is_a?(Integer)
|
|
56
54
|
super
|
|
57
55
|
@items = [@content]
|
|
58
56
|
end
|
|
@@ -50,7 +50,7 @@ module UiBibz::Ui::Core::Navigations::Components
|
|
|
50
50
|
private
|
|
51
51
|
|
|
52
52
|
def component_html_options
|
|
53
|
-
super.merge(options[:current] ? {
|
|
53
|
+
super.merge(options[:current] ? { 'aria-current': 'page' } : {})
|
|
54
54
|
end
|
|
55
55
|
|
|
56
56
|
def component_html_classes
|
|
@@ -45,7 +45,7 @@ module UiBibz::Ui::Core::Navigations
|
|
|
45
45
|
when 'nav-tabs'
|
|
46
46
|
html_tag_base
|
|
47
47
|
when 'list-group'
|
|
48
|
-
html_tag_base.merge(
|
|
48
|
+
html_tag_base.merge('aria-controls': sanitize_text(content).parameterize)
|
|
49
49
|
else
|
|
50
50
|
{}
|
|
51
51
|
end.merge(options[:a_html] || {})
|
|
@@ -44,7 +44,7 @@ module UiBibz::Ui::Core::Navigations
|
|
|
44
44
|
include Haml::Helpers
|
|
45
45
|
include SimpleForm::ActionViewExtensions::FormHelper if defined?(SimpleForm)
|
|
46
46
|
include UiBibz::Helpers::UtilsHelper
|
|
47
|
-
include ActionView::Helpers
|
|
47
|
+
include ActionView::Helpers # ::FormHelper
|
|
48
48
|
|
|
49
49
|
attr_accessor :html_options
|
|
50
50
|
|
|
@@ -58,7 +58,7 @@ module UiBibz::Ui::Core::Navigations
|
|
|
58
58
|
def collapse
|
|
59
59
|
{
|
|
60
60
|
role: 'button',
|
|
61
|
-
data: {
|
|
61
|
+
data: { 'bs-toggle': :collapse },
|
|
62
62
|
aria: {
|
|
63
63
|
controls: options[:collapse],
|
|
64
64
|
expanded: options[:active_collapse].nil? ? false : options[:active_collapse]
|
|
@@ -159,7 +159,7 @@ module UiBibz::Ui::Core::Navigations
|
|
|
159
159
|
end
|
|
160
160
|
|
|
161
161
|
def navbar_toggle_button_html
|
|
162
|
-
content_tag :button, '☰', class: 'navbar-toggler hidden-sm-up', type: :button, data: {
|
|
162
|
+
content_tag :button, '☰', class: 'navbar-toggler hidden-sm-up', type: :button, data: { 'bs-toggle': 'collapse', 'bs-target': "##{id}" }
|
|
163
163
|
end
|
|
164
164
|
|
|
165
165
|
def expand_size
|
|
@@ -56,7 +56,7 @@ module UiBibz::Ui::Core::Notifications::Components
|
|
|
56
56
|
end
|
|
57
57
|
|
|
58
58
|
def component_html_options
|
|
59
|
-
{
|
|
59
|
+
{ 'aria-valuenow': value, 'aria-valuemin': min, 'aria-valuemax': max, style: "width: #{value}%", role: 'progressbar' }
|
|
60
60
|
end
|
|
61
61
|
|
|
62
62
|
def striped
|
|
@@ -60,7 +60,7 @@ module UiBibz::Ui::Core::Notifications::Components
|
|
|
60
60
|
end
|
|
61
61
|
|
|
62
62
|
def close_button
|
|
63
|
-
content_tag :button, '', class: 'ml-2 mb-1 btn-close',
|
|
63
|
+
content_tag :button, '', class: 'ml-2 mb-1 btn-close', 'data-bs-dismiss': 'toast', 'aria-label': 'Close'
|
|
64
64
|
end
|
|
65
65
|
|
|
66
66
|
def component_html_classes
|
|
@@ -102,7 +102,7 @@ module UiBibz::Ui::Core::Notifications
|
|
|
102
102
|
end
|
|
103
103
|
|
|
104
104
|
def component_html_options
|
|
105
|
-
{ role: 'alert',
|
|
105
|
+
{ role: 'alert', 'aria-live': 'assertive', 'aria-atomic': true }
|
|
106
106
|
end
|
|
107
107
|
|
|
108
108
|
def component_html_data
|
|
@@ -57,7 +57,7 @@ module UiBibz::Ui::Ux::Tables
|
|
|
57
57
|
end
|
|
58
58
|
|
|
59
59
|
def columns
|
|
60
|
-
@columns ||= Columns.new(model.
|
|
60
|
+
@columns ||= Columns.new(model.attribute_names.map { |attribute_name| Column.new(attribute_name, { name: attribute_name.humanize }) })
|
|
61
61
|
end
|
|
62
62
|
|
|
63
63
|
attr_reader :model
|
|
@@ -15,7 +15,6 @@ module UiBibz::Ui::Ux::Tables
|
|
|
15
15
|
content_tag :div, @html_options do
|
|
16
16
|
concat UiBibz::Ui::Ux::Tables::TablePagination.new(store: @store, wrap_form: @options[:wrap_form]).render
|
|
17
17
|
concat UiBibz::Ui::Ux::Tables::TablePaginationPerPage.new(store: @store, wrap_form: @options[:wrap_form]).render
|
|
18
|
-
concat tag(:br, class: 'ui-bibz-clear')
|
|
19
18
|
end
|
|
20
19
|
end
|
|
21
20
|
|
|
@@ -172,12 +172,16 @@ module UiBibz::Ui::Ux::Tables
|
|
|
172
172
|
|
|
173
173
|
# Maybe create a class for td_content
|
|
174
174
|
def td_content(record, col)
|
|
175
|
-
|
|
175
|
+
begin
|
|
176
|
+
content = col.count ? record.send(col.data_index).count : record.send(col.data_index)
|
|
177
|
+
rescue StandardError
|
|
178
|
+
content = nil
|
|
179
|
+
end
|
|
176
180
|
unless content.nil?
|
|
177
181
|
content = content.strftime(col.date_format) unless col.date_format.nil?
|
|
178
182
|
content = link_to content, action.inject_url(col.link, record) unless col.link.nil?
|
|
179
|
-
content = col.format.call(@store.records, record) unless col.format.nil?
|
|
180
183
|
end
|
|
184
|
+
content = col.format.call(@store.records, record) unless col.format.nil?
|
|
181
185
|
content = As.new(col, record, content, @options).render unless col.as.nil?
|
|
182
186
|
content
|
|
183
187
|
end
|
|
@@ -42,6 +42,7 @@ module UiBibz::Ui::Ux::Tables
|
|
|
42
42
|
content_tag :div, html_options do
|
|
43
43
|
concat content_tag(:span, UiBibz::Ui::Core::Icons::Glyph.new('search').render, class: 'input-group-text')
|
|
44
44
|
concat tag(:input, type: 'search', value: search_content, name: 'search', class: 'form-control', placeholder: search_placeholder_field)
|
|
45
|
+
concat tag(:input, type: 'hidden', name: 'store_id', value: store.id) unless store.id.nil? # if there is more one table in html page
|
|
45
46
|
concat tag(:input, type: 'hidden', name: 'link_type', value: 'search')
|
|
46
47
|
concat content_tag(:span, UiBibz::Ui::Core::Icons::Glyph.new('times-circle').render, class: 'clear-search-btn input-group-text')
|
|
47
48
|
end
|
|
@@ -37,9 +37,9 @@ module UiBibz::Utils
|
|
|
37
37
|
if opts.is_a?(Hash)
|
|
38
38
|
@position = opts[:position]
|
|
39
39
|
|
|
40
|
-
opts.
|
|
40
|
+
opts.filter_map do |k, v|
|
|
41
41
|
send(k, size, v) if POSITIONING.include?(k.to_sym)
|
|
42
|
-
end.
|
|
42
|
+
end.join(' ')
|
|
43
43
|
else
|
|
44
44
|
send('num', size, opts)
|
|
45
45
|
end
|
|
@@ -7,7 +7,7 @@ module UiBibz::Utils
|
|
|
7
7
|
|
|
8
8
|
class << self
|
|
9
9
|
def join_classes(*classes)
|
|
10
|
-
klasses = Array(classes).flatten.
|
|
10
|
+
klasses = Array(classes).flatten.filter_map(&:to_s).uniq.reject(&:blank?)
|
|
11
11
|
klasses.empty? ? nil : klasses
|
|
12
12
|
end
|
|
13
13
|
|
data/test/simple_form_test.rb
CHANGED
|
@@ -256,7 +256,7 @@ test1</textarea></div></form>"
|
|
|
256
256
|
end
|
|
257
257
|
end
|
|
258
258
|
|
|
259
|
-
expected = "<form class=\"simple_form\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"button_group\"><div
|
|
259
|
+
expected = "<form class=\"simple_form\" id=\"edit_user_1\" action=\"/users/1\" accept-charset=\"UTF-8\" method=\"post\"><input type=\"hidden\" name=\"_method\" value=\"patch\" /><div class=\"button_group\"><div class=\"btn-group button-choice btn-group-toggle\"><div class=\"form-check\"><input type=\"checkbox\" name=\"user[name_fr]\" id=\"user_name_fr\" value=\"test1\" class=\"ui_checkbox_field optional form-check-input\" checked=\"checked\" /><label class=\"form-check-label\" for=\"user_name_fr\">Name Fr</label></div></div></div></form>"
|
|
260
260
|
|
|
261
261
|
assert_equal expected, actual
|
|
262
262
|
end
|
|
@@ -23,4 +23,11 @@ class CheckboxFieldTest < ActionView::TestCase
|
|
|
23
23
|
|
|
24
24
|
assert_equal expected, actual
|
|
25
25
|
end
|
|
26
|
+
|
|
27
|
+
test 'checkbox_field with html_options' do
|
|
28
|
+
actual = UiBibz::Ui::Core::Forms::Choices::CheckboxField.new('John', { checked: true }, { data: { name: 'check' } }).render
|
|
29
|
+
expected = "<div class=\"form-check\"><input type=\"checkbox\" name=\"John\" id=\"John\" value=\"1\" data-name=\"check\" class=\"form-check-input\" checked=\"checked\" /><label class=\"form-check-label\" for=\"John\">John</label></div>"
|
|
30
|
+
|
|
31
|
+
assert_equal expected, actual
|
|
32
|
+
end
|
|
26
33
|
end
|
data/test/ui/core/forms/selects/{multi_select_field_test.rb → dropdown_select_field_test.rb}
RENAMED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
require 'test_helper'
|
|
4
4
|
|
|
5
5
|
class DropdownSelectFieldTest < ActionView::TestCase
|
|
6
|
-
test '
|
|
6
|
+
test 'Dropdown Select Field' do
|
|
7
7
|
options = options_for_select(Array.new(2) { |i| "option #{i}" })
|
|
8
8
|
actual = UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new('example', multiple: true, option_tags: options).render
|
|
9
9
|
expected = "<select name=\"example[]\" id=\"example\" data-dropdown-classes=\"dropdown\" class=\"btn-secondary multi-select-field\" multiple=\"multiple\"><option value=\"option 0\">option 0</option>
|
|
@@ -12,10 +12,10 @@ class DropdownSelectFieldTest < ActionView::TestCase
|
|
|
12
12
|
assert_equal expected, actual
|
|
13
13
|
end
|
|
14
14
|
|
|
15
|
-
test '
|
|
15
|
+
test 'Dropdown Select Field data html options' do
|
|
16
16
|
grouped_options = { 'North America' => [['United statuss', 'US'], 'Canada'], 'Europe' => %w[Denmark Germany France] }
|
|
17
|
-
actual = UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new('example', { multiple: true, option_tags: grouped_options_for_select(grouped_options), clickable_opt_group: true, collapsible_opt_group: true, searchable: true, select_all_options: true, number_displayed: 2, status: :danger }).render
|
|
18
|
-
expected = "<select name=\"example[]\" id=\"example\" data-enable-clickable-opt-groups=\"true\" data-enable-collapsible-opt-groups=\"true\" data-enable-filtering=\"true\" data-include-select-all-option=\"true\" data-number-displayed=\"true\" data-dropdown-classes=\"dropdown\" class=\"btn-danger multi-select-field\" multiple=\"multiple\"><optgroup label=\"North America\"><option value=\"US\">United statuss</option>
|
|
17
|
+
actual = UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new('example', { multiple: true, option_tags: grouped_options_for_select(grouped_options), clickable_opt_group: true, collapsible_opt_group: true, searchable: true, non_selected_text: 'test', select_all_options: true, number_displayed: 2, status: :danger, n_selected_text: "items selected" }).render
|
|
18
|
+
expected = "<select name=\"example[]\" id=\"example\" data-enable-clickable-opt-groups=\"true\" data-enable-collapsible-opt-groups=\"true\" data-enable-filtering=\"true\" data-non-selected-text=\"test\" data-include-select-all-option=\"true\" data-number-displayed=\"true\" data-dropdown-classes=\"dropdown\" data-n-selected-text=\"items selected\" class=\"btn-danger multi-select-field\" multiple=\"multiple\"><optgroup label=\"North America\"><option value=\"US\">United statuss</option>
|
|
19
19
|
<option value=\"Canada\">Canada</option></optgroup><optgroup label=\"Europe\"><option value=\"Denmark\">Denmark</option>
|
|
20
20
|
<option value=\"Germany\">Germany</option>
|
|
21
21
|
<option value=\"France\">France</option></optgroup></select>"
|
|
@@ -23,7 +23,7 @@ class DropdownSelectFieldTest < ActionView::TestCase
|
|
|
23
23
|
assert_equal expected, actual
|
|
24
24
|
end
|
|
25
25
|
|
|
26
|
-
test '
|
|
26
|
+
test 'Dropdown Select Field refresh option' do
|
|
27
27
|
actual = UiBibz::Ui::Core::Forms::Selects::DropdownSelectField.new('test', { multiple: true, refresh: { target: { url: '/' } } }).render
|
|
28
28
|
expected = "<div class=\"field-refresh input-group ui_surround_field\"><select name=\"test[]\" id=\"test\" data-dropdown-classes=\"dropdown\" class=\"btn-secondary multi-select-field\" multiple=\"multiple\"></select><span data-connect=\"{"events":"click","mode":"remote","target":{"selector":"#test","url":"/","data":[]}}\" class=\"btn-secondary ui-bibz-connect btn input-refresh-button\"><i class=\"glyph fas fa-sync-alt\"></i></span></div>"
|
|
29
29
|
|
|
@@ -73,7 +73,7 @@ class TableTest < ActionView::TestCase
|
|
|
73
73
|
<option value=\"50\">50</option>
|
|
74
74
|
<option value=\"100\">100</option>
|
|
75
75
|
<option value=\"200\">200</option>
|
|
76
|
-
<option value=\"500\">500</option></select></div></form
|
|
76
|
+
<option value=\"500\">500</option></select></div></form></div>"
|
|
77
77
|
|
|
78
78
|
assert_equal expected, actual
|
|
79
79
|
end
|
|
@@ -129,6 +129,13 @@ class TableTest < ActionView::TestCase
|
|
|
129
129
|
assert_equal expected, actual
|
|
130
130
|
end
|
|
131
131
|
|
|
132
|
+
test 'table actionable with antoher controller' do
|
|
133
|
+
@users = User.table_search_pagination(params, session, { controller: "areas" })
|
|
134
|
+
@store = UiBibz::Ui::Ux::Tables::Store.new @users
|
|
135
|
+
|
|
136
|
+
assert_equal("areas", @store.controller)
|
|
137
|
+
end
|
|
138
|
+
|
|
132
139
|
test 'table non actionable header' do
|
|
133
140
|
options = { actionable: false }
|
|
134
141
|
action = UiBibz::Ui::Ux::Tables::Actionable.new(@store, options)
|
data/ui_bibz.gemspec
CHANGED
|
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
|
|
|
19
19
|
s.description = UiBibz::DESCRIPTION
|
|
20
20
|
s.license = UiBibz::LICENSE
|
|
21
21
|
|
|
22
|
-
s.required_ruby_version = '>=
|
|
22
|
+
s.required_ruby_version = '>= 3.0.0'
|
|
23
23
|
|
|
24
24
|
s.files = `git ls-files`.split
|
|
25
25
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split
|
|
@@ -27,7 +27,7 @@ Gem::Specification.new do |s|
|
|
|
27
27
|
s.require_paths = %w[lib vendor]
|
|
28
28
|
|
|
29
29
|
# Rails gems
|
|
30
|
-
s.add_development_dependency 'rails', '~> 6.
|
|
30
|
+
s.add_development_dependency 'rails', '~> 6.1.3', '>= 6.1.3.2'
|
|
31
31
|
|
|
32
32
|
# Remove these dependencies after
|
|
33
33
|
s.add_dependency 'will_paginate', '~> 3.3.0'
|
|
@@ -47,4 +47,5 @@ Gem::Specification.new do |s|
|
|
|
47
47
|
s.add_development_dependency 'simplecov'
|
|
48
48
|
s.add_development_dependency 'simple_form'
|
|
49
49
|
s.add_development_dependency 'sqlite3'
|
|
50
|
+
s.add_development_dependency 'yard'
|
|
50
51
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ui_bibz
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.0.
|
|
4
|
+
version: 3.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Thooams [Thomas HUMMEL]
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2021-
|
|
11
|
+
date: 2021-08-18 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|
|
@@ -16,20 +16,20 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 6.
|
|
19
|
+
version: 6.1.3
|
|
20
20
|
- - ">="
|
|
21
21
|
- !ruby/object:Gem::Version
|
|
22
|
-
version: 6.
|
|
22
|
+
version: 6.1.3.2
|
|
23
23
|
type: :development
|
|
24
24
|
prerelease: false
|
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
26
|
requirements:
|
|
27
27
|
- - "~>"
|
|
28
28
|
- !ruby/object:Gem::Version
|
|
29
|
-
version: 6.
|
|
29
|
+
version: 6.1.3
|
|
30
30
|
- - ">="
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: 6.
|
|
32
|
+
version: 6.1.3.2
|
|
33
33
|
- !ruby/object:Gem::Dependency
|
|
34
34
|
name: will_paginate
|
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -240,7 +240,21 @@ dependencies:
|
|
|
240
240
|
- - ">="
|
|
241
241
|
- !ruby/object:Gem::Version
|
|
242
242
|
version: '0'
|
|
243
|
-
|
|
243
|
+
- !ruby/object:Gem::Dependency
|
|
244
|
+
name: yard
|
|
245
|
+
requirement: !ruby/object:Gem::Requirement
|
|
246
|
+
requirements:
|
|
247
|
+
- - ">="
|
|
248
|
+
- !ruby/object:Gem::Version
|
|
249
|
+
version: '0'
|
|
250
|
+
type: :development
|
|
251
|
+
prerelease: false
|
|
252
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
253
|
+
requirements:
|
|
254
|
+
- - ">="
|
|
255
|
+
- !ruby/object:Gem::Version
|
|
256
|
+
version: '0'
|
|
257
|
+
description: A Rails Interface Framework using Bootstrap 5.0.2.
|
|
244
258
|
email: thomas@hummel.link
|
|
245
259
|
executables:
|
|
246
260
|
- test
|
|
@@ -546,8 +560,8 @@ files:
|
|
|
546
560
|
- test/ui/core/forms/numbers/number_field_test.rb
|
|
547
561
|
- test/ui/core/forms/numbers/range_field_test.rb
|
|
548
562
|
- test/ui/core/forms/numbers/slider_field_test.rb
|
|
563
|
+
- test/ui/core/forms/selects/dropdown_select_field_test.rb
|
|
549
564
|
- test/ui/core/forms/selects/multi_column_field_test.rb
|
|
550
|
-
- test/ui/core/forms/selects/multi_select_field_test.rb
|
|
551
565
|
- test/ui/core/forms/selects/select_field_test.rb
|
|
552
566
|
- test/ui/core/forms/surrounds/surround_field_test.rb
|
|
553
567
|
- test/ui/core/forms/textareas/markdown_editor_field_test.rb
|
|
@@ -657,18 +671,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
657
671
|
requirements:
|
|
658
672
|
- - ">="
|
|
659
673
|
- !ruby/object:Gem::Version
|
|
660
|
-
version:
|
|
674
|
+
version: 3.0.0
|
|
661
675
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
662
676
|
requirements:
|
|
663
|
-
- - "
|
|
677
|
+
- - ">="
|
|
664
678
|
- !ruby/object:Gem::Version
|
|
665
|
-
version:
|
|
679
|
+
version: '0'
|
|
666
680
|
requirements: []
|
|
667
|
-
rubygems_version: 3.
|
|
681
|
+
rubygems_version: 3.2.21
|
|
668
682
|
signing_key:
|
|
669
683
|
specification_version: 4
|
|
670
684
|
summary: Ui Bibz is an Ui Framework that allows you to build an interface very quickly
|
|
671
|
-
and simply using Bootstrap 5.0.
|
|
685
|
+
and simply using Bootstrap 5.0.2.
|
|
672
686
|
test_files:
|
|
673
687
|
- test/dummy/README.rdoc
|
|
674
688
|
- test/dummy/Rakefile
|
|
@@ -759,8 +773,8 @@ test_files:
|
|
|
759
773
|
- test/ui/core/forms/numbers/number_field_test.rb
|
|
760
774
|
- test/ui/core/forms/numbers/range_field_test.rb
|
|
761
775
|
- test/ui/core/forms/numbers/slider_field_test.rb
|
|
776
|
+
- test/ui/core/forms/selects/dropdown_select_field_test.rb
|
|
762
777
|
- test/ui/core/forms/selects/multi_column_field_test.rb
|
|
763
|
-
- test/ui/core/forms/selects/multi_select_field_test.rb
|
|
764
778
|
- test/ui/core/forms/selects/select_field_test.rb
|
|
765
779
|
- test/ui/core/forms/surrounds/surround_field_test.rb
|
|
766
780
|
- test/ui/core/forms/textareas/markdown_editor_field_test.rb
|