Skip to content

Commit f1cf215

Browse files
feat(api): update via SDK Studio (#8)
1 parent 7fcb271 commit f1cf215

File tree

7 files changed

+40
-62
lines changed

7 files changed

+40
-62
lines changed

api.md

+1-6
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,9 @@ Types:
2020
Methods:
2121

2222
- <code title="post /tasks">client.tasks.<a href="./src/resources/tasks.ts">create</a>({ ...params }) -> void</code>
23+
- <code title="put /tasks/{task_id}">client.tasks.<a href="./src/resources/tasks.ts">update</a>(taskID, { ...params }) -> Task</code>
2324
- <code title="get /tasks">client.tasks.<a href="./src/resources/tasks.ts">list</a>() -> TaskListResponse</code>
2425

25-
# TasksTaskID
26-
27-
Methods:
28-
29-
- <code title="put /tasks/{task_id}">client.tasksTaskID.<a href="./src/resources/tasks-task-id.ts">update</a>(taskID, { ...params }) -> Task</code>
30-
3126
# Users
3227

3328
Types:

src/client.ts

+2-6
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ import { type Fetch } from './internal/builtin-types';
1919
import { HeadersLike, NullableHeaders, buildHeaders } from './internal/headers';
2020
import { FinalRequestOptions, RequestOptions } from './internal/request-options';
2121
import { Project, ProjectCreateParams, ProjectListResponse, Projects } from './resources/projects';
22-
import { Task, TaskCreateParams, TaskListResponse, Tasks } from './resources/tasks';
23-
import { TasksTaskID, TasksTaskIDUpdateParams } from './resources/tasks-task-id';
22+
import { Task, TaskCreateParams, TaskListResponse, TaskUpdateParams, Tasks } from './resources/tasks';
2423
import { User, UserCreateParams, UserListResponse, Users } from './resources/users';
2524
import { readEnv } from './internal/utils/env';
2625
import { logger } from './internal/utils/log';
@@ -613,12 +612,10 @@ export class Lightswitch {
613612

614613
projects: API.Projects = new API.Projects(this);
615614
tasks: API.Tasks = new API.Tasks(this);
616-
tasksTaskID: API.TasksTaskID = new API.TasksTaskID(this);
617615
users: API.Users = new API.Users(this);
618616
}
619617
Lightswitch.Projects = Projects;
620618
Lightswitch.Tasks = Tasks;
621-
Lightswitch.TasksTaskID = TasksTaskID;
622619
Lightswitch.Users = Users;
623620
export declare namespace Lightswitch {
624621
export type RequestOptions = Opts.RequestOptions;
@@ -635,10 +632,9 @@ export declare namespace Lightswitch {
635632
type Task as Task,
636633
type TaskListResponse as TaskListResponse,
637634
type TaskCreateParams as TaskCreateParams,
635+
type TaskUpdateParams as TaskUpdateParams,
638636
};
639637

640-
export { TasksTaskID as TasksTaskID, type TasksTaskIDUpdateParams as TasksTaskIDUpdateParams };
641-
642638
export {
643639
Users as Users,
644640
type User as User,

src/resources/index.ts

+7-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

33
export { Projects, type Project, type ProjectListResponse, type ProjectCreateParams } from './projects';
4-
export { Tasks, type Task, type TaskListResponse, type TaskCreateParams } from './tasks';
5-
export { TasksTaskID, type TasksTaskIDUpdateParams } from './tasks-task-id';
4+
export {
5+
Tasks,
6+
type Task,
7+
type TaskListResponse,
8+
type TaskCreateParams,
9+
type TaskUpdateParams,
10+
} from './tasks';
611
export { Users, type User, type UserListResponse, type UserCreateParams } from './users';

src/resources/tasks-task-id.ts

-29
This file was deleted.

src/resources/tasks.ts

+18
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@ export class Tasks extends APIResource {
1717
});
1818
}
1919

20+
/**
21+
* Update a task
22+
*/
23+
update(taskID: number, body: TaskUpdateParams, options?: RequestOptions): APIPromise<Task> {
24+
return this._client.put(`/tasks/${taskID}`, { body, ...options });
25+
}
26+
2027
/**
2128
* Get all tasks
2229
*/
@@ -47,10 +54,21 @@ export interface TaskCreateParams {
4754
title?: string;
4855
}
4956

57+
export interface TaskUpdateParams {
58+
id?: number;
59+
60+
projectId?: number;
61+
62+
status?: string;
63+
64+
title?: string;
65+
}
66+
5067
export declare namespace Tasks {
5168
export {
5269
type Task as Task,
5370
type TaskListResponse as TaskListResponse,
5471
type TaskCreateParams as TaskCreateParams,
72+
type TaskUpdateParams as TaskUpdateParams,
5573
};
5674
}

tests/api-resources/tasks-task-id.test.ts

-19
This file was deleted.

tests/api-resources/tasks.test.ts

+12
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,18 @@ describe('resource tasks', () => {
1717
expect(dataAndResponse.response).toBe(rawResponse);
1818
});
1919

20+
// skipped: tests are disabled for the time being
21+
test.skip('update', async () => {
22+
const responsePromise = client.tasks.update(0, {});
23+
const rawResponse = await responsePromise.asResponse();
24+
expect(rawResponse).toBeInstanceOf(Response);
25+
const response = await responsePromise;
26+
expect(response).not.toBeInstanceOf(Response);
27+
const dataAndResponse = await responsePromise.withResponse();
28+
expect(dataAndResponse.data).toBe(response);
29+
expect(dataAndResponse.response).toBe(rawResponse);
30+
});
31+
2032
// skipped: tests are disabled for the time being
2133
test.skip('list', async () => {
2234
const responsePromise = client.tasks.list();

0 commit comments

Comments
 (0)