@playaos/api-client 0.54.0 → 0.56.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.
- package/dist/index.d.ts +2240 -91
- package/dist/index.js +179 -13
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -225,7 +225,45 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
225
225
|
signal: opts.signal
|
|
226
226
|
};
|
|
227
227
|
}
|
|
228
|
+
publicBooking = {
|
|
229
|
+
details: (token, opts) => request(buildUrl(this.baseUrl, `/public/booking/${encodeURIComponent(token)}`), this.auth, opts?.signal),
|
|
230
|
+
slots: (token, opts) => request(buildUrl(this.baseUrl, `/public/booking/${encodeURIComponent(token)}/slots`), this.auth, opts?.signal),
|
|
231
|
+
book: (token, payload, opts) => post(buildUrl(this.baseUrl, `/public/booking/${encodeURIComponent(token)}/book`), this.auth, payload, opts?.signal),
|
|
232
|
+
cancel: (token, payload, opts) => post(buildUrl(this.baseUrl, `/public/booking/${encodeURIComponent(token)}/cancel`), this.auth, payload, opts?.signal)
|
|
233
|
+
};
|
|
234
|
+
campSettings = {
|
|
235
|
+
catalog: (opts) => request(buildUrl(this.baseUrl, "/admin/givebutter-catalog"), this.auth, opts?.signal),
|
|
236
|
+
catalogOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/givebutter-catalog"), this.auth, payload, opts?.signal),
|
|
237
|
+
widgets: (opts) => request(buildUrl(this.baseUrl, "/admin/givebutter-widgets"), this.auth, opts?.signal),
|
|
238
|
+
widgetOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/givebutter-widgets"), this.auth, payload, opts?.signal),
|
|
239
|
+
admin: (opts) => request(buildUrl(this.baseUrl, "/admin/camp-settings"), this.auth, opts?.signal),
|
|
240
|
+
update: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/camp-settings"), this.auth, payload, opts?.signal)
|
|
241
|
+
};
|
|
242
|
+
scheduling = {
|
|
243
|
+
booking: (id, opts) => request(buildUrl(this.baseUrl, `/admin/scheduling/bookings/${encodeURIComponent(id)}`), this.auth, opts?.signal),
|
|
244
|
+
adminSettings: (opts) => request(buildUrl(this.baseUrl, "/admin/scheduling/settings"), this.auth, opts?.signal),
|
|
245
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/scheduling/settings"), this.auth, payload, opts?.signal),
|
|
246
|
+
feed: (interviewerId, token, opts) => request(buildUrl(this.baseUrl, `/scheduling/feed/${encodeURIComponent(interviewerId)}`, { token }), this.auth, opts?.signal)
|
|
247
|
+
};
|
|
228
248
|
members = {
|
|
249
|
+
adminExport: (params, opts) => request(buildUrl(this.baseUrl, "/members/admin/export", params), this.auth, opts?.signal),
|
|
250
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/members/admin/operation"), this.auth, payload, opts?.signal),
|
|
251
|
+
adminImportOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/members/admin/import-operation"), this.auth, payload, opts?.signal),
|
|
252
|
+
adminDetail: (id, params, opts) => request(buildUrl(this.baseUrl, `/members/admin/${encodeURIComponent(id)}/detail`, params), this.auth, opts?.signal),
|
|
253
|
+
adminHistory: (id, opts) => request(buildUrl(this.baseUrl, `/members/admin/${encodeURIComponent(id)}/history`), this.auth, opts?.signal),
|
|
254
|
+
selfProfile: (params, opts) => request(buildUrl(this.baseUrl, "/members/me/profile", params), this.auth, opts?.signal),
|
|
255
|
+
updateSelfProfile: (payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, "/members/me/profile"), this.auth, payload, opts?.signal),
|
|
256
|
+
referrers: (params, opts) => request(buildUrl(this.baseUrl, "/members/me/referrers", params), this.auth, opts?.signal),
|
|
257
|
+
referrer: (id, opts) => request(buildUrl(this.baseUrl, `/members/me/referrers/${encodeURIComponent(id)}`), this.auth, opts?.signal),
|
|
258
|
+
getPushPreferences: (opts) => request(buildUrl(this.baseUrl, "/members/me/push-preferences"), this.auth, opts?.signal),
|
|
259
|
+
updatePushPreferences: (payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, "/members/me/push-preferences"), this.auth, payload, opts?.signal),
|
|
260
|
+
adminPhotoDownloadUrl: (id, params, opts) => request(buildUrl(this.baseUrl, `/members/${encodeURIComponent(id)}/photo/download-url`, { original: params?.original === void 0 ? void 0 : String(params.original) }), this.auth, opts?.signal),
|
|
261
|
+
adminPhotoUploadUrl: (id, payload, opts) => post(buildUrl(this.baseUrl, `/members/${encodeURIComponent(id)}/photo/upload-url`), this.auth, payload, opts?.signal),
|
|
262
|
+
adminSetPhoto: (id, payload, opts) => post(buildUrl(this.baseUrl, `/members/${encodeURIComponent(id)}/photo`), this.auth, payload, opts?.signal),
|
|
263
|
+
adminDeletePhoto: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/members/${encodeURIComponent(id)}/photo`), this.auth, {}, opts?.signal),
|
|
264
|
+
updateOnboarding: (payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, "/members/me/onboarding"), this.auth, payload, opts?.signal),
|
|
265
|
+
bootstrap: (opts) => request(buildUrl(this.baseUrl, "/members/me/bootstrap"), this.auth, opts?.signal),
|
|
266
|
+
dashboard: (opts) => request(buildUrl(this.baseUrl, "/members/me/dashboard"), this.auth, opts?.signal),
|
|
229
267
|
/** Presigned profile-photo upload (PLA-1263). PUT the bytes, then setPhoto. */
|
|
230
268
|
createPhotoUploadUrl: (payload, opts) => post(buildUrl(this.baseUrl, "/members/me/photo/upload-url"), this.auth, payload, opts?.signal),
|
|
231
269
|
setPhoto: (payload, opts) => post(buildUrl(this.baseUrl, "/members/me/photo"), this.auth, payload, opts?.signal),
|
|
@@ -269,6 +307,7 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
269
307
|
};
|
|
270
308
|
/** Summer-camp events + the acting member's RSVP (PLA-1270). */
|
|
271
309
|
summerCamp = {
|
|
310
|
+
listAttendees: (eventId, opts) => request(buildUrl(this.baseUrl, `/summer-camp/events/${encodeURIComponent(eventId)}/attendees`), this.auth, opts?.signal),
|
|
272
311
|
listEvents: (opts) => request(buildUrl(this.baseUrl, "/summer-camp/events"), this.auth, opts?.signal),
|
|
273
312
|
getMyRsvp: (eventId, opts) => request(buildUrl(this.baseUrl, `/summer-camp/events/${encodeURIComponent(eventId)}/rsvp`), this.auth, opts?.signal).then((r) => r.rsvp),
|
|
274
313
|
rsvp: (eventId, payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, `/summer-camp/events/${encodeURIComponent(eventId)}/rsvp`), this.auth, payload, opts?.signal),
|
|
@@ -296,6 +335,12 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
296
335
|
};
|
|
297
336
|
dues = { list: (params, opts) => request(buildUrl(this.baseUrl, "/dues", params), this.auth, opts?.signal) };
|
|
298
337
|
shifts = {
|
|
338
|
+
memberAction: (payload, opts) => post(buildUrl(this.baseUrl, "/members/shifts/actions"), this.auth, payload, opts?.signal),
|
|
339
|
+
mobile: (params, opts) => request(buildUrl(this.baseUrl, "/members/shifts/mobile", params), this.auth, opts?.signal),
|
|
340
|
+
memberView: (opts) => request(buildUrl(this.baseUrl, "/members/shifts/view"), this.auth, opts?.signal),
|
|
341
|
+
adminWorkflow: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/shifts/workflow"), this.auth, payload, opts?.signal),
|
|
342
|
+
planner: (params, opts) => request(buildUrl(this.baseUrl, "/admin/shifts/planner", params), this.auth, opts?.signal),
|
|
343
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/shifts/operations"), this.auth, payload, opts?.signal),
|
|
299
344
|
adminTypes: (opts) => request(buildUrl(this.baseUrl, "/shifts/types"), this.auth, opts?.signal),
|
|
300
345
|
adminList: (params, opts) => request(buildUrl(this.baseUrl, "/shifts/admin", params), this.auth, opts?.signal),
|
|
301
346
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/shifts", params), this.auth, opts?.signal)
|
|
@@ -303,6 +348,12 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
303
348
|
org = { get: (opts) => request(buildUrl(this.baseUrl, "/org"), this.auth, opts?.signal) };
|
|
304
349
|
commitments = { list: (opts) => getEmbed(buildEmbedUrl(this.embedBaseUrl, "/commitments"), this.apiKey, opts?.signal) };
|
|
305
350
|
payments = {
|
|
351
|
+
adminPage: (params, opts) => request(buildUrl(this.baseUrl, "/admin/payments/page", params), this.auth, opts?.signal),
|
|
352
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/payments/operations"), this.auth, payload, opts?.signal),
|
|
353
|
+
unmatchedRefunds: (opts) => request(buildUrl(this.baseUrl, "/admin/payments/unmatched-refunds"), this.auth, opts?.signal),
|
|
354
|
+
memberPayments: (id, opts) => request(buildUrl(this.baseUrl, `/admin/payments/member/${encodeURIComponent(id)}`), this.auth, opts?.signal),
|
|
355
|
+
adminSummary: (opts) => request(buildUrl(this.baseUrl, "/admin/payments/summary"), this.auth, opts?.signal),
|
|
356
|
+
exportMonarch: (params, opts) => request(buildUrl(this.baseUrl, "/admin/payments/export", params), this.auth, opts?.signal),
|
|
306
357
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/payments", params), this.auth, opts?.signal),
|
|
307
358
|
/** Requires a member token. `memberId` may be omitted by a non-admin (defaults to themselves); admins must pass it. */
|
|
308
359
|
page: (memberId, duesCollectionId, opts) => post(buildUrl(this.baseUrl, "/payments/page"), this.auth, {
|
|
@@ -326,6 +377,8 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
326
377
|
};
|
|
327
378
|
/** Bookkeeping reads (PLA-1345): camp-year list + ops-binder export preview. */
|
|
328
379
|
bookkeeping = {
|
|
380
|
+
syncGoogleSheets: (opts) => post(buildUrl(this.baseUrl, "/admin/bookkeeping/sheets/sync"), this.auth, void 0, opts?.signal),
|
|
381
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/bookkeeping/operations"), this.auth, payload, opts?.signal),
|
|
329
382
|
years: (opts) => request(buildUrl(this.baseUrl, "/bookkeeping/years"), this.auth, opts?.signal).then((r) => r.data),
|
|
330
383
|
exportPreview: (params, opts) => request(buildUrl(this.baseUrl, "/bookkeeping/export-preview", params), this.auth, opts?.signal)
|
|
331
384
|
};
|
|
@@ -335,11 +388,23 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
335
388
|
webhookLogs: (params, opts) => request(buildUrl(this.baseUrl, "/audit/webhook-logs", params), this.auth, opts?.signal)
|
|
336
389
|
};
|
|
337
390
|
notifications = {
|
|
391
|
+
dispatch: (payload, opts) => post(buildUrl(this.baseUrl, "/notifications/dispatch"), this.auth, payload, opts?.signal),
|
|
338
392
|
/** Set the acting member's notification high-water mark to now (PLA-1261). */
|
|
339
393
|
markSeen: (opts) => sendV1("PUT", buildUrl(this.baseUrl, "/notifications/seen"), this.auth, {}, opts?.signal),
|
|
340
394
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/notifications", params), this.auth, opts?.signal)
|
|
341
395
|
};
|
|
342
396
|
documents = {
|
|
397
|
+
memberPage: (params, opts) => request(buildUrl(this.baseUrl, "/members/documents/page", params), this.auth, opts?.signal),
|
|
398
|
+
create: (payload, opts) => post(buildUrl(this.baseUrl, "/documents"), this.auth, payload, opts?.signal),
|
|
399
|
+
update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/documents/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal),
|
|
400
|
+
delete: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/documents/${encodeURIComponent(id)}`), this.auth, {}, opts?.signal),
|
|
401
|
+
createUploadUrl: (payload, opts) => post(buildUrl(this.baseUrl, "/documents/upload-url"), this.auth, payload, opts?.signal),
|
|
402
|
+
sourceDownloadUrl: (payload, opts) => post(buildUrl(this.baseUrl, "/documents/source-download-url"), this.auth, payload, opts?.signal),
|
|
403
|
+
getSections: (id, opts) => request(buildUrl(this.baseUrl, `/documents/${encodeURIComponent(id)}/sections`), this.auth, opts?.signal),
|
|
404
|
+
saveSections: (id, payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, `/documents/${encodeURIComponent(id)}/sections`), this.auth, payload, opts?.signal),
|
|
405
|
+
renderContract: (id, opts) => request(buildUrl(this.baseUrl, `/documents/${encodeURIComponent(id)}/render`), this.auth, opts?.signal),
|
|
406
|
+
signatureDownloadUrl: (id, opts) => request(buildUrl(this.baseUrl, `/documents/signatures/${encodeURIComponent(id)}/download-url`), this.auth, opts?.signal),
|
|
407
|
+
deleteSignature: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/documents/signatures/${encodeURIComponent(id)}`), this.auth, {}, opts?.signal),
|
|
343
408
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/documents", params), this.auth, opts?.signal),
|
|
344
409
|
get: (id, opts) => request(buildUrl(this.baseUrl, `/documents/${encodeURIComponent(id)}`), this.auth, opts?.signal),
|
|
345
410
|
/** Admin member signature rows, optionally filtered to one document. */
|
|
@@ -350,6 +415,9 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
350
415
|
downloadUrl: (id, opts) => request(buildUrl(this.baseUrl, `/members/documents/${encodeURIComponent(id)}/download-url`), this.auth, opts?.signal)
|
|
351
416
|
};
|
|
352
417
|
meetings = {
|
|
418
|
+
/** Save the acting member's response; the date option must belong to this meeting. */
|
|
419
|
+
rsvp: (id, payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, `/meetings/${encodeURIComponent(id)}/rsvp`), this.auth, payload, opts?.signal),
|
|
420
|
+
cancelRsvp: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/meetings/${encodeURIComponent(id)}/rsvp`), this.auth, void 0, opts?.signal),
|
|
353
421
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/meetings", params), this.auth, opts?.signal),
|
|
354
422
|
get: (id, opts) => request(buildUrl(this.baseUrl, `/meetings/${encodeURIComponent(id)}`), this.auth, opts?.signal),
|
|
355
423
|
/** Create a meeting (PLA-1266). Admin-only; requires a member token. */
|
|
@@ -358,23 +426,48 @@ var PlayaOSClient = class PlayaOSClient {
|
|
|
358
426
|
archive: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/meetings/${encodeURIComponent(id)}`), this.auth, void 0, opts?.signal)
|
|
359
427
|
};
|
|
360
428
|
scholarships = {
|
|
429
|
+
adminPage: (params, opts) => request(buildUrl(this.baseUrl, "/scholarships/admin-page", params), this.auth, opts?.signal),
|
|
430
|
+
refresh: (id, opts) => post(buildUrl(this.baseUrl, `/scholarships/${encodeURIComponent(id)}/refresh`), this.auth, {}, opts?.signal),
|
|
431
|
+
stats: (params, opts) => request(buildUrl(this.baseUrl, "/scholarships/stats", params), this.auth, opts?.signal),
|
|
361
432
|
/** Create a scholarship (code + Givebutter sync). Admin-only (PLA-1266). */
|
|
362
433
|
create: (payload, opts) => post(buildUrl(this.baseUrl, "/scholarships"), this.auth, payload, opts?.signal),
|
|
363
434
|
/** Move a scholarship between assigned/used/expired. Admin-only (PLA-1266). */
|
|
364
|
-
updateStatus: (id, status, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/scholarships/${encodeURIComponent(id)}`), this.auth, {
|
|
435
|
+
updateStatus: (id, status, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/scholarships/${encodeURIComponent(id)}`), this.auth, {
|
|
436
|
+
status,
|
|
437
|
+
...opts?.providerManaged !== void 0 ? { providerManaged: opts.providerManaged } : {},
|
|
438
|
+
...opts?.verifyProvider !== void 0 ? { verifyProvider: opts.verifyProvider } : {}
|
|
439
|
+
}, opts?.signal),
|
|
365
440
|
/** Delete a scholarship (deactivates its code). Admin-only (PLA-1266). */
|
|
366
|
-
remove: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/scholarships/${encodeURIComponent(id)}
|
|
441
|
+
remove: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/scholarships/${encodeURIComponent(id)}`, { providerManaged: opts?.providerManaged }), this.auth, void 0, opts?.signal)
|
|
367
442
|
};
|
|
368
443
|
tickets = {
|
|
444
|
+
/** Admin upsert by member and camp year, including members with no existing tracking row. */
|
|
445
|
+
upsert: (memberId, year, payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, `/members/${encodeURIComponent(memberId)}/tickets/${year}`), this.auth, payload, opts?.signal),
|
|
369
446
|
/** Admin ticket-page projection; requires ticket, vehicle-pass, and member read scopes. */
|
|
370
447
|
adminList: (params, opts) => request(buildUrl(this.baseUrl, "/tickets/admin", params), this.auth, opts?.signal),
|
|
371
448
|
/** Update a member's ticket status/confirmation. Admin-only (PLA-1266). */
|
|
372
449
|
update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/tickets/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal)
|
|
373
450
|
};
|
|
374
|
-
vehiclePasses = {
|
|
375
|
-
|
|
376
|
-
|
|
451
|
+
vehiclePasses = {
|
|
452
|
+
/** Admin upsert by member and camp year, including members with no existing tracking row. */
|
|
453
|
+
upsert: (memberId, year, payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, `/members/${encodeURIComponent(memberId)}/vehicle-passes/${year}`), this.auth, payload, opts?.signal),
|
|
454
|
+
/** Update a member's vehicle-pass status. Admin-only (PLA-1266). */
|
|
455
|
+
update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/vehicle-passes/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal)
|
|
456
|
+
};
|
|
377
457
|
shelters = {
|
|
458
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/shelters/operations"), this.auth, payload, opts?.signal),
|
|
459
|
+
createForMember: (payload, opts) => post(buildUrl(this.baseUrl, "/members/me/shelters"), this.auth, payload, opts?.signal),
|
|
460
|
+
updateForMember: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/members/me/shelters/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal),
|
|
461
|
+
deleteForMember: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/members/me/shelters/${encodeURIComponent(id)}`), this.auth, {}, opts?.signal),
|
|
462
|
+
memberPage: (params, opts) => request(buildUrl(this.baseUrl, "/members/me/shelters", params), this.auth, opts?.signal),
|
|
463
|
+
searchMembers: (params, opts) => request(buildUrl(this.baseUrl, "/shelters/member-search", params), this.auth, opts?.signal),
|
|
464
|
+
requestJoin: (id, opts) => post(buildUrl(this.baseUrl, `/shelters/${encodeURIComponent(id)}/request-join`), this.auth, {}, opts?.signal),
|
|
465
|
+
inviteCandidates: (id, opts) => request(buildUrl(this.baseUrl, `/shelters/${encodeURIComponent(id)}/invite-candidates`), this.auth, opts?.signal),
|
|
466
|
+
previewJoinRequest: (token, opts) => request(buildUrl(this.baseUrl, "/shelters/join-requests/preview", { token }), this.auth, opts?.signal),
|
|
467
|
+
decideJoinRequest: (payload, opts) => post(buildUrl(this.baseUrl, "/shelters/join-requests/decision"), this.auth, payload, opts?.signal),
|
|
468
|
+
requestPayer: (payload, opts) => post(buildUrl(this.baseUrl, "/shelters/payer-requests"), this.auth, payload, opts?.signal),
|
|
469
|
+
pendingPayerRequests: (params, opts) => request(buildUrl(this.baseUrl, "/shelters/payer-requests", params), this.auth, opts?.signal),
|
|
470
|
+
resolvePayerRequests: (payload, opts) => post(buildUrl(this.baseUrl, "/shelters/payer-requests/resolve"), this.auth, payload, opts?.signal),
|
|
378
471
|
/** Admin-only shelter table/map projection; requires members:read and a member token. */
|
|
379
472
|
adminList: (params, opts) => request(buildUrl(this.baseUrl, "/shelters/admin", params), this.auth, opts?.signal),
|
|
380
473
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/shelters", params), this.auth, opts?.signal),
|
|
@@ -389,6 +482,10 @@ update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/vehicle-
|
|
|
389
482
|
respond: (assignmentId, accept, opts) => sendV1("PUT", buildUrl(this.baseUrl, `/shelter-assignments/${encodeURIComponent(assignmentId)}/response`), this.auth, { accept }, opts?.signal)
|
|
390
483
|
};
|
|
391
484
|
bikes = {
|
|
485
|
+
adminInterest: (params, opts) => request(buildUrl(this.baseUrl, "/admin/bikes/interest", params), this.auth, opts?.signal),
|
|
486
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/bikes/operations"), this.auth, payload, opts?.signal),
|
|
487
|
+
memberStatus: (params, opts) => request(buildUrl(this.baseUrl, "/members/me/bikes", params), this.auth, opts?.signal),
|
|
488
|
+
reserveForMember: (payload, opts) => post(buildUrl(this.baseUrl, "/members/me/bikes"), this.auth, payload, opts?.signal),
|
|
392
489
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/bikes", params), this.auth, opts?.signal),
|
|
393
490
|
get: (id, opts) => request(buildUrl(this.baseUrl, `/bikes/${encodeURIComponent(id)}`), this.auth, opts?.signal),
|
|
394
491
|
/** Admin-only, camp-owned inventory read; requires members:read and a member token. */
|
|
@@ -426,6 +523,11 @@ update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/vehicle-
|
|
|
426
523
|
interestedNotReserved: (opts) => request(buildUrl(this.baseUrl, "/bike-rentals/interested-not-reserved"), this.auth, opts?.signal)
|
|
427
524
|
};
|
|
428
525
|
tags = {
|
|
526
|
+
create: (payload, opts) => post(buildUrl(this.baseUrl, "/tags"), this.auth, payload, opts?.signal),
|
|
527
|
+
update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/tags/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal),
|
|
528
|
+
delete: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/tags/${encodeURIComponent(id)}`), this.auth, void 0, opts?.signal),
|
|
529
|
+
assign: (memberId, tagId, opts) => post(buildUrl(this.baseUrl, `/members/${encodeURIComponent(memberId)}/tags/${encodeURIComponent(tagId)}`), this.auth, {}, opts?.signal),
|
|
530
|
+
remove: (memberId, tagId, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/members/${encodeURIComponent(memberId)}/tags/${encodeURIComponent(tagId)}`), this.auth, void 0, opts?.signal),
|
|
429
531
|
list: (opts) => request(buildUrl(this.baseUrl, "/tags"), this.auth, opts?.signal),
|
|
430
532
|
/** Admin-only bulk read; requires a member-bound client. */
|
|
431
533
|
assignments: (opts) => request(buildUrl(this.baseUrl, "/tags/assignments"), this.auth, opts?.signal)
|
|
@@ -441,6 +543,17 @@ update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/vehicle-
|
|
|
441
543
|
* and 401 on an org key alone.
|
|
442
544
|
*/
|
|
443
545
|
packing = {
|
|
546
|
+
containers: {
|
|
547
|
+
list: (params, opts) => request(buildUrl(this.baseUrl, "/packing/containers", params), this.auth, opts?.signal),
|
|
548
|
+
create: (payload, opts) => post(buildUrl(this.baseUrl, "/packing/containers"), this.auth, payload, opts?.signal),
|
|
549
|
+
update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/packing/containers/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal),
|
|
550
|
+
remove: (id, params, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/packing/containers/${encodeURIComponent(id)}`, params), this.auth, void 0, opts?.signal)
|
|
551
|
+
},
|
|
552
|
+
placements: {
|
|
553
|
+
list: (params, opts) => request(buildUrl(this.baseUrl, "/packing/placements", params), this.auth, opts?.signal),
|
|
554
|
+
place: (payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, "/packing/placements"), this.auth, payload, opts?.signal),
|
|
555
|
+
unpack: (payload, opts) => sendV1("DELETE", buildUrl(this.baseUrl, "/packing/placements"), this.auth, payload, opts?.signal)
|
|
556
|
+
},
|
|
444
557
|
/** The resolved list: curated base + camp layer + personal layer (ADR-071). */
|
|
445
558
|
list: (params, opts) => request(buildUrl(this.baseUrl, "/packing", params), this.auth, opts?.signal),
|
|
446
559
|
/**
|
|
@@ -479,30 +592,65 @@ update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/vehicle-
|
|
|
479
592
|
/**
|
|
480
593
|
* SAP — Special Access Pass, for early/overnight vehicle arrival (PLA-1202).
|
|
481
594
|
* Admin/super_admin only; there is no member-facing SAP surface. Year is
|
|
482
|
-
*
|
|
483
|
-
* pass one.
|
|
595
|
+
* the selected year when supplied, otherwise the org's active camp year.
|
|
484
596
|
*/
|
|
485
597
|
sap = {
|
|
598
|
+
roster: (params, opts) => request(buildUrl(this.baseUrl, "/sap/roster", params), this.auth, opts?.signal),
|
|
486
599
|
allocation: {
|
|
487
|
-
get: (opts) => request(buildUrl(this.baseUrl, "/sap/allocation"), this.auth, opts?.signal),
|
|
600
|
+
get: (opts) => request(buildUrl(this.baseUrl, "/sap/allocation", { year: opts?.year }), this.auth, opts?.signal),
|
|
488
601
|
update: (payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, "/sap/allocation"), this.auth, payload, opts?.signal)
|
|
489
602
|
},
|
|
490
603
|
dayAllocations: {
|
|
491
|
-
|
|
604
|
+
update: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/sap/day-allocations/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal),
|
|
605
|
+
remove: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/sap/day-allocations/${encodeURIComponent(id)}`), this.auth, {}, opts?.signal),
|
|
606
|
+
list: (opts) => request(buildUrl(this.baseUrl, "/sap/day-allocations", { year: opts?.year }), this.auth, opts?.signal),
|
|
492
607
|
/** Upserts by (active year, accessDate); 409 on a cross-org date collision. */
|
|
493
608
|
upsert: (payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, "/sap/day-allocations"), this.auth, payload, opts?.signal)
|
|
494
609
|
},
|
|
495
610
|
assignments: {
|
|
496
|
-
list: (opts) => request(buildUrl(this.baseUrl, "/sap/assignments"), this.auth, opts?.signal),
|
|
611
|
+
list: (opts) => request(buildUrl(this.baseUrl, "/sap/assignments", { year: opts?.year }), this.auth, opts?.signal),
|
|
497
612
|
create: (payload, opts) => post(buildUrl(this.baseUrl, "/sap/assignments"), this.auth, payload, opts?.signal),
|
|
498
613
|
update: (payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, "/sap/assignments"), this.auth, payload, opts?.signal),
|
|
499
614
|
remove: (assignmentId, opts) => sendV1("DELETE", buildUrl(this.baseUrl, "/sap/assignments"), this.auth, { assignmentId }, opts?.signal)
|
|
500
615
|
}
|
|
501
616
|
};
|
|
502
|
-
importantDates = {
|
|
503
|
-
|
|
504
|
-
|
|
617
|
+
importantDates = {
|
|
618
|
+
adminList: (opts) => request(buildUrl(this.baseUrl, "/admin/important-dates"), this.auth, opts?.signal),
|
|
619
|
+
adminOperation: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/important-dates"), this.auth, payload, opts?.signal),
|
|
620
|
+
/** Visible camp dates (PLA-1268), optionally pinned to a year. */
|
|
621
|
+
list: (params, opts) => request(buildUrl(this.baseUrl, "/important-dates", params), this.auth, opts?.signal)
|
|
622
|
+
};
|
|
505
623
|
emails = {
|
|
624
|
+
recipients: (payload, opts) => post(buildUrl(this.baseUrl, "/email/recipients"), this.auth, payload, opts?.signal),
|
|
625
|
+
composerOptions: (params, opts) => request(buildUrl(this.baseUrl, "/email/composer-options", params), this.auth, opts?.signal),
|
|
626
|
+
broadcast: (payload, opts) => post(buildUrl(this.baseUrl, "/email/broadcasts"), this.auth, payload, opts?.signal),
|
|
627
|
+
history: (opts) => request(buildUrl(this.baseUrl, "/email/history"), this.auth, opts?.signal),
|
|
628
|
+
deliveryPage: (params, opts) => request(buildUrl(this.baseUrl, "/email/delivery", params), this.auth, opts?.signal),
|
|
629
|
+
/**
|
|
630
|
+
* Make one failed retry row due now; the retry executor sends it (nothing is sent by this call).
|
|
631
|
+
* Permanent failures are refused with 400.
|
|
632
|
+
*/
|
|
633
|
+
retryLog: (id, opts) => post(buildUrl(this.baseUrl, `/email/delivery/${encodeURIComponent(id)}/retry`), this.auth, {}, opts?.signal),
|
|
634
|
+
/** Run this camp's due retry rows through the retry executor now (about 30s budget). */
|
|
635
|
+
retryFailed: (opts) => post(buildUrl(this.baseUrl, "/email/delivery/retry"), this.auth, {}, opts?.signal),
|
|
636
|
+
dismissLog: (id, opts) => post(buildUrl(this.baseUrl, `/email/delivery/${encodeURIComponent(id)}/dismiss`), this.auth, {}, opts?.signal),
|
|
637
|
+
cmsPreview: (id, opts) => post(buildUrl(this.baseUrl, `/email/templates/${encodeURIComponent(id)}/cms-preview`), this.auth, {}, opts?.signal),
|
|
638
|
+
setupContacts: (opts) => post(buildUrl(this.baseUrl, "/email/contacts/setup"), this.auth, {}, opts?.signal),
|
|
639
|
+
/**
|
|
640
|
+
* Sync this camp's members into its own Resend account. Each call works for a bounded time; when
|
|
641
|
+
* it stops at that limit it returns `skipped: true` and a `cursor`. Pass that cursor back as
|
|
642
|
+
* `opts.cursor` to resume after the last processed member, and repeat until `cursor` is null
|
|
643
|
+
* (sync complete). `synced`/`failed` count the one call. Fails with 400 until
|
|
644
|
+
* {@link setupContacts} has run, or on an invalid cursor.
|
|
645
|
+
*/
|
|
646
|
+
syncContacts: (opts) => post(buildUrl(this.baseUrl, "/email/contacts/sync", { cursor: opts?.cursor ?? void 0 }), this.auth, {}, opts?.signal),
|
|
647
|
+
/**
|
|
648
|
+
* Release an interview invitation stuck behind an uncertain or abandoned delivery claim, so the
|
|
649
|
+
* next invite attempt sends again. Check the email provider first. Accepted deliveries are never
|
|
650
|
+
* released.
|
|
651
|
+
*/
|
|
652
|
+
releaseInvitationDelivery: (applicationId, opts) => post(buildUrl(this.baseUrl, `/email/delivery/applications/${encodeURIComponent(applicationId)}/release`), this.auth, {}, opts?.signal),
|
|
653
|
+
syncTemplates: (opts) => post(buildUrl(this.baseUrl, "/email/templates/sync"), this.auth, {}, opts?.signal),
|
|
506
654
|
/** Admin template registry (PLA-1265). */
|
|
507
655
|
listTemplates: (opts) => request(buildUrl(this.baseUrl, "/email/templates"), this.auth, opts?.signal).then((r) => r.data),
|
|
508
656
|
/** Render-only template preview, as HTML (PLA-1265). */
|
|
@@ -511,6 +659,9 @@ list: (params, opts) => request(buildUrl(this.baseUrl, "/important-dates", param
|
|
|
511
659
|
listRetries: (params, opts) => request(buildUrl(this.baseUrl, "/email/retries", params), this.auth, opts?.signal)
|
|
512
660
|
};
|
|
513
661
|
onboarding = {
|
|
662
|
+
createCustomItem: (payload, opts) => post(buildUrl(this.baseUrl, "/onboarding/custom-items"), this.auth, payload, opts?.signal),
|
|
663
|
+
updateCustomItem: (id, payload, opts) => sendV1("PATCH", buildUrl(this.baseUrl, `/onboarding/custom-items/${encodeURIComponent(id)}`), this.auth, payload, opts?.signal),
|
|
664
|
+
deleteCustomItem: (id, opts) => sendV1("DELETE", buildUrl(this.baseUrl, `/onboarding/custom-items/${encodeURIComponent(id)}`), this.auth, void 0, opts?.signal),
|
|
514
665
|
/** The camp's onboarding checklist template (PLA-1340 adds `priority`). */
|
|
515
666
|
checklist: (params, opts) => request(buildUrl(this.baseUrl, "/onboarding/checklist", params), this.auth, opts?.signal),
|
|
516
667
|
/** Per-member checklist completion; non-admins are pinned to themselves. */
|
|
@@ -521,7 +672,22 @@ list: (params, opts) => request(buildUrl(this.baseUrl, "/important-dates", param
|
|
|
521
672
|
setProgress: (itemId, payload, opts) => sendV1("PUT", buildUrl(this.baseUrl, `/onboarding/progress/${encodeURIComponent(itemId)}`), this.auth, payload, opts?.signal)
|
|
522
673
|
};
|
|
523
674
|
admin = {
|
|
675
|
+
accounts: {
|
|
676
|
+
page: (opts) => request(buildUrl(this.baseUrl, "/admin/accounts"), this.auth, opts?.signal),
|
|
677
|
+
operate: (payload, opts) => post(buildUrl(this.baseUrl, "/admin/accounts"), this.auth, payload, opts?.signal)
|
|
678
|
+
},
|
|
679
|
+
webhooks: {
|
|
680
|
+
page: (opts) => request(buildUrl(this.baseUrl, "/admin/webhooks"), this.auth, opts?.signal),
|
|
681
|
+
candidates: (payer, opts) => post(buildUrl(this.baseUrl, "/admin/webhooks/candidates"), this.auth, payer, opts?.signal),
|
|
682
|
+
retry: (id, opts) => post(buildUrl(this.baseUrl, `/admin/webhooks/${encodeURIComponent(id)}/retry`), this.auth, void 0, opts?.signal),
|
|
683
|
+
match: (id, selection, opts) => post(buildUrl(this.baseUrl, `/admin/webhooks/${encodeURIComponent(id)}/match`), this.auth, selection, opts?.signal),
|
|
684
|
+
retryFailed: (opts) => post(buildUrl(this.baseUrl, "/admin/webhooks/retry-failed"), this.auth, void 0, opts?.signal)
|
|
685
|
+
},
|
|
524
686
|
applications: {
|
|
687
|
+
workflow: (id, payload, opts) => post(buildUrl(this.baseUrl, `/admin/applications/${encodeURIComponent(id)}/workflow`), this.auth, payload, opts?.signal),
|
|
688
|
+
workflowOptions: (params, opts) => request(buildUrl(this.baseUrl, "/admin/applications/workflow-options", params), this.auth, opts?.signal),
|
|
689
|
+
activity: (id, opts) => request(buildUrl(this.baseUrl, `/admin/applications/${encodeURIComponent(id)}/activity`), this.auth, opts?.signal),
|
|
690
|
+
sendMessage: (id, payload, opts) => post(buildUrl(this.baseUrl, `/admin/applications/${encodeURIComponent(id)}/messages`), this.auth, payload, opts?.signal),
|
|
525
691
|
/**
|
|
526
692
|
* Admin-scoped application list (PLA-1322): the member-safe shape plus the
|
|
527
693
|
* applicant phone, referrer name and admin-managed metadata, with the same
|