@playcademy/sdk 0.7.0 → 0.7.1-beta.2

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
@@ -1048,6 +1048,14 @@ declare enum MessageEvents {
1048
1048
  * Payload: void
1049
1049
  */
1050
1050
  READY = "PLAYCADEMY_READY",
1051
+ /**
1052
+ * Game SDK initialization failed.
1053
+ * Sent when the game iframe fails to complete SDK init (e.g.
1054
+ * origin validation failure, INIT timeout, client creation error).
1055
+ * Payload:
1056
+ * - `reason`: string — human-readable failure description
1057
+ */
1058
+ INIT_ERROR = "PLAYCADEMY_INIT_ERROR",
1051
1059
  /**
1052
1060
  * Game requests to be closed/exited.
1053
1061
  * Sent when user clicks exit button or game naturally ends.
@@ -1147,6 +1155,8 @@ interface MessageEventMap {
1147
1155
  [MessageEvents.CONNECTION_STATE]: ConnectionStatePayload;
1148
1156
  /** Ready message has no payload data */
1149
1157
  [MessageEvents.READY]: void;
1158
+ /** SDK init error data */
1159
+ [MessageEvents.INIT_ERROR]: InitErrorPayload;
1150
1160
  /** Exit message has no payload data */
1151
1161
  [MessageEvents.EXIT]: void;
1152
1162
  /** Performance telemetry data */
@@ -2204,6 +2214,14 @@ interface ConnectionStatePayload {
2204
2214
  state: 'online' | 'offline' | 'degraded';
2205
2215
  reason: string;
2206
2216
  }
2217
+ /**
2218
+ * Init error payload.
2219
+ * Sent from game iframe to parent when SDK initialization fails
2220
+ * (e.g. origin validation failure, INIT timeout, client creation error).
2221
+ */
2222
+ interface InitErrorPayload {
2223
+ reason: string;
2224
+ }
2207
2225
  /**
2208
2226
  * Options for `client.demo.end(score, options?)`.
2209
2227
  *
package/dist/index.js CHANGED
@@ -21,6 +21,7 @@ var MessageEvents;
21
21
  MessageEvents2["OVERLAY"] = "PLAYCADEMY_OVERLAY";
22
22
  MessageEvents2["CONNECTION_STATE"] = "PLAYCADEMY_CONNECTION_STATE";
23
23
  MessageEvents2["READY"] = "PLAYCADEMY_READY";
24
+ MessageEvents2["INIT_ERROR"] = "PLAYCADEMY_INIT_ERROR";
24
25
  MessageEvents2["EXIT"] = "PLAYCADEMY_EXIT";
25
26
  MessageEvents2["TELEMETRY"] = "PLAYCADEMY_TELEMETRY";
26
27
  MessageEvents2["KEY_EVENT"] = "PLAYCADEMY_KEY_EVENT";
@@ -82,6 +83,7 @@ class PlaycademyMessaging {
82
83
  const isIframe = typeof globalThis.window !== "undefined" && globalThis.self !== window.top;
83
84
  const iframeToParentEvents = [
84
85
  "PLAYCADEMY_READY" /* READY */,
86
+ "PLAYCADEMY_INIT_ERROR" /* INIT_ERROR */,
85
87
  "PLAYCADEMY_EXIT" /* EXIT */,
86
88
  "PLAYCADEMY_TELEMETRY" /* TELEMETRY */,
87
89
  "PLAYCADEMY_KEY_EVENT" /* KEY_EVENT */,
@@ -156,6 +158,9 @@ async function waitForPlaycademyInit(allowedParentOrigins) {
156
158
  }
157
159
  hasWarnedAboutUntrustedOrigin = true;
158
160
  console.warn("[Playcademy SDK] Ignoring INIT from untrusted origin:", origin);
161
+ messaging.send("PLAYCADEMY_INIT_ERROR" /* INIT_ERROR */, {
162
+ reason: `Untrusted parent origin: ${origin}`
163
+ });
159
164
  }
