@squonk/data-manager-client 1.0.34 → 1.1.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accounting/accounting.d.ts +1 -1
- package/admin/admin.d.ts +1 -1
- package/application/application.d.ts +1 -1
- package/{custom-instance-e0197500.d.ts → custom-instance-5c7b6971.d.ts} +2 -0
- package/dataset/dataset.d.ts +1 -1
- package/exchange-rate/exchange-rate.d.ts +1 -1
- package/file/file.d.ts +1 -1
- package/index.cjs.map +1 -1
- package/index.d.ts +1 -1
- package/index.js.map +1 -1
- package/instance/instance.d.ts +1 -1
- package/job/job.d.ts +1 -1
- package/metadata/metadata.d.ts +1 -1
- package/package.json +1 -1
- package/project/project.cjs +33 -1
- package/project/project.cjs.map +1 -1
- package/project/project.d.ts +42 -2
- package/project/project.js +33 -1
- package/project/project.js.map +1 -1
- package/src/data-manager-api.schemas.ts +2 -0
- package/src/project/project.ts +108 -0
- package/task/task.d.ts +1 -1
- package/type/type.d.ts +1 -1
- package/user/user.d.ts +1 -1
package/project/project.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { bI as customInstance, b2 as ProjectsGetResponse, bJ as ErrorType, bE as DmError, _ as ProjectPostBodyBody, b3 as ProjectPostResponse, ar as ProjectDetail, $ as ProjectPatchBodyBody, al as TaskIdentity, q as GetProjectFileParams, a0 as ProjectFilePutBodyBody, p as GetProjectFileWithTokenParams } from '../custom-instance-
|
|
1
|
+
import { bI as customInstance, b2 as ProjectsGetResponse, bJ as ErrorType, bE as DmError, _ as ProjectPostBodyBody, b3 as ProjectPostResponse, ar as ProjectDetail, $ as ProjectPatchBodyBody, al as TaskIdentity, q as GetProjectFileParams, a0 as ProjectFilePutBodyBody, p as GetProjectFileWithTokenParams } from '../custom-instance-5c7b6971.js';
|
|
2
2
|
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
3
3
|
import { UseQueryOptions, QueryKey, UseQueryResult, UseMutationOptions } from '@tanstack/react-query';
|
|
4
4
|
import 'axios';
|
|
@@ -140,6 +140,46 @@ declare const useRemoveEditorFromProject: <TError = ErrorType<DmError>, TContext
|
|
|
140
140
|
projectId: string;
|
|
141
141
|
userId: string;
|
|
142
142
|
}, TContext>;
|
|
143
|
+
/**
|
|
144
|
+
* Adds a user to a project as an `observer`. Observers can view Projects and download files but they cannot modify Project data or run Applications or Jobs.
|
|
145
|
+
|
|
146
|
+
You must be an `editor` or the `owner` of the Project to add Observers
|
|
147
|
+
|
|
148
|
+
* @summary Add a Project Observer
|
|
149
|
+
*/
|
|
150
|
+
declare const addObserverToProject: (projectId: string, userId: string, options?: SecondParameter<typeof customInstance>) => Promise<void>;
|
|
151
|
+
declare type AddObserverToProjectMutationResult = NonNullable<Awaited<ReturnType<typeof addObserverToProject>>>;
|
|
152
|
+
declare type AddObserverToProjectMutationError = ErrorType<DmError>;
|
|
153
|
+
declare const useAddObserverToProject: <TError = ErrorType<DmError>, TContext = unknown>(options?: {
|
|
154
|
+
mutation?: UseMutationOptions<void, TError, {
|
|
155
|
+
projectId: string;
|
|
156
|
+
userId: string;
|
|
157
|
+
}, TContext> | undefined;
|
|
158
|
+
request?: SecondParameter<typeof customInstance>;
|
|
159
|
+
} | undefined) => _tanstack_react_query.UseMutationResult<void, TError, {
|
|
160
|
+
projectId: string;
|
|
161
|
+
userId: string;
|
|
162
|
+
}, TContext>;
|
|
163
|
+
/**
|
|
164
|
+
* Deletes a project `observer`.
|
|
165
|
+
|
|
166
|
+
You must be an `editor` or the `owner` of the Project to remove Observers
|
|
167
|
+
|
|
168
|
+
* @summary Delete a Project Observer
|
|
169
|
+
*/
|
|
170
|
+
declare const removeObserverFromProject: (projectId: string, userId: string, options?: SecondParameter<typeof customInstance>) => Promise<void>;
|
|
171
|
+
declare type RemoveObserverFromProjectMutationResult = NonNullable<Awaited<ReturnType<typeof removeObserverFromProject>>>;
|
|
172
|
+
declare type RemoveObserverFromProjectMutationError = ErrorType<DmError>;
|
|
173
|
+
declare const useRemoveObserverFromProject: <TError = ErrorType<DmError>, TContext = unknown>(options?: {
|
|
174
|
+
mutation?: UseMutationOptions<void, TError, {
|
|
175
|
+
projectId: string;
|
|
176
|
+
userId: string;
|
|
177
|
+
}, TContext> | undefined;
|
|
178
|
+
request?: SecondParameter<typeof customInstance>;
|
|
179
|
+
} | undefined) => _tanstack_react_query.UseMutationResult<void, TError, {
|
|
180
|
+
projectId: string;
|
|
181
|
+
userId: string;
|
|
182
|
+
}, TContext>;
|
|
143
183
|
/**
|
|
144
184
|
* Gets a file from the project, with an optional path. This method should be used to get arbitrary files from the Project's file system (typically **unmanaged** files).
|
|
145
185
|
|
|
@@ -200,4 +240,4 @@ declare const useGetProjectFileWithToken: <TData = void, TError = ErrorType<DmEr
|
|
|
200
240
|
queryKey: QueryKey;
|
|
201
241
|
};
|
|
202
242
|
|
|
203
|
-
export { AddEditorToProjectMutationError, AddEditorToProjectMutationResult, AddFileToProjectMutationBody, AddFileToProjectMutationError, AddFileToProjectMutationResult, CreateProjectMutationBody, CreateProjectMutationError, CreateProjectMutationResult, DeleteProjectMutationError, DeleteProjectMutationResult, GetProjectFileQueryError, GetProjectFileQueryResult, GetProjectFileWithTokenQueryError, GetProjectFileWithTokenQueryResult, GetProjectQueryError, GetProjectQueryResult, GetProjectsQueryError, GetProjectsQueryResult, PatchProjectMutationBody, PatchProjectMutationError, PatchProjectMutationResult, RemoveEditorFromProjectMutationError, RemoveEditorFromProjectMutationResult, addEditorToProject, addFileToProject, createProject, deleteProject, getGetProjectFileQueryKey, getGetProjectFileWithTokenQueryKey, getGetProjectQueryKey, getGetProjectsQueryKey, getProject, getProjectFile, getProjectFileWithToken, getProjects, patchProject, removeEditorFromProject, useAddEditorToProject, useAddFileToProject, useCreateProject, useDeleteProject, useGetProject, useGetProjectFile, useGetProjectFileWithToken, useGetProjects, usePatchProject, useRemoveEditorFromProject };
|
|
243
|
+
export { AddEditorToProjectMutationError, AddEditorToProjectMutationResult, AddFileToProjectMutationBody, AddFileToProjectMutationError, AddFileToProjectMutationResult, AddObserverToProjectMutationError, AddObserverToProjectMutationResult, CreateProjectMutationBody, CreateProjectMutationError, CreateProjectMutationResult, DeleteProjectMutationError, DeleteProjectMutationResult, GetProjectFileQueryError, GetProjectFileQueryResult, GetProjectFileWithTokenQueryError, GetProjectFileWithTokenQueryResult, GetProjectQueryError, GetProjectQueryResult, GetProjectsQueryError, GetProjectsQueryResult, PatchProjectMutationBody, PatchProjectMutationError, PatchProjectMutationResult, RemoveEditorFromProjectMutationError, RemoveEditorFromProjectMutationResult, RemoveObserverFromProjectMutationError, RemoveObserverFromProjectMutationResult, addEditorToProject, addFileToProject, addObserverToProject, createProject, deleteProject, getGetProjectFileQueryKey, getGetProjectFileWithTokenQueryKey, getGetProjectQueryKey, getGetProjectsQueryKey, getProject, getProjectFile, getProjectFileWithToken, getProjects, patchProject, removeEditorFromProject, removeObserverFromProject, useAddEditorToProject, useAddFileToProject, useAddObserverToProject, useCreateProject, useDeleteProject, useGetProject, useGetProjectFile, useGetProjectFileWithToken, useGetProjects, usePatchProject, useRemoveEditorFromProject, useRemoveObserverFromProject };
|
package/project/project.js
CHANGED
|
@@ -137,6 +137,34 @@ var useRemoveEditorFromProject = (options) => {
|
|
|
137
137
|
};
|
|
138
138
|
return useMutation(mutationFn, mutationOptions);
|
|
139
139
|
};
|
|
140
|
+
var addObserverToProject = (projectId, userId, options) => {
|
|
141
|
+
return customInstance(
|
|
142
|
+
{ url: `/project/${projectId}/observer/${userId}`, method: "put" },
|
|
143
|
+
options
|
|
144
|
+
);
|
|
145
|
+
};
|
|
146
|
+
var useAddObserverToProject = (options) => {
|
|
147
|
+
const { mutation: mutationOptions, request: requestOptions } = options ?? {};
|
|
148
|
+
const mutationFn = (props) => {
|
|
149
|
+
const { projectId, userId } = props ?? {};
|
|
150
|
+
return addObserverToProject(projectId, userId, requestOptions);
|
|
151
|
+
};
|
|
152
|
+
return useMutation(mutationFn, mutationOptions);
|
|
153
|
+
};
|
|
154
|
+
var removeObserverFromProject = (projectId, userId, options) => {
|
|
155
|
+
return customInstance(
|
|
156
|
+
{ url: `/project/${projectId}/observer/${userId}`, method: "delete" },
|
|
157
|
+
options
|
|
158
|
+
);
|
|
159
|
+
};
|
|
160
|
+
var useRemoveObserverFromProject = (options) => {
|
|
161
|
+
const { mutation: mutationOptions, request: requestOptions } = options ?? {};
|
|
162
|
+
const mutationFn = (props) => {
|
|
163
|
+
const { projectId, userId } = props ?? {};
|
|
164
|
+
return removeObserverFromProject(projectId, userId, requestOptions);
|
|
165
|
+
};
|
|
166
|
+
return useMutation(mutationFn, mutationOptions);
|
|
167
|
+
};
|
|
140
168
|
var getProjectFile = (projectId, params, options, signal) => {
|
|
141
169
|
return customInstance(
|
|
142
170
|
{ url: `/project/${projectId}/file`, method: "get", params, signal },
|
|
@@ -210,6 +238,7 @@ var useGetProjectFileWithToken = (projectId, params, options) => {
|
|
|
210
238
|
export {
|
|
211
239
|
addEditorToProject,
|
|
212
240
|
addFileToProject,
|
|
241
|
+
addObserverToProject,
|
|
213
242
|
createProject,
|
|
214
243
|
deleteProject,
|
|
215
244
|
getGetProjectFileQueryKey,
|
|
@@ -222,8 +251,10 @@ export {
|
|
|
222
251
|
getProjects,
|
|
223
252
|
patchProject,
|
|
224
253
|
removeEditorFromProject,
|
|
254
|
+
removeObserverFromProject,
|
|
225
255
|
useAddEditorToProject,
|
|
226
256
|
useAddFileToProject,
|
|
257
|
+
useAddObserverToProject,
|
|
227
258
|
useCreateProject,
|
|
228
259
|
useDeleteProject,
|
|
229
260
|
useGetProject,
|
|
@@ -231,6 +262,7 @@ export {
|
|
|
231
262
|
useGetProjectFileWithToken,
|
|
232
263
|
useGetProjects,
|
|
233
264
|
usePatchProject,
|
|
234
|
-
useRemoveEditorFromProject
|
|
265
|
+
useRemoveEditorFromProject,
|
|
266
|
+
useRemoveObserverFromProject
|
|
235
267
|
};
|
|
236
268
|
//# sourceMappingURL=project.js.map
|
package/project/project.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/project/project.ts"],"sourcesContent":["/**\n * Generated by orval v6.10.0 🍺\n * Do not edit manually.\n * Dataset Manager API\n * The Dataset Manager API service.\n\nA service that allows *registered* users to make **Datasets** and associated **Metadata** available to **Applications** and **Jobs** using **Projects** and **Files**.\n\n * OpenAPI spec version: 1.0\n */\nimport { useQuery, useMutation } from \"@tanstack/react-query\";\nimport type {\n UseQueryOptions,\n UseMutationOptions,\n QueryFunction,\n MutationFunction,\n UseQueryResult,\n QueryKey,\n} from \"@tanstack/react-query\";\nimport type {\n ProjectsGetResponse,\n DmError,\n ProjectPostResponse,\n ProjectPostBodyBody,\n ProjectGetResponse,\n ProjectPatchBodyBody,\n ProjectDeleteResponse,\n GetProjectFileParams,\n ProjectFilePutBodyBody,\n GetProjectFileWithTokenParams,\n} from \"../data-manager-api.schemas\";\nimport { customInstance } from \".././custom-instance\";\nimport type { ErrorType } from \".././custom-instance\";\n\n// eslint-disable-next-line\ntype SecondParameter<T extends (...args: any) => any> = T extends (\n config: any,\n args: infer P\n) => any\n ? P\n : never;\n\n/**\n * Get a list of all Projects available to you.\n\n * @summary Get all Pojects available to you\n */\nexport const getProjects = (\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<ProjectsGetResponse>(\n { url: `/project`, method: \"get\", signal },\n options\n );\n};\n\nexport const getGetProjectsQueryKey = () => [`/project`];\n\nexport type GetProjectsQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProjects>>\n>;\nexport type GetProjectsQueryError = ErrorType<void | DmError>;\n\nexport const useGetProjects = <\n TData = Awaited<ReturnType<typeof getProjects>>,\n TError = ErrorType<void | DmError>\n>(options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProjects>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n}): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getGetProjectsQueryKey();\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof getProjects>>> = ({\n signal,\n }) => getProjects(requestOptions, signal);\n\n const query = useQuery<\n Awaited<ReturnType<typeof getProjects>>,\n TError,\n TData\n >(queryKey, queryFn, queryOptions) as UseQueryResult<TData, TError> & {\n queryKey: QueryKey;\n };\n\n query.queryKey = queryKey;\n\n return query;\n};\n\n/**\n * Creates a new Project, assigning and returning a unique **ID**. A persistent volume is created in the cluster and assigned to your Project. It's here you can add **Datasets** as **Files** and run **Applications** and **Jobs**.\n\nTo create a Project you will need an uncommitted Project product.\n\nAs the project `owner` (creator) you are also automatically an `editor` of the project and can add other users as editors so that they can also manipulate the project. An `editor` of a project can also delete it.\n\nThe name you give the project is free-form text (can contain spaces etc.). The name you use must be unique amongst all the projects you create.\n\n * @summary Create a new Project\n */\nexport const createProject = (\n projectPostBodyBody: ProjectPostBodyBody,\n options?: SecondParameter<typeof customInstance>\n) => {\n const formData = new FormData();\n formData.append(\"name\", projectPostBodyBody.name);\n if (projectPostBodyBody.private !== undefined) {\n formData.append(\"private\", projectPostBodyBody.private.toString());\n }\n formData.append(\"tier_product_id\", projectPostBodyBody.tier_product_id);\n\n return customInstance<ProjectPostResponse>(\n {\n url: `/project`,\n method: \"post\",\n headers: { \"Content-Type\": \"multipart/form-data\" },\n data: formData,\n },\n options\n );\n};\n\nexport type CreateProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof createProject>>\n>;\nexport type CreateProjectMutationBody = ProjectPostBodyBody;\nexport type CreateProjectMutationError = ErrorType<DmError | void>;\n\nexport const useCreateProject = <\n TError = ErrorType<DmError | void>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof createProject>>,\n TError,\n { data: ProjectPostBodyBody },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof createProject>>,\n { data: ProjectPostBodyBody }\n > = (props) => {\n const { data } = props ?? {};\n\n return createProject(data, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof createProject>>,\n TError,\n { data: ProjectPostBodyBody },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Gets the details of a project that is available to you.\n\n * @summary Get a Project\n */\nexport const getProject = (\n projectId: string,\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<ProjectGetResponse>(\n { url: `/project/${projectId}`, method: \"get\", signal },\n options\n );\n};\n\nexport const getGetProjectQueryKey = (projectId: string) => [\n `/project/${projectId}`,\n];\n\nexport type GetProjectQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProject>>\n>;\nexport type GetProjectQueryError = ErrorType<void | DmError>;\n\nexport const useGetProject = <\n TData = Awaited<ReturnType<typeof getProject>>,\n TError = ErrorType<void | DmError>\n>(\n projectId: string,\n options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProject>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n }\n): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getGetProjectQueryKey(projectId);\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof getProject>>> = ({\n signal,\n }) => getProject(projectId, requestOptions, signal);\n\n const query = useQuery<Awaited<ReturnType<typeof getProject>>, TError, TData>(\n queryKey,\n queryFn,\n { enabled: !!projectId, ...queryOptions }\n ) as UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n query.queryKey = queryKey;\n\n return query;\n};\n\n/**\n * Used to update some adjustable parameters of a Project, i.e. to make it Private or make it Public. What can be adjusted will depend on the purchased product\n\n * @summary Adjust an existing Project\n */\nexport const patchProject = (\n projectId: string,\n projectPatchBodyBody: ProjectPatchBodyBody,\n options?: SecondParameter<typeof customInstance>\n) => {\n const formData = new FormData();\n if (projectPatchBodyBody.private !== undefined) {\n formData.append(\"private\", projectPatchBodyBody.private.toString());\n }\n if (projectPatchBodyBody.name !== undefined) {\n formData.append(\"name\", projectPatchBodyBody.name);\n }\n\n return customInstance<void>(\n {\n url: `/project/${projectId}`,\n method: \"patch\",\n headers: { \"Content-Type\": \"multipart/form-data\" },\n data: formData,\n },\n options\n );\n};\n\nexport type PatchProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof patchProject>>\n>;\nexport type PatchProjectMutationBody = ProjectPatchBodyBody;\nexport type PatchProjectMutationError = ErrorType<DmError>;\n\nexport const usePatchProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof patchProject>>,\n TError,\n { projectId: string; data: ProjectPatchBodyBody },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof patchProject>>,\n { projectId: string; data: ProjectPatchBodyBody }\n > = (props) => {\n const { projectId, data } = props ?? {};\n\n return patchProject(projectId, data, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof patchProject>>,\n TError,\n { projectId: string; data: ProjectPatchBodyBody },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Deletes an existing project.\n\nYou must be an `editor` or the `owner` of the project.\n\nOnce deleted all **Files**, working directories and material in the project will also be removed\n\n * @summary Delete a Project\n */\nexport const deleteProject = (\n projectId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<ProjectDeleteResponse>(\n { url: `/project/${projectId}`, method: \"delete\" },\n options\n );\n};\n\nexport type DeleteProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteProject>>\n>;\n\nexport type DeleteProjectMutationError = ErrorType<void | DmError>;\n\nexport const useDeleteProject = <\n TError = ErrorType<void | DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof deleteProject>>,\n TError,\n { projectId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof deleteProject>>,\n { projectId: string }\n > = (props) => {\n const { projectId } = props ?? {};\n\n return deleteProject(projectId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof deleteProject>>,\n TError,\n { projectId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Adds a user to a project as an `editor`. Editors can add and remove datasets in a project and delete the project.\n\nAn `editor` of a project is not automatically an `editor` of any datasets the project contains.\n\nYou must be an `editor` or the `owner` of the project\n\n * @summary Add a Project Editor\n */\nexport const addEditorToProject = (\n projectId: string,\n userId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/editor/${userId}`, method: \"put\" },\n options\n );\n};\n\nexport type AddEditorToProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof addEditorToProject>>\n>;\n\nexport type AddEditorToProjectMutationError = ErrorType<DmError>;\n\nexport const useAddEditorToProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof addEditorToProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof addEditorToProject>>,\n { projectId: string; userId: string }\n > = (props) => {\n const { projectId, userId } = props ?? {};\n\n return addEditorToProject(projectId, userId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof addEditorToProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Deletes a project `editor`. The editor can be you but you cannot delete the last `editor`\n\nA project must always have one `editor` so you will not be able to delete the last editor of a project.\n\nYou must be an `editor` or the `owner` of the project\n\n * @summary Delete a Project Editor\n */\nexport const removeEditorFromProject = (\n projectId: string,\n userId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/editor/${userId}`, method: \"delete\" },\n options\n );\n};\n\nexport type RemoveEditorFromProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof removeEditorFromProject>>\n>;\n\nexport type RemoveEditorFromProjectMutationError = ErrorType<DmError>;\n\nexport const useRemoveEditorFromProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof removeEditorFromProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof removeEditorFromProject>>,\n { projectId: string; userId: string }\n > = (props) => {\n const { projectId, userId } = props ?? {};\n\n return removeEditorFromProject(projectId, userId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof removeEditorFromProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Gets a file from the project, with an optional path. This method should be used to get arbitrary files from the Project's file system (typically **unmanaged** files).\n\nFor **managed** files you should consider using the `/file/{file_id}` endpoint.\n\nYou must be an `editor` or the `owner` of the project if the project is private\n\n * @summary Download a Project file\n */\nexport const getProjectFile = (\n projectId: string,\n params: GetProjectFileParams,\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/file`, method: \"get\", params, signal },\n options\n );\n};\n\nexport const getGetProjectFileQueryKey = (\n projectId: string,\n params: GetProjectFileParams\n) => [`/project/${projectId}/file`, ...(params ? [params] : [])];\n\nexport type GetProjectFileQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProjectFile>>\n>;\nexport type GetProjectFileQueryError = ErrorType<DmError>;\n\nexport const useGetProjectFile = <\n TData = Awaited<ReturnType<typeof getProjectFile>>,\n TError = ErrorType<DmError>\n>(\n projectId: string,\n params: GetProjectFileParams,\n options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProjectFile>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n }\n): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey =\n queryOptions?.queryKey ?? getGetProjectFileQueryKey(projectId, params);\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof getProjectFile>>> = ({\n signal,\n }) => getProjectFile(projectId, params, requestOptions, signal);\n\n const query = useQuery<\n Awaited<ReturnType<typeof getProjectFile>>,\n TError,\n TData\n >(queryKey, queryFn, {\n enabled: !!projectId,\n ...queryOptions,\n }) as UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n query.queryKey = queryKey;\n\n return query;\n};\n\n/**\n * The user provides an external file for upload to the Project using an optional Path. The path is created if it does not exist.\n\nYou must be an `editor` or the `owner` of the project\n\n * @summary Upload a file into a Project\n */\nexport const addFileToProject = (\n projectId: string,\n projectFilePutBodyBody: ProjectFilePutBodyBody,\n options?: SecondParameter<typeof customInstance>\n) => {\n const formData = new FormData();\n formData.append(\"file\", projectFilePutBodyBody.file);\n if (projectFilePutBodyBody.as_filename !== undefined) {\n formData.append(\"as_filename\", projectFilePutBodyBody.as_filename);\n }\n if (projectFilePutBodyBody.path !== undefined) {\n formData.append(\"path\", projectFilePutBodyBody.path);\n }\n\n return customInstance<void>(\n {\n url: `/project/${projectId}/file`,\n method: \"put\",\n headers: { \"Content-Type\": \"multipart/form-data\" },\n data: formData,\n },\n options\n );\n};\n\nexport type AddFileToProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof addFileToProject>>\n>;\nexport type AddFileToProjectMutationBody = ProjectFilePutBodyBody;\nexport type AddFileToProjectMutationError = ErrorType<DmError>;\n\nexport const useAddFileToProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof addFileToProject>>,\n TError,\n { projectId: string; data: ProjectFilePutBodyBody },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof addFileToProject>>,\n { projectId: string; data: ProjectFilePutBodyBody }\n > = (props) => {\n const { projectId, data } = props ?? {};\n\n return addFileToProject(projectId, data, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof addFileToProject>>,\n TError,\n { projectId: string; data: ProjectFilePutBodyBody },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Gets a file from the project, with an optional path. This method should be used to get arbitrary files from the Project's file system (typically **unmanaged** files).\n\nFor **managed** files you should consider using the `/file/{file_id}` endpoint.\n\nAs there is no security You must provide a valid token. The token must be a token valid for the project, usually generated when an Instance has been launched in the Project. If the token is not valid ou will receive a `403` error\n\n * @summary Download a Project file using a Token\n */\nexport const getProjectFileWithToken = (\n projectId: string,\n params: GetProjectFileWithTokenParams,\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<void>(\n {\n url: `/project/${projectId}/file-with-token`,\n method: \"get\",\n params,\n signal,\n },\n options\n );\n};\n\nexport const getGetProjectFileWithTokenQueryKey = (\n projectId: string,\n params: GetProjectFileWithTokenParams\n) => [`/project/${projectId}/file-with-token`, ...(params ? [params] : [])];\n\nexport type GetProjectFileWithTokenQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProjectFileWithToken>>\n>;\nexport type GetProjectFileWithTokenQueryError = ErrorType<DmError>;\n\nexport const useGetProjectFileWithToken = <\n TData = Awaited<ReturnType<typeof getProjectFileWithToken>>,\n TError = ErrorType<DmError>\n>(\n projectId: string,\n params: GetProjectFileWithTokenParams,\n options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProjectFileWithToken>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n }\n): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey =\n queryOptions?.queryKey ??\n getGetProjectFileWithTokenQueryKey(projectId, params);\n\n const queryFn: QueryFunction<\n Awaited<ReturnType<typeof getProjectFileWithToken>>\n > = ({ signal }) =>\n getProjectFileWithToken(projectId, params, requestOptions, signal);\n\n const query = useQuery<\n Awaited<ReturnType<typeof getProjectFileWithToken>>,\n TError,\n TData\n >(queryKey, queryFn, {\n enabled: !!projectId,\n ...queryOptions,\n }) as UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n query.queryKey = queryKey;\n\n return query;\n};\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/project/project.ts"],"sourcesContent":["/**\n * Generated by orval v6.10.0 🍺\n * Do not edit manually.\n * Dataset Manager API\n * The Dataset Manager API service.\n\nA service that allows *registered* users to make **Datasets** and associated **Metadata** available to **Applications** and **Jobs** using **Projects** and **Files**.\n\n * OpenAPI spec version: 1.0\n */\nimport { useQuery, useMutation } from \"@tanstack/react-query\";\nimport type {\n UseQueryOptions,\n UseMutationOptions,\n QueryFunction,\n MutationFunction,\n UseQueryResult,\n QueryKey,\n} from \"@tanstack/react-query\";\nimport type {\n ProjectsGetResponse,\n DmError,\n ProjectPostResponse,\n ProjectPostBodyBody,\n ProjectGetResponse,\n ProjectPatchBodyBody,\n ProjectDeleteResponse,\n GetProjectFileParams,\n ProjectFilePutBodyBody,\n GetProjectFileWithTokenParams,\n} from \"../data-manager-api.schemas\";\nimport { customInstance } from \".././custom-instance\";\nimport type { ErrorType } from \".././custom-instance\";\n\n// eslint-disable-next-line\ntype SecondParameter<T extends (...args: any) => any> = T extends (\n config: any,\n args: infer P\n) => any\n ? P\n : never;\n\n/**\n * Get a list of all Projects available to you.\n\n * @summary Get all Pojects available to you\n */\nexport const getProjects = (\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<ProjectsGetResponse>(\n { url: `/project`, method: \"get\", signal },\n options\n );\n};\n\nexport const getGetProjectsQueryKey = () => [`/project`];\n\nexport type GetProjectsQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProjects>>\n>;\nexport type GetProjectsQueryError = ErrorType<void | DmError>;\n\nexport const useGetProjects = <\n TData = Awaited<ReturnType<typeof getProjects>>,\n TError = ErrorType<void | DmError>\n>(options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProjects>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n}): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getGetProjectsQueryKey();\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof getProjects>>> = ({\n signal,\n }) => getProjects(requestOptions, signal);\n\n const query = useQuery<\n Awaited<ReturnType<typeof getProjects>>,\n TError,\n TData\n >(queryKey, queryFn, queryOptions) as UseQueryResult<TData, TError> & {\n queryKey: QueryKey;\n };\n\n query.queryKey = queryKey;\n\n return query;\n};\n\n/**\n * Creates a new Project, assigning and returning a unique **ID**. A persistent volume is created in the cluster and assigned to your Project. It's here you can add **Datasets** as **Files** and run **Applications** and **Jobs**.\n\nTo create a Project you will need an uncommitted Project product.\n\nAs the project `owner` (creator) you are also automatically an `editor` of the project and can add other users as editors so that they can also manipulate the project. An `editor` of a project can also delete it.\n\nThe name you give the project is free-form text (can contain spaces etc.). The name you use must be unique amongst all the projects you create.\n\n * @summary Create a new Project\n */\nexport const createProject = (\n projectPostBodyBody: ProjectPostBodyBody,\n options?: SecondParameter<typeof customInstance>\n) => {\n const formData = new FormData();\n formData.append(\"name\", projectPostBodyBody.name);\n if (projectPostBodyBody.private !== undefined) {\n formData.append(\"private\", projectPostBodyBody.private.toString());\n }\n formData.append(\"tier_product_id\", projectPostBodyBody.tier_product_id);\n\n return customInstance<ProjectPostResponse>(\n {\n url: `/project`,\n method: \"post\",\n headers: { \"Content-Type\": \"multipart/form-data\" },\n data: formData,\n },\n options\n );\n};\n\nexport type CreateProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof createProject>>\n>;\nexport type CreateProjectMutationBody = ProjectPostBodyBody;\nexport type CreateProjectMutationError = ErrorType<DmError | void>;\n\nexport const useCreateProject = <\n TError = ErrorType<DmError | void>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof createProject>>,\n TError,\n { data: ProjectPostBodyBody },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof createProject>>,\n { data: ProjectPostBodyBody }\n > = (props) => {\n const { data } = props ?? {};\n\n return createProject(data, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof createProject>>,\n TError,\n { data: ProjectPostBodyBody },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Gets the details of a project that is available to you.\n\n * @summary Get a Project\n */\nexport const getProject = (\n projectId: string,\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<ProjectGetResponse>(\n { url: `/project/${projectId}`, method: \"get\", signal },\n options\n );\n};\n\nexport const getGetProjectQueryKey = (projectId: string) => [\n `/project/${projectId}`,\n];\n\nexport type GetProjectQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProject>>\n>;\nexport type GetProjectQueryError = ErrorType<void | DmError>;\n\nexport const useGetProject = <\n TData = Awaited<ReturnType<typeof getProject>>,\n TError = ErrorType<void | DmError>\n>(\n projectId: string,\n options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProject>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n }\n): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getGetProjectQueryKey(projectId);\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof getProject>>> = ({\n signal,\n }) => getProject(projectId, requestOptions, signal);\n\n const query = useQuery<Awaited<ReturnType<typeof getProject>>, TError, TData>(\n queryKey,\n queryFn,\n { enabled: !!projectId, ...queryOptions }\n ) as UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n query.queryKey = queryKey;\n\n return query;\n};\n\n/**\n * Used to update some adjustable parameters of a Project, i.e. to make it Private or make it Public. What can be adjusted will depend on the purchased product\n\n * @summary Adjust an existing Project\n */\nexport const patchProject = (\n projectId: string,\n projectPatchBodyBody: ProjectPatchBodyBody,\n options?: SecondParameter<typeof customInstance>\n) => {\n const formData = new FormData();\n if (projectPatchBodyBody.private !== undefined) {\n formData.append(\"private\", projectPatchBodyBody.private.toString());\n }\n if (projectPatchBodyBody.name !== undefined) {\n formData.append(\"name\", projectPatchBodyBody.name);\n }\n\n return customInstance<void>(\n {\n url: `/project/${projectId}`,\n method: \"patch\",\n headers: { \"Content-Type\": \"multipart/form-data\" },\n data: formData,\n },\n options\n );\n};\n\nexport type PatchProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof patchProject>>\n>;\nexport type PatchProjectMutationBody = ProjectPatchBodyBody;\nexport type PatchProjectMutationError = ErrorType<DmError>;\n\nexport const usePatchProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof patchProject>>,\n TError,\n { projectId: string; data: ProjectPatchBodyBody },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof patchProject>>,\n { projectId: string; data: ProjectPatchBodyBody }\n > = (props) => {\n const { projectId, data } = props ?? {};\n\n return patchProject(projectId, data, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof patchProject>>,\n TError,\n { projectId: string; data: ProjectPatchBodyBody },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Deletes an existing project.\n\nYou must be an `editor` or the `owner` of the project.\n\nOnce deleted all **Files**, working directories and material in the project will also be removed\n\n * @summary Delete a Project\n */\nexport const deleteProject = (\n projectId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<ProjectDeleteResponse>(\n { url: `/project/${projectId}`, method: \"delete\" },\n options\n );\n};\n\nexport type DeleteProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof deleteProject>>\n>;\n\nexport type DeleteProjectMutationError = ErrorType<void | DmError>;\n\nexport const useDeleteProject = <\n TError = ErrorType<void | DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof deleteProject>>,\n TError,\n { projectId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof deleteProject>>,\n { projectId: string }\n > = (props) => {\n const { projectId } = props ?? {};\n\n return deleteProject(projectId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof deleteProject>>,\n TError,\n { projectId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Adds a user to a project as an `editor`. Editors can add and remove datasets in a project and delete the project.\n\nAn `editor` of a project is not automatically an `editor` of any datasets the project contains.\n\nYou must be an `editor` or the `owner` of the project\n\n * @summary Add a Project Editor\n */\nexport const addEditorToProject = (\n projectId: string,\n userId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/editor/${userId}`, method: \"put\" },\n options\n );\n};\n\nexport type AddEditorToProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof addEditorToProject>>\n>;\n\nexport type AddEditorToProjectMutationError = ErrorType<DmError>;\n\nexport const useAddEditorToProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof addEditorToProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof addEditorToProject>>,\n { projectId: string; userId: string }\n > = (props) => {\n const { projectId, userId } = props ?? {};\n\n return addEditorToProject(projectId, userId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof addEditorToProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Deletes a project `editor`. The editor can be you but you cannot delete the last `editor`\n\nA project must always have one `editor` so you will not be able to delete the last editor of a project.\n\nYou must be an `editor` or the `owner` of the project\n\n * @summary Delete a Project Editor\n */\nexport const removeEditorFromProject = (\n projectId: string,\n userId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/editor/${userId}`, method: \"delete\" },\n options\n );\n};\n\nexport type RemoveEditorFromProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof removeEditorFromProject>>\n>;\n\nexport type RemoveEditorFromProjectMutationError = ErrorType<DmError>;\n\nexport const useRemoveEditorFromProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof removeEditorFromProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof removeEditorFromProject>>,\n { projectId: string; userId: string }\n > = (props) => {\n const { projectId, userId } = props ?? {};\n\n return removeEditorFromProject(projectId, userId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof removeEditorFromProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Adds a user to a project as an `observer`. Observers can view Projects and download files but they cannot modify Project data or run Applications or Jobs.\n\nYou must be an `editor` or the `owner` of the Project to add Observers\n\n * @summary Add a Project Observer\n */\nexport const addObserverToProject = (\n projectId: string,\n userId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/observer/${userId}`, method: \"put\" },\n options\n );\n};\n\nexport type AddObserverToProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof addObserverToProject>>\n>;\n\nexport type AddObserverToProjectMutationError = ErrorType<DmError>;\n\nexport const useAddObserverToProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof addObserverToProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof addObserverToProject>>,\n { projectId: string; userId: string }\n > = (props) => {\n const { projectId, userId } = props ?? {};\n\n return addObserverToProject(projectId, userId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof addObserverToProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Deletes a project `observer`.\n\nYou must be an `editor` or the `owner` of the Project to remove Observers\n\n * @summary Delete a Project Observer\n */\nexport const removeObserverFromProject = (\n projectId: string,\n userId: string,\n options?: SecondParameter<typeof customInstance>\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/observer/${userId}`, method: \"delete\" },\n options\n );\n};\n\nexport type RemoveObserverFromProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof removeObserverFromProject>>\n>;\n\nexport type RemoveObserverFromProjectMutationError = ErrorType<DmError>;\n\nexport const useRemoveObserverFromProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof removeObserverFromProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof removeObserverFromProject>>,\n { projectId: string; userId: string }\n > = (props) => {\n const { projectId, userId } = props ?? {};\n\n return removeObserverFromProject(projectId, userId, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof removeObserverFromProject>>,\n TError,\n { projectId: string; userId: string },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Gets a file from the project, with an optional path. This method should be used to get arbitrary files from the Project's file system (typically **unmanaged** files).\n\nFor **managed** files you should consider using the `/file/{file_id}` endpoint.\n\nYou must be an `editor` or the `owner` of the project if the project is private\n\n * @summary Download a Project file\n */\nexport const getProjectFile = (\n projectId: string,\n params: GetProjectFileParams,\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<void>(\n { url: `/project/${projectId}/file`, method: \"get\", params, signal },\n options\n );\n};\n\nexport const getGetProjectFileQueryKey = (\n projectId: string,\n params: GetProjectFileParams\n) => [`/project/${projectId}/file`, ...(params ? [params] : [])];\n\nexport type GetProjectFileQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProjectFile>>\n>;\nexport type GetProjectFileQueryError = ErrorType<DmError>;\n\nexport const useGetProjectFile = <\n TData = Awaited<ReturnType<typeof getProjectFile>>,\n TError = ErrorType<DmError>\n>(\n projectId: string,\n params: GetProjectFileParams,\n options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProjectFile>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n }\n): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey =\n queryOptions?.queryKey ?? getGetProjectFileQueryKey(projectId, params);\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof getProjectFile>>> = ({\n signal,\n }) => getProjectFile(projectId, params, requestOptions, signal);\n\n const query = useQuery<\n Awaited<ReturnType<typeof getProjectFile>>,\n TError,\n TData\n >(queryKey, queryFn, {\n enabled: !!projectId,\n ...queryOptions,\n }) as UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n query.queryKey = queryKey;\n\n return query;\n};\n\n/**\n * The user provides an external file for upload to the Project using an optional Path. The path is created if it does not exist.\n\nYou must be an `editor` or the `owner` of the project\n\n * @summary Upload a file into a Project\n */\nexport const addFileToProject = (\n projectId: string,\n projectFilePutBodyBody: ProjectFilePutBodyBody,\n options?: SecondParameter<typeof customInstance>\n) => {\n const formData = new FormData();\n formData.append(\"file\", projectFilePutBodyBody.file);\n if (projectFilePutBodyBody.as_filename !== undefined) {\n formData.append(\"as_filename\", projectFilePutBodyBody.as_filename);\n }\n if (projectFilePutBodyBody.path !== undefined) {\n formData.append(\"path\", projectFilePutBodyBody.path);\n }\n\n return customInstance<void>(\n {\n url: `/project/${projectId}/file`,\n method: \"put\",\n headers: { \"Content-Type\": \"multipart/form-data\" },\n data: formData,\n },\n options\n );\n};\n\nexport type AddFileToProjectMutationResult = NonNullable<\n Awaited<ReturnType<typeof addFileToProject>>\n>;\nexport type AddFileToProjectMutationBody = ProjectFilePutBodyBody;\nexport type AddFileToProjectMutationError = ErrorType<DmError>;\n\nexport const useAddFileToProject = <\n TError = ErrorType<DmError>,\n TContext = unknown\n>(options?: {\n mutation?: UseMutationOptions<\n Awaited<ReturnType<typeof addFileToProject>>,\n TError,\n { projectId: string; data: ProjectFilePutBodyBody },\n TContext\n >;\n request?: SecondParameter<typeof customInstance>;\n}) => {\n const { mutation: mutationOptions, request: requestOptions } = options ?? {};\n\n const mutationFn: MutationFunction<\n Awaited<ReturnType<typeof addFileToProject>>,\n { projectId: string; data: ProjectFilePutBodyBody }\n > = (props) => {\n const { projectId, data } = props ?? {};\n\n return addFileToProject(projectId, data, requestOptions);\n };\n\n return useMutation<\n Awaited<ReturnType<typeof addFileToProject>>,\n TError,\n { projectId: string; data: ProjectFilePutBodyBody },\n TContext\n >(mutationFn, mutationOptions);\n};\n/**\n * Gets a file from the project, with an optional path. This method should be used to get arbitrary files from the Project's file system (typically **unmanaged** files).\n\nFor **managed** files you should consider using the `/file/{file_id}` endpoint.\n\nAs there is no security You must provide a valid token. The token must be a token valid for the project, usually generated when an Instance has been launched in the Project. If the token is not valid ou will receive a `403` error\n\n * @summary Download a Project file using a Token\n */\nexport const getProjectFileWithToken = (\n projectId: string,\n params: GetProjectFileWithTokenParams,\n options?: SecondParameter<typeof customInstance>,\n signal?: AbortSignal\n) => {\n return customInstance<void>(\n {\n url: `/project/${projectId}/file-with-token`,\n method: \"get\",\n params,\n signal,\n },\n options\n );\n};\n\nexport const getGetProjectFileWithTokenQueryKey = (\n projectId: string,\n params: GetProjectFileWithTokenParams\n) => [`/project/${projectId}/file-with-token`, ...(params ? [params] : [])];\n\nexport type GetProjectFileWithTokenQueryResult = NonNullable<\n Awaited<ReturnType<typeof getProjectFileWithToken>>\n>;\nexport type GetProjectFileWithTokenQueryError = ErrorType<DmError>;\n\nexport const useGetProjectFileWithToken = <\n TData = Awaited<ReturnType<typeof getProjectFileWithToken>>,\n TError = ErrorType<DmError>\n>(\n projectId: string,\n params: GetProjectFileWithTokenParams,\n options?: {\n query?: UseQueryOptions<\n Awaited<ReturnType<typeof getProjectFileWithToken>>,\n TError,\n TData\n >;\n request?: SecondParameter<typeof customInstance>;\n }\n): UseQueryResult<TData, TError> & { queryKey: QueryKey } => {\n const { query: queryOptions, request: requestOptions } = options ?? {};\n\n const queryKey =\n queryOptions?.queryKey ??\n getGetProjectFileWithTokenQueryKey(projectId, params);\n\n const queryFn: QueryFunction<\n Awaited<ReturnType<typeof getProjectFileWithToken>>\n > = ({ signal }) =>\n getProjectFileWithToken(projectId, params, requestOptions, signal);\n\n const query = useQuery<\n Awaited<ReturnType<typeof getProjectFileWithToken>>,\n TError,\n TData\n >(queryKey, queryFn, {\n enabled: !!projectId,\n ...queryOptions,\n }) as UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n query.queryKey = queryKey;\n\n return query;\n};\n"],"mappings":"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","names":[]}
|
|
@@ -773,6 +773,8 @@ export interface ProjectDetail {
|
|
|
773
773
|
private: boolean;
|
|
774
774
|
/** An editor (user_id) of the project */
|
|
775
775
|
editors: string[];
|
|
776
|
+
/** An observer (user_id) of the project */
|
|
777
|
+
observers: string[];
|
|
776
778
|
/** The approximate size of all the files in the Project volume. This is updated regularly throughout the day and its current size may differ from what is reported here. The smallest billable unit is 1GiB (1,073,741,824 bytes). Therefore a project that contains 32KiB of files is recorded as 1GiB in size */
|
|
777
779
|
size: number;
|
|
778
780
|
/** A list of managed files in the Project
|
package/src/project/project.ts
CHANGED
|
@@ -453,6 +453,114 @@ export const useRemoveEditorFromProject = <
|
|
|
453
453
|
TContext
|
|
454
454
|
>(mutationFn, mutationOptions);
|
|
455
455
|
};
|
|
456
|
+
/**
|
|
457
|
+
* Adds a user to a project as an `observer`. Observers can view Projects and download files but they cannot modify Project data or run Applications or Jobs.
|
|
458
|
+
|
|
459
|
+
You must be an `editor` or the `owner` of the Project to add Observers
|
|
460
|
+
|
|
461
|
+
* @summary Add a Project Observer
|
|
462
|
+
*/
|
|
463
|
+
export const addObserverToProject = (
|
|
464
|
+
projectId: string,
|
|
465
|
+
userId: string,
|
|
466
|
+
options?: SecondParameter<typeof customInstance>
|
|
467
|
+
) => {
|
|
468
|
+
return customInstance<void>(
|
|
469
|
+
{ url: `/project/${projectId}/observer/${userId}`, method: "put" },
|
|
470
|
+
options
|
|
471
|
+
);
|
|
472
|
+
};
|
|
473
|
+
|
|
474
|
+
export type AddObserverToProjectMutationResult = NonNullable<
|
|
475
|
+
Awaited<ReturnType<typeof addObserverToProject>>
|
|
476
|
+
>;
|
|
477
|
+
|
|
478
|
+
export type AddObserverToProjectMutationError = ErrorType<DmError>;
|
|
479
|
+
|
|
480
|
+
export const useAddObserverToProject = <
|
|
481
|
+
TError = ErrorType<DmError>,
|
|
482
|
+
TContext = unknown
|
|
483
|
+
>(options?: {
|
|
484
|
+
mutation?: UseMutationOptions<
|
|
485
|
+
Awaited<ReturnType<typeof addObserverToProject>>,
|
|
486
|
+
TError,
|
|
487
|
+
{ projectId: string; userId: string },
|
|
488
|
+
TContext
|
|
489
|
+
>;
|
|
490
|
+
request?: SecondParameter<typeof customInstance>;
|
|
491
|
+
}) => {
|
|
492
|
+
const { mutation: mutationOptions, request: requestOptions } = options ?? {};
|
|
493
|
+
|
|
494
|
+
const mutationFn: MutationFunction<
|
|
495
|
+
Awaited<ReturnType<typeof addObserverToProject>>,
|
|
496
|
+
{ projectId: string; userId: string }
|
|
497
|
+
> = (props) => {
|
|
498
|
+
const { projectId, userId } = props ?? {};
|
|
499
|
+
|
|
500
|
+
return addObserverToProject(projectId, userId, requestOptions);
|
|
501
|
+
};
|
|
502
|
+
|
|
503
|
+
return useMutation<
|
|
504
|
+
Awaited<ReturnType<typeof addObserverToProject>>,
|
|
505
|
+
TError,
|
|
506
|
+
{ projectId: string; userId: string },
|
|
507
|
+
TContext
|
|
508
|
+
>(mutationFn, mutationOptions);
|
|
509
|
+
};
|
|
510
|
+
/**
|
|
511
|
+
* Deletes a project `observer`.
|
|
512
|
+
|
|
513
|
+
You must be an `editor` or the `owner` of the Project to remove Observers
|
|
514
|
+
|
|
515
|
+
* @summary Delete a Project Observer
|
|
516
|
+
*/
|
|
517
|
+
export const removeObserverFromProject = (
|
|
518
|
+
projectId: string,
|
|
519
|
+
userId: string,
|
|
520
|
+
options?: SecondParameter<typeof customInstance>
|
|
521
|
+
) => {
|
|
522
|
+
return customInstance<void>(
|
|
523
|
+
{ url: `/project/${projectId}/observer/${userId}`, method: "delete" },
|
|
524
|
+
options
|
|
525
|
+
);
|
|
526
|
+
};
|
|
527
|
+
|
|
528
|
+
export type RemoveObserverFromProjectMutationResult = NonNullable<
|
|
529
|
+
Awaited<ReturnType<typeof removeObserverFromProject>>
|
|
530
|
+
>;
|
|
531
|
+
|
|
532
|
+
export type RemoveObserverFromProjectMutationError = ErrorType<DmError>;
|
|
533
|
+
|
|
534
|
+
export const useRemoveObserverFromProject = <
|
|
535
|
+
TError = ErrorType<DmError>,
|
|
536
|
+
TContext = unknown
|
|
537
|
+
>(options?: {
|
|
538
|
+
mutation?: UseMutationOptions<
|
|
539
|
+
Awaited<ReturnType<typeof removeObserverFromProject>>,
|
|
540
|
+
TError,
|
|
541
|
+
{ projectId: string; userId: string },
|
|
542
|
+
TContext
|
|
543
|
+
>;
|
|
544
|
+
request?: SecondParameter<typeof customInstance>;
|
|
545
|
+
}) => {
|
|
546
|
+
const { mutation: mutationOptions, request: requestOptions } = options ?? {};
|
|
547
|
+
|
|
548
|
+
const mutationFn: MutationFunction<
|
|
549
|
+
Awaited<ReturnType<typeof removeObserverFromProject>>,
|
|
550
|
+
{ projectId: string; userId: string }
|
|
551
|
+
> = (props) => {
|
|
552
|
+
const { projectId, userId } = props ?? {};
|
|
553
|
+
|
|
554
|
+
return removeObserverFromProject(projectId, userId, requestOptions);
|
|
555
|
+
};
|
|
556
|
+
|
|
557
|
+
return useMutation<
|
|
558
|
+
Awaited<ReturnType<typeof removeObserverFromProject>>,
|
|
559
|
+
TError,
|
|
560
|
+
{ projectId: string; userId: string },
|
|
561
|
+
TContext
|
|
562
|
+
>(mutationFn, mutationOptions);
|
|
563
|
+
};
|
|
456
564
|
/**
|
|
457
565
|
* Gets a file from the project, with an optional path. This method should be used to get arbitrary files from the Project's file system (typically **unmanaged** files).
|
|
458
566
|
|
package/task/task.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
2
2
|
import { UseQueryOptions, QueryKey, UseQueryResult, UseMutationOptions } from '@tanstack/react-query';
|
|
3
|
-
import { k as GetTasksParams, bI as customInstance, a_ as TasksGetResponse, bJ as ErrorType, bE as DmError, j as GetTaskParams, b0 as TaskGetResponse } from '../custom-instance-
|
|
3
|
+
import { k as GetTasksParams, bI as customInstance, a_ as TasksGetResponse, bJ as ErrorType, bE as DmError, j as GetTaskParams, b0 as TaskGetResponse } from '../custom-instance-5c7b6971.js';
|
|
4
4
|
import 'axios';
|
|
5
5
|
|
|
6
6
|
declare type SecondParameter<T extends (...args: any) => any> = T extends (config: any, args: infer P) => any ? P : never;
|
package/type/type.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UseQueryOptions, QueryKey, UseQueryResult } from '@tanstack/react-query';
|
|
2
|
-
import { bI as customInstance, aZ as TypesGetResponse, bJ as ErrorType, bE as DmError } from '../custom-instance-
|
|
2
|
+
import { bI as customInstance, aZ as TypesGetResponse, bJ as ErrorType, bE as DmError } from '../custom-instance-5c7b6971.js';
|
|
3
3
|
import 'axios';
|
|
4
4
|
|
|
5
5
|
declare type SecondParameter<T extends (...args: any) => any> = T extends (config: any, args: infer P) => any ? P : never;
|
package/user/user.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
2
2
|
import { UseQueryOptions, QueryKey, UseQueryResult, UseMutationOptions } from '@tanstack/react-query';
|
|
3
|
-
import { bI as customInstance, aW as UsersGetResponse, bJ as ErrorType, bE as DmError, a as GetUserAccountParams, ad as UserAccountDetail, Z as UserAccountPatchBodyBody, G as GetUserApiLogParams, aX as UserApiLogGetResponse } from '../custom-instance-
|
|
3
|
+
import { bI as customInstance, aW as UsersGetResponse, bJ as ErrorType, bE as DmError, a as GetUserAccountParams, ad as UserAccountDetail, Z as UserAccountPatchBodyBody, G as GetUserApiLogParams, aX as UserApiLogGetResponse } from '../custom-instance-5c7b6971.js';
|
|
4
4
|
import 'axios';
|
|
5
5
|
|
|
6
6
|
declare type SecondParameter<T extends (...args: any) => any> = T extends (config: any, args: infer P) => any ? P : never;
|