@wavezfm/api 0.7.15 → 0.7.17

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/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ### Saved-track restrictions and room ownership transfer (October 3)
6
+
7
+ - Added typed session-authenticated `source.getYouTubeRegionAvailability(videoId, options)` for saved or unsaved tracks. Unknown region and embed data remains nullable.
8
+ - Added session-only `room.requestOwnershipTransfer(roomId, targetUserId)` and `room.confirmOwnershipTransfer(roomId, challengeId, code)`. The current owner confirms a single-use code sent to their verified email; the SDK does not send, confirm, or retry a transfer automatically.
9
+
10
+ ### Public XP settings (October 2)
11
+
12
+ - Typed nullable `SystemStatus.progressionXp` and exported `SystemProgressionXp` for current base rewards, cooldowns, DJ requirements and the shared daily reward allowance through the existing `client.system.status()` method.
13
+
14
+ ### Purchase history (October 2)
15
+
16
+ - Added session-authenticated `client.shop.getPurchaseHistory(options)` with exported pagination, search, category and purchase detail types. Results include completed shop transactions and repeated Extras; historical currencies that were not recorded remain null. External purchases are identified without inventing their fiat amount.
17
+
5
18
  ### API synchronization (October 1, after 0.7.14)
6
19
 
7
20
  - Added session-authenticated `client.privateMessages.openConversation()` and `sendMessage()` with typed conversation/message responses and optional `clientMessageId`. Callers reuse the same UUID v4 and content to retry one send; the SDK does not retry automatically.
package/README.md CHANGED
@@ -194,6 +194,39 @@ avatar animation rates accept 1–60 FPS per frame count.
194
194
 
195
195
  Call `client.room.removeGuestPresence(slug)` when leaving a guest preview. Private room access and banner uploads are available through `verifyPrivateAccess()` and `uploadBanner()`. See the Frontend API reference for validation rules and examples.
196
196
 
197
+ `client.system.status()` includes nullable `progressionXp` with current base
198
+ woot/DJ rewards, cooldowns, DJ eligibility requirements, and the shared daily
199
+ allowance in equivalent reward hours. `dailyXpCostMs` is the cost of one reward
200
+ against that allowance, independent of XP multipliers. It resets at 00:00 UTC;
201
+ `dailyLimit.enabled: false` disables the daily cap while cooldowns still apply.
202
+ An absent or null `progressionXp` means the configuration is unavailable.
203
+
204
+ ## Purchase history
205
+
206
+ ```ts
207
+ const { data: history } = await client.shop.getPurchaseHistory({
208
+ page: 1,
209
+ pageSize: 12,
210
+ q: 'avatar',
211
+ category: 'avatar',
212
+ });
213
+ ```
214
+
215
+ This session-authenticated method returns completed shop transactions, including
216
+ repeated Extras, through `/store/purchase-history`. Results provide `items`,
217
+ `page`, `pageSize`, `total` and `totalPages`; the default page size is 12 and the
218
+ maximum is 50. Categories are `all`, `avatar`, `background`, `badge`, `videoframe`,
219
+ `misc` and `unknown`. Searches match the purchased name, collection, description,
220
+ item ID or transaction ID.
221
+
222
+ Each item records its date and absolute wallet charge. A null `currency` means
223
+ the older purchase did not record its currency; do not use today's catalog price
224
+ or currency as a substitute. `currency: 'external'` identifies external checkout
225
+ with no recorded fiat amount, and must not be displayed as a free purchase.
226
+ Inventory grants, rewards, diamond top-ups and subscription payments are not
227
+ part of this list. Updated server startup applies migration 0149 before serving
228
+ the endpoint.
229
+
197
230
  ## GIF favorites
198
231
 
199
232
  Favorites now use individual mutations so a stale tab cannot replace the saved
package/dist/index.d.ts CHANGED
@@ -19,7 +19,7 @@ export { createRoomBotResource } from "./resources/roomBot.js";
19
19
  export { parseRoomQueueSnapshot } from "./utils/roomQueue.js";
20
20
  export { formatMentionText } from "./utils/chat.js";
21
21
  export { createRoomBotRealtimeClient } from "./realtime/roomBot.js";
22
- export type { BotPrivateCommand, CountryFlagSettings, TeamDirectory, StageHoverSettings, UserProfileOptions, ApiClientConfig, ApiLike, ApiQuery, ApiQueryValue, ApiRequestOptions, ApiSuccessResponse, AuthMode, AuthUser, BadgeAssignment, ChatImageUploadResponse, ChatLinkReview, ChatMediaPreviewResponse, ChatMessage, CheckoutSessionResponse, GifFavorite, Giveaway, GiveawayEntry, GiveawayJoinEligibility, GiveawayListResponse, GiveawayMutationResponse, GiveawayPrizeDeliveryStatus, GiveawayPrizeType, GiveawayScope, GiveawayStatus, InventoryResponse, InventoryCatalogEntry, InventoryCatalogItem, LastFmAccountProfile, LastFmLinkStatus, LastFmWriteResponse, MediaSearchResponse, MediaSearchResult, MiscShopUserState, MiscStoreCurrency, MiscStoreItemKind, MiscStoreRenderMode, NotificationCenterClearResponse, NotificationCenterStatus, PlaylistExternalImportResult, PlaylistExternalImportSource, PlaylistJsonExport, PlaylistJsonImportResult, PlaylistJsonTrack, PlaylistSummary, PlaylistTrack, PlaylistTrackAvailabilityInput, PlaylistTrackAvailabilityResult, PlaylistTrackSearchResult, PrivateConversation, PrivateMessage, PrivateMessageCustomEmoji, PrivateMessageReply, PrivateMessageSendInput, PrivateMessageSendResponse, PrivateMessageUser, RoomBotPermission, RoomExternalMediaMetadataResponse, RoomExternalMediaProvider, RoomExternalMediaSubtitleTrack, RoomExternalMediaValidationResponse, RoomActiveUser, RoomCustomEmoji, RoomLinkFiltersUpdateInput, RoomGuestPresenceResponse, RoomGuestViewer, RoomGlobalLimits, RoomGlobalLimitsUpdateInput, RoomPlaybackHistoryEntry, RoomPermission, RoomPermissionOverrideMap, RoomQueueEntry, RoomQueuePlayback, RoomQueueSnapshot, RoomQueueStatusResponse, RoomQueueUser, RoomQueueViewerStatus, RoomRoleName, RoomSettingsUpdateInput, RoomStateSnapshot, RoomBotEditMessageInput, RoomBotChatEmbed, RoomBotMessageReplyInput, RoomBotEventsResponse, RoomPresenceEventFilterType, RoomBotQueueAddResponse, RoomBotRealtimeClient, RoomBotRealtimeSendMessageInput, RoomBotRealtimeOptions, RoomBotSendMessageInput, RoomBotSendMessageResponse, RoomBotState, RoomBotToken, RoomBotSettings, RoomBotSettingsUpdateInput, RoomPresenceEvent, RoomPresenceEventType, RoomSummary, RoomSystemAlert, RoomEvent, RoomEventApprovalStatus, RoomEventListResponse, RoomEventMutationResponse, RoomEventScope, RoomEventStatus, RoomEventSubmissionInput, WavezApiLocale, WavezApiMessageKey, WavezApiMessages, WavezApiMessageValues, StoreCatalogResponse, StoreCatalogItem, StoreCatalogSection, MiscStoreItem, AdminSystemHealth, AdminSystemStatus, SystemDonationGoal, SystemAlert, SystemAlertAppearance, SystemAlertInput, SystemAlertResponse, SystemHealth, SystemPublicStats, SystemStatus, TwoFactorStatus, UserSettings, UserSystemAlert, UserProfile, UserBlockState, WalletBalance, WebSocketLike, WsPacket, } from "./types.js";
22
+ export type { BotPrivateCommand, CountryFlagSettings, TeamDirectory, StageHoverSettings, UserProfileOptions, ApiClientConfig, ApiLike, ApiQuery, ApiQueryValue, ApiRequestOptions, ApiSuccessResponse, AuthMode, AuthUser, BadgeAssignment, ChatImageUploadResponse, ChatLinkReview, ChatMediaPreviewResponse, ChatMessage, CheckoutSessionResponse, GifFavorite, Giveaway, GiveawayEntry, GiveawayJoinEligibility, GiveawayListResponse, GiveawayMutationResponse, GiveawayPrizeDeliveryStatus, GiveawayPrizeType, GiveawayScope, GiveawayStatus, InventoryResponse, InventoryCatalogEntry, InventoryCatalogItem, PurchaseHistoryCategory, PurchaseHistoryCurrency, PurchaseHistoryItem, PurchaseHistoryOptions, PurchaseHistoryResponse, LastFmAccountProfile, LastFmLinkStatus, LastFmWriteResponse, MediaSearchResponse, YouTubeRegionAvailability, RoomOwnershipTransferChallenge, RoomOwnershipTransferResult, MediaSearchResult, MiscShopUserState, MiscStoreCurrency, MiscStoreItemKind, MiscStoreRenderMode, NotificationCenterClearResponse, NotificationCenterStatus, PlaylistExternalImportResult, PlaylistExternalImportSource, PlaylistJsonExport, PlaylistJsonImportResult, PlaylistJsonTrack, PlaylistSummary, PlaylistTrack, PlaylistTrackAvailabilityInput, PlaylistTrackAvailabilityResult, PlaylistTrackSearchResult, PrivateConversation, PrivateMessage, PrivateMessageCustomEmoji, PrivateMessageReply, PrivateMessageSendInput, PrivateMessageSendResponse, PrivateMessageUser, RoomBotPermission, RoomExternalMediaMetadataResponse, RoomExternalMediaProvider, RoomExternalMediaSubtitleTrack, RoomExternalMediaValidationResponse, RoomActiveUser, RoomCustomEmoji, RoomLinkFiltersUpdateInput, RoomGuestPresenceResponse, RoomGuestViewer, RoomGlobalLimits, RoomGlobalLimitsUpdateInput, RoomPlaybackHistoryEntry, RoomPermission, RoomPermissionOverrideMap, RoomQueueEntry, RoomQueuePlayback, RoomQueueSnapshot, RoomQueueStatusResponse, RoomQueueUser, RoomQueueViewerStatus, RoomRoleName, RoomSettingsUpdateInput, RoomStateSnapshot, RoomBotEditMessageInput, RoomBotChatEmbed, RoomBotMessageReplyInput, RoomBotEventsResponse, RoomPresenceEventFilterType, RoomBotQueueAddResponse, RoomBotRealtimeClient, RoomBotRealtimeSendMessageInput, RoomBotRealtimeOptions, RoomBotSendMessageInput, RoomBotSendMessageResponse, RoomBotState, RoomBotToken, RoomBotSettings, RoomBotSettingsUpdateInput, RoomPresenceEvent, RoomPresenceEventType, RoomSummary, RoomSystemAlert, RoomEvent, RoomEventApprovalStatus, RoomEventListResponse, RoomEventMutationResponse, RoomEventScope, RoomEventStatus, RoomEventSubmissionInput, WavezApiLocale, WavezApiMessageKey, WavezApiMessages, WavezApiMessageValues, StoreCatalogResponse, StoreCatalogItem, StoreCatalogSection, MiscStoreItem, AdminSystemHealth, AdminSystemStatus, SystemDonationGoal, SystemAlert, SystemAlertAppearance, SystemAlertInput, SystemAlertResponse, SystemHealth, SystemPublicStats, SystemProgressionXp, SystemStatus, TwoFactorStatus, UserSettings, UserSystemAlert, UserProfile, UserBlockState, WalletBalance, WebSocketLike, WsPacket, } from "./types.js";
23
23
  import type { ApiClientConfig } from "./types.js";
