11import { useClerk } from '@clerk/clerk-react' ;
22import * as Common from '@clerk/elements/common' ;
33import * as SignUp from '@clerk/elements/sign-up' ;
4- import { enUS } from '@clerk/localizations' ;
5- import type { ClerkOptions , EnvironmentResource } from '@clerk/types' ;
4+ import type { EnvironmentResource } from '@clerk/types' ;
65
76import { Connections } from '~/common/connections' ;
87import { EmailField } from '~/common/email-field' ;
@@ -12,14 +11,16 @@ import { OTPField } from '~/common/otp-field';
1211import { PasswordField } from '~/common/password-field' ;
1312import { PhoneNumberField } from '~/common/phone-number-field' ;
1413import { UsernameField } from '~/common/username-field' ;
14+ import { useAttributes } from '~/hooks/use-attributes' ;
15+ import { useDisplayConfig } from '~/hooks/use-display-config' ;
16+ import { useLocalizations } from '~/hooks/use-localizations' ;
1517import { Alert } from '~/primitives/alert' ;
1618import { Button } from '~/primitives/button' ;
1719import * as Card from '~/primitives/card' ;
1820import * as Icon from '~/primitives/icon' ;
1921import { LinkButton } from '~/primitives/link-button' ;
2022import { Seperator } from '~/primitives/seperator' ;
2123import { getEnabledSocialConnectionsFromEnvironment } from '~/utils/getEnabledSocialConnectionsFromEnvironment' ;
22- import { makeLocalizeable } from '~/utils/makeLocalizable' ;
2324
2425export function SignUpComponent ( ) {
2526 return (
@@ -32,20 +33,18 @@ export function SignUpComponent() {
3233function SignUpComponentLoaded ( ) {
3334 const clerk = useClerk ( ) ;
3435 // TODO: Replace `any` with proper types
35- const { t, translateError } = makeLocalizeable ( ( ( clerk as any ) ?. options as ClerkOptions ) ?. localization || enUS ) ;
3636 const enabledConnections = getEnabledSocialConnectionsFromEnvironment (
3737 ( clerk as any ) ?. __unstable__environment as EnvironmentResource ,
3838 ) ;
3939 const locationBasedCountryIso = ( clerk as any ) ?. __internal_country ;
40- const attributes = ( ( clerk as any ) ?. __unstable__environment as EnvironmentResource ) ?. userSettings . attributes ;
41- const displayConfig = ( ( clerk as any ) ?. __unstable__environment as EnvironmentResource ) ?. displayConfig ;
42- const { enabled : firstNameEnabled , required : firstNameRequired } = attributes [ 'first_name' ] ;
43- const { enabled : lastNameEnabled , required : lastNameRequired } = attributes [ 'last_name' ] ;
44- const { enabled : usernameEnabled , required : usernameRequired } = attributes [ 'username' ] ;
45- const { enabled : phoneNumberEnabled , required : phoneNumberRequired } = attributes [ 'phone_number' ] ;
46- const { enabled : emailAddressEnabled , required : emailAddressRequired } = attributes [ 'email_address' ] ;
47- const { enabled : passwordEnabled , required : passwordRequired } = attributes [ 'password' ] ;
48- const { applicationName, homeUrl, logoImageUrl } = displayConfig ;
40+ const { t, translateError } = useLocalizations ( ) ;
41+ const { enabled : firstNameEnabled , required : firstNameRequired } = useAttributes ( 'first_name' ) ;
42+ const { enabled : lastNameEnabled , required : lastNameRequired } = useAttributes ( 'last_name' ) ;
43+ const { enabled : usernameEnabled , required : usernameRequired } = useAttributes ( 'username' ) ;
44+ const { enabled : phoneNumberEnabled , required : phoneNumberRequired } = useAttributes ( 'phone_number' ) ;
45+ const { enabled : emailAddressEnabled , required : emailAddressRequired } = useAttributes ( 'email_address' ) ;
46+ const { enabled : passwordEnabled , required : passwordRequired } = useAttributes ( 'password' ) ;
47+ const { applicationName, homeUrl, logoImageUrl } = useDisplayConfig ( ) ;
4948
5049 const hasConnection = enabledConnections . length > 0 ;
5150 const hasIdentifier = emailAddressEnabled || usernameEnabled || phoneNumberEnabled ;
0 commit comments