recal-sdk 0.3.2 → 1.0.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 (198) hide show
  1. package/README.md +24 -792
  2. package/dist/client/client/client.gen.d.ts +3 -0
  3. package/dist/client/client/client.gen.d.ts.map +1 -0
  4. package/dist/client/client/client.gen.js +205 -0
  5. package/dist/client/client/client.gen.js.map +1 -0
  6. package/dist/client/client/index.d.ts +9 -0
  7. package/dist/client/client/index.d.ts.map +1 -0
  8. package/dist/client/client/index.js +7 -0
  9. package/dist/client/client/index.js.map +1 -0
  10. package/dist/client/client/types.gen.d.ts +125 -0
  11. package/dist/client/client/types.gen.d.ts.map +1 -0
  12. package/dist/client/client/types.gen.js +3 -0
  13. package/dist/client/client/types.gen.js.map +1 -0
  14. package/dist/client/client/utils.gen.d.ts +34 -0
  15. package/dist/client/client/utils.gen.d.ts.map +1 -0
  16. package/dist/client/client/utils.gen.js +232 -0
  17. package/dist/client/client/utils.gen.js.map +1 -0
  18. package/dist/client/client.gen.d.ts +13 -0
  19. package/dist/client/client.gen.d.ts.map +1 -0
  20. package/dist/client/client.gen.js +6 -0
  21. package/dist/client/client.gen.js.map +1 -0
  22. package/dist/client/core/auth.gen.d.ts +19 -0
  23. package/dist/client/core/auth.gen.d.ts.map +1 -0
  24. package/dist/client/core/auth.gen.js +15 -0
  25. package/dist/client/core/auth.gen.js.map +1 -0
  26. package/dist/client/core/bodySerializer.gen.d.ts +26 -0
  27. package/dist/client/core/bodySerializer.gen.d.ts.map +1 -0
  28. package/dist/client/core/bodySerializer.gen.js +58 -0
  29. package/dist/client/core/bodySerializer.gen.js.map +1 -0
  30. package/dist/client/core/params.gen.d.ts +34 -0
  31. package/dist/client/core/params.gen.d.ts.map +1 -0
  32. package/dist/client/core/params.gen.js +89 -0
  33. package/dist/client/core/params.gen.js.map +1 -0
  34. package/dist/client/core/pathSerializer.gen.d.ts +34 -0
  35. package/dist/client/core/pathSerializer.gen.d.ts.map +1 -0
  36. package/dist/client/core/pathSerializer.gen.js +115 -0
  37. package/dist/client/core/pathSerializer.gen.js.map +1 -0
  38. package/dist/client/core/queryKeySerializer.gen.d.ts +19 -0
  39. package/dist/client/core/queryKeySerializer.gen.d.ts.map +1 -0
  40. package/dist/client/core/queryKeySerializer.gen.js +100 -0
  41. package/dist/client/core/queryKeySerializer.gen.js.map +1 -0
  42. package/dist/client/core/serverSentEvents.gen.d.ts +72 -0
  43. package/dist/client/core/serverSentEvents.gen.d.ts.map +1 -0
  44. package/dist/client/core/serverSentEvents.gen.js +136 -0
  45. package/dist/client/core/serverSentEvents.gen.js.map +1 -0
  46. package/dist/client/core/types.gen.d.ts +79 -0
  47. package/dist/client/core/types.gen.d.ts.map +1 -0
  48. package/dist/client/core/types.gen.js +3 -0
  49. package/dist/client/core/types.gen.js.map +1 -0
  50. package/dist/client/core/utils.gen.d.ts +20 -0
  51. package/dist/client/core/utils.gen.d.ts.map +1 -0
  52. package/dist/client/core/utils.gen.js +88 -0
  53. package/dist/client/core/utils.gen.js.map +1 -0
  54. package/dist/client/index.d.ts +3 -0
  55. package/dist/client/index.d.ts.map +1 -0
  56. package/dist/client/index.js +3 -0
  57. package/dist/client/index.js.map +1 -0
  58. package/dist/client/sdk.gen.d.ts +170 -0
  59. package/dist/client/sdk.gen.d.ts.map +1 -0
  60. package/dist/client/sdk.gen.js +884 -0
  61. package/dist/client/sdk.gen.js.map +1 -0
  62. package/dist/client/transformers.gen.d.ts +31 -0
  63. package/dist/client/transformers.gen.d.ts.map +1 -0
  64. package/dist/client/transformers.gen.js +263 -0
  65. package/dist/client/transformers.gen.js.map +1 -0
  66. package/dist/client/types.gen.d.ts +1765 -0
  67. package/dist/client/types.gen.d.ts.map +1 -0
  68. package/dist/client/types.gen.js +3 -0
  69. package/dist/client/types.gen.js.map +1 -0
  70. package/dist/client/zod.gen.d.ts +1457 -0
  71. package/dist/client/zod.gen.d.ts.map +1 -0
  72. package/dist/client/zod.gen.js +1214 -0
  73. package/dist/client/zod.gen.js.map +1 -0
  74. package/dist/index.d.ts +5 -33
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +8 -55
  77. package/dist/index.js.map +1 -1
  78. package/dist/recal.d.ts +64 -0
  79. package/dist/recal.d.ts.map +1 -0
  80. package/dist/recal.js +81 -0
  81. package/dist/recal.js.map +1 -0
  82. package/dist/services/calendar.service.d.ts +55 -167
  83. package/dist/services/calendar.service.d.ts.map +1 -1
  84. package/dist/services/calendar.service.js +68 -301
  85. package/dist/services/calendar.service.js.map +1 -1
  86. package/dist/services/events.service.d.ts +167 -0
  87. package/dist/services/events.service.d.ts.map +1 -0
  88. package/dist/services/events.service.js +215 -0
  89. package/dist/services/events.service.js.map +1 -0
  90. package/dist/services/oauth.service.d.ts +123 -60
  91. package/dist/services/oauth.service.d.ts.map +1 -1
  92. package/dist/services/oauth.service.js +166 -142
  93. package/dist/services/oauth.service.js.map +1 -1
  94. package/dist/services/organizations.service.d.ts +137 -36
  95. package/dist/services/organizations.service.d.ts.map +1 -1
  96. package/dist/services/organizations.service.js +164 -90
  97. package/dist/services/organizations.service.js.map +1 -1
  98. package/dist/services/scheduling.service.d.ts +121 -58
  99. package/dist/services/scheduling.service.d.ts.map +1 -1
  100. package/dist/services/scheduling.service.js +98 -140
  101. package/dist/services/scheduling.service.js.map +1 -1
  102. package/dist/services/users.service.d.ts +87 -27
  103. package/dist/services/users.service.d.ts.map +1 -1
  104. package/dist/services/users.service.js +94 -69
  105. package/dist/services/users.service.js.map +1 -1
  106. package/dist/types.d.ts +68 -0
  107. package/dist/types.d.ts.map +1 -0
  108. package/dist/types.js +8 -0
  109. package/dist/types.js.map +1 -0
  110. package/dist/utils/response.d.ts +33 -0
  111. package/dist/utils/response.d.ts.map +1 -0
  112. package/dist/utils/response.js +54 -0
  113. package/dist/utils/response.js.map +1 -0
  114. package/package.json +5 -2
  115. package/dist/entities/organization.d.ts +0 -21
  116. package/dist/entities/organization.d.ts.map +0 -1
  117. package/dist/entities/organization.js +0 -32
  118. package/dist/entities/organization.js.map +0 -1
  119. package/dist/entities/user.d.ts +0 -23
  120. package/dist/entities/user.d.ts.map +0 -1
  121. package/dist/entities/user.js +0 -45
  122. package/dist/entities/user.js.map +0 -1
  123. package/dist/errors.d.ts +0 -22
  124. package/dist/errors.d.ts.map +0 -1
  125. package/dist/errors.js +0 -36
  126. package/dist/errors.js.map +0 -1
  127. package/dist/typebox/calendar.tb.d.ts +0 -113
  128. package/dist/typebox/calendar.tb.d.ts.map +0 -1
  129. package/dist/typebox/calendar.tb.js +0 -92
  130. package/dist/typebox/calendar.tb.js.map +0 -1
  131. package/dist/typebox/oauth.tb.d.ts +0 -14
  132. package/dist/typebox/oauth.tb.d.ts.map +0 -1
  133. package/dist/typebox/oauth.tb.js +0 -16
  134. package/dist/typebox/oauth.tb.js.map +0 -1
  135. package/dist/typebox/organization.stripped.tb.d.ts +0 -6
  136. package/dist/typebox/organization.stripped.tb.d.ts.map +0 -1
  137. package/dist/typebox/organization.stripped.tb.js +0 -7
  138. package/dist/typebox/organization.stripped.tb.js.map +0 -1
  139. package/dist/typebox/organization.tb.d.ts +0 -10
  140. package/dist/typebox/organization.tb.d.ts.map +0 -1
  141. package/dist/typebox/organization.tb.js +0 -8
  142. package/dist/typebox/organization.tb.js.map +0 -1
  143. package/dist/typebox/scheduling.tb.d.ts +0 -107
  144. package/dist/typebox/scheduling.tb.d.ts.map +0 -1
  145. package/dist/typebox/scheduling.tb.js +0 -105
  146. package/dist/typebox/scheduling.tb.js.map +0 -1
  147. package/dist/typebox/timeString.tb.d.ts +0 -3
  148. package/dist/typebox/timeString.tb.d.ts.map +0 -1
  149. package/dist/typebox/timeString.tb.js +0 -7
  150. package/dist/typebox/timeString.tb.js.map +0 -1
  151. package/dist/typebox/user.stripped.tb.d.ts +0 -5
  152. package/dist/typebox/user.stripped.tb.d.ts.map +0 -1
  153. package/dist/typebox/user.stripped.tb.js +0 -6
  154. package/dist/typebox/user.stripped.tb.js.map +0 -1
  155. package/dist/typebox/user.tb.d.ts +0 -19
  156. package/dist/typebox/user.tb.d.ts.map +0 -1
  157. package/dist/typebox/user.tb.js +0 -10
  158. package/dist/typebox/user.tb.js.map +0 -1
  159. package/dist/types/calendar.types.d.ts +0 -124
  160. package/dist/types/calendar.types.d.ts.map +0 -1
  161. package/dist/types/calendar.types.js +0 -27
  162. package/dist/types/calendar.types.js.map +0 -1
  163. package/dist/types/internal.types.d.ts +0 -7
  164. package/dist/types/internal.types.d.ts.map +0 -1
  165. package/dist/types/internal.types.js +0 -2
  166. package/dist/types/internal.types.js.map +0 -1
  167. package/dist/types/oauth.types.d.ts +0 -22
  168. package/dist/types/oauth.types.d.ts.map +0 -1
  169. package/dist/types/oauth.types.js +0 -2
  170. package/dist/types/oauth.types.js.map +0 -1
  171. package/dist/types/organization.types.d.ts +0 -18
  172. package/dist/types/organization.types.d.ts.map +0 -1
  173. package/dist/types/organization.types.js +0 -2
  174. package/dist/types/organization.types.js.map +0 -1
  175. package/dist/types/scheduling.types.d.ts +0 -50
  176. package/dist/types/scheduling.types.d.ts.map +0 -1
  177. package/dist/types/scheduling.types.js +0 -2
  178. package/dist/types/scheduling.types.js.map +0 -1
  179. package/dist/types/user.types.d.ts +0 -11
  180. package/dist/types/user.types.d.ts.map +0 -1
  181. package/dist/types/user.types.js +0 -2
  182. package/dist/types/user.types.js.map +0 -1
  183. package/dist/utils/fetch.helper.d.ts +0 -62
  184. package/dist/utils/fetch.helper.d.ts.map +0 -1
  185. package/dist/utils/fetch.helper.js +0 -116
  186. package/dist/utils/fetch.helper.js.map +0 -1
  187. package/dist/utils/fetchErrorHandler.d.ts +0 -22
  188. package/dist/utils/fetchErrorHandler.d.ts.map +0 -1
  189. package/dist/utils/fetchErrorHandler.js +0 -35
  190. package/dist/utils/fetchErrorHandler.js.map +0 -1
  191. package/dist/utils/includes.helper.d.ts +0 -4
  192. package/dist/utils/includes.helper.d.ts.map +0 -1
  193. package/dist/utils/includes.helper.js +0 -10
  194. package/dist/utils/includes.helper.js.map +0 -1
  195. package/dist/utils/omit.d.ts +0 -2
  196. package/dist/utils/omit.d.ts.map +0 -1
  197. package/dist/utils/omit.js +0 -4
  198. package/dist/utils/omit.js.map +0 -1
