@37signals/basecamp 0.11.0 → 0.13.0

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.
Files changed (304) hide show
  1. package/README.md +112 -16
  2. package/dist/.build-complete +0 -0
  3. package/dist/client.d.ts +65 -11
  4. package/dist/client.d.ts.map +1 -1
  5. package/dist/client.js +235 -215
  6. package/dist/client.js.map +1 -1
  7. package/dist/download.d.ts +7 -0
  8. package/dist/download.d.ts.map +1 -1
  9. package/dist/download.js +82 -22
  10. package/dist/download.js.map +1 -1
  11. package/dist/errors.d.ts +19 -1
  12. package/dist/errors.d.ts.map +1 -1
  13. package/dist/errors.js +128 -15
  14. package/dist/errors.js.map +1 -1
  15. package/dist/generated/metadata.d.ts.map +1 -1
  16. package/dist/generated/metadata.js +443 -133
  17. package/dist/generated/metadata.js.map +1 -1
  18. package/dist/generated/metadata.ts +443 -133
  19. package/dist/generated/openapi-stripped.json +8999 -4907
  20. package/dist/generated/path-mapping.d.ts.map +1 -1
  21. package/dist/generated/path-mapping.js +40 -16
  22. package/dist/generated/path-mapping.js.map +1 -1
  23. package/dist/generated/path-mapping.ts +40 -16
  24. package/dist/generated/schema.d.ts +5508 -2346
  25. package/dist/generated/services/bookmarks.d.ts +76 -0
  26. package/dist/generated/services/bookmarks.d.ts.map +1 -0
  27. package/dist/generated/services/bookmarks.js +114 -0
  28. package/dist/generated/services/bookmarks.js.map +1 -0
  29. package/dist/generated/services/bookmarks.ts +158 -0
  30. package/dist/generated/services/boosts.d.ts +10 -0
  31. package/dist/generated/services/boosts.d.ts.map +1 -1
  32. package/dist/generated/services/boosts.js +8 -0
  33. package/dist/generated/services/boosts.js.map +1 -1
  34. package/dist/generated/services/boosts.ts +12 -0
  35. package/dist/generated/services/calendars.d.ts +47 -0
  36. package/dist/generated/services/calendars.d.ts.map +1 -0
  37. package/dist/generated/services/calendars.js +73 -0
  38. package/dist/generated/services/calendars.js.map +1 -0
  39. package/dist/generated/services/calendars.ts +102 -0
  40. package/dist/generated/services/campfires.d.ts +54 -40
  41. package/dist/generated/services/campfires.d.ts.map +1 -1
  42. package/dist/generated/services/campfires.js +82 -65
  43. package/dist/generated/services/campfires.js.map +1 -1
  44. package/dist/generated/services/campfires.ts +107 -85
  45. package/dist/generated/services/cards.d.ts +5 -0
  46. package/dist/generated/services/cards.d.ts.map +1 -1
  47. package/dist/generated/services/cards.js +4 -0
  48. package/dist/generated/services/cards.js.map +1 -1
  49. package/dist/generated/services/cards.ts +6 -0
  50. package/dist/generated/services/checkins.d.ts +14 -0
  51. package/dist/generated/services/checkins.d.ts.map +1 -1
  52. package/dist/generated/services/checkins.js +14 -1
  53. package/dist/generated/services/checkins.js.map +1 -1
  54. package/dist/generated/services/checkins.ts +20 -0
  55. package/dist/generated/services/client-approvals.d.ts +6 -3
  56. package/dist/generated/services/client-approvals.d.ts.map +1 -1
  57. package/dist/generated/services/client-approvals.js +8 -5
  58. package/dist/generated/services/client-approvals.js.map +1 -1
  59. package/dist/generated/services/client-approvals.ts +10 -5
  60. package/dist/generated/services/client-correspondences.d.ts +6 -3
  61. package/dist/generated/services/client-correspondences.d.ts.map +1 -1
  62. package/dist/generated/services/client-correspondences.js +8 -5
  63. package/dist/generated/services/client-correspondences.js.map +1 -1
  64. package/dist/generated/services/client-correspondences.ts +10 -5
  65. package/dist/generated/services/client-replies.d.ts +11 -4
  66. package/dist/generated/services/client-replies.d.ts.map +1 -1
  67. package/dist/generated/services/client-replies.js +16 -8
  68. package/dist/generated/services/client-replies.js.map +1 -1
  69. package/dist/generated/services/client-replies.ts +18 -8
  70. package/dist/generated/services/cloud-files.d.ts +92 -0
  71. package/dist/generated/services/cloud-files.d.ts.map +1 -0
  72. package/dist/generated/services/cloud-files.js +121 -0
  73. package/dist/generated/services/cloud-files.js.map +1 -0
  74. package/dist/generated/services/cloud-files.ts +188 -0
  75. package/dist/generated/services/comments.d.ts +5 -0
  76. package/dist/generated/services/comments.d.ts.map +1 -1
  77. package/dist/generated/services/comments.js +4 -0
  78. package/dist/generated/services/comments.js.map +1 -1
  79. package/dist/generated/services/comments.ts +6 -0
  80. package/dist/generated/services/documents.d.ts +12 -7
  81. package/dist/generated/services/documents.d.ts.map +1 -1
  82. package/dist/generated/services/documents.js +10 -6
  83. package/dist/generated/services/documents.js.map +1 -1
  84. package/dist/generated/services/documents.ts +14 -8
  85. package/dist/generated/services/drafts.d.ts +38 -0
  86. package/dist/generated/services/drafts.d.ts.map +1 -0
  87. package/dist/generated/services/drafts.js +40 -0
  88. package/dist/generated/services/drafts.js.map +1 -0
  89. package/dist/generated/services/drafts.ts +67 -0
  90. package/dist/generated/services/events.d.ts +5 -0
  91. package/dist/generated/services/events.d.ts.map +1 -1
  92. package/dist/generated/services/events.js +4 -0
  93. package/dist/generated/services/events.js.map +1 -1
  94. package/dist/generated/services/events.ts +6 -0
  95. package/dist/generated/services/everything.d.ts +83 -16
  96. package/dist/generated/services/everything.d.ts.map +1 -1
  97. package/dist/generated/services/everything.js +23 -13
  98. package/dist/generated/services/everything.js.map +1 -1
  99. package/dist/generated/services/everything.ts +100 -25
  100. package/dist/generated/services/folders.d.ts +96 -0
  101. package/dist/generated/services/folders.d.ts.map +1 -0
  102. package/dist/generated/services/folders.js +140 -0
  103. package/dist/generated/services/folders.js.map +1 -0
  104. package/dist/generated/services/folders.ts +201 -0
  105. package/dist/generated/services/forwards.d.ts +7 -20
  106. package/dist/generated/services/forwards.d.ts.map +1 -1
  107. package/dist/generated/services/forwards.js +6 -35
  108. package/dist/generated/services/forwards.js.map +1 -1
  109. package/dist/generated/services/forwards.ts +10 -48
  110. package/dist/generated/services/gauges.d.ts +7 -0
  111. package/dist/generated/services/gauges.d.ts.map +1 -1
  112. package/dist/generated/services/gauges.js +5 -1
  113. package/dist/generated/services/gauges.js.map +1 -1
  114. package/dist/generated/services/gauges.ts +9 -1
  115. package/dist/generated/services/google-documents.d.ts +98 -0
  116. package/dist/generated/services/google-documents.d.ts.map +1 -0
  117. package/dist/generated/services/google-documents.js +123 -0
  118. package/dist/generated/services/google-documents.js.map +1 -0
  119. package/dist/generated/services/google-documents.ts +196 -0
  120. package/dist/generated/services/index.d.ts +12 -5
  121. package/dist/generated/services/index.d.ts.map +1 -1
  122. package/dist/generated/services/index.js +12 -5
  123. package/dist/generated/services/index.js.map +1 -1
  124. package/dist/generated/services/index.ts +12 -5
  125. package/dist/generated/services/messages.d.ts +2 -0
  126. package/dist/generated/services/messages.d.ts.map +1 -1
  127. package/dist/generated/services/messages.js +1 -1
  128. package/dist/generated/services/messages.js.map +1 -1
  129. package/dist/generated/services/messages.ts +3 -1
  130. package/dist/generated/services/my-assignments.d.ts +52 -0
  131. package/dist/generated/services/my-assignments.d.ts.map +1 -1
  132. package/dist/generated/services/my-assignments.js +71 -0
  133. package/dist/generated/services/my-assignments.js.map +1 -1
  134. package/dist/generated/services/my-assignments.ts +104 -0
  135. package/dist/generated/services/my-notes.d.ts +45 -0
  136. package/dist/generated/services/my-notes.d.ts.map +1 -0
  137. package/dist/generated/services/my-notes.js +62 -0
  138. package/dist/generated/services/my-notes.js.map +1 -0
  139. package/dist/generated/services/my-notes.ts +92 -0
  140. package/dist/generated/services/my-notifications.d.ts +4 -2
  141. package/dist/generated/services/my-notifications.d.ts.map +1 -1
  142. package/dist/generated/services/my-notifications.js.map +1 -1
  143. package/dist/generated/services/my-notifications.ts +4 -2
  144. package/dist/generated/services/people.d.ts +11 -1
  145. package/dist/generated/services/people.d.ts.map +1 -1
  146. package/dist/generated/services/people.js +13 -2
  147. package/dist/generated/services/people.js.map +1 -1
  148. package/dist/generated/services/people.ts +15 -1
  149. package/dist/generated/services/projects.d.ts +26 -0
  150. package/dist/generated/services/projects.d.ts.map +1 -1
  151. package/dist/generated/services/projects.js +49 -1
  152. package/dist/generated/services/projects.js.map +1 -1
  153. package/dist/generated/services/projects.ts +61 -1
  154. package/dist/generated/services/recordings.d.ts +2 -12
  155. package/dist/generated/services/recordings.d.ts.map +1 -1
  156. package/dist/generated/services/recordings.js +1 -26
  157. package/dist/generated/services/recordings.js.map +1 -1
  158. package/dist/generated/services/recordings.ts +3 -31
  159. package/dist/generated/services/reports.d.ts +8 -12
  160. package/dist/generated/services/reports.d.ts.map +1 -1
  161. package/dist/generated/services/reports.js +11 -5
  162. package/dist/generated/services/reports.js.map +1 -1
  163. package/dist/generated/services/reports.ts +13 -14
  164. package/dist/generated/services/schedules.d.ts +94 -15
  165. package/dist/generated/services/schedules.d.ts.map +1 -1
  166. package/dist/generated/services/schedules.js +19 -8
  167. package/dist/generated/services/schedules.js.map +1 -1
  168. package/dist/generated/services/schedules.ts +107 -17
  169. package/dist/generated/services/search.d.ts +2 -0
  170. package/dist/generated/services/search.d.ts.map +1 -1
  171. package/dist/generated/services/search.js +1 -1
  172. package/dist/generated/services/search.js.map +1 -1
  173. package/dist/generated/services/search.ts +3 -1
  174. package/dist/generated/services/templates.d.ts +2 -0
  175. package/dist/generated/services/templates.d.ts.map +1 -1
  176. package/dist/generated/services/templates.js +1 -1
  177. package/dist/generated/services/templates.js.map +1 -1
  178. package/dist/generated/services/templates.ts +3 -1
  179. package/dist/generated/services/timeline.d.ts +2 -0
  180. package/dist/generated/services/timeline.d.ts.map +1 -1
  181. package/dist/generated/services/timeline.js +1 -0
  182. package/dist/generated/services/timeline.js.map +1 -1
  183. package/dist/generated/services/timeline.ts +3 -0
  184. package/dist/generated/services/timesheets.d.ts +16 -0
  185. package/dist/generated/services/timesheets.d.ts.map +1 -1
  186. package/dist/generated/services/timesheets.js +26 -2
  187. package/dist/generated/services/timesheets.js.map +1 -1
  188. package/dist/generated/services/timesheets.ts +35 -2
  189. package/dist/generated/services/todolist-groups.d.ts +11 -6
  190. package/dist/generated/services/todolist-groups.d.ts.map +1 -1
  191. package/dist/generated/services/todolist-groups.js +7 -3
  192. package/dist/generated/services/todolist-groups.js.map +1 -1
  193. package/dist/generated/services/todolist-groups.ts +13 -7
  194. package/dist/generated/services/todolists.d.ts +15 -13
  195. package/dist/generated/services/todolists.d.ts.map +1 -1
  196. package/dist/generated/services/todolists.js +11 -8
  197. package/dist/generated/services/todolists.js.map +1 -1
  198. package/dist/generated/services/todolists.ts +19 -14
  199. package/dist/generated/services/todos.d.ts +35 -12
  200. package/dist/generated/services/todos.d.ts.map +1 -1
  201. package/dist/generated/services/todos.js +47 -25
  202. package/dist/generated/services/todos.js.map +1 -1
  203. package/dist/generated/services/todos.ts +74 -30
  204. package/dist/generated/services/uploads.d.ts +5 -0
  205. package/dist/generated/services/uploads.d.ts.map +1 -1
  206. package/dist/generated/services/uploads.js +4 -0
  207. package/dist/generated/services/uploads.js.map +1 -1
  208. package/dist/generated/services/uploads.ts +6 -0
  209. package/dist/generated/services/vaults.d.ts +5 -0
  210. package/dist/generated/services/vaults.d.ts.map +1 -1
  211. package/dist/generated/services/vaults.js +4 -0
  212. package/dist/generated/services/vaults.js.map +1 -1
  213. package/dist/generated/services/vaults.ts +6 -0
  214. package/dist/hooks/otel.d.ts +1 -1
  215. package/dist/hooks/otel.js +1 -1
  216. package/dist/index.d.ts +21 -11
  217. package/dist/index.d.ts.map +1 -1
  218. package/dist/index.js +24 -9
  219. package/dist/index.js.map +1 -1
  220. package/dist/oauth/discovery.d.ts.map +1 -1
  221. package/dist/oauth/discovery.js +1 -0
  222. package/dist/oauth/discovery.js.map +1 -1
  223. package/dist/pagination-utils.d.ts +46 -0
  224. package/dist/pagination-utils.d.ts.map +1 -1
  225. package/dist/pagination-utils.js +85 -2
  226. package/dist/pagination-utils.js.map +1 -1
  227. package/dist/pagination.d.ts +12 -1
  228. package/dist/pagination.d.ts.map +1 -1
  229. package/dist/pagination.js +1 -1
  230. package/dist/pagination.js.map +1 -1
  231. package/dist/retry.d.ts +110 -0
  232. package/dist/retry.d.ts.map +1 -0
  233. package/dist/retry.js +253 -0
  234. package/dist/retry.js.map +1 -0
  235. package/dist/services/base.d.ts.map +1 -1
  236. package/dist/services/base.js +59 -5
  237. package/dist/services/base.js.map +1 -1
  238. package/dist/services/cards-extensions.d.ts +26 -21
  239. package/dist/services/cards-extensions.d.ts.map +1 -1
  240. package/dist/services/cards-extensions.js +28 -31
  241. package/dist/services/cards-extensions.js.map +1 -1
  242. package/dist/services/documents-extensions.d.ts +122 -0
  243. package/dist/services/documents-extensions.d.ts.map +1 -0
  244. package/dist/services/documents-extensions.js +125 -0
  245. package/dist/services/documents-extensions.js.map +1 -0
  246. package/dist/services/merge-safe.d.ts +167 -0
  247. package/dist/services/merge-safe.d.ts.map +1 -0
  248. package/dist/services/merge-safe.js +217 -0
  249. package/dist/services/merge-safe.js.map +1 -0
  250. package/dist/services/schedules-extensions.d.ts +266 -0
  251. package/dist/services/schedules-extensions.d.ts.map +1 -0
  252. package/dist/services/schedules-extensions.js +268 -0
  253. package/dist/services/schedules-extensions.js.map +1 -0
  254. package/dist/services/todolists-extensions.d.ts +110 -0
  255. package/dist/services/todolists-extensions.d.ts.map +1 -0
  256. package/dist/services/todolists-extensions.js +262 -0
  257. package/dist/services/todolists-extensions.js.map +1 -0
  258. package/dist/services/todos-extensions.d.ts +12 -1
  259. package/dist/services/todos-extensions.d.ts.map +1 -1
  260. package/dist/services/todos-extensions.js +27 -8
  261. package/dist/services/todos-extensions.js.map +1 -1
  262. package/package.json +5 -4
  263. package/src/generated/metadata.ts +443 -133
  264. package/src/generated/openapi-stripped.json +8999 -4907
  265. package/src/generated/path-mapping.ts +40 -16
  266. package/src/generated/schema.d.ts +5508 -2346
  267. package/src/generated/services/bookmarks.ts +158 -0
  268. package/src/generated/services/boosts.ts +12 -0
  269. package/src/generated/services/calendars.ts +102 -0
  270. package/src/generated/services/campfires.ts +107 -85
  271. package/src/generated/services/cards.ts +6 -0
  272. package/src/generated/services/checkins.ts +20 -0
  273. package/src/generated/services/client-approvals.ts +10 -5
  274. package/src/generated/services/client-correspondences.ts +10 -5
  275. package/src/generated/services/client-replies.ts +18 -8
  276. package/src/generated/services/cloud-files.ts +188 -0
  277. package/src/generated/services/comments.ts +6 -0
  278. package/src/generated/services/documents.ts +14 -8
  279. package/src/generated/services/drafts.ts +67 -0
  280. package/src/generated/services/events.ts +6 -0
  281. package/src/generated/services/everything.ts +100 -25
  282. package/src/generated/services/folders.ts +201 -0
  283. package/src/generated/services/forwards.ts +10 -48
  284. package/src/generated/services/gauges.ts +9 -1
  285. package/src/generated/services/google-documents.ts +196 -0
  286. package/src/generated/services/index.ts +12 -5
  287. package/src/generated/services/messages.ts +3 -1
  288. package/src/generated/services/my-assignments.ts +104 -0
  289. package/src/generated/services/my-notes.ts +92 -0
  290. package/src/generated/services/my-notifications.ts +4 -2
  291. package/src/generated/services/people.ts +15 -1
  292. package/src/generated/services/projects.ts +61 -1
  293. package/src/generated/services/recordings.ts +3 -31
  294. package/src/generated/services/reports.ts +13 -14
  295. package/src/generated/services/schedules.ts +107 -17
  296. package/src/generated/services/search.ts +3 -1
  297. package/src/generated/services/templates.ts +3 -1
  298. package/src/generated/services/timeline.ts +3 -0
  299. package/src/generated/services/timesheets.ts +35 -2
  300. package/src/generated/services/todolist-groups.ts +13 -7
  301. package/src/generated/services/todolists.ts +19 -14
  302. package/src/generated/services/todos.ts +74 -30
  303. package/src/generated/services/uploads.ts +6 -0
  304. package/src/generated/services/vaults.ts +6 -0
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Bookmarks service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ import type { components } from "../schema.js";
8
+ import { ListResult } from "../../pagination.js";
9
+ import type { PaginationOptions } from "../../pagination.js";
10
+ /** Bookmark entity from the Basecamp API. */
11
+ export type Bookmark = components["schemas"]["Bookmark"];
12
+ /** BookmarkStatus entity from the Basecamp API. */
13
+ export type BookmarkStatus = components["schemas"]["BookmarkStatus"];
14
+ /**
15
+ * Options for listMyBookmarks.
16
+ */
17
+ export interface ListMyBookmarksBookmarkOptions extends PaginationOptions {
18
+ /** Page number for paginating through results. Defaults to 1. A positive value selects exactly that page, not a starting offset; see SPEC section 8. */
19
+ page?: number;
20
+ }
21
+ /**
22
+ * Service for Bookmarks operations.
23
+ */
24
+ export declare class BookmarksService extends BaseService {
25
+ /**
26
+ * List the current user's bookmarks, most recently bookmarked first (paginated).
27
+ * @param options - Optional query parameters
28
+ * @returns All Bookmark across all pages, with .meta.totalCount
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * const result = await client.bookmarks.listMyBookmarks();
33
+ *
34
+ * // With options
35
+ * const filtered = await client.bookmarks.listMyBookmarks({ page: 1 });
36
+ * ```
37
+ */
38
+ listMyBookmarks(options?: ListMyBookmarksBookmarkOptions): Promise<ListResult<Bookmark>>;
39
+ /**
40
+ * Report whether the current user has bookmarked the recording.
41
+ * @param recordingId - The recording ID
42
+ * @returns The BookmarkStatus
43
+ * @throws {BasecampError} If the resource is not found
44
+ *
45
+ * @example
46
+ * ```ts
47
+ * const result = await client.bookmarks.getBookmark(123);
48
+ * ```
49
+ */
50
+ getBookmark(recordingId: number): Promise<BookmarkStatus>;
51
+ /**
52
+ * Bookmark a recording for the current user.
53
+ * @param recordingId - The recording ID
54
+ * @returns The Bookmark
55
+ * @throws {BasecampError} If required fields are missing or invalid
56
+ *
57
+ * @example
58
+ * ```ts
59
+ * const result = await client.bookmarks.createBookmark(123);
60
+ * ```
61
+ */
62
+ createBookmark(recordingId: number): Promise<Bookmark>;
63
+ /**
64
+ * Remove the current user's bookmark from a recording.
65
+ * @param recordingId - The recording ID
66
+ * @returns void
67
+ * @throws {BasecampError} If the request fails
68
+ *
69
+ * @example
70
+ * ```ts
71
+ * await client.bookmarks.deleteBookmark(123);
72
+ * ```
73
+ */
74
+ deleteBookmark(recordingId: number): Promise<void>;
75
+ }
76
+ //# sourceMappingURL=bookmarks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookmarks.d.ts","sourceRoot":"","sources":["../../../src/generated/services/bookmarks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAM7D,6CAA6C;AAC7C,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;AACzD,mDAAmD;AACnD,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,8BAA+B,SAAQ,iBAAiB;IACvE,wJAAwJ;IACxJ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAOD;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAE/C;;;;;;;;;;;;OAYG;IACG,eAAe,CAAC,OAAO,CAAC,EAAE,8BAA8B,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAkB9F;;;;;;;;;;OAUG;IACG,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAmB/D;;;;;;;;;;OAUG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAmB5D;;;;;;;;;;OAUG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAiBzD"}
@@ -0,0 +1,114 @@
1
+ /**
2
+ * Bookmarks service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ // =============================================================================
8
+ // Service
9
+ // =============================================================================
10
+ /**
11
+ * Service for Bookmarks operations.
12
+ */
13
+ export class BookmarksService extends BaseService {
14
+ /**
15
+ * List the current user's bookmarks, most recently bookmarked first (paginated).
16
+ * @param options - Optional query parameters
17
+ * @returns All Bookmark across all pages, with .meta.totalCount
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * const result = await client.bookmarks.listMyBookmarks();
22
+ *
23
+ * // With options
24
+ * const filtered = await client.bookmarks.listMyBookmarks({ page: 1 });
25
+ * ```
26
+ */
27
+ async listMyBookmarks(options) {
28
+ return this.requestPaginated({
29
+ service: "Bookmarks",
30
+ operation: "ListMyBookmarks",
31
+ resourceType: "bookmark",
32
+ isMutation: false,
33
+ }, () => this.client.GET("/my/bookmarks.json", {
34
+ params: {
35
+ query: { page: options?.page },
36
+ },
37
+ }), options);
38
+ }
39
+ /**
40
+ * Report whether the current user has bookmarked the recording.
41
+ * @param recordingId - The recording ID
42
+ * @returns The BookmarkStatus
43
+ * @throws {BasecampError} If the resource is not found
44
+ *
45
+ * @example
46
+ * ```ts
47
+ * const result = await client.bookmarks.getBookmark(123);
48
+ * ```
49
+ */
50
+ async getBookmark(recordingId) {
51
+ const response = await this.request({
52
+ service: "Bookmarks",
53
+ operation: "GetBookmark",
54
+ resourceType: "bookmark",
55
+ isMutation: false,
56
+ resourceId: recordingId,
57
+ }, () => this.client.GET("/recordings/{recordingId}/bookmark.json", {
58
+ params: {
59
+ path: { recordingId },
60
+ },
61
+ }));
62
+ return response;
63
+ }
64
+ /**
65
+ * Bookmark a recording for the current user.
66
+ * @param recordingId - The recording ID
67
+ * @returns The Bookmark
68
+ * @throws {BasecampError} If required fields are missing or invalid
69
+ *
70
+ * @example
71
+ * ```ts
72
+ * const result = await client.bookmarks.createBookmark(123);
73
+ * ```
74
+ */
75
+ async createBookmark(recordingId) {
76
+ const response = await this.request({
77
+ service: "Bookmarks",
78
+ operation: "CreateBookmark",
79
+ resourceType: "bookmark",
80
+ isMutation: true,
81
+ resourceId: recordingId,
82
+ }, () => this.client.POST("/recordings/{recordingId}/bookmark.json", {
83
+ params: {
84
+ path: { recordingId },
85
+ },
86
+ }));
87
+ return response;
88
+ }
89
+ /**
90
+ * Remove the current user's bookmark from a recording.
91
+ * @param recordingId - The recording ID
92
+ * @returns void
93
+ * @throws {BasecampError} If the request fails
94
+ *
95
+ * @example
96
+ * ```ts
97
+ * await client.bookmarks.deleteBookmark(123);
98
+ * ```
99
+ */
100
+ async deleteBookmark(recordingId) {
101
+ await this.request({
102
+ service: "Bookmarks",
103
+ operation: "DeleteBookmark",
104
+ resourceType: "bookmark",
105
+ isMutation: true,
106
+ resourceId: recordingId,
107
+ }, () => this.client.DELETE("/recordings/{recordingId}/bookmark.json", {
108
+ params: {
109
+ path: { recordingId },
110
+ },
111
+ }));
112
+ }
113
+ }
114
+ //# sourceMappingURL=bookmarks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookmarks.js","sourceRoot":"","sources":["../../../src/generated/services/bookmarks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAuBrD,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAE/C;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,eAAe,CAAC,OAAwC;QAC5D,OAAO,IAAI,CAAC,gBAAgB,CAC1B;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,iBAAiB;YAC5B,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,KAAK;SAClB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE;YACpC,MAAM,EAAE;gBACN,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;aAC/B;SACF,CAAC,EACF,OAAO,CACV,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CAAC,WAAmB;QACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,aAAa;YACxB,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,WAAW;SACxB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yCAAyC,EAAE;YACzD,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,WAAW,EAAE;aACtB;SACF,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,gBAAgB;YAC3B,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,WAAW;SACxB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE;YAC1D,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,WAAW,EAAE;aACtB;SACF,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB;QACtC,MAAM,IAAI,CAAC,OAAO,CAChB;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,gBAAgB;YAC3B,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,WAAW;SACxB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,yCAAyC,EAAE;YAC5D,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,WAAW,EAAE;aACtB;SACF,CAAC,CACL,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Bookmarks service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+
7
+ import { BaseService } from "../../services/base.js";
8
+ import type { components } from "../schema.js";
9
+ import { ListResult } from "../../pagination.js";
10
+ import type { PaginationOptions } from "../../pagination.js";
11
+
12
+ // =============================================================================
13
+ // Types
14
+ // =============================================================================
15
+
16
+ /** Bookmark entity from the Basecamp API. */
17
+ export type Bookmark = components["schemas"]["Bookmark"];
18
+ /** BookmarkStatus entity from the Basecamp API. */
19
+ export type BookmarkStatus = components["schemas"]["BookmarkStatus"];
20
+
21
+ /**
22
+ * Options for listMyBookmarks.
23
+ */
24
+ export interface ListMyBookmarksBookmarkOptions extends PaginationOptions {
25
+ /** Page number for paginating through results. Defaults to 1. A positive value selects exactly that page, not a starting offset; see SPEC section 8. */
26
+ page?: number;
27
+ }
28
+
29
+
30
+ // =============================================================================
31
+ // Service
32
+ // =============================================================================
33
+
34
+ /**
35
+ * Service for Bookmarks operations.
36
+ */
37
+ export class BookmarksService extends BaseService {
38
+
39
+ /**
40
+ * List the current user's bookmarks, most recently bookmarked first (paginated).
41
+ * @param options - Optional query parameters
42
+ * @returns All Bookmark across all pages, with .meta.totalCount
43
+ *
44
+ * @example
45
+ * ```ts
46
+ * const result = await client.bookmarks.listMyBookmarks();
47
+ *
48
+ * // With options
49
+ * const filtered = await client.bookmarks.listMyBookmarks({ page: 1 });
50
+ * ```
51
+ */
52
+ async listMyBookmarks(options?: ListMyBookmarksBookmarkOptions): Promise<ListResult<Bookmark>> {
53
+ return this.requestPaginated(
54
+ {
55
+ service: "Bookmarks",
56
+ operation: "ListMyBookmarks",
57
+ resourceType: "bookmark",
58
+ isMutation: false,
59
+ },
60
+ () =>
61
+ this.client.GET("/my/bookmarks.json", {
62
+ params: {
63
+ query: { page: options?.page },
64
+ },
65
+ })
66
+ , options
67
+ );
68
+ }
69
+
70
+ /**
71
+ * Report whether the current user has bookmarked the recording.
72
+ * @param recordingId - The recording ID
73
+ * @returns The BookmarkStatus
74
+ * @throws {BasecampError} If the resource is not found
75
+ *
76
+ * @example
77
+ * ```ts
78
+ * const result = await client.bookmarks.getBookmark(123);
79
+ * ```
80
+ */
81
+ async getBookmark(recordingId: number): Promise<BookmarkStatus> {
82
+ const response = await this.request(
83
+ {
84
+ service: "Bookmarks",
85
+ operation: "GetBookmark",
86
+ resourceType: "bookmark",
87
+ isMutation: false,
88
+ resourceId: recordingId,
89
+ },
90
+ () =>
91
+ this.client.GET("/recordings/{recordingId}/bookmark.json", {
92
+ params: {
93
+ path: { recordingId },
94
+ },
95
+ })
96
+ );
97
+ return response;
98
+ }
99
+
100
+ /**
101
+ * Bookmark a recording for the current user.
102
+ * @param recordingId - The recording ID
103
+ * @returns The Bookmark
104
+ * @throws {BasecampError} If required fields are missing or invalid
105
+ *
106
+ * @example
107
+ * ```ts
108
+ * const result = await client.bookmarks.createBookmark(123);
109
+ * ```
110
+ */
111
+ async createBookmark(recordingId: number): Promise<Bookmark> {
112
+ const response = await this.request(
113
+ {
114
+ service: "Bookmarks",
115
+ operation: "CreateBookmark",
116
+ resourceType: "bookmark",
117
+ isMutation: true,
118
+ resourceId: recordingId,
119
+ },
120
+ () =>
121
+ this.client.POST("/recordings/{recordingId}/bookmark.json", {
122
+ params: {
123
+ path: { recordingId },
124
+ },
125
+ })
126
+ );
127
+ return response;
128
+ }
129
+
130
+ /**
131
+ * Remove the current user's bookmark from a recording.
132
+ * @param recordingId - The recording ID
133
+ * @returns void
134
+ * @throws {BasecampError} If the request fails
135
+ *
136
+ * @example
137
+ * ```ts
138
+ * await client.bookmarks.deleteBookmark(123);
139
+ * ```
140
+ */
141
+ async deleteBookmark(recordingId: number): Promise<void> {
142
+ await this.request(
143
+ {
144
+ service: "Bookmarks",
145
+ operation: "DeleteBookmark",
146
+ resourceType: "bookmark",
147
+ isMutation: true,
148
+ resourceId: recordingId,
149
+ },
150
+ () =>
151
+ this.client.DELETE("/recordings/{recordingId}/bookmark.json", {
152
+ params: {
153
+ path: { recordingId },
154
+ },
155
+ })
156
+ );
157
+ }
158
+ }
@@ -13,6 +13,8 @@ export type Boost = components["schemas"]["Boost"];
13
13
  * Options for listForRecording.
14
14
  */
15
15
  export interface ListForRecordingBoostOptions extends PaginationOptions {
16
+ /** Page number for paginating through results. Defaults to 1. A positive value selects exactly that page, not a starting offset; see SPEC section 8. */
17
+ page?: number;
16
18
  }
17
19
  /**
18
20
  * Request parameters for createForRecording.
@@ -25,6 +27,8 @@ export interface CreateForRecordingBoostRequest {
25
27
  * Options for listForEvent.
26
28
  */
27
29
  export interface ListForEventBoostOptions extends PaginationOptions {
30
+ /** Page number for paginating through results. Defaults to 1. A positive value selects exactly that page, not a starting offset; see SPEC section 8. */
31
+ page?: number;
28
32
  }
29
33
  /**
30
34
  * Request parameters for createForEvent.
@@ -70,6 +74,9 @@ export declare class BoostsService extends BaseService {
70
74
  * @example
71
75
  * ```ts
72
76
  * const result = await client.boosts.listForRecording(123);
77
+ *
78
+ * // With options
79
+ * const filtered = await client.boosts.listForRecording(123, { page: 1 });
73
80
  * ```
74
81
  */
75
82
  listForRecording(recordingId: number, options?: ListForRecordingBoostOptions): Promise<ListResult<Boost>>;
