playbook_ui 14.19.0.pre.alpha.PLAY2182formgroupselectpassphraseerror7759 → 14.19.0.pre.alpha.PLAY20937693
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_advanced_table/Components/RegularTableView.tsx +1 -11
- data/app/pb_kits/playbook/pb_advanced_table/Components/TableActionBar.tsx +15 -148
- data/app/pb_kits/playbook/pb_advanced_table/Components/TableHeaderCell.tsx +3 -20
- data/app/pb_kits/playbook/pb_advanced_table/Hooks/useTableState.ts +13 -23
- data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +0 -9
- data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.tsx +2 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +0 -4
- data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +1 -5
- data/app/pb_kits/playbook/pb_advanced_table/scss_partials/advanced_table_sticky_mixin.scss +0 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.jsx +0 -11
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.md +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display_rails.html.erb +2 -33
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display_rails.md +1 -3
- data/app/pb_kits/playbook/pb_dropdown/index.js +1 -14
- data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownContainer.tsx +2 -2
- data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownTrigger.tsx +1 -1
- data/app/pb_kits/playbook/pb_file_upload/_file_upload.scss +0 -13
- data/app/pb_kits/playbook/pb_file_upload/_file_upload.tsx +1 -11
- data/app/pb_kits/playbook/pb_file_upload/docs/example.yml +0 -2
- data/app/pb_kits/playbook/pb_file_upload/docs/index.js +0 -1
- data/app/pb_kits/playbook/pb_file_upload/file_upload.html.erb +0 -1
- data/app/pb_kits/playbook/pb_file_upload/file_upload.rb +1 -7
- data/app/pb_kits/playbook/pb_file_upload/fileupload.test.js +0 -18
- data/app/pb_kits/playbook/pb_form_group/_error_state_mixin.scss +2 -2
- data/app/pb_kits/playbook/pb_form_pill/_form_pill.scss +12 -19
- data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.tsx +7 -13
- data/app/pb_kits/playbook/pb_person/_person.tsx +2 -12
- data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.scss +9 -9
- data/app/pb_kits/playbook/pb_section_separator/_section_separator.tsx +2 -2
- data/app/pb_kits/playbook/pb_text_input/_text_input.scss +2 -4
- data/dist/chunks/{_typeahead-BPSIWtFT.js → _typeahead-BQV04mOl.js} +3 -3
- data/dist/chunks/_weekday_stacked-CVwWr8B2.js +45 -0
- data/dist/chunks/{lib-B20MXZcW.js → lib-DwFasxbk.js} +2 -2
- data/dist/chunks/{pb_form_validation-WWvUXPKD.js → pb_form_validation-nnXW3T-3.js} +1 -1
- data/dist/chunks/vendor.js +1 -1
- data/dist/playbook-doc.js +1 -1
- 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/version.rb +1 -1
- metadata +6 -17
- data/app/pb_kits/playbook/pb_advanced_table/Utilities/VisibilityTree.ts +0 -47
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility.jsx +0 -57
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility.md +0 -4
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility_custom.jsx +0 -62
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility_custom.md +0 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility_multi.jsx +0 -82
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility_multi.md +0 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility_with_state.jsx +0 -65
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_visibility_with_state.md +0 -1
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_error.html.erb +0 -1
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_error.jsx +0 -41
- data/dist/chunks/_weekday_stacked-CaTzIguf.js +0 -45
@@ -21,20 +21,14 @@ module Playbook
|
|
21
21
|
prop :input_options, type: Playbook::Props::HashProp,
|
22
22
|
default: {}
|
23
23
|
|
24
|
-
prop :error, type: Playbook::Props::String
|
25
|
-
|
26
24
|
def classname
|
27
25
|
file_upload_class = generate_classname("pb_file_upload_kit")
|
28
|
-
file_upload_class +
|
26
|
+
file_upload_class + full_width_class
|
29
27
|
end
|
30
28
|
|
31
29
|
def full_width_class
|
32
30
|
full_width ? " full_width" : ""
|
33
31
|
end
|
34
|
-
|
35
|
-
def error_class
|
36
|
-
error.present? ? "_error" : ""
|
37
|
-
end
|
38
32
|
end
|
39
33
|
end
|
40
34
|
end
|
@@ -50,21 +50,3 @@ test('displays custom message', () => {
|
|
50
50
|
const kit = screen.getByTestId(testid)
|
51
51
|
expect(kit).toHaveTextContent('Hello world!')
|
52
52
|
})
|
53
|
-
|
54
|
-
test('handles error state with error prop', () => {
|
55
|
-
const errorText = "Test error message"
|
56
|
-
render(
|
57
|
-
<FileUpload
|
58
|
-
data={{ testid: testid }}
|
59
|
-
error={errorText}
|
60
|
-
/>
|
61
|
-
)
|
62
|
-
|
63
|
-
const kit = screen.getByTestId(testid)
|
64
|
-
|
65
|
-
expect(kit).toHaveClass('pb_file_upload_kit')
|
66
|
-
expect(kit).toHaveClass('error')
|
67
|
-
|
68
|
-
const errorElement = screen.getByText(errorText)
|
69
|
-
expect(errorElement).toBeInTheDocument()
|
70
|
-
})
|
@@ -23,7 +23,7 @@
|
|
23
23
|
@mixin error-state-right-side-select-kit {
|
24
24
|
&:has(.pb_text_input_kit:not(.error)):has(.pb_text_input_kit_label):has(.pb_select_kit_wrapper.error),
|
25
25
|
&:has(.pb_text_input_kit.error):has(.pb_text_input_kit_label):has(.pb_select_kit_wrapper) {
|
26
|
-
&:not(:has(.pb_phone_number_input))
|
26
|
+
&:not(:has(.pb_phone_number_input)) {
|
27
27
|
align-items: flex-start;
|
28
28
|
|
29
29
|
.pb_select_kit_wrapper {
|
@@ -49,7 +49,7 @@
|
|
49
49
|
|
50
50
|
@mixin error-state-left-side-select-kit {
|
51
51
|
&:has(.pb_select_kit_label):has(.pb_select_kit_wrapper):has(.pb_text_input_kit.error) {
|
52
|
-
&:not(:has(.pb_phone_number_input))
|
52
|
+
&:not(:has(.pb_phone_number_input)) {
|
53
53
|
align-items: flex-start;
|
54
54
|
|
55
55
|
.pb_text_input_kit.error {
|
@@ -20,12 +20,9 @@ $form_pill_colors: map-merge($status_color_text, map-merge($data_colors, $produc
|
|
20
20
|
margin-bottom: 2px;
|
21
21
|
margin-top: 2px;
|
22
22
|
cursor: pointer;
|
23
|
-
.pb_form_pill_text, .pb_form_pill_tag
|
23
|
+
.pb_form_pill_text, .pb_form_pill_close, .pb_form_pill_tag{
|
24
24
|
font-size: $font_small !important;
|
25
25
|
}
|
26
|
-
.pb_form_pill_close {
|
27
|
-
font-size: 17px;
|
28
|
-
}
|
29
26
|
|
30
27
|
&[class*=wrapped] {
|
31
28
|
height: max-content;
|
@@ -99,9 +96,7 @@ $form_pill_colors: map-merge($status_color_text, map-merge($data_colors, $produc
|
|
99
96
|
display: flex;
|
100
97
|
align-items: center;
|
101
98
|
height: 17px;
|
102
|
-
|
103
|
-
justify-content: center;
|
104
|
-
border-radius: 50%;
|
99
|
+
border-radius: calc(50%);
|
105
100
|
cursor: pointer;
|
106
101
|
@if ($color_name == "neutral") {
|
107
102
|
color: $text_lt_default;
|
@@ -151,7 +146,8 @@ $form_pill_colors: map-merge($status_color_text, map-merge($data_colors, $produc
|
|
151
146
|
outline-offset: -1px;
|
152
147
|
}
|
153
148
|
.pb_form_pill_icon {
|
154
|
-
height:
|
149
|
+
height: 12px !important;
|
150
|
+
width: 12px !important;
|
155
151
|
padding-right: $space_xs;
|
156
152
|
+ .pb_form_pill_text, + .pb_form_pill_tag,
|
157
153
|
+ .pb_tooltip_kit .pb_form_pill_text, + .pb_tooltip_kit .pb_form_pill_tag,
|
@@ -162,7 +158,7 @@ $form_pill_colors: map-merge($status_color_text, map-merge($data_colors, $produc
|
|
162
158
|
&.small {
|
163
159
|
height: 17px;
|
164
160
|
padding: 0 $space-xs;
|
165
|
-
.pb_form_pill_text, .pb_form_pill_tag {
|
161
|
+
.pb_form_pill_text, .pb_form_pill_close, .pb_form_pill_tag {
|
166
162
|
font-size: $font_smallest !important;
|
167
163
|
}
|
168
164
|
.pb_form_pill_text, .pb_form_pill_tag {
|
@@ -170,20 +166,17 @@ $form_pill_colors: map-merge($status_color_text, map-merge($data_colors, $produc
|
|
170
166
|
padding: 0 $space_xxs;
|
171
167
|
}
|
172
168
|
.pb_form_pill_close {
|
173
|
-
height:
|
174
|
-
|
175
|
-
font-size: 15px;
|
176
|
-
border-radius: 50%;
|
169
|
+
height: 10px;
|
170
|
+
border-radius: calc(50%);
|
177
171
|
}
|
178
172
|
[class^=pb_avatar_kit] .avatar_wrapper {
|
179
|
-
flex-basis:
|
180
|
-
height:
|
181
|
-
margin-top:
|
182
|
-
width:
|
183
|
-
&::before { line-height:
|
173
|
+
flex-basis: 16px;
|
174
|
+
height: 16px;
|
175
|
+
margin-top: 2px;
|
176
|
+
width: 16px;
|
177
|
+
&::before { line-height: 16.5px; }
|
184
178
|
}
|
185
179
|
.pb_form_pill_icon {
|
186
|
-
height: 0.75em;
|
187
180
|
padding-right: $space_xxs;
|
188
181
|
+ .pb_form_pill_text, + .pb_form_pill_tag,
|
189
182
|
+ .pb_tooltip_kit .pb_form_pill_text, + .pb_tooltip_kit .pb_form_pill_tag,
|
@@ -81,11 +81,6 @@ const HomeAddressStreet = (props: HomeAddressStreetProps): React.ReactElement =>
|
|
81
81
|
|
82
82
|
const formatStreetAdr = (address: string): string => preserveCase ? address : titleize(address)
|
83
83
|
|
84
|
-
const uppercaseState = state?.toUpperCase() ?? ''
|
85
|
-
|
86
|
-
const fields = [address, addressCont, city, homeId, homeUrl, houseStyle, state, territory, zipcode]
|
87
|
-
const hasAllEmptyProps = fields.every(field => field === undefined || field === null || field === '')
|
88
|
-
|
89
84
|
return (
|
90
85
|
<div
|
91
86
|
className={classes(className, dark)}
|
@@ -93,8 +88,7 @@ const HomeAddressStreet = (props: HomeAddressStreetProps): React.ReactElement =>
|
|
93
88
|
{...dataProps}
|
94
89
|
{...htmlProps}
|
95
90
|
>
|
96
|
-
{
|
97
|
-
{emphasis == 'street' && !hasAllEmptyProps &&
|
91
|
+
{emphasis == 'street' &&
|
98
92
|
<div>
|
99
93
|
<Title
|
100
94
|
className="pb_home_address_street_address"
|
@@ -111,11 +105,11 @@ const HomeAddressStreet = (props: HomeAddressStreetProps): React.ReactElement =>
|
|
111
105
|
{titleize(addressCont)}
|
112
106
|
</Title>
|
113
107
|
<Body color="light">
|
114
|
-
{`${
|
108
|
+
{`${titleize(city)}, ${state.toUpperCase()} ${zipcode}`}
|
115
109
|
</Body>
|
116
110
|
</div>
|
117
111
|
}
|
118
|
-
{emphasis == 'city' &&
|
112
|
+
{emphasis == 'city' &&
|
119
113
|
<div>
|
120
114
|
<Body color="light">
|
121
115
|
{joinPresent([formatStreetAdr(address), houseStyle], ' · ')}
|
@@ -128,18 +122,18 @@ const HomeAddressStreet = (props: HomeAddressStreetProps): React.ReactElement =>
|
|
128
122
|
size={4}
|
129
123
|
tag="span"
|
130
124
|
>
|
131
|
-
{`${
|
125
|
+
{`${titleize(city)}, ${state.toUpperCase()}`}
|
132
126
|
</Title>
|
133
127
|
<Body
|
134
128
|
color="light"
|
135
129
|
tag="span"
|
136
130
|
>
|
137
|
-
{` ${zipcode
|
131
|
+
{` ${zipcode}`}
|
138
132
|
</Body>
|
139
133
|
</div>
|
140
134
|
</div>
|
141
135
|
}
|
142
|
-
{emphasis == 'none' &&
|
136
|
+
{emphasis == 'none' &&
|
143
137
|
<div>
|
144
138
|
<Body dark={dark}>
|
145
139
|
{joinPresent([formatStreetAdr(address), houseStyle], ' · ')}
|
@@ -150,7 +144,7 @@ const HomeAddressStreet = (props: HomeAddressStreetProps): React.ReactElement =>
|
|
150
144
|
color="light"
|
151
145
|
dark={dark}
|
152
146
|
>
|
153
|
-
{`${
|
147
|
+
{`${titleize(city)}, ${state.toUpperCase()} ${zipcode}`}
|
154
148
|
</Body>
|
155
149
|
</div>
|
156
150
|
</div>
|
@@ -41,16 +41,6 @@ const Person = (props: PersonProps): React.ReactElement => {
|
|
41
41
|
className
|
42
42
|
)
|
43
43
|
|
44
|
-
const hasAllEmptyProps = [firstName, lastName].every(field => field === undefined || field === null || field === '')
|
45
|
-
|
46
|
-
if (hasAllEmptyProps) {
|
47
|
-
return (
|
48
|
-
<>
|
49
|
-
—
|
50
|
-
</>
|
51
|
-
)
|
52
|
-
}
|
53
|
-
|
54
44
|
return (
|
55
45
|
<div
|
56
46
|
{...ariaProps}
|
@@ -63,13 +53,13 @@ const Person = (props: PersonProps): React.ReactElement => {
|
|
63
53
|
className="pb_person_first"
|
64
54
|
tag="span"
|
65
55
|
>
|
66
|
-
{firstName
|
56
|
+
{firstName}
|
67
57
|
</Body>
|
68
58
|
{lastName &&
|
69
59
|
<Title
|
70
60
|
className="pb_person_first"
|
71
61
|
size={4}
|
72
|
-
text={
|
62
|
+
text={` ${lastName}`}
|
73
63
|
/>
|
74
64
|
}
|
75
65
|
</div>
|
@@ -42,7 +42,7 @@ $flag-min-resolution: 192dpi;
|
|
42
42
|
.iti__country-list {
|
43
43
|
min-width: $dropdown-min-width;
|
44
44
|
}
|
45
|
-
// iti-spacer-horizontal's default is 8px, or $space_xs
|
45
|
+
// iti-spacer-horizontal's default is 8px, or $space_xs
|
46
46
|
.iti__country-list .iti__flag, .iti__country-name {
|
47
47
|
margin-right: $space_xs;
|
48
48
|
}
|
@@ -60,7 +60,7 @@ $flag-min-resolution: 192dpi;
|
|
60
60
|
color: $focus_input_light;
|
61
61
|
}
|
62
62
|
|
63
|
-
.dropdown_open
|
63
|
+
.dropdown_open {
|
64
64
|
.text_input {
|
65
65
|
border-color: $primary !important;
|
66
66
|
}
|
@@ -76,7 +76,7 @@ $flag-min-resolution: 192dpi;
|
|
76
76
|
}
|
77
77
|
|
78
78
|
.iti__divider {
|
79
|
-
border-bottom: 1px solid $border_light !important;
|
79
|
+
border-bottom: 1px solid $border_light !important;
|
80
80
|
}
|
81
81
|
|
82
82
|
.iti__selected-country-primary {
|
@@ -96,7 +96,7 @@ $flag-min-resolution: 192dpi;
|
|
96
96
|
justify-content: center;
|
97
97
|
align-items: center;
|
98
98
|
border-width: 0;
|
99
|
-
border-radius: $space_xxs;
|
99
|
+
border-radius: $space_xxs;
|
100
100
|
|
101
101
|
&[aria-expanded="true"] {
|
102
102
|
color: $primary_action;
|
@@ -199,7 +199,7 @@ $flag-min-resolution: 192dpi;
|
|
199
199
|
}
|
200
200
|
|
201
201
|
.iti__dropdown-content {
|
202
|
-
border-radius: $space_xs;
|
202
|
+
border-radius: $space_xs;
|
203
203
|
border: 1px solid $border_light !important;
|
204
204
|
position: absolute;
|
205
205
|
top: 100%;
|
@@ -228,13 +228,13 @@ $flag-min-resolution: 192dpi;
|
|
228
228
|
}
|
229
229
|
|
230
230
|
.iti__dropdown-content {
|
231
|
-
border-radius: $space_xs;
|
231
|
+
border-radius: $space_xs;
|
232
232
|
border: 1px solid $border_dark !important;
|
233
233
|
.iti__search-input {
|
234
234
|
background-color: $bg_dark_card;
|
235
235
|
&:hover {
|
236
236
|
background-color: $bg_dark_card;
|
237
|
-
}
|
237
|
+
}
|
238
238
|
&:active,
|
239
239
|
&:focus {
|
240
240
|
background-color: $card_dark;
|
@@ -243,7 +243,7 @@ $flag-min-resolution: 192dpi;
|
|
243
243
|
}
|
244
244
|
|
245
245
|
.iti__divider {
|
246
|
-
border-bottom: 1px solid $border_dark !important;
|
246
|
+
border-bottom: 1px solid $border_dark !important;
|
247
247
|
}
|
248
248
|
|
249
249
|
.iti__country-list {
|
@@ -278,7 +278,7 @@ $flag-min-resolution: 192dpi;
|
|
278
278
|
color: $white;
|
279
279
|
}
|
280
280
|
}
|
281
|
-
|
281
|
+
|
282
282
|
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: $flag-min-resolution) {
|
283
283
|
.iti__flag {
|
284
284
|
background-image: url("https://unpkg.com/intl-tel-input@24.6.0/build/img/flags@2x.png");
|
@@ -2,7 +2,7 @@ import React from 'react'
|
|
2
2
|
import classnames from 'classnames'
|
3
3
|
|
4
4
|
import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
|
5
|
-
import { globalProps, globalInlineProps
|
5
|
+
import { globalProps, globalInlineProps } from '../utilities/globalProps'
|
6
6
|
|
7
7
|
import Caption from '../pb_caption/_caption'
|
8
8
|
|
@@ -19,7 +19,7 @@ type SectionSeparatorProps = {
|
|
19
19
|
orientation?: "horizontal" | "vertical",
|
20
20
|
text?: string,
|
21
21
|
variant?: "card" | "background",
|
22
|
-
}
|
22
|
+
}
|
23
23
|
|
24
24
|
const SectionSeparator = (props: SectionSeparatorProps): React.ReactElement => {
|
25
25
|
const {
|
@@ -71,8 +71,7 @@
|
|
71
71
|
}
|
72
72
|
&.error {
|
73
73
|
.text_input_wrapper {
|
74
|
-
|
75
|
-
input:not(.iti__search-input),
|
74
|
+
input,
|
76
75
|
.text_input {
|
77
76
|
border-color: $error_dark;
|
78
77
|
}
|
@@ -103,8 +102,7 @@
|
|
103
102
|
[class*="pb_body_kit"] {
|
104
103
|
margin-top: $space_xs / 2;
|
105
104
|
}
|
106
|
-
|
107
|
-
input:not(.iti__search-input),
|
105
|
+
input,
|
108
106
|
.text_input {
|
109
107
|
border-color: $error;
|
110
108
|
}
|