@playcademy/sdk 0.2.5 → 0.2.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 +1 -0
- package/dist/internal.d.ts +42 -1
- package/dist/internal.js +35 -0
- package/dist/server.js +24 -4
- package/dist/types.d.ts +31 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
package/dist/internal.d.ts
CHANGED
|
@@ -4519,6 +4519,7 @@ interface ErrorResponseBody {
|
|
|
4519
4519
|
* ```
|
|
4520
4520
|
*/
|
|
4521
4521
|
declare class ApiError extends Error {
|
|
4522
|
+
/** HTTP status code */
|
|
4522
4523
|
readonly status: number;
|
|
4523
4524
|
/**
|
|
4524
4525
|
* API error code (e.g., "NOT_FOUND", "VALIDATION_FAILED").
|
|
@@ -6327,6 +6328,36 @@ interface BucketFile {
|
|
|
6327
6328
|
uploaded: string;
|
|
6328
6329
|
contentType?: string;
|
|
6329
6330
|
}
|
|
6331
|
+
/**
|
|
6332
|
+
* KV key entry
|
|
6333
|
+
*/
|
|
6334
|
+
interface KVKeyEntry {
|
|
6335
|
+
name: string;
|
|
6336
|
+
expiration?: number;
|
|
6337
|
+
metadata?: Record<string, unknown>;
|
|
6338
|
+
}
|
|
6339
|
+
/**
|
|
6340
|
+
* KV key metadata
|
|
6341
|
+
*/
|
|
6342
|
+
interface KVKeyMetadata {
|
|
6343
|
+
metadata?: Record<string, unknown>;
|
|
6344
|
+
}
|
|
6345
|
+
/**
|
|
6346
|
+
* KV statistics
|
|
6347
|
+
*/
|
|
6348
|
+
interface KVStatsResponse {
|
|
6349
|
+
totalKeys: number;
|
|
6350
|
+
prefixes: Record<string, number>;
|
|
6351
|
+
}
|
|
6352
|
+
/**
|
|
6353
|
+
* KV seed entry for bulk operations
|
|
6354
|
+
*/
|
|
6355
|
+
interface KVSeedEntry {
|
|
6356
|
+
key: string;
|
|
6357
|
+
value: string;
|
|
6358
|
+
expiration_ttl?: number;
|
|
6359
|
+
metadata?: Record<string, unknown>;
|
|
6360
|
+
}
|
|
6330
6361
|
type DevUploadEvent = {
|
|
6331
6362
|
type: 'init';
|
|
6332
6363
|
} | {
|
|
@@ -7028,6 +7059,16 @@ declare class PlaycademyInternalClient extends PlaycademyBaseClient {
|
|
|
7028
7059
|
put: (slug: string, key: string, content: ArrayBuffer | Blob | Uint8Array<ArrayBufferLike>, contentType?: string | undefined) => Promise<void>;
|
|
7029
7060
|
delete: (slug: string, key: string) => Promise<void>;
|
|
7030
7061
|
};
|
|
7062
|
+
kv: {
|
|
7063
|
+
list: (slug: string, prefix?: string | undefined) => Promise<KVKeyEntry[]>;
|
|
7064
|
+
get: (slug: string, key: string) => Promise<string | null>;
|
|
7065
|
+
set: (slug: string, key: string, value: string) => Promise<void>;
|
|
7066
|
+
delete: (slug: string, key: string) => Promise<void>;
|
|
7067
|
+
inspect: (slug: string, key: string) => Promise<KVKeyMetadata | null>;
|
|
7068
|
+
stats: (slug: string) => Promise<KVStatsResponse>;
|
|
7069
|
+
seed: (slug: string, entries: KVSeedEntry[]) => Promise<number>;
|
|
7070
|
+
clear: (slug: string) => Promise<number>;
|
|
7071
|
+
};
|
|
7031
7072
|
domains: {
|
|
7032
7073
|
add: (slug: string, hostname: string) => Promise<GameCustomHostname>;
|
|
7033
7074
|
list: (slug: string) => Promise<GameCustomHostname[]>;
|
|
@@ -7575,4 +7616,4 @@ declare class PlaycademyInternalClient extends PlaycademyBaseClient {
|
|
|
7575
7616
|
}
|
|
7576
7617
|
|
|
7577
7618
|
export { AchievementCompletionType, ApiError, ConnectionManager, ConnectionMonitor, MessageEvents, NotificationStatus, NotificationType, PlaycademyInternalClient as PlaycademyClient, PlaycademyError, PlaycademyInternalClient, extractApiErrorInfo, messaging };
|
|
7578
|
-
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, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, 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, HostedGame, InitPayload, InsertCurrencyInput, InsertItemInput, InsertShopListingInput, InteractionType, InventoryItemRow as InventoryItem, InventoryItemWithItem, InventoryMutationResponse, ItemRow as Item, ItemType, 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, 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, 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, XpSummaryResponse };
|
|
7619
|
+
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, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, 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, 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, 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, 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, XpSummaryResponse };
|
package/dist/internal.js
CHANGED
|
@@ -1823,6 +1823,41 @@ function createDevNamespace(client) {
|
|
|
1823
1823
|
await client["request"](`/games/${slug}/bucket/${encodeURIComponent(key)}`, "DELETE");
|
|
1824
1824
|
}
|
|
1825
1825
|
},
|
|
1826
|
+
kv: {
|
|
1827
|
+
list: async (slug, prefix) => {
|
|
1828
|
+
const params = prefix ? `?prefix=${encodeURIComponent(prefix)}` : "";
|
|
1829
|
+
const result = await client["request"](`/games/${slug}/kv${params}`, "GET");
|
|
1830
|
+
return result.keys;
|
|
1831
|
+
},
|
|
1832
|
+
get: async (slug, key) => {
|
|
1833
|
+
const result = await client["request"](`/games/${slug}/kv/${encodeURIComponent(key)}`, "GET");
|
|
1834
|
+
return result.value;
|
|
1835
|
+
},
|
|
1836
|
+
set: async (slug, key, value) => {
|
|
1837
|
+
await client["request"](`/games/${slug}/kv/${encodeURIComponent(key)}`, "PUT", {
|
|
1838
|
+
body: value,
|
|
1839
|
+
headers: { "Content-Type": "text/plain" }
|
|
1840
|
+
});
|
|
1841
|
+
},
|
|
1842
|
+
delete: async (slug, key) => {
|
|
1843
|
+
await client["request"](`/games/${slug}/kv/${encodeURIComponent(key)}`, "DELETE");
|
|
1844
|
+
},
|
|
1845
|
+
inspect: async (slug, key) => {
|
|
1846
|
+
const result = await client["request"](`/games/${slug}/kv/${encodeURIComponent(key)}/metadata`, "GET");
|
|
1847
|
+
return result.metadata;
|
|
1848
|
+
},
|
|
1849
|
+
stats: async (slug) => {
|
|
1850
|
+
return client["request"](`/games/${slug}/kv/stats`, "GET");
|
|
1851
|
+
},
|
|
1852
|
+
seed: async (slug, entries) => {
|
|
1853
|
+
const result = await client["request"](`/games/${slug}/kv/bulk`, "PUT", { body: { entries } });
|
|
1854
|
+
return result.count;
|
|
1855
|
+
},
|
|
1856
|
+
clear: async (slug) => {
|
|
1857
|
+
const result = await client["request"](`/games/${slug}/kv`, "DELETE");
|
|
1858
|
+
return result.deleted;
|
|
1859
|
+
}
|
|
1860
|
+
},
|
|
1826
1861
|
domains: {
|
|
1827
1862
|
add: async (slug, hostname) => {
|
|
1828
1863
|
return client["request"](`/games/${slug}/domains`, "POST", {
|
package/dist/server.js
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
// src/server/guards.ts
|
|
2
|
+
var VALID_GRADES = [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
|
3
|
+
var VALID_SUBJECTS = [
|
|
4
|
+
"Reading",
|
|
5
|
+
"Language",
|
|
6
|
+
"Vocabulary",
|
|
7
|
+
"Social Studies",
|
|
8
|
+
"Writing",
|
|
9
|
+
"Science",
|
|
10
|
+
"FastMath",
|
|
11
|
+
"Math",
|
|
12
|
+
"None"
|
|
13
|
+
];
|
|
14
|
+
function isValidGrade(value) {
|
|
15
|
+
return typeof value === "number" && Number.isInteger(value) && VALID_GRADES.includes(value);
|
|
16
|
+
}
|
|
17
|
+
function isValidSubject(value) {
|
|
18
|
+
return typeof value === "string" && VALID_SUBJECTS.includes(value);
|
|
19
|
+
}
|
|
20
|
+
|
|
1
21
|
// src/server/namespaces/timeback.ts
|
|
2
22
|
function createTimebackNamespace(client) {
|
|
3
23
|
function enrichActivityData(data) {
|
|
@@ -8,11 +28,11 @@ function createTimebackNamespace(client) {
|
|
|
8
28
|
}
|
|
9
29
|
return {
|
|
10
30
|
endActivity: async (studentId, payload) => {
|
|
11
|
-
if (!payload.activityData.grade) {
|
|
12
|
-
throw new Error("activityData.grade
|
|
31
|
+
if (!isValidGrade(payload.activityData.grade)) {
|
|
32
|
+
throw new Error("activityData.grade must be a valid grade level (-1 to 13)");
|
|
13
33
|
}
|
|
14
|
-
if (!payload.activityData.subject) {
|
|
15
|
-
throw new Error("activityData.subject
|
|
34
|
+
if (!isValidSubject(payload.activityData.subject)) {
|
|
35
|
+
throw new Error("activityData.subject must be a valid subject");
|
|
16
36
|
}
|
|
17
37
|
const enrichedActivityData = enrichActivityData(payload.activityData);
|
|
18
38
|
return client["request"]("/api/timeback/end-activity", "POST", {
|
package/dist/types.d.ts
CHANGED
|
@@ -5438,6 +5438,36 @@ interface BucketFile {
|
|
|
5438
5438
|
uploaded: string;
|
|
5439
5439
|
contentType?: string;
|
|
5440
5440
|
}
|
|
5441
|
+
/**
|
|
5442
|
+
* KV key entry
|
|
5443
|
+
*/
|
|
5444
|
+
interface KVKeyEntry {
|
|
5445
|
+
name: string;
|
|
5446
|
+
expiration?: number;
|
|
5447
|
+
metadata?: Record<string, unknown>;
|
|
5448
|
+
}
|
|
5449
|
+
/**
|
|
5450
|
+
* KV key metadata
|
|
5451
|
+
*/
|
|
5452
|
+
interface KVKeyMetadata {
|
|
5453
|
+
metadata?: Record<string, unknown>;
|
|
5454
|
+
}
|
|
5455
|
+
/**
|
|
5456
|
+
* KV statistics
|
|
5457
|
+
*/
|
|
5458
|
+
interface KVStatsResponse {
|
|
5459
|
+
totalKeys: number;
|
|
5460
|
+
prefixes: Record<string, number>;
|
|
5461
|
+
}
|
|
5462
|
+
/**
|
|
5463
|
+
* KV seed entry for bulk operations
|
|
5464
|
+
*/
|
|
5465
|
+
interface KVSeedEntry {
|
|
5466
|
+
key: string;
|
|
5467
|
+
value: string;
|
|
5468
|
+
expiration_ttl?: number;
|
|
5469
|
+
metadata?: Record<string, unknown>;
|
|
5470
|
+
}
|
|
5441
5471
|
type DevUploadEvent = {
|
|
5442
5472
|
type: 'init';
|
|
5443
5473
|
} | {
|
|
@@ -5686,4 +5716,4 @@ interface PlaycademyServerClientState {
|
|
|
5686
5716
|
}
|
|
5687
5717
|
|
|
5688
5718
|
export { AchievementCompletionType, NotificationStatus, NotificationType, PlaycademyClient };
|
|
5689
|
-
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, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, 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, HostedGame, InitPayload, InsertCurrencyInput, InsertItemInput, InsertShopListingInput, InteractionType, InventoryItemRow as InventoryItem, InventoryItemWithItem, InventoryMutationResponse, ItemRow as Item, ItemType, 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, 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, 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, XpSummaryResponse };
|
|
5719
|
+
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, CreateCharacterData, CreateMapObjectData, CurrencyRow as Currency, 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, 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, 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, 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, XpSummaryResponse };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@playcademy/sdk",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.7",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -44,12 +44,12 @@
|
|
|
44
44
|
"@playcademy/data": "0.0.1",
|
|
45
45
|
"@playcademy/logger": "0.0.1",
|
|
46
46
|
"@playcademy/types": "0.0.1",
|
|
47
|
-
"@playcademy/sandbox": "0.3.
|
|
47
|
+
"@playcademy/sandbox": "0.3.10",
|
|
48
48
|
"@playcademy/test": "0.0.1",
|
|
49
49
|
"@playcademy/timeback": "0.0.1",
|
|
50
50
|
"@playcademy/utils": "0.0.1",
|
|
51
51
|
"@types/bun": "latest",
|
|
52
|
-
"playcademy": "0.15.
|
|
52
|
+
"playcademy": "0.15.6",
|
|
53
53
|
"rollup": "^4.50.2",
|
|
54
54
|
"rollup-plugin-dts": "^6.2.3",
|
|
55
55
|
"typescript": "^5.7.2"
|