@@ -1,132 +1,206 @@
1
- import { Type as T } from '@sinclair/typebox';
2
- import { Organization } from '../entities/organization.js';
3
- import { User } from '../entities/user.js';
4
- import { OrganizationAlreadyExistsError, OrganizationNotFoundError } from '../errors.js';
5
- import { organizationSchema } from '../typebox/organization.tb.js';
6
- import { userSchema } from '../typebox/user.tb.js';
7
- import { errorHandler } from '../utils/fetch.helper.js';
1
+ import * as sdk from '../client/sdk.gen';
2
+ import { unwrapResponse } from '../utils/response';
3
+ /**
4
+ * Organizations Service
5
+ *
6
+ * Provides methods for managing organizations
7
+ */
8
8
  export class OrganizationsService {
9
- fetchHelper;
10
- constructor(fetchHelper) {
11
- this.fetchHelper = fetchHelper;
9
+ client;
10
+ constructor(client) {
11
+ this.client = client;
12
12
  }
13
13
  /**
14
14
  * List all organizations
15
- * @returns An array of organizations
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const orgs = await recal.organizations.list()
19
+ * ```
16
20
  */
17
- async listAll() {
18
- return this.fetchHelper
19
- .get('/v1/organizations', {
20
- schema: T.Array(organizationSchema),
21
- })
22
- .then((organizations) => organizations.map((org) => Organization.fromJson(org, this.fetchHelper)));
23
- }
24
- async listAllFromUser(userId) {
25
- return this.fetchHelper
26
- .get(`/v1/users/${userId}/organizations`, {
27
- schema: T.Array(organizationSchema),
28
- })
29
- .catch(errorHandler([{ code: 404, result: null }]))
30
- .then((orgs) => (orgs ? orgs.map((org) => Organization.fromJson(org, this.fetchHelper)) : null));
21
+ async list() {
22
+ const response = await sdk.getV1Organizations({ client: this.client });
23
+ return unwrapResponse(response);
31
24
  }
32
25
  /**
33
26
  * Get an organization by slug
34
- * @param slug The slug of the organization
35
- * @returns The organization
27
+ *
28
+ * @param slug - The organization slug
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * const org = await recal.organizations.get('acme-corp')
33
+ * ```
36
34
  */
37
35
  async get(slug) {
38
- return this.fetchHelper
39
- .get(`/v1/organizations/${slug}`, {
40
- schema: organizationSchema,
41
- })
42
- .catch(errorHandler([{ code: 404, error: new OrganizationNotFoundError(slug) }]))
43
- .then((org) => Organization.fromJson(org, this.fetchHelper));
36
+ const response = await sdk.getV1OrganizationsOrgSlug({
37
+ path: { orgSlug: slug },
38
+ client: this.client,
39
+ });
40
+ return unwrapResponse(response);
44
41
  }
45
42
  /**
46
- * Create an organization
47
- * @param slug The slug of the organization
48
- * @param name The name of the organization
49
- * @returns The created organization
43
+ * Create a new organization
44
+ *
45
+ * @param slug - The organization slug
46
+ * @param name - The organization name
47
+ *
48
+ * @example
49
+ * ```typescript
50
+ * const org = await recal.organizations.create('acme-corp', 'Acme Corporation')
51
+ * ```
50
52
  */
51
53
  async create(slug, name) {
52
- return this.fetchHelper
53
- .post(`/v1/organizations`, {
54
+ const response = await sdk.postV1Organizations({
54
55
  body: { slug, name },
55
- schema: organizationSchema,
56
- })
57
- .catch(errorHandler([{ code: 409, error: new OrganizationAlreadyExistsError(slug) }]))
58
- .then((org) => Organization.fromJson(org, this.fetchHelper));
56
+ client: this.client,
57
+ });
58
+ return unwrapResponse(response);
59
59
  }
60
60
  /**
61
61
  * Update an organization
62
- * @param slug The slug of the organization
63
- * @param updatedOrganizationData The updated organization data
64
- * @returns The updated organization
62
+ *
63
+ * @param slug - The organization slug
64
+ * @param data - Updated organization data
65
+ *
66
+ * @example
67
+ * ```typescript
68
+ * const org = await recal.organizations.update('acme-corp', {
69
+ * slug: 'acme-corp',
70
+ * name: 'Acme Corp (Updated)'
71
+ * })
72
+ * ```
65
73
  */
66
- async update(slug, updatedOrganizationData) {
67
- return this.fetchHelper
68
- .put(`/v1/organizations/${slug}`, {
69
- body: updatedOrganizationData,
70
- schema: organizationSchema,
71
- })
72
- .catch(errorHandler([
73
- { code: 404, error: new OrganizationNotFoundError(slug) },
74
- { code: 409, error: new OrganizationAlreadyExistsError(slug) },
75
- ]))
76
- .then((org) => Organization.fromJson(org, this.fetchHelper));
74
+ async update(slug, data) {
75
+ const response = await sdk.putV1OrganizationsOrgSlug({
76
+ path: { orgSlug: slug },
77
+ body: data,
78
+ client: this.client,
79
+ });
80
+ return unwrapResponse(response);
77
81
  }
78
82
  /**
79
83
  * Delete an organization
80
- * @param slug The slug of the organization
81
- * @returns The deleted organization
84
+ *
85
+ * @param slug - The organization slug
86
+ *
87
+ * @example
88
+ * ```typescript
89
+ * await recal.organizations.delete('acme-corp')
90
+ * ```
82
91
  */
83
92
  async delete(slug) {
84
- return this.fetchHelper
85
- .delete(`/v1/organizations/${slug}`, {
86
- schema: organizationSchema,
87
- })
88
- .catch(errorHandler([{ code: 404, error: new OrganizationNotFoundError(slug) }]))
89
- .then((org) => Organization.fromJson(org, this.fetchHelper));
93
+ const response = await sdk.deleteV1OrganizationsOrgSlug({
94
+ path: { orgSlug: slug },
95
+ client: this.client,
96
+ });
97
+ return unwrapResponse(response);
90
98
  }
91
99
  /**
92
- * Get the members of an organization
93
- * @param slug The slug of the organization
94
- * @returns The members of the organization
100
+ * Get all members of an organization
101
+ *
102
+ * @param slug - The organization slug
103
+ * @param options - Query options
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * const members = await recal.organizations.getMembers('acme-corp', {
108
+ * include: ['oauthConnections']
109
+ * })
110
+ * ```
95
111
  */
96
- async getMembers(slug) {
97
- return this.fetchHelper
98
- .get(`/v1/organizations/${slug}/members`, {
99
- schema: T.Array(userSchema),
100
- })
101
- .catch(errorHandler([{ code: 404, error: new OrganizationNotFoundError(slug) }]))
102
- .then((users) => users.map((user) => User.fromJson(user, this.fetchHelper)));
112
+ async getMembers(slug, options) {
113
+ const response = await sdk.getV1OrganizationsOrgSlugMembers({
114
+ path: { orgSlug: slug },
115
+ query: options,
116
+ client: this.client,
117
+ });
118
+ return unwrapResponse(response);
103
119
  }
104
120
  /**
105
121
  * Add members to an organization
106
- * @param slug The slug of the organization
107
- * @param userIds The IDs of the users to add
108
- * @returns The added users
122
+ *
123
+ * @param slug - The organization slug
124
+ * @param userIds - Array of user IDs to add
125
+ *
126
+ * @example
127
+ * ```typescript
128
+ * await recal.organizations.addMembers('acme-corp', ['user-1', 'user-2'])
129
+ * ```
109
130
  */
110
131
  async addMembers(slug, userIds) {
111
- return this.fetchHelper
112
- .post(`/v1/organizations/${slug}/members`, {
132
+ const response = await sdk.postV1OrganizationsOrgSlugMembers({
133
+ path: { orgSlug: slug },
113
134
  body: { userIds },
114
- })
115
- .catch(errorHandler([{ code: 404, error: new OrganizationNotFoundError(slug) }]));
135
+ client: this.client,
136
+ });
137
+ return unwrapResponse(response);
116
138
  }
117
139
  /**
118
140
  * Remove members from an organization
119
- * @param slug The slug of the organization
120
- * @param userIds The IDs of the users to remove
121
- * @returns Success message
141
+ *
142
+ * @param slug - The organization slug
143
+ * @param userIds - Array of user IDs to remove
144
+ *
145
+ * @example
146
+ * ```typescript
147
+ * await recal.organizations.removeMembers('acme-corp', ['user-1'])
148
+ * ```
122
149
  */
123
150
  async removeMembers(slug, userIds) {
124
- return this.fetchHelper
125
- .delete(`/v1/organizations/${slug}/members`, {
151
+ const response = await sdk.deleteV1OrganizationsOrgSlugMembers({
152
+ path: { orgSlug: slug },
126
153
  body: { userIds },
127
- schema: T.String(),
128
- })
129
- .catch(errorHandler([{ code: 404, error: new OrganizationNotFoundError(slug) }]));
154
+ client: this.client,
155
+ });
156
+ return unwrapResponse(response);
157
+ }
158
+ /**
159
+ * Get consolidated busy times for all users in an organization
160
+ *
161
+ * @param slug - The organization slug
162
+ * @param options - Query options with time range
163
+ *
164
+ * @example
165
+ * ```typescript
166
+ * const busy = await recal.organizations.getBusyTimes('acme-corp', {
167
+ * start: '2024-01-01T00:00:00Z',
168
+ * end: '2024-01-31T23:59:59Z',
169
+ * provider: 'google'
170
+ * })
171
+ * ```
172
+ */
173
+ async getBusyTimes(slug, options) {
174
+ const response = await sdk.getV1OrganizationsOrgSlugCalendarBusy({
175
+ path: { orgSlug: slug },
176
+ query: options,
177
+ client: this.client,
178
+ });
179
+ return unwrapResponse(response);
180
+ }
181
+ /**
182
+ * Get available time slots for all users in an organization
183
+ *
184
+ * @param slug - The organization slug
185
+ * @param options - Scheduling options
186
+ *
187
+ * @example
188
+ * ```typescript
189
+ * const slots = await recal.organizations.getScheduling('acme-corp', {
190
+ * start: '2024-01-15T00:00:00Z',
191
+ * end: '2024-01-19T23:59:59Z',
192
+ * slotDuration: '30',
193
+ * padding: '15'
194
+ * })
195
+ * ```
196
+ */
197
+ async getScheduling(slug, options) {
198
+ const response = await sdk.getV1OrganizationsOrgSlugScheduling({
199
+ path: { orgSlug: slug },
200
+ query: options,
201
+ client: this.client,
202
+ });
203
+ return unwrapResponse(response);
130
204
  }
131
205
  }
132
206
  //# sourceMappingURL=organizations.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"organizations.service.js","sourceRoot":"","sources":["../../src/services/organizations.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"organizations.service.js","sourceRoot":"","sources":["../../src/services/organizations.service.ts"],"names":[],"mappings":"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"}
@@ -1,68 +1,131 @@
1
- import type { OrgSchedulingOptions, OrgSchedulingResponse, Schedule, UserAdvancedSchedulingResponse, UserBulkSchedulingOptions, UserBulkSchedulingResponse, UserSchedulingAdvancedOptions, UserSchedulingBasicOptions, UserSchedulingResponse } from '../types/scheduling.types.js';
2
- import { type FetchHelper } from '../utils/fetch.helper.js';
1
+ import type { Client } from '../client/client';
2
+ import type { GetV1UsersUserIdSchedulingData, PostV1UsersSchedulingData, PostV1UsersUserIdSchedulingData } from '../client/types.gen';
3
+ /**
4
+ * Scheduling Service
5
+ *
6
+ * Provides methods for finding available time slots
7
+ */
3
8
  export declare class SchedulingService {
4
- private fetchHelper;
5
- constructor(fetchHelper: FetchHelper);
9
+ private client;
10
+ constructor(client: Client);
6
11
  /**
7
- * Get available time slots based on busy data with basic parameters
8
- * @param userId The ID of the user
9
- * @param startDate The start date for availability search
10
- * @param endDate The end date for availability search
11
- * @param options Scheduling options (all fields optional):
12
- * - provider: Calendar provider(s) to check (optional)
13
- * - padding: Minutes of padding between slots (optional)
14
- * - slotDuration: Duration of each slot in minutes (optional)
15
- * - earliestTimeEachDay: Earliest time each day (HH:mm format) (optional)
16
- * - latestTimeEachDay: Latest time each day (HH:mm format) (optional)
17
- * - timeZone: Time zone for the request (optional)
18
- * - maxOverlaps: Maximum number of overlaps allowed (optional)
19
- * @returns Available time slots with basic scheduling options
20
- */
21
- user(userId: string, startDate: Date, endDate: Date, options: UserSchedulingBasicOptions): Promise<UserSchedulingResponse>;
22
- /**
23
- * Get available time slots based on busy data with advanced parameters
24
- * @param userId The ID of the user
25
- * @param schedules Array of schedule rules defining availability windows
26
- * @param startDate The start date for availability search
27
- * @param endDate The end date for availability search
28
- * @param options Advanced scheduling options (all fields optional):
29
- * - provider: Calendar provider(s) to check (optional)
30
- * - padding: Minutes of padding between slots (optional)
31
- * - slotDuration: Duration of each slot in minutes (optional)
32
- * - timeZone: Time zone for the request (optional)
33
- * - maxOverlaps: Maximum number of overlaps allowed (optional)
34
- * @returns Available time slots with advanced scheduling options
12
+ * Get available time slots for a user (basic parameters)
13
+ *
14
+ * @param userId - The user ID
15
+ * @param options - Scheduling options
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const slots = await recal.scheduling.getSlots('user-123', {
20
+ * start: '2024-01-15T00:00:00Z',
21
+ * end: '2024-01-19T23:59:59Z',
22
+ * slotDuration: '30',
23
+ * padding: '15',
24
+ * provider: 'google'
25
+ * })
26
+ * ```
35
27
  */
36
- userAdvanced(userId: string, schedules: Schedule[], startDate: Date, endDate: Date, options: UserSchedulingAdvancedOptions): Promise<UserAdvancedSchedulingResponse>;
28
+ getSlots(userId: string, options: GetV1UsersUserIdSchedulingData['query']): Promise<{
29
+ availableSlots: Array<import("..").TimeRange>;
30
+ options: {
31
+ end: Date;
32
+ maxOverlaps: number;
33
+ padding: number;
34
+ slotDuration: number;
35
+ start: Date;
36
+ earliestTimeEachDay?: string;
37
+ latestTimeEachDay?: string;
38
+ };
39
+ }>;
37
40
  /**
41
+ * Get available time slots for a user (advanced with custom schedules)
38
42
  *
39
- * @param startDate The start date for availability search
40
- * @param endDate The end date for availability search
41
- * @param options User bulk scheduling options
42
- * - provider: Calendar provider(s) to check (optional)
43
- * - padding: Minutes of padding between slots (optional)
44
- * - slotDuration: Duration of each slot in minutes (optional)
45
- * - timeZone: Time zone for the request (optional)
46
- * - maxOverlaps: Maximum number of overlaps allowed (optional)
47
- * - users: Array of users with their schedules
48
- * @returns Available time slots for the users
43
+ * @param userId - The user ID
44
+ * @param options - Query scheduling options
45
+ * @param body - Custom schedules
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const slots = await recal.scheduling.getAdvancedSlots(
50
+ * 'user-123',
51
+ * {
52
+ * start: '2024-01-15T00:00:00Z',
53
+ * end: '2024-01-19T23:59:59Z',
54
+ * slotDuration: '60',
55
+ * padding: '10'
56
+ * },
57
+ * {
58
+ * schedules: [
59
+ * {
60
+ * days: ['monday', 'wednesday', 'friday'],
61
+ * start: '09:00',
62
+ * end: '17:00'
63
+ * }
64
+ * ]
65
+ * }
66
+ * )
67
+ * ```
49
68
  */
50
- userBulk(startDate: Date, endDate: Date, options: UserBulkSchedulingOptions): Promise<UserBulkSchedulingResponse>;
69
+ getAdvancedSlots(userId: string, options: PostV1UsersUserIdSchedulingData['query'], body?: PostV1UsersUserIdSchedulingData['body']): Promise<{
70
+ availableSlots: Array<import("..").TimeRange>;
71
+ options: {
72
+ end: Date;
73
+ maxOverlaps: number;
74
+ padding: number;
75
+ slotDuration: number;
76
+ start: Date;
77
+ earliestTimeEachDay?: string;
78
+ latestTimeEachDay?: string;
79
+ };
80
+ }>;
51
81
  /**
52
- * Get available time slots based on busy data for an organization
53
- * @param orgSlug The slug of the organization
54
- * @param startDate The start date for availability search
55
- * @param endDate The end date for availability search
56
- * @param options Organization scheduling options (all fields optional):
57
- * - provider: Calendar provider(s) to check (optional)
58
- * - padding: Minutes of padding between slots (optional)
59
- * - slotDuration: Duration of each slot in minutes (optional)
60
- * - earliestTimeEachDay: Earliest time each day (HH:mm format) (optional)
61
- * - latestTimeEachDay: Latest time each day (HH:mm format) (optional)
62
- * - timeZone: Time zone for the request (optional)
63
- * - maxOverlaps: Maximum number of overlaps allowed (optional)
64
- * @returns Available time slots for the organization
82
+ * Get available time slots for multiple users
83
+ *
84
+ * @param options - Query scheduling options
85
+ * @param users - Array of users with optional schedules
86
+ *
87
+ * @example
88
+ * ```typescript
89
+ * const slots = await recal.scheduling.getMultiUserSlots(
90
+ * {
91
+ * start: '2024-01-15T00:00:00Z',
92
+ * end: '2024-01-19T23:59:59Z',
93
+ * slotDuration: '60',
94
+ * padding: '10'
95
+ * },
96
+ * {
97
+ * users: [
98
+ * {
99
+ * id: 'user-1',
100
+ * schedules: [{ days: ['monday'], start: '09:00', end: '17:00' }]
101
+ * },
102
+ * { id: 'user-2' }
103
+ * ]
104
+ * }
105
+ * )
106
+ * ```
65
107
  */
66
- organization(orgSlug: string, startDate: Date, endDate: Date, options: OrgSchedulingOptions): Promise<OrgSchedulingResponse>;
108
+ getMultiUserSlots(options: PostV1UsersSchedulingData['query'], body?: PostV1UsersSchedulingData['body']): Promise<({
109
+ availableSlots: Array<import("..").TimeRange>;
110
+ options: {
111
+ end: Date;
112
+ maxOverlaps: number;
113
+ padding: number;
114
+ slotDuration: number;
115
+ start: Date;
116
+ earliestTimeEachDay?: string;
117
+ latestTimeEachDay?: string;
118
+ };
119
+ userId: string;
120
+ calendarIds?: Array<string>;
121
+ schedules?: Array<{
122
+ days: Array<"friday" | "monday" | "saturday" | "sunday" | "thursday" | "tuesday" | "wednesday">;
123
+ end: string;
124
+ start: string;
125
+ }>;
126
+ } | {
127
+ error: string;
128
+ userId: string;
129
+ })[]>;
67
130
  }
68
131
  //# sourceMappingURL=scheduling.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scheduling.service.d.ts","sourceRoot":"","sources":["../../src/services/scheduling.service.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACR,oBAAoB,EACpB,qBAAqB,EACrB,QAAQ,EACR,8BAA8B,EAC9B,yBAAyB,EACzB,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACzB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAGxE,qBAAa,iBAAiB;IACd,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,WAAW;IAE5C;;;;;;;;;;;;;;OAcG;IACU,IAAI,CACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,IAAI,EACf,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,0BAA0B,GACpC,OAAO,CAAC,sBAAsB,CAAC;IA0BlC;;;;;;;;;;;;;OAaG;IACU,YAAY,CACrB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,QAAQ,EAAE,EACrB,SAAS,EAAE,IAAI,EACf,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,6BAA6B,GACvC,OAAO,CAAC,8BAA8B,CAAC;IA2B1C;;;;;;;;;;;;OAYG;IACU,QAAQ,CACjB,SAAS,EAAE,IAAI,EACf,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,yBAAyB,GACnC,OAAO,CAAC,0BAA0B,CAAC;IAiBtC;;;;;;;;;;;;;;OAcG;IACU,YAAY,CACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,IAAI,EACf,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,qBAAqB,CAAC;CAkCpC"}
1
+ {"version":3,"file":"scheduling.service.d.ts","sourceRoot":"","sources":["../../src/services/scheduling.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAE9C,OAAO,KAAK,EACR,8BAA8B,EAC9B,yBAAyB,EACzB,+BAA+B,EAClC,MAAM,qBAAqB,CAAA;AAG5B;;;;GAIG;AACH,qBAAa,iBAAiB;IACd,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAElC;;;;;;;;;;;;;;;;OAgBG;IACG,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,8BAA8B,CAAC,OAAO,CAAC;;;;;;;;+BAwF++pC,CAAC;6BAA0K,CAAC;;;IA/E1uqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,gBAAgB,CAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,+BAA+B,CAAC,OAAO,CAAC,EACjD,IAAI,CAAC,EAAE,+BAA+B,CAAC,MAAM,CAAC;;;;;;;;+BA+C0zvC,CAAC;6BAA0K,CAAC;;;IApCxhwC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,iBAAiB,CAAC,OAAO,EAAE,yBAAyB,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC;;;;;;;;+BAS0y0C,CAAC;6BAA0K,CAAC;;;;;;;;;;;;;CADtk1C"}