playbook_ui 16.2.0.pre.rc.2 → 16.2.0.pre.rc.3
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/pb_kits/playbook/pb_checkbox/_checkbox.scss +1 -1
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.tsx +0 -17
- data/app/pb_kits/playbook/pb_checkbox/checkbox.html.erb +1 -10
- data/app/pb_kits/playbook/pb_checkbox/checkbox.rb +0 -2
- data/app/pb_kits/playbook/pb_checkbox/docs/example.yml +0 -2
- data/app/pb_kits/playbook/pb_checkbox/docs/index.js +0 -1
- data/app/pb_kits/playbook/pb_dropdown/_dropdown.tsx +11 -46
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.html.erb +3 -6
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.jsx +0 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.md +1 -3
- data/app/pb_kits/playbook/pb_dropdown/dropdown.html.erb +4 -10
- data/app/pb_kits/playbook/pb_dropdown/dropdown.rb +0 -9
- data/app/pb_kits/playbook/pb_dropdown/dropdown_trigger.html.erb +2 -7
- data/app/pb_kits/playbook/pb_dropdown/dropdown_trigger.rb +0 -4
- data/app/pb_kits/playbook/pb_dropdown/index.js +73 -125
- data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownTrigger.tsx +0 -16
- data/app/pb_kits/playbook/pb_dropdown/utilities/clickOutsideHelper.tsx +0 -6
- data/app/pb_kits/playbook/pb_form/docs/_form_with_required_indicator.html.erb +3 -5
- data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.scss +0 -7
- data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.tsx +549 -638
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.html.erb +3 -3
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.jsx +7 -4
- data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.test.jsx +4 -4
- data/app/pb_kits/playbook/pb_text_input/text_input.html.erb +10 -10
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.tsx +323 -410
- data/app/pb_kits/playbook/pb_typeahead/components/Control.tsx +0 -2
- data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +0 -2
- data/app/pb_kits/playbook/pb_typeahead/docs/index.js +21 -22
- data/app/pb_kits/playbook/pb_typeahead/typeahead.html.erb +2 -3
- data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +1 -3
- data/dist/chunks/{_pb_line_graph-DuJNCf7N.js → _pb_line_graph-CG2X7d4a.js} +1 -1
- data/dist/chunks/_typeahead-DjDiMPdY.js +1 -0
- data/dist/chunks/{globalProps-Bc-FVsRt.js → globalProps-B_OY_vR9.js} +1 -1
- data/dist/chunks/lib-9vEH4omL.js +29 -0
- data/dist/chunks/vendor.js +2 -2
- data/dist/playbook-rails-react-bindings.js +1 -1
- data/dist/playbook-rails.js +1 -1
- data/dist/playbook.css +1 -1
- data/lib/playbook/forms/builder/form_field_builder.rb +1 -1
- data/lib/playbook/forms/builder/typeahead_field.rb +1 -15
- data/lib/playbook/forms/builder.rb +2 -2
- data/lib/playbook/version.rb +1 -1
- metadata +5 -12
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.html.erb +0 -6
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.jsx +0 -17
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.md +0 -3
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.md +0 -3
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.html.erb +0 -16
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.jsx +0 -23
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.md +0 -3
- data/dist/chunks/_typeahead-BKSzddAX.js +0 -1
- data/dist/chunks/lib-BwX82vim.js +0 -29
|
@@ -61,7 +61,7 @@ module Playbook
|
|
|
61
61
|
name.to_s.humanize
|
|
62
62
|
end
|
|
63
63
|
else
|
|
64
|
-
# Legacy behavior
|
|
64
|
+
# Legacy behavior (generate full label HTML) left untouched
|
|
65
65
|
@template.label(@object_name, name)
|
|
66
66
|
end
|
|
67
67
|
elsif props[:label].is_a?(String)
|
|
@@ -10,21 +10,7 @@ module Playbook
|
|
|
10
10
|
props[:input_options] ||= {}
|
|
11
11
|
props[:input_options][:id] ||= input_id
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
# React is used when: pills || !is_multi || wrapped || input_display == "none"
|
|
15
|
-
will_use_react = props[:pills] || props[:is_multi] == false || props[:wrapped] || props[:input_display] == "none"
|
|
16
|
-
|
|
17
|
-
if props[:label] == true
|
|
18
|
-
# Extract just the text for label
|
|
19
|
-
props[:label] = if @object && @object.class.respond_to?(:human_attribute_name)
|
|
20
|
-
@object.class.human_attribute_name(name)
|
|
21
|
-
else
|
|
22
|
-
name.to_s.humanize
|
|
23
|
-
end
|
|
24
|
-
elsif props[:label].is_a?(String) && !will_use_react && !props[:required_indicator]
|
|
25
|
-
# Only Rails (non-React) text_input without required_indicator: text_input creates its own label, so keep as plain text
|
|
26
|
-
end
|
|
27
|
-
# Keep label as plain text for both React and Rails (they handle their own label rendering)
|
|
13
|
+
props[:label] = @template.label(@object_name, name, for: props[:input_options][:id]) if props[:label] == true
|
|
28
14
|
|
|
29
15
|
if props[:validation]
|
|
30
16
|
validation_message = props[:validation][:message]
|
|
@@ -7,16 +7,16 @@ module Playbook
|
|
|
7
7
|
require_relative "builder/checkbox_field"
|
|
8
8
|
require_relative "builder/collection_select_field"
|
|
9
9
|
require_relative "builder/date_picker_field"
|
|
10
|
-
require_relative "builder/dropdown_field"
|
|
11
10
|
require_relative "builder/form_field_builder"
|
|
12
11
|
require_relative "builder/select_field"
|
|
12
|
+
require_relative "builder/typeahead_field"
|
|
13
13
|
require_relative "builder/intl_telephone_field"
|
|
14
14
|
require_relative "builder/multi_level_select_field"
|
|
15
15
|
require_relative "builder/phone_number_field"
|
|
16
|
+
require_relative "builder/dropdown_field"
|
|
16
17
|
require_relative "builder/star_rating_field"
|
|
17
18
|
require_relative "builder/time_zone_select_field"
|
|
18
19
|
require_relative "builder/time_picker_field"
|
|
19
|
-
require_relative "builder/typeahead_field"
|
|
20
20
|
|
|
21
21
|
prepend(FormFieldBuilder.new(:email_field, kit_name: "text_input"))
|
|
22
22
|
prepend(FormFieldBuilder.new(:number_field, kit_name: "text_input"))
|
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: 16.2.0.pre.rc.
|
|
4
|
+
version: 16.2.0.pre.rc.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Power UX
|
|
@@ -741,9 +741,6 @@ files:
|
|
|
741
741
|
- app/pb_kits/playbook/pb_checkbox/docs/_checkbox_props_swift.md
|
|
742
742
|
- app/pb_kits/playbook/pb_checkbox/docs/_checkbox_react_hook.jsx
|
|
743
743
|
- app/pb_kits/playbook/pb_checkbox/docs/_checkbox_react_hook.md
|
|
744
|
-
- app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.html.erb
|
|
745
|
-
- app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.jsx
|
|
746
|
-
- app/pb_kits/playbook/pb_checkbox/docs/_checkbox_required_indicator.md
|
|
747
744
|
- app/pb_kits/playbook/pb_checkbox/docs/_description.md
|
|
748
745
|
- app/pb_kits/playbook/pb_checkbox/docs/example.yml
|
|
749
746
|
- app/pb_kits/playbook/pb_checkbox/docs/index.js
|
|
@@ -2119,7 +2116,6 @@ files:
|
|
|
2119
2116
|
- app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_input_display.md
|
|
2120
2117
|
- app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.html.erb
|
|
2121
2118
|
- app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.jsx
|
|
2122
|
-
- app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.md
|
|
2123
2119
|
- app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.jsx
|
|
2124
2120
|
- app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.md
|
|
2125
2121
|
- app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_reset.html.erb
|
|
@@ -3673,9 +3669,6 @@ files:
|
|
|
3673
3669
|
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_preserve_input_react.md
|
|
3674
3670
|
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.jsx
|
|
3675
3671
|
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.md
|
|
3676
|
-
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.html.erb
|
|
3677
|
-
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.jsx
|
|
3678
|
-
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_required_indicator.md
|
|
3679
3672
|
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.html.erb
|
|
3680
3673
|
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.jsx
|
|
3681
3674
|
- app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.md
|
|
@@ -3894,12 +3887,12 @@ files:
|
|
|
3894
3887
|
- app/pb_kits/playbook/utilities/test/globalProps/zIndex.test.js
|
|
3895
3888
|
- app/pb_kits/playbook/utilities/text.ts
|
|
3896
3889
|
- app/pb_kits/playbook/utilities/validEmojiChecker.ts
|
|
3897
|
-
- dist/chunks/_pb_line_graph-
|
|
3898
|
-
- dist/chunks/_typeahead-
|
|
3890
|
+
- dist/chunks/_pb_line_graph-CG2X7d4a.js
|
|
3891
|
+
- dist/chunks/_typeahead-DjDiMPdY.js
|
|
3899
3892
|
- dist/chunks/componentRegistry-DzmmLR2x.js
|
|
3900
|
-
- dist/chunks/globalProps-
|
|
3893
|
+
- dist/chunks/globalProps-B_OY_vR9.js
|
|
3901
3894
|
- dist/chunks/lazysizes-B7xYodB-.js
|
|
3902
|
-
- dist/chunks/lib-
|
|
3895
|
+
- dist/chunks/lib-9vEH4omL.js
|
|
3903
3896
|
- dist/chunks/vendor.js
|
|
3904
3897
|
- dist/menu.yml
|
|
3905
3898
|
- dist/playbook-rails-react-bindings.js
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
import Checkbox from '../_checkbox'
|
|
3
|
-
|
|
4
|
-
const CheckboxRequiredIndicator = () => {
|
|
5
|
-
return (
|
|
6
|
-
<div>
|
|
7
|
-
<Checkbox
|
|
8
|
-
name="checkbox-name"
|
|
9
|
-
requiredIndicator
|
|
10
|
-
text="Checkbox label"
|
|
11
|
-
value="check-box value"
|
|
12
|
-
/>
|
|
13
|
-
</div>
|
|
14
|
-
)
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export default CheckboxRequiredIndicator
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
The `requiredIndicator`/`required_indicator` prop displays a red asterisk (*) next to the label, visually indicating that the field is required. This is purely visual and does not enforce validation.
|
|
2
|
-
|
|
3
|
-
You can use `requiredIndicator`/`required_indicator` with any validation approach: HTML5 validation via the `required` prop, client-side validation, or backend validation. For this reason, it works independently and doesn't need to be paired with the `required` prop.
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
<%
|
|
2
|
-
options = [
|
|
3
|
-
{ label: 'Orange', value: '#FFA500' },
|
|
4
|
-
{ label: 'Red', value: '#FF0000' },
|
|
5
|
-
{ label: 'Green', value: '#00FF00' },
|
|
6
|
-
{ label: 'Blue', value: '#0000FF' },
|
|
7
|
-
]
|
|
8
|
-
%>
|
|
9
|
-
|
|
10
|
-
<%= pb_rails("typeahead", props: {
|
|
11
|
-
id: "typeahead-required-indicator",
|
|
12
|
-
is_multi: false,
|
|
13
|
-
label: "Colors",
|
|
14
|
-
options: options,
|
|
15
|
-
required_indicator: true,
|
|
16
|
-
}) %>
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import React from "react"
|
|
2
|
-
import Typeahead from "../../pb_typeahead/_typeahead"
|
|
3
|
-
|
|
4
|
-
const options = [
|
|
5
|
-
{label: "Orange", value: "#FFA500"},
|
|
6
|
-
{label: "Red", value: "#FF0000"},
|
|
7
|
-
{label: "Green", value: "#00FF00"},
|
|
8
|
-
{label: "Blue", value: "#0000FF"},
|
|
9
|
-
]
|
|
10
|
-
|
|
11
|
-
const TypeaheadRequiredIndicator = (props) => {
|
|
12
|
-
return (
|
|
13
|
-
<Typeahead
|
|
14
|
-
id="typeahead_required_indicator"
|
|
15
|
-
label="Colors"
|
|
16
|
-
options={options}
|
|
17
|
-
requiredIndicator
|
|
18
|
-
{...props}
|
|
19
|
-
/>
|
|
20
|
-
)
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export default TypeaheadRequiredIndicator
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
The `requiredIndicator`/`required_indicator` prop displays a red asterisk (*) next to the label, visually indicating that the field is required. This is purely visual and does not enforce validation.
|
|
2
|
-
|
|
3
|
-
You can use `requiredIndicator`/`required_indicator` with any validation approach: HTML5 validation via the `required` prop, client-side validation, or backend validation. For this reason, it works independently and doesn't need to be paired with the `required` prop.
|