@@ -96,6 +103,9 @@ export declare class BoostsService extends BaseService {
96
103
  * @example
97
104
  * ```ts
98
105
  * const result = await client.boosts.listForEvent(123, 123);
106
+ *
107
+ * // With options
108
+ * const filtered = await client.boosts.listForEvent(123, 123, { page: 1 });
99
109
  * ```
100
110
  */
101
111
  listForEvent(recordingId: number, eventId: number, options?: ListForEventBoostOptions): Promise<ListResult<Boost>>;
@@ -1 +1 @@
1
- {"version":3,"file":"boosts.d.ts","sourceRoot":"","sources":["../../../src/generated/services/boosts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAO7D,0CAA0C;AAC1C,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,iBAAiB;CACtE;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;CAClE;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAE5C;;;;;;;;;;OAUG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAmB1C;;;;;;;;;;OAUG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5C;;;;;;;;;;OAUG;IACG,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAmB/G;;;;;;;;;;;OAWG;IACG,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,8BAA8B,GAAG,OAAO,CAAC,KAAK,CAAC;IAyBlG;;;;;;;;;;;OAWG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAmBxH;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,KAAK,CAAC;CAwB5G"}
1
+ {"version":3,"file":"boosts.d.ts","sourceRoot":"","sources":["../../../src/generated/services/boosts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAO7D,0CAA0C;AAC1C,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,iBAAiB;IACrE,wJAAwJ;IACxJ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,wJAAwJ;IACxJ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAE5C;;;;;;;;;;OAUG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAmB1C;;;;;;;;;;OAUG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5C;;;;;;;;;;;;;OAaG;IACG,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAoB/G;;;;;;;;;;;OAWG;IACG,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,8BAA8B,GAAG,OAAO,CAAC,KAAK,CAAC;IAyBlG;;;;;;;;;;;;;;OAcG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAoBxH;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,KAAK,CAAC;CAwB5G"}
@@ -70,6 +70,9 @@ export class BoostsService extends BaseService {
70
70
  * @example
71
71
  * ```ts
72
72
  * const result = await client.boosts.listForRecording(123);
73
+ *
74
+ * // With options
75
+ * const filtered = await client.boosts.listForRecording(123, { page: 1 });
73
76
  * ```
74
77
  */
75
78
  async listForRecording(recordingId, options) {
@@ -82,6 +85,7 @@ export class BoostsService extends BaseService {
82
85
  }, () => this.client.GET("/recordings/{recordingId}/boosts.json", {
83
86
  params: {
84
87
  path: { recordingId },
88
+ query: { page: options?.page },
85
89
  },
86
90
  }), options);
87
91
  }
@@ -127,6 +131,9 @@ export class BoostsService extends BaseService {
127
131
  * @example
128
132
  * ```ts
129
133
  * const result = await client.boosts.listForEvent(123, 123);
134
+ *
135
+ * // With options
136
+ * const filtered = await client.boosts.listForEvent(123, 123, { page: 1 });
130
137
  * ```
131
138
  */
132
139
  async listForEvent(recordingId, eventId, options) {
@@ -139,6 +146,7 @@ export class BoostsService extends BaseService {
139
146
  }, () => this.client.GET("/recordings/{recordingId}/events/{eventId}/boosts.json", {
140
147
  params: {
141
148
  path: { recordingId, eventId },
149
+ query: { page: options?.page },
142
150
  },
143
151
  }), options);
144
152
  }
@@ -1 +1 @@
1
- {"version":3,"file":"boosts.js","sourceRoot":"","sources":["../../../src/generated/services/boosts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"boosts.js","sourceRoot":"","sources":["../../../src/generated/services/boosts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAIrD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AA0CzC,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,WAAW;IAE5C;;;;;;;;;;OAUG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,UAAU;YACrB,YAAY,EAAE,OAAO;YACrB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,OAAO;SACpB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE;YACnC,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,OAAO,EAAE;aAClB;SACF,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe;QAC1B,MAAM,IAAI,CAAC,OAAO,CAChB;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,aAAa;YACxB,YAAY,EAAE,OAAO;YACrB,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,OAAO;SACpB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE;YACtC,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,OAAO,EAAE;aAClB;SACF,CAAC,CACL,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,gBAAgB,CAAC,WAAmB,EAAE,OAAsC;QAChF,OAAO,IAAI,CAAC,gBAAgB,CAC1B;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,qBAAqB;YAChC,YAAY,EAAE,iBAAiB;YAC/B,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,WAAW;SACxB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uCAAuC,EAAE;YACvD,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,WAAW,EAAE;gBACrB,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;aAC/B;SACF,CAAC,EACF,OAAO,CACV,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,kBAAkB,CAAC,WAAmB,EAAE,GAAmC;QAC/E,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,sBAAsB;YACjC,YAAY,EAAE,iBAAiB;YAC/B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,WAAW;SACxB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;YACxD,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,WAAW,EAAE;aACtB;YACD,IAAI,EAAE;gBACJ,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB;SACF,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,OAAe,EAAE,OAAkC;QACzF,OAAO,IAAI,CAAC,gBAAgB,CAC1B;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,iBAAiB;YAC5B,YAAY,EAAE,aAAa;YAC3B,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,OAAO;SACpB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wDAAwD,EAAE;YACxE,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC9B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;aAC/B;SACF,CAAC,EACF,OAAO,CACV,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,OAAe,EAAE,GAA+B;QACxF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,MAAM,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,QAAQ;YACjB,SAAS,EAAE,kBAAkB;YAC7B,YAAY,EAAE,aAAa;YAC3B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,OAAO;SACpB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wDAAwD,EAAE;YACzE,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;aAC/B;YACD,IAAI,EAAE;gBACJ,OAAO,EAAE,GAAG,CAAC,OAAO;aACrB;SACF,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
@@ -21,6 +21,8 @@ export type Boost = components["schemas"]["Boost"];
21
21
  * Options for listForRecording.
22
22
  */
23
23
  export interface ListForRecordingBoostOptions extends PaginationOptions {
24
+ /** Page number for paginating through results. Defaults to 1. A positive value selects exactly that page, not a starting offset; see SPEC section 8. */
25
+ page?: number;
24
26
  }
25
27
 
26
28
  /**
@@ -35,6 +37,8 @@ export interface CreateForRecordingBoostRequest {
35
37
  * Options for listForEvent.
36
38
  */
37
39
  export interface ListForEventBoostOptions extends PaginationOptions {
40
+ /** Page number for paginating through results. Defaults to 1. A positive value selects exactly that page, not a starting offset; see SPEC section 8. */
41
+ page?: number;
38
42
  }
39
43
 
40
44
  /**
@@ -123,6 +127,9 @@ export class BoostsService extends BaseService {
123
127
  * @example
124
128
  * ```ts
125
129
  * const result = await client.boosts.listForRecording(123);
130
+ *
131
+ * // With options
132
+ * const filtered = await client.boosts.listForRecording(123, { page: 1 });
126
133
  * ```
127
134
  */
128
135
  async listForRecording(recordingId: number, options?: ListForRecordingBoostOptions): Promise<ListResult<Boost>> {
@@ -138,6 +145,7 @@ export class BoostsService extends BaseService {
138
145
  this.client.GET("/recordings/{recordingId}/boosts.json", {
139
146
  params: {
140
147
  path: { recordingId },
148
+ query: { page: options?.page },
141
149
  },
142
150
  })
143
151
  , options
@@ -191,6 +199,9 @@ export class BoostsService extends BaseService {
191
199
  * @example
192
200
  * ```ts
193
201
  * const result = await client.boosts.listForEvent(123, 123);
202
+ *
203
+ * // With options
204
+ * const filtered = await client.boosts.listForEvent(123, 123, { page: 1 });
194
205
  * ```
195
206
  */
196
207
  async listForEvent(recordingId: number, eventId: number, options?: ListForEventBoostOptions): Promise<ListResult<Boost>> {
@@ -206,6 +217,7 @@ export class BoostsService extends BaseService {
206
217
  this.client.GET("/recordings/{recordingId}/events/{eventId}/boosts.json", {
207
218
  params: {
208
219
  path: { recordingId, eventId },
220
+ query: { page: options?.page },
209
221
  },
210
222
  })
211
223
  , options
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Calendars service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ import type { components } from "../schema.js";
8
+ /** Calendar entity from the Basecamp API. */
9
+ export type Calendar = components["schemas"]["Calendar"];
10
+ /**
11
+ * Request parameters for updateCalendar.
12
+ */
13
+ export interface UpdateCalendarCalendarRequest {
14
+ /** Calendar */
15
+ calendar: components["schemas"]["CalendarAttributes"];
16
+ }
17
+ /**
18
+ * Service for Calendars operations.
19
+ */
20
+ export declare class CalendarsService extends BaseService {
21
+ /**
22
+ * Get a calendar by its bucket id. A Calendar is a top-level BC5 bucketable
23
+ * @param calendarId - The calendar ID
24
+ * @returns The Calendar
25
+ * @throws {BasecampError} If the resource is not found
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * const result = await client.calendars.getCalendar(123);
30
+ * ```
31
+ */
32
+ getCalendar(calendarId: number): Promise<Calendar>;
33
+ /**
34
+ * Update a calendar's display color. An unknown color returns 422 with a JSON
35
+ * @param calendarId - The calendar ID
36
+ * @param req - Calendar update parameters
37
+ * @returns The Calendar
38
+ * @throws {BasecampError} If the resource is not found or fields are invalid
39
+ *
40
+ * @example
41
+ * ```ts
42
+ * const result = await client.calendars.updateCalendar(123, { calendar: { color: "example" } });
43
+ * ```
44
+ */
45
+ updateCalendar(calendarId: number, req: UpdateCalendarCalendarRequest): Promise<Calendar>;
46
+ }
47
+ //# sourceMappingURL=calendars.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendars.d.ts","sourceRoot":"","sources":["../../../src/generated/services/calendars.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAO/C,6CAA6C;AAC7C,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,eAAe;IACf,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;CACvD;AAOD;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAE/C;;;;;;;;;;OAUG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAmBxD;;;;;;;;;;;OAWG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,6BAA6B,GAAG,OAAO,CAAC,QAAQ,CAAC;CAwBhG"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Calendars service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ import { Errors } from "../../errors.js";
8
+ // =============================================================================
9
+ // Service
10
+ // =============================================================================
11
+ /**
12
+ * Service for Calendars operations.
13
+ */
14
+ export class CalendarsService extends BaseService {
15
+ /**
16
+ * Get a calendar by its bucket id. A Calendar is a top-level BC5 bucketable
17
+ * @param calendarId - The calendar ID
18
+ * @returns The Calendar
19
+ * @throws {BasecampError} If the resource is not found
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * const result = await client.calendars.getCalendar(123);
24
+ * ```
25
+ */
26
+ async getCalendar(calendarId) {
27
+ const response = await this.request({
28
+ service: "Calendars",
29
+ operation: "GetCalendar",
30
+ resourceType: "calendar",
31
+ isMutation: false,
32
+ resourceId: calendarId,
33
+ }, () => this.client.GET("/calendars/{calendarId}", {
34
+ params: {
35
+ path: { calendarId },
36
+ },
37
+ }));
38
+ return response;
39
+ }
40
+ /**
41
+ * Update a calendar's display color. An unknown color returns 422 with a JSON
42
+ * @param calendarId - The calendar ID
43
+ * @param req - Calendar update parameters
44
+ * @returns The Calendar
45
+ * @throws {BasecampError} If the resource is not found or fields are invalid
46
+ *
47
+ * @example
48
+ * ```ts
49
+ * const result = await client.calendars.updateCalendar(123, { calendar: { color: "example" } });
50
+ * ```
51
+ */
52
+ async updateCalendar(calendarId, req) {
53
+ if (!req.calendar) {
54
+ throw Errors.validation("Calendar is required");
55
+ }
56
+ const response = await this.request({
57
+ service: "Calendars",
58
+ operation: "UpdateCalendar",
59
+ resourceType: "calendar",
60
+ isMutation: true,
61
+ resourceId: calendarId,
62
+ }, () => this.client.PUT("/calendars/{calendarId}", {
63
+ params: {
64
+ path: { calendarId },
65
+ },
66
+ body: {
67
+ calendar: req.calendar,
68
+ },
69
+ }));
70
+ return response;
71
+ }
72
+ }
73
+ //# sourceMappingURL=calendars.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendars.js","sourceRoot":"","sources":["../../../src/generated/services/calendars.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAkBzC,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAE/C;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CAAC,UAAkB;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,aAAa;YACxB,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,KAAK;YACjB,UAAU,EAAE,UAAU;SACvB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yBAAyB,EAAE;YACzC,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,UAAU,EAAE;aACrB;SACF,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,cAAc,CAAC,UAAkB,EAAE,GAAkC;QACzE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,MAAM,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;QAClD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,gBAAgB;YAC3B,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,UAAU;SACvB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yBAAyB,EAAE;YACzC,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE,UAAU,EAAE;aACrB;YACD,IAAI,EAAE;gBACJ,QAAQ,EAAE,GAAG,CAAC,QAAQ;aACvB;SACF,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}