1
1
import { css } from '@emotion/css' ;
2
+ import { useId } from 'react' ;
2
3
import { useFormContext } from 'react-hook-form' ;
3
4
4
5
import { GrafanaTheme2 , SelectableValue } from '@grafana/data' ;
@@ -31,6 +32,12 @@ export const LdapDrawerComponent = ({ onClose }: Props) => {
31
32
const styles = useStyles2 ( getStyles ) ;
32
33
const { register, setValue, watch } = useFormContext < LdapPayload > ( ) ;
33
34
35
+ const nameId = useId ( ) ;
36
+ const surnameId = useId ( ) ;
37
+ const usernameId = useId ( ) ;
38
+ const memberOfId = useId ( ) ;
39
+ const emailId = useId ( ) ;
40
+
34
41
const groupMappingsLabel = (
35
42
< Label
36
43
className = { styles . sectionLabel }
@@ -52,7 +59,7 @@ export const LdapDrawerComponent = ({ onClose }: Props) => {
52
59
) ;
53
60
54
61
return (
55
- < Drawer title = { t ( 'ldap-drawer.title' , 'Advanced Settings ' ) } onClose = { onClose } >
62
+ < Drawer title = { t ( 'ldap-drawer.title' , 'Advanced settings ' ) } onClose = { onClose } >
56
63
< CollapsableSection label = { t ( 'ldap-drawer.misc-section.label' , 'Misc' ) } isOpen = { true } >
57
64
< Field
58
65
label = { t ( 'ldap-drawer.misc-section.allow-sign-up.label' , 'Allow sign up' ) }
@@ -72,7 +79,7 @@ export const LdapDrawerComponent = ({ onClose }: Props) => {
72
79
>
73
80
< Input
74
81
id = "port"
75
- placeholder = { t ( 'ldap-drawer.misc-section.port.placeholder' , ' 389' ) }
82
+ placeholder = " 389"
76
83
type = "number"
77
84
{ ...register ( 'settings.config.servers.0.port' , { valueAsNumber : true } ) }
78
85
/>
@@ -86,7 +93,7 @@ export const LdapDrawerComponent = ({ onClose }: Props) => {
86
93
>
87
94
< Input
88
95
id = "timeout"
89
- placeholder = { t ( 'ldap-drawer.misc-section.timeout.placeholder' , '389' ) }
96
+ placeholder = "10"
90
97
type = "number"
91
98
{ ...register ( 'settings.config.servers.0.timeout' , { valueAsNumber : true } ) }
92
99
/>
@@ -99,20 +106,20 @@ export const LdapDrawerComponent = ({ onClose }: Props) => {
99
106
the application correctly retrieves and displays user information.
100
107
</ Trans >
101
108
</ Text >
102
- < Field htmlFor = "name" label = { t ( 'ldap-drawer.attributes-section.name.label' , 'Name' ) } >
103
- < Input id = "name" { ...register ( 'settings.config.servers.0.attributes.name' ) } />
109
+ < Field label = { t ( 'ldap-drawer.attributes-section.name.label' , 'Name' ) } >
110
+ < Input id = { nameId } { ...register ( 'settings.config.servers.0.attributes.name' ) } />
104
111
</ Field >
105
- < Field htmlFor = "surname" label = { t ( 'ldap-drawer.attributes-section.surname.label' , 'Surname' ) } >
106
- < Input id = "surname" { ...register ( 'settings.config.servers.0.attributes.surname' ) } />
112
+ < Field label = { t ( 'ldap-drawer.attributes-section.surname.label' , 'Surname' ) } >
113
+ < Input id = { surnameId } { ...register ( 'settings.config.servers.0.attributes.surname' ) } />
107
114
</ Field >
108
- < Field htmlFor = "username" label = { t ( 'ldap-drawer.attributes-section.username.label' , 'Username' ) } >
109
- < Input id = "username" { ...register ( 'settings.config.servers.0.attributes.username' ) } />
115
+ < Field label = { t ( 'ldap-drawer.attributes-section.username.label' , 'Username' ) } >
116
+ < Input id = { usernameId } { ...register ( 'settings.config.servers.0.attributes.username' ) } />
110
117
</ Field >
111
- < Field htmlFor = "member-of" label = { t ( 'ldap-drawer.attributes-section.member-of.label' , 'Member Of' ) } >
112
- < Input id = "member-of" { ...register ( 'settings.config.servers.0.attributes.member_of' ) } />
118
+ < Field label = { t ( 'ldap-drawer.attributes-section.member-of.label' , 'Member Of' ) } >
119
+ < Input id = { memberOfId } { ...register ( 'settings.config.servers.0.attributes.member_of' ) } />
113
120
</ Field >
114
- < Field htmlFor = "email" label = { t ( 'ldap-drawer.attributes-section.email.label' , 'Email' ) } >
115
- < Input id = "email" { ...register ( 'settings.config.servers.0.attributes.email' ) } />
121
+ < Field label = { t ( 'ldap-drawer.attributes-section.email.label' , 'Email' ) } >
122
+ < Input id = { emailId } { ...register ( 'settings.config.servers.0.attributes.email' ) } />
116
123
</ Field >
117
124
</ CollapsableSection >
118
125
< CollapsableSection label = { groupMappingsLabel } isOpen = { true } >
0 commit comments