playbook_ui 14.9.0.pre.alpha.play1703errorstatealignment5060 → 14.9.0.pre.alpha.play1742globalheightfixes4766

Sign up to get free protection for your applications and to get access to all the features.
Files changed (97) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/Components/CollapsibleTrail.tsx +6 -1
  3. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +0 -8
  4. data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +0 -1
  5. data/app/pb_kits/playbook/pb_advanced_table/table_body.rb +2 -4
  6. data/app/pb_kits/playbook/pb_advanced_table/table_header.html.erb +3 -5
  7. data/app/pb_kits/playbook/pb_advanced_table/table_row.html.erb +0 -8
  8. data/app/pb_kits/playbook/pb_advanced_table/table_row.rb +0 -2
  9. data/app/pb_kits/playbook/pb_advanced_table/table_subrow_header.html.erb +0 -8
  10. data/app/pb_kits/playbook/pb_advanced_table/table_subrow_header.rb +0 -2
  11. data/app/pb_kits/playbook/pb_avatar/_avatar.scss +2 -0
  12. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom.jsx +49 -53
  13. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom_rails.html.erb +36 -29
  14. data/app/pb_kits/playbook/pb_body/_body.scss +13 -14
  15. data/app/pb_kits/playbook/pb_body/_body_mixins.scss +16 -22
  16. data/app/pb_kits/playbook/pb_bread_crumbs/docs/_bread_crumbs_default.jsx +0 -6
  17. data/app/pb_kits/playbook/pb_caption/_caption_mixin.scss +1 -2
  18. data/app/pb_kits/playbook/pb_card/_card_mixin.scss +1 -1
  19. data/app/pb_kits/playbook/pb_collapsible/_collapsible.tsx +4 -9
  20. data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx +2 -2
  21. data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleMain.tsx +2 -2
  22. data/app/pb_kits/playbook/pb_file_upload/_file_upload.scss +0 -5
  23. data/app/pb_kits/playbook/pb_file_upload/_file_upload.tsx +2 -7
  24. data/app/pb_kits/playbook/pb_file_upload/file_upload.html.erb +2 -8
  25. data/app/pb_kits/playbook/pb_form_group/_form_group.scss +2 -11
  26. data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.tsx +1 -17
  27. data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_emphasis.html.erb +1 -17
  28. data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_emphasis.jsx +0 -15
  29. data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_emphasis.md +1 -2
  30. data/app/pb_kits/playbook/pb_home_address_street/home_address_street.rb +1 -15
  31. data/app/pb_kits/playbook/pb_link/_link.scss +3 -3
  32. data/app/pb_kits/playbook/pb_nav/_bold_mixin.scss +1 -11
  33. data/app/pb_kits/playbook/pb_nav/_collapsible_nav.scss +2 -16
  34. data/app/pb_kits/playbook/pb_nav/_vertical_nav.scss +1 -1
  35. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +4 -4
  36. data/app/pb_kits/playbook/pb_selectable_card/selectable_card.html.erb +1 -1
  37. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_height_width.jsx +0 -2
  38. data/app/pb_kits/playbook/pb_skeleton_loading/docs/example.yml +1 -2
  39. data/app/pb_kits/playbook/pb_skeleton_loading/docs/index.js +0 -2
  40. data/app/pb_kits/playbook/pb_stat_change/_stat_change.tsx +36 -44
  41. data/app/pb_kits/playbook/pb_stat_change/stat_change.html.erb +4 -4
  42. data/app/pb_kits/playbook/pb_table/docs/example.yml +0 -5
  43. data/app/pb_kits/playbook/pb_table/docs/index.js +0 -5
  44. data/app/pb_kits/playbook/pb_table/index.ts +26 -100
  45. data/app/pb_kits/playbook/pb_table/styles/_all.scss +1 -2
  46. data/app/pb_kits/playbook/pb_table/subcomponents/_table_row.tsx +1 -106
  47. data/app/pb_kits/playbook/pb_table/table.html.erb +1 -1
  48. data/app/pb_kits/playbook/pb_table/table.rb +2 -17
  49. data/app/pb_kits/playbook/pb_text_input/_text_input.tsx +3 -35
  50. data/app/pb_kits/playbook/pb_text_input/docs/example.yml +0 -1
  51. data/app/pb_kits/playbook/pb_text_input/docs/index.js +0 -1
  52. data/app/pb_kits/playbook/pb_text_input/text_input.test.js +2 -139
  53. data/app/pb_kits/playbook/pb_title/_title.scss +5 -6
  54. data/app/pb_kits/playbook/pb_title/_title_mixin.scss +0 -13
  55. data/app/pb_kits/playbook/pb_typeahead/_typeahead.scss +46 -115
  56. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_highlight.jsx +2 -9
  57. data/app/pb_kits/playbook/pb_typeahead/typeahead.html.erb +2 -3
  58. data/app/pb_kits/playbook/tokens/_titles.scss +8 -0
  59. data/app/pb_kits/playbook/utilities/_hover.scss +2 -11
  60. data/app/pb_kits/playbook/utilities/globalProps.ts +0 -2
  61. data/app/pb_kits/playbook/utilities/test/globalProps/hover.test.js +0 -15
  62. data/dist/chunks/_typeahead-B8fkIeXA.js +22 -0
  63. data/dist/chunks/_weekday_stacked-DjRTXEi-.js +45 -0
  64. data/dist/chunks/{lib-CuCy3_xO.js → lib-SyD3buPZ.js} +3 -3
  65. data/dist/chunks/{pb_form_validation-D37k10a0.js → pb_form_validation-Dt8UJgrJ.js} +1 -1
  66. data/dist/chunks/vendor.js +1 -1
  67. data/dist/menu.yml +1 -1
  68. data/dist/playbook-doc.js +1 -1
  69. data/dist/playbook-rails-react-bindings.js +1 -1
  70. data/dist/playbook-rails.js +1 -1
  71. data/dist/playbook.css +1 -1
  72. data/lib/playbook/hover.rb +1 -7
  73. data/lib/playbook/version.rb +1 -1
  74. metadata +6 -27
  75. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_collapsible_trail_rails.html.erb +0 -36
  76. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_collapsible_trail_rails.md +0 -1
  77. data/app/pb_kits/playbook/pb_form_group/_error_state_mixin.scss +0 -57
  78. data/app/pb_kits/playbook/pb_home_address_street/none_emphasis.html.erb +0 -32
  79. data/app/pb_kits/playbook/pb_home_address_street/none_emphasis.rb +0 -29
  80. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_filter.jsx +0 -166
  81. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_user.jsx +0 -89
  82. data/app/pb_kits/playbook/pb_table/docs/_table_sticky_left_columns.html.erb +0 -95
  83. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible.jsx +0 -75
  84. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible.md +0 -1
  85. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_click.jsx +0 -108
  86. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_click.md +0 -2
  87. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content.jsx +0 -94
  88. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content.md +0 -0
  89. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows.jsx +0 -83
  90. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows.md +0 -3
  91. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table.jsx +0 -120
  92. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table.md +0 -1
  93. data/app/pb_kits/playbook/pb_table/styles/_collapsible.scss +0 -35
  94. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_mask.jsx +0 -88
  95. data/app/pb_kits/playbook/pb_text_input/inputMask.ts +0 -64
  96. data/dist/chunks/_typeahead-l1kq1p9m.js +0 -22
  97. data/dist/chunks/_weekday_stacked-DkCMUF58.js +0 -45
