glitch-javascript-sdk 3.10.6 → 3.10.8

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 CHANGED
@@ -4731,6 +4731,8 @@ declare class Titles {
4731
4731
  * @param params Optional pagination parameters (?page=1&per_page=25)
4732
4732
  */
4733
4733
  static myWishlists<T>(params?: Record<string, any>): AxiosPromise<Response<T>>;
4734
+ /** Look up the current user's wishlist rows for up to 100 title UUIDs. */
4735
+ static lookupMyWishlists<T>(title_ids: string[]): AxiosPromise<Response<T>>;
4734
4736
  /**
4735
4737
  * Get Wishlist Intelligence statistics for a title.
4736
4738
  * Includes funnel data and predictive revenue forecasting.
@@ -6252,6 +6254,12 @@ interface GameShowScheduleTicketTypeInput {
6252
6254
  sort_order?: number;
6253
6255
  is_active?: boolean;
6254
6256
  }
6257
+ interface GameShowFestivalTicketTypeInput extends GameShowScheduleTicketTypeInput {
6258
+ scope: 'session' | 'festival' | 'track' | 'bundle';
6259
+ schedule_item_id?: string | null;
6260
+ track_block_id?: string | null;
6261
+ schedule_item_ids?: string[] | null;
6262
+ }
6255
6263
  interface GameShowScheduleTicketPurchaseInput {
6256
6264
  ticket_type_id: string;
6257
6265
  email: string;
@@ -6264,6 +6272,11 @@ interface GameShowScheduleTicketRefundInput {
6264
6272
  amount_cents: number;
6265
6273
  reason?: string;
6266
6274
  }
6275
+ interface GameShowTitleCandidateSearchParams {
6276
+ q: string;
6277
+ page?: number;
6278
+ per_page?: number;
6279
+ }
6267
6280
  declare class GameShows {
6268
6281
  /**
6269
6282
  * List all the GameShows.
@@ -6381,6 +6394,8 @@ declare class GameShows {
6381
6394
  * Add a title to a game show by admin.
6382
6395
  */
6383
6396
  static addTitle<T>(show_id: string, data: object, params?: Record<string, any>): AxiosPromise<Response<T>>;
6397
+ /** Search privacy-safe registered Glitch games that an organizer may attach to a festival. */
6398
+ static searchTitleCandidates<T>(show_id: string, params: GameShowTitleCandidateSearchParams): AxiosPromise<Response<T>>;
6384
6399
  /** Preview CSV/TSV/TXT/ZIP registrations without writing showcase data. */
6385
6400
  static previewExternalTitles<T>(show_id: string, file: File, data?: object, params?: Record<string, any>): AxiosPromise<Response<T>>;
6386
6401
  /** Import valid external registrations after organizer preview. */
@@ -6441,6 +6456,26 @@ declare class GameShows {
6441
6456
  * Delete a schedule item from a game show. Requires organizer permissions.
6442
6457
  */
6443
6458
  static deleteScheduleItem<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6459
+ /** List public festival, track, bundle, and single-session ticket products. */
6460
+ static listFestivalTicketTypes<T>(show_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6461
+ /** List all festival ticket products, including archived products, for organizers. */
6462
+ static manageFestivalTicketTypes<T>(show_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6463
+ /** Create a whole-festival pass, track pass, event bundle, or session ticket. */
6464
+ static createFestivalTicketType<T>(show_id: string, data: GameShowFestivalTicketTypeInput, params?: Record<string, any>): AxiosPromise<Response<T>>;
6465
+ /** Update the coverage, price, inventory, sales window, or visibility of a festival ticket product. */
6466
+ static updateFestivalTicketType<T>(show_id: string, ticket_type_id: string, data: Partial<GameShowFestivalTicketTypeInput>, params?: Record<string, any>): AxiosPromise<Response<T>>;
6467
+ /** Archive a festival ticket product while retaining purchase history. */
6468
+ static deleteFestivalTicketType<T>(show_id: string, ticket_type_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6469
+ /** Reserve inventory and create or confirm a festival-level ticket payment. */
6470
+ static purchaseFestivalTickets<T>(show_id: string, data: GameShowScheduleTicketPurchaseInput, params?: Record<string, any>): AxiosPromise<Response<T>>;
6471
+ /** Synchronize a festival-level ticket purchase after Stripe.js completes 3DS. */
6472
+ static confirmFestivalTicketPurchase<T>(show_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6473
+ /** Retrieve a token-protected receipt for any festival ticket scope. */
6474
+ static getFestivalTicketReceipt<T>(show_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6475
+ /** List purchasers across festival, track, bundle, and session ticket products. */
6476
+ static listFestivalTicketPurchases<T>(show_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6477
+ /** Issue a partial or full refund for a festival ticket purchase. */
6478
+ static refundFestivalTicketPurchase<T>(show_id: string, purchase_id: string, data: GameShowScheduleTicketRefundInput, params?: Record<string, any>): AxiosPromise<Response<T>>;
6444
6479
  /** List public early-bird, regular, and other ticket tiers for one session. */
6445
6480
  static listScheduleTicketTypes<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6446
6481
  /** List every ticket tier, including archived tiers, for festival organizers. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "glitch-javascript-sdk",
3
- "version": "3.10.6",
3
+ "version": "3.10.8",
4
4
  "description": "Javascript SDK for Glitch",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -16,6 +16,13 @@ export interface GameShowScheduleTicketTypeInput {
16
16
  is_active?: boolean;
17
17
  }
18
18
 
19
+ export interface GameShowFestivalTicketTypeInput extends GameShowScheduleTicketTypeInput {
20
+ scope: 'session' | 'festival' | 'track' | 'bundle';
21
+ schedule_item_id?: string | null;
22
+ track_block_id?: string | null;
23
+ schedule_item_ids?: string[] | null;
24
+ }
25
+
19
26
  export interface GameShowScheduleTicketPurchaseInput {
20
27
  ticket_type_id: string;
21
28
  email: string;
@@ -30,6 +37,25 @@ export interface GameShowScheduleTicketRefundInput {
30
37
  reason?: string;
31
38
  }
32
39
 
40
+ export interface GameShowTitleCandidate {
41
+ id: string;
42
+ name: string;
43
+ developer?: string | null;
44
+ publisher?: string | null;
45
+ short_description?: string | null;
46
+ image_main?: string | null;
47
+ image_banner?: string | null;
48
+ is_live: boolean;
49
+ already_in_showcase: boolean;
50
+ community?: { id: string; name: string } | null;
51
+ }
52
+
53
+ export interface GameShowTitleCandidateSearchParams {
54
+ q: string;
55
+ page?: number;
56
+ per_page?: number;
57
+ }
58
+
33
59
  class GameShows {
34
60
 
35
61
  /**
@@ -221,6 +247,11 @@ class GameShows {
221
247
  return Requests.processRoute(GameShowsRoute.routes.addTitle, data, { show_id: show_id }, params);
222
248
  }
223
249
 
250
+ /** Search privacy-safe registered Glitch games that an organizer may attach to a festival. */
251
+ public static searchTitleCandidates<T>(show_id: string, params: GameShowTitleCandidateSearchParams): AxiosPromise<Response<T>> {
252
+ return Requests.processRoute(GameShowsRoute.routes.searchTitleCandidates, {}, { show_id: show_id }, params);
253
+ }
254
+
224
255
  /** Preview CSV/TSV/TXT/ZIP registrations without writing showcase data. */
225
256
  public static previewExternalTitles<T>(show_id: string, file: File, data?: object, params?: Record<string, any>): AxiosPromise<Response<T>> {
226
257
  // Multipart helpers require the concrete URL before uploading.
@@ -335,6 +366,56 @@ class GameShows {
335
366
  return Requests.processRoute(GameShowsRoute.routes.deleteScheduleItem, {}, { show_id: show_id, schedule_id: schedule_id }, params);
336
367
  }
337
368
 
369
+ /** List public festival, track, bundle, and single-session ticket products. */
370
+ public static listFestivalTicketTypes<T>(show_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
371
+ return Requests.processRoute(GameShowsRoute.routes.listFestivalTicketTypes, {}, { show_id }, params);
372
+ }
373
+
374
+ /** List all festival ticket products, including archived products, for organizers. */
375
+ public static manageFestivalTicketTypes<T>(show_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
376
+ return Requests.processRoute(GameShowsRoute.routes.manageFestivalTicketTypes, {}, { show_id }, params);
377
+ }
378
+
379
+ /** Create a whole-festival pass, track pass, event bundle, or session ticket. */
380
+ public static createFestivalTicketType<T>(show_id: string, data: GameShowFestivalTicketTypeInput, params?: Record<string, any>): AxiosPromise<Response<T>> {
381
+ return Requests.processRoute(GameShowsRoute.routes.createFestivalTicketType, data, { show_id }, params);
382
+ }
383
+
384
+ /** Update the coverage, price, inventory, sales window, or visibility of a festival ticket product. */
385
+ public static updateFestivalTicketType<T>(show_id: string, ticket_type_id: string, data: Partial<GameShowFestivalTicketTypeInput>, params?: Record<string, any>): AxiosPromise<Response<T>> {
386
+ return Requests.processRoute(GameShowsRoute.routes.updateFestivalTicketType, data, { show_id, ticket_type_id }, params);
387
+ }
388
+
389
+ /** Archive a festival ticket product while retaining purchase history. */
390
+ public static deleteFestivalTicketType<T>(show_id: string, ticket_type_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
391
+ return Requests.processRoute(GameShowsRoute.routes.deleteFestivalTicketType, {}, { show_id, ticket_type_id }, params);
392
+ }
393
+
394
+ /** Reserve inventory and create or confirm a festival-level ticket payment. */
395
+ public static purchaseFestivalTickets<T>(show_id: string, data: GameShowScheduleTicketPurchaseInput, params?: Record<string, any>): AxiosPromise<Response<T>> {
396
+ return Requests.processRoute(GameShowsRoute.routes.purchaseFestivalTickets, data, { show_id }, params);
397
+ }
398
+
399
+ /** Synchronize a festival-level ticket purchase after Stripe.js completes 3DS. */
400
+ public static confirmFestivalTicketPurchase<T>(show_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
401
+ return Requests.processRoute(GameShowsRoute.routes.confirmFestivalTicketPurchase, { access_token }, { show_id, purchase_id }, params);
402
+ }
403
+
404
+ /** Retrieve a token-protected receipt for any festival ticket scope. */
405
+ public static getFestivalTicketReceipt<T>(show_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
406
+ return Requests.processRoute(GameShowsRoute.routes.getFestivalTicketReceipt, {}, { show_id, purchase_id }, { ...params, access_token });
407
+ }
408
+
409
+ /** List purchasers across festival, track, bundle, and session ticket products. */
410
+ public static listFestivalTicketPurchases<T>(show_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
411
+ return Requests.processRoute(GameShowsRoute.routes.listFestivalTicketPurchases, {}, { show_id }, params);
412
+ }
413
+
414
+ /** Issue a partial or full refund for a festival ticket purchase. */
415
+ public static refundFestivalTicketPurchase<T>(show_id: string, purchase_id: string, data: GameShowScheduleTicketRefundInput, params?: Record<string, any>): AxiosPromise<Response<T>> {
416
+ return Requests.processRoute(GameShowsRoute.routes.refundFestivalTicketPurchase, data, { show_id, purchase_id }, params);
417
+ }
418
+
338
419
  /** List public early-bird, regular, and other ticket tiers for one session. */
339
420
  public static listScheduleTicketTypes<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
340
421
  return Requests.processRoute(GameShowsRoute.routes.listScheduleTicketTypes, {}, { show_id, schedule_id }, params);
package/src/api/Titles.ts CHANGED
@@ -1148,6 +1148,11 @@ class Titles {
1148
1148
  return Requests.processRoute(TitlesRoute.routes.myWishlists, undefined, undefined, params);
1149
1149
  }
1150
1150
 
1151
+ /** Look up the current user's wishlist rows for up to 100 title UUIDs. */
1152
+ public static lookupMyWishlists<T>(title_ids: string[]): AxiosPromise<Response<T>> {
1153
+ return Requests.processRoute(TitlesRoute.routes.lookupMyWishlists, { title_ids });
1154
+ }
1155
+
1151
1156
  /**
1152
1157
  * Get Wishlist Intelligence statistics for a title.
1153
1158
  * Includes funnel data and predictive revenue forecasting.
@@ -26,6 +26,7 @@ class GameShowsRoute {
26
26
  registrationQuestionReports: { url: '/gameshows/{show_id}/registration-form/reports', method: HTTP_METHODS.GET },
27
27
  listTitles: { url: '/gameshows/{show_id}/titles', method: HTTP_METHODS.GET },
28
28
  addTitle: { url: '/gameshows/{show_id}/addTitle', method: HTTP_METHODS.POST },
29
+ searchTitleCandidates: { url: '/gameshows/{show_id}/title-candidates', method: HTTP_METHODS.GET },
29
30
  // External registration file preview/import endpoints.
30
31
  previewExternalTitles: { url: '/gameshows/{show_id}/external-titles/preview', method: HTTP_METHODS.POST },
31
32
  importExternalTitles: { url: '/gameshows/{show_id}/external-titles/import', method: HTTP_METHODS.POST },
@@ -48,6 +49,16 @@ class GameShowsRoute {
48
49
  createScheduleItem: { url: '/gameshows/{show_id}/schedule', method: HTTP_METHODS.POST },
49
50
  updateScheduleItem: { url: '/gameshows/{show_id}/schedule/{schedule_id}', method: HTTP_METHODS.PUT },
50
51
  deleteScheduleItem: { url: '/gameshows/{show_id}/schedule/{schedule_id}', method: HTTP_METHODS.DELETE },
52
+ listFestivalTicketTypes: { url: '/gameshows/{show_id}/ticket-types', method: HTTP_METHODS.GET },
53
+ manageFestivalTicketTypes: { url: '/gameshows/{show_id}/ticket-types/manage', method: HTTP_METHODS.GET },
54
+ createFestivalTicketType: { url: '/gameshows/{show_id}/ticket-types', method: HTTP_METHODS.POST },
55
+ updateFestivalTicketType: { url: '/gameshows/{show_id}/ticket-types/{ticket_type_id}', method: HTTP_METHODS.PUT },
56
+ deleteFestivalTicketType: { url: '/gameshows/{show_id}/ticket-types/{ticket_type_id}', method: HTTP_METHODS.DELETE },
57
+ purchaseFestivalTickets: { url: '/gameshows/{show_id}/ticket-purchases', method: HTTP_METHODS.POST },
58
+ confirmFestivalTicketPurchase: { url: '/gameshows/{show_id}/ticket-purchases/{purchase_id}/confirm', method: HTTP_METHODS.POST },
59
+ getFestivalTicketReceipt: { url: '/gameshows/{show_id}/ticket-purchases/{purchase_id}/receipt', method: HTTP_METHODS.GET },
60
+ listFestivalTicketPurchases: { url: '/gameshows/{show_id}/ticket-purchases', method: HTTP_METHODS.GET },
61
+ refundFestivalTicketPurchase: { url: '/gameshows/{show_id}/ticket-purchases/{purchase_id}/refund', method: HTTP_METHODS.POST },
51
62
  listScheduleTicketTypes: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types', method: HTTP_METHODS.GET },
52
63
  manageScheduleTicketTypes: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types/manage', method: HTTP_METHODS.GET },
53
64
  createScheduleTicketType: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types', method: HTTP_METHODS.POST },
@@ -225,6 +225,10 @@ class TitlesRoute {
225
225
  url: '/users/me/wishlists',
226
226
  method: HTTP_METHODS.GET
227
227
  },
228
+ lookupMyWishlists: {
229
+ url: '/users/me/wishlists/lookup',
230
+ method: HTTP_METHODS.POST
231
+ },
228
232
 
229
233
  wishlistMe: {
230
234
  url: '/titles/{title_id}/wishlist/me',