24
24
  export declare function createApiClient(config: ApiClientConfig): {
25
25
  api: import("./core/api.js").WavezApi;
@@ -254,6 +254,8 @@ export declare function createApiClient(config: ApiClientConfig): {
254
254
  room: Record<string, unknown>;
255
255
  }>>;
256
256
  setRole(roomId: string, userId: string, role: string): Promise<import("./types.js").ApiSuccessResponse<Record<string, unknown>>>;
257
+ requestOwnershipTransfer(roomId: string, targetUserId: string): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").RoomOwnershipTransferChallenge>>;
258
+ confirmOwnershipTransfer(roomId: string, challengeId: string, code: string): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").RoomOwnershipTransferResult>>;
257
259
  setQueueAccess(roomId: string, userId: string, blocked: boolean, durationMs?: number): Promise<import("./types.js").ApiSuccessResponse<Record<string, unknown>>>;
258
260
  unban(roomId: string, userId: string): Promise<import("./types.js").ApiSuccessResponse<Record<string, unknown>>>;
259
261
  createEmoji(roomId: string, input: {
@@ -361,6 +363,10 @@ export declare function createApiClient(config: ApiClientConfig): {
361
363
  searchPreview(query: string, source?: string, limit?: number, pageToken?: string | null): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").MediaSearchResponse>>;
362
364
  };
363
365
  source: {
366
+ getYouTubeRegionAvailability(videoId: string, options?: {
367
+ country?: string;
368
+ viewer?: boolean;
369
+ }): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").YouTubeRegionAvailability>>;
364
370
  search(source: string, query: string, limit?: number, pageToken?: string | null): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").MediaSearchResponse>>;
365
371
  searchYouTube(query: string, limit?: number, pageToken?: string | null): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").MediaSearchResponse>>;
366
372
  searchSoundCloud(query: string, limit?: number, pageToken?: string | null): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").MediaSearchResponse>>;
@@ -457,6 +463,7 @@ export declare function createApiClient(config: ApiClientConfig): {
457
463
  }): Promise<import("./types.js").ApiSuccessResponse<Record<string, unknown>>>;
458
464
  equip(itemId: string): Promise<import("./types.js").ApiSuccessResponse<Record<string, unknown>>>;
459
465
  getInventory(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").InventoryResponse>>;
466
+ getPurchaseHistory(options?: import("./types.js").PurchaseHistoryOptions): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").PurchaseHistoryResponse>>;
460
467
  };
461
468
  billing: {
462
469
  getCheckoutSessionStatus(sessionId: string): Promise<import("./types.js").ApiSuccessResponse<{
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ApiLike, ApiSuccessResponse, RoomBotPermission, RoomExternalMediaMetadataResponse, RoomExternalMediaValidationResponse, RoomGuestPresenceResponse, RoomPlaybackHistoryEntry, RoomQueueSnapshot, RoomQueueStatusResponse, RoomBotToken, RoomBotSettings, RoomBotSettingsUpdateInput, RoomCustomEmoji, RoomLinkFiltersUpdateInput, RoomSettingsUpdateInput, RoomSummary } from "../types.js";
1
+ import type { ApiLike, ApiSuccessResponse, RoomBotPermission, RoomExternalMediaMetadataResponse, RoomExternalMediaValidationResponse, RoomGuestPresenceResponse, RoomPlaybackHistoryEntry, RoomQueueSnapshot, RoomQueueStatusResponse, RoomBotToken, RoomBotSettings, RoomBotSettingsUpdateInput, RoomCustomEmoji, RoomLinkFiltersUpdateInput, RoomSettingsUpdateInput, RoomSummary, RoomOwnershipTransferChallenge, RoomOwnershipTransferResult } from "../types.js";
2
2
  export declare function createRoomResource(api: ApiLike): {
3
3
  list(): Promise<ApiSuccessResponse<RoomSummary[]>>;
4
4
  featured(): Promise<{
@@ -85,6 +85,10 @@ export declare function createRoomResource(api: ApiLike): {
85
85
  room: Record<string, unknown>;
86
86
  }>>;
87
87
  setRole(roomId: string, userId: string, role: string): Promise<ApiSuccessResponse<Record<string, unknown>>>;
88
+ /** Only the current owner with a verified email can request this code. */
89
+ requestOwnershipTransfer(roomId: string, targetUserId: string): Promise<ApiSuccessResponse<RoomOwnershipTransferChallenge>>;
90
+ /** Explicit confirmation; the SDK never retries or requests a code automatically. */
91
+ confirmOwnershipTransfer(roomId: string, challengeId: string, code: string): Promise<ApiSuccessResponse<RoomOwnershipTransferResult>>;
88
92
  setQueueAccess(roomId: string, userId: string, blocked: boolean, durationMs?: number): Promise<ApiSuccessResponse<Record<string, unknown>>>;
89
93
  unban(roomId: string, userId: string): Promise<ApiSuccessResponse<Record<string, unknown>>>;
90
94
  createEmoji(roomId: string, input: {
@@ -225,6 +225,14 @@ export function createRoomResource(api) {
225
225
  setRole(roomId, userId, role) {
226
226
  return api.put(`/rooms/${encodeURIComponent(roomId)}/roles/${encodeURIComponent(userId)}`, { role });
227
227
  },
228
+ /** Only the current owner with a verified email can request this code. */
229
+ requestOwnershipTransfer(roomId, targetUserId) {
230
+ return api.post(`/rooms/${encodeURIComponent(roomId)}/ownership-transfer/request`, { targetUserId });
231
+ },
232
+ /** Explicit confirmation; the SDK never retries or requests a code automatically. */
233
+ confirmOwnershipTransfer(roomId, challengeId, code) {
234
+ return api.post(`/rooms/${encodeURIComponent(roomId)}/ownership-transfer/confirm`, { challengeId, code });
235
+ },
228
236
  setQueueAccess(roomId, userId, blocked, durationMs) {
229
237
  return api.put(`/rooms/${encodeURIComponent(roomId)}/queue-access/${encodeURIComponent(userId)}`, { blocked, ...(durationMs === undefined ? {} : { durationMs }) });
230
238
  },
@@ -1 +1 @@
1
- {"version":3,"file":"room.js","sourceRoot":"","sources":["../../src/resources/room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"room.js","sourceRoot":"","sources":["../../src/resources/room.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAsB/D,MAAM,uBAAuB,GACzB,gEAAgE,CAAC;AACrE,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAoB;IACvD,YAAY;IACZ,WAAW;IACX,WAAW;IACX,cAAc;IACd,aAAa;IACb,WAAW;IACX,WAAW;IACX,UAAU;IACV,YAAY;IACZ,aAAa;CAChB,CAAC,CAAC;AAEH,SAAS,qBAAqB,CAC1B,GAAY,EACZ,UAUuC,EACvC,IAAY;IAEZ,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE;QAC/C,MAAM,EAAE,GAAG;QACX,UAAU,EAAE,aAAa;QACzB,IAAI;KACP,CAAC,CAAC;AACP,CAAC;AAED,SAAS,2BAA2B,CAChC,GAAY,EACZ,KAMC;IAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/C,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAChE,MAAM,qBAAqB,CACvB,GAAG,EACH,gCAAgC,EAChC,uBAAuB,CAC1B,CAAC;IACN,CAAC;IAED,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QACtE,IAAI,SAAc,CAAC;QACnB,IAAI,CAAC;YACD,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACL,MAAM,qBAAqB,CACvB,GAAG,EACH,+BAA+B,EAC/B,6BAA6B,CAChC,CAAC;QACN,CAAC;QAED,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,MAAM,qBAAqB,CACvB,GAAG,EACH,+BAA+B,EAC/B,6BAA6B,CAChC,CAAC;QACN,CAAC;QAED,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,MAAM,qBAAqB,CACvB,GAAG,EACH,2CAA2C,EAC3C,+BAA+B,CAClC,CAAC;QACN,CAAC;IACL,CAAC;IAED,MAAM,gBAAgB,GAClB,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE;QACjE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE;QAC5B,CAAC,CAAC,GAAG,CAAC;IAEd,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAC9D,MAAM,qBAAqB,CACvB,GAAG,EACH,kCAAkC,EAClC,yBAAyB,CAC5B,CAAC;IACN,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC9B,MAAM,qBAAqB,CACvB,GAAG,EACH,sCAAsC,EACtC,4BAA4B,CAC/B,CAAC;IACN,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,MAAM,qBAAqB,CACvB,GAAG,EACH,uCAAuC,EACvC,8BAA8B,CACjC,CAAC;QACN,CAAC;QAED,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,MAAM,qBAAqB,CACvB,GAAG,EACH,iCAAiC,EACjC,8BAA8B,CACjC,CAAC;QACN,CAAC;QAED,IACI,KAAK,CAAC,WAAW,CAAC,IAAI,CAClB,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,uBAAuB,CAAC,GAAG,CAAC,UAAU,CAAC,CAC3D,EACH,CAAC;YACC,MAAM,qBAAqB,CACvB,GAAG,EACH,gCAAgC,EAChC,6BAA6B,CAChC,CAAC;QACN,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;YACzC,MAAM,qBAAqB,CACvB,GAAG,EACH,kCAAkC,EAClC,yBAAyB,CAC5B,CAAC;QACN,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACtD,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;YAC7C,MAAM,qBAAqB,CACvB,GAAG,EACH,iCAAiC,EACjC,+BAA+B,CAClC,CAAC;QACN,CAAC;IACL,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAChC,OAAO,4EAA4E,CAAC,IAAI,CACpF,KAAK,CACR,CAAC;AACN,CAAC;AAED,SAAS,oBAAoB,CACzB,GAAY,EACZ,IAAY,EACZ,KAAyC;IAEzC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACrE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,IAAI,KAAK,EAAE,CAAC;YACR,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC3C,OAAO;QACH,IAAI;YACA,OAAO,GAAG,CAAC,GAAG,CAAgB,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,KAAK,CAAC,QAAQ;YACV,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAAgB,QAAQ,EAAE;gBACpD,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;YAEH,OAAO;gBACH,GAAG,QAAQ;gBACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACjE,CAAC;QACN,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,IAAY;YACxB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAG3B,UAAU,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE;gBACrC,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;YAEH,OAAO;gBACH,GAAG,QAAQ;gBACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;aAChC,CAAC;QACN,CAAC;QAED,gBAAgB,CAAC,IAAY;YACzB,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,EACnD,EAAE,QAAQ,EAAE,MAAM,EAAE,CACvB,CAAC;QACN,CAAC;QAED,kBAAkB,CAAC,IAAY;YAC3B,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,EACnD,SAAS,EACT,EAAE,QAAQ,EAAE,MAAM,EAAE,CACvB,CAAC;QACN,CAAC;QAED,cAAc,CAAC,IAAY;YACvB,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAC5C,CAAC;QACN,CAAC;QAED,mBAAmB,CAAC,IAAY;YAC5B,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,IAAI,CAAC,uBAAuB,EACzD,SAAS,EACT,EAAE,QAAQ,EAAE,MAAM,EAAE,CACvB,CAAC;QACN,CAAC;QAED,mBAAmB,CAAC,IAAY,EAAE,QAAgB;YAC9C,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,EACnD,EAAE,QAAQ,EAAE,CACf,CAAC;QACN,CAAC;QAED,YAAY,CAAC,MAAc,EAAE,KAAsB,EAAE,QAAiB;YAClE,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,QAAQ,GAAG,KAAK,YAAY,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;YACpE,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,EAAE,CAAC;gBAC/B,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,IAAI,QAAQ,CAAC,CAAC;YAC1D,CAAC;YACD,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAC7C,QAAQ,CACX,CAAC;QACN,CAAC;QAED,WAAW,CAAC,IAAY;YACpB,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAC7C,EAAE,QAAQ,EAAE,MAAM,EAAE,CACvB,CAAC;QACN,CAAC;QAED,wBAAwB,CAAC,GAAW;YAChC,OAAO,GAAG,CAAC,GAAG,CACV,gCAAgC,EAChC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CACrB,CAAC;QACN,CAAC;QAED,qBAAqB,CAAC,GAAW;YAC7B,OAAO,GAAG,CAAC,GAAG,CACV,gCAAgC,EAChC,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CACrB,CAAC;QACN,CAAC;QAED,sBAAsB,CAAC,KAItB;YACG,OAAO,GAAG,CAAC,GAAG,CACV,6CAA6C,EAC7C;gBACI,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,MAAM;aAClB,CACJ,CAAC;QACN,CAAC;QAED,uBAAuB,CAAC,KAAoC;YACxD,OAAO,oBAAoB,CACvB,GAAG,EACH,2CAA2C,EAC3C,KAAK,CACR,CAAC;QACN,CAAC;QAED,KAAK,CAAC,cAAc,CAChB,IAAY,EACZ,OAIC;YAED,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAC1B,UAAU,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAC7C,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,MAAM,EAAE,CAC5C,CAAC;YAEF,OAAO;gBACH,GAAG,QAAQ;gBACX,IAAI,EAAE,sBAAsB,CAAC,QAAQ,CAAC,IAAI,EAAE;oBACxC,YAAY,EAAE,OAAO,EAAE,YAAY,IAAI,IAAI;oBAC3C,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,IAAI;iBAClD,CAAC;aACL,CAAC;QACN,CAAC;QAED,MAAM,CAAC,KAON;YACG,OAAO,GAAG,CAAC,IAAI,CAAc,QAAQ,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,YAAoB;YAC3B,IAAI,MAAM,GAAG,YAAY,CAAC;YAE1B,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAG3B,UAAU,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE;oBAC7C,QAAQ,EAAE,MAAM;iBACnB,CAAC,CAAC;gBACH,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,CAAC;YAED,OAAO,GAAG,CAAC,IAAI,CAA0B,aAAa,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,KAAK,CAAC,MAAc;YAChB,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAC5C,EAAE,EACF,EAAE,OAAO,EAAE,MAAM,EAAE,CACtB,CAAC;QACN,CAAC;QAED,QAAQ,CAAC,MAAc;YACnB,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAC/C,EAAE,EACF,EAAE,OAAO,EAAE,MAAM,EAAE,CACtB,CAAC;QACN,CAAC;QAED,UAAU,CAAC,MAAc;YACrB,OAAO,GAAG,CAAC,MAAM,CACb,UAAU,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAC/C,EAAE,OAAO,EAAE,MAAM,EAAE,CACtB,CAAC;QACN,CAAC;QAED,aAAa,CAAC,MAAc;YACxB,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,MAAM,CAAC,aAAa,CACpD,CAAC;QACN,CAAC;QAED,kBAAkB,CAAC,MAAc,EAAE,KAAK,GAAG,EAAE;YACzC,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,MAAM,CAAC,mBAAmB,EACvD,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CACvB,CAAC;QACN,CAAC;QAED,MAAM,CAAC,MAAc;YACjB,OAAO,GAAG,CAAC,MAAM,CAGd,UAAU,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,cAAc,CACV,MAAc,EACd,KAMC;YAED,2BAA2B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACxC,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,MAAM,CAAC,aAAa,EACjD,KAAK,CACR,CAAC;QACN,CAAC;QAED,QAAQ,CAAC,MAAc;YACnB,OAAO,GAAG,CAAC,GAAG,CAAoB,UAAU,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACzF,CAAC;QAED,SAAS,CAAC,MAAc,EAAE,OAAe,EAAE,KAAiC;YACxE,2BAA2B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACxC,OAAO,GAAG,CAAC,KAAK,CACZ,UAAU,kBAAkB,CAAC,MAAM,CAAC,eAAe,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAChF,KAAK,CACR,CAAC;QACN,CAAC;QAED,UAAU,CAAC,MAAc;YACrB,OAAO,GAAG,CAAC,GAAG,CAAoB,UAAU,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACrF,CAAC;QAED,aAAa,CAAC,MAAc,EAAE,KAAc,EAAE,IAAa;YACvD,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,MAAM,CAAC,aAAa,EACjD;gBACI,KAAK,EACD,KAAK,IAAI,IAAI;oBACT,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;oBACjB,CAAC,CAAC,SAAS;aACtB,CACJ,CAAC;QACN,CAAC;QAED,cAAc,CAAC,MAAc;YACzB,OAAO,GAAG,CAAC,MAAM,CACb,UAAU,kBAAkB,CAAC,MAAM,CAAC,aAAa,CACpD,CAAC;QACN,CAAC;QAED,cAAc,CAAC,MAAc,EAAE,KAA8B;YACzD,OAAO,GAAG,CAAC,KAAK,CACZ,UAAU,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAC/C,KAAK,CACR,CAAC;QACN,CAAC;QAED,iBAAiB,CACb,MAAc,EACd,KAAiC;YAEjC,OAAO,GAAG,CAAC,KAAK,CACZ,UAAU,kBAAkB,CAAC,MAAM,CAAC,eAAe,EACnD,KAAK,CACR,CAAC;QACN,CAAC;QAED,iBAAiB,CACb,MAAc,EACd,KAAwC;YAExC,OAAO,GAAG,CAAC,KAAK,CACZ,UAAU,kBAAkB,CAAC,MAAM,CAAC,eAAe,EACnD,KAAK,CACR,CAAC;QACN,CAAC;QAED,OAAO,CAAC,MAAc,EAAE,MAAc,EAAE,IAAY;YAChD,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,MAAM,CAAC,UAAU,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAC1E,EAAE,IAAI,EAAE,CACX,CAAC;QACN,CAAC;QAED,0EAA0E;QAC1E,wBAAwB,CAAC,MAAc,EAAE,YAAoB;YACzD,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,MAAM,CAAC,6BAA6B,EACjE,EAAE,YAAY,EAAE,CACnB,CAAC;QACN,CAAC;QAED,qFAAqF;QACrF,wBAAwB,CAAC,MAAc,EAAE,WAAmB,EAAE,IAAY;YACtE,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,MAAM,CAAC,6BAA6B,EACjE,EAAE,WAAW,EAAE,IAAI,EAAE,CACxB,CAAC;QACN,CAAC;QAED,cAAc,CAAC,MAAc,EAAE,MAAc,EAAE,OAAgB,EAAE,UAAmB;YAChF,OAAO,GAAG,CAAC,GAAG,CACV,UAAU,kBAAkB,CAAC,MAAM,CAAC,iBAAiB,kBAAkB,CAAC,MAAM,CAAC,EAAE,EACjF,EAAE,OAAO,EAAE,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CACnE,CAAC;QACN,CAAC;QAED,KAAK,CAAC,MAAc,EAAE,MAAc;YAChC,OAAO,GAAG,CAAC,MAAM,CACb,UAAU,kBAAkB,CAAC,MAAM,CAAC,SAAS,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAC5E,CAAC;QACN,CAAC;QAED,WAAW,CAAC,MAAc,EAAE,KAA8C;YACtE,OAAO,GAAG,CAAC,IAAI,CACX,UAAU,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAC7C,KAAK,CACR,CAAC;QACN,CAAC;QAED,WAAW,CACP,MAAc,EACd,OAAe,EACf,KAA+C;YAE/C,OAAO,GAAG,CAAC,KAAK,CACZ,UAAU,kBAAkB,CAAC,MAAM,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAC5E,KAAK,CACR,CAAC;QACN,CAAC;QAED,WAAW,CAAC,MAAc,EAAE,OAAe;YACvC,OAAO,GAAG,CAAC,MAAM,CACb,UAAU,kBAAkB,CAAC,MAAM,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAC/E,CAAC;QACN,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ApiLike, InventoryResponse, MiscShopUserState, StoreCatalogResponse, WalletBalance } from "../types.js";
1
+ import type { ApiLike, InventoryResponse, MiscShopUserState, PurchaseHistoryOptions, PurchaseHistoryResponse, StoreCatalogResponse, WalletBalance } from "../types.js";
2
2
  export declare function createShopResource(api: ApiLike): {
3
3
  getCatalog(): Promise<import("../types.js").ApiSuccessResponse<StoreCatalogResponse>>;
4
4
  getWallet(): Promise<import("../types.js").ApiSuccessResponse<WalletBalance>>;
@@ -17,4 +17,6 @@ export declare function createShopResource(api: ApiLike): {
17
17
  }): Promise<import("../types.js").ApiSuccessResponse<Record<string, unknown>>>;
18
18
  equip(itemId: string): Promise<import("../types.js").ApiSuccessResponse<Record<string, unknown>>>;
19
19
  getInventory(): Promise<import("../types.js").ApiSuccessResponse<InventoryResponse>>;
20
+ /** Completed shop purchases, including repeated Extras; session-authenticated. */
21
+ getPurchaseHistory(options?: PurchaseHistoryOptions): Promise<import("../types.js").ApiSuccessResponse<PurchaseHistoryResponse>>;
20
22
  };
@@ -23,6 +23,14 @@ export function createShopResource(api) {
23
23
  getInventory() {
24
24
  return api.get("/inventory");
25
25
  },
26
+ /** Completed shop purchases, including repeated Extras; session-authenticated. */
27
+ getPurchaseHistory(options) {
28
+ return api.get("/store/purchase-history", {
29
+ query: options ? { ...options } : undefined,
30
+ cache: "no-store",
31
+ authMode: "session",
32
+ });
33
+ },
26
34
  };
27
35
  }
28
36
  //# sourceMappingURL=shop.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shop.js","sourceRoot":"","sources":["../../src/resources/shop.ts"],"names":[],"mappings":"AAQA,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC3C,OAAO;QACH,UAAU;YACN,OAAO,GAAG,CAAC,GAAG,CAAuB,QAAQ,EAAE;gBAC3C,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;QAED,SAAS;YACL,OAAO,GAAG,CAAC,GAAG,CAAgB,SAAS,CAAC,CAAC;QAC7C,CAAC;QAED,gBAAgB;YACZ,OAAO,GAAG,CAAC,GAAG,CAAoB,wBAAwB,CAAC,CAAC;QAChE,CAAC;QAED,QAAQ,CAAC,KAAkD;YACvD,OAAO,GAAG,CAAC,IAAI,CAA0B,iBAAiB,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC;QAED,YAAY,CAAC,KAOZ;YACG,OAAO,GAAG,CAAC,IAAI,CACX,sBAAsB,EACtB,KAAK,CACR,CAAC;QACN,CAAC;QAED,KAAK,CAAC,MAAc;YAChB,OAAO,GAAG,CAAC,IAAI,CAA0B,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,YAAY;YACR,OAAO,GAAG,CAAC,GAAG,CAAoB,YAAY,CAAC,CAAC;QACpD,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"shop.js","sourceRoot":"","sources":["../../src/resources/shop.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC3C,OAAO;QACH,UAAU;YACN,OAAO,GAAG,CAAC,GAAG,CAAuB,QAAQ,EAAE;gBAC3C,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;QAED,SAAS;YACL,OAAO,GAAG,CAAC,GAAG,CAAgB,SAAS,CAAC,CAAC;QAC7C,CAAC;QAED,gBAAgB;YACZ,OAAO,GAAG,CAAC,GAAG,CAAoB,wBAAwB,CAAC,CAAC;QAChE,CAAC;QAED,QAAQ,CAAC,KAAkD;YACvD,OAAO,GAAG,CAAC,IAAI,CAA0B,iBAAiB,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC;QAED,YAAY,CAAC,KAOZ;YACG,OAAO,GAAG,CAAC,IAAI,CACX,sBAAsB,EACtB,KAAK,CACR,CAAC;QACN,CAAC;QAED,KAAK,CAAC,MAAc;YAChB,OAAO,GAAG,CAAC,IAAI,CAA0B,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,YAAY;YACR,OAAO,GAAG,CAAC,GAAG,CAAoB,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,kFAAkF;QAClF,kBAAkB,CAAC,OAAgC;YAC/C,OAAO,GAAG,CAAC,GAAG,CAA0B,yBAAyB,EAAE;gBAC/D,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;gBAC3C,KAAK,EAAE,UAAU;gBACjB,QAAQ,EAAE,SAAS;aACtB,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -1,5 +1,10 @@
1
- import type { ApiLike, MediaSearchResponse } from "../types.js";
1
+ import type { ApiLike, MediaSearchResponse, YouTubeRegionAvailability } from "../types.js";
2
2
  export declare function createSourceResource(api: ApiLike): {
3
+ /** Checks any saved or unsaved YouTube video without changing playlist metadata. */
4
+ getYouTubeRegionAvailability(videoId: string, options?: {
5
+ country?: string;
6
+ viewer?: boolean;
7
+ }): Promise<import("../types.js").ApiSuccessResponse<YouTubeRegionAvailability>>;
3
8
  search(source: string, query: string, limit?: number, pageToken?: string | null): Promise<import("../types.js").ApiSuccessResponse<MediaSearchResponse>>;
4
9
  searchYouTube(query: string, limit?: number, pageToken?: string | null): Promise<import("../types.js").ApiSuccessResponse<MediaSearchResponse>>;
5
10
  searchSoundCloud(query: string, limit?: number, pageToken?: string | null): Promise<import("../types.js").ApiSuccessResponse<MediaSearchResponse>>;
@@ -1,5 +1,15 @@
1
1
  export function createSourceResource(api) {
2
2
  return {
3
+ /** Checks any saved or unsaved YouTube video without changing playlist metadata. */
4
+ getYouTubeRegionAvailability(videoId, options = {}) {
5
+ return api.get("/media/youtube/region-availability", {
6
+ query: {
7
+ videoId,
8
+ country: options.country,
9
+ viewer: options.viewer ? "1" : undefined,
10
+ },
11
+ });
12
+ },
3
13
  search(source, query, limit = 8, pageToken) {
4
14
  return api.get("/media/search", {
5
15
  query: {
@@ -1 +1 @@
1
- {"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/resources/source.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC7C,OAAO;QACH,MAAM,CACF,MAAc,EACd,KAAa,EACb,KAAK,GAAG,CAAC,EACT,SAAyB;YAEzB,OAAO,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;gBACjD,KAAK,EAAE;oBACH,MAAM;oBACN,CAAC,EAAE,KAAK;oBACR,KAAK;oBACL,SAAS,EAAE,SAAS,IAAI,SAAS;iBACpC;aACJ,CAAC,CAAC;QACP,CAAC;QAED,aAAa,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC,EAAE,SAAyB;YAC7D,OAAO,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;gBACjD,KAAK,EAAE;oBACH,MAAM,EAAE,SAAS;oBACjB,CAAC,EAAE,KAAK;oBACR,KAAK;oBACL,SAAS,EAAE,SAAS,IAAI,SAAS;iBACpC;aACJ,CAAC,CAAC;QACP,CAAC;QAED,gBAAgB,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC,EAAE,SAAyB;YAChE,OAAO,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;gBACjD,KAAK,EAAE;oBACH,MAAM,EAAE,YAAY;oBACpB,CAAC,EAAE,KAAK;oBACR,KAAK;oBACL,SAAS,EAAE,SAAS,IAAI,SAAS;iBACpC;aACJ,CAAC,CAAC;QACP,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC;YACpC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC5C,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;oBAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;iBAChD,CAAC;gBACF,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;oBAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;iBACnD,CAAC;aACL,CAAC,CAAC;YAEH,OAAO;gBACH,IAAI,EAAE;oBACF,OAAO,EAAE,OAAO,CAAC,IAAI;oBACrB,UAAU,EAAE,UAAU,CAAC,IAAI;iBAC9B;gBACD,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;aAC3B,CAAC;QACN,CAAC;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/resources/source.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC7C,OAAO;QACH,oFAAoF;QACpF,4BAA4B,CAAC,OAAe,EAAE,OAAO,GAA2C,EAAE;YAC9F,OAAO,GAAG,CAAC,GAAG,CAA4B,oCAAoC,EAAE;gBAC5E,KAAK,EAAE;oBACH,OAAO;oBACP,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;iBAC3C;aACJ,CAAC,CAAC;QACP,CAAC;QAED,MAAM,CACF,MAAc,EACd,KAAa,EACb,KAAK,GAAG,CAAC,EACT,SAAyB;YAEzB,OAAO,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;gBACjD,KAAK,EAAE;oBACH,MAAM;oBACN,CAAC,EAAE,KAAK;oBACR,KAAK;oBACL,SAAS,EAAE,SAAS,IAAI,SAAS;iBACpC;aACJ,CAAC,CAAC;QACP,CAAC;QAED,aAAa,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC,EAAE,SAAyB;YAC7D,OAAO,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;gBACjD,KAAK,EAAE;oBACH,MAAM,EAAE,SAAS;oBACjB,CAAC,EAAE,KAAK;oBACR,KAAK;oBACL,SAAS,EAAE,SAAS,IAAI,SAAS;iBACpC;aACJ,CAAC,CAAC;QACP,CAAC;QAED,gBAAgB,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC,EAAE,SAAyB;YAChE,OAAO,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;gBACjD,KAAK,EAAE;oBACH,MAAM,EAAE,YAAY;oBACpB,CAAC,EAAE,KAAK;oBACR,KAAK;oBACL,SAAS,EAAE,SAAS,IAAI,SAAS;iBACpC;aACJ,CAAC,CAAC;QACP,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC;YACpC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC5C,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;oBAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;iBAChD,CAAC;gBACF,GAAG,CAAC,GAAG,CAAsB,eAAe,EAAE;oBAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;iBACnD,CAAC;aACL,CAAC,CAAC;YAEH,OAAO;gBACH,IAAI,EAAE;oBACF,OAAO,EAAE,OAAO,CAAC,IAAI;oBACrB,UAAU,EAAE,UAAU,CAAC,IAAI;iBAC9B;gBACD,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,OAAO,CAAC,OAAO;aAC3B,CAAC;QACN,CAAC;KACJ,CAAC;AACN,CAAC"}
package/dist/types.d.ts CHANGED
@@ -511,6 +511,29 @@ export interface MediaSearchResponse {
511
511
  export interface ChatMediaPreviewResponse {
512
512
  previewUrl: string | null;
513
513
  }
514
+ /** A provider lookup can be partial or unavailable; null never means allowed. */
515
+ export interface YouTubeRegionAvailability {
516
+ videoId: string;
517
+ country: string;
518
+ blocked: boolean | null;
519
+ allowedCountries: string[] | null;
520
+ blockedCountries: string[] | null;
521
+ embeddable: boolean | null;
522
+ }
523
+ export interface RoomOwnershipTransferChallenge {
524
+ challengeId: string;
525
+ targetUserId: string;
526
+ maskedEmail: string;
527
+ expiresAt: string;
528
+ resendAfter: string;
529
+ codeLength: 6;
530
+ }
531
+ export interface RoomOwnershipTransferResult {
532
+ userId: string;
533
+ role: "host";
534
+ previousOwnerId: string;
535
+ ownerChanged: true;
536
+ }
514
537
  /** Pending public chat message held for moderator approval. */
515
538
  export interface ChatLinkReview {
516
539
  id: string;
@@ -883,6 +906,37 @@ export interface RoomBotState {
883
906
  snapshot: RoomStateSnapshot;
884
907
  customEmojis: RoomCustomEmoji[];
885
908
  }
909
+ export type PurchaseHistoryCategory = "avatar" | "background" | "badge" | "videoframe" | "misc" | "unknown";
910
+ export type PurchaseHistoryCurrency = "coins" | "diamonds" | "free" | "external";
911
+ export interface PurchaseHistoryOptions {
912
+ page?: number;
913
+ pageSize?: number;
914
+ q?: string;
915
+ category?: PurchaseHistoryCategory | "all";
916
+ }
917
+ export interface PurchaseHistoryItem {
918
+ id: string;
919
+ itemId: string | null;
920
+ name: string;
921
+ category: PurchaseHistoryCategory;
922
+ collection: string | null;
923
+ imageUrl: string | null;
924
+ frameCount?: number;
925
+ frameWidth?: number;
926
+ /** Absolute recorded wallet charge; external fiat amounts are not tracked here. */
927
+ amount: number;
928
+ /** Null means the historical purchase currency was not recorded. */
929
+ currency: PurchaseHistoryCurrency | null;
930
+ purchasedAt: string;
931
+ description: string;
932
+ }
933
+ export interface PurchaseHistoryResponse {
934
+ items: PurchaseHistoryItem[];
935
+ page: number;
936
+ pageSize: number;
937
+ total: number;
938
+ totalPages: number;
939
+ }
886
940
  /** Extensible room snapshot returned by bot state and room realtime events. */
887
941
  export interface RoomStateSnapshot extends Record<string, unknown> {
888
942
  roomId?: string;
@@ -999,7 +1053,35 @@ export interface SystemDonationGoal {
999
1053
  raisedCents: number;
1000
1054
  [key: string]: unknown;
1001
1055
  }
1056
+ export interface SystemProgressionXp {
1057
+ dailyLimit: {
1058
+ enabled: boolean;
1059
+ /** Shared equivalent reward hours; this is not a fixed XP amount. */
1060
+ hours: number;
1061
+ resetTimeUtc: "00:00";
1062
+ };
1063
+ globalCooldownMs: number;
1064
+ woot: {
1065
+ xp: number;
1066
+ cooldownMs: number;
1067
+ dailyXpCostMs: number;
1068
+ };
1069
+ dj: {
1070
+ xp: number;
1071
+ cooldownMs: number;
1072
+ replayCooldownMs: number;
1073
+ dailyXpCostMs: number;
1074
+ minDurationMs: number;
1075
+ minPlaybackMs: number;
1076
+ minPlaybackPercent: number;
1077
+ maxRequiredPlaybackMs: number;
1078
+ minWoots: number;
1079
+ minHumans: number;
1080
+ };
1081
+ }
1002
1082
  export interface SystemStatus {
1083
+ /** Null when XP configuration is unavailable; omitted by older servers. */
1084
+ progressionXp?: SystemProgressionXp | null;
1003
1085
  donationCurrencySelectionEnabled?: boolean;
1004
1086
  customPronounsEnabled?: boolean;
1005
1087
  teamPageEnabled?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavezfm/api",
3
- "version": "0.7.15",
3
+ "version": "0.7.17",
4
4
  "description": "Official JavaScript/TypeScript API client for WavezFM.",
5
5
  "homepage": "https://docs.wavez.fm/docs",
6
6
  "repository": {