@@ -7,21 +7,14 @@ import {
7
7
  buildHtmlProps,
8
8
  } from "../../utilities/props";
9
9
  import { globalProps } from "../../utilities/globalProps";
10
- import Collapsible from "../../pb_collapsible/_collapsible";
11
- import useCollapsible from "../../pb_collapsible/useCollapsible";
12
10
 
13
11
  type TableRowPropTypes = {
14
12
  aria?: { [key: string]: string };
15
13
  children: React.ReactNode[] | React.ReactNode;
16
14
  className: string;
17
- collapsible?: boolean;
18
- collapsibleContent?: React.ReactNode[] | React.ReactNode;
19
- collapsibleSideHighlight?: boolean;
20
15
  data?: { [key: string]: string };
21
- dark?: boolean;
22
16
  htmlOptions?: { [key: string]: string | number | boolean | (() => void) };
23
17
  id?: string;
24
- toggleCellId?: string;
25
18
  sideHighlightColor: string;
26
19
  tag?: "table" | "div";
27
20
  };
@@ -30,15 +23,10 @@ const TableRow = (props: TableRowPropTypes): React.ReactElement => {
30
23
  const {
31
24
  aria = {},
32
25
  children,
33
- collapsible,
34
- collapsibleContent,
35
- collapsibleSideHighlight = true,
36
26
  className,
37
27
  data = {},
38
- dark = false,
39
28
  htmlOptions = {},
40
29
  id,
41
- toggleCellId,
42
30
  sideHighlightColor = "none",
43
31
  tag = "table",
44
32
  } = props;
@@ -48,110 +36,17 @@ const TableRow = (props: TableRowPropTypes): React.ReactElement => {
48
36
  const htmlProps = buildHtmlProps(htmlOptions);
49
37
  const sideHighlightClass =
50
38
  sideHighlightColor != "" ? `side_highlight_${sideHighlightColor}` : null;
51
-
52
- const [isCollapsed, setIsCollapsed] = useCollapsible(true);
53
-
54
- const collapsibleRow = collapsible && isCollapsed === true ? "collapsible_table_row" : null;
55
39
  const classes = classnames(
56
40
  buildCss("pb_table_row_kit", sideHighlightClass),
57
41
  "pb_table_tr",
58
- collapsibleRow,
59
42
  globalProps(props),
60
43
  className
61
44
  );
62
45
  const isTableTag = tag === "table";
63
46
 
64
- // const [isCollapsed, setIsCollapsed] = useCollapsible(true);
65
-
66
- const colSpan = React.Children.count(children);
67
-
68
- const handleRowClick = (event: React.MouseEvent) => {
69
- if (toggleCellId) {
70
- const target = event.target as HTMLElement;
71
- const clickedCell = target.closest(`#${toggleCellId}`);
72
- const isIconClick =
73
- target instanceof SVGElement &&
74
- (target.matches("svg.pb_custom_icon") || target.closest("svg.pb_custom_icon"));
75
-
76
- if (clickedCell || isIconClick) {
77
- setIsCollapsed(!isCollapsed);
78
- }
79
- } else {
80
- setIsCollapsed(!isCollapsed);
81
- }
82
- };
83
-
84
47
  return (
85
48
  <>
86
- {collapsible ? (
87
- isTableTag ? (
88
- <>
89
- <tr
90
- {...ariaProps}
91
- {...dataProps}
92
- {...htmlProps}
93
- className={classes}
94
- id={id}
95
- onClick={(e)=>handleRowClick(e)}
96
- style={{ cursor: toggleCellId ? "default" : "pointer" }}
97
- >
98
- {children}
99
- </tr>
100
- <tr>
101
- <Collapsible
102
- collapsed={isCollapsed}
103
- dark={dark}
104
- htmlOptions={{ colSpan: colSpan }}
105
- padding="none"
106
- tag="td"
107
- >
108
- <tr/>
109
- <Collapsible.Content
110
- className={collapsibleSideHighlight ? `table_collapsible_side_highlight` : ''}
111
- dark={dark}
112
- margin="none"
113
- padding="none"
114
- >
115
- {collapsibleContent}
116
- </Collapsible.Content>
117
- </Collapsible>
118
- </tr>
119
- </>
120
- ) : (
121
- <>
122
- <div
123
- {...ariaProps}
124
- {...dataProps}
125
- {...htmlProps}
126
- className={classes}
127
- id={id}
128
- onClick={handleRowClick}
129
- style={{ cursor: "pointer" }}
130
- >
131
- {children}
132
- </div>
133
- <tr>
134
- <Collapsible
135
- collapsed={isCollapsed}
136
- dark={dark}
137
- htmlOptions={{ colSpan: colSpan }}
138
- padding="none"
139
- tag="td"
140
- >
141
- <tr/>
142
- <Collapsible.Content
143
- className={collapsibleSideHighlight ? `table_collapsible_side_highlight` : ''}
144
- dark={dark}
145
- margin="none"
146
- padding="none"
147
- >
148
- {collapsibleContent}
149
- </Collapsible.Content>
150
- </Collapsible>
151
- </tr>
152
- </>
153
- )
154
- ) : isTableTag ? (
49
+ {isTableTag ? (
155
50
  <tr
156
51
  {...ariaProps}
157
52
  {...dataProps}
@@ -18,4 +18,4 @@
18
18
  <%= content.presence %>
19
19
  <% end %>
20
20
  <% end %>
21
- <% end %>
21
+ <% end %>
@@ -23,8 +23,6 @@ module Playbook
23
23
  prop :text
24
24
  prop :sticky, type: Playbook::Props::Boolean,
25
25
  default: false
26
- prop :sticky_left_column, type: Playbook::Props::Array,
27
- default: []
28
26
  prop :vertical_border, type: Playbook::Props::Boolean,
29
27
  default: false
30
28
  prop :striped, type: Playbook::Props::Boolean,
@@ -39,8 +37,8 @@ module Playbook
39
37
  def classname
40
38
  generate_classname(
41
39
  "pb_table", "table-#{size}", single_line_class, dark_class,
42
- disable_hover_class, container_class, data_table_class, sticky_class, sticky_left_column_class,
43
- collapse_class, vertical_border_class, striped_class, outer_padding_class,
40
+ disable_hover_class, container_class, data_table_class, sticky_class, collapse_class,
41
+ vertical_border_class, striped_class, outer_padding_class,
44
42
  "table-responsive-#{responsive}", separator: " "
45
43
  )
46
44
  end
@@ -75,19 +73,6 @@ module Playbook
75
73
  sticky ? "sticky-header" : nil
76
74
  end
77
75
 
78
- def sticky_left_column_class
79
- if sticky_left_column.empty?
80
- nil
81
- else
82
- sticky_col_classname = "sticky-left-column sticky-columns"
83
- sticky_left_column.each do |id|
84
- sticky_col_classname += "-#{id}"
85
- end
86
-
87
- sticky_col_classname
88
- end
89
- end
90
-
91
76
  def striped_class
92
77
  striped ? "striped" : nil
93
78
  end
@@ -1,4 +1,4 @@
1
- import React, { forwardRef, ChangeEvent } from 'react'
1
+ import React, { forwardRef } from 'react'
2
2
  import classnames from 'classnames'
3
3
 
4
4
  import { globalProps, GlobalProps, domSafeProps } from '../utilities/globalProps'
@@ -10,8 +10,6 @@ import Caption from '../pb_caption/_caption'
10
10
  import Body from '../pb_body/_body'
11
11
  import Icon from '../pb_icon/_icon'
12
12
 
13
- import { INPUTMASKS } from './inputMask'
14
-
15
13
  type TextInputProps = {
16
14
  aria?: { [key: string]: string },
17
15
  className?: string,
@@ -24,7 +22,6 @@ type TextInputProps = {
24
22
  inline?: boolean,
25
23
  name: string,
26
24
  label: string,
27
- mask?: 'currency' | 'zipCode' | 'postalCode' | 'ssn',
28
25
  onChange: (e: React.FormEvent<HTMLInputElement>) => void,
29
26
  placeholder: string,
30
27
  required?: boolean,
@@ -50,7 +47,6 @@ const TextInput = (props: TextInputProps, ref: React.LegacyRef<HTMLInputElement>
50
47
  htmlOptions = {},
51
48
  id,
52
49
  inline = false,
53
- mask = null,
54
50
  name,
55
51
  label,
56
52
  onChange = () => { void 0 },
@@ -94,33 +90,6 @@ const TextInput = (props: TextInputProps, ref: React.LegacyRef<HTMLInputElement>
94
90
  />
95
91
  )
96
92
 
97
- const isMaskedInput = mask && mask in INPUTMASKS
98
-
99
- const handleChange = (e: ChangeEvent<HTMLInputElement>) => {
100
- if (isMaskedInput) {
101
- const inputValue = e.target.value
102
-
103
- let cursorPosition = e.target.selectionStart;
104
- const isAtEnd = cursorPosition === inputValue.length;
105
-
106
- const formattedValue = INPUTMASKS[mask].format(inputValue)
107
- e.target.value = formattedValue
108
-
109
- // Keep cursor position
110
- if (!isAtEnd) {
111
- // Account for extra characters (e.g., commas added/removed in currency)
112
- if (formattedValue.length - inputValue.length === 1) {
113
- cursorPosition = cursorPosition + 1
114
- } else if (mask === "currency" && formattedValue.length - inputValue.length === -1) {
115
- cursorPosition = cursorPosition - 1
116
- }
117
- e.target.selectionStart = e.target.selectionEnd = cursorPosition
118
- }
119
- }
120
-
121
- onChange(e)
122
- }
123
-
124
93
  const childInput = children ? children.type === "input" : undefined
125
94
 
126
95
  const textInput = (
@@ -132,9 +101,8 @@ const TextInput = (props: TextInputProps, ref: React.LegacyRef<HTMLInputElement>
132
101
  id={id}
133
102
  key={id}
134
103
  name={name}
135
- onChange={isMaskedInput ? handleChange : onChange}
136
- pattern={isMaskedInput ? INPUTMASKS[mask]?.pattern : undefined}
137
- placeholder={placeholder || (isMaskedInput ? INPUTMASKS[mask]?.placeholder : undefined)}
104
+ onChange={onChange}
105
+ placeholder={placeholder}
138
106
  ref={ref}
139
107
  required={required}
140
108
  type={type}
@@ -16,7 +16,6 @@ examples:
16
16
  - text_input_add_on: Add On
17
17
  - text_input_inline: Inline
18
18
  - text_input_no_label: No Label
19
- - text_input_mask: Mask
20
19
 
21
20
  swift:
22
21
  - text_input_default_swift: Default
@@ -5,4 +5,3 @@ export { default as TextInputDisabled } from './_text_input_disabled.jsx'
5
5
  export { default as TextInputAddOn } from './_text_input_add_on.jsx'
6
6
  export { default as TextInputInline } from './_text_input_inline.jsx'
7
7
  export { default as TextInputNoLabel } from './_text_input_no_label.jsx'
8
- export { default as TextInputMask } from './_text_input_mask.jsx'
@@ -1,5 +1,5 @@
1
- import React, { useState } from 'react'
2
- import { render, screen, fireEvent, within } from '../utilities/test-utils'
1
+ import React from 'react'
2
+ import { render, screen } from '../utilities/test-utils'
3
3
 
4
4
  import TextInput from './_text_input'
5
5
 
@@ -89,140 +89,3 @@ test('returns additional class name', () => {
89
89
  const kit = screen.getByTestId(testId)
90
90
  expect(kit).toHaveClass(`${kitClass} mb_lg`)
91
91
  })
92
-
93
-
94
- const TextInputCurrencyMask = (props) => {
95
- const [currency, setValue] = useState('')
96
- const handleOnChange = ({ target }) => {
97
- setValue(target.value)
98
- }
99
-
100
- return (
101
- <TextInput
102
- mask="currency"
103
- onChange={handleOnChange}
104
- value={currency}
105
- {...props}
106
- />
107
- )
108
- }
109
-
110
- test('returns masked currency value', () => {
111
- render(
112
- <TextInputCurrencyMask
113
- data={{ testid: testId }}
114
- />
115
- )
116
-
117
- const kit = screen.getByTestId(testId)
118
-
119
- const input = within(kit).getByRole('textbox');
120
-
121
- fireEvent.change(input, { target: { value: '123456' } });
122
-
123
- expect(input.value).toBe('$1,234.56')
124
-
125
- fireEvent.change(input, { target: { value: '1' } });
126
-
127
- expect(input.value).toBe('$0.01')
128
-
129
- fireEvent.change(input, { target: { value: '' } });
130
-
131
- expect(input.value).toBe('')
132
- })
133
-
134
- const TextInputZipCodeMask = (props) => {
135
- const [zipCode, setValue] = useState('')
136
- const handleOnChange = ({ target }) => {
137
- setValue(target.value)
138
- }
139
-
140
- return (
141
- <TextInput
142
- mask="zipCode"
143
- onChange={handleOnChange}
144
- value={zipCode}
145
- {...props}
146
- />
147
- )
148
- }
149
-
150
- test('returns masked zip code value', () => {
151
- render(
152
- <TextInputZipCodeMask
153
- data={{ testid: testId }}
154
- />
155
- )
156
-
157
- const kit = screen.getByTestId(testId)
158
-
159
- const input = within(kit).getByRole('textbox');
160
-
161
- fireEvent.change(input, { target: { value: '123456' } });
162
-
163
- expect(input.value).toBe('12345')
164
- })
165
-
166
- const TextInputPostalCodeMask = (props) => {
167
- const [postalCode, setValue] = useState('')
168
- const handleOnChange = ({ target }) => {
169
- setValue(target.value)
170
- }
171
-
172
- return (
173
- <TextInput
174
- mask="postalCode"
175
- onChange={handleOnChange}
176
- value={postalCode}
177
- {...props}
178
- />
179
- )
180
- }
181
-
182
- test('returns masked postal code value', () => {
183
- render(
184
- <TextInputPostalCodeMask
185
- data={{ testid: testId }}
186
- />
187
- )
188
-
189
- const kit = screen.getByTestId(testId)
190
-
191
- const input = within(kit).getByRole('textbox');
192
-
193
- fireEvent.change(input, { target: { value: '123456789' } });
194
-
195
- expect(input.value).toBe('12345-6789')
196
- })
197
-
198
- const TextInputSSNMask = (props) => {
199
- const [ssn, setValue] = useState('')
200
- const handleOnChange = ({ target }) => {
201
- setValue(target.value)
202
- }
203
-
204
- return (
205
- <TextInput
206
- mask="ssn"
207
- onChange={handleOnChange}
208
- value={ssn}
209
- {...props}
210
- />
211
- )
212
- }
213
-
214
- test('returns masked ssn value', () => {
215
- render(
216
- <TextInputSSNMask
217
- data={{ testid: testId }}
218
- />
219
- )
220
-
221
- const kit = screen.getByTestId(testId)
222
-
223
- const input = within(kit).getByRole('textbox');
224
-
225
- fireEvent.change(input, { target: { value: '123456789' } });
226
-
227
- expect(input.value).toBe('123-45-6789')
228
- })
@@ -49,11 +49,10 @@
49
49
  }
50
50
 
51
51
  &.dark {
52
- @include title_dark;
53
- @each $name, $color in $pb_dark_title_colors {
54
- &[class*="_#{$name}"] {
55
- color: $color;
56
- }
57
- }
52
+ @include pb_title_dark;
53
+ }
54
+
55
+ &.dark[class*=_link] {
56
+ @include pb_title_dark_link;
58
57
  }
59
58
  }
@@ -9,15 +9,6 @@ $pb_title_colors: (
9
9
  link: $primary
10
10
  );
11
11
 
12
- $pb_dark_title_colors: (
13
- default: $text_dk_default,
14
- light: $text_dk_light,
15
- lighter: $text_dk_lighter,
16
- success: $success,
17
- error: $error_dark,
18
- link: $active_dark
19
- );
20
-
21
12
  @mixin title_colors {
22
13
  @each $name, $color in $pb_title_colors {
23
14
  &[class*=_#{$name}] {
@@ -25,7 +16,3 @@ $pb_dark_title_colors: (
25
16
  }
26
17
  }
27
18
  }
28
-
29
- @mixin title_dark {
30
- color: $text_dk_default;
31
- }
@@ -90,7 +90,50 @@
90
90
  }
91
91
  }
92
92
  }
93
-
93
+ &[class*=dark] {
94
+ .pb_typeahead_wrapper .pb_typeahead_loading_indicator {
95
+ color: $text_dk_light;
96
+ }
97
+ [class^=pb_text_input_kit].dark .text_input_wrapper .text_input {
98
+ display: inherit !important;
99
+ }
100
+ .typeahead-kit-select__menu {
101
+ background-color: $bg_dark;
102
+ color: $white;
103
+ z-index: $z_1;
104
+ }
105
+ .typeahead-kit-select__option:hover {
106
+ background-color: $active_dark;
107
+ }
108
+ .typeahead-kit-select__indicator:hover {
109
+ color: $white;
110
+ }
111
+ .typeahead-kit-select__input {
112
+ color: white;
113
+ input:focus {
114
+ box-shadow: none;
115
+ }
116
+ }
117
+ .typeahead-kit-select__single-value {
118
+ color: white;
119
+ }
120
+ .typeahead-kit-select__option--is-focused {
121
+ background-color: $active_dark;
122
+ }
123
+ [class^=pb_list_kit] {
124
+ background-color: $bg_dark;
125
+ }
126
+ .pb_item_kit {
127
+ button {
128
+ color: white !important;
129
+ }
130
+ @media (hover:hover) {
131
+ &:hover {
132
+ background-color: rgba($white,.1);
133
+ }
134
+ }
135
+ }
136
+ }
94
137
  &.react-select, &.react-select .dark {
95
138
  .text_input {
96
139
  display: inherit;
@@ -139,7 +182,7 @@
139
182
  }
140
183
  }
141
184
  }
142
-
185
+
143
186
  .typeahead-kit-select__menu {
144
187
  z-index: $z_1;
145
188
  .typeahead-kit-select__menu-list {
@@ -172,117 +215,5 @@
172
215
  }
173
216
  }
174
217
  }
175
-
176
- &[class*=dark] {
177
- .pb_typeahead_wrapper .pb_typeahead_loading_indicator {
178
- color: $text_dk_light;
179
- }
180
- .pb_text_input_kit_label {
181
- color: $text_dk_light;
182
- }
183
- [class^=pb_text_input_kit].dark .text_input_wrapper .text_input {
184
- display: inherit !important;
185
- }
186
- .typeahead-kit-select__menu {
187
- background-color: $bg_dark;
188
- color: $white;
189
- z-index: $z_1;
190
- .typeahead-kit-select__menu-list {
191
- padding: 0;
192
- }
193
- .typeahead-kit-select__single-value {
194
- color: white;
195
- }
196
-
197
- .typeahead-kit-select__option {
198
- &.typeahead-kit-select__option--is-focused {
199
- background-color: $hover_dark;
200
- }
201
- &.typeahead-kit-select__option--is-selected {
202
- background-color: $active_dark;
203
- }
204
- }
205
- }
206
- .text_input_wrapper{
207
- color: text_dk_default;
208
- }
209
- .typeahead-kit-select__option:hover {
210
- background-color: $active_dark;
211
- }
212
- .typeahead-kit-select__indicator {
213
- color: $text_dk_default;
214
- }
215
- .typeahead-kit-select__indicator:hover {
216
- color: $text_dk_lighter;
217
- }
218
- .typeahead-kit-select__input {
219
- color: white;
220
- input:focus {
221
- box-shadow: none;
222
- }
223
- }
224
- .typeahead-kit-select__option--is-focused {
225
- background-color: $active_dark;
226
- }
227
- [class^=pb_list_kit] {
228
- background-color: $bg_dark;
229
- }
230
- .pb_item_kit {
231
- button {
232
- color: white !important;
233
- }
234
- @media (hover:hover) {
235
- &:hover {
236
- background-color: $hover_dark;
237
- }
238
- }
239
- }
240
-
241
- .text_input {
242
- .typeahead-kit-select__input-container{
243
- color: $text_dk_default
244
- }
245
- .typeahead-kit-select {
246
- &__single-value{
247
- color: $text_dk_default;
248
- }
249
- }
250
- &.typeahead-kit-select {
251
- &__single-value{
252
- color: $text_dk_default;
253
- }
254
- &__control {
255
- &--is-focused {
256
- @include pb_textarea_focus;
257
- @include transition_default;
258
- border-color: $active_dark;
259
- background-color: rgba($focus_input_dark,$opacity_5);
260
- box-shadow: none;
261
- .typeahead-plus-icon {
262
- display: none;
263
- }
264
- }
265
- }
266
- }
267
- }
268
-
269
- &.inline {
270
- &:not(:hover) {
271
- .text_input {
272
- background-color: transparent;
273
- border-color: transparent;
274
- }
275
- .typeahead-kit-select__indicator {
276
- color: transparent;
277
- }
278
- }
279
-
280
- &:hover {
281
- .text_input {
282
- background-color: $hover_dark;
283
- }
284
- }
285
- }
286
-
287
- }
288
218
  }
219
+
@@ -55,18 +55,11 @@ const TypeaheadWithHighlight = (props) => {
55
55
  marginRight="sm"
56
56
  name={name}
57
57
  size="sm"
58
- {...props}
59
58
  />
60
59
  </FlexItem>
61
60
  <FlexItem>
62
- <Title
63
- size={4}
64
- {...props}
65
- >
66
- <span dangerouslySetInnerHTML={{ __html: highlighted(name) }} /></Title>
67
- <Body color="light"
68
- {...props}
69
- >
61
+ <Title size={4}><span dangerouslySetInnerHTML={{ __html: highlighted(name) }} /></Title>
62
+ <Body color="light">
70
63
  <span dangerouslySetInnerHTML={{ __html: highlighted(title) }} />{" • "}
71
64
  {territory}
72
65
  </Body>
@@ -25,9 +25,8 @@
25
25
  validation: object.validation,
26
26
  label: object.label,
27
27
  id: object.input_options[:id],
28
- dark: object.dark,
29
28
  }) %>
30
- <%= pb_rails("list", props: { ordered: false, borderless: true, xpadding: true, role: "status", aria: { live: "polite" }, data: { pb_typeahead_kit_results: true } }) do %>
29
+ <%= pb_rails("list", props: { ordered: false, borderless: false, xpadding: true, role: "status", aria: { live: "polite" }, data: { pb_typeahead_kit_results: true } }) do %>
31
30
  <% end %>
32
31
  </div>
33
32
 
@@ -37,4 +36,4 @@
37
36
  <% end %>
38
37
  </template>
39
38
  <% end %>
40
- <% end %>
39
+ <% end %>