/* tslint:disable */ /* eslint-disable */ /** * Fabric API * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { GetTask200Response, ListTasksOrderParameter, ListTasksTaskMembersParameterInner, Task, TaskCreation, TaskListResponse, TaskPriority, TaskUpdate, } from '../models/index'; import { GetTask200ResponseFromJSON, GetTask200ResponseToJSON, ListTasksOrderParameterFromJSON, ListTasksOrderParameterToJSON, ListTasksTaskMembersParameterInnerFromJSON, ListTasksTaskMembersParameterInnerToJSON, TaskFromJSON, TaskToJSON, TaskCreationFromJSON, TaskCreationToJSON, TaskListResponseFromJSON, TaskListResponseToJSON, TaskPriorityFromJSON, TaskPriorityToJSON, TaskUpdateFromJSON, TaskUpdateToJSON, } from '../models/index'; export type CreateTaskRequest = Omit; export type DeleteTaskRequest = Omit<{ taskId: string; baseId?: string; }, 'baseId'>; export type GetTaskRequest = Omit<{ taskId: string; baseId?: string; }, 'baseId'>; export type ListTasksRequest = Omit<{ baseId?: string; limit?: number; offset?: number | null; order?: ListTasksOrderParameter; search?: string; isPrivate?: boolean; isHidden?: boolean; completed?: boolean; priority?: Array; hasDueDate?: boolean; dueAfter?: string | null; dueBefore?: string | null; taskMembers?: Array; }, 'baseId'>; export type UpdateTaskRequest = Omit; /** * */ export class TasksApi extends runtime.BaseAPI { /** * Create a new task with a title, optional description, due date, and priority. * Create task */ async createRaw(requestParameters: CreateTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/tasks`; const response = await this.request({ path: urlPath, method: 'POST', headers: headerParameters, query: queryParameters, body: TaskCreationToJSON(requestParameters), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TaskFromJSON(jsonValue)); } /** * Create a new task with a title, optional description, due date, and priority. * Create task */ async create(requestParameters: CreateTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { const response = await this.createRaw(requestParameters, initOverrides); return await response.value(); } /** * Permanently delete a task. * Delete task */ async deleteRaw(requestParameters: DeleteTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { if (requestParameters['taskId'] == null) { throw new runtime.RequiredError( 'taskId', 'Required parameter "taskId" was null or undefined when calling ().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/tasks/{taskId}`; urlPath = urlPath.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters['taskId']))); const response = await this.request({ path: urlPath, method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Permanently delete a task. * Delete task */ async delete(requestParameters: DeleteTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { await this.deleteRaw(requestParameters, initOverrides); } /** * Retrieve the full details of a task including members and reminders. * Get task */ async getRaw(requestParameters: GetTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { if (requestParameters['taskId'] == null) { throw new runtime.RequiredError( 'taskId', 'Required parameter "taskId" was null or undefined when calling ().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/tasks/{taskId}`; urlPath = urlPath.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters['taskId']))); const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => GetTask200ResponseFromJSON(jsonValue)); } /** * Retrieve the full details of a task including members and reminders. * Get task */ async get(requestParameters: GetTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { const response = await this.getRaw(requestParameters, initOverrides); return await response.value(); } /** * Retrieve a filtered and sorted list of tasks with members, reminders, and resource counts. * List tasks */ async listRaw(requestParameters: ListTasksRequest = {}, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; if (requestParameters['limit'] != null) { queryParameters['limit'] = requestParameters['limit']; } if (requestParameters['offset'] != null) { queryParameters['offset'] = requestParameters['offset']; } if (requestParameters['order'] != null) { queryParameters['order'] = requestParameters['order']; } if (requestParameters['search'] != null) { queryParameters['search'] = requestParameters['search']; } if (requestParameters['isPrivate'] != null) { queryParameters['isPrivate'] = requestParameters['isPrivate']; } if (requestParameters['isHidden'] != null) { queryParameters['isHidden'] = requestParameters['isHidden']; } if (requestParameters['completed'] != null) { queryParameters['completed'] = requestParameters['completed']; } if (requestParameters['priority'] != null) { queryParameters['priority'] = requestParameters['priority']; } if (requestParameters['hasDueDate'] != null) { queryParameters['hasDueDate'] = requestParameters['hasDueDate']; } if (requestParameters['dueAfter'] != null) { queryParameters['dueAfter'] = requestParameters['dueAfter']; } if (requestParameters['dueBefore'] != null) { queryParameters['dueBefore'] = requestParameters['dueBefore']; } if (requestParameters['taskMembers'] != null) { queryParameters['taskMembers'] = requestParameters['taskMembers']; } const headerParameters: runtime.HTTPHeaders = {}; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/tasks`; const response = await this.request({ path: urlPath, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => TaskListResponseFromJSON(jsonValue)); } /** * Retrieve a filtered and sorted list of tasks with members, reminders, and resource counts. * List tasks */ async list(requestParameters: ListTasksRequest = {}, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { const response = await this.listRaw(requestParameters, initOverrides); return await response.value(); } /** * Update task properties such as title, description, due date, priority, or completion status. * Update task */ async updateRaw(requestParameters: UpdateTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise> { if (requestParameters['taskId'] == null) { throw new runtime.RequiredError( 'taskId', 'Required parameter "taskId" was null or undefined when calling ().' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (requestParameters['baseId'] != null) { headerParameters['X-Fabric-Base-Id'] = String(requestParameters['baseId']); } if (this.configuration && this.configuration.accessToken) { // oauth required headerParameters["Authorization"] = await this.configuration.accessToken("OAuth2", []); } if (this.configuration && this.configuration.apiKey) { headerParameters["X-Api-Key"] = await this.configuration.apiKey("X-Api-Key"); // ApiKey authentication } let urlPath = `/v2/tasks/{taskId}`; urlPath = urlPath.replace(`{${"taskId"}}`, encodeURIComponent(String(requestParameters['taskId']))); const response = await this.request({ path: urlPath, method: 'PATCH', headers: headerParameters, query: queryParameters, body: TaskUpdateToJSON(requestParameters), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Update task properties such as title, description, due date, priority, or completion status. * Update task */ async update(requestParameters: UpdateTaskRequest, initOverrides?: runtime.InitOverrides | runtime.InitOverrideFunction): Promise { await this.updateRaw(requestParameters, initOverrides); } }