Skip to content

Commit 37d1add

Browse files
aslynblohmpatmoo
andauthored
fix: update accessibility features of the people picker component (#1922)
* Initial changes to update aria attrs * update people picker a11y * Removing commented out code * clean up styles * clean up key press logic * Clean up * Updating the down arrow behavior to be more consistent and cleaning up some styles * Removing console.log Co-authored-by: Patrick Moore <[email protected]>
1 parent 3b1dfba commit 37d1add

File tree

2 files changed

+231
-263
lines changed

2 files changed

+231
-263
lines changed

packages/mgt-components/src/components/mgt-people-picker/mgt-people-picker.scss

Lines changed: 96 additions & 91 deletions
Original file line numberDiff line numberDiff line change
@@ -40,21 +40,113 @@ mgt-people-picker .root {
4040
&.disabled {
4141
pointer-events: none;
4242
}
43+
4344
padding: 6px 0 0;
4445

45-
.selected-list {
46-
flex: 1 0 auto;
46+
.people-picker-inner {
47+
flex: 1 1 auto;
4748
display: flex;
4849
flex-wrap: wrap;
4950
vertical-align: middle;
5051
list-style-type: none;
5152
font-style: normal;
5253
font-weight: normal;
5354
overflow: hidden;
55+
}
56+
57+
.flyout {
58+
.search-box {
59+
margin: 1px 2px 8px;
60+
61+
&.search-box-start {
62+
line-height: normal;
63+
margin-inline-start: 0px;
64+
margin-inline-end: 0px;
65+
}
66+
67+
&__input {
68+
box-sizing: border-box;
69+
border-width: 0;
70+
border-style: none;
71+
width: 100%;
72+
display: flex;
73+
flex: 1 0 auto;
74+
font-family: $font-family;
75+
position: relative;
76+
outline: none;
77+
font-style: normal;
78+
font-weight: normal;
79+
font-size: 14px;
80+
background-color: $input__background-color;
81+
color: $color;
82+
word-spacing: inherit;
83+
text-indent: inherit;
84+
letter-spacing: inherit;
85+
&::placeholder {
86+
color: $placeholder__color;
87+
}
88+
}
89+
}
90+
91+
.flyout-root {
92+
padding: 0;
93+
border-radius: 2px;
94+
min-width: 260px;
95+
overflow-y: auto;
96+
text-align: left;
97+
list-style-type: none;
98+
background-color: $dropdown__background-color;
99+
max-height: var(--mgt-flyout-set-height, unset);
100+
border-radius: 8px;
101+
li {
102+
cursor: pointer;
103+
}
54104

55-
&__options {
56-
display: contents;
105+
.people-list {
106+
list-style: none;
107+
padding: 0;
108+
.list-person {
109+
display: flex;
110+
flex-direction: row;
111+
align-items: center;
112+
padding: 12px;
113+
font-style: normal;
114+
font-weight: 600;
115+
font-size: 14px;
116+
margin: var(--file-item-margin, 4px);
117+
border-radius: 4px;
118+
&:hover {
119+
background-color: $dropdown-item__background-color--hover;
120+
}
121+
&.focused {
122+
background-color: $dropdown-item__background-color--hover;
123+
}
124+
.people-person-text-area {
125+
margin-left: 13px;
126+
flex: 1 1 0;
127+
max-height: 40px;
128+
overflow: hidden;
129+
color: $color;
130+
131+
.people-person-text {
132+
font-size: 14px;
133+
font-weight: normal;
134+
margin: 0;
135+
padding: 0;
136+
&.highlight-search-text {
137+
font-weight: bold;
138+
}
139+
}
140+
}
141+
}
142+
}
57143
}
144+
}
145+
146+
.selected-list {
147+
list-style: none;
148+
padding: 0;
149+
display: contents;
58150

59151
&__person-wrapper {
60152
display: flex;
@@ -143,93 +235,6 @@ mgt-people-picker .root {
143235
@extend .selected-list__person-wrapper-highlighted;
144236
background-color: #006cbe;
145237
}
146-
147-
.flyout {
148-
.search-box {
149-
margin: 1px 2px 8px;
150-
151-
&.search-box-start {
152-
line-height: normal;
153-
margin-inline-start: 0px;
154-
margin-inline-end: 0px;
155-
}
156-
157-
&__input {
158-
box-sizing: border-box;
159-
border-width: 0;
160-
border-style: none;
161-
width: 100%;
162-
display: flex;
163-
flex: 1 0 auto;
164-
font-family: $font-family;
165-
position: relative;
166-
outline: none;
167-
font-style: normal;
168-
font-weight: normal;
169-
font-size: 14px;
170-
background-color: $input__background-color;
171-
color: $color;
172-
word-spacing: inherit;
173-
text-indent: inherit;
174-
letter-spacing: inherit;
175-
&::placeholder {
176-
color: $placeholder__color;
177-
}
178-
}
179-
}
180-
181-
.flyout-root {
182-
padding: 0;
183-
border-radius: 2px;
184-
min-width: 260px;
185-
overflow-y: auto;
186-
text-align: left;
187-
list-style-type: none;
188-
background-color: $dropdown__background-color;
189-
max-height: var(--mgt-flyout-set-height, unset);
190-
border-radius: 8px;
191-
li {
192-
cursor: pointer;
193-
}
194-
195-
.people-list {
196-
.list-person {
197-
display: flex;
198-
flex-direction: row;
199-
align-items: center;
200-
padding: 12px;
201-
font-style: normal;
202-
font-weight: 600;
203-
font-size: 14px;
204-
margin: var(--file-item-margin, 4px);
205-
border-radius: 4px;
206-
&:hover {
207-
background-color: $dropdown-item__background-color--hover;
208-
}
209-
&.focused {
210-
background-color: $dropdown-item__background-color--hover;
211-
}
212-
.people-person-text-area {
213-
margin-left: 13px;
214-
flex: 1 1 0;
215-
max-height: 40px;
216-
overflow: hidden;
217-
color: $color;
218-
219-
.people-person-text {
220-
font-size: 14px;
221-
font-weight: normal;
222-
margin: 0;
223-
padding: 0;
224-
&.highlight-search-text {
225-
font-weight: bold;
226-
}
227-
}
228-
}
229-
}
230-
}
231-
}
232-
}
233238
}
234239
}
235240

0 commit comments

Comments
 (0)