mirror of
https://github.com/ruvnet/RuVector.git
synced 2026-05-26 16:04:02 +00:00
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>
40 lines
1.2 KiB
TypeScript
40 lines
1.2 KiB
TypeScript
import { PropsWithChildren, createContext, useContext } from 'react'
|
|
import { proxy, useSnapshot } from 'valtio'
|
|
|
|
import { useConstant } from 'common'
|
|
|
|
export function createDatabaseSettingsState() {
|
|
const state = proxy({
|
|
usePoolerConnection: true,
|
|
setUsePoolerConnection: (value: boolean) => {
|
|
state.usePoolerConnection = value
|
|
},
|
|
showPoolingModeHelper: false,
|
|
setShowPoolingModeHelper: (value: boolean) => {
|
|
state.showPoolingModeHelper = value
|
|
},
|
|
})
|
|
|
|
return state
|
|
}
|
|
|
|
export type DatabaseSettingsState = ReturnType<typeof createDatabaseSettingsState>
|
|
|
|
export const DatabaseSettingsStateContext = createContext<DatabaseSettingsState>(
|
|
createDatabaseSettingsState()
|
|
)
|
|
|
|
export const DatabaseSettingsStateContextProvider = ({ children }: PropsWithChildren) => {
|
|
const state = useConstant(createDatabaseSettingsState)
|
|
|
|
return (
|
|
<DatabaseSettingsStateContext.Provider value={state}>
|
|
{children}
|
|
</DatabaseSettingsStateContext.Provider>
|
|
)
|
|
}
|
|
|
|
export function useDatabaseSettingsStateSnapshot(options?: Parameters<typeof useSnapshot>[1]) {
|
|
const state = useContext(DatabaseSettingsStateContext)
|
|
return useSnapshot(state, options)
|
|
}
|