Skip to content

feat: react-hook-form field array for provider muxes #345

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 12 commits into
base: main
Choose a base branch
from
1 change: 1 addition & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
"@dnd-kit/core": "^6.3.1",
"@dnd-kit/sortable": "^10.0.0",
"@hey-api/client-fetch": "^0.7.1",
"@hookform/resolvers": "^4.1.0",
"@jsonforms/core": "^3.5.1",
"@jsonforms/react": "^3.5.1",
"@jsonforms/vanilla-renderers": "^3.5.1",
Expand Down
159 changes: 159 additions & 0 deletions src/api/generated/@tanstack/react-query.gen.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ import {
v1RecoverWorkspace,
v1HardDeleteWorkspace,
v1GetWorkspaceAlerts,
v1GetWorkspaceAlertsSummary,
v1GetWorkspaceMessages,
v1GetWorkspaceCustomInstructions,
v1SetWorkspaceCustomInstructions,
Expand All @@ -33,6 +34,11 @@ import {
v1StreamSse,
v1VersionCheck,
v1GetWorkspaceTokenUsage,
v1ListPersonas,
v1CreatePersona,
v1GetPersona,
v1UpdatePersona,
v1DeletePersona,
} from '../sdk.gen'
import type {
V1ListProviderEndpointsData,
Expand Down Expand Up @@ -69,6 +75,7 @@ import type {
V1HardDeleteWorkspaceError,
V1HardDeleteWorkspaceResponse,
V1GetWorkspaceAlertsData,
V1GetWorkspaceAlertsSummaryData,
V1GetWorkspaceMessagesData,
V1GetWorkspaceCustomInstructionsData,
V1SetWorkspaceCustomInstructionsData,
Expand All @@ -83,6 +90,16 @@ import type {
V1SetWorkspaceMuxesResponse,
V1ListWorkspacesByProviderData,
V1GetWorkspaceTokenUsageData,
V1CreatePersonaData,
V1CreatePersonaError,
V1CreatePersonaResponse,
V1GetPersonaData,
V1UpdatePersonaData,
V1UpdatePersonaError,
V1UpdatePersonaResponse,
V1DeletePersonaData,
V1DeletePersonaError,
V1DeletePersonaResponse,
} from '../types.gen'

type QueryKey<TOptions extends OptionsLegacyParser> = [
Expand Down Expand Up @@ -588,6 +605,27 @@ export const v1GetWorkspaceAlertsOptions = (
})
}

export const v1GetWorkspaceAlertsSummaryQueryKey = (
options: OptionsLegacyParser<V1GetWorkspaceAlertsSummaryData>
) => [createQueryKey('v1GetWorkspaceAlertsSummary', options)]

export const v1GetWorkspaceAlertsSummaryOptions = (
options: OptionsLegacyParser<V1GetWorkspaceAlertsSummaryData>
) => {
return queryOptions({
queryFn: async ({ queryKey, signal }) => {
const { data } = await v1GetWorkspaceAlertsSummary({
...options,
...queryKey[0],
signal,
throwOnError: true,
})
return data
},
queryKey: v1GetWorkspaceAlertsSummaryQueryKey(options),
})
}

export const v1GetWorkspaceMessagesQueryKey = (
options: OptionsLegacyParser<V1GetWorkspaceMessagesData>
) => [createQueryKey('v1GetWorkspaceMessages', options)]
Expand Down Expand Up @@ -792,3 +830,124 @@ export const v1GetWorkspaceTokenUsageOptions = (
queryKey: v1GetWorkspaceTokenUsageQueryKey(options),
})
}

export const v1ListPersonasQueryKey = (options?: OptionsLegacyParser) => [
createQueryKey('v1ListPersonas', options),
]

export const v1ListPersonasOptions = (options?: OptionsLegacyParser) => {
return queryOptions({
queryFn: async ({ queryKey, signal }) => {
const { data } = await v1ListPersonas({
...options,
...queryKey[0],
signal,
throwOnError: true,
})
return data
},
queryKey: v1ListPersonasQueryKey(options),
})
}

export const v1CreatePersonaQueryKey = (
options: OptionsLegacyParser<V1CreatePersonaData>
) => [createQueryKey('v1CreatePersona', options)]

export const v1CreatePersonaOptions = (
options: OptionsLegacyParser<V1CreatePersonaData>
) => {
return queryOptions({
queryFn: async ({ queryKey, signal }) => {
const { data } = await v1CreatePersona({
...options,
...queryKey[0],
signal,
throwOnError: true,
})
return data
},
queryKey: v1CreatePersonaQueryKey(options),
})
}

export const v1CreatePersonaMutation = (
options?: Partial<OptionsLegacyParser<V1CreatePersonaData>>
) => {
const mutationOptions: UseMutationOptions<
V1CreatePersonaResponse,
V1CreatePersonaError,
OptionsLegacyParser<V1CreatePersonaData>
> = {
mutationFn: async (localOptions) => {
const { data } = await v1CreatePersona({
...options,
...localOptions,
throwOnError: true,
})
return data
},
}
return mutationOptions
}

export const v1GetPersonaQueryKey = (
options: OptionsLegacyParser<V1GetPersonaData>
) => [createQueryKey('v1GetPersona', options)]

export const v1GetPersonaOptions = (
options: OptionsLegacyParser<V1GetPersonaData>
) => {
return queryOptions({
queryFn: async ({ queryKey, signal }) => {
const { data } = await v1GetPersona({
...options,
...queryKey[0],
signal,
throwOnError: true,
})
return data
},
queryKey: v1GetPersonaQueryKey(options),
})
}

