1
1
import { useClerk } from '@clerk/shared/react' ;
2
2
3
3
import { useSignUpContext } from '../../contexts' ;
4
- import { Icon , localizationKeys } from '../../customizables' ;
4
+ import { Button , Flex , Icon , localizationKeys } from '../../customizables' ;
5
5
import { Card , Header } from '../../elements' ;
6
6
import { useCardState } from '../../elements/contexts' ;
7
+ import { useSupportEmail } from '../../hooks/useSupportEmail' ;
7
8
import { Block } from '../../icons' ;
9
+
8
10
export const SignUpRestrictedAccess = ( ) => {
9
11
const clerk = useClerk ( ) ;
10
12
const card = useCardState ( ) ;
11
13
const { signInUrl } = useSignUpContext ( ) ;
14
+ const supportEmail = useSupportEmail ( ) ;
15
+
16
+ const handleEmailSupport = ( ) => {
17
+ window . location . href = `mailto:${ supportEmail } ` ;
18
+ } ;
12
19
13
20
return (
14
21
< Card . Root >
@@ -18,22 +25,36 @@ export const SignUpRestrictedAccess = () => {
18
25
icon = { Block }
19
26
sx = { t => ( {
20
27
margin : 'auto' ,
21
- width : t . sizes . $12 ,
22
- height : t . sizes . $12 ,
28
+ width : t . sizes . $10 ,
29
+ height : t . sizes . $10 ,
23
30
} ) }
24
31
/>
25
32
< Header . Title localizationKey = { localizationKeys ( 'signUp.restrictedAccess.title' ) } />
26
33
< Header . Subtitle localizationKey = { localizationKeys ( 'signUp.restrictedAccess.subtitle' ) } />
27
34
</ Header . Root >
28
35
< Card . Alert > { card . error } </ Card . Alert >
36
+ { supportEmail && (
37
+ < Flex
38
+ direction = 'col'
39
+ gap = { 4 }
40
+ >
41
+ < Button
42
+ localizationKey = { localizationKeys ( 'signUp.restrictedAccess.blockButton__emailSupport' ) }
43
+ onClick = { handleEmailSupport }
44
+ hasArrow
45
+ />
46
+ </ Flex >
47
+ ) }
48
+ </ Card . Content >
49
+ < Card . Footer >
29
50
< Card . Action elementId = 'signUp' >
51
+ < Card . ActionText localizationKey = { localizationKeys ( 'signUp.restrictedAccess.actionText' ) } />
30
52
< Card . ActionLink
31
53
localizationKey = { localizationKeys ( 'signUp.restrictedAccess.actionLink' ) }
32
54
to = { clerk . buildUrlWithAuth ( signInUrl ) }
33
55
/>
34
56
</ Card . Action >
35
- </ Card . Content >
36
- < Card . Footer />
57
+ </ Card . Footer >
37
58
</ Card . Root >
38
59
) ;
39
60
} ;
0 commit comments