@wavezfm/api 0.7.0 → 0.7.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/CHANGELOG.md +10 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.js.map +1 -1
- package/dist/resources/system.d.ts +4 -2
- package/dist/resources/system.js +6 -0
- package/dist/resources/system.js.map +1 -1
- package/dist/types.d.ts +23 -3
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- Protected administrative system status and infrastructure diagnostics through `client.system.adminStatus()` and `client.system.adminHealth()`.
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
|
|
11
|
+
- Public health and system-status contracts now exclude administrative authorship, internal runtime metadata, and infrastructure counters.
|
|
12
|
+
|
|
3
13
|
## 0.7.0
|
|
4
14
|
|
|
5
15
|
### Added
|
package/dist/index.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export { createRoomBotResource } from "./resources/roomBot.js";
|
|
|
18
18
|
export { parseRoomQueueSnapshot } from "./utils/roomQueue.js";
|
|
19
19
|
export { formatMentionText } from "./utils/chat.js";
|
|
20
20
|
export { createRoomBotRealtimeClient } from "./realtime/roomBot.js";
|
|
21
|
-
export type { ApiClientConfig, ApiLike, ApiQuery, ApiQueryValue, ApiRequestOptions, ApiSuccessResponse, AuthMode, AuthUser, BadgeAssignment, ChatImageUploadResponse, 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, PlaylistJsonExport, PlaylistJsonImportResult, PlaylistJsonTrack, PlaylistSummary, PlaylistTrack, PlaylistTrackAvailabilityInput, PlaylistTrackAvailabilityResult, PlaylistTrackSearchResult, RoomBotPermission, RoomExternalMediaMetadataResponse, RoomExternalMediaProvider, RoomExternalMediaSubtitleTrack, RoomExternalMediaValidationResponse, RoomActiveUser, RoomGuestPresenceResponse, RoomGuestViewer, RoomPlaybackHistoryEntry, RoomPermission, RoomPermissionOverrideMap, RoomQueueEntry, RoomQueuePlayback, RoomQueueSnapshot, RoomQueueStatusResponse, RoomQueueUser, RoomQueueViewerStatus, RoomRoleName, RoomSettingsUpdateInput, RoomBotEditMessageInput, RoomBotMessageReplyInput, RoomBotEventsResponse, RoomPresenceEventFilterType, RoomBotQueueAddResponse, RoomBotRealtimeClient, RoomBotRealtimeOptions, RoomBotSendMessageInput, RoomBotSendMessageResponse, RoomBotState, RoomBotToken, RoomPresenceEvent, RoomPresenceEventType, RoomSummary, RoomEvent, RoomEventApprovalStatus, RoomEventListResponse, RoomEventMutationResponse, RoomEventScope, RoomEventStatus, RoomEventSubmissionInput, WavezApiLocale, WavezApiMessageKey, WavezApiMessages, WavezApiMessageValues, StoreCatalogResponse, StoreCatalogItem, StoreCatalogSection, MiscStoreItem, SystemDonationGoal, SystemPublicStats, SystemStatus, TwoFactorStatus, UserSettings, UserProfile, UserBlockState, WalletBalance, WebSocketLike, WsPacket, } from "./types.js";
|
|
21
|
+
export type { ApiClientConfig, ApiLike, ApiQuery, ApiQueryValue, ApiRequestOptions, ApiSuccessResponse, AuthMode, AuthUser, BadgeAssignment, ChatImageUploadResponse, 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, PlaylistJsonExport, PlaylistJsonImportResult, PlaylistJsonTrack, PlaylistSummary, PlaylistTrack, PlaylistTrackAvailabilityInput, PlaylistTrackAvailabilityResult, PlaylistTrackSearchResult, RoomBotPermission, RoomExternalMediaMetadataResponse, RoomExternalMediaProvider, RoomExternalMediaSubtitleTrack, RoomExternalMediaValidationResponse, RoomActiveUser, RoomGuestPresenceResponse, RoomGuestViewer, RoomPlaybackHistoryEntry, RoomPermission, RoomPermissionOverrideMap, RoomQueueEntry, RoomQueuePlayback, RoomQueueSnapshot, RoomQueueStatusResponse, RoomQueueUser, RoomQueueViewerStatus, RoomRoleName, RoomSettingsUpdateInput, RoomBotEditMessageInput, RoomBotMessageReplyInput, RoomBotEventsResponse, RoomPresenceEventFilterType, RoomBotQueueAddResponse, RoomBotRealtimeClient, RoomBotRealtimeOptions, RoomBotSendMessageInput, RoomBotSendMessageResponse, RoomBotState, RoomBotToken, RoomPresenceEvent, RoomPresenceEventType, RoomSummary, RoomEvent, RoomEventApprovalStatus, RoomEventListResponse, RoomEventMutationResponse, RoomEventScope, RoomEventStatus, RoomEventSubmissionInput, WavezApiLocale, WavezApiMessageKey, WavezApiMessages, WavezApiMessageValues, StoreCatalogResponse, StoreCatalogItem, StoreCatalogSection, MiscStoreItem, AdminSystemHealth, AdminSystemStatus, SystemDonationGoal, SystemHealth, SystemPublicStats, SystemStatus, TwoFactorStatus, UserSettings, UserProfile, UserBlockState, WalletBalance, WebSocketLike, WsPacket, } from "./types.js";
|
|
22
22
|
import type { ApiClientConfig } from "./types.js";
|
|
23
23
|
export declare function createApiClient(config: ApiClientConfig): {
|
|
24
24
|
api: import("./core/api.js").WavezApi;
|
|
@@ -545,10 +545,12 @@ export declare function createApiClient(config: ApiClientConfig): {
|
|
|
545
545
|
};
|
|
546
546
|
system: {
|
|
547
547
|
status(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").SystemStatus>>;
|
|
548
|
+
adminStatus(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").AdminSystemStatus>>;
|
|
549
|
+
adminHealth(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").AdminSystemHealth>>;
|
|
548
550
|
publicStats(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").SystemPublicStats>>;
|
|
549
551
|
getNotificationCenterStatus(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").NotificationCenterStatus>>;
|
|
550
552
|
clearNotificationCenter(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").NotificationCenterClearResponse>>;
|
|
551
|
-
health(): Promise<import("./types.js").ApiSuccessResponse<
|
|
553
|
+
health(): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").SystemHealth>>;
|
|
552
554
|
};
|
|
553
555
|
events: {
|
|
554
556
|
list(roomId?: string | null): Promise<import("./types.js").ApiSuccessResponse<import("./types.js").RoomEventListResponse>>;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import type { ApiLike, NotificationCenterClearResponse, NotificationCenterStatus, SystemPublicStats, SystemStatus } from "../types.js";
|
|
1
|
+
import type { AdminSystemHealth, AdminSystemStatus, ApiLike, NotificationCenterClearResponse, NotificationCenterStatus, SystemHealth, SystemPublicStats, SystemStatus } from "../types.js";
|
|
2
2
|
export declare function createSystemResource(api: ApiLike): {
|
|
3
3
|
status(): Promise<import("../types.js").ApiSuccessResponse<SystemStatus>>;
|
|
4
|
+
adminStatus(): Promise<import("../types.js").ApiSuccessResponse<AdminSystemStatus>>;
|
|
5
|
+
adminHealth(): Promise<import("../types.js").ApiSuccessResponse<AdminSystemHealth>>;
|
|
4
6
|
publicStats(): Promise<import("../types.js").ApiSuccessResponse<SystemPublicStats>>;
|
|
5
7
|
getNotificationCenterStatus(): Promise<import("../types.js").ApiSuccessResponse<NotificationCenterStatus>>;
|
|
6
8
|
clearNotificationCenter(): Promise<import("../types.js").ApiSuccessResponse<NotificationCenterClearResponse>>;
|
|
7
|
-
health(): Promise<import("../types.js").ApiSuccessResponse<
|
|
9
|
+
health(): Promise<import("../types.js").ApiSuccessResponse<SystemHealth>>;
|
|
8
10
|
};
|
package/dist/resources/system.js
CHANGED
|
@@ -5,6 +5,12 @@ export function createSystemResource(api) {
|
|
|
5
5
|
authMode: "none",
|
|
6
6
|
});
|
|
7
7
|
},
|
|
8
|
+
adminStatus() {
|
|
9
|
+
return api.get("/admin/system/status");
|
|
10
|
+
},
|
|
11
|
+
adminHealth() {
|
|
12
|
+
return api.get("/admin/system/health");
|
|
13
|
+
},
|
|
8
14
|
publicStats() {
|
|
9
15
|
return api.get("/system/public-stats", {
|
|
10
16
|
authMode: "none",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/resources/system.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/resources/system.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC7C,OAAO;QACH,MAAM;YACF,OAAO,GAAG,CAAC,GAAG,CAAe,gBAAgB,EAAE;gBAC3C,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;QAED,WAAW;YACP,OAAO,GAAG,CAAC,GAAG,CAAoB,sBAAsB,CAAC,CAAC;QAC9D,CAAC;QAED,WAAW;YACP,OAAO,GAAG,CAAC,GAAG,CAAoB,sBAAsB,CAAC,CAAC;QAC9D,CAAC;QAED,WAAW;YACP,OAAO,GAAG,CAAC,GAAG,CAAoB,sBAAsB,EAAE;gBACtD,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;QAED,2BAA2B;YACvB,OAAO,GAAG,CAAC,GAAG,CACV,8BAA8B,CACjC,CAAC;QACN,CAAC;QAED,uBAAuB;YACnB,OAAO,GAAG,CAAC,IAAI,CACX,6BAA6B,EAC7B,EAAE,CACL,CAAC;QACN,CAAC;QAED,MAAM;YACF,OAAO,GAAG,CAAC,GAAG,CAAe,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;gBACpD,QAAQ,EAAE,MAAM;aACnB,CAAC,CAAC;QACP,CAAC;KACJ,CAAC;AACN,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -654,6 +654,23 @@ export interface SystemPublicStats {
|
|
|
654
654
|
users?: number;
|
|
655
655
|
[key: string]: unknown;
|
|
656
656
|
}
|
|
657
|
+
export interface SystemHealth {
|
|
658
|
+
status: "ok" | "degraded";
|
|
659
|
+
version: "v1" | (string & {});
|
|
660
|
+
timestamp: string;
|
|
661
|
+
dependencies: Partial<Record<"database" | "redis", "ok" | "error">>;
|
|
662
|
+
}
|
|
663
|
+
export interface AdminSystemHealth {
|
|
664
|
+
status: "ok" | "degraded";
|
|
665
|
+
version: "v1" | (string & {});
|
|
666
|
+
timestamp: string;
|
|
667
|
+
redis: Record<string, unknown>;
|
|
668
|
+
realtime: Record<string, unknown>;
|
|
669
|
+
dependencies: Record<string, {
|
|
670
|
+
status: "ok" | "error";
|
|
671
|
+
durationMs: number;
|
|
672
|
+
}>;
|
|
673
|
+
}
|
|
657
674
|
export interface SystemDonationGoal {
|
|
658
675
|
enabled: boolean;
|
|
659
676
|
title: string;
|
|
@@ -678,12 +695,15 @@ export interface SystemStatus {
|
|
|
678
695
|
spotifyEnabled: boolean;
|
|
679
696
|
soundcloudEnabled: boolean;
|
|
680
697
|
globalDonationGoal: SystemDonationGoal | null;
|
|
681
|
-
updatedAt?: string | null;
|
|
682
|
-
updatedByUserId?: string | null;
|
|
683
|
-
updatedByUsername?: string | null;
|
|
684
698
|
canBypass?: boolean;
|
|
685
699
|
[key: string]: unknown;
|
|
686
700
|
}
|
|
701
|
+
export interface AdminSystemStatus extends SystemStatus {
|
|
702
|
+
updatedAt: string | null;
|
|
703
|
+
updatedByUserId: string | null;
|
|
704
|
+
updatedByUsername: string | null;
|
|
705
|
+
runtimeStartup?: Record<string, unknown> | null;
|
|
706
|
+
}
|
|
687
707
|
export interface CheckoutSessionResponse {
|
|
688
708
|
uiMode?: "hosted" | "elements" | "mercadopago" | string;
|
|
689
709
|
checkoutUrl: string | null;
|