@actschurch/ccms-sdk 0.0.3 → 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 +26 -2
- package/dist/realtime/presence/PresenceClient.d.ts.map +1 -1
- package/dist/realtime/presence/PresenceClient.js +111 -17
- 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 +92 -20
- 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 +32 -13
- package/dist/realtime/presence/types.d.ts.map +1 -1
- package/dist/realtime/presence/types.js +6 -5
- package/dist/realtime/presence/types.js.map +1 -1
- package/dist/realtime/presence/utils/platformDetector.d.ts +23 -0
- package/dist/realtime/presence/utils/platformDetector.d.ts.map +1 -0
- package/dist/realtime/presence/utils/platformDetector.js +88 -0
- package/dist/realtime/presence/utils/platformDetector.js.map +1 -0
- 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/departments/DepartmentService.d.ts.map +1 -1
- package/dist/services/departments/DepartmentService.js +1 -1
- package/dist/services/departments/DepartmentService.js.map +1 -1
- package/dist/services/departments/DesignationService.d.ts.map +1 -1
- package/dist/services/departments/DesignationService.js +1 -1
- package/dist/services/departments/DesignationService.js.map +1 -1
- package/dist/services/departments/DesignationTaskService.d.ts.map +1 -1
- package/dist/services/departments/DesignationTaskService.js +1 -1
- package/dist/services/departments/DesignationTaskService.js.map +1 -1
- package/dist/services/departments/MemberDesignationService.d.ts.map +1 -1
- package/dist/services/departments/MemberDesignationService.js +1 -1
- package/dist/services/departments/MemberDesignationService.js.map +1 -1
- package/dist/services/departments/MemberInDepartmentService.d.ts.map +1 -1
- package/dist/services/departments/MemberInDepartmentService.js +1 -1
- package/dist/services/departments/MemberInDepartmentService.js.map +1 -1
- package/dist/services/departments/MinistryActivityService.d.ts.map +1 -1
- package/dist/services/departments/MinistryActivityService.js +1 -1
- package/dist/services/departments/MinistryActivityService.js.map +1 -1
- package/dist/services/departments/MinistryEquipmentService.d.ts.map +1 -1
- package/dist/services/departments/MinistryEquipmentService.js +1 -1
- package/dist/services/departments/MinistryEquipmentService.js.map +1 -1
- package/dist/services/departments/MinistryRoleService.d.ts.map +1 -1
- package/dist/services/departments/MinistryRoleService.js +1 -1
- package/dist/services/departments/MinistryRoleService.js.map +1 -1
- package/dist/services/departments/MinistryService.d.ts.map +1 -1
- package/dist/services/departments/MinistryService.js +1 -1
- package/dist/services/departments/MinistryService.js.map +1 -1
- package/dist/services/departments/MinistryTeamService.d.ts.map +1 -1
- package/dist/services/departments/MinistryTeamService.js +1 -1
- package/dist/services/departments/MinistryTeamService.js.map +1 -1
- package/dist/services/feedback/FeedbackCategoryRecipientService.d.ts.map +1 -1
- package/dist/services/feedback/FeedbackCategoryRecipientService.js +1 -1
- package/dist/services/feedback/FeedbackCategoryRecipientService.js.map +1 -1
- package/dist/services/feedback/FeedbackCategoryService.d.ts.map +1 -1
- package/dist/services/feedback/FeedbackCategoryService.js +1 -1
- package/dist/services/feedback/FeedbackCategoryService.js.map +1 -1
- package/dist/services/feedback/FeedbackNotificationQueueService.d.ts.map +1 -1
- package/dist/services/feedback/FeedbackNotificationQueueService.js +1 -1
- package/dist/services/feedback/FeedbackNotificationQueueService.js.map +1 -1
- package/dist/services/feedback/FeedbackService.d.ts.map +1 -1
- package/dist/services/feedback/FeedbackService.js +1 -1
- package/dist/services/feedback/FeedbackService.js.map +1 -1
- package/dist/services/feedback/FeedbackTypeService.d.ts.map +1 -1
- package/dist/services/feedback/FeedbackTypeService.js +1 -1
- package/dist/services/feedback/FeedbackTypeService.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/locations/AddressService.d.ts.map +1 -1
- package/dist/services/locations/AddressService.js +1 -1
- package/dist/services/locations/AddressService.js.map +1 -1
- package/dist/services/locations/LocationInfoService.d.ts.map +1 -1
- package/dist/services/locations/LocationInfoService.js +1 -1
- package/dist/services/locations/LocationInfoService.js.map +1 -1
- package/dist/services/locations/LocationLeaderService.d.ts.map +1 -1
- package/dist/services/locations/LocationLeaderService.js +1 -1
- package/dist/services/locations/LocationLeaderService.js.map +1 -1
- package/dist/services/locations/LocationService.d.ts.map +1 -1
- package/dist/services/locations/LocationService.js +1 -1
- package/dist/services/locations/LocationService.js.map +1 -1
- package/dist/services/locations/LocationSocialMediaService.d.ts.map +1 -1
- package/dist/services/locations/LocationSocialMediaService.js +1 -1
- package/dist/services/locations/LocationSocialMediaService.js.map +1 -1
- package/dist/services/locations/LocationVenueService.d.ts.map +1 -1
- package/dist/services/locations/LocationVenueService.js +1 -1
- package/dist/services/locations/LocationVenueService.js.map +1 -1
- package/dist/services/locations/ServiceTimeService.d.ts.map +1 -1
- package/dist/services/locations/ServiceTimeService.js +1 -1
- package/dist/services/locations/ServiceTimeService.js.map +1 -1
- package/dist/services/locations/SocialMediaService.d.ts.map +1 -1
- package/dist/services/locations/SocialMediaService.js +1 -1
- package/dist/services/locations/SocialMediaService.js.map +1 -1
- package/dist/services/meetings/LocationVenueRequestService.d.ts.map +1 -1
- package/dist/services/meetings/LocationVenueRequestService.js +1 -1
- package/dist/services/meetings/LocationVenueRequestService.js.map +1 -1
- package/dist/services/meetings/LocationVenueSetupService.d.ts.map +1 -1
- package/dist/services/meetings/LocationVenueSetupService.js +1 -1
- package/dist/services/meetings/LocationVenueSetupService.js.map +1 -1
- package/dist/services/meetings/MeetingAttendanceStatusService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingAttendanceStatusService.js +1 -1
- package/dist/services/meetings/MeetingAttendanceStatusService.js.map +1 -1
- package/dist/services/meetings/MeetingAttendeeService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingAttendeeService.js +1 -1
- package/dist/services/meetings/MeetingAttendeeService.js.map +1 -1
- package/dist/services/meetings/MeetingCommentService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingCommentService.js +1 -1
- package/dist/services/meetings/MeetingCommentService.js.map +1 -1
- package/dist/services/meetings/MeetingFileService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingFileService.js +1 -1
- package/dist/services/meetings/MeetingFileService.js.map +1 -1
- package/dist/services/meetings/MeetingRequestService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingRequestService.js +1 -1
- package/dist/services/meetings/MeetingRequestService.js.map +1 -1
- package/dist/services/meetings/MeetingService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingService.js +1 -1
- package/dist/services/meetings/MeetingService.js.map +1 -1
- package/dist/services/meetings/MeetingSetupService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingSetupService.js +1 -1
- package/dist/services/meetings/MeetingSetupService.js.map +1 -1
- package/dist/services/meetings/MeetingStatusService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingStatusService.js +1 -1
- package/dist/services/meetings/MeetingStatusService.js.map +1 -1
- package/dist/services/meetings/MeetingTypeService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingTypeService.js +1 -1
- package/dist/services/meetings/MeetingTypeService.js.map +1 -1
- package/dist/services/meetings/MeetingVenueService.d.ts.map +1 -1
- package/dist/services/meetings/MeetingVenueService.js +1 -1
- package/dist/services/meetings/MeetingVenueService.js.map +1 -1
- package/dist/services/meetings/RequestInMeetingService.d.ts.map +1 -1
- package/dist/services/meetings/RequestInMeetingService.js +1 -1
- package/dist/services/meetings/RequestInMeetingService.js.map +1 -1
- package/dist/services/meetings/SetupInMeetingService.d.ts.map +1 -1
- package/dist/services/meetings/SetupInMeetingService.js +1 -1
- package/dist/services/meetings/SetupInMeetingService.js.map +1 -1
- package/dist/services/members/AllergyService.d.ts.map +1 -1
- package/dist/services/members/AllergyService.js +1 -1
- package/dist/services/members/AllergyService.js.map +1 -1
- package/dist/services/members/DisabilityService.d.ts.map +1 -1
- package/dist/services/members/DisabilityService.js +1 -1
- package/dist/services/members/DisabilityService.js.map +1 -1
- package/dist/services/members/FamilyService.d.ts.map +1 -1
- package/dist/services/members/FamilyService.js +1 -1
- package/dist/services/members/FamilyService.js.map +1 -1
- package/dist/services/members/MaritalStatusService.d.ts.map +1 -1
- package/dist/services/members/MaritalStatusService.js +1 -1
- package/dist/services/members/MaritalStatusService.js.map +1 -1
- package/dist/services/members/MemberAddressService.d.ts.map +1 -1
- package/dist/services/members/MemberAddressService.js +1 -1
- package/dist/services/members/MemberAddressService.js.map +1 -1
- package/dist/services/members/MemberLocationService.d.ts.map +1 -1
- package/dist/services/members/MemberLocationService.js +1 -1
- package/dist/services/members/MemberLocationService.js.map +1 -1
- package/dist/services/members/MemberService.d.ts.map +1 -1
- package/dist/services/members/MemberService.js +1 -1
- package/dist/services/members/MemberService.js.map +1 -1
- package/dist/services/members/MemberTypeService.d.ts.map +1 -1
- package/dist/services/members/MemberTypeService.js +1 -1
- package/dist/services/members/MemberTypeService.js.map +1 -1
- package/dist/services/members/RelationshipService.d.ts.map +1 -1
- package/dist/services/members/RelationshipService.js +1 -1
- package/dist/services/members/RelationshipService.js.map +1 -1
- package/dist/services/orders/OrderLineModelViewService.d.ts.map +1 -1
- package/dist/services/orders/OrderLineModelViewService.js +1 -1
- package/dist/services/orders/OrderLineModelViewService.js.map +1 -1
- package/dist/services/orders/OrderLineService.d.ts.map +1 -1
- package/dist/services/orders/OrderLineService.js +1 -1
- package/dist/services/orders/OrderLineService.js.map +1 -1
- package/dist/services/orders/OrderModelViewService.d.ts.map +1 -1
- package/dist/services/orders/OrderModelViewService.js +1 -1
- package/dist/services/orders/OrderModelViewService.js.map +1 -1
- package/dist/services/orders/OrderNotificationService.d.ts.map +1 -1
- package/dist/services/orders/OrderNotificationService.js +1 -1
- package/dist/services/orders/OrderNotificationService.js.map +1 -1
- package/dist/services/orders/OrderPaymentModelViewService.d.ts.map +1 -1
- package/dist/services/orders/OrderPaymentModelViewService.js +1 -1
- package/dist/services/orders/OrderPaymentModelViewService.js.map +1 -1
- package/dist/services/orders/OrderPaymentService.d.ts.map +1 -1
- package/dist/services/orders/OrderPaymentService.js +1 -1
- package/dist/services/orders/OrderPaymentService.js.map +1 -1
- package/dist/services/orders/OrderService.d.ts.map +1 -1
- package/dist/services/orders/OrderService.js +1 -1
- package/dist/services/orders/OrderService.js.map +1 -1
- package/dist/services/orders/OrderStatusService.d.ts.map +1 -1
- package/dist/services/orders/OrderStatusService.js +1 -1
- package/dist/services/orders/OrderStatusService.js.map +1 -1
- package/dist/services/orders/PaymentStatusService.d.ts.map +1 -1
- package/dist/services/orders/PaymentStatusService.js +1 -1
- package/dist/services/orders/PaymentStatusService.js.map +1 -1
- package/dist/services/procurements/AuditLogService.d.ts.map +1 -1
- package/dist/services/procurements/AuditLogService.js +1 -1
- package/dist/services/procurements/AuditLogService.js.map +1 -1
- package/dist/services/procurements/InvoiceLineService.d.ts.map +1 -1
- package/dist/services/procurements/InvoiceLineService.js +1 -1
- package/dist/services/procurements/InvoiceLineService.js.map +1 -1
- package/dist/services/procurements/InvoiceService.d.ts.map +1 -1
- package/dist/services/procurements/InvoiceService.js +1 -1
- package/dist/services/procurements/InvoiceService.js.map +1 -1
- package/dist/services/procurements/InvoiceStatusService.d.ts.map +1 -1
- package/dist/services/procurements/InvoiceStatusService.js +1 -1
- package/dist/services/procurements/InvoiceStatusService.js.map +1 -1
- package/dist/services/procurements/NotificationService.d.ts.map +1 -1
- package/dist/services/procurements/NotificationService.js +1 -1
- package/dist/services/procurements/NotificationService.js.map +1 -1
- package/dist/services/procurements/ProcurementRoleTypeService.d.ts.map +1 -1
- package/dist/services/procurements/ProcurementRoleTypeService.js +1 -1
- package/dist/services/procurements/ProcurementRoleTypeService.js.map +1 -1
- package/dist/services/procurements/PurchaseRequestService.d.ts.map +1 -1
- package/dist/services/procurements/PurchaseRequestService.js +1 -1
- package/dist/services/procurements/PurchaseRequestService.js.map +1 -1
- package/dist/services/procurements/QuotationLineService.d.ts.map +1 -1
- package/dist/services/procurements/QuotationLineService.js +1 -1
- package/dist/services/procurements/QuotationLineService.js.map +1 -1
- package/dist/services/procurements/QuotationService.d.ts.map +1 -1
- package/dist/services/procurements/QuotationService.js +1 -1
- package/dist/services/procurements/QuotationService.js.map +1 -1
- package/dist/services/procurements/QuotationStatusService.d.ts.map +1 -1
- package/dist/services/procurements/QuotationStatusService.js +1 -1
- package/dist/services/procurements/QuotationStatusService.js.map +1 -1
- package/dist/services/procurements/RequestApprovalStatusService.d.ts.map +1 -1
- package/dist/services/procurements/RequestApprovalStatusService.js +1 -1
- package/dist/services/procurements/RequestApprovalStatusService.js.map +1 -1
- package/dist/services/procurements/RequestAttachmentService.d.ts.map +1 -1
- package/dist/services/procurements/RequestAttachmentService.js +1 -1
- package/dist/services/procurements/RequestAttachmentService.js.map +1 -1
- package/dist/services/procurements/RequestCommentService.d.ts.map +1 -1
- package/dist/services/procurements/RequestCommentService.js +1 -1
- package/dist/services/procurements/RequestCommentService.js.map +1 -1
- package/dist/services/procurements/RequestStageService.d.ts.map +1 -1
- package/dist/services/procurements/RequestStageService.js +1 -1
- package/dist/services/procurements/RequestStageService.js.map +1 -1
- package/dist/services/procurements/RequestStatusService.d.ts.map +1 -1
- package/dist/services/procurements/RequestStatusService.js +1 -1
- package/dist/services/procurements/RequestStatusService.js.map +1 -1
- package/dist/services/procurements/RequestTypeService.d.ts.map +1 -1
- package/dist/services/procurements/RequestTypeService.js +1 -1
- package/dist/services/procurements/RequestTypeService.js.map +1 -1
- package/dist/services/procurements/SageItemService.d.ts.map +1 -1
- package/dist/services/procurements/SageItemService.js +1 -1
- package/dist/services/procurements/SageItemService.js.map +1 -1
- package/dist/services/procurements/SagePurchaseOrderService.d.ts.map +1 -1
- package/dist/services/procurements/SagePurchaseOrderService.js +1 -1
- package/dist/services/procurements/SagePurchaseOrderService.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/LogTypeService.d.ts.map +1 -1
- package/dist/services/task/LogTypeService.js +1 -1
- package/dist/services/task/LogTypeService.js.map +1 -1
- package/dist/services/task/TaskAssignmentService.d.ts.map +1 -1
- package/dist/services/task/TaskAssignmentService.js +1 -1
- package/dist/services/task/TaskAssignmentService.js.map +1 -1
- package/dist/services/task/TaskAttachmentService.d.ts.map +1 -1
- package/dist/services/task/TaskAttachmentService.js +1 -1
- package/dist/services/task/TaskAttachmentService.js.map +1 -1
- package/dist/services/task/TaskCommentService.d.ts.map +1 -1
- package/dist/services/task/TaskCommentService.js +1 -1
- package/dist/services/task/TaskCommentService.js.map +1 -1
- package/dist/services/task/TaskLogService.d.ts.map +1 -1
- package/dist/services/task/TaskLogService.js +1 -1
- package/dist/services/task/TaskLogService.js.map +1 -1
- package/dist/services/task/TaskNoteService.d.ts.map +1 -1
- package/dist/services/task/TaskNoteService.js +1 -1
- package/dist/services/task/TaskNoteService.js.map +1 -1
- package/dist/services/task/TaskNotificationQueueService.d.ts.map +1 -1
- package/dist/services/task/TaskNotificationQueueService.js +1 -1
- package/dist/services/task/TaskNotificationQueueService.js.map +1 -1
- package/dist/services/task/TaskNotificationService.d.ts.map +1 -1
- package/dist/services/task/TaskNotificationService.js +1 -1
- package/dist/services/task/TaskNotificationService.js.map +1 -1
- package/dist/services/task/TaskPriorityService.d.ts.map +1 -1
- package/dist/services/task/TaskPriorityService.js +1 -1
- package/dist/services/task/TaskPriorityService.js.map +1 -1
- package/dist/services/task/TaskProgressStageService.d.ts.map +1 -1
- package/dist/services/task/TaskProgressStageService.js +1 -1
- package/dist/services/task/TaskProgressStageService.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/task/TaskStatusService.d.ts.map +1 -1
- package/dist/services/task/TaskStatusService.js +1 -1
- package/dist/services/task/TaskStatusService.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/AdminService.d.ts.map +1 -1
- package/dist/services/users/AdminService.js +30 -3
- package/dist/services/users/AdminService.js.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
|
@@ -2,6 +2,22 @@
|
|
|
2
2
|
* PresenceProvider
|
|
3
3
|
* React Context Provider for presence management
|
|
4
4
|
* Auto-connects on login, auto-disconnects on logout, handles activity detection
|
|
5
|
+
*
|
|
6
|
+
* @deprecated For new projects, use CCMSProvider with presenceUrl config instead.
|
|
7
|
+
* This provider is maintained for backward compatibility and fine-grained control.
|
|
8
|
+
*
|
|
9
|
+
* Migration example:
|
|
10
|
+
* ```typescript
|
|
11
|
+
* // Old way:
|
|
12
|
+
* <PresenceProvider authManager={authManager} baseUrl={baseUrl}>
|
|
13
|
+
* <App />
|
|
14
|
+
* </PresenceProvider>
|
|
15
|
+
*
|
|
16
|
+
* // New way (recommended):
|
|
17
|
+
* <CCMSProvider config={{ baseUrl, presenceUrl, getToken: async () => token }}>
|
|
18
|
+
* <App />
|
|
19
|
+
* </CCMSProvider>
|
|
20
|
+
* ```
|
|
5
21
|
*/
|
|
6
22
|
import React, { useRef, useReducer, useEffect, useCallback, useMemo } from 'react';
|
|
7
23
|
import { PresenceContext } from './PresenceContext';
|
|
@@ -91,6 +107,8 @@ function detectPlatform() {
|
|
|
91
107
|
export function PresenceProvider({ children, authManager, baseUrl, options = {}, onConnectionChange, onConnectionError, }) {
|
|
92
108
|
const presenceClientRef = useRef(null);
|
|
93
109
|
const activityDetectorRef = useRef(null);
|
|
110
|
+
const isConnectingRef = useRef(false);
|
|
111
|
+
const tokenRef = useRef(null); // Store latest token for SignalR
|
|
94
112
|
const [state, dispatch] = useReducer(presenceReducer, initialPresenceState);
|
|
95
113
|
// Detect platform if not specified
|
|
96
114
|
const platform = options.platform || detectPlatform();
|
|
@@ -98,19 +116,40 @@ export function PresenceProvider({ children, authManager, baseUrl, options = {},
|
|
|
98
116
|
* Handle login - create client and connect
|
|
99
117
|
*/
|
|
100
118
|
const handleLogin = useCallback(async (authState) => {
|
|
101
|
-
if (!authState.isAuthenticated || !authState.user) {
|
|
119
|
+
if (!authState.isAuthenticated || !authState.user?.accessToken) {
|
|
120
|
+
console.warn('[PresenceProvider] Cannot connect - no access token in auth state');
|
|
102
121
|
return;
|
|
103
122
|
}
|
|
123
|
+
// Prevent multiple simultaneous connection attempts
|
|
124
|
+
if (isConnectingRef.current) {
|
|
125
|
+
console.log('[PresenceProvider] Connection already in progress, skipping...');
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
// If already connected, skip
|
|
129
|
+
if (presenceClientRef.current && state.isConnected) {
|
|
130
|
+
console.log('[PresenceProvider] Already connected, skipping...');
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
isConnectingRef.current = true;
|
|
104
134
|
try {
|
|
135
|
+
// Token is already stored in ref by the subscription
|
|
136
|
+
// This allows the token to be updated on refresh without recreating the client
|
|
137
|
+
console.log('[PresenceProvider] Connecting with stored token', {
|
|
138
|
+
hasToken: !!tokenRef.current,
|
|
139
|
+
tokenLength: tokenRef.current?.length,
|
|
140
|
+
});
|
|
105
141
|
// Create PresenceClient if needed
|
|
106
142
|
if (!presenceClientRef.current) {
|
|
107
143
|
const hubUrl = `${baseUrl}/presencehub`;
|
|
108
|
-
// Capture the user from authState to avoid timing issues with React state updates
|
|
109
|
-
const capturedUser = authState.user;
|
|
110
144
|
presenceClientRef.current = new PresenceClient(hubUrl, async () => {
|
|
111
|
-
//
|
|
112
|
-
|
|
113
|
-
|
|
145
|
+
// Return the latest token from ref (updated on token refresh)
|
|
146
|
+
// This avoids React state timing issues and supports token refresh
|
|
147
|
+
console.log('[PresenceProvider] accessTokenFactory called', {
|
|
148
|
+
hasToken: !!tokenRef.current,
|
|
149
|
+
tokenLength: tokenRef.current?.length,
|
|
150
|
+
timestamp: new Date().toISOString(),
|
|
151
|
+
});
|
|
152
|
+
return tokenRef.current;
|
|
114
153
|
}, options);
|
|
115
154
|
// Subscribe to presence client events
|
|
116
155
|
presenceClientRef.current.onStateChange((connectionState, error) => {
|
|
@@ -122,30 +161,43 @@ export function PresenceProvider({ children, authManager, baseUrl, options = {},
|
|
|
122
161
|
}
|
|
123
162
|
onConnectionChange?.(connected);
|
|
124
163
|
});
|
|
125
|
-
|
|
164
|
+
// Backend sends PresenceUpdate objects directly, not wrapped in { userId, presence }
|
|
165
|
+
presenceClientRef.current.on('userOnline', (presence) => {
|
|
126
166
|
dispatch({ type: 'USER_ONLINE', payload: presence });
|
|
127
167
|
});
|
|
128
|
-
presenceClientRef.current.on('userOffline', (
|
|
129
|
-
dispatch({ type: 'USER_OFFLINE', payload: userId });
|
|
168
|
+
presenceClientRef.current.on('userOffline', (presence) => {
|
|
169
|
+
dispatch({ type: 'USER_OFFLINE', payload: presence.userId });
|
|
130
170
|
});
|
|
131
|
-
presenceClientRef.current.on('statusChanged', (
|
|
171
|
+
presenceClientRef.current.on('statusChanged', (presence) => {
|
|
132
172
|
dispatch({ type: 'USER_STATUS_CHANGED', payload: presence });
|
|
133
173
|
});
|
|
174
|
+
// Listen for current user's own presence changes
|
|
175
|
+
presenceClientRef.current.on('currentUserPresenceChanged', (presence) => {
|
|
176
|
+
dispatch({ type: 'SET_CURRENT_USER_PRESENCE', payload: presence });
|
|
177
|
+
});
|
|
134
178
|
}
|
|
135
|
-
//
|
|
136
|
-
await new Promise(resolve => setTimeout(resolve, 100));
|
|
137
|
-
// Connect to hub
|
|
179
|
+
// Connect to hub (token is already captured, no delay needed)
|
|
138
180
|
await presenceClientRef.current.connect();
|
|
181
|
+
// Start heartbeat interval (send heartbeat every 30 seconds)
|
|
182
|
+
const heartbeatInterval = setInterval(() => {
|
|
183
|
+
if (presenceClientRef.current) {
|
|
184
|
+
presenceClientRef.current.heartbeat().catch((error) => {
|
|
185
|
+
console.error('[PresenceProvider] Heartbeat failed:', error);
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
}, 30000); // 30 seconds
|
|
189
|
+
// Store interval ID for cleanup
|
|
190
|
+
presenceClientRef.current._heartbeatInterval = heartbeatInterval;
|
|
139
191
|
// Start activity detection if enabled
|
|
140
192
|
if (options.enableActivityDetection !== false) {
|
|
141
193
|
activityDetectorRef.current = new ActivityDetector(
|
|
142
|
-
// On active
|
|
194
|
+
// On active - call recordActivity which automatically updates status if needed
|
|
143
195
|
() => {
|
|
144
|
-
presenceClientRef.current?.
|
|
145
|
-
console.error('[PresenceProvider] Failed to
|
|
196
|
+
presenceClientRef.current?.recordActivity().catch((error) => {
|
|
197
|
+
console.error('[PresenceProvider] Failed to record activity:', error);
|
|
146
198
|
});
|
|
147
199
|
},
|
|
148
|
-
// On inactive
|
|
200
|
+
// On inactive - manually update to Away
|
|
149
201
|
() => {
|
|
150
202
|
presenceClientRef.current?.updateStatus(PresenceStatus.Away).catch((error) => {
|
|
151
203
|
console.error('[PresenceProvider] Failed to update status to Away:', error);
|
|
@@ -161,7 +213,10 @@ export function PresenceProvider({ children, authManager, baseUrl, options = {},
|
|
|
161
213
|
dispatch({ type: 'SET_ERROR', payload: err });
|
|
162
214
|
onConnectionError?.(err);
|
|
163
215
|
}
|
|
164
|
-
|
|
216
|
+
finally {
|
|
217
|
+
isConnectingRef.current = false;
|
|
218
|
+
}
|
|
219
|
+
}, [authManager, baseUrl, options, platform, onConnectionChange, onConnectionError, state.isConnected]);
|
|
165
220
|
/**
|
|
166
221
|
* Handle logout - disconnect and cleanup
|
|
167
222
|
*/
|
|
@@ -169,8 +224,14 @@ export function PresenceProvider({ children, authManager, baseUrl, options = {},
|
|
|
169
224
|
// Stop activity detection
|
|
170
225
|
activityDetectorRef.current?.stop();
|
|
171
226
|
activityDetectorRef.current = null;
|
|
172
|
-
//
|
|
227
|
+
// Clear heartbeat interval
|
|
173
228
|
if (presenceClientRef.current) {
|
|
229
|
+
const heartbeatInterval = presenceClientRef.current._heartbeatInterval;
|
|
230
|
+
if (heartbeatInterval) {
|
|
231
|
+
clearInterval(heartbeatInterval);
|
|
232
|
+
presenceClientRef.current._heartbeatInterval = null;
|
|
233
|
+
}
|
|
234
|
+
// Disconnect from hub
|
|
174
235
|
await presenceClientRef.current.disconnect();
|
|
175
236
|
}
|
|
176
237
|
// Reset state
|
|
@@ -178,12 +239,23 @@ export function PresenceProvider({ children, authManager, baseUrl, options = {},
|
|
|
178
239
|
}, []);
|
|
179
240
|
/**
|
|
180
241
|
* Subscribe to auth state changes
|
|
242
|
+
* NOTE: In production, PresenceProvider should only be mounted AFTER user is authenticated
|
|
243
|
+
* This prevents WebSocket connection from blocking the login flow
|
|
181
244
|
*/
|
|
182
245
|
useEffect(() => {
|
|
183
246
|
const unsubscribe = authManager.subscribe((authState) => {
|
|
184
247
|
const state = authState;
|
|
185
248
|
if (state.isAuthenticated && state.user) {
|
|
186
|
-
|
|
249
|
+
// Verify token is actually available before connecting
|
|
250
|
+
if (state.user.accessToken) {
|
|
251
|
+
console.log('[PresenceProvider] Auth state updated with token, connecting...');
|
|
252
|
+
// Store token immediately
|
|
253
|
+
tokenRef.current = state.user.accessToken;
|
|
254
|
+
handleLogin(state);
|
|
255
|
+
}
|
|
256
|
+
else {
|
|
257
|
+
console.warn('[PresenceProvider] Auth state updated but token not yet available');
|
|
258
|
+
}
|
|
187
259
|
}
|
|
188
260
|
else {
|
|
189
261
|
handleLogout();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresenceProvider.js","sourceRoot":"","sources":["../../../src/realtime/presence/PresenceProvider.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"PresenceProvider.js","sourceRoot":"","sources":["../../../src/realtime/presence/PresenceProvider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,11 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export * from './types';
|
|
6
6
|
export * from './PresenceClient';
|
|
7
|
+
export * from './utils';
|
|
8
|
+
export * from './AutoHeartbeatManager';
|
|
9
|
+
export * from './ActivityTracker';
|
|
10
|
+
export * from './IdleDetector';
|
|
11
|
+
export * from './PresenceManager';
|
|
7
12
|
export * from './ActivityDetector';
|
|
8
13
|
export * from './PresenceContext';
|
|
9
14
|
export * from './PresenceProvider';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/realtime/presence/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/realtime/presence/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,SAAS,CAAC;AAGxB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
|
@@ -2,8 +2,18 @@
|
|
|
2
2
|
* Presence Module
|
|
3
3
|
* Real-time user presence tracking with automatic status management
|
|
4
4
|
*/
|
|
5
|
+
// Core types and client
|
|
5
6
|
export * from './types';
|
|
6
7
|
export * from './PresenceClient';
|
|
8
|
+
// Utility helpers
|
|
9
|
+
export * from './utils';
|
|
10
|
+
// Automatic feature managers
|
|
11
|
+
export * from './AutoHeartbeatManager';
|
|
12
|
+
export * from './ActivityTracker';
|
|
13
|
+
export * from './IdleDetector';
|
|
14
|
+
// High-level manager (recommended)
|
|
15
|
+
export * from './PresenceManager';
|
|
16
|
+
// Legacy components (still available for backward compatibility)
|
|
7
17
|
export * from './ActivityDetector';
|
|
8
18
|
export * from './PresenceContext';
|
|
9
19
|
export * from './PresenceProvider';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/realtime/presence/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/realtime/presence/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,wBAAwB;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AAEjC,kBAAkB;AAClB,cAAc,SAAS,CAAC;AAExB,6BAA6B;AAC7B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAE/B,mCAAmC;AACnC,cAAc,mBAAmB,CAAC;AAElC,iEAAiE;AACjE,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,mEAAmE;AACnE,qEAAqE"}
|
|
@@ -5,13 +5,14 @@
|
|
|
5
5
|
import { SignalRClientOptions } from '../shared/types';
|
|
6
6
|
/**
|
|
7
7
|
* Presence status enum
|
|
8
|
-
* Matches backend PresenceStatus enum
|
|
8
|
+
* Matches backend PresenceStatus enum (numeric values)
|
|
9
|
+
* IMPORTANT: Backend expects numeric values (0, 1, 2, 3)
|
|
9
10
|
*/
|
|
10
11
|
export declare enum PresenceStatus {
|
|
11
|
-
Offline =
|
|
12
|
-
Online =
|
|
13
|
-
Away =
|
|
14
|
-
Busy =
|
|
12
|
+
Offline = 0,
|
|
13
|
+
Online = 1,
|
|
14
|
+
Away = 2,
|
|
15
|
+
Busy = 3
|
|
15
16
|
}
|
|
16
17
|
/**
|
|
17
18
|
* User presence update
|
|
@@ -24,16 +25,34 @@ export interface UserPresenceUpdate {
|
|
|
24
25
|
userName?: string;
|
|
25
26
|
/** Current presence status */
|
|
26
27
|
status: PresenceStatus;
|
|
27
|
-
/** Last activity timestamp (ISO-8601) */
|
|
28
|
-
|
|
29
|
-
/** Optional status message (e.g., "In a meeting") */
|
|
30
|
-
|
|
31
|
-
/** Current working location */
|
|
32
|
-
workingAt?: string | null;
|
|
28
|
+
/** Last seen/activity timestamp (ISO-8601) */
|
|
29
|
+
lastSeen: string;
|
|
30
|
+
/** Optional activity/status message (e.g., "In a meeting", "🏖️ On vacation") */
|
|
31
|
+
activityMessage?: string | null;
|
|
33
32
|
/** Whether user is online */
|
|
34
33
|
isOnline: boolean;
|
|
35
|
-
/** SignalR connection ID */
|
|
36
|
-
connectionId
|
|
34
|
+
/** SignalR connection ID (optional) */
|
|
35
|
+
connectionId?: string;
|
|
36
|
+
/** Platform (web, ios, android, desktop) */
|
|
37
|
+
platform?: string;
|
|
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;
|
|
37
56
|
}
|
|
38
57
|
/**
|
|
39
58
|
* Presence client options
|
|
@@ -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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/realtime/presence/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,14 +4,15 @@
|
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* Presence status enum
|
|
7
|
-
* Matches backend PresenceStatus enum
|
|
7
|
+
* Matches backend PresenceStatus enum (numeric values)
|
|
8
|
+
* IMPORTANT: Backend expects numeric values (0, 1, 2, 3)
|
|
8
9
|
*/
|
|
9
10
|
export var PresenceStatus;
|
|
10
11
|
(function (PresenceStatus) {
|
|
11
|
-
PresenceStatus["Offline"] = "Offline";
|
|
12
|
-
PresenceStatus["Online"] = "Online";
|
|
13
|
-
PresenceStatus["Away"] = "Away";
|
|
14
|
-
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";
|
|
15
16
|
})(PresenceStatus || (PresenceStatus = {}));
|
|
16
17
|
/**
|
|
17
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
|
|
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,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform Detector Utility
|
|
3
|
+
* Detects the platform from which the user is connecting
|
|
4
|
+
*/
|
|
5
|
+
export type Platform = 'web' | 'ios' | 'android' | 'desktop';
|
|
6
|
+
/**
|
|
7
|
+
* Detect the current platform based on user agent and environment
|
|
8
|
+
*/
|
|
9
|
+
export declare function detectPlatform(): Platform;
|
|
10
|
+
/**
|
|
11
|
+
* Get platform-specific activity timeout
|
|
12
|
+
* Mobile devices need longer timeouts due to different interaction patterns
|
|
13
|
+
*/
|
|
14
|
+
export declare function getPlatformActivityTimeout(platform: Platform): number;
|
|
15
|
+
/**
|
|
16
|
+
* Get platform display name
|
|
17
|
+
*/
|
|
18
|
+
export declare function getPlatformDisplayName(platform?: string): string;
|
|
19
|
+
/**
|
|
20
|
+
* Get platform icon name (for use with icon libraries)
|
|
21
|
+
*/
|
|
22
|
+
export declare function getPlatformIcon(platform?: string): string;
|
|
23
|
+
//# sourceMappingURL=platformDetector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platformDetector.d.ts","sourceRoot":"","sources":["../../../../src/realtime/presence/utils/platformDetector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;AAE7D;;GAEG;AACH,wBAAgB,cAAc,IAAI,QAAQ,CAuCzC;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAWrE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAYhE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAYzD"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform Detector Utility
|
|
3
|
+
* Detects the platform from which the user is connecting
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Detect the current platform based on user agent and environment
|
|
7
|
+
*/
|
|
8
|
+
export function detectPlatform() {
|
|
9
|
+
// Check if we're in a browser environment
|
|
10
|
+
if (typeof window === 'undefined' || typeof navigator === 'undefined') {
|
|
11
|
+
return 'web'; // Default for server-side rendering
|
|
12
|
+
}
|
|
13
|
+
const userAgent = navigator.userAgent.toLowerCase();
|
|
14
|
+
const platform = navigator.platform?.toLowerCase() || '';
|
|
15
|
+
// Check for mobile platforms
|
|
16
|
+
if (/iphone|ipad|ipod/.test(userAgent)) {
|
|
17
|
+
return 'ios';
|
|
18
|
+
}
|
|
19
|
+
if (/android/.test(userAgent)) {
|
|
20
|
+
return 'android';
|
|
21
|
+
}
|
|
22
|
+
// Check for desktop platforms
|
|
23
|
+
if (/electron/.test(userAgent)) {
|
|
24
|
+
return 'desktop';
|
|
25
|
+
}
|
|
26
|
+
// Check if running as PWA or native-like environment
|
|
27
|
+
if (window.matchMedia('(display-mode: standalone)').matches ||
|
|
28
|
+
window.navigator.standalone === true) {
|
|
29
|
+
// Could be iOS/Android PWA, check user agent again
|
|
30
|
+
if (/iphone|ipad|ipod/.test(userAgent)) {
|
|
31
|
+
return 'ios';
|
|
32
|
+
}
|
|
33
|
+
if (/android/.test(userAgent)) {
|
|
34
|
+
return 'android';
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
// Default to web for desktop browsers
|
|
38
|
+
return 'web';
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Get platform-specific activity timeout
|
|
42
|
+
* Mobile devices need longer timeouts due to different interaction patterns
|
|
43
|
+
*/
|
|
44
|
+
export function getPlatformActivityTimeout(platform) {
|
|
45
|
+
switch (platform) {
|
|
46
|
+
case 'ios':
|
|
47
|
+
case 'android':
|
|
48
|
+
return 10 * 60 * 1000; // 10 minutes for mobile
|
|
49
|
+
case 'desktop':
|
|
50
|
+
return 5 * 60 * 1000; // 5 minutes for desktop apps
|
|
51
|
+
case 'web':
|
|
52
|
+
default:
|
|
53
|
+
return 5 * 60 * 1000; // 5 minutes for web
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get platform display name
|
|
58
|
+
*/
|
|
59
|
+
export function getPlatformDisplayName(platform) {
|
|
60
|
+
switch (platform?.toLowerCase()) {
|
|
61
|
+
case 'ios':
|
|
62
|
+
return 'iOS';
|
|
63
|
+
case 'android':
|
|
64
|
+
return 'Android';
|
|
65
|
+
case 'desktop':
|
|
66
|
+
return 'Desktop';
|
|
67
|
+
case 'web':
|
|
68
|
+
default:
|
|
69
|
+
return 'Web';
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Get platform icon name (for use with icon libraries)
|
|
74
|
+
*/
|
|
75
|
+
export function getPlatformIcon(platform) {
|
|
76
|
+
switch (platform?.toLowerCase()) {
|
|
77
|
+
case 'ios':
|
|
78
|
+
return 'apple';
|
|
79
|
+
case 'android':
|
|
80
|
+
return 'android';
|
|
81
|
+
case 'desktop':
|
|
82
|
+
return 'desktop';
|
|
83
|
+
case 'web':
|
|
84
|
+
default:
|
|
85
|
+
return 'browser';
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=platformDetector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platformDetector.js","sourceRoot":"","sources":["../../../../src/realtime/presence/utils/platformDetector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,0CAA0C;IAC1C,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC,CAAC,oCAAoC;IACpD,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IACpD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAEzD,6BAA6B;IAC7B,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,8BAA8B;IAC9B,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,qDAAqD;IACrD,IACE,MAAM,CAAC,UAAU,CAAC,4BAA4B,CAAC,CAAC,OAAO;QACtD,MAAM,CAAC,SAAiB,CAAC,UAAU,KAAK,IAAI,EAC7C,CAAC;QACD,mDAAmD;QACnD,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAAkB;IAC3D,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,KAAK,CAAC;QACX,KAAK,SAAS;YACZ,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,wBAAwB;QACjD,KAAK,SAAS;YACZ,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,6BAA6B;QACrD,KAAK,KAAK,CAAC;QACX;YACE,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,oBAAoB;IAC9C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAiB;IACtD,QAAQ,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC;QAChC,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,KAAK,CAAC;QACX;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,QAAiB;IAC/C,QAAQ,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC;QAChC,KAAK,KAAK;YACR,OAAO,OAAO,CAAC;QACjB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,KAAK,CAAC;QACX;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,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"}
|