playcademy 0.28.1-beta.1 → 0.28.1-beta.3

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/bucket.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { GamePermission } from '@playcademy/constants';
1
2
  import { TimebackCourseConfig, CourseConfig, OrganizationConfig, ComponentConfig, ResourceConfig, ComponentResourceConfig } from '@playcademy/types/timeback';
2
3
  import { Miniflare } from 'miniflare';
3
4
 
@@ -148,6 +149,13 @@ interface PlaycademyConfig {
148
149
  description?: string;
149
150
  /** Game emoji icon */
150
151
  emoji?: string;
152
+ /**
153
+ * Browser permissions to request for the game's iframe (e.g.
154
+ * `['microphone']`). Opt-in per game; only `microphone` and `camera` are
155
+ * delegated this way. Fullscreen, autoplay, and gamepad are granted to
156
+ * every game automatically.
157
+ */
158
+ permissions?: GamePermission[];
151
159
  /** Build command to run before deployment */
152
160
  buildCommand?: string[];
153
161
  /** Path to build output */
package/dist/bucket.js CHANGED
@@ -44,7 +44,7 @@ var GAME_API_ROUTES_DIRECTORY = join2(GAME_SERVER_ROOT_DIRECTORY, "api");
44
44
  // ../better-auth/package.json
45
45
  var package_default = {
46
46
  name: "@playcademy/better-auth",
47
- version: "0.0.21-beta.1",
47
+ version: "0.0.21-beta.3",
48
48
  type: "module",
49
49
  exports: {
50
50
  "./server": {
package/dist/cli.js CHANGED
@@ -1207,7 +1207,7 @@ var SAMPLE_BUCKET_FILENAME = "bucket.ts";
1207
1207
  // ../better-auth/package.json
1208
1208
  var package_default = {
1209
1209
  name: "@playcademy/better-auth",
1210
- version: "0.0.21-beta.1",
1210
+ version: "0.0.21-beta.3",
1211
1211
  type: "module",
1212
1212
  exports: {
1213
1213
  "./server": {
@@ -3009,7 +3009,7 @@ import { existsSync as existsSync11, mkdirSync as mkdirSync5, readFileSync as re
3009
3009
  import { join as join13 } from "node:path";
3010
3010
 
3011
3011
  // src/version.ts
3012
- var cliVersion = false ? "0.0.0-dev" : "0.28.1-beta.1";
3012
+ var cliVersion = false ? "0.0.0-dev" : "0.28.1-beta.3";
3013
3013
 
3014
3014
  // src/lib/init/database.ts
3015
3015
  var drizzleConfigTemplate = loadTemplateString("database/drizzle-config.ts");
@@ -277,8 +277,8 @@ declare const GODOT_EXECUTABLE_PATTERNS: {
277
277
  declare const CALLBACK_PORT = 6175;
278
278
  /** Path for the OAuth callback endpoint */
279
279
  declare const CALLBACK_PATH = "/callback";
280
- /** Timeout for SSO authentication in milliseconds (30 seconds) */
281
- declare const SSO_AUTH_TIMEOUT_MS = 30000;
280
+ /** Timeout for the whole browser SSO flow (login page + provider auth + MFA) */
281
+ declare const SSO_AUTH_TIMEOUT_MS = 90000;
282
282
 
283
283
  /**
284
284
  * Path constants for CLI directories and files
package/dist/constants.js CHANGED
@@ -21,7 +21,7 @@ var SAMPLE_BUCKET_FILENAME = "bucket.ts";
21
21
  // ../better-auth/package.json
22
22
  var package_default = {
23
23
  name: "@playcademy/better-auth",
24
- version: "0.0.21-beta.1",
24
+ version: "0.0.21-beta.3",
25
25
  type: "module",
26
26
  exports: {
27
27
  "./server": {
@@ -182,7 +182,7 @@ var GODOT_EXECUTABLE_PATTERNS = {
182
182
  // src/constants/http-server.ts
183
183
  var CALLBACK_PORT = 6175;
184
184
  var CALLBACK_PATH = "/callback";
185
- var SSO_AUTH_TIMEOUT_MS = 3e4;
185
+ var SSO_AUTH_TIMEOUT_MS = 9e4;
186
186
 
187
187
  // src/constants/paths.ts
188
188
  import { homedir } from "node:os";
package/dist/db.js CHANGED
@@ -2335,7 +2335,7 @@ var GAME_API_ROUTES_DIRECTORY = join2(GAME_SERVER_ROOT_DIRECTORY, "api");
2335
2335
  // ../better-auth/package.json
2336
2336
  var package_default = {
2337
2337
  name: "@playcademy/better-auth",
2338
- version: "0.0.21-beta.1",
2338
+ version: "0.0.21-beta.3",
2339
2339
  type: "module",
2340
2340
  exports: {
2341
2341
  "./server": {
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { ApiKeyRow } from '@playcademy/data/types';
2
2
  import { UserInfo } from '@playcademy/types/user';
3
3
  import { SchemaInfo } from '@playcademy/cloudflare';
4
+ import { GamePermission } from '@playcademy/constants';
4
5
  import { TimebackCourseConfig, CourseConfig, OrganizationConfig, ComponentConfig, ResourceConfig, ComponentResourceConfig } from '@playcademy/types/timeback';
5
6
  export { ComponentConfig, ComponentResourceConfig, OrganizationConfig, ResourceConfig, TimebackCourseConfig, TimebackGrade, TimebackSourcedIds, TimebackSubject } from '@playcademy/types/timeback';
6
7
  import { PlaycademyClient } from '@playcademy/sdk/internal';
@@ -434,6 +435,13 @@ interface PlaycademyConfig {
434
435
  description?: string;
435
436
  /** Game emoji icon */
436
437
  emoji?: string;
438
+ /**
439
+ * Browser permissions to request for the game's iframe (e.g.
440
+ * `['microphone']`). Opt-in per game; only `microphone` and `camera` are
441
+ * delegated this way. Fullscreen, autoplay, and gamepad are granted to
442
+ * every game automatically.
443
+ */
444
+ permissions?: GamePermission[];
437
445
  /** Build command to run before deployment */
438
446
  buildCommand?: string[];
439
447
  /** Path to build output */
@@ -485,6 +493,8 @@ interface WorkerDeploymentBundle {
485
493
  interface GameMetadata {
486
494
  description?: string;
487
495
  emoji?: string;
496
+ /** Browser permissions delegated to the game's iframe (opt-in per game). */
497
+ permissions?: GamePermission[];
488
498
  [key: string]: unknown;
489
499
  }
490
500
  declare const games: drizzle_orm_pg_core.PgTableWithColumns<{
@@ -1079,6 +1089,13 @@ interface DeployConfig {
1079
1089
  description?: string;
1080
1090
  /** Emoji icon for the project */
1081
1091
  emoji?: string;
1092
+ /**
1093
+ * Browser permissions the game's iframe should be granted (e.g.
1094
+ * `['microphone']`). Opt-in per game; only `microphone` and `camera` are
1095
+ * delegated this way. Fullscreen, autoplay, and gamepad are granted to
1096
+ * every game automatically.
1097
+ */
1098
+ permissions?: GamePermission[];
1082
1099
  /** Path to the build directory or zip file */
1083
1100
  buildPath?: string;
1084
1101
  /** Game platform (defaults to 'web') */
@@ -1291,6 +1308,10 @@ interface ConfigDiff {
1291
1308
  old: string | undefined;
1292
1309
  new: string | undefined;
1293
1310
  };
1311
+ permissions?: {
1312
+ old: string[] | undefined;
1313
+ new: string[] | undefined;
1314
+ };
1294
1315
  gameType?: {
1295
1316
  old: string;
1296
1317
  new: string;
@@ -1437,12 +1458,8 @@ interface ScaffoldResult {
1437
1458
  * Callback data received from the Playcademy server after SSO authentication
1438
1459
  */
1439
1460
  interface SsoCallbackData {
1440
- /** The session token from SSO authentication */
1441
- sessionToken: string;
1442
- /** User's email address */
1443
- email: string;
1444
- /** User's ID */
1445
- userId: string;
1461
+ /** One-time login code, exchanged at /auth/cli/exchange for an API key */
1462
+ code: string;
1446
1463
  }
1447
1464
  /**
1448
1465
  * Result from starting and running the callback server