playbook_ui 8.3.0.deps2 → 9.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/data/menu.yml +2 -3
- data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +7 -0
- data/app/pb_kits/playbook/pb_form/docs/_description.md +2 -6
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +1 -1
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +1 -4
- data/app/pb_kits/playbook/pb_form/docs/example.yml +2 -4
- data/app/pb_kits/playbook/pb_form/form.rb +14 -20
- data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.scss +63 -54
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_preview.jsx +2 -1
- data/app/pb_kits/playbook/pb_select/_select.scss +15 -5
- data/app/pb_kits/playbook/pb_select/docs/_select_custom_select.jsx +4 -1
- data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +1 -1
- data/app/pb_kits/playbook/pb_selectable_card/docs/_selectable_card_input.jsx +145 -135
- data/app/pb_kits/playbook/pb_text_input/_text_input.scss +17 -18
- data/app/pb_kits/playbook/pb_textarea/_textarea.scss +29 -19
- data/app/pb_kits/playbook/pb_textarea/_textarea_mixin.scss +9 -4
- data/app/pb_kits/playbook/pb_textarea/docs/_textarea_character_counter.jsx +5 -1
- data/app/pb_kits/playbook/pb_textarea/docs/_textarea_custom.jsx +4 -2
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.scss +17 -15
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.jsx +1 -0
- data/app/pb_kits/playbook/tokens/_colors.scss +1 -1
- data/lib/playbook.rb +4 -1
- data/lib/playbook/forms.rb +3 -0
- data/lib/playbook/forms/builder.rb +31 -0
- data/{app/pb_kits/playbook/pb_form/form_builder → lib/playbook/forms/builder}/action_area.rb +2 -2
- data/lib/playbook/forms/builder/checkbox_field.rb +32 -0
- data/lib/playbook/forms/builder/collection_select_field.rb +19 -0
- data/lib/playbook/forms/builder/date_picker_field.rb +37 -0
- data/{app/pb_kits/playbook/pb_form/form_builder → lib/playbook/forms/builder}/form_field_builder.rb +2 -2
- data/lib/playbook/forms/builder/select_field.rb +19 -0
- data/lib/playbook/forms/builder/typeahead_field.rb +12 -0
- data/lib/playbook/pb_forms_helper.rb +41 -0
- data/lib/playbook/pb_kit_helper.rb +2 -0
- data/lib/playbook/props/base.rb +1 -1
- data/lib/playbook/version.rb +1 -2
- metadata +56 -67
- data/app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb +0 -60
- data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb +0 -61
- data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.md +0 -1
- data/app/pb_kits/playbook/pb_form/form_builder.rb +0 -31
- data/app/pb_kits/playbook/pb_form/form_builder/checkbox_field.rb +0 -34
- data/app/pb_kits/playbook/pb_form/form_builder/collection_select_field.rb +0 -21
- data/app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb +0 -39
- data/app/pb_kits/playbook/pb_form/form_builder/select_field.rb +0 -21
- data/app/pb_kits/playbook/pb_form/form_builder/typeahead_field.rb +0 -14
- data/app/pb_kits/playbook/pb_form/form_with.html.erb +0 -11
- data/app/pb_kits/playbook/pb_form/form_with.rb +0 -41
- data/app/pb_kits/playbook/pb_form/simple_form.html.erb +0 -11
- data/app/pb_kits/playbook/pb_form/simple_form.rb +0 -67
data/lib/playbook/props/base.rb
CHANGED
@@ -20,7 +20,7 @@ module Playbook
|
|
20
20
|
end
|
21
21
|
|
22
22
|
def validate!(input_value)
|
23
|
-
warn("#{kit} Kit: The prop '#{name}' is deprecated and will be removed in a future release!") if deprecated #TODO: add some color for pop
|
23
|
+
warn("#{kit} Kit: The prop '#{name}' is deprecated and will be removed in a future release!") if deprecated && input_value #TODO: add some color for pop
|
24
24
|
|
25
25
|
raise(Playbook::Props::Error, "#{kit} prop '#{name}' of type #{inspect.class} is required and needs a value") if required && input_value.nil?
|
26
26
|
|
data/lib/playbook/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: playbook_ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 9.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Power UX
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2021-
|
12
|
+
date: 2021-04-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: actionpack
|
@@ -75,128 +75,128 @@ dependencies:
|
|
75
75
|
name: react-rails
|
76
76
|
requirement: !ruby/object:Gem::Requirement
|
77
77
|
requirements:
|
78
|
-
- -
|
78
|
+
- - '='
|
79
79
|
- !ruby/object:Gem::Version
|
80
|
-
version:
|
80
|
+
version: 2.6.0
|
81
81
|
type: :runtime
|
82
82
|
prerelease: false
|
83
83
|
version_requirements: !ruby/object:Gem::Requirement
|
84
84
|
requirements:
|
85
|
-
- -
|
85
|
+
- - '='
|
86
86
|
- !ruby/object:Gem::Version
|
87
|
-
version:
|
87
|
+
version: 2.6.0
|
88
88
|
- !ruby/object:Gem::Dependency
|
89
89
|
name: redcarpet
|
90
90
|
requirement: !ruby/object:Gem::Requirement
|
91
91
|
requirements:
|
92
|
-
- -
|
92
|
+
- - '='
|
93
93
|
- !ruby/object:Gem::Version
|
94
|
-
version:
|
94
|
+
version: 3.5.1
|
95
95
|
type: :runtime
|
96
96
|
prerelease: false
|
97
97
|
version_requirements: !ruby/object:Gem::Requirement
|
98
98
|
requirements:
|
99
|
-
- -
|
99
|
+
- - '='
|
100
100
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
101
|
+
version: 3.5.1
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: rouge
|
104
104
|
requirement: !ruby/object:Gem::Requirement
|
105
105
|
requirements:
|
106
|
-
- -
|
106
|
+
- - '='
|
107
107
|
- !ruby/object:Gem::Version
|
108
|
-
version:
|
108
|
+
version: 3.15.0
|
109
109
|
type: :runtime
|
110
110
|
prerelease: false
|
111
111
|
version_requirements: !ruby/object:Gem::Requirement
|
112
112
|
requirements:
|
113
|
-
- -
|
113
|
+
- - '='
|
114
114
|
- !ruby/object:Gem::Version
|
115
|
-
version:
|
115
|
+
version: 3.15.0
|
116
116
|
- !ruby/object:Gem::Dependency
|
117
117
|
name: sassc-rails
|
118
118
|
requirement: !ruby/object:Gem::Requirement
|
119
119
|
requirements:
|
120
|
-
- -
|
120
|
+
- - '='
|
121
121
|
- !ruby/object:Gem::Version
|
122
|
-
version:
|
122
|
+
version: 1.3.0
|
123
123
|
type: :runtime
|
124
124
|
prerelease: false
|
125
125
|
version_requirements: !ruby/object:Gem::Requirement
|
126
126
|
requirements:
|
127
|
-
- -
|
127
|
+
- - '='
|
128
128
|
- !ruby/object:Gem::Version
|
129
|
-
version:
|
129
|
+
version: 1.3.0
|
130
130
|
- !ruby/object:Gem::Dependency
|
131
131
|
name: slim-rails
|
132
132
|
requirement: !ruby/object:Gem::Requirement
|
133
133
|
requirements:
|
134
|
-
- -
|
134
|
+
- - '='
|
135
135
|
- !ruby/object:Gem::Version
|
136
|
-
version:
|
136
|
+
version: 3.2.0
|
137
137
|
type: :runtime
|
138
138
|
prerelease: false
|
139
139
|
version_requirements: !ruby/object:Gem::Requirement
|
140
140
|
requirements:
|
141
|
-
- -
|
141
|
+
- - '='
|
142
142
|
- !ruby/object:Gem::Version
|
143
|
-
version:
|
143
|
+
version: 3.2.0
|
144
144
|
- !ruby/object:Gem::Dependency
|
145
145
|
name: sprockets-rails
|
146
146
|
requirement: !ruby/object:Gem::Requirement
|
147
147
|
requirements:
|
148
|
-
- -
|
148
|
+
- - '='
|
149
149
|
- !ruby/object:Gem::Version
|
150
|
-
version:
|
150
|
+
version: 2.3.3
|
151
151
|
type: :runtime
|
152
152
|
prerelease: false
|
153
153
|
version_requirements: !ruby/object:Gem::Requirement
|
154
154
|
requirements:
|
155
|
-
- -
|
155
|
+
- - '='
|
156
156
|
- !ruby/object:Gem::Version
|
157
|
-
version:
|
157
|
+
version: 2.3.3
|
158
158
|
- !ruby/object:Gem::Dependency
|
159
159
|
name: view_component
|
160
160
|
requirement: !ruby/object:Gem::Requirement
|
161
161
|
requirements:
|
162
|
-
- -
|
162
|
+
- - '='
|
163
163
|
- !ruby/object:Gem::Version
|
164
|
-
version:
|
164
|
+
version: 2.23.2
|
165
165
|
type: :runtime
|
166
166
|
prerelease: false
|
167
167
|
version_requirements: !ruby/object:Gem::Requirement
|
168
168
|
requirements:
|
169
|
-
- -
|
169
|
+
- - '='
|
170
170
|
- !ruby/object:Gem::Version
|
171
|
-
version:
|
171
|
+
version: 2.23.2
|
172
172
|
- !ruby/object:Gem::Dependency
|
173
173
|
name: webpacker
|
174
174
|
requirement: !ruby/object:Gem::Requirement
|
175
175
|
requirements:
|
176
|
-
- -
|
176
|
+
- - '='
|
177
177
|
- !ruby/object:Gem::Version
|
178
|
-
version:
|
178
|
+
version: 4.2.2
|
179
179
|
type: :runtime
|
180
180
|
prerelease: false
|
181
181
|
version_requirements: !ruby/object:Gem::Requirement
|
182
182
|
requirements:
|
183
|
-
- -
|
183
|
+
- - '='
|
184
184
|
- !ruby/object:Gem::Version
|
185
|
-
version:
|
185
|
+
version: 4.2.2
|
186
186
|
- !ruby/object:Gem::Dependency
|
187
187
|
name: webpacker-react
|
188
188
|
requirement: !ruby/object:Gem::Requirement
|
189
189
|
requirements:
|
190
190
|
- - "~>"
|
191
191
|
- !ruby/object:Gem::Version
|
192
|
-
version:
|
192
|
+
version: 0.3.2
|
193
193
|
type: :runtime
|
194
194
|
prerelease: false
|
195
195
|
version_requirements: !ruby/object:Gem::Requirement
|
196
196
|
requirements:
|
197
197
|
- - "~>"
|
198
198
|
- !ruby/object:Gem::Version
|
199
|
-
version:
|
199
|
+
version: 0.3.2
|
200
200
|
- !ruby/object:Gem::Dependency
|
201
201
|
name: better_errors
|
202
202
|
requirement: !ruby/object:Gem::Requirement
|
@@ -302,39 +302,33 @@ dependencies:
|
|
302
302
|
- !ruby/object:Gem::Version
|
303
303
|
version: 3.8.0
|
304
304
|
- !ruby/object:Gem::Dependency
|
305
|
-
name:
|
305
|
+
name: rspec-html-matchers
|
306
306
|
requirement: !ruby/object:Gem::Requirement
|
307
307
|
requirements:
|
308
308
|
- - '='
|
309
309
|
- !ruby/object:Gem::Version
|
310
|
-
version: 0.
|
310
|
+
version: 0.9.1
|
311
311
|
type: :development
|
312
312
|
prerelease: false
|
313
313
|
version_requirements: !ruby/object:Gem::Requirement
|
314
314
|
requirements:
|
315
315
|
- - '='
|
316
316
|
- !ruby/object:Gem::Version
|
317
|
-
version: 0.
|
317
|
+
version: 0.9.1
|
318
318
|
- !ruby/object:Gem::Dependency
|
319
|
-
name:
|
319
|
+
name: rubocop
|
320
320
|
requirement: !ruby/object:Gem::Requirement
|
321
321
|
requirements:
|
322
|
-
- -
|
323
|
-
- !ruby/object:Gem::Version
|
324
|
-
version: 5.0.1
|
325
|
-
- - "<"
|
322
|
+
- - '='
|
326
323
|
- !ruby/object:Gem::Version
|
327
|
-
version:
|
324
|
+
version: 0.81.0
|
328
325
|
type: :development
|
329
326
|
prerelease: false
|
330
327
|
version_requirements: !ruby/object:Gem::Requirement
|
331
328
|
requirements:
|
332
|
-
- -
|
333
|
-
- !ruby/object:Gem::Version
|
334
|
-
version: 5.0.1
|
335
|
-
- - "<"
|
329
|
+
- - '='
|
336
330
|
- !ruby/object:Gem::Version
|
337
|
-
version:
|
331
|
+
version: 0.81.0
|
338
332
|
- !ruby/object:Gem::Dependency
|
339
333
|
name: spring
|
340
334
|
requirement: !ruby/object:Gem::Requirement
|
@@ -999,24 +993,9 @@ files:
|
|
999
993
|
- app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb
|
1000
994
|
- app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb
|
1001
995
|
- app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.md
|
1002
|
-
- app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb
|
1003
|
-
- app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb
|
1004
|
-
- app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.md
|
1005
996
|
- app/pb_kits/playbook/pb_form/docs/example.yml
|
1006
997
|
- app/pb_kits/playbook/pb_form/form.rb
|
1007
|
-
- app/pb_kits/playbook/pb_form/form_builder.rb
|
1008
|
-
- app/pb_kits/playbook/pb_form/form_builder/action_area.rb
|
1009
|
-
- app/pb_kits/playbook/pb_form/form_builder/checkbox_field.rb
|
1010
|
-
- app/pb_kits/playbook/pb_form/form_builder/collection_select_field.rb
|
1011
|
-
- app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb
|
1012
|
-
- app/pb_kits/playbook/pb_form/form_builder/form_field_builder.rb
|
1013
|
-
- app/pb_kits/playbook/pb_form/form_builder/select_field.rb
|
1014
|
-
- app/pb_kits/playbook/pb_form/form_builder/typeahead_field.rb
|
1015
|
-
- app/pb_kits/playbook/pb_form/form_with.html.erb
|
1016
|
-
- app/pb_kits/playbook/pb_form/form_with.rb
|
1017
998
|
- app/pb_kits/playbook/pb_form/pb_form_validation.js
|
1018
|
-
- app/pb_kits/playbook/pb_form/simple_form.html.erb
|
1019
|
-
- app/pb_kits/playbook/pb_form/simple_form.rb
|
1020
999
|
- app/pb_kits/playbook/pb_form_group/_form_group.jsx
|
1021
1000
|
- app/pb_kits/playbook/pb_form_group/_form_group.scss
|
1022
1001
|
- app/pb_kits/playbook/pb_form_group/docs/_form_group_button.html.erb
|
@@ -2074,12 +2053,22 @@ files:
|
|
2074
2053
|
- lib/playbook.rb
|
2075
2054
|
- lib/playbook/classnames.rb
|
2076
2055
|
- lib/playbook/engine.rb
|
2056
|
+
- lib/playbook/forms.rb
|
2057
|
+
- lib/playbook/forms/builder.rb
|
2058
|
+
- lib/playbook/forms/builder/action_area.rb
|
2059
|
+
- lib/playbook/forms/builder/checkbox_field.rb
|
2060
|
+
- lib/playbook/forms/builder/collection_select_field.rb
|
2061
|
+
- lib/playbook/forms/builder/date_picker_field.rb
|
2062
|
+
- lib/playbook/forms/builder/form_field_builder.rb
|
2063
|
+
- lib/playbook/forms/builder/select_field.rb
|
2064
|
+
- lib/playbook/forms/builder/typeahead_field.rb
|
2077
2065
|
- lib/playbook/kit_base.rb
|
2078
2066
|
- lib/playbook/kit_resolver.rb
|
2079
2067
|
- lib/playbook/markdown.rb
|
2080
2068
|
- lib/playbook/markdown/helper.rb
|
2081
2069
|
- lib/playbook/markdown/template_handler.rb
|
2082
2070
|
- lib/playbook/pb_doc_helper.rb
|
2071
|
+
- lib/playbook/pb_forms_helper.rb
|
2083
2072
|
- lib/playbook/pb_kit_helper.rb
|
2084
2073
|
- lib/playbook/props.rb
|
2085
2074
|
- lib/playbook/props/array.rb
|
@@ -2114,9 +2103,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
2114
2103
|
version: '0'
|
2115
2104
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
2116
2105
|
requirements:
|
2117
|
-
- - "
|
2106
|
+
- - ">="
|
2118
2107
|
- !ruby/object:Gem::Version
|
2119
|
-
version:
|
2108
|
+
version: '0'
|
2120
2109
|
requirements: []
|
2121
2110
|
rubyforge_project:
|
2122
2111
|
rubygems_version: 2.7.3
|
@@ -1,60 +0,0 @@
|
|
1
|
-
<%
|
2
|
-
require "simple_form" unless defined?(SimpleForm)
|
3
|
-
require "active_model/railtie" unless defined?(ActiveModel)
|
4
|
-
|
5
|
-
example_form_model = Class.new do
|
6
|
-
include ::ActiveModel::Model
|
7
|
-
attr_accessor :example_text_field,
|
8
|
-
:example_phone_field,
|
9
|
-
:example_email_field,
|
10
|
-
:example_number_field,
|
11
|
-
:example_search_field,
|
12
|
-
:example_password_field,
|
13
|
-
:example_url_field,
|
14
|
-
:example_text_area,
|
15
|
-
:example_select_field,
|
16
|
-
:example_collection_select_field,
|
17
|
-
:example_checkbox_field,
|
18
|
-
:example_date_picker_field_1
|
19
|
-
|
20
|
-
|
21
|
-
def self.model_name
|
22
|
-
ActiveModel::Name.new(self, nil, "ExampleFormModel")
|
23
|
-
end
|
24
|
-
end
|
25
|
-
%>
|
26
|
-
|
27
|
-
<%
|
28
|
-
example_collection = [
|
29
|
-
OpenStruct.new(name: "Alabama", value: 1),
|
30
|
-
OpenStruct.new(name: "Alaska", value: 2),
|
31
|
-
OpenStruct.new(name: "Arizona", value: 3),
|
32
|
-
OpenStruct.new(name: "Arkansas", value: 4),
|
33
|
-
OpenStruct.new(name: "California", value: 5),
|
34
|
-
OpenStruct.new(name: "Colorado", value: 6),
|
35
|
-
OpenStruct.new(name: "Connecticut", value: 7),
|
36
|
-
OpenStruct.new(name: "Delaware", value: 8),
|
37
|
-
OpenStruct.new(name: "Florida", value: 9),
|
38
|
-
OpenStruct.new(name: "Georgia", value: 10),
|
39
|
-
]
|
40
|
-
%>
|
41
|
-
|
42
|
-
<%= pb_rails("form/simple_form", props: { options: { model: example_form_model.new, url: "", method: :get } }) do |form| %>
|
43
|
-
<%= form.input :example_text_field, as: :string %>
|
44
|
-
<%= form.input :example_phone_field, as: :tel %>
|
45
|
-
<%= form.input :example_email_field, as: :email %>
|
46
|
-
<%= form.input :example_number_field, as: :integer %>
|
47
|
-
<%= form.input :example_search_field, as: :search %>
|
48
|
-
<%= form.input :example_password_field, as: :password %>
|
49
|
-
<%= form.input :example_url_field, as: :url %>
|
50
|
-
<%= form.input :example_text_area, as: :text %>
|
51
|
-
<%= form.select :example_select_field, [["Yes", 1], ["No", 2]], props: { label: true } %>
|
52
|
-
<%= form.collection_select :example_collection_select_field, example_collection, :value, :name, props: { label: true } %>
|
53
|
-
<%= form.check_box :example_checkbox_field, props: { text: "Example Checkbox", label: true } %>
|
54
|
-
<%= form.date_picker :example_date_picker_field_1, props: { label: true } %>
|
55
|
-
|
56
|
-
<%= form.actions do |action| %>
|
57
|
-
<%= action.submit %>
|
58
|
-
<%= action.button props: { type: "reset", text: "Cancel", variant: "secondary" } %>
|
59
|
-
<% end %>
|
60
|
-
<% end %>
|
@@ -1,61 +0,0 @@
|
|
1
|
-
<%
|
2
|
-
require "simple_form" unless defined?(SimpleForm)
|
3
|
-
require "active_model/railtie" unless defined?(ActiveModel)
|
4
|
-
|
5
|
-
example_form_model = Class.new do
|
6
|
-
include ::ActiveModel::Model
|
7
|
-
attr_accessor :example_text_field,
|
8
|
-
:example_phone_field,
|
9
|
-
:example_email_field,
|
10
|
-
:example_number_field,
|
11
|
-
:example_search_field,
|
12
|
-
:example_password_field,
|
13
|
-
:example_url_field,
|
14
|
-
:example_text_area,
|
15
|
-
:example_select_field,
|
16
|
-
:example_collection_select_field,
|
17
|
-
:example_checkbox_field,
|
18
|
-
:example_date_picker_field_2
|
19
|
-
|
20
|
-
|
21
|
-
def self.model_name
|
22
|
-
ActiveModel::Name.new(self, nil, "ExampleFormModel")
|
23
|
-
end
|
24
|
-
end
|
25
|
-
%>
|
26
|
-
|
27
|
-
<%
|
28
|
-
example_collection = [
|
29
|
-
OpenStruct.new(name: "Alabama", value: 1),
|
30
|
-
OpenStruct.new(name: "Alaska", value: 2),
|
31
|
-
OpenStruct.new(name: "Arizona", value: 3),
|
32
|
-
OpenStruct.new(name: "Arkansas", value: 4),
|
33
|
-
OpenStruct.new(name: "California", value: 5),
|
34
|
-
OpenStruct.new(name: "Colorado", value: 6),
|
35
|
-
OpenStruct.new(name: "Connecticut", value: 7),
|
36
|
-
OpenStruct.new(name: "Delaware", value: 8),
|
37
|
-
OpenStruct.new(name: "Florida", value: 9),
|
38
|
-
OpenStruct.new(name: "Georgia", value: 10),
|
39
|
-
]
|
40
|
-
%>
|
41
|
-
|
42
|
-
|
43
|
-
<%= pb_rails("form", props: { validate: true, form_system: "simple_form", form_system_options: [example_form_model.new, url: "", method: :get] }) do |form| %>
|
44
|
-
<%= form.input :example_text_field, {as: :string, input_html: {props: {required: true}}} %>
|
45
|
-
<%= form.input :example_phone_field, {as: :tel, input_html: {props: {required: true, validation: { pattern: "[0-9]{3}-[0-9]{3}-[0-9]{4}", message: "Please enter a valid phone number (example: 888-888-8888)." }}}} %>
|
46
|
-
<%= form.input :example_email_field, {as: :email, input_html: {props: {required: true}}} %>
|
47
|
-
<%= form.input :example_number_field, {as: :integer, input_html: {props: {required: true}}} %>
|
48
|
-
<%= form.input :example_search_field, {as: :search, input_html: {props: {required: true, validation: { pattern: "[0-9]{2}-[0-9]{5}", message: "Please enter a valid project number (example: 33-12345)." }}}} %>
|
49
|
-
<%= form.input :example_password_field, {as: :password, input_html: {props: {required: true}}} %>
|
50
|
-
<%= form.input :example_url_field, {as: :url, input_html: {props: {required: true}}} %>
|
51
|
-
<%= form.input :example_text_area, {as: :text, input_html: {props: {required: true}}} %>
|
52
|
-
<%= form.select :example_select_field, [["Yes", 1], ["No", 2]], props: { required: true, blank_selection: "Select One...", label: true } %>
|
53
|
-
<%= form.collection_select :example_collection_select_field, example_collection, :value, :name, props: { required: true, blank_selection: "Select One...", label: true } %>
|
54
|
-
<%= form.check_box :example_checkbox_field, props: { text: "Example Checkbox", label: true, required: true } %>
|
55
|
-
<%= form.date_picker :example_date_picker_field_2, props: { label: true, required: true } %>
|
56
|
-
|
57
|
-
<%= form.actions do |action| %>
|
58
|
-
<%= action.submit %>
|
59
|
-
<%= action.button props: { type: "reset", text: "Cancel", variant: "secondary" } %>
|
60
|
-
<% end %>
|
61
|
-
<% end %>
|
@@ -1 +0,0 @@
|
|
1
|
-
Validation displays an error with red border and red text below indicating that the user must fill out the field.
|
@@ -1,31 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Playbook
|
4
|
-
module PbForm
|
5
|
-
module FormBuilder
|
6
|
-
extend ActiveSupport::Concern
|
7
|
-
|
8
|
-
included do
|
9
|
-
prepend(FormFieldBuilder.new(:email_field, kit_name: "text_input"))
|
10
|
-
prepend(FormFieldBuilder.new(:number_field, kit_name: "text_input"))
|
11
|
-
prepend(FormFieldBuilder.new(:search_field, kit_name: "text_input"))
|
12
|
-
prepend(FormFieldBuilder.new(:telephone_field, kit_name: "text_input"))
|
13
|
-
prepend(FormFieldBuilder.new(:text_field, kit_name: "text_input"))
|
14
|
-
prepend(FormFieldBuilder.new(:password_field, kit_name: "text_input"))
|
15
|
-
prepend(FormFieldBuilder.new(:url_field, kit_name: "text_input"))
|
16
|
-
prepend(FormFieldBuilder.new(:text_area, kit_name: "textarea"))
|
17
|
-
prepend(TypeaheadField)
|
18
|
-
prepend(SelectField)
|
19
|
-
prepend(CollectionSelectField)
|
20
|
-
prepend(CheckboxField)
|
21
|
-
prepend(DatePickerField)
|
22
|
-
end
|
23
|
-
|
24
|
-
def actions
|
25
|
-
@template.send(:view_context).content_tag :ol, class: "pb-form-actions" do
|
26
|
-
yield ActionArea.new(@template, submit_default_value)
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|