export const v1UpdatePersonaMutation = (
options?: Partial<OptionsLegacyParser<V1UpdatePersonaData>>
) => {
const mutationOptions: UseMutationOptions<
V1UpdatePersonaResponse,
V1UpdatePersonaError,
OptionsLegacyParser<V1UpdatePersonaData>
> = {
mutationFn: async (localOptions) => {
const { data } = await v1UpdatePersona({
...options,
...localOptions,
throwOnError: true,
})
return data
},
}
return mutationOptions
}

export const v1DeletePersonaMutation = (
options?: Partial<OptionsLegacyParser<V1DeletePersonaData>>
) => {
const mutationOptions: UseMutationOptions<
V1DeletePersonaResponse,
V1DeletePersonaError,
OptionsLegacyParser<V1DeletePersonaData>
> = {
mutationFn: async (localOptions) => {
const { data } = await v1DeletePersona({
...options,
...localOptions,
throwOnError: true,
})
return data
},
}
return mutationOptions
}
121 changes: 121 additions & 0 deletions src/api/generated/sdk.gen.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@ import type {
V1GetWorkspaceAlertsData,
V1GetWorkspaceAlertsError,
V1GetWorkspaceAlertsResponse,
V1GetWorkspaceAlertsSummaryData,
V1GetWorkspaceAlertsSummaryError,
V1GetWorkspaceAlertsSummaryResponse,
V1GetWorkspaceMessagesData,
V1GetWorkspaceMessagesError,
V1GetWorkspaceMessagesResponse,
Expand Down Expand Up @@ -86,6 +89,20 @@ import type {
V1GetWorkspaceTokenUsageData,
V1GetWorkspaceTokenUsageError,
V1GetWorkspaceTokenUsageResponse,
V1ListPersonasError,
V1ListPersonasResponse,
V1CreatePersonaData,
V1CreatePersonaError,
V1CreatePersonaResponse,
V1GetPersonaData,
V1GetPersonaError,
V1GetPersonaResponse,
V1UpdatePersonaData,
V1UpdatePersonaError,
V1UpdatePersonaResponse,
V1DeletePersonaData,
V1DeletePersonaError,
V1DeletePersonaResponse,
} from './types.gen'

export const client = createClient(createConfig())
Expand Down Expand Up @@ -417,6 +434,25 @@ export const v1GetWorkspaceAlerts = <ThrowOnError extends boolean = false>(
})
}

/**
* Get Workspace Alerts Summary
* Get alert summary for a workspace.
*/
export const v1GetWorkspaceAlertsSummary = <
ThrowOnError extends boolean = false,
>(
options: OptionsLegacyParser<V1GetWorkspaceAlertsSummaryData, ThrowOnError>
) => {
return (options?.client ?? client).get<
V1GetWorkspaceAlertsSummaryResponse,
V1GetWorkspaceAlertsSummaryError,
ThrowOnError
>({
...options,
url: '/api/v1/workspaces/{workspace_name}/alerts-summary',
})
}

/**
* Get Workspace Messages
* Get messages for a workspace.
Expand Down Expand Up @@ -603,3 +639,88 @@ export const v1GetWorkspaceTokenUsage = <ThrowOnError extends boolean = false>(
url: '/api/v1/workspaces/{workspace_name}/token-usage',
})
}

/**
* List Personas
* List all personas.
*/
export const v1ListPersonas = <ThrowOnError extends boolean = false>(
options?: OptionsLegacyParser<unknown, ThrowOnError>
) => {
return (options?.client ?? client).get<
V1ListPersonasResponse,
V1ListPersonasError,
ThrowOnError
>({
...options,
url: '/api/v1/personas',
})
}

/**
* Create Persona
* Create a new persona.
*/
export const v1CreatePersona = <ThrowOnError extends boolean = false>(
options: OptionsLegacyParser<V1CreatePersonaData, ThrowOnError>
) => {
return (options?.client ?? client).post<
V1CreatePersonaResponse,
V1CreatePersonaError,
ThrowOnError
>({
...options,
url: '/api/v1/personas',
})
}

/**
* Get Persona
* Get a persona by name.
*/
export const v1GetPersona = <ThrowOnError extends boolean = false>(
options: OptionsLegacyParser<V1GetPersonaData, ThrowOnError>
) => {
return (options?.client ?? client).get<
V1GetPersonaResponse,
V1GetPersonaError,
ThrowOnError
>({
...options,
url: '/api/v1/personas/{persona_name}',
})
}

/**
* Update Persona
* Update an existing persona.
*/
export const v1UpdatePersona = <ThrowOnError extends boolean = false>(
options: OptionsLegacyParser<V1UpdatePersonaData, ThrowOnError>
) => {
return (options?.client ?? client).put<
V1UpdatePersonaResponse,
V1UpdatePersonaError,
ThrowOnError
>({
...options,
url: '/api/v1/personas/{persona_name}',
})
}

/**
* Delete Persona
* Delete a persona.
*/
export const v1DeletePersona = <ThrowOnError extends boolean = false>(
options: OptionsLegacyParser<V1DeletePersonaData, ThrowOnError>
) => {
return (options?.client ?? client).delete<
V1DeletePersonaResponse,
V1DeletePersonaError,
ThrowOnError
>({
...options,
url: '/api/v1/personas/{persona_name}',
})
}
Loading