playbook_ui 13.31.0.pre.alpha.powercentrainplaybookpt23212 → 13.32.0.pre.alpha.PBNTR405dropdownformfixesrails3301
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_background/background.html.erb +11 -2
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom.md +4 -0
- data/app/pb_kits/playbook/pb_body/body.html.erb +6 -1
- data/app/pb_kits/playbook/pb_bread_crumbs/bread_crumb_item.html.erb +6 -1
- data/app/pb_kits/playbook/pb_bread_crumbs/bread_crumbs.html.erb +6 -1
- data/app/pb_kits/playbook/pb_caption/caption.html.erb +6 -1
- data/app/pb_kits/playbook/pb_card/card.html.erb +7 -1
- data/app/pb_kits/playbook/pb_collapsible/__snapshots__/collapsible.test.js.snap +1 -1
- data/app/pb_kits/playbook/pb_detail/detail.html.erb +6 -1
- data/app/pb_kits/playbook/pb_dialog/dialog.html.erb +6 -1
- data/app/pb_kits/playbook/pb_dialog/dialog_body.html.erb +6 -1
- data/app/pb_kits/playbook/pb_dialog/dialog_footer.html.erb +5 -2
- data/app/pb_kits/playbook/pb_dialog/dialog_header.html.erb +6 -1
- data/app/pb_kits/playbook/pb_dropdown/_dropdown.tsx +12 -7
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_blank_selection.html.erb +10 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_blank_selection.jsx +31 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default_value.html.erb +10 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default_value.jsx +31 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/example.yml +4 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/index.js +3 -1
- data/app/pb_kits/playbook/pb_dropdown/dropdown.html.erb +3 -4
- data/app/pb_kits/playbook/pb_dropdown/dropdown.rb +11 -0
- data/app/pb_kits/playbook/pb_dropdown/dropdown_trigger.rb +1 -1
- data/app/pb_kits/playbook/pb_dropdown/index.js +75 -17
- data/app/pb_kits/playbook/pb_flex/flex.html.erb +5 -1
- data/app/pb_kits/playbook/pb_form_pill/_form_pill.scss +108 -5
- data/app/pb_kits/playbook/pb_form_pill/_form_pill.test.jsx +53 -0
- data/app/pb_kits/playbook/pb_form_pill/_form_pill.tsx +11 -2
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_example.html.erb +5 -1
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_example.jsx +1 -0
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_size.html.erb +2 -0
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_size.jsx +2 -0
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_tag.html.erb +4 -1
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_tag.jsx +3 -2
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_user.html.erb +2 -0
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_user.jsx +2 -0
- data/app/pb_kits/playbook/pb_form_pill/form_pill.html.erb +1 -1
- data/app/pb_kits/playbook/pb_form_pill/form_pill.rb +5 -1
- data/app/pb_kits/playbook/pb_hashtag/hashtag.html.erb +6 -1
- data/app/pb_kits/playbook/pb_highlight/highlight.html.erb +5 -1
- data/app/pb_kits/playbook/pb_home_address_street/home_address_street.html.erb +5 -1
- data/app/pb_kits/playbook/pb_icon/_icon.scss +210 -1
- data/app/pb_kits/playbook/pb_icon/_icon.tsx +100 -41
- data/app/pb_kits/playbook/pb_icon/icon.rb +33 -19
- data/app/pb_kits/playbook/pb_nav/_nav_item.test.js +2 -2
- data/app/pb_kits/playbook/pb_nav/docs/_tab_nav.html.erb +48 -0
- data/app/pb_kits/playbook/pb_nav/docs/_tab_nav.md +3 -0
- data/app/pb_kits/playbook/pb_nav/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_nav/index.js +43 -0
- data/app/pb_kits/playbook/pb_nav/nav.rb +9 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/TipTap/MoreExtensionsDropdown.tsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarDropdown.tsx +1 -1
- data/app/pb_kits/playbook/pb_star_rating/_star_rating.scss +11 -2
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_interactive.html.erb +1 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/example.yml +1 -1
- data/app/pb_kits/playbook/pb_star_rating/index.js +50 -0
- data/app/pb_kits/playbook/pb_star_rating/star_rating.html.erb +25 -5
- data/app/pb_kits/playbook/pb_star_rating/star_rating.rb +6 -0
- data/app/pb_kits/playbook/pb_table/_table.tsx +1 -1
- data/app/pb_kits/playbook/pb_table/index.ts +4 -4
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_body.tsx +1 -1
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_cell.tsx +1 -1
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_head.tsx +1 -1
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_header.tsx +1 -1
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_row.tsx +1 -1
- data/app/pb_kits/playbook/pb_table/table.test.js +2 -0
- data/app/pb_kits/playbook/pb_text_input/_text_input.tsx +1 -1
- data/app/pb_kits/playbook/pb_text_input/docs/_text_input_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_textarea/_textarea.tsx +45 -27
- data/app/pb_kits/playbook/pb_textarea/index.tsx +3 -3
- data/app/pb_kits/playbook/pb_time/_time.tsx +3 -3
- data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.tsx +1 -1
- data/app/pb_kits/playbook/pb_timeline/_item.tsx +1 -1
- data/app/pb_kits/playbook/pb_timeline/_timeline.tsx +1 -1
- data/app/pb_kits/playbook/pb_title_detail/_title_detail.tsx +10 -10
- data/app/pb_kits/playbook/pb_toggle/_toggle.tsx +1 -1
- data/app/pb_kits/playbook/pb_tooltip/_tooltip.tsx +2 -2
- data/app/pb_kits/playbook/pb_treemap_chart/_treemap_chart.tsx +1 -2
- data/app/pb_kits/playbook/pb_treemap_chart/treemapChart.test.js +2 -0
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.tsx +3 -3
- data/app/pb_kits/playbook/pb_typeahead/components/ClearIndicator.tsx +4 -4
- data/app/pb_kits/playbook/pb_typeahead/components/Control.tsx +11 -7
- data/app/pb_kits/playbook/pb_typeahead/components/IndicatorsContainer.tsx +8 -3
- data/app/pb_kits/playbook/pb_typeahead/components/MenuList.tsx +6 -1
- data/app/pb_kits/playbook/pb_typeahead/components/MultiValue.tsx +18 -19
- data/app/pb_kits/playbook/pb_typeahead/components/Option.tsx +6 -6
- data/app/pb_kits/playbook/pb_typeahead/components/Placeholder.tsx +6 -6
- data/app/pb_kits/playbook/pb_typeahead/components/ValueContainer.tsx +3 -3
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_custom_menu_list.jsx +2 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_default.html.erb +22 -57
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async.jsx +2 -2
- data/app/pb_kits/playbook/pb_typeahead/index.ts +31 -31
- data/app/pb_kits/playbook/pb_user/_user.tsx +1 -1
- data/app/pb_kits/playbook/pb_user_badge/_user_badge.tsx +6 -6
- data/app/pb_kits/playbook/pb_user_badge/badges/million-dollar.tsx +236 -235
- data/app/pb_kits/playbook/pb_user_badge/badges/veteran.tsx +1 -1
- data/app/pb_kits/playbook/pb_walkthrough/_walkthrough.tsx +68 -63
- data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.tsx +2 -2
- data/app/pb_kits/playbook/playbook-rails.js +6 -0
- data/dist/menu.yml +1 -1
- data/dist/playbook-rails.js +7 -7
- data/lib/playbook/forms/builder/star_rating_field.rb +14 -0
- data/lib/playbook/forms/builder.rb +1 -0
- data/lib/playbook/version.rb +2 -2
- metadata +13 -3
- data/app/pb_kits/playbook/pb_icon/icon_aliases.json +0 -39
@@ -5,12 +5,12 @@ import TextInput from '../../pb_text_input/_text_input'
|
|
5
5
|
import Title from '../../pb_title/_title'
|
6
6
|
|
7
7
|
const TextInputDefault = (props) => {
|
8
|
+
const [firstName, setFirstName] = useState('')
|
8
9
|
const handleOnChangeFirstName = ({ target }) => {
|
9
10
|
setFirstName(target.value)
|
10
11
|
}
|
11
12
|
const ref = React.createRef()
|
12
13
|
|
13
|
-
const [firstName, setFirstName] = useState('')
|
14
14
|
const [formFields, setFormFields] = useState({
|
15
15
|
firstName: 'Jane',
|
16
16
|
lastName: 'Doe',
|
@@ -52,14 +52,15 @@ const Textarea = ({
|
|
52
52
|
label,
|
53
53
|
maxCharacters,
|
54
54
|
name,
|
55
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
55
56
|
onChange = () => {},
|
56
57
|
placeholder,
|
57
58
|
required,
|
58
59
|
rows = 4,
|
59
60
|
value,
|
60
61
|
...props
|
61
|
-
}: TextareaProps
|
62
|
-
ref = useRef<HTMLTextAreaElement>(null)
|
62
|
+
}: TextareaProps) => {
|
63
|
+
const ref = useRef<HTMLTextAreaElement>(null)
|
63
64
|
useEffect(() => {
|
64
65
|
if (ref.current && resize === 'auto') {
|
65
66
|
PbTextarea.addMatch(ref.current)
|
@@ -71,58 +72,75 @@ const Textarea = ({
|
|
71
72
|
const resizeClass = `resize_${resize}`
|
72
73
|
const classes = classnames('pb_textarea_kit', errorClass, inlineClass, resizeClass, globalProps(props), className)
|
73
74
|
const noCount = typeof characterCount !== 'undefined'
|
74
|
-
const ariaProps: {[key: string]:
|
75
|
-
const dataProps: {[key: string]:
|
75
|
+
const ariaProps: {[key: string]: string} = buildAriaProps(aria)
|
76
|
+
const dataProps: {[key: string]: string} = buildDataProps(data)
|
76
77
|
const htmlProps = buildHtmlProps(htmlOptions)
|
77
|
-
const characterCounter = () => {
|
78
|
-
return maxCharacters && characterCount ? `${checkIfZero(characterCount)} / ${maxCharacters}` : `${checkIfZero(characterCount)}`
|
79
|
-
}
|
80
|
-
|
81
78
|
const checkIfZero = (characterCount: string | number) => {
|
82
79
|
return characterCount == 0 ? characterCount.toString() : characterCount
|
83
80
|
}
|
81
|
+
const characterCounter = () => {
|
82
|
+
return maxCharacters && characterCount ? `${checkIfZero(characterCount)} / ${maxCharacters}` : `${checkIfZero(characterCount)}`
|
83
|
+
}
|
84
84
|
|
85
85
|
return (
|
86
86
|
<div
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
87
|
+
{...ariaProps}
|
88
|
+
{...dataProps}
|
89
|
+
{...htmlProps}
|
90
|
+
className={classes}
|
91
91
|
>
|
92
92
|
<Caption text={label} />
|
93
93
|
{children || (
|
94
94
|
<textarea
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
95
|
+
className="pb_textarea_kit"
|
96
|
+
disabled={disabled}
|
97
|
+
name={name}
|
98
|
+
onChange={onChange}
|
99
|
+
placeholder={placeholder}
|
100
|
+
ref={ref}
|
101
|
+
required={required}
|
102
|
+
rows={rows}
|
103
|
+
value={value}
|
104
|
+
{...props}
|
105
105
|
/>
|
106
106
|
)}
|
107
107
|
|
108
108
|
{error ? (
|
109
109
|
<>
|
110
110
|
{characterCount ? (
|
111
|
-
<Flex
|
111
|
+
<Flex
|
112
|
+
spacing="between"
|
113
|
+
vertical="center"
|
114
|
+
>
|
112
115
|
<FlexItem>
|
113
|
-
<Body
|
116
|
+
<Body
|
117
|
+
margin="none"
|
118
|
+
status="negative"
|
119
|
+
text={error}
|
120
|
+
/>
|
114
121
|
</FlexItem>
|
115
122
|
<FlexItem>
|
116
|
-
<Caption
|
123
|
+
<Caption
|
124
|
+
margin="none"
|
125
|
+
size="xs"
|
126
|
+
text={characterCounter()}
|
127
|
+
/>
|
117
128
|
</FlexItem>
|
118
129
|
</Flex>
|
119
130
|
) : (
|
120
|
-
<Body
|
131
|
+
<Body
|
132
|
+
status="negative"
|
133
|
+
text={error}
|
134
|
+
/>
|
121
135
|
)}
|
122
136
|
</>
|
123
137
|
) : (
|
124
138
|
noCount && (
|
125
|
-
<Caption
|
139
|
+
<Caption
|
140
|
+
margin="none"
|
141
|
+
size="xs"
|
142
|
+
text={characterCounter()}
|
143
|
+
/>
|
126
144
|
)
|
127
145
|
)}
|
128
146
|
</div>
|
@@ -3,16 +3,16 @@ import PbEnhancedElement from '../pb_enhanced_element'
|
|
3
3
|
export default class PbTextarea extends PbEnhancedElement {
|
4
4
|
style: {[key: string]: string}
|
5
5
|
scrollHeight: string
|
6
|
-
static get selector() {
|
6
|
+
static get selector(): string {
|
7
7
|
return '.resize_auto textarea'
|
8
8
|
}
|
9
9
|
|
10
|
-
onInput() {
|
10
|
+
onInput(): void {
|
11
11
|
this.style.height = 'auto'
|
12
12
|
this.style.height = (this.scrollHeight) + 'px'
|
13
13
|
}
|
14
14
|
|
15
|
-
connect() {
|
15
|
+
connect(): void {
|
16
16
|
this.element.setAttribute('style', 'height:' + (this.element.scrollHeight) + 'px;overflow-y:hidden;')
|
17
17
|
this.element.addEventListener('input', this.onInput, false)
|
18
18
|
}
|
@@ -24,7 +24,7 @@ type TimeProps = {
|
|
24
24
|
unstyled?: boolean;
|
25
25
|
} & GlobalProps
|
26
26
|
|
27
|
-
const Time = (props: TimeProps) => {
|
27
|
+
const Time = (props: TimeProps): React.ReactElement => {
|
28
28
|
const {
|
29
29
|
align,
|
30
30
|
className,
|
@@ -47,8 +47,8 @@ const Time = (props: TimeProps) => {
|
|
47
47
|
|
48
48
|
return (
|
49
49
|
<div
|
50
|
-
|
51
|
-
|
50
|
+
{...htmlProps}
|
51
|
+
className={classes}
|
52
52
|
>
|
53
53
|
{showIcon && (
|
54
54
|
unstyled
|
@@ -36,7 +36,7 @@ const dateTimeIso = (dateValue: Date) => {
|
|
36
36
|
return DateTime.toIso(dateValue)
|
37
37
|
}
|
38
38
|
|
39
|
-
const TimeRangeInline = (props: TimeRangeInlineProps) => {
|
39
|
+
const TimeRangeInline = (props: TimeRangeInlineProps): React.ReactElement => {
|
40
40
|
const {
|
41
41
|
aria = {},
|
42
42
|
className,
|
@@ -26,7 +26,7 @@ const TimelineItem = ({
|
|
26
26
|
iconColor = 'default',
|
27
27
|
lineStyle = 'solid',
|
28
28
|
...props
|
29
|
-
}: ItemProps) => {
|
29
|
+
}: ItemProps): React.ReactElement => {
|
30
30
|
const timelineItemCss = buildCss('pb_timeline_item_kit', lineStyle)
|
31
31
|
|
32
32
|
const htmlProps = buildHtmlProps(htmlOptions)
|
@@ -27,7 +27,7 @@ const Timeline = ({
|
|
27
27
|
orientation = 'horizontal',
|
28
28
|
showDate = false,
|
29
29
|
...props
|
30
|
-
}: TimelineProps) => {
|
30
|
+
}: TimelineProps): React.ReactElement => {
|
31
31
|
const ariaProps = buildAriaProps(aria)
|
32
32
|
const dataProps = buildDataProps(data)
|
33
33
|
const htmlProps = buildHtmlProps(htmlOptions)
|
@@ -18,7 +18,7 @@ type TitleDetailProps = {
|
|
18
18
|
title: string,
|
19
19
|
} & GlobalProps
|
20
20
|
|
21
|
-
const TitleDetail = (props: TitleDetailProps) => {
|
21
|
+
const TitleDetail = (props: TitleDetailProps): React.ReactElement => {
|
22
22
|
const {
|
23
23
|
align = "left",
|
24
24
|
aria = {},
|
@@ -37,19 +37,19 @@ const TitleDetail = (props: TitleDetailProps) => {
|
|
37
37
|
|
38
38
|
return (
|
39
39
|
<div
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
40
|
+
{...ariaProps}
|
41
|
+
{...dataProps}
|
42
|
+
{...htmlProps}
|
43
|
+
className={classnames(pbCss, globalProps(props), className)}
|
44
|
+
id={id}
|
45
45
|
>
|
46
46
|
<Title
|
47
|
-
|
48
|
-
|
47
|
+
size={4}
|
48
|
+
text={title}
|
49
49
|
/>
|
50
50
|
<Body
|
51
|
-
|
52
|
-
|
51
|
+
color="light"
|
52
|
+
text={detail}
|
53
53
|
/>
|
54
54
|
</div>
|
55
55
|
)
|
@@ -50,8 +50,8 @@ const Tooltip = forwardRef((props: TooltipProps, ref: ForwardedRef<unknown>): Re
|
|
50
50
|
...rest
|
51
51
|
} = props
|
52
52
|
|
53
|
-
const dataProps: { [key: string]:
|
54
|
-
const ariaProps: { [key: string]:
|
53
|
+
const dataProps: { [key: string]: string } = buildDataProps(data)
|
54
|
+
const ariaProps: { [key: string]: string } = buildAriaProps(aria)
|
55
55
|
const htmlProps = buildHtmlProps(htmlOptions)
|
56
56
|
|
57
57
|
const css = classnames(
|
@@ -52,7 +52,7 @@ const TreemapChart = ({
|
|
52
52
|
tooltipHtml = '<span style="font-weight: bold; color:{point.color};">●</span>{point.name}: <b>{point.value}</b>',
|
53
53
|
type = "treemap",
|
54
54
|
...props
|
55
|
-
}: TreemapChartProps) => {
|
55
|
+
}: TreemapChartProps): React.ReactElement => {
|
56
56
|
|
57
57
|
const ariaProps = buildAriaProps(aria)
|
58
58
|
const dataProps = buildDataProps(data)
|
@@ -98,7 +98,6 @@ const TreemapChart = ({
|
|
98
98
|
const [options, setOptions] = useState({});
|
99
99
|
|
100
100
|
useEffect(() => {
|
101
|
-
|
102
101
|
setOptions(merge(staticOptions, customOptions));
|
103
102
|
}, [chartData]);
|
104
103
|
|
@@ -42,8 +42,8 @@ type TypeaheadProps = {
|
|
42
42
|
id?: string,
|
43
43
|
label?: string,
|
44
44
|
loadOptions?: string | Noop,
|
45
|
-
getOptionLabel?: string | (() =>
|
46
|
-
getOptionValue?: string | (() =>
|
45
|
+
getOptionLabel?: string | (() => string),
|
46
|
+
getOptionValue?: string | (() => string),
|
47
47
|
name?: string,
|
48
48
|
}
|
49
49
|
|
@@ -77,7 +77,7 @@ const Typeahead = ({
|
|
77
77
|
id,
|
78
78
|
loadOptions = noop,
|
79
79
|
...props
|
80
|
-
}: TypeaheadProps) => {
|
80
|
+
}: TypeaheadProps): React.ReactElement => {
|
81
81
|
const selectProps = {
|
82
82
|
cacheOptions: true,
|
83
83
|
components: {
|
@@ -1,16 +1,16 @@
|
|
1
1
|
import React, { useEffect } from 'react'
|
2
2
|
import { components } from 'react-select'
|
3
3
|
|
4
|
-
const ClearContainer = (props: any) => {
|
4
|
+
const ClearContainer = (props: any): React.ReactElement => {
|
5
5
|
const { selectProps, clearValue } = props
|
6
6
|
useEffect(() => {
|
7
7
|
document.addEventListener(`pb-typeahead-kit-${selectProps.id}:clear`, clearValue)
|
8
|
-
}, [
|
8
|
+
}, [])
|
9
9
|
|
10
10
|
return (
|
11
11
|
<components.ClearIndicator
|
12
|
-
|
13
|
-
|
12
|
+
className="clear_indicator"
|
13
|
+
{...props}
|
14
14
|
/>
|
15
15
|
)
|
16
16
|
}
|
@@ -5,20 +5,24 @@ import Flex from '../../pb_flex/_flex'
|
|
5
5
|
import TextInput from '../../pb_text_input/_text_input'
|
6
6
|
|
7
7
|
type Props = {
|
8
|
-
selectProps:
|
8
|
+
selectProps: {
|
9
|
+
dark?: boolean,
|
10
|
+
label: string,
|
11
|
+
error?: string,
|
12
|
+
},
|
9
13
|
}
|
10
14
|
|
11
|
-
const TypeaheadControl = (props: Props) => (
|
15
|
+
const TypeaheadControl = (props: Props): React.ReactElement => (
|
12
16
|
<div className="pb_typeahead_wrapper">
|
13
17
|
<TextInput
|
14
|
-
|
15
|
-
|
16
|
-
|
18
|
+
dark={props.selectProps.dark}
|
19
|
+
error={props.selectProps.error}
|
20
|
+
label={props.selectProps.label}
|
17
21
|
>
|
18
22
|
<Flex>
|
19
23
|
<components.Control
|
20
|
-
|
21
|
-
|
24
|
+
className="text_input"
|
25
|
+
{...props}
|
22
26
|
/>
|
23
27
|
</Flex>
|
24
28
|
</TextInput>
|
@@ -1,10 +1,15 @@
|
|
1
1
|
import React from 'react'
|
2
2
|
import { components } from 'react-select'
|
3
3
|
|
4
|
-
|
4
|
+
type IndicatorsContainerProps = {
|
5
|
+
children: React.ReactNode,
|
6
|
+
}
|
7
|
+
|
8
|
+
|
9
|
+
const IndicatorsContainer = (props: IndicatorsContainerProps): React.ReactElement => (
|
5
10
|
<components.IndicatorsContainer
|
6
|
-
|
7
|
-
|
11
|
+
className="text_input_indicators"
|
12
|
+
{...props}
|
8
13
|
/>
|
9
14
|
)
|
10
15
|
|
@@ -1,7 +1,12 @@
|
|
1
1
|
import React from 'react'
|
2
2
|
import { components } from 'react-select'
|
3
3
|
|
4
|
-
|
4
|
+
type MenuListProps = {
|
5
|
+
children: React.ReactNode,
|
6
|
+
footer: React.ReactNode,
|
7
|
+
}
|
8
|
+
|
9
|
+
const MenuList = (props: MenuListProps): React.ReactElement => {
|
5
10
|
return (
|
6
11
|
<components.MenuList {...props}>
|
7
12
|
{props.children}
|
@@ -7,12 +7,11 @@ import { SelectValueType } from '../_typeahead'
|
|
7
7
|
|
8
8
|
type Props = {
|
9
9
|
data: SelectValueType,
|
10
|
-
multiValueTemplate: any,
|
11
10
|
removeProps: any,
|
12
11
|
selectProps: any,
|
13
12
|
}
|
14
13
|
|
15
|
-
const MultiValue = (props: Props) => {
|
14
|
+
const MultiValue = (props: Props): React.ReactElement => {
|
16
15
|
const { removeProps } = props
|
17
16
|
const { imageUrl, label } = props.data
|
18
17
|
const { multiKit } = props.selectProps
|
@@ -27,36 +26,36 @@ const MultiValue = (props: Props) => {
|
|
27
26
|
|
28
27
|
return (
|
29
28
|
<components.MultiValueContainer
|
30
|
-
|
31
|
-
|
29
|
+
className="text_input_multivalue_container"
|
30
|
+
{...props}
|
32
31
|
>
|
33
32
|
{multiKit === 'badge' &&
|
34
33
|
<Badge
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
34
|
+
closeProps={removeProps}
|
35
|
+
removeIcon
|
36
|
+
text={label}
|
37
|
+
variant="primary"
|
39
38
|
/>
|
40
39
|
}
|
41
40
|
|
42
41
|
{multiKit !== 'badge' && imageUrl &&
|
43
42
|
<FormPill
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
43
|
+
avatarUrl={imageUrl}
|
44
|
+
closeProps={removeProps}
|
45
|
+
marginRight="xs"
|
46
|
+
name={label}
|
47
|
+
size={multiKit === 'smallPill' ? 'small' : ''}
|
48
|
+
text=''
|
50
49
|
/>
|
51
50
|
}
|
52
51
|
|
53
52
|
{multiKit !== 'badge' && !imageUrl &&
|
54
53
|
<FormPill
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
54
|
+
closeProps={removeProps}
|
55
|
+
marginRight="xs"
|
56
|
+
name=''
|
57
|
+
size={multiKit === 'smallPill' ? 'small' : ''}
|
58
|
+
text={label}
|
60
59
|
/>
|
61
60
|
}
|
62
61
|
</components.MultiValueContainer>
|
@@ -3,7 +3,7 @@ import { components } from 'react-select'
|
|
3
3
|
|
4
4
|
import User from '../../pb_user/_user'
|
5
5
|
|
6
|
-
const Option = (props: any) => {
|
6
|
+
const Option = (props: any): React.ReactElement => {
|
7
7
|
const {
|
8
8
|
imageUrl,
|
9
9
|
} = props.data
|
@@ -14,11 +14,11 @@ const Option = (props: any) => {
|
|
14
14
|
<>
|
15
15
|
{!valueComponent && imageUrl &&
|
16
16
|
<User
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
17
|
+
align="left"
|
18
|
+
avatarUrl={imageUrl}
|
19
|
+
dark={props.selectProps.dark}
|
20
|
+
name={props.label}
|
21
|
+
orientation="horizontal"
|
22
22
|
/>
|
23
23
|
}
|
24
24
|
|
@@ -4,19 +4,19 @@ import { components } from 'react-select'
|
|
4
4
|
import Flex from '../../pb_flex/_flex'
|
5
5
|
import Icon from '../../pb_icon/_icon'
|
6
6
|
|
7
|
-
const Placeholder = (props: any) => (
|
7
|
+
const Placeholder = (props: any): React.ReactElement => (
|
8
8
|
<>
|
9
9
|
<Flex
|
10
|
-
|
11
|
-
|
10
|
+
align="center"
|
11
|
+
className="placeholder"
|
12
12
|
>
|
13
13
|
<components.IndicatorsContainer
|
14
|
-
|
14
|
+
{...props}
|
15
15
|
/>
|
16
16
|
{props.selectProps.plusIcon &&
|
17
17
|
<Icon
|
18
|
-
|
19
|
-
|
18
|
+
className="typeahead-plus-icon"
|
19
|
+
icon="plus"
|
20
20
|
/>
|
21
21
|
}
|
22
22
|
</Flex>
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import React from 'react'
|
2
2
|
import { components } from 'react-select'
|
3
3
|
|
4
|
-
const ValueContainer = (props: any) => (
|
4
|
+
const ValueContainer = (props: any): React.ReactElement => (
|
5
5
|
<components.ValueContainer
|
6
|
-
|
7
|
-
|
6
|
+
className="text_input_value_container"
|
7
|
+
{...props}
|
8
8
|
/>
|
9
9
|
)
|
10
10
|
|