@actschurch/ccms-sdk 0.0.4 → 0.0.5
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/README.md +55 -1
- package/dist/core/Config.d.ts +21 -2
- package/dist/core/Config.d.ts.map +1 -1
- package/dist/core/Config.js.map +1 -1
- package/dist/core/HttpClient.d.ts +5 -0
- package/dist/core/HttpClient.d.ts.map +1 -1
- package/dist/core/HttpClient.js +75 -0
- package/dist/core/HttpClient.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/models/file/Folder.d.ts +179 -0
- package/dist/models/file/Folder.d.ts.map +1 -0
- package/dist/models/file/Folder.js +6 -0
- package/dist/models/file/Folder.js.map +1 -0
- package/dist/models/file/ModelView/FileRecordModelView.d.ts +3 -0
- package/dist/models/file/ModelView/FileRecordModelView.d.ts.map +1 -1
- package/dist/models/file/PresignUploadRequest.d.ts +4 -0
- package/dist/models/file/PresignUploadRequest.d.ts.map +1 -1
- package/dist/models/file/index.d.ts +1 -0
- package/dist/models/file/index.d.ts.map +1 -1
- package/dist/models/file/index.js +1 -0
- package/dist/models/file/index.js.map +1 -1
- package/dist/models/index.d.ts +1 -0
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +2 -0
- package/dist/models/index.js.map +1 -1
- package/dist/models/socialmedia/index.d.ts +322 -0
- package/dist/models/socialmedia/index.d.ts.map +1 -0
- package/dist/models/socialmedia/index.js +6 -0
- package/dist/models/socialmedia/index.js.map +1 -0
- package/dist/models/system/ModelView/Health.d.ts +14 -11
- package/dist/models/system/ModelView/Health.d.ts.map +1 -1
- package/dist/models/system/ModelView/Health.js +1 -0
- package/dist/models/system/ModelView/Health.js.map +1 -1
- package/dist/models/system/ModelView/RabbitMQManagement.d.ts +93 -92
- package/dist/models/system/ModelView/RabbitMQManagement.d.ts.map +1 -1
- package/dist/models/system/ModelView/RedisManagement.d.ts +94 -42
- package/dist/models/system/ModelView/RedisManagement.d.ts.map +1 -1
- package/dist/models/task/ModelView/CreateTask.d.ts +14 -17
- package/dist/models/task/ModelView/CreateTask.d.ts.map +1 -1
- package/dist/models/task/ModelView/UpdateTaskPriorityRequest.d.ts +10 -0
- package/dist/models/task/ModelView/UpdateTaskPriorityRequest.d.ts.map +1 -0
- package/dist/models/task/ModelView/UpdateTaskPriorityRequest.js +2 -0
- package/dist/models/task/ModelView/UpdateTaskPriorityRequest.js.map +1 -0
- package/dist/models/task/ModelView/UpdateTaskProjectRequest.d.ts +10 -0
- package/dist/models/task/ModelView/UpdateTaskProjectRequest.d.ts.map +1 -0
- package/dist/models/task/ModelView/UpdateTaskProjectRequest.js +2 -0
- package/dist/models/task/ModelView/UpdateTaskProjectRequest.js.map +1 -0
- package/dist/models/task/ModelView/index.d.ts +2 -0
- package/dist/models/task/ModelView/index.d.ts.map +1 -1
- package/dist/models/task/ModelView/index.js +2 -0
- package/dist/models/task/ModelView/index.js.map +1 -1
- package/dist/react/CCMSProvider.d.ts +1 -19
- package/dist/react/CCMSProvider.d.ts.map +1 -1
- package/dist/react/CCMSProvider.js +71 -56
- package/dist/react/CCMSProvider.js.map +1 -1
- package/dist/react/hooks/index.d.ts +0 -1
- package/dist/react/hooks/index.d.ts.map +1 -1
- package/dist/react/hooks/index.js +1 -3
- package/dist/react/hooks/index.js.map +1 -1
- package/dist/react/hooks/services/index.d.ts +1 -0
- package/dist/react/hooks/services/index.d.ts.map +1 -1
- package/dist/react/hooks/services/index.js +2 -0
- package/dist/react/hooks/services/index.js.map +1 -1
- package/dist/react/hooks/services/useSocialMediaServices.d.ts +43 -0
- package/dist/react/hooks/services/useSocialMediaServices.d.ts.map +1 -0
- package/dist/react/hooks/services/useSocialMediaServices.js +65 -0
- package/dist/react/hooks/services/useSocialMediaServices.js.map +1 -0
- package/dist/react/hooks/services/useUsersServices.d.ts +5 -1
- package/dist/react/hooks/services/useUsersServices.d.ts.map +1 -1
- package/dist/react/hooks/services/useUsersServices.js +6 -0
- package/dist/react/hooks/services/useUsersServices.js.map +1 -1
- package/dist/react/hooks/useCCMS.d.ts +7 -4
- package/dist/react/hooks/useCCMS.d.ts.map +1 -1
- package/dist/react/hooks/useCCMS.js +8 -4
- package/dist/react/hooks/useCCMS.js.map +1 -1
- package/dist/realtime/index.d.ts +1 -1
- package/dist/realtime/index.d.ts.map +1 -1
- package/dist/realtime/index.js +2 -5
- package/dist/realtime/index.js.map +1 -1
- package/dist/realtime/presence/ActivityTracker.d.ts +141 -0
- package/dist/realtime/presence/ActivityTracker.d.ts.map +1 -0
- package/dist/realtime/presence/ActivityTracker.js +342 -0
- package/dist/realtime/presence/ActivityTracker.js.map +1 -0
- package/dist/realtime/presence/AutoHeartbeatManager.d.ts +68 -0
- package/dist/realtime/presence/AutoHeartbeatManager.d.ts.map +1 -0
- package/dist/realtime/presence/AutoHeartbeatManager.js +160 -0
- package/dist/realtime/presence/AutoHeartbeatManager.js.map +1 -0
- package/dist/realtime/presence/IdleDetector.d.ts +107 -0
- package/dist/realtime/presence/IdleDetector.d.ts.map +1 -0
- package/dist/realtime/presence/IdleDetector.js +270 -0
- package/dist/realtime/presence/IdleDetector.js.map +1 -0
- package/dist/realtime/presence/PresenceClient.d.ts +18 -2
- package/dist/realtime/presence/PresenceClient.d.ts.map +1 -1
- package/dist/realtime/presence/PresenceClient.js +54 -1
- package/dist/realtime/presence/PresenceClient.js.map +1 -1
- package/dist/realtime/presence/PresenceManager.d.ts +191 -0
- package/dist/realtime/presence/PresenceManager.d.ts.map +1 -0
- package/dist/realtime/presence/PresenceManager.js +314 -0
- package/dist/realtime/presence/PresenceManager.js.map +1 -0
- package/dist/realtime/presence/PresenceProvider.d.ts +16 -0
- package/dist/realtime/presence/PresenceProvider.d.ts.map +1 -1
- package/dist/realtime/presence/PresenceProvider.js +16 -0
- package/dist/realtime/presence/PresenceProvider.js.map +1 -1
- package/dist/realtime/presence/index.d.ts +5 -0
- package/dist/realtime/presence/index.d.ts.map +1 -1
- package/dist/realtime/presence/index.js +10 -0
- package/dist/realtime/presence/index.js.map +1 -1
- package/dist/realtime/presence/types.d.ts +23 -5
- package/dist/realtime/presence/types.d.ts.map +1 -1
- package/dist/realtime/presence/types.js +5 -5
- package/dist/realtime/presence/types.js.map +1 -1
- package/dist/realtime/presence/utils.d.ts +87 -0
- package/dist/realtime/presence/utils.d.ts.map +1 -0
- package/dist/realtime/presence/utils.js +191 -0
- package/dist/realtime/presence/utils.js.map +1 -0
- package/dist/realtime/shared/BaseSignalRClient.d.ts.map +1 -1
- package/dist/realtime/shared/BaseSignalRClient.js +38 -4
- package/dist/realtime/shared/BaseSignalRClient.js.map +1 -1
- package/dist/services/file/FileService.d.ts +55 -1
- package/dist/services/file/FileService.d.ts.map +1 -1
- package/dist/services/file/FileService.js +114 -0
- package/dist/services/file/FileService.js.map +1 -1
- package/dist/services/file/FolderService.d.ts +99 -0
- package/dist/services/file/FolderService.d.ts.map +1 -0
- package/dist/services/file/FolderService.js +147 -0
- package/dist/services/file/FolderService.js.map +1 -0
- package/dist/services/file/index.d.ts +3 -0
- package/dist/services/file/index.d.ts.map +1 -1
- package/dist/services/file/index.js +3 -0
- package/dist/services/file/index.js.map +1 -1
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +2 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/socialmedia/SocialMediaAccountService.d.ts +38 -0
- package/dist/services/socialmedia/SocialMediaAccountService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaAccountService.js +59 -0
- package/dist/services/socialmedia/SocialMediaAccountService.js.map +1 -0
- package/dist/services/socialmedia/SocialMediaAdsService.d.ts +74 -0
- package/dist/services/socialmedia/SocialMediaAdsService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaAdsService.js +130 -0
- package/dist/services/socialmedia/SocialMediaAdsService.js.map +1 -0
- package/dist/services/socialmedia/SocialMediaDashboardService.d.ts +137 -0
- package/dist/services/socialmedia/SocialMediaDashboardService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaDashboardService.js +179 -0
- package/dist/services/socialmedia/SocialMediaDashboardService.js.map +1 -0
- package/dist/services/socialmedia/SocialMediaMetricsService.d.ts +56 -0
- package/dist/services/socialmedia/SocialMediaMetricsService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaMetricsService.js +105 -0
- package/dist/services/socialmedia/SocialMediaMetricsService.js.map +1 -0
- package/dist/services/socialmedia/SocialMediaPostService.d.ts +56 -0
- package/dist/services/socialmedia/SocialMediaPostService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaPostService.js +94 -0
- package/dist/services/socialmedia/SocialMediaPostService.js.map +1 -0
- package/dist/services/socialmedia/SocialMediaStoryService.d.ts +47 -0
- package/dist/services/socialmedia/SocialMediaStoryService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaStoryService.js +77 -0
- package/dist/services/socialmedia/SocialMediaStoryService.js.map +1 -0
- package/dist/services/socialmedia/SocialMediaThresholdService.d.ts +47 -0
- package/dist/services/socialmedia/SocialMediaThresholdService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaThresholdService.js +75 -0
- package/dist/services/socialmedia/SocialMediaThresholdService.js.map +1 -0
- package/dist/services/socialmedia/SocialMediaVideoService.d.ts +47 -0
- package/dist/services/socialmedia/SocialMediaVideoService.d.ts.map +1 -0
- package/dist/services/socialmedia/SocialMediaVideoService.js +77 -0
- package/dist/services/socialmedia/SocialMediaVideoService.js.map +1 -0
- package/dist/services/socialmedia/index.d.ts +43 -0
- package/dist/services/socialmedia/index.d.ts.map +1 -0
- package/dist/services/socialmedia/index.js +41 -0
- package/dist/services/socialmedia/index.js.map +1 -0
- package/dist/services/system/HealthService.d.ts +15 -0
- package/dist/services/system/HealthService.d.ts.map +1 -1
- package/dist/services/system/HealthService.js +21 -15
- package/dist/services/system/HealthService.js.map +1 -1
- package/dist/services/system/RabbitMQManagementService.d.ts +13 -9
- package/dist/services/system/RabbitMQManagementService.d.ts.map +1 -1
- package/dist/services/system/RabbitMQManagementService.js +23 -40
- package/dist/services/system/RabbitMQManagementService.js.map +1 -1
- package/dist/services/system/RedisManagementService.d.ts +13 -6
- package/dist/services/system/RedisManagementService.d.ts.map +1 -1
- package/dist/services/system/RedisManagementService.js +42 -20
- package/dist/services/system/RedisManagementService.js.map +1 -1
- package/dist/services/task/TaskService.d.ts +100 -1
- package/dist/services/task/TaskService.d.ts.map +1 -1
- package/dist/services/task/TaskService.js +167 -0
- package/dist/services/task/TaskService.js.map +1 -1
- package/dist/services/types.d.ts +2 -0
- package/dist/services/types.d.ts.map +1 -1
- package/dist/services/users/PresenceAnalyticsService.d.ts +179 -0
- package/dist/services/users/PresenceAnalyticsService.d.ts.map +1 -0
- package/dist/services/users/PresenceAnalyticsService.js +232 -0
- package/dist/services/users/PresenceAnalyticsService.js.map +1 -0
- package/dist/services/users/RightService.d.ts +16 -20
- package/dist/services/users/RightService.d.ts.map +1 -1
- package/dist/services/users/RightService.js +3 -37
- package/dist/services/users/RightService.js.map +1 -1
- package/dist/services/users/RoleService.d.ts +27 -0
- package/dist/services/users/RoleService.d.ts.map +1 -1
- package/dist/services/users/RoleService.js +54 -0
- package/dist/services/users/RoleService.js.map +1 -1
- package/dist/services/users/SystemService.d.ts +9 -0
- package/dist/services/users/SystemService.d.ts.map +1 -1
- package/dist/services/users/SystemService.js +20 -0
- package/dist/services/users/SystemService.js.map +1 -1
- package/dist/services/users/UserPreferencesService.d.ts +27 -0
- package/dist/services/users/UserPreferencesService.d.ts.map +1 -1
- package/dist/services/users/UserPreferencesService.js +54 -0
- package/dist/services/users/UserPreferencesService.js.map +1 -1
- package/dist/services/users/UserPushDeviceService.d.ts +18 -0
- package/dist/services/users/UserPushDeviceService.d.ts.map +1 -1
- package/dist/services/users/UserPushDeviceService.js +35 -0
- package/dist/services/users/UserPushDeviceService.js.map +1 -1
- package/dist/services/users/UserService.d.ts +142 -1
- package/dist/services/users/UserService.d.ts.map +1 -1
- package/dist/services/users/UserService.js +265 -0
- package/dist/services/users/UserService.js.map +1 -1
- package/dist/services/users/index.d.ts +5 -2
- package/dist/services/users/index.d.ts.map +1 -1
- package/dist/services/users/index.js +3 -0
- package/dist/services/users/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/react/hooks/useRealtime.d.ts +0 -63
- package/dist/react/hooks/useRealtime.d.ts.map +0 -1
- package/dist/react/hooks/useRealtime.js +0 -146
- package/dist/react/hooks/useRealtime.js.map +0 -1
- package/dist/realtime/RealtimeClient.d.ts +0 -99
- package/dist/realtime/RealtimeClient.d.ts.map +0 -1
- package/dist/realtime/RealtimeClient.js +0 -278
- package/dist/realtime/RealtimeClient.js.map +0 -1
- package/dist/realtime/types.d.ts +0 -76
- package/dist/realtime/types.d.ts.map +0 -1
- package/dist/realtime/types.js +0 -55
- package/dist/realtime/types.js.map +0 -1
|
@@ -6,13 +6,13 @@ import { SignalRClientOptions } from '../shared/types';
|
|
|
6
6
|
/**
|
|
7
7
|
* Presence status enum
|
|
8
8
|
* Matches backend PresenceStatus enum (numeric values)
|
|
9
|
-
* Backend
|
|
9
|
+
* IMPORTANT: Backend expects numeric values (0, 1, 2, 3)
|
|
10
10
|
*/
|
|
11
11
|
export declare enum PresenceStatus {
|
|
12
|
-
Offline =
|
|
13
|
-
Online =
|
|
14
|
-
Away =
|
|
15
|
-
Busy =
|
|
12
|
+
Offline = 0,
|
|
13
|
+
Online = 1,
|
|
14
|
+
Away = 2,
|
|
15
|
+
Busy = 3
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* User presence update
|
|
@@ -36,6 +36,24 @@ export interface UserPresenceUpdate {
|
|
|
36
36
|
/** Platform (web, ios, android, desktop) */
|
|
37
37
|
platform?: string;
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Presence statistics (Admin only)
|
|
41
|
+
* Matches backend PresenceStatistics DTO
|
|
42
|
+
*/
|
|
43
|
+
export interface PresenceStats {
|
|
44
|
+
/** Total number of users in the system */
|
|
45
|
+
totalUsers: number;
|
|
46
|
+
/** Number of users with Online status */
|
|
47
|
+
onlineUsers: number;
|
|
48
|
+
/** Number of users with Away status */
|
|
49
|
+
awayUsers: number;
|
|
50
|
+
/** Number of users with Busy status */
|
|
51
|
+
busyUsers: number;
|
|
52
|
+
/** Number of users with Offline status */
|
|
53
|
+
offlineUsers: number;
|
|
54
|
+
/** Timestamp when statistics were generated */
|
|
55
|
+
timestamp: string;
|
|
56
|
+
}
|
|
39
57
|
/**
|
|
40
58
|
* Presence client options
|
|
41
59
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/realtime/presence/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;GAIG;AACH,oBAAY,cAAc;IACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/realtime/presence/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* Presence status enum
|
|
7
7
|
* Matches backend PresenceStatus enum (numeric values)
|
|
8
|
-
* Backend
|
|
8
|
+
* IMPORTANT: Backend expects numeric values (0, 1, 2, 3)
|
|
9
9
|
*/
|
|
10
10
|
export var PresenceStatus;
|
|
11
11
|
(function (PresenceStatus) {
|
|
12
|
-
PresenceStatus["Offline"] = "Offline";
|
|
13
|
-
PresenceStatus["Online"] = "Online";
|
|
14
|
-
PresenceStatus["Away"] = "Away";
|
|
15
|
-
PresenceStatus["Busy"] = "Busy";
|
|
12
|
+
PresenceStatus[PresenceStatus["Offline"] = 0] = "Offline";
|
|
13
|
+
PresenceStatus[PresenceStatus["Online"] = 1] = "Online";
|
|
14
|
+
PresenceStatus[PresenceStatus["Away"] = 2] = "Away";
|
|
15
|
+
PresenceStatus[PresenceStatus["Busy"] = 3] = "Busy";
|
|
16
16
|
})(PresenceStatus || (PresenceStatus = {}));
|
|
17
17
|
/**
|
|
18
18
|
* Default activity detector options
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/realtime/presence/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;GAIG;AACH,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/realtime/presence/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;;GAIG;AACH,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,yDAAW,CAAA;IACX,uDAAU,CAAA;IACV,mDAAQ,CAAA;IACR,mDAAQ,CAAA;AACV,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAmID;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAA4B;IAC/D,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;IAC9C,aAAa,EAAE,EAAE,GAAG,IAAI,EAAW,aAAa;IAChD,aAAa,EAAE,IAAI,EAAgB,WAAW;CAC/C,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Presence Utility Functions
|
|
3
|
+
* Helper utilities extracted from the working test app for consistency
|
|
4
|
+
* These match the patterns used in frontend/web_sockets_test/PresenceHub/react-app
|
|
5
|
+
*/
|
|
6
|
+
import { PresenceStatus } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Get human-readable status name from enum
|
|
9
|
+
* @param status - Presence status enum value
|
|
10
|
+
* @returns Status name string
|
|
11
|
+
*/
|
|
12
|
+
export declare function getStatusName(status: PresenceStatus): string;
|
|
13
|
+
/**
|
|
14
|
+
* Get status color for UI (hex color)
|
|
15
|
+
* Matches the test app's color scheme
|
|
16
|
+
* @param status - Presence status enum value
|
|
17
|
+
* @returns Hex color string
|
|
18
|
+
*/
|
|
19
|
+
export declare function getStatusColor(status: PresenceStatus): string;
|
|
20
|
+
/**
|
|
21
|
+
* Generate user initials from name
|
|
22
|
+
* Falls back to userId if name is not available
|
|
23
|
+
* @param userName - User's display name (can be null/undefined)
|
|
24
|
+
* @param userId - User's ID (fallback)
|
|
25
|
+
* @returns Two-letter initials in uppercase
|
|
26
|
+
*/
|
|
27
|
+
export declare function getUserInitials(userName: string | null | undefined, userId: string): string;
|
|
28
|
+
/**
|
|
29
|
+
* Generate deterministic avatar color from userId
|
|
30
|
+
* Uses hash function to consistently assign one of 10 colors
|
|
31
|
+
* @param userId - User's ID
|
|
32
|
+
* @returns Hex color string
|
|
33
|
+
*/
|
|
34
|
+
export declare function getAvatarColor(userId: string): string;
|
|
35
|
+
/**
|
|
36
|
+
* Get relative time string (e.g., "5 minutes ago")
|
|
37
|
+
* @param lastSeenDate - Last seen date (ISO-8601 string or Date object)
|
|
38
|
+
* @returns Human-readable relative time string
|
|
39
|
+
*/
|
|
40
|
+
export declare function getRelativeTime(lastSeenDate: Date | string): string;
|
|
41
|
+
/**
|
|
42
|
+
* Extract userId from JWT token
|
|
43
|
+
* Supports multiple claim formats used by different auth systems
|
|
44
|
+
* @param token - JWT token string
|
|
45
|
+
* @returns User ID or null if extraction fails
|
|
46
|
+
*/
|
|
47
|
+
export declare function extractUserIdFromToken(token: string): string | null;
|
|
48
|
+
/**
|
|
49
|
+
* Extract admin role from JWT token
|
|
50
|
+
* Checks if the token contains "Admin" role
|
|
51
|
+
* @param token - JWT token string
|
|
52
|
+
* @returns True if user has Admin role, false otherwise
|
|
53
|
+
*/
|
|
54
|
+
export declare function extractAdminRoleFromToken(token: string): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Format timestamp to locale string
|
|
57
|
+
* @param timestamp - ISO-8601 timestamp string
|
|
58
|
+
* @returns Formatted date/time string
|
|
59
|
+
*/
|
|
60
|
+
export declare function formatTimestamp(timestamp: string): string;
|
|
61
|
+
/**
|
|
62
|
+
* Status preset configurations
|
|
63
|
+
* Matches the test app's quick status buttons
|
|
64
|
+
*/
|
|
65
|
+
export declare const STATUS_PRESETS: {
|
|
66
|
+
readonly available: {
|
|
67
|
+
readonly status: PresenceStatus.Online;
|
|
68
|
+
readonly message: "";
|
|
69
|
+
};
|
|
70
|
+
readonly onBreak: {
|
|
71
|
+
readonly status: PresenceStatus.Away;
|
|
72
|
+
readonly message: "On break";
|
|
73
|
+
};
|
|
74
|
+
readonly inMeeting: {
|
|
75
|
+
readonly status: PresenceStatus.Busy;
|
|
76
|
+
readonly message: "In a meeting";
|
|
77
|
+
};
|
|
78
|
+
readonly doNotDisturb: {
|
|
79
|
+
readonly status: PresenceStatus.Busy;
|
|
80
|
+
readonly message: "Do not disturb";
|
|
81
|
+
};
|
|
82
|
+
readonly appearOffline: {
|
|
83
|
+
readonly status: PresenceStatus.Offline;
|
|
84
|
+
readonly message: "Appear offline";
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/realtime/presence/utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAE5D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAa7D;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAY3F;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAsBrD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAiBnE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBnE;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAkBhE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAMzD;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;CAqBjB,CAAC"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Presence Utility Functions
|
|
3
|
+
* Helper utilities extracted from the working test app for consistency
|
|
4
|
+
* These match the patterns used in frontend/web_sockets_test/PresenceHub/react-app
|
|
5
|
+
*/
|
|
6
|
+
import { PresenceStatus } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Get human-readable status name from enum
|
|
9
|
+
* @param status - Presence status enum value
|
|
10
|
+
* @returns Status name string
|
|
11
|
+
*/
|
|
12
|
+
export function getStatusName(status) {
|
|
13
|
+
return status.toString();
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Get status color for UI (hex color)
|
|
17
|
+
* Matches the test app's color scheme
|
|
18
|
+
* @param status - Presence status enum value
|
|
19
|
+
* @returns Hex color string
|
|
20
|
+
*/
|
|
21
|
+
export function getStatusColor(status) {
|
|
22
|
+
switch (status) {
|
|
23
|
+
case PresenceStatus.Offline:
|
|
24
|
+
return '#9e9e9e'; // Gray
|
|
25
|
+
case PresenceStatus.Online:
|
|
26
|
+
return '#4CAF50'; // Green
|
|
27
|
+
case PresenceStatus.Away:
|
|
28
|
+
return '#FF9800'; // Orange
|
|
29
|
+
case PresenceStatus.Busy:
|
|
30
|
+
return '#f44336'; // Red
|
|
31
|
+
default:
|
|
32
|
+
return '#9e9e9e';
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Generate user initials from name
|
|
37
|
+
* Falls back to userId if name is not available
|
|
38
|
+
* @param userName - User's display name (can be null/undefined)
|
|
39
|
+
* @param userId - User's ID (fallback)
|
|
40
|
+
* @returns Two-letter initials in uppercase
|
|
41
|
+
*/
|
|
42
|
+
export function getUserInitials(userName, userId) {
|
|
43
|
+
if (userName && userName.trim()) {
|
|
44
|
+
const parts = userName.trim().split(' ');
|
|
45
|
+
if (parts.length >= 2) {
|
|
46
|
+
// First and last name: "John Doe" -> "JD"
|
|
47
|
+
return (parts[0][0] + parts[parts.length - 1][0]).toUpperCase();
|
|
48
|
+
}
|
|
49
|
+
// Single name: "John" -> "JO"
|
|
50
|
+
return userName.substring(0, 2).toUpperCase();
|
|
51
|
+
}
|
|
52
|
+
// Fallback to userId: "user123" -> "US"
|
|
53
|
+
return userId.substring(0, 2).toUpperCase();
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Generate deterministic avatar color from userId
|
|
57
|
+
* Uses hash function to consistently assign one of 10 colors
|
|
58
|
+
* @param userId - User's ID
|
|
59
|
+
* @returns Hex color string
|
|
60
|
+
*/
|
|
61
|
+
export function getAvatarColor(userId) {
|
|
62
|
+
// Simple hash function
|
|
63
|
+
let hash = 0;
|
|
64
|
+
for (let i = 0; i < userId.length; i++) {
|
|
65
|
+
hash = userId.charCodeAt(i) + ((hash << 5) - hash);
|
|
66
|
+
}
|
|
67
|
+
// 10 material design colors
|
|
68
|
+
const colors = [
|
|
69
|
+
'#E91E63', // Pink
|
|
70
|
+
'#9C27B0', // Purple
|
|
71
|
+
'#673AB7', // Deep Purple
|
|
72
|
+
'#3F51B5', // Indigo
|
|
73
|
+
'#2196F3', // Blue
|
|
74
|
+
'#00BCD4', // Cyan
|
|
75
|
+
'#009688', // Teal
|
|
76
|
+
'#4CAF50', // Green
|
|
77
|
+
'#FF9800', // Orange
|
|
78
|
+
'#FF5722', // Deep Orange
|
|
79
|
+
];
|
|
80
|
+
return colors[Math.abs(hash) % colors.length];
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get relative time string (e.g., "5 minutes ago")
|
|
84
|
+
* @param lastSeenDate - Last seen date (ISO-8601 string or Date object)
|
|
85
|
+
* @returns Human-readable relative time string
|
|
86
|
+
*/
|
|
87
|
+
export function getRelativeTime(lastSeenDate) {
|
|
88
|
+
const now = Date.now();
|
|
89
|
+
const lastSeen = new Date(lastSeenDate).getTime();
|
|
90
|
+
const diffMs = now - lastSeen;
|
|
91
|
+
const diffMins = Math.floor(diffMs / 60000);
|
|
92
|
+
if (diffMins < 1)
|
|
93
|
+
return 'Active now';
|
|
94
|
+
if (diffMins === 1)
|
|
95
|
+
return '1 minute ago';
|
|
96
|
+
if (diffMins < 60)
|
|
97
|
+
return `${diffMins} minutes ago`;
|
|
98
|
+
const diffHours = Math.floor(diffMins / 60);
|
|
99
|
+
if (diffHours === 1)
|
|
100
|
+
return '1 hour ago';
|
|
101
|
+
if (diffHours < 24)
|
|
102
|
+
return `${diffHours} hours ago`;
|
|
103
|
+
const diffDays = Math.floor(diffHours / 24);
|
|
104
|
+
if (diffDays === 1)
|
|
105
|
+
return '1 day ago';
|
|
106
|
+
return `${diffDays} days ago`;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Extract userId from JWT token
|
|
110
|
+
* Supports multiple claim formats used by different auth systems
|
|
111
|
+
* @param token - JWT token string
|
|
112
|
+
* @returns User ID or null if extraction fails
|
|
113
|
+
*/
|
|
114
|
+
export function extractUserIdFromToken(token) {
|
|
115
|
+
try {
|
|
116
|
+
// Split token and decode payload (middle part)
|
|
117
|
+
const payload = JSON.parse(atob(token.split('.')[1]));
|
|
118
|
+
// Try different claim names (in order of preference)
|
|
119
|
+
return (payload.sub ||
|
|
120
|
+
payload.nameid ||
|
|
121
|
+
payload['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier'] ||
|
|
122
|
+
null);
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
console.error('[extractUserIdFromToken] Failed to extract userId:', error);
|
|
126
|
+
return null;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Extract admin role from JWT token
|
|
131
|
+
* Checks if the token contains "Admin" role
|
|
132
|
+
* @param token - JWT token string
|
|
133
|
+
* @returns True if user has Admin role, false otherwise
|
|
134
|
+
*/
|
|
135
|
+
export function extractAdminRoleFromToken(token) {
|
|
136
|
+
try {
|
|
137
|
+
// Split token and decode payload (middle part)
|
|
138
|
+
const payload = JSON.parse(atob(token.split('.')[1]));
|
|
139
|
+
// Try different role claim names
|
|
140
|
+
const roles = payload.role || payload['http://schemas.microsoft.com/ws/2008/06/identity/claims/role'];
|
|
141
|
+
// Roles can be a string or array
|
|
142
|
+
if (Array.isArray(roles)) {
|
|
143
|
+
return roles.includes('Admin');
|
|
144
|
+
}
|
|
145
|
+
return roles === 'Admin';
|
|
146
|
+
}
|
|
147
|
+
catch (error) {
|
|
148
|
+
console.error('[extractAdminRoleFromToken] Failed to extract admin role:', error);
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Format timestamp to locale string
|
|
154
|
+
* @param timestamp - ISO-8601 timestamp string
|
|
155
|
+
* @returns Formatted date/time string
|
|
156
|
+
*/
|
|
157
|
+
export function formatTimestamp(timestamp) {
|
|
158
|
+
try {
|
|
159
|
+
return new Date(timestamp).toLocaleString();
|
|
160
|
+
}
|
|
161
|
+
catch (error) {
|
|
162
|
+
return timestamp;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Status preset configurations
|
|
167
|
+
* Matches the test app's quick status buttons
|
|
168
|
+
*/
|
|
169
|
+
export const STATUS_PRESETS = {
|
|
170
|
+
available: {
|
|
171
|
+
status: PresenceStatus.Online,
|
|
172
|
+
message: '',
|
|
173
|
+
},
|
|
174
|
+
onBreak: {
|
|
175
|
+
status: PresenceStatus.Away,
|
|
176
|
+
message: 'On break',
|
|
177
|
+
},
|
|
178
|
+
inMeeting: {
|
|
179
|
+
status: PresenceStatus.Busy,
|
|
180
|
+
message: 'In a meeting',
|
|
181
|
+
},
|
|
182
|
+
doNotDisturb: {
|
|
183
|
+
status: PresenceStatus.Busy,
|
|
184
|
+
message: 'Do not disturb',
|
|
185
|
+
},
|
|
186
|
+
appearOffline: {
|
|
187
|
+
status: PresenceStatus.Offline,
|
|
188
|
+
message: 'Appear offline',
|
|
189
|
+
},
|
|
190
|
+
};
|
|
191
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/realtime/presence/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseSignalRClient.d.ts","sourceRoot":"","sources":["../../../src/realtime/shared/BaseSignalRClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,oBAAoB,EACpB,4BAA4B,EAI7B,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,8BAAsB,iBAAiB;IAUnC,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,SAAS,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAVlD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,aAAa,GAAG,IAAI,CAAQ;IAC1D,SAAS,CAAC,eAAe,EAAE,eAAe,CAAgC;IAC1E,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAClD,SAAS,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAa;IACpE,SAAS,CAAC,oBAAoB,EAAE,GAAG,CAAC,4BAA4B,CAAC,CAAa;IAC9E,SAAS,CAAC,iBAAiB,SAAK;IAChC,SAAS,CAAC,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;gBAG7C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EAChD,OAAO,GAAE,oBAAyB;IAKpC;;OAEG;IACI,QAAQ,IAAI,eAAe;IAIlC;;OAEG;IACI,WAAW,IAAI,OAAO;IAI7B;;OAEG;IACI,aAAa,CAAC,QAAQ,EAAE,4BAA4B,GAAG,kBAAkB;IAKhF;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAarC;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBxC;;OAEG;IACI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB;IASnF;;OAEG;IACI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;IAUtE;;OAEG;IACI,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB;IAQrF;;OAEG;cACa,MAAM,CAAC,OAAO,GAAG,IAAI,EACnC,UAAU,EAAE,MAAM,EAClB,GAAG,IAAI,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseSignalRClient.d.ts","sourceRoot":"","sources":["../../../src/realtime/shared/BaseSignalRClient.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,oBAAoB,EACpB,4BAA4B,EAI7B,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,8BAAsB,iBAAiB;IAUnC,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,SAAS,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAVlD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,aAAa,GAAG,IAAI,CAAQ;IAC1D,SAAS,CAAC,eAAe,EAAE,eAAe,CAAgC;IAC1E,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAClD,SAAS,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAa;IACpE,SAAS,CAAC,oBAAoB,EAAE,GAAG,CAAC,4BAA4B,CAAC,CAAa;IAC9E,SAAS,CAAC,iBAAiB,SAAK;IAChC,SAAS,CAAC,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;gBAG7C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EAChD,OAAO,GAAE,oBAAyB;IAKpC;;OAEG;IACI,QAAQ,IAAI,eAAe;IAIlC;;OAEG;IACI,WAAW,IAAI,OAAO;IAI7B;;OAEG;IACI,aAAa,CAAC,QAAQ,EAAE,4BAA4B,GAAG,kBAAkB;IAKhF;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAarC;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBxC;;OAEG;IACI,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB;IASnF;;OAEG;IACI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;IAUtE;;OAEG;IACI,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB;IAQrF;;OAEG;cACa,MAAM,CAAC,OAAO,GAAG,IAAI,EACnC,UAAU,EAAE,MAAM,EAClB,GAAG,IAAI,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,OAAO,CAAC;IA0CnB;;OAEG;cACa,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB3E;;OAEG;IACH,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI;IAOzD;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,IAAI;IAE7C;;OAEG;YACW,SAAS;IAiDvB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkB/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAuB7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAK1B;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAKtC"}
|
|
@@ -108,12 +108,36 @@ export class BaseSignalRClient {
|
|
|
108
108
|
*/
|
|
109
109
|
async invoke(methodName, ...args) {
|
|
110
110
|
if (!this.connection || this.connectionState !== ConnectionState.Connected) {
|
|
111
|
-
|
|
111
|
+
const errorMsg = `Cannot invoke ${methodName}: not connected to hub (state: ${this.connectionState})`;
|
|
112
|
+
console.error('[BaseSignalRClient]', errorMsg);
|
|
113
|
+
throw new Error(errorMsg);
|
|
114
|
+
}
|
|
115
|
+
// Additional check for SignalR connection state
|
|
116
|
+
const signalRState = this.connection.state;
|
|
117
|
+
if (signalRState !== signalR.HubConnectionState.Connected) {
|
|
118
|
+
const errorMsg = `Cannot invoke ${methodName}: SignalR connection not ready (state: ${signalRState})`;
|
|
119
|
+
console.error('[BaseSignalRClient]', errorMsg);
|
|
120
|
+
throw new Error(errorMsg);
|
|
112
121
|
}
|
|
113
122
|
try {
|
|
114
|
-
|
|
123
|
+
console.log(`[BaseSignalRClient] Invoking hub method: ${methodName}`, args);
|
|
124
|
+
const result = await this.connection.invoke(methodName, ...args);
|
|
125
|
+
console.log(`[BaseSignalRClient] Hub method ${methodName} completed successfully`);
|
|
126
|
+
return result;
|
|
115
127
|
}
|
|
116
128
|
catch (error) {
|
|
129
|
+
// Check if this is a permission/authorization error (expected for certain methods)
|
|
130
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
131
|
+
const isForbiddenError = errorMessage.includes('Forbidden') ||
|
|
132
|
+
errorMessage.includes('Admin role required') ||
|
|
133
|
+
errorMessage.includes('Unauthorized');
|
|
134
|
+
// Log as debug for expected permission errors, error for unexpected failures
|
|
135
|
+
if (isForbiddenError) {
|
|
136
|
+
console.debug(`[BaseSignalRClient] Hub method ${methodName} forbidden (expected for non-admin):`, errorMessage);
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
console.error(`[BaseSignalRClient] Hub method ${methodName} failed:`, error);
|
|
140
|
+
}
|
|
117
141
|
throw new HubInvocationError(`Failed to invoke hub method: ${methodName}`, methodName, error);
|
|
118
142
|
}
|
|
119
143
|
}
|
|
@@ -149,8 +173,18 @@ export class BaseSignalRClient {
|
|
|
149
173
|
this.connection = new signalR.HubConnectionBuilder()
|
|
150
174
|
.withUrl(this.hubUrl, {
|
|
151
175
|
accessTokenFactory: async () => {
|
|
152
|
-
|
|
153
|
-
|
|
176
|
+
try {
|
|
177
|
+
const token = await this.getToken();
|
|
178
|
+
if (!token || token.trim() === '') {
|
|
179
|
+
console.warn('[SignalR] Token unavailable');
|
|
180
|
+
return '';
|
|
181
|
+
}
|
|
182
|
+
return token;
|
|
183
|
+
}
|
|
184
|
+
catch (error) {
|
|
185
|
+
console.error('[SignalR] Token factory error:', error);
|
|
186
|
+
return '';
|
|
187
|
+
}
|
|
154
188
|
},
|
|
155
189
|
// Use multiple transports with fallback (matches working test app)
|
|
156
190
|
transport: signalR.HttpTransportType.WebSockets |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseSignalRClient.js","sourceRoot":"","sources":["../../../src/realtime/shared/BaseSignalRClient.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseSignalRClient.js","sourceRoot":"","sources":["../../../src/realtime/shared/BaseSignalRClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { HttpClient } from '../../core/HttpClient';
|
|
|
7
7
|
import { ResponseData } from '../../models/common/ResponseData';
|
|
8
8
|
import { BaseService } from '../base/BaseService';
|
|
9
9
|
import { ServiceConfig } from '../types';
|
|
10
|
-
import { FileRecordModelView, PresignUploadRequest, MultiplePresignUploadRequest, PresignedUploadResponse, ConfirmUploadRequest, FileDownloadResponse, FileRecordFilterModel, FileVariantModelView, FileRecordWithVariantsModelView } from '../../models/file';
|
|
10
|
+
import { FileRecordModelView, PresignUploadRequest, MultiplePresignUploadRequest, PresignedUploadResponse, ConfirmUploadRequest, FileDownloadResponse, FileRecordFilterModel, FileVariantModelView, FileRecordWithVariantsModelView, StorageStatistics, BulkDeleteRequest, BulkDeleteResponse, BulkDownloadRequest, BulkDownloadResponse, MoveFileRequest, FileSearchRequest } from '../../models/file';
|
|
11
11
|
/**
|
|
12
12
|
* FileService
|
|
13
13
|
* Handles file upload, download, and management operations
|
|
@@ -169,5 +169,59 @@ export declare class FileService extends BaseService {
|
|
|
169
169
|
* My list view with full response
|
|
170
170
|
*/
|
|
171
171
|
myListViewRaw(filter?: FileRecordFilterModel): Promise<ResponseData<FileRecordModelView[]>>;
|
|
172
|
+
/**
|
|
173
|
+
* Get overall storage statistics
|
|
174
|
+
* GET api/file/statistics
|
|
175
|
+
*/
|
|
176
|
+
getStatistics(): Promise<StorageStatistics>;
|
|
177
|
+
/**
|
|
178
|
+
* Get storage statistics with full response
|
|
179
|
+
*/
|
|
180
|
+
getStatisticsRaw(): Promise<ResponseData<StorageStatistics>>;
|
|
181
|
+
/**
|
|
182
|
+
* Get domain-specific storage statistics
|
|
183
|
+
* GET api/file/statistics/domain/{domain}
|
|
184
|
+
*/
|
|
185
|
+
getDomainStatistics(domain: string): Promise<StorageStatistics>;
|
|
186
|
+
/**
|
|
187
|
+
* Get domain statistics with full response
|
|
188
|
+
*/
|
|
189
|
+
getDomainStatisticsRaw(domain: string): Promise<ResponseData<StorageStatistics>>;
|
|
190
|
+
/**
|
|
191
|
+
* Bulk delete files (soft delete)
|
|
192
|
+
* POST api/file/bulk-delete
|
|
193
|
+
*/
|
|
194
|
+
bulkDelete(data: BulkDeleteRequest): Promise<BulkDeleteResponse>;
|
|
195
|
+
/**
|
|
196
|
+
* Bulk delete with full response
|
|
197
|
+
*/
|
|
198
|
+
bulkDeleteRaw(data: BulkDeleteRequest): Promise<ResponseData<BulkDeleteResponse>>;
|
|
199
|
+
/**
|
|
200
|
+
* Bulk download - generate download URLs for multiple files
|
|
201
|
+
* POST api/file/bulk-download
|
|
202
|
+
*/
|
|
203
|
+
bulkDownload(data: BulkDownloadRequest): Promise<BulkDownloadResponse>;
|
|
204
|
+
/**
|
|
205
|
+
* Bulk download with full response
|
|
206
|
+
*/
|
|
207
|
+
bulkDownloadRaw(data: BulkDownloadRequest): Promise<ResponseData<BulkDownloadResponse>>;
|
|
208
|
+
/**
|
|
209
|
+
* Move file to different folder
|
|
210
|
+
* POST api/file/{id}/move
|
|
211
|
+
*/
|
|
212
|
+
moveToFolder(id: string, data: MoveFileRequest): Promise<FileRecordModelView>;
|
|
213
|
+
/**
|
|
214
|
+
* Move file with full response
|
|
215
|
+
*/
|
|
216
|
+
moveToFolderRaw(id: string, data: MoveFileRequest): Promise<ResponseData<FileRecordModelView>>;
|
|
217
|
+
/**
|
|
218
|
+
* Advanced file search with filters
|
|
219
|
+
* POST api/file/search
|
|
220
|
+
*/
|
|
221
|
+
search(data: FileSearchRequest): Promise<FileRecordModelView[]>;
|
|
222
|
+
/**
|
|
223
|
+
* Search with full response
|
|
224
|
+
*/
|
|
225
|
+
searchRaw(data: FileSearchRequest): Promise<ResponseData<FileRecordModelView[]>>;
|
|
172
226
|
}
|
|
173
227
|
//# sourceMappingURL=FileService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../src/services/file/FileService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,4BAA4B,EAC5B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,+BAA+B,
|
|
1
|
+
{"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../src/services/file/FileService.ts"],"names":[],"mappings":"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"}
|