@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.
Files changed (236) hide show
  1. package/README.md +55 -1
  2. package/dist/core/Config.d.ts +21 -2
  3. package/dist/core/Config.d.ts.map +1 -1
  4. package/dist/core/Config.js.map +1 -1
  5. package/dist/core/HttpClient.d.ts +5 -0
  6. package/dist/core/HttpClient.d.ts.map +1 -1
  7. package/dist/core/HttpClient.js +75 -0
  8. package/dist/core/HttpClient.js.map +1 -1
  9. package/dist/index.d.ts +3 -3
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +1 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/models/file/Folder.d.ts +179 -0
  14. package/dist/models/file/Folder.d.ts.map +1 -0
  15. package/dist/models/file/Folder.js +6 -0
  16. package/dist/models/file/Folder.js.map +1 -0
  17. package/dist/models/file/ModelView/FileRecordModelView.d.ts +3 -0
  18. package/dist/models/file/ModelView/FileRecordModelView.d.ts.map +1 -1
  19. package/dist/models/file/PresignUploadRequest.d.ts +4 -0
  20. package/dist/models/file/PresignUploadRequest.d.ts.map +1 -1
  21. package/dist/models/file/index.d.ts +1 -0
  22. package/dist/models/file/index.d.ts.map +1 -1
  23. package/dist/models/file/index.js +1 -0
  24. package/dist/models/file/index.js.map +1 -1
  25. package/dist/models/index.d.ts +1 -0
  26. package/dist/models/index.d.ts.map +1 -1
  27. package/dist/models/index.js +2 -0
  28. package/dist/models/index.js.map +1 -1
  29. package/dist/models/socialmedia/index.d.ts +322 -0
  30. package/dist/models/socialmedia/index.d.ts.map +1 -0
  31. package/dist/models/socialmedia/index.js +6 -0
  32. package/dist/models/socialmedia/index.js.map +1 -0
  33. package/dist/models/system/ModelView/Health.d.ts +14 -11
  34. package/dist/models/system/ModelView/Health.d.ts.map +1 -1
  35. package/dist/models/system/ModelView/Health.js +1 -0
  36. package/dist/models/system/ModelView/Health.js.map +1 -1
  37. package/dist/models/system/ModelView/RabbitMQManagement.d.ts +93 -92
  38. package/dist/models/system/ModelView/RabbitMQManagement.d.ts.map +1 -1
  39. package/dist/models/system/ModelView/RedisManagement.d.ts +94 -42
  40. package/dist/models/system/ModelView/RedisManagement.d.ts.map +1 -1
  41. package/dist/models/task/ModelView/CreateTask.d.ts +14 -17
  42. package/dist/models/task/ModelView/CreateTask.d.ts.map +1 -1
  43. package/dist/models/task/ModelView/UpdateTaskPriorityRequest.d.ts +10 -0
  44. package/dist/models/task/ModelView/UpdateTaskPriorityRequest.d.ts.map +1 -0
  45. package/dist/models/task/ModelView/UpdateTaskPriorityRequest.js +2 -0
  46. package/dist/models/task/ModelView/UpdateTaskPriorityRequest.js.map +1 -0
  47. package/dist/models/task/ModelView/UpdateTaskProjectRequest.d.ts +10 -0
  48. package/dist/models/task/ModelView/UpdateTaskProjectRequest.d.ts.map +1 -0
  49. package/dist/models/task/ModelView/UpdateTaskProjectRequest.js +2 -0
  50. package/dist/models/task/ModelView/UpdateTaskProjectRequest.js.map +1 -0
  51. package/dist/models/task/ModelView/index.d.ts +2 -0
  52. package/dist/models/task/ModelView/index.d.ts.map +1 -1
  53. package/dist/models/task/ModelView/index.js +2 -0
  54. package/dist/models/task/ModelView/index.js.map +1 -1
  55. package/dist/react/CCMSProvider.d.ts +1 -19
  56. package/dist/react/CCMSProvider.d.ts.map +1 -1
  57. package/dist/react/CCMSProvider.js +71 -56
  58. package/dist/react/CCMSProvider.js.map +1 -1
  59. package/dist/react/hooks/index.d.ts +0 -1
  60. package/dist/react/hooks/index.d.ts.map +1 -1
  61. package/dist/react/hooks/index.js +1 -3
  62. package/dist/react/hooks/index.js.map +1 -1
  63. package/dist/react/hooks/services/index.d.ts +1 -0
  64. package/dist/react/hooks/services/index.d.ts.map +1 -1
  65. package/dist/react/hooks/services/index.js +2 -0
  66. package/dist/react/hooks/services/index.js.map +1 -1
  67. package/dist/react/hooks/services/useSocialMediaServices.d.ts +43 -0
  68. package/dist/react/hooks/services/useSocialMediaServices.d.ts.map +1 -0
  69. package/dist/react/hooks/services/useSocialMediaServices.js +65 -0
  70. package/dist/react/hooks/services/useSocialMediaServices.js.map +1 -0
  71. package/dist/react/hooks/services/useUsersServices.d.ts +5 -1
  72. package/dist/react/hooks/services/useUsersServices.d.ts.map +1 -1
  73. package/dist/react/hooks/services/useUsersServices.js +6 -0
  74. package/dist/react/hooks/services/useUsersServices.js.map +1 -1
  75. package/dist/react/hooks/useCCMS.d.ts +7 -4
  76. package/dist/react/hooks/useCCMS.d.ts.map +1 -1
  77. package/dist/react/hooks/useCCMS.js +8 -4
  78. package/dist/react/hooks/useCCMS.js.map +1 -1
  79. package/dist/realtime/index.d.ts +1 -1
  80. package/dist/realtime/index.d.ts.map +1 -1
  81. package/dist/realtime/index.js +2 -5
  82. package/dist/realtime/index.js.map +1 -1
  83. package/dist/realtime/presence/ActivityTracker.d.ts +141 -0
  84. package/dist/realtime/presence/ActivityTracker.d.ts.map +1 -0
  85. package/dist/realtime/presence/ActivityTracker.js +342 -0
  86. package/dist/realtime/presence/ActivityTracker.js.map +1 -0
  87. package/dist/realtime/presence/AutoHeartbeatManager.d.ts +68 -0
  88. package/dist/realtime/presence/AutoHeartbeatManager.d.ts.map +1 -0
  89. package/dist/realtime/presence/AutoHeartbeatManager.js +160 -0
  90. package/dist/realtime/presence/AutoHeartbeatManager.js.map +1 -0
  91. package/dist/realtime/presence/IdleDetector.d.ts +107 -0
  92. package/dist/realtime/presence/IdleDetector.d.ts.map +1 -0
  93. package/dist/realtime/presence/IdleDetector.js +270 -0
  94. package/dist/realtime/presence/IdleDetector.js.map +1 -0
  95. package/dist/realtime/presence/PresenceClient.d.ts +18 -2
  96. package/dist/realtime/presence/PresenceClient.d.ts.map +1 -1
  97. package/dist/realtime/presence/PresenceClient.js +54 -1
  98. package/dist/realtime/presence/PresenceClient.js.map +1 -1
  99. package/dist/realtime/presence/PresenceManager.d.ts +191 -0
  100. package/dist/realtime/presence/PresenceManager.d.ts.map +1 -0
  101. package/dist/realtime/presence/PresenceManager.js +314 -0
  102. package/dist/realtime/presence/PresenceManager.js.map +1 -0
  103. package/dist/realtime/presence/PresenceProvider.d.ts +16 -0
  104. package/dist/realtime/presence/PresenceProvider.d.ts.map +1 -1
  105. package/dist/realtime/presence/PresenceProvider.js +16 -0
  106. package/dist/realtime/presence/PresenceProvider.js.map +1 -1
  107. package/dist/realtime/presence/index.d.ts +5 -0
  108. package/dist/realtime/presence/index.d.ts.map +1 -1
  109. package/dist/realtime/presence/index.js +10 -0
  110. package/dist/realtime/presence/index.js.map +1 -1
  111. package/dist/realtime/presence/types.d.ts +23 -5
  112. package/dist/realtime/presence/types.d.ts.map +1 -1
  113. package/dist/realtime/presence/types.js +5 -5
  114. package/dist/realtime/presence/types.js.map +1 -1
  115. package/dist/realtime/presence/utils.d.ts +87 -0
  116. package/dist/realtime/presence/utils.d.ts.map +1 -0
  117. package/dist/realtime/presence/utils.js +191 -0
  118. package/dist/realtime/presence/utils.js.map +1 -0
  119. package/dist/realtime/shared/BaseSignalRClient.d.ts.map +1 -1
  120. package/dist/realtime/shared/BaseSignalRClient.js +38 -4
  121. package/dist/realtime/shared/BaseSignalRClient.js.map +1 -1
  122. package/dist/services/file/FileService.d.ts +55 -1
  123. package/dist/services/file/FileService.d.ts.map +1 -1
  124. package/dist/services/file/FileService.js +114 -0
  125. package/dist/services/file/FileService.js.map +1 -1
  126. package/dist/services/file/FolderService.d.ts +99 -0
  127. package/dist/services/file/FolderService.d.ts.map +1 -0
  128. package/dist/services/file/FolderService.js +147 -0
  129. package/dist/services/file/FolderService.js.map +1 -0
  130. package/dist/services/file/index.d.ts +3 -0
  131. package/dist/services/file/index.d.ts.map +1 -1
  132. package/dist/services/file/index.js +3 -0
  133. package/dist/services/file/index.js.map +1 -1
  134. package/dist/services/index.d.ts +1 -0
  135. package/dist/services/index.d.ts.map +1 -1
  136. package/dist/services/index.js +2 -0
  137. package/dist/services/index.js.map +1 -1
  138. package/dist/services/socialmedia/SocialMediaAccountService.d.ts +38 -0
  139. package/dist/services/socialmedia/SocialMediaAccountService.d.ts.map +1 -0
  140. package/dist/services/socialmedia/SocialMediaAccountService.js +59 -0
  141. package/dist/services/socialmedia/SocialMediaAccountService.js.map +1 -0
  142. package/dist/services/socialmedia/SocialMediaAdsService.d.ts +74 -0
  143. package/dist/services/socialmedia/SocialMediaAdsService.d.ts.map +1 -0
  144. package/dist/services/socialmedia/SocialMediaAdsService.js +130 -0
  145. package/dist/services/socialmedia/SocialMediaAdsService.js.map +1 -0
  146. package/dist/services/socialmedia/SocialMediaDashboardService.d.ts +137 -0
  147. package/dist/services/socialmedia/SocialMediaDashboardService.d.ts.map +1 -0
  148. package/dist/services/socialmedia/SocialMediaDashboardService.js +179 -0
  149. package/dist/services/socialmedia/SocialMediaDashboardService.js.map +1 -0
  150. package/dist/services/socialmedia/SocialMediaMetricsService.d.ts +56 -0
  151. package/dist/services/socialmedia/SocialMediaMetricsService.d.ts.map +1 -0
  152. package/dist/services/socialmedia/SocialMediaMetricsService.js +105 -0
  153. package/dist/services/socialmedia/SocialMediaMetricsService.js.map +1 -0
  154. package/dist/services/socialmedia/SocialMediaPostService.d.ts +56 -0
  155. package/dist/services/socialmedia/SocialMediaPostService.d.ts.map +1 -0
  156. package/dist/services/socialmedia/SocialMediaPostService.js +94 -0
  157. package/dist/services/socialmedia/SocialMediaPostService.js.map +1 -0
  158. package/dist/services/socialmedia/SocialMediaStoryService.d.ts +47 -0
  159. package/dist/services/socialmedia/SocialMediaStoryService.d.ts.map +1 -0
  160. package/dist/services/socialmedia/SocialMediaStoryService.js +77 -0
  161. package/dist/services/socialmedia/SocialMediaStoryService.js.map +1 -0
  162. package/dist/services/socialmedia/SocialMediaThresholdService.d.ts +47 -0
  163. package/dist/services/socialmedia/SocialMediaThresholdService.d.ts.map +1 -0
  164. package/dist/services/socialmedia/SocialMediaThresholdService.js +75 -0
  165. package/dist/services/socialmedia/SocialMediaThresholdService.js.map +1 -0
  166. package/dist/services/socialmedia/SocialMediaVideoService.d.ts +47 -0
  167. package/dist/services/socialmedia/SocialMediaVideoService.d.ts.map +1 -0
  168. package/dist/services/socialmedia/SocialMediaVideoService.js +77 -0
  169. package/dist/services/socialmedia/SocialMediaVideoService.js.map +1 -0
  170. package/dist/services/socialmedia/index.d.ts +43 -0
  171. package/dist/services/socialmedia/index.d.ts.map +1 -0
  172. package/dist/services/socialmedia/index.js +41 -0
  173. package/dist/services/socialmedia/index.js.map +1 -0
  174. package/dist/services/system/HealthService.d.ts +15 -0
  175. package/dist/services/system/HealthService.d.ts.map +1 -1
  176. package/dist/services/system/HealthService.js +21 -15
  177. package/dist/services/system/HealthService.js.map +1 -1
  178. package/dist/services/system/RabbitMQManagementService.d.ts +13 -9
  179. package/dist/services/system/RabbitMQManagementService.d.ts.map +1 -1
  180. package/dist/services/system/RabbitMQManagementService.js +23 -40
  181. package/dist/services/system/RabbitMQManagementService.js.map +1 -1
  182. package/dist/services/system/RedisManagementService.d.ts +13 -6
  183. package/dist/services/system/RedisManagementService.d.ts.map +1 -1
  184. package/dist/services/system/RedisManagementService.js +42 -20
  185. package/dist/services/system/RedisManagementService.js.map +1 -1
  186. package/dist/services/task/TaskService.d.ts +100 -1
  187. package/dist/services/task/TaskService.d.ts.map +1 -1
  188. package/dist/services/task/TaskService.js +167 -0
  189. package/dist/services/task/TaskService.js.map +1 -1
  190. package/dist/services/types.d.ts +2 -0
  191. package/dist/services/types.d.ts.map +1 -1
  192. package/dist/services/users/PresenceAnalyticsService.d.ts +179 -0
  193. package/dist/services/users/PresenceAnalyticsService.d.ts.map +1 -0
  194. package/dist/services/users/PresenceAnalyticsService.js +232 -0
  195. package/dist/services/users/PresenceAnalyticsService.js.map +1 -0
  196. package/dist/services/users/RightService.d.ts +16 -20
  197. package/dist/services/users/RightService.d.ts.map +1 -1
  198. package/dist/services/users/RightService.js +3 -37
  199. package/dist/services/users/RightService.js.map +1 -1
  200. package/dist/services/users/RoleService.d.ts +27 -0
  201. package/dist/services/users/RoleService.d.ts.map +1 -1
  202. package/dist/services/users/RoleService.js +54 -0
  203. package/dist/services/users/RoleService.js.map +1 -1
  204. package/dist/services/users/SystemService.d.ts +9 -0
  205. package/dist/services/users/SystemService.d.ts.map +1 -1
  206. package/dist/services/users/SystemService.js +20 -0
  207. package/dist/services/users/SystemService.js.map +1 -1
  208. package/dist/services/users/UserPreferencesService.d.ts +27 -0
  209. package/dist/services/users/UserPreferencesService.d.ts.map +1 -1
  210. package/dist/services/users/UserPreferencesService.js +54 -0
  211. package/dist/services/users/UserPreferencesService.js.map +1 -1
  212. package/dist/services/users/UserPushDeviceService.d.ts +18 -0
  213. package/dist/services/users/UserPushDeviceService.d.ts.map +1 -1
  214. package/dist/services/users/UserPushDeviceService.js +35 -0
  215. package/dist/services/users/UserPushDeviceService.js.map +1 -1
  216. package/dist/services/users/UserService.d.ts +142 -1
  217. package/dist/services/users/UserService.d.ts.map +1 -1
  218. package/dist/services/users/UserService.js +265 -0
  219. package/dist/services/users/UserService.js.map +1 -1
  220. package/dist/services/users/index.d.ts +5 -2
  221. package/dist/services/users/index.d.ts.map +1 -1
  222. package/dist/services/users/index.js +3 -0
  223. package/dist/services/users/index.js.map +1 -1
  224. package/package.json +1 -1
  225. package/dist/react/hooks/useRealtime.d.ts +0 -63
  226. package/dist/react/hooks/useRealtime.d.ts.map +0 -1
  227. package/dist/react/hooks/useRealtime.js +0 -146
  228. package/dist/react/hooks/useRealtime.js.map +0 -1
  229. package/dist/realtime/RealtimeClient.d.ts +0 -99
  230. package/dist/realtime/RealtimeClient.d.ts.map +0 -1
  231. package/dist/realtime/RealtimeClient.js +0 -278
  232. package/dist/realtime/RealtimeClient.js.map +0 -1
  233. package/dist/realtime/types.d.ts +0 -76
  234. package/dist/realtime/types.d.ts.map +0 -1
  235. package/dist/realtime/types.js +0 -55
  236. 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 serializes as strings: "Offline", "Online", "Away", "Busy"
9
+ * IMPORTANT: Backend expects numeric values (0, 1, 2, 3)
10
10
  */
11
11
  export declare enum PresenceStatus {
12
- Offline = "Offline",
13
- Online = "Online",
14
- Away = "Away",
15
- Busy = "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":"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"}
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 serializes as strings: "Offline", "Online", "Away", "Busy"
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,qCAAmB,CAAA;IACnB,mCAAiB,CAAA;IACjB,+BAAa,CAAA;IACb,+BAAa,CAAA;AACf,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAgHD;;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"}
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;IAgBnB;;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;IAwCvB;;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"}
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
- throw new Error(`Cannot invoke ${methodName}: not connected to hub`);
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
- return await this.connection.invoke(methodName, ...args);
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
- const token = await this.getToken();
153
- return token || '';
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":"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"}
1
+ {"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../src/services/file/FileService.ts"],"names":[],"mappings":"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"}