glitch-javascript-sdk 3.8.6 → 3.8.7

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
@@ -6204,6 +6204,30 @@ declare class Publications {
6204
6204
  static download<T>(data: object, params?: Record<string, any>): AxiosPromise<Response<T>>;
6205
6205
  }
6206
6206
 
6207
+ interface GameShowScheduleTicketTypeInput {
6208
+ name: string;
6209
+ description?: string | null;
6210
+ kind: 'early_bird' | 'regular' | 'other';
6211
+ price_cents: number;
6212
+ currency: string;
6213
+ quantity_available?: number | null;
6214
+ sales_start_at?: string | null;
6215
+ sales_end_at?: string | null;
6216
+ sort_order?: number;
6217
+ is_active?: boolean;
6218
+ }
6219
+ interface GameShowScheduleTicketPurchaseInput {
6220
+ ticket_type_id: string;
6221
+ email: string;
6222
+ first_name?: string;
6223
+ last_name?: string;
6224
+ quantity: number;
6225
+ payment_method_id?: string;
6226
+ }
6227
+ interface GameShowScheduleTicketRefundInput {
6228
+ amount_cents: number;
6229
+ reason?: string;
6230
+ }
6207
6231
  declare class GameShows {
6208
6232
  /**
6209
6233
  * List all the GameShows.
@@ -6345,6 +6369,8 @@ declare class GameShows {
6345
6369
  * List public page-builder blocks for a game show.
6346
6370
  */
6347
6371
  static listBlocks<T>(show_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6372
+ /** Paginate one Page Builder game section without downloading its full catalog. */
6373
+ static listBlockTitles<T>(show_id: string, block_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6348
6374
  /**
6349
6375
  * Create a page-builder block for a game show. Requires organizer permissions.
6350
6376
  */
@@ -6379,6 +6405,26 @@ declare class GameShows {
6379
6405
  * Delete a schedule item from a game show. Requires organizer permissions.
6380
6406
  */
6381
6407
  static deleteScheduleItem<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6408
+ /** List public early-bird, regular, and other ticket tiers for one session. */
6409
+ static listScheduleTicketTypes<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6410
+ /** List every ticket tier, including archived tiers, for festival organizers. */
6411
+ static manageScheduleTicketTypes<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6412
+ /** Create one session ticket price tier. */
6413
+ static createScheduleTicketType<T>(show_id: string, schedule_id: string, data: GameShowScheduleTicketTypeInput, params?: Record<string, any>): AxiosPromise<Response<T>>;
6414
+ /** Update ticket price, inventory, availability window, or publication state. */
6415
+ static updateScheduleTicketType<T>(show_id: string, schedule_id: string, ticket_type_id: string, data: Partial<GameShowScheduleTicketTypeInput>, params?: Record<string, any>): AxiosPromise<Response<T>>;
6416
+ /** Archive a ticket tier while retaining historical purchases. */
6417
+ static deleteScheduleTicketType<T>(show_id: string, schedule_id: string, ticket_type_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6418
+ /** Reserve inventory and create/confirm the session ticket PaymentIntent. */
6419
+ static purchaseScheduleTickets<T>(show_id: string, schedule_id: string, data: GameShowScheduleTicketPurchaseInput, params?: Record<string, any>): AxiosPromise<Response<T>>;
6420
+ /** Synchronize the same ticket PaymentIntent after Stripe.js completes 3DS. */
6421
+ static confirmScheduleTicketPurchase<T>(show_id: string, schedule_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6422
+ /** Retrieve a token-protected customer receipt. */
6423
+ static getScheduleTicketReceipt<T>(show_id: string, schedule_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6424
+ /** List ticket purchasers and refund state for festival organizers. */
6425
+ static listScheduleTicketPurchases<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
6426
+ /** Issue a partial or full destination-charge refund at organizer discretion. */
6427
+ static refundScheduleTicketPurchase<T>(show_id: string, schedule_id: string, purchase_id: string, data: GameShowScheduleTicketRefundInput, params?: Record<string, any>): AxiosPromise<Response<T>>;
6382
6428
  /**
6383
6429
  * Get the game show discovery queue.
6384
6430
  */
@@ -10305,7 +10351,36 @@ declare class Multiplayer {
10305
10351
 
10306
10352
  declare class ServerOperations {
10307
10353
  static listDeployments<T>(params?: Record<string, any>): AxiosPromise<Response<T>>;
10354
+ /**
10355
+ * Update the warm/spare/ceiling shape of a matchmaker managed instance pool.
10356
+ * Rejected for any build whose capacity model is not "pooled".
10357
+ */
10308
10358
  static updatePolicy<T>(title_id: string, build_id: string, data: object): AxiosPromise<Response<T>>;
10359
+ /**
10360
+ * Resize the Container App behind a build. Replica bounds are enforced
10361
+ * server side against the build's capacity model, so a singleton world
10362
+ * cannot be given a second replica. Pass acknowledge_outage when
10363
+ * deliberately setting min replicas to 0 on a singleton or replicated
10364
+ * deployment, which takes the game offline.
10365
+ */
10366
+ static updateContainerAppResources<T>(title_id: string, build_id: string, data: object): AxiosPromise<Response<T>>;
10367
+ /**
10368
+ * Declare how many server processes a build may run at once: singleton,
10369
+ * replicated, pooled, serverless, or static. Re-clamps the stored replica
10370
+ * shape and is honored by the next deployment.
10371
+ */
10372
+ static updateCapacityModel<T>(title_id: string, build_id: string, data: {
10373
+ capacity_model: string;
10374
+ }): AxiosPromise<Response<T>>;
10375
+ /**
10376
+ * Realms are how a singleton world scales: one process per realm, all
10377
+ * sharing a database. These are the site-admin views of the multiplayer
10378
+ * realm records.
10379
+ */
10380
+ static listRealms<T>(title_id: string, params?: Record<string, any>): AxiosPromise<Response<T>>;
10381
+ static createRealm<T>(title_id: string, data: object): AxiosPromise<Response<T>>;
10382
+ static updateRealm<T>(title_id: string, realm_id: string, data: object): AxiosPromise<Response<T>>;
10383
+ static deleteRealm<T>(title_id: string, realm_id: string): AxiosPromise<Response<T>>;
10309
10384
  }
10310
10385
 
10311
10386
  interface AgentRunRequest {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "glitch-javascript-sdk",
3
- "version": "3.8.6",
3
+ "version": "3.8.7",
4
4
  "description": "Javascript SDK for Glitch",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -13,7 +13,7 @@
13
13
  ],
14
14
  "types": "dist/index.d.ts",
15
15
  "scripts": {
16
- "test": "node scripts/test-game-advertising-routes.cjs && node scripts/test-discord-media-routes.cjs && node scripts/test-user-email-delivery-routes.cjs",
16
+ "test": "node scripts/test-game-advertising-routes.cjs && node scripts/test-discord-media-routes.cjs && node scripts/test-user-email-delivery-routes.cjs && node scripts/test-game-show-ticket-routes.cjs",
17
17
  "build": "rm -Rf dist && rollup -c --bundleConfigAsCjs",
18
18
  "build-docs": "rm -rf docs && typedoc --tsconfig tsconfig.json src/"
19
19
  },
@@ -3,6 +3,33 @@ import Requests from "../util/Requests";
3
3
  import Response from "../util/Response";
4
4
  import { AxiosPromise } from "axios";
5
5
 
6
+ export interface GameShowScheduleTicketTypeInput {
7
+ name: string;
8
+ description?: string | null;
9
+ kind: 'early_bird' | 'regular' | 'other';
10
+ price_cents: number;
11
+ currency: string;
12
+ quantity_available?: number | null;
13
+ sales_start_at?: string | null;
14
+ sales_end_at?: string | null;
15
+ sort_order?: number;
16
+ is_active?: boolean;
17
+ }
18
+
19
+ export interface GameShowScheduleTicketPurchaseInput {
20
+ ticket_type_id: string;
21
+ email: string;
22
+ first_name?: string;
23
+ last_name?: string;
24
+ quantity: number;
25
+ payment_method_id?: string;
26
+ }
27
+
28
+ export interface GameShowScheduleTicketRefundInput {
29
+ amount_cents: number;
30
+ reason?: string;
31
+ }
32
+
6
33
  class GameShows {
7
34
 
8
35
  /**
@@ -242,6 +269,11 @@ class GameShows {
242
269
  return Requests.processRoute(GameShowsRoute.routes.listBlocks, {}, { show_id: show_id }, params);
243
270
  }
244
271
 
272
+ /** Paginate one Page Builder game section without downloading its full catalog. */
273
+ public static listBlockTitles<T>(show_id: string, block_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
274
+ return Requests.processRoute(GameShowsRoute.routes.listBlockTitles, {}, { show_id, block_id }, params);
275
+ }
276
+
245
277
  /**
246
278
  * Create a page-builder block for a game show. Requires organizer permissions.
247
279
  */
@@ -303,6 +335,56 @@ class GameShows {
303
335
  return Requests.processRoute(GameShowsRoute.routes.deleteScheduleItem, {}, { show_id: show_id, schedule_id: schedule_id }, params);
304
336
  }
305
337
 
338
+ /** List public early-bird, regular, and other ticket tiers for one session. */
339
+ public static listScheduleTicketTypes<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
340
+ return Requests.processRoute(GameShowsRoute.routes.listScheduleTicketTypes, {}, { show_id, schedule_id }, params);
341
+ }
342
+
343
+ /** List every ticket tier, including archived tiers, for festival organizers. */
344
+ public static manageScheduleTicketTypes<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
345
+ return Requests.processRoute(GameShowsRoute.routes.manageScheduleTicketTypes, {}, { show_id, schedule_id }, params);
346
+ }
347
+
348
+ /** Create one session ticket price tier. */
349
+ public static createScheduleTicketType<T>(show_id: string, schedule_id: string, data: GameShowScheduleTicketTypeInput, params?: Record<string, any>): AxiosPromise<Response<T>> {
350
+ return Requests.processRoute(GameShowsRoute.routes.createScheduleTicketType, data, { show_id, schedule_id }, params);
351
+ }
352
+
353
+ /** Update ticket price, inventory, availability window, or publication state. */
354
+ public static updateScheduleTicketType<T>(show_id: string, schedule_id: string, ticket_type_id: string, data: Partial<GameShowScheduleTicketTypeInput>, params?: Record<string, any>): AxiosPromise<Response<T>> {
355
+ return Requests.processRoute(GameShowsRoute.routes.updateScheduleTicketType, data, { show_id, schedule_id, ticket_type_id }, params);
356
+ }
357
+
358
+ /** Archive a ticket tier while retaining historical purchases. */
359
+ public static deleteScheduleTicketType<T>(show_id: string, schedule_id: string, ticket_type_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
360
+ return Requests.processRoute(GameShowsRoute.routes.deleteScheduleTicketType, {}, { show_id, schedule_id, ticket_type_id }, params);
361
+ }
362
+
363
+ /** Reserve inventory and create/confirm the session ticket PaymentIntent. */
364
+ public static purchaseScheduleTickets<T>(show_id: string, schedule_id: string, data: GameShowScheduleTicketPurchaseInput, params?: Record<string, any>): AxiosPromise<Response<T>> {
365
+ return Requests.processRoute(GameShowsRoute.routes.purchaseScheduleTickets, data, { show_id, schedule_id }, params);
366
+ }
367
+
368
+ /** Synchronize the same ticket PaymentIntent after Stripe.js completes 3DS. */
369
+ public static confirmScheduleTicketPurchase<T>(show_id: string, schedule_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
370
+ return Requests.processRoute(GameShowsRoute.routes.confirmScheduleTicketPurchase, { access_token }, { show_id, schedule_id, purchase_id }, params);
371
+ }
372
+
373
+ /** Retrieve a token-protected customer receipt. */
374
+ public static getScheduleTicketReceipt<T>(show_id: string, schedule_id: string, purchase_id: string, access_token: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
375
+ return Requests.processRoute(GameShowsRoute.routes.getScheduleTicketReceipt, {}, { show_id, schedule_id, purchase_id }, { ...params, access_token });
376
+ }
377
+
378
+ /** List ticket purchasers and refund state for festival organizers. */
379
+ public static listScheduleTicketPurchases<T>(show_id: string, schedule_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
380
+ return Requests.processRoute(GameShowsRoute.routes.listScheduleTicketPurchases, {}, { show_id, schedule_id }, params);
381
+ }
382
+
383
+ /** Issue a partial or full destination-charge refund at organizer discretion. */
384
+ public static refundScheduleTicketPurchase<T>(show_id: string, schedule_id: string, purchase_id: string, data: GameShowScheduleTicketRefundInput, params?: Record<string, any>): AxiosPromise<Response<T>> {
385
+ return Requests.processRoute(GameShowsRoute.routes.refundScheduleTicketPurchase, data, { show_id, schedule_id, purchase_id }, params);
386
+ }
387
+
306
388
  /**
307
389
  * Get the game show discovery queue.
308
390
  */
@@ -8,9 +8,54 @@ class ServerOperations {
8
8
  return Requests.processRoute(ServerOperationsRoute.routes.listDeployments, undefined, undefined, params);
9
9
  }
10
10
 
11
+ /**
12
+ * Update the warm/spare/ceiling shape of a matchmaker managed instance pool.
13
+ * Rejected for any build whose capacity model is not "pooled".
14
+ */
11
15
  public static updatePolicy<T>(title_id: string, build_id: string, data: object): AxiosPromise<Response<T>> {
12
16
  return Requests.processRoute(ServerOperationsRoute.routes.updatePolicy, data, { title_id, build_id });
13
17
  }
18
+
19
+ /**
20
+ * Resize the Container App behind a build. Replica bounds are enforced
21
+ * server side against the build's capacity model, so a singleton world
22
+ * cannot be given a second replica. Pass acknowledge_outage when
23
+ * deliberately setting min replicas to 0 on a singleton or replicated
24
+ * deployment, which takes the game offline.
25
+ */
26
+ public static updateContainerAppResources<T>(title_id: string, build_id: string, data: object): AxiosPromise<Response<T>> {
27
+ return Requests.processRoute(ServerOperationsRoute.routes.updateContainerAppResources, data, { title_id, build_id });
28
+ }
29
+
30
+ /**
31
+ * Declare how many server processes a build may run at once: singleton,
32
+ * replicated, pooled, serverless, or static. Re-clamps the stored replica
33
+ * shape and is honored by the next deployment.
34
+ */
35
+ public static updateCapacityModel<T>(title_id: string, build_id: string, data: { capacity_model: string }): AxiosPromise<Response<T>> {
36
+ return Requests.processRoute(ServerOperationsRoute.routes.updateCapacityModel, data, { title_id, build_id });
37
+ }
38
+
39
+ /**
40
+ * Realms are how a singleton world scales: one process per realm, all
41
+ * sharing a database. These are the site-admin views of the multiplayer
42
+ * realm records.
43
+ */
44
+ public static listRealms<T>(title_id: string, params?: Record<string, any>): AxiosPromise<Response<T>> {
45
+ return Requests.processRoute(ServerOperationsRoute.routes.listRealms, undefined, { title_id }, params);
46
+ }
47
+
48
+ public static createRealm<T>(title_id: string, data: object): AxiosPromise<Response<T>> {
49
+ return Requests.processRoute(ServerOperationsRoute.routes.createRealm, data, { title_id });
50
+ }
51
+
52
+ public static updateRealm<T>(title_id: string, realm_id: string, data: object): AxiosPromise<Response<T>> {
53
+ return Requests.processRoute(ServerOperationsRoute.routes.updateRealm, data, { title_id, realm_id });
54
+ }
55
+
56
+ public static deleteRealm<T>(title_id: string, realm_id: string): AxiosPromise<Response<T>> {
57
+ return Requests.processRoute(ServerOperationsRoute.routes.deleteRealm, undefined, { title_id, realm_id });
58
+ }
14
59
  }
15
60
 
16
61
  export default ServerOperations;
@@ -38,6 +38,7 @@ class GameShowsRoute {
38
38
  updateTitle: { url: '/gameshows/{show_id}/titles/{title_id}', method: HTTP_METHODS.PUT },
39
39
  deleteTitle: { url: '/gameshows/{show_id}/titles/{title_id}', method: HTTP_METHODS.DELETE },
40
40
  listBlocks: { url: '/gameshows/{show_id}/blocks', method: HTTP_METHODS.GET },
41
+ listBlockTitles: { url: '/gameshows/{show_id}/blocks/{block_id}/titles', method: HTTP_METHODS.GET },
41
42
  createBlock: { url: '/gameshows/{show_id}/blocks', method: HTTP_METHODS.POST },
42
43
  updateBlock: { url: '/gameshows/{show_id}/blocks/{block_id}', method: HTTP_METHODS.PUT },
43
44
  deleteBlock: { url: '/gameshows/{show_id}/blocks/{block_id}', method: HTTP_METHODS.DELETE },
@@ -47,6 +48,16 @@ class GameShowsRoute {
47
48
  createScheduleItem: { url: '/gameshows/{show_id}/schedule', method: HTTP_METHODS.POST },
48
49
  updateScheduleItem: { url: '/gameshows/{show_id}/schedule/{schedule_id}', method: HTTP_METHODS.PUT },
49
50
  deleteScheduleItem: { url: '/gameshows/{show_id}/schedule/{schedule_id}', method: HTTP_METHODS.DELETE },
51
+ listScheduleTicketTypes: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types', method: HTTP_METHODS.GET },
52
+ manageScheduleTicketTypes: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types/manage', method: HTTP_METHODS.GET },
53
+ createScheduleTicketType: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types', method: HTTP_METHODS.POST },
54
+ updateScheduleTicketType: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types/{ticket_type_id}', method: HTTP_METHODS.PUT },
55
+ deleteScheduleTicketType: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-types/{ticket_type_id}', method: HTTP_METHODS.DELETE },
56
+ purchaseScheduleTickets: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-purchases', method: HTTP_METHODS.POST },
57
+ confirmScheduleTicketPurchase: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-purchases/{purchase_id}/confirm', method: HTTP_METHODS.POST },
58
+ getScheduleTicketReceipt: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-purchases/{purchase_id}/receipt', method: HTTP_METHODS.GET },
59
+ listScheduleTicketPurchases: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-purchases', method: HTTP_METHODS.GET },
60
+ refundScheduleTicketPurchase: { url: '/gameshows/{show_id}/schedule/{schedule_id}/ticket-purchases/{purchase_id}/refund', method: HTTP_METHODS.POST },
50
61
  discoveryQueue: { url: '/gameshows/{show_id}/discovery', method: HTTP_METHODS.GET },
51
62
  trackAnalytics: { url: '/gameshows/{show_id}/analytics', method: HTTP_METHODS.POST },
52
63
  analyticsReport: { url: '/gameshows/{show_id}/analytics/report', method: HTTP_METHODS.GET },
@@ -11,6 +11,30 @@ class ServerOperationsRoute {
11
11
  url: '/admin/server-operations/titles/{title_id}/builds/{build_id}/policy',
12
12
  method: HTTP_METHODS.PUT
13
13
  },
14
+ updateContainerAppResources: {
15
+ url: '/admin/server-operations/titles/{title_id}/builds/{build_id}/container-app',
16
+ method: HTTP_METHODS.PUT
17
+ },
18
+ updateCapacityModel: {
19
+ url: '/admin/server-operations/titles/{title_id}/builds/{build_id}/capacity-model',
20
+ method: HTTP_METHODS.PUT
21
+ },
22
+ listRealms: {
23
+ url: '/admin/server-operations/titles/{title_id}/realms',
24
+ method: HTTP_METHODS.GET
25
+ },
26
+ createRealm: {
27
+ url: '/admin/server-operations/titles/{title_id}/realms',
28
+ method: HTTP_METHODS.POST
29
+ },
30
+ updateRealm: {
31
+ url: '/admin/server-operations/titles/{title_id}/realms/{realm_id}',
32
+ method: HTTP_METHODS.PUT
33
+ },
34
+ deleteRealm: {
35
+ url: '/admin/server-operations/titles/{title_id}/realms/{realm_id}',
36
+ method: HTTP_METHODS.DELETE
37
+ },
14
38
  };
15
39
  }
16
40