rails_bootstrap_form 0.9.8 → 0.9.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/Gemfile.lock +1 -1
- data/README.md +11 -11
- data/demo/config/initializers/rails_bootstrap_form.rb +1 -1
- data/lib/rails_bootstrap_form/action_view_extensions/bootstrap_form_helper.rb +2 -2
- data/lib/rails_bootstrap_form/bootstrap_form_builder.rb +2 -2
- data/lib/rails_bootstrap_form/bootstrap_form_options.rb +2 -2
- data/lib/rails_bootstrap_form/helpers.rb +23 -31
- data/lib/rails_bootstrap_form/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4d162d5f0c75c1cb4197b2a39c2a97507701b9551a36ed8dec2d0c854d1f1765
|
4
|
+
data.tar.gz: ed59ebe1781a986acaa02e21d58a0de124bd28db51416ab95651394bd77c3c60
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ce0eb94537c026a961c5323567e150c4c3c962252d6e670317a08176d6dc70c65aca0c70ea66dbf1ab90b874f25363218fc6fe084d819282b9310618e9853a2f
|
7
|
+
data.tar.gz: 5b7c554cc34e2e9d603f623a263bef1ad019fe2e9ff0c27a276e2c2196a92502d28d1a123e0c9ec93d38115e4c78c0174b8ef6500d3278e86908c25e094dfba6
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,10 @@ You can find recent releases with docs in GitHub:
|
|
4
4
|
|
5
5
|
https://github.com/shivam091/rails_bootstrap_form/releases
|
6
6
|
|
7
|
+
## [0.9.9](https://github.com/shivam091/rails_bootstrap_form/compare/v0.9.8...v0.9.9) - 2023-07-02
|
8
|
+
|
9
|
+
- Code smell fixes and removed `role="form"` from demo application and readme.
|
10
|
+
|
7
11
|
## [0.9.8](https://github.com/shivam091/rails_bootstrap_form/compare/v0.9.7...v0.9.8) - 2023-07-01
|
8
12
|
|
9
13
|
### What's fixed
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -97,7 +97,7 @@ To get started, use the `bootstrap_form_for` helper in place of the Rails [`form
|
|
97
97
|
This generates the following HTML:
|
98
98
|
|
99
99
|
```html
|
100
|
-
<form
|
100
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
101
101
|
<div class="mb-3">
|
102
102
|
<label class="form-label required" for="user_email">Email address</label>
|
103
103
|
<input class="form-control" aria-required="true" required="required" type="email" name="user[email]" id="user_email">
|
@@ -135,7 +135,7 @@ To get started, use the `bootstrap_form_with` helper in place of the Rails [`for
|
|
135
135
|
This generates the following HTML:
|
136
136
|
|
137
137
|
```html
|
138
|
-
<form
|
138
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
139
139
|
<div class="mb-3">
|
140
140
|
<label class="form-label required" for="user_email">Email address</label>
|
141
141
|
<input class="form-control" aria-required="true" required="required" type="email" name="user[email]" id="user_email">
|
@@ -203,7 +203,7 @@ Here's an example of a form where one field uses different layout:
|
|
203
203
|
This generates the following HTML:
|
204
204
|
|
205
205
|
```html
|
206
|
-
<form
|
206
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
207
207
|
<div class="mb-3">
|
208
208
|
<label class="form-label required" for="user_name">Name</label>
|
209
209
|
<input class="form-control" aria-required="true" required="required" type="text" name="user[name]" id="user_name">
|
@@ -346,7 +346,7 @@ Here's an example of how it looks like:
|
|
346
346
|
This generates the following HTML:
|
347
347
|
|
348
348
|
```html
|
349
|
-
<form
|
349
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
350
350
|
<div class="mb-3">
|
351
351
|
<label class="form-label required" for="user_email">Email address</label>
|
352
352
|
<input class="form-control" aria-required="true" required="required" type="email" name="user[email]" id="user_email">
|
@@ -379,7 +379,7 @@ Here's an example of how it looks like by default:
|
|
379
379
|
This generates the following HTML:
|
380
380
|
|
381
381
|
```html
|
382
|
-
<form
|
382
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
383
383
|
<div class="row mb-3">
|
384
384
|
<label class="col-form-label col-sm-2 required" for="user_email">Email address</label>
|
385
385
|
<div class="col-sm-10">
|
@@ -416,7 +416,7 @@ The `label_col_wrapper_class` and `field_col_wrapper_class` css classes can also
|
|
416
416
|
This generates the following HTML:
|
417
417
|
|
418
418
|
```html
|
419
|
-
<form
|
419
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
420
420
|
<div class="row mb-3">
|
421
421
|
<label class="col-form-label col-sm-2 required" for="user_name">Name</label>
|
422
422
|
<div class="col-sm-10">
|
@@ -470,7 +470,7 @@ Here's an example of how it looks like:
|
|
470
470
|
This generates the following HTML:
|
471
471
|
|
472
472
|
```html
|
473
|
-
<form
|
473
|
+
<form novalidate="novalidate" class="new_user row row-cols-lg-auto g-3 align-items-center" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
474
474
|
<div class="col-12">
|
475
475
|
<label class="form-label visually-hidden required" for="user_email">Email address</label>
|
476
476
|
<input class="form-control" aria-required="true" required="required" placeholder="Email address" type="email" name="user[email]" id="user_email">
|
@@ -921,7 +921,7 @@ Our `fields_for` helper accepts the same arguments as the [default Rails helper]
|
|
921
921
|
This generates the following HTML:
|
922
922
|
|
923
923
|
```html
|
924
|
-
<form
|
924
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
925
925
|
<div class="mb-3">
|
926
926
|
<label class="form-label required" for="user_email">Email address</label>
|
927
927
|
<input autocomplete="new-email" class="form-control" aria-required="true" required="required" type="email" name="user[email]" id="user_email">
|
@@ -984,7 +984,7 @@ By setting `bootstrap` option on `bootstrap_form_for` or `bootstrap_form_with`,
|
|
984
984
|
This generates the following HTML:
|
985
985
|
|
986
986
|
```html
|
987
|
-
<form
|
987
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
988
988
|
<div class="row mb-3">
|
989
989
|
<label class="col-form-label col-sm-2 required" for="user_email">Email address</label>
|
990
990
|
<div class="col-sm-10">
|
@@ -1930,7 +1930,7 @@ The `floating` option can be used to enable Bootstrap floating labels. This opti
|
|
1930
1930
|
This generates the following HTML:
|
1931
1931
|
|
1932
1932
|
```html
|
1933
|
-
<form
|
1933
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
1934
1934
|
<div class="mb-3">
|
1935
1935
|
<div class="form-floating">
|
1936
1936
|
<input class="form-control" aria-required="true" required="required" placeholder="Name" type="text" name="user[name]" id="user_name">
|
@@ -1994,7 +1994,7 @@ By default, fields that have validation errors will be outlined in red and the e
|
|
1994
1994
|
This generates the following HTML:
|
1995
1995
|
|
1996
1996
|
```html
|
1997
|
-
<form
|
1997
|
+
<form novalidate="novalidate" class="new_user" id="new_user" action="/users" accept-charset="UTF-8" method="post">
|
1998
1998
|
<div class="mb-3">
|
1999
1999
|
<label class="form-label required is-invalid" for="user_email">Email address</label>
|
2000
2000
|
<input class="form-control is-invalid" aria-required="true" required="required" type="email" name="user[email]" id="user_email">
|
@@ -36,6 +36,8 @@ module RailsBootstrapForm
|
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
39
|
+
private
|
40
|
+
|
39
41
|
def supress_form_field_errors
|
40
42
|
original_proc = ActionView::Base.field_error_proc
|
41
43
|
ActionView::Base.field_error_proc = RailsBootstrapForm.field_error_proc
|
@@ -43,8 +45,6 @@ module RailsBootstrapForm
|
|
43
45
|
ensure
|
44
46
|
ActionView::Base.field_error_proc = original_proc
|
45
47
|
end
|
46
|
-
|
47
|
-
private :supress_form_field_errors
|
48
48
|
end
|
49
49
|
end
|
50
50
|
end
|
@@ -30,6 +30,8 @@ module RailsBootstrapForm
|
|
30
30
|
super(record_name, record_object, fields_options, &block)
|
31
31
|
end
|
32
32
|
|
33
|
+
private
|
34
|
+
|
33
35
|
def apply_default_form_options(options)
|
34
36
|
options[:html] ||= {}
|
35
37
|
options[:html].reverse_merge!(RailsBootstrapForm.config.default_form_attributes)
|
@@ -49,7 +51,5 @@ module RailsBootstrapForm
|
|
49
51
|
fields_options = bootstrap.deep_merge!(fields_options)
|
50
52
|
fields_options
|
51
53
|
end
|
52
|
-
|
53
|
-
private :apply_default_form_options, :fields_for_options, :apply_default_form_classes
|
54
54
|
end
|
55
55
|
end
|
@@ -177,6 +177,8 @@ module RailsBootstrapForm
|
|
177
177
|
self.field_class ||= css_class
|
178
178
|
end
|
179
179
|
|
180
|
+
private
|
181
|
+
|
180
182
|
def set_defaults
|
181
183
|
@disabled = false
|
182
184
|
|
@@ -216,7 +218,5 @@ module RailsBootstrapForm
|
|
216
218
|
|
217
219
|
@render_as_button = false
|
218
220
|
end
|
219
|
-
|
220
|
-
private :set_defaults
|
221
221
|
end
|
222
222
|
end
|
@@ -21,37 +21,29 @@ module RailsBootstrapForm
|
|
21
21
|
include Buttons
|
22
22
|
include Choice
|
23
23
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
# def remove_css_class!(options, css_class)
|
49
|
-
# the_class = options[:class].to_s.split(" ")
|
50
|
-
# options[:class] = (the_class - [css_class]).compact.join(" ")
|
51
|
-
# options.delete(:class) if options[:class].blank?
|
52
|
-
# end
|
53
|
-
|
54
|
-
private :control_specific_class, :is_size_valid?, :add_css_class!
|
24
|
+
private
|
25
|
+
|
26
|
+
def sanitized_tag_name(attribute, value)
|
27
|
+
# label's `for` attribute needs to match checkbox/radio button tag's id, IE sanitized value, IE
|
28
|
+
# https://github.com/rails/rails/blob/5-0-stable/actionview/lib/action_view/helpers/tags/base.rb#L123-L125
|
29
|
+
"#{@object_name}_#{attribute}_#{value.to_s.gsub(/\s/, "_").gsub(/[^-[[:word:]]]/, "").mb_chars.downcase}"
|
30
|
+
end
|
31
|
+
|
32
|
+
def field_offset_class(label_col_wrapper_class)
|
33
|
+
label_col_wrapper_class.gsub(/\bcol-(\w+)-(\d)\b/, 'offset-\1-\2')
|
34
|
+
end
|
35
|
+
|
36
|
+
def add_css_class!(options, css_class)
|
37
|
+
the_class = [options[:class], css_class].compact
|
38
|
+
options[:class] = the_class if the_class.present?
|
39
|
+
end
|
40
|
+
|
41
|
+
def control_specific_class(field_tag_name)
|
42
|
+
"rails-bootstrap-forms-#{field_tag_name.to_s.tr("_", "-")}"
|
43
|
+
end
|
44
|
+
|
45
|
+
def is_size_valid?(bootstrap)
|
46
|
+
bootstrap.size && %i(sm lg).include?(bootstrap.size)
|
55
47
|
end
|
56
48
|
end
|
57
49
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_bootstrap_form
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Harshal LADHE (shivam091)
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-07-
|
11
|
+
date: 2023-07-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: generator_spec
|