@playcademy/sdk 0.15.1-beta.4 → 0.15.1-beta.5

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.js CHANGED
@@ -2391,7 +2391,7 @@ async function request({
2391
2391
  return rawText && rawText.length > 0 ? rawText : undefined;
2392
2392
  }
2393
2393
  // src/version.ts
2394
- var SDK_VERSION = "0.15.1-beta.4";
2394
+ var SDK_VERSION = "0.15.1-beta.5";
2395
2395
 
2396
2396
  // src/clients/base.ts
2397
2397
  class PlaycademyBaseClient {
@@ -3320,11 +3320,29 @@ declare class PlaycademyInternalClient extends PlaycademyBaseClient {
3320
3320
  };
3321
3321
  games: {
3322
3322
  list: () => Promise<Game[]>;
3323
+ deploymentState: (slug: string, options?: {
3324
+ include?: 'schemaSnapshot';
3325
+ }) => Promise<_playcademy_types.DeploymentStateResponse>;
3326
+ deployments: (slug: string, options?: {
3327
+ limit?: number;
3328
+ }) => Promise<_playcademy_types.GameDeployHistoryResponse>;
3329
+ reportDeployBlocked: (slug: string, report: _playcademy_types.DeployBlockedReport) => Promise<{
3330
+ recorded: boolean;
3331
+ }>;
3332
+ deploymentStateBaseline: (slug: string, body: _playcademy_types.DeploymentStateBaselineRequest) => Promise<_playcademy_types.DeploymentStateResponse>;
3333
+ migrationRealign: (slug: string, tag: string, checksum: string) => Promise<_playcademy_types.MigrationRealignResponse>;
3334
+ migrationResolve: (slug: string, tag: string, resolution: _playcademy_types.MigrationResolution, checksum?: string) => Promise<_playcademy_types.MigrationResolveResponse>;
3323
3335
  deploy: (slug: string, options: {
3324
3336
  metadata?: UpsertGameMetadataInput;
3325
3337
  file?: File | Blob | null;
3326
3338
  worker?: WorkerDeploymentBundle;
3327
3339
  hooks?: DevUploadHooks;
3340
+ deployId?: string;
3341
+ database?: _playcademy_types.DeployDatabasePayload;
3342
+ baseline?: _playcademy_types.DeployBaseline;
3343
+ buildHash?: string;
3344
+ integrationsHash?: string;
3345
+ pruneSecrets?: string[];
3328
3346
  }) => Promise<Game>;
3329
3347
  seed: (slug: string, code: string, environment?: 'local' | 'staging' | 'production', secrets?: Record<string, string>) => Promise<_playcademy_types.SeedResponse>;
3330
3348
  upsert: (slug: string, metadata: UpsertGameMetadataInput) => Promise<Game>;
@@ -3333,6 +3351,7 @@ declare class PlaycademyInternalClient extends PlaycademyBaseClient {
3333
3351
  set: (slug: string, secrets: Record<string, string>) => Promise<string[]>;
3334
3352
  list: (slug: string) => Promise<string[]>;
3335
3353
  delete: (slug: string, key: string) => Promise<void>;
3354
+ diff: (slug: string, secrets: Record<string, string>) => Promise<_playcademy_types.SecretsDiffResponse>;
3336
3355
  };
3337
3356
  dashboard: {
3338
3357
  deploy: (slug: string, options: {
@@ -3355,15 +3374,16 @@ declare class PlaycademyInternalClient extends PlaycademyBaseClient {
3355
3374
  };
3356
3375
  };
3357
3376
  database: {
3358
- reset: (slug: string, schema?: {
3359
- sql: string;
3360
- hash: string;
3361
- }) => Promise<{
3377
+ reset: (slug: string, body?: _playcademy_types.DatabaseResetRequest) => Promise<{
3362
3378
  success: boolean;
3363
3379
  deploymentId: string;
3364
3380
  resetAt: string;
3365
3381
  schemaPushed: boolean;
3366
3382
  }>;
3383
+ restorePoints: (slug: string) => Promise<_playcademy_types.GameRestorePointsResponse>;
3384
+ restore: (slug: string, body: {
3385
+ restorePointId: string;
3386
+ }) => Promise<_playcademy_types.DatabaseRestoreResponse>;
3367
3387
  };
3368
3388
  bucket: {
3369
3389
  list: (slug: string, prefix?: string) => Promise<BucketFile[]>;
package/dist/internal.js CHANGED
@@ -2292,12 +2292,30 @@ class DeployPipeline {
2292
2292
  if (args.target) {
2293
2293
  requestBody.target = args.target;
2294
2294
  }
2295
+ if (args.deployId) {
2296
+ requestBody.deployId = args.deployId;
2297
+ }
2295
2298
  if (args.uploadToken) {
2296
2299
  requestBody.uploadToken = args.uploadToken;
2297
2300
  }
2298
2301
  if (args.metadata) {
2299
2302
  requestBody.metadata = args.metadata;
2300
2303
  }
2304
+ if (args.database) {
2305
+ requestBody.database = args.database;
2306
+ }
2307
+ if (args.baseline) {
2308
+ requestBody.baseline = args.baseline;
2309
+ }
2310
+ if (args.buildHash) {
2311
+ requestBody.buildHash = args.buildHash;
2312
+ }
2313
+ if (args.integrationsHash) {
2314
+ requestBody.integrationsHash = args.integrationsHash;
2315
+ }
2316
+ if (args.pruneSecrets?.length) {
2317
+ requestBody.pruneSecrets = args.pruneSecrets;
2318
+ }
2301
2319
  if (!args.worker) {
2302
2320
  return { game: game2, requestBody };
2303
2321
  }
@@ -2447,8 +2465,37 @@ function createDevNamespace(client) {
2447
2465
  },
2448
2466
  games: {
2449
2467
  list: () => client["request"]("/games/accessible", "GET"),
2468
+ deploymentState: (slug, options) => {
2469
+ const params = options?.include ? `?include=${options.include}` : "";
2470
+ return client["request"](`/games/${slug}/deployment-state${params}`, "GET");
2471
+ },
2472
+ deployments: (slug, options) => {
2473
+ const params = options?.limit ? `?limit=${options.limit}` : "";
2474
+ return client["request"](`/games/${slug}/deployments${params}`, "GET");
2475
+ },
2476
+ reportDeployBlocked: (slug, report) => client["request"](`/games/${slug}/deployments/blocked`, "POST", { body: report }),
2477
+ deploymentStateBaseline: (slug, body) => client["request"](`/games/${slug}/deployment-state/baseline`, "POST", { body }),
2478
+ migrationRealign: (slug, tag, checksum) => {
2479
+ const migration = encodeURIComponent(tag);
2480
+ return client["request"](`/games/${slug}/deployment-state/migrations/${migration}/realign`, "POST", { body: { checksum } });
2481
+ },
2482
+ migrationResolve: (slug, tag, resolution, checksum) => {
2483
+ const migration = encodeURIComponent(tag);
2484
+ return client["request"](`/games/${slug}/deployment-state/migrations/${migration}/resolve`, "POST", { body: { resolution, ...checksum && { checksum } } });
2485
+ },
2450
2486
  deploy: async (slug, options) => {
2451
- const { metadata, file, worker, hooks } = options;
2487
+ const {
2488
+ metadata,
2489
+ file,
2490
+ worker,
2491
+ hooks,
2492
+ deployId,
2493
+ database,
2494
+ baseline,
2495
+ buildHash,
2496
+ integrationsHash,
2497
+ pruneSecrets
2498
+ } = options;
2452
2499
  hooks?.onEvent?.({ type: "init" });
2453
2500
  let game2;
2454
2501
  if (metadata) {
@@ -2461,7 +2508,20 @@ function createDevNamespace(client) {
2461
2508
  }
2462
2509
  const uploadToken = file ? await deploy.uploadFile(file, game2?.id || slug, hooks) : undefined;
2463
2510
  if (uploadToken || worker) {
2464
- return deploy.submitGame({ slug, game: game2, uploadToken, metadata, worker, hooks });
2511
+ return deploy.submitGame({
2512
+ slug,
2513
+ game: game2,
2514
+ uploadToken,
2515
+ metadata,
2516
+ worker,
2517
+ hooks,
2518
+ deployId,
2519
+ database,
2520
+ baseline,
2521
+ buildHash,
2522
+ integrationsHash,
2523
+ pruneSecrets
2524
+ });
2465
2525
  }
2466
2526
  if (game2) {
2467
2527
  return game2;
@@ -2484,7 +2544,10 @@ function createDevNamespace(client) {
2484
2544
  },
2485
2545
  delete: async (slug, key) => {
2486
2546
  await client["request"](`/games/${slug}/secrets/${key}`, "DELETE");
2487
- }
2547
+ },
2548
+ diff: async (slug, secrets) => client["request"](`/games/${slug}/secrets/diff`, "POST", {
2549
+ body: { secrets }
2550
+ })
2488
2551
  },
2489
2552
  dashboard: {
2490
2553
  deploy: async (slug, options) => {
@@ -2515,9 +2578,11 @@ function createDevNamespace(client) {
2515
2578
  }
2516
2579
  },
2517
2580
  database: {
2518
- reset: async (slug, schema) => client["request"](`/games/${slug}/database/reset`, "POST", {
2519
- body: { schema }
2520
- })
2581
+ reset: async (slug, body) => client["request"](`/games/${slug}/database/reset`, "POST", {
2582
+ body: body ?? {}
2583
+ }),
2584
+ restorePoints: (slug) => client["request"](`/games/${slug}/database/restore-points`, "GET"),
2585
+ restore: (slug, body) => client["request"](`/games/${slug}/database/restore`, "POST", { body })
2521
2586
  },
2522
2587
  bucket: {
2523
2588
  list: async (slug, prefix) => {
@@ -3139,7 +3204,7 @@ async function request({
3139
3204
  return rawText && rawText.length > 0 ? rawText : undefined;
3140
3205
  }
3141
3206
  // src/version.ts
3142
- var SDK_VERSION = "0.15.1-beta.4";
3207
+ var SDK_VERSION = "0.15.1-beta.5";
3143
3208
 
3144
3209
  // src/clients/base.ts
3145
3210
  class PlaycademyBaseClient {
@@ -234,7 +234,7 @@ function extractApiErrorInfo(error) {
234
234
  }
235
235
 
236
236
  // src/version.ts
237
- var SDK_VERSION = "0.15.1-beta.4";
237
+ var SDK_VERSION = "0.15.1-beta.5";
238
238
 
239
239
  // src/server/request.ts
240
240
  async function makeApiRequest(opts) {
package/dist/server.js CHANGED
@@ -423,7 +423,7 @@ function extractApiErrorInfo(error) {
423
423
  }
424
424
 
425
425
  // src/version.ts
426
- var SDK_VERSION = "0.15.1-beta.4";
426
+ var SDK_VERSION = "0.15.1-beta.5";
427
427
 
428
428
  // src/server/request.ts
429
429
  async function makeApiRequest(opts) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@playcademy/sdk",
3
- "version": "0.15.1-beta.4",
3
+ "version": "0.15.1-beta.5",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {