|  | @@ -47,13 +47,14 @@ const ActivateForm = () => {
 | 
	
		
			
				|  |  |    const [showSuccess, setShowSuccess] = useState(false)
 | 
	
		
			
				|  |  |    const defaultLanguage = useCallback(() => (window.navigator.language.startsWith('zh') ? languageMaps['zh-Hans'] : languageMaps.en) || languageMaps.en, [])
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  const showErrorMessage = (message: string) => {
 | 
	
		
			
				|  |  | +  const showErrorMessage = useCallback((message: string) => {
 | 
	
		
			
				|  |  |      Toast.notify({
 | 
	
		
			
				|  |  |        type: 'error',
 | 
	
		
			
				|  |  |        message,
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | -  const valid = () => {
 | 
	
		
			
				|  |  | +  }, [])
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  const valid = useCallback(() => {
 | 
	
		
			
				|  |  |      if (!name.trim()) {
 | 
	
		
			
				|  |  |        showErrorMessage(t('login.error.nameEmpty'))
 | 
	
		
			
				|  |  |        return false
 | 
	
	
		
			
				|  | @@ -66,9 +67,9 @@ const ActivateForm = () => {
 | 
	
		
			
				|  |  |        showErrorMessage(t('login.error.passwordInvalid'))
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      return true
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | +  }, [name, password, showErrorMessage, t])
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  const handleActivate = async () => {
 | 
	
		
			
				|  |  | +  const handleActivate = useCallback(async () => {
 | 
	
		
			
				|  |  |      if (!valid())
 | 
	
		
			
				|  |  |        return
 | 
	
		
			
				|  |  |      try {
 | 
	
	
		
			
				|  | @@ -84,13 +85,13 @@ const ActivateForm = () => {
 | 
	
		
			
				|  |  |            timezone,
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  | -      setLocaleOnClient(language.startsWith('en') ? 'en' : 'zh-Hans')
 | 
	
		
			
				|  |  | +      setLocaleOnClient(language.startsWith('en') ? 'en' : 'zh-Hans', false)
 | 
	
		
			
				|  |  |        setShowSuccess(true)
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |      catch {
 | 
	
		
			
				|  |  |        recheck()
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | +  }, [email, language, name, password, recheck, setLocaleOnClient, timezone, token, valid, workspaceID])
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    return (
 | 
	
		
			
				|  |  |      <div className={
 |