@ophelio/sdk 0.2.1 → 0.3.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.mjs CHANGED
@@ -315,11 +315,17 @@ var BillingOptionsResource = class extends APIResource {
315
315
  //#endregion
316
316
  //#region src/resources/customers.ts
317
317
  var CustomersResource = class extends APIResource {
318
+ /**
319
+ * Pass `view: 'full'` to include `membership_summary` on every customer.
320
+ */
318
321
  async list(params, options) {
319
322
  const response = await this.transport.request({
320
323
  method: "GET",
321
324
  path: "/api/v1/customers",
322
- query: pageQuery(params),
325
+ query: {
326
+ ...pageQuery(params),
327
+ ...params?.view ? { view: params.view } : {}
328
+ },
323
329
  retryable: true,
324
330
  options
325
331
  });
@@ -329,10 +335,14 @@ var CustomersResource = class extends APIResource {
329
335
  total_size: response.total_size
330
336
  };
331
337
  }
332
- get(id, options) {
338
+ /**
339
+ * Pass `view: 'full'` to include `membership_summary`.
340
+ */
341
+ get(id, params = {}, options) {
333
342
  return this.transport.request({
334
343
  method: "GET",
335
344
  path: `/api/v1/customers/${encodeURIComponent(id)}`,
345
+ query: params.view ? { view: params.view } : void 0,
336
346
  retryable: true,
337
347
  options
338
348
  });
@@ -534,6 +544,44 @@ var MembersResource = class extends APIResource {
534
544
  options
535
545
  })).entitlements;
536
546
  }
547
+ /**
548
+ * Updates a member's details. Accepts `name`, `date_of_birth` and `role`
549
+ * (a member-role code). To reassign the primary member use `setPrimary`;
550
+ * to rotate a card use `reissueCard`.
551
+ */
552
+ update(id, params, options) {
553
+ return this.transport.request({
554
+ method: "PATCH",
555
+ path: `/api/v1/members/${encodeURIComponent(id)}`,
556
+ body: params,
557
+ retryable: false,
558
+ options
559
+ });
560
+ }
561
+ /**
562
+ * Remove a member from its membership. Rejected if it is the last member
563
+ * or the sole primary — reassign the primary first with `setPrimary`.
564
+ */
565
+ remove(id, options) {
566
+ return this.transport.request({
567
+ method: "DELETE",
568
+ path: `/api/v1/members/${encodeURIComponent(id)}`,
569
+ retryable: false,
570
+ options
571
+ });
572
+ }
573
+ /**
574
+ * Make this member the primary of its membership, demoting the current
575
+ * primary atomically. A no-op if it is already primary.
576
+ */
577
+ setPrimary(id, options) {
578
+ return this.transport.request({
579
+ method: "POST",
580
+ path: `/api/v1/members/${encodeURIComponent(id)}/set-primary`,
581
+ retryable: false,
582
+ options
583
+ });
584
+ }
537
585
  /** Issue a fresh card id, invalidating the old card at the gate. */
538
586
  reissueCard(id, params = {}, options) {
539
587
  return this.transport.request({
@@ -656,6 +704,20 @@ var MembershipsResource = class extends APIResource {
656
704
  })).members;
657
705
  }
658
706
  /**
707
+ * Add a member to an existing membership, up to the plan's max party size.
708
+ * `role` is a member-role code; an optional `email` links the member to a
709
+ * customer record. Rejected on cancelled or expired memberships.
710
+ */
711
+ addMember(id, params, options) {
712
+ return this.transport.request({
713
+ method: "POST",
714
+ path: `/api/v1/memberships/${encodeURIComponent(id)}/members`,
715
+ body: params,
716
+ retryable: false,
717
+ options
718
+ });
719
+ }
720
+ /**
659
721
  * Open the next term. Rejected (409) while cancelled or cancellation-pending.
660
722
  * Idempotent: the Idempotency-Key is generated once per call (and reused
661
723
  * across the SDK's internal retries), so a retried renewal returns the
@@ -1217,7 +1279,9 @@ const WEBHOOK_EVENT_CODES = [
1217
1279
  "membership.downgraded",
1218
1280
  "scheduled_change.failed",
1219
1281
  "entitlement.used",
1282
+ "member.added",
1220
1283
  "member.card_issued",
1284
+ "member.updated",
1221
1285
  "member.removed",
1222
1286
  "plan.updated"
1223
1287
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ophelio/sdk",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "Official JavaScript / TypeScript SDK for the Ophel.io membership & entitlement API.",
5
5
  "license": "MIT",
6
6
  "author": "Ophel.io",