160
165
  function handleMessage(event) {
161
166
  if (event.data?.type !== "PLAYCADEMY_INIT" /* INIT */) {
@@ -175,7 +180,9 @@ async function waitForPlaycademyInit(allowedParentOrigins) {
175
180
  const timeoutId = setTimeout(() => {
176
181
  if (!contextReceived) {
177
182
  window.removeEventListener("message", handleMessage);
178
- reject(new Error(`${"PLAYCADEMY_INIT" /* INIT */} not received within ${timeoutDuration}ms`));
183
+ const reason = `${"PLAYCADEMY_INIT" /* INIT */} not received within ${timeoutDuration}ms`;
184
+ messaging.send("PLAYCADEMY_INIT_ERROR" /* INIT_ERROR */, { reason });
185
+ reject(new Error(reason));
179
186
  }
180
187
  }, timeoutDuration);
181
188
  });
@@ -543,6 +543,7 @@ interface TimebackRosterStudent {
543
543
  masteredUnits: number;
544
544
  masterableUnits?: number;
545
545
  pctCompleteApp?: number;
546
+ inactive?: boolean;
546
547
  }
547
548
  interface TimebackRosterResponse {
548
549
  gameId: string;
@@ -571,6 +572,7 @@ interface TimebackStudentCourseOverview {
571
572
  pctCompleteApp?: number;
572
573
  completionStatus: CourseCompletionStatus;
573
574
  history: TimebackStudentHistoryPoint[];
575
+ inactive?: boolean;
574
576
  }
575
577
  type TimebackRecentActivityKind = 'activity' | 'activity-in-progress' | 'time-spent' | 'remediation-xp' | 'remediation-time' | 'remediation-mastery' | 'course-completed' | 'course-resumed';
576
578
  interface TimebackRecentActivity {
@@ -5557,6 +5559,14 @@ declare enum MessageEvents {
5557
5559
  * Payload: void
5558
5560
  */
5559
5561
  READY = "PLAYCADEMY_READY",
5562
+ /**
5563
+ * Game SDK initialization failed.
5564
+ * Sent when the game iframe fails to complete SDK init (e.g.
5565
+ * origin validation failure, INIT timeout, client creation error).
5566
+ * Payload:
5567
+ * - `reason`: string — human-readable failure description
5568
+ */
5569
+ INIT_ERROR = "PLAYCADEMY_INIT_ERROR",
5560
5570
  /**
5561
5571
  * Game requests to be closed/exited.
5562
5572
  * Sent when user clicks exit button or game naturally ends.
@@ -5656,6 +5666,8 @@ interface MessageEventMap {
5656
5666
  [MessageEvents.CONNECTION_STATE]: ConnectionStatePayload;
5657
5667
  /** Ready message has no payload data */
5658
5668
  [MessageEvents.READY]: void;
5669
+ /** SDK init error data */
5670
+ [MessageEvents.INIT_ERROR]: InitErrorPayload;
5659
5671
  /** Exit message has no payload data */
5660
5672
  [MessageEvents.EXIT]: void;
5661
5673
  /** Performance telemetry data */
@@ -6455,6 +6467,14 @@ interface ConnectionStatePayload {
6455
6467
  state: 'online' | 'offline' | 'degraded';
6456
6468
  reason: string;
6457
6469
  }
6470
+ /**
6471
+ * Init error payload.
6472
+ * Sent from game iframe to parent when SDK initialization fails
6473
+ * (e.g. origin validation failure, INIT timeout, client creation error).
6474
+ */
6475
+ interface InitErrorPayload {
6476
+ reason: string;
6477
+ }
6458
6478
  /**
6459
6479
  * Options for `client.demo.end(score, options?)`.
6460
6480
  *
@@ -7608,4 +7628,4 @@ declare class PlaycademyInternalClient extends PlaycademyBaseClient {
7608
7628
  }
7609
7629
 
7610
7630
  export { AchievementCompletionType, ApiError, ConnectionManager, ConnectionMonitor, MessageEvents, NotificationStatus, NotificationType, PlaycademyInternalClient as PlaycademyClient, PlaycademyError, PlaycademyInternalClient, extractApiErrorInfo, messaging };
7611
- export type { AchievementCurrent, AchievementHistoryEntry, AchievementProgressResponse, AchievementScopeType, AchievementWithStatus, ApiErrorCode, ApiErrorInfo, AuthCallbackPayload, AuthOptions, AuthProviderType, AuthResult, AuthServerMessage, AuthStateChangePayload, AuthStateUpdate, AuthenticatedUser, BetterAuthApiKey, BetterAuthApiKeyResponse, BetterAuthSignInResponse, BucketFile, CharacterComponentRow as CharacterComponent, CharacterComponentType, CharacterComponentWithSpriteUrl, CharacterComponentsOptions, ClientConfig, ClientEvents, ConnectionMonitorConfig, ConnectionState, ConnectionStatePayload, CourseXp, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, DemoEndOptions, DemoEndPayload, DevUploadEvent, DevUploadHooks, DeveloperStatusEnumType, DeveloperStatusResponse, DeveloperStatusValue, DisconnectContext, DisconnectHandler, DisplayAlertPayload, ErrorResponseBody, EventListeners, ExternalGame, FetchedGame, Game, GameContextPayload, GameCustomHostname, GameInitUser, GameLeaderboardEntry, MapRow as GameMap, GamePlatform, GameRow as GameRecord, GameSessionRow as GameSession, GameTimebackIntegration, GameTokenResponse, GameType, GameUser, GetXpOptions, HostedGame, InitPayload, InsertCurrencyInput, InsertItemInput, InsertShopListingInput, InteractionType, InventoryItemRow as InventoryItem, InventoryItemWithItem, InventoryMutationResponse, ItemRow as Item, ItemType, KVKeyEntry, KVKeyMetadata, KVSeedEntry, KVStatsResponse, KeyEventPayload, LeaderboardEntry, LeaderboardOptions, LeaderboardTimeframe, LevelConfigRow as LevelConfig, LevelProgressResponse, LevelUpCheckResult, LoginResponse, ManifestV1, MapData, MapElementRow as MapElement, MapElementMetadata, MapElementWithGame, MapObjectRow as MapObject, MapObjectWithItem, NotificationRow as Notification, NotificationStats, PlaceableItemMetadata, PlatformTimebackUser, PlatformTimebackUserContext, PlaycademyMode, PlaycademyServerClientConfig, PlaycademyServerClientState, PlayerCharacterRow as PlayerCharacter, PlayerCharacterAccessoryRow as PlayerCharacterAccessory, PlayerCurrency, PlayerInventoryItem, PlayerProfile, PlayerSessionPayload, PopulateStudentResponse, RealtimeTokenResponse, ScoreSubmission, ShopCurrency, ShopDisplayItem, ShopListingRow as ShopListing, ShopViewResponse, SpriteAnimationFrame, SpriteConfigWithDimensions, SpriteTemplateRow as SpriteTemplate, SpriteTemplateData, StartSessionResponse, TelemetryPayload, TimebackEnrollment, TimebackInitContext, TimebackOrganization, TimebackUser, TimebackUserContext, TimebackUserXp, TodayXpResponse, TokenRefreshPayload, TokenType, TotalXpResponse, UpdateCharacterData, UpdateCurrencyInput, UpdateItemInput, UpdateShopListingInput, UpsertGameMetadataInput, UserRow as User, UserEnrollment, UserInfo, UserLevelRow as UserLevel, UserLevelWithConfig, UserOrganization, UserRank, UserRankResponse, UserRoleEnumType, UserScore, UserTimebackData, XPAddResult, XpHistoryResponse, XpResponse, XpSummaryResponse };
7631
+ export type { AchievementCurrent, AchievementHistoryEntry, AchievementProgressResponse, AchievementScopeType, AchievementWithStatus, ApiErrorCode, ApiErrorInfo, AuthCallbackPayload, AuthOptions, AuthProviderType, AuthResult, AuthServerMessage, AuthStateChangePayload, AuthStateUpdate, AuthenticatedUser, BetterAuthApiKey, BetterAuthApiKeyResponse, BetterAuthSignInResponse, BucketFile, CharacterComponentRow as CharacterComponent, CharacterComponentType, CharacterComponentWithSpriteUrl, CharacterComponentsOptions, ClientConfig, ClientEvents, ConnectionMonitorConfig, ConnectionState, ConnectionStatePayload, CourseXp, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, DemoEndOptions, DemoEndPayload, DevUploadEvent, DevUploadHooks, DeveloperStatusEnumType, DeveloperStatusResponse, DeveloperStatusValue, DisconnectContext, DisconnectHandler, DisplayAlertPayload, ErrorResponseBody, EventListeners, ExternalGame, FetchedGame, Game, GameContextPayload, GameCustomHostname, GameInitUser, GameLeaderboardEntry, MapRow as GameMap, GamePlatform, GameRow as GameRecord, GameSessionRow as GameSession, GameTimebackIntegration, GameTokenResponse, GameType, GameUser, GetXpOptions, HostedGame, InitErrorPayload, InitPayload, InsertCurrencyInput, InsertItemInput, InsertShopListingInput, InteractionType, InventoryItemRow as InventoryItem, InventoryItemWithItem, InventoryMutationResponse, ItemRow as Item, ItemType, KVKeyEntry, KVKeyMetadata, KVSeedEntry, KVStatsResponse, KeyEventPayload, LeaderboardEntry, LeaderboardOptions, LeaderboardTimeframe, LevelConfigRow as LevelConfig, LevelProgressResponse, LevelUpCheckResult, LoginResponse, ManifestV1, MapData, MapElementRow as MapElement, MapElementMetadata, MapElementWithGame, MapObjectRow as MapObject, MapObjectWithItem, MessageEventMap, NotificationRow as Notification, NotificationStats, PlaceableItemMetadata, PlatformTimebackUser, PlatformTimebackUserContext, PlaycademyMode, PlaycademyServerClientConfig, PlaycademyServerClientState, PlayerCharacterRow as PlayerCharacter, PlayerCharacterAccessoryRow as PlayerCharacterAccessory, PlayerCurrency, PlayerInventoryItem, PlayerProfile, PlayerSessionPayload, PopulateStudentResponse, RealtimeTokenResponse, ScoreSubmission, ShopCurrency, ShopDisplayItem, ShopListingRow as ShopListing, ShopViewResponse, SpriteAnimationFrame, SpriteConfigWithDimensions, SpriteTemplateRow as SpriteTemplate, SpriteTemplateData, StartSessionResponse, TelemetryPayload, TimebackEnrollment, TimebackInitContext, TimebackOrganization, TimebackUser, TimebackUserContext, TimebackUserXp, TodayXpResponse, TokenRefreshPayload, TokenType, TotalXpResponse, UpdateCharacterData, UpdateCurrencyInput, UpdateItemInput, UpdateShopListingInput, UpsertGameMetadataInput, UserRow as User, UserEnrollment, UserInfo, UserLevelRow as UserLevel, UserLevelWithConfig, UserOrganization, UserRank, UserRankResponse, UserRoleEnumType, UserScore, UserTimebackData, XPAddResult, XpHistoryResponse, XpResponse, XpSummaryResponse };
package/dist/internal.js CHANGED
@@ -21,6 +21,7 @@ var MessageEvents;
21
21
  MessageEvents2["OVERLAY"] = "PLAYCADEMY_OVERLAY";
22
22
  MessageEvents2["CONNECTION_STATE"] = "PLAYCADEMY_CONNECTION_STATE";
23
23
  MessageEvents2["READY"] = "PLAYCADEMY_READY";
24
+ MessageEvents2["INIT_ERROR"] = "PLAYCADEMY_INIT_ERROR";
24
25
  MessageEvents2["EXIT"] = "PLAYCADEMY_EXIT";
25
26
  MessageEvents2["TELEMETRY"] = "PLAYCADEMY_TELEMETRY";
26
27
  MessageEvents2["KEY_EVENT"] = "PLAYCADEMY_KEY_EVENT";
@@ -82,6 +83,7 @@ class PlaycademyMessaging {
82
83
  const isIframe = typeof globalThis.window !== "undefined" && globalThis.self !== window.top;
83
84
  const iframeToParentEvents = [
84
85
  "PLAYCADEMY_READY" /* READY */,
86
+ "PLAYCADEMY_INIT_ERROR" /* INIT_ERROR */,
85
87
  "PLAYCADEMY_EXIT" /* EXIT */,
86
88
  "PLAYCADEMY_TELEMETRY" /* TELEMETRY */,
87
89
  "PLAYCADEMY_KEY_EVENT" /* KEY_EVENT */,
@@ -156,6 +158,9 @@ async function waitForPlaycademyInit(allowedParentOrigins) {
156
158
  }
157
159
  hasWarnedAboutUntrustedOrigin = true;
158
160
  console.warn("[Playcademy SDK] Ignoring INIT from untrusted origin:", origin);
161
+ messaging.send("PLAYCADEMY_INIT_ERROR" /* INIT_ERROR */, {
162
+ reason: `Untrusted parent origin: ${origin}`
163
+ });
159
164
  }
160
165
  function handleMessage(event) {
161
166
  if (event.data?.type !== "PLAYCADEMY_INIT" /* INIT */) {
@@ -175,7 +180,9 @@ async function waitForPlaycademyInit(allowedParentOrigins) {
175
180
  const timeoutId = setTimeout(() => {
176
181
  if (!contextReceived) {
177
182
  window.removeEventListener("message", handleMessage);
178
- reject(new Error(`${"PLAYCADEMY_INIT" /* INIT */} not received within ${timeoutDuration}ms`));
183
+ const reason = `${"PLAYCADEMY_INIT" /* INIT */} not received within ${timeoutDuration}ms`;
184
+ messaging.send("PLAYCADEMY_INIT_ERROR" /* INIT_ERROR */, { reason });
185
+ reject(new Error(reason));
179
186
  }
180
187
  }, timeoutDuration);
181
188
  });
package/dist/types.d.ts CHANGED
@@ -4896,6 +4896,14 @@ declare enum MessageEvents {
4896
4896
  * Payload: void
4897
4897
  */
4898
4898
  READY = "PLAYCADEMY_READY",
4899
+ /**
4900
+ * Game SDK initialization failed.
4901
+ * Sent when the game iframe fails to complete SDK init (e.g.
4902
+ * origin validation failure, INIT timeout, client creation error).
4903
+ * Payload:
4904
+ * - `reason`: string — human-readable failure description
4905
+ */
4906
+ INIT_ERROR = "PLAYCADEMY_INIT_ERROR",
4899
4907
  /**
4900
4908
  * Game requests to be closed/exited.
4901
4909
  * Sent when user clicks exit button or game naturally ends.
@@ -5736,6 +5744,14 @@ interface ConnectionStatePayload {
5736
5744
  state: 'online' | 'offline' | 'degraded';
5737
5745
  reason: string;
5738
5746
  }
5747
+ /**
5748
+ * Init error payload.
5749
+ * Sent from game iframe to parent when SDK initialization fails
5750
+ * (e.g. origin validation failure, INIT timeout, client creation error).
5751
+ */
5752
+ interface InitErrorPayload {
5753
+ reason: string;
5754
+ }
5739
5755
  /**
5740
5756
  * Options for `client.demo.end(score, options?)`.
5741
5757
  *
@@ -6015,4 +6031,4 @@ interface XpSummaryResponse {
6015
6031
  }
6016
6032
 
6017
6033
  export { AchievementCompletionType, NotificationStatus, NotificationType, PlaycademyClient };
6018
- export type { AchievementCurrent, AchievementHistoryEntry, AchievementProgressResponse, AchievementScopeType, AchievementWithStatus, AuthCallbackPayload, AuthOptions, AuthProviderType, AuthResult, AuthServerMessage, AuthStateChangePayload, AuthStateUpdate, AuthenticatedUser, BetterAuthApiKey, BetterAuthApiKeyResponse, BetterAuthSignInResponse, BucketFile, CharacterComponentRow as CharacterComponent, CharacterComponentType, CharacterComponentWithSpriteUrl, CharacterComponentsOptions, ClientConfig, ClientEvents, ConnectionStatePayload, CourseXp, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, DemoEndOptions, DemoEndPayload, DevUploadEvent, DevUploadHooks, DeveloperStatusEnumType, DeveloperStatusResponse, DeveloperStatusValue, DisconnectContext, DisconnectHandler, DisplayAlertPayload, EventListeners, ExternalGame, FetchedGame, Game, GameContextPayload, GameCustomHostname, GameInitUser, GameLeaderboardEntry, MapRow as GameMap, GamePlatform, GameRow as GameRecord, GameSessionRow as GameSession, GameTimebackIntegration, GameTokenResponse, GameType, GameUser, GetXpOptions, HostedGame, InitPayload, InsertCurrencyInput, InsertItemInput, InsertShopListingInput, InteractionType, InventoryItemRow as InventoryItem, InventoryItemWithItem, InventoryMutationResponse, ItemRow as Item, ItemType, KVKeyEntry, KVKeyMetadata, KVSeedEntry, KVStatsResponse, KeyEventPayload, LeaderboardEntry, LeaderboardOptions, LeaderboardTimeframe, LevelConfigRow as LevelConfig, LevelProgressResponse, LevelUpCheckResult, LoginResponse, ManifestV1, MapData, MapElementRow as MapElement, MapElementMetadata, MapElementWithGame, MapObjectRow as MapObject, MapObjectWithItem, NotificationRow as Notification, NotificationStats, PlaceableItemMetadata, PlatformTimebackUser, PlatformTimebackUserContext, PlaycademyMode, PlaycademyServerClientConfig, PlaycademyServerClientState, PlayerCharacterRow as PlayerCharacter, PlayerCharacterAccessoryRow as PlayerCharacterAccessory, PlayerCurrency, PlayerInventoryItem, PlayerProfile, PlayerSessionPayload, PopulateStudentResponse, RealtimeTokenResponse, ScoreSubmission, ShopCurrency, ShopDisplayItem, ShopListingRow as ShopListing, ShopViewResponse, SpriteAnimationFrame, SpriteConfigWithDimensions, SpriteTemplateRow as SpriteTemplate, SpriteTemplateData, StartSessionResponse, TelemetryPayload, TimebackEnrollment, TimebackInitContext, TimebackOrganization, TimebackUser, TimebackUserContext, TimebackUserXp, TodayXpResponse, TokenRefreshPayload, TokenType, TotalXpResponse, UpdateCharacterData, UpdateCurrencyInput, UpdateItemInput, UpdateShopListingInput, UpsertGameMetadataInput, UserRow as User, UserEnrollment, UserInfo, UserLevelRow as UserLevel, UserLevelWithConfig, UserOrganization, UserRank, UserRankResponse, UserRoleEnumType, UserScore, UserTimebackData, XPAddResult, XpHistoryResponse, XpResponse, XpSummaryResponse };
6034
+ export type { AchievementCurrent, AchievementHistoryEntry, AchievementProgressResponse, AchievementScopeType, AchievementWithStatus, AuthCallbackPayload, AuthOptions, AuthProviderType, AuthResult, AuthServerMessage, AuthStateChangePayload, AuthStateUpdate, AuthenticatedUser, BetterAuthApiKey, BetterAuthApiKeyResponse, BetterAuthSignInResponse, BucketFile, CharacterComponentRow as CharacterComponent, CharacterComponentType, CharacterComponentWithSpriteUrl, CharacterComponentsOptions, ClientConfig, ClientEvents, ConnectionStatePayload, CourseXp, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, DemoEndOptions, DemoEndPayload, DevUploadEvent, DevUploadHooks, DeveloperStatusEnumType, DeveloperStatusResponse, DeveloperStatusValue, DisconnectContext, DisconnectHandler, DisplayAlertPayload, EventListeners, ExternalGame, FetchedGame, Game, GameContextPayload, GameCustomHostname, GameInitUser, GameLeaderboardEntry, MapRow as GameMap, GamePlatform, GameRow as GameRecord, GameSessionRow as GameSession, GameTimebackIntegration, GameTokenResponse, GameType, GameUser, GetXpOptions, HostedGame, InitErrorPayload, InitPayload, InsertCurrencyInput, InsertItemInput, InsertShopListingInput, InteractionType, InventoryItemRow as InventoryItem, InventoryItemWithItem, InventoryMutationResponse, ItemRow as Item, ItemType, KVKeyEntry, KVKeyMetadata, KVSeedEntry, KVStatsResponse, KeyEventPayload, LeaderboardEntry, LeaderboardOptions, LeaderboardTimeframe, LevelConfigRow as LevelConfig, LevelProgressResponse, LevelUpCheckResult, LoginResponse, ManifestV1, MapData, MapElementRow as MapElement, MapElementMetadata, MapElementWithGame, MapObjectRow as MapObject, MapObjectWithItem, NotificationRow as Notification, NotificationStats, PlaceableItemMetadata, PlatformTimebackUser, PlatformTimebackUserContext, PlaycademyMode, PlaycademyServerClientConfig, PlaycademyServerClientState, PlayerCharacterRow as PlayerCharacter, PlayerCharacterAccessoryRow as PlayerCharacterAccessory, PlayerCurrency, PlayerInventoryItem, PlayerProfile, PlayerSessionPayload, PopulateStudentResponse, RealtimeTokenResponse, ScoreSubmission, ShopCurrency, ShopDisplayItem, ShopListingRow as ShopListing, ShopViewResponse, SpriteAnimationFrame, SpriteConfigWithDimensions, SpriteTemplateRow as SpriteTemplate, SpriteTemplateData, StartSessionResponse, TelemetryPayload, TimebackEnrollment, TimebackInitContext, TimebackOrganization, TimebackUser, TimebackUserContext, TimebackUserXp, TodayXpResponse, TokenRefreshPayload, TokenType, TotalXpResponse, UpdateCharacterData, UpdateCurrencyInput, UpdateItemInput, UpdateShopListingInput, UpsertGameMetadataInput, UserRow as User, UserEnrollment, UserInfo, UserLevelRow as UserLevel, UserLevelWithConfig, UserOrganization, UserRank, UserRankResponse, UserRoleEnumType, UserScore, UserTimebackData, XPAddResult, XpHistoryResponse, XpResponse, XpSummaryResponse };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@playcademy/sdk",
3
- "version": "0.7.0",
3
+ "version": "0.7.1-beta.2",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {