@playcademy/sandbox 0.3.7 → 0.3.9

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/config.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { TimebackOrgType, TimebackUserRole } from '@playcademy/data/types';
1
+ import { TimebackOrgType, TimebackUserRole } from '@playcademy/types/user';
2
2
 
3
3
  /**
4
4
  * Configuration Type Definitions
package/dist/config.js CHANGED
@@ -140,34 +140,48 @@ function getTimebackDisplayMode() {
140
140
  }
141
141
  return mode;
142
142
  }
143
+ var init_timeback = __esm(() => {
144
+ init_config();
145
+ });
143
146
 
144
147
  // src/config/mutators.ts
145
148
  function setEmbeddedMode(embedded) {
146
149
  config.embedded = embedded;
147
150
  process.env.PLAYCADEMY_EMBEDDED = embedded ? "1" : undefined;
148
151
  }
152
+ var init_mutators = __esm(() => {
153
+ init_config();
154
+ });
149
155
 
150
156
  // src/config/index.ts
151
- var config = {
152
- embedded: process.env.PLAYCADEMY_EMBEDDED === "1",
153
- auth: {
154
- betterAuthSecret: process.env.BETTER_AUTH_SECRET || "sandbox-better-auth-secret-for-testing",
155
- gameJwtSecret: process.env.GAME_JWT_SECRET || "sandbox-game-jwt-secret-for-testing"
156
- },
157
- timeback: {
158
- mode: getTimebackMode(),
159
- onerosterApiUrl: process.env.TIMEBACK_ONEROSTER_API_URL,
160
- caliperApiUrl: process.env.TIMEBACK_CALIPER_API_URL,
161
- clientId: process.env.TIMEBACK_API_CLIENT_ID,
162
- clientSecret: process.env.TIMEBACK_API_CLIENT_SECRET,
163
- authUrl: process.env.TIMEBACK_API_AUTH_URL,
164
- courseId: process.env.SANDBOX_TIMEBACK_COURSE_ID,
165
- timebackId: process.env.SANDBOX_TIMEBACK_STUDENT_ID
166
- }
167
- };
168
- process.env.BETTER_AUTH_SECRET = config.auth.betterAuthSecret;
169
- process.env.GAME_JWT_SECRET = config.auth.gameJwtSecret;
170
- process.env.PUBLIC_IS_LOCAL = "true";
157
+ var config;
158
+ var init_config = __esm(() => {
159
+ init_timeback();
160
+ init_mutators();
161
+ init_timeback();
162
+ config = {
163
+ embedded: process.env.PLAYCADEMY_EMBEDDED === "1",
164
+ auth: {
165
+ betterAuthSecret: process.env.BETTER_AUTH_SECRET || "sandbox-better-auth-secret-for-testing",
166
+ gameJwtSecret: process.env.GAME_JWT_SECRET || "sandbox-game-jwt-secret-for-testing"
167
+ },
168
+ timeback: {
169
+ mode: getTimebackMode(),
170
+ onerosterApiUrl: process.env.TIMEBACK_ONEROSTER_API_URL,
171
+ caliperApiUrl: process.env.TIMEBACK_CALIPER_API_URL,
172
+ clientId: process.env.TIMEBACK_API_CLIENT_ID,
173
+ clientSecret: process.env.TIMEBACK_API_CLIENT_SECRET,
174
+ authUrl: process.env.TIMEBACK_API_AUTH_URL,
175
+ courseId: process.env.SANDBOX_TIMEBACK_COURSE_ID,
176
+ timebackId: process.env.SANDBOX_TIMEBACK_STUDENT_ID
177
+ }
178
+ };
179
+ process.env.BETTER_AUTH_SECRET = config.auth.betterAuthSecret;
180
+ process.env.GAME_JWT_SECRET = config.auth.gameJwtSecret;
181
+ process.env.PUBLIC_IS_LOCAL = "true";
182
+ });
183
+ init_config();
184
+
171
185
  export {
172
186
  setEmbeddedMode,
173
187
  requireTimebackCredentials,
@@ -1,4 +1,5 @@
1
- import { Item } from '@playcademy/data/types';
1
+ export { ACHIEVEMENT_DEFINITIONS, ACHIEVEMENT_IDS } from '@playcademy/constants';
2
+ import { ItemRow } from '@playcademy/data/types';
2
3
 
3
4
  /**
4
5
  * Demo user data for sandbox testing
@@ -88,6 +89,7 @@ declare const DEMO_USER: {
88
89
  /**
89
90
  * Demo token mappings for sandbox authentication
90
91
  */
92
+ /** Token string → User mapping (used by auth middleware) */
91
93
  declare const DEMO_TOKENS: {
92
94
  readonly 'sandbox-demo-token': {
93
95
  readonly id: "00000000-0000-0000-0000-000000000001";
@@ -174,6 +176,14 @@ declare const DEMO_TOKENS: {
174
176
  readonly updatedAt: Date;
175
177
  };
176
178
  };
179
+ /** Well-known token strings by role (for use in tests) */
180
+ declare const SANDBOX_TOKENS: {
181
+ readonly player: "sandbox-player-token";
182
+ readonly developer: "sandbox-developer-token";
183
+ readonly admin: "sandbox-admin-token";
184
+ readonly pendingDeveloper: "sandbox-pending-dev-token";
185
+ readonly unverified: "sandbox-unverified-token";
186
+ };
177
187
  declare const DEMO_TOKEN = "sandbox-demo-token";
178
188
  declare const MOCK_GAME_ID = "mock-game-id-from-template";
179
189
 
@@ -182,7 +192,7 @@ declare const MOCK_GAME_ID = "mock-game-id-from-template";
182
192
  */
183
193
 
184
194
  declare const PLAYCADEMY_CREDITS_ID: string;
185
- declare const SAMPLE_ITEMS: Omit<Item, 'createdAt'>[];
195
+ declare const SAMPLE_ITEMS: Omit<ItemRow, 'createdAt'>[];
186
196
  declare const SAMPLE_INVENTORY: {
187
197
  id: string;
188
198
  userId: "00000000-0000-0000-0000-000000000001";
@@ -190,4 +200,4 @@ declare const SAMPLE_INVENTORY: {
190
200
  quantity: number;
191
201
  }[];
192
202
 
193
- export { DEMO_TOKEN, DEMO_TOKENS, DEMO_USER, DEMO_USERS, DEMO_USER_IDS, MOCK_GAME_ID, PLAYCADEMY_CREDITS_ID, SAMPLE_INVENTORY, SAMPLE_ITEMS };
203
+ export { DEMO_TOKEN, DEMO_TOKENS, DEMO_USER, DEMO_USERS, DEMO_USER_IDS, MOCK_GAME_ID, PLAYCADEMY_CREDITS_ID, SAMPLE_INVENTORY, SAMPLE_ITEMS, SANDBOX_TOKENS };