Skip to content
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

feat: show archived workspaces and restore it #154

Merged
merged 4 commits into from
Jan 22, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions icons/FlipBackward.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
91 changes: 91 additions & 0 deletions src/api/generated/@tanstack/react-query.gen.ts
Original file line number Diff line number Diff line change
@@ -14,6 +14,9 @@ import {
v1ListActiveWorkspaces,
v1ActivateWorkspace,
v1DeleteWorkspace,
v1ListArchivedWorkspaces,
v1RecoverWorkspace,
v1HardDeleteWorkspace,
v1GetWorkspaceAlerts,
v1GetWorkspaceMessages,
v1GetWorkspaceSystemPrompt,
@@ -30,6 +33,12 @@ import type {
V1DeleteWorkspaceData,
V1DeleteWorkspaceError,
V1DeleteWorkspaceResponse,
V1RecoverWorkspaceData,
V1RecoverWorkspaceError,
V1RecoverWorkspaceResponse,
V1HardDeleteWorkspaceData,
V1HardDeleteWorkspaceError,
V1HardDeleteWorkspaceResponse,
V1GetWorkspaceAlertsData,
V1GetWorkspaceMessagesData,
V1GetWorkspaceSystemPromptData,
@@ -312,6 +321,88 @@ export const v1DeleteWorkspaceMutation = (
return mutationOptions;
};

export const v1ListArchivedWorkspacesQueryKey = (
options?: OptionsLegacyParser,
) => [createQueryKey("v1ListArchivedWorkspaces", options)];

export const v1ListArchivedWorkspacesOptions = (
options?: OptionsLegacyParser,
) => {
return queryOptions({
queryFn: async ({ queryKey, signal }) => {
const { data } = await v1ListArchivedWorkspaces({
...options,
...queryKey[0],
signal,
throwOnError: true,
});
return data;
},
queryKey: v1ListArchivedWorkspacesQueryKey(options),
});
};

export const v1RecoverWorkspaceQueryKey = (
options: OptionsLegacyParser<V1RecoverWorkspaceData>,
) => [createQueryKey("v1RecoverWorkspace", options)];

export const v1RecoverWorkspaceOptions = (
options: OptionsLegacyParser<V1RecoverWorkspaceData>,
) => {
return queryOptions({
queryFn: async ({ queryKey, signal }) => {
const { data } = await v1RecoverWorkspace({
...options,
...queryKey[0],
signal,
throwOnError: true,
});
return data;
},
queryKey: v1RecoverWorkspaceQueryKey(options),
});
};

export const v1RecoverWorkspaceMutation = (
options?: Partial<OptionsLegacyParser<V1RecoverWorkspaceData>>,
) => {
const mutationOptions: UseMutationOptions<
V1RecoverWorkspaceResponse,
V1RecoverWorkspaceError,
OptionsLegacyParser<V1RecoverWorkspaceData>
> = {
mutationFn: async (localOptions) => {
const { data } = await v1RecoverWorkspace({
...options,
...localOptions,
throwOnError: true,
});
return data;
},
};
return mutationOptions;
};

export const v1HardDeleteWorkspaceMutation = (
options?: Partial<OptionsLegacyParser<V1HardDeleteWorkspaceData>>,
) => {
const mutationOptions: UseMutationOptions<
V1HardDeleteWorkspaceResponse,
V1HardDeleteWorkspaceError,
OptionsLegacyParser<V1HardDeleteWorkspaceData>
> = {
mutationFn: async (localOptions) => {
const { data } = await v1HardDeleteWorkspace({
...options,
...localOptions,
throwOnError: true,
});
return data;
},
};
return mutationOptions;
};

export const v1GetWorkspaceAlertsQueryKey = (
options: OptionsLegacyParser<V1GetWorkspaceAlertsData>,
) => [createQueryKey("v1GetWorkspaceAlerts", options)];
59 changes: 59 additions & 0 deletions src/api/generated/sdk.gen.ts
Original file line number Diff line number Diff line change
@@ -29,6 +29,14 @@ import type {
V1DeleteWorkspaceData,
V1DeleteWorkspaceError,
V1DeleteWorkspaceResponse,
V1ListArchivedWorkspacesError,
V1ListArchivedWorkspacesResponse,
V1RecoverWorkspaceData,
V1RecoverWorkspaceError,
V1RecoverWorkspaceResponse,
V1HardDeleteWorkspaceData,
V1HardDeleteWorkspaceError,
V1HardDeleteWorkspaceResponse,
V1GetWorkspaceAlertsData,
V1GetWorkspaceAlertsError,
V1GetWorkspaceAlertsResponse,
@@ -219,6 +227,57 @@ export const v1DeleteWorkspace = <ThrowOnError extends boolean = false>(
});
};

/**
* List Archived Workspaces
* List all archived workspaces.
*/
export const v1ListArchivedWorkspaces = <ThrowOnError extends boolean = false>(
options?: OptionsLegacyParser<unknown, ThrowOnError>,
) => {
return (options?.client ?? client).get<
V1ListArchivedWorkspacesResponse,
V1ListArchivedWorkspacesError,
ThrowOnError
>({
...options,
url: "/api/v1/workspaces/archive",
});
};

/**
* Recover Workspace
* Recover an archived workspace by name.
*/
export const v1RecoverWorkspace = <ThrowOnError extends boolean = false>(
options: OptionsLegacyParser<V1RecoverWorkspaceData, ThrowOnError>,
) => {
return (options?.client ?? client).post<
V1RecoverWorkspaceResponse,
V1RecoverWorkspaceError,
ThrowOnError
>({
...options,
url: "/api/v1/workspaces/archive/{workspace_name}/recover",
});
};

/**
* Hard Delete Workspace
* Hard delete an archived workspace by name.
*/
export const v1HardDeleteWorkspace = <ThrowOnError extends boolean = false>(
options: OptionsLegacyParser<V1HardDeleteWorkspaceData, ThrowOnError>,
) => {
return (options?.client ?? client).delete<
V1HardDeleteWorkspaceResponse,
V1HardDeleteWorkspaceError,
ThrowOnError
>({
...options,
url: "/api/v1/workspaces/archive/{workspace_name}",
});
};

/**
* Get Workspace Alerts
* Get alerts for a workspace.
29 changes: 27 additions & 2 deletions src/api/generated/types.gen.ts
Original file line number Diff line number Diff line change
@@ -55,8 +55,9 @@ export type Conversation = {
conversation_timestamp: string;
};

export type CreateWorkspaceRequest = {
export type CreateOrRenameWorkspaceRequest = {
name: string;
rename_to?: string | null;
};

export type HTTPValidationError = {
@@ -119,7 +120,7 @@ export type V1ListWorkspacesResponse = ListWorkspacesResponse;
export type V1ListWorkspacesError = unknown;

export type V1CreateWorkspaceData = {
body: CreateWorkspaceRequest;
body: CreateOrRenameWorkspaceRequest;
};

export type V1CreateWorkspaceResponse = Workspace;
@@ -151,6 +152,30 @@ export type V1DeleteWorkspaceResponse = unknown;

export type V1DeleteWorkspaceError = HTTPValidationError;

export type V1ListArchivedWorkspacesResponse = ListWorkspacesResponse;

export type V1ListArchivedWorkspacesError = unknown;

export type V1RecoverWorkspaceData = {
path: {
workspace_name: string;
};
};

export type V1RecoverWorkspaceResponse = void;

export type V1RecoverWorkspaceError = HTTPValidationError;

export type V1HardDeleteWorkspaceData = {
path: {
workspace_name: string;
};
};

export type V1HardDeleteWorkspaceResponse = unknown;

export type V1HardDeleteWorkspaceError = HTTPValidationError;

export type V1GetWorkspaceAlertsData = {
path: {
workspace_name: string;
Loading
Loading