ruvector/studio/pages/integrations/github/authorize.tsx
rUv 814f595995 feat(studio): Add complete RuVector Studio application
Major additions:
- Complete Next.js studio application with 1600+ components
- Docker support (Dockerfile.combined, docker-compose.yml)
- GCP deployment documentation and benchmarks
- SQL benchmark scripts for performance testing
- Sentry integration for monitoring
- Comprehensive test suite and mocks

Studio features:
- Dashboard and admin interfaces
- Data visualization components
- Authentication and user management
- API integration with RuVector backend
- Static data and public assets

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-06 23:04:48 +00:00

34 lines
978 B
TypeScript

import { useEffect } from 'react'
import { useParams } from 'common'
import { useGitHubAuthorizationCreateMutation } from 'data/integrations/github-authorization-create-mutation'
const GitHubIntegrationAuthorize = () => {
const { code, state, setup_action } = useParams()
const { mutate, isSuccess, isError, isPending } = useGitHubAuthorizationCreateMutation({
onSuccess() {
window.close()
},
})
useEffect(() => {
if (code && state) {
mutate({ code, state })
} else if (setup_action === 'install') {
window.close()
}
}, [code, state, mutate, setup_action])
return (
<div className="h-screen flex flex-col justify-center items-center gap-4">
<h2>Completing GitHub Authorization...</h2>
{isSuccess && <p>You can now close this window.</p>}
{isPending && <p>Authorizing...</p>}
{isError && <p>Unable to authorize. Please try again.</p>}
</div>
)
}
export default GitHubIntegrationAuthorize