hgs-twilio-class-lib 1.1.50 → 1.1.51
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/lib/aws/abstract/ServiceObjectStore.js +2 -10
- package/lib/aws/abstract/ServiceObjectStore.js.map +1 -0
- package/lib/aws/abstract/ServiceOpenRequest.js +2 -10
- package/lib/aws/abstract/ServiceOpenRequest.js.map +1 -0
- package/lib/aws/abstract/ServiceRequest.js +2 -7
- package/lib/aws/abstract/ServiceRequest.js.map +1 -0
- package/lib/aws/abstract/ServiceResource.js +2 -31
- package/lib/aws/abstract/ServiceResource.js.map +1 -0
- package/lib/aws/abstract/ServiceResourceFactory.js +2 -14
- package/lib/aws/abstract/ServiceResourceFactory.js.map +1 -0
- package/lib/aws/abstract/ServiceTransaction.js +2 -11
- package/lib/aws/abstract/ServiceTransaction.js.map +1 -0
- package/lib/aws/impl/AWSAPIConfig.js +2 -38
- package/lib/aws/impl/AWSAPIConfig.js.map +1 -0
- package/lib/aws/impl/AWSClient.js +2 -35
- package/lib/aws/impl/AWSClient.js.map +1 -0
- package/lib/aws/impl/AWSConnectAPIConfig.js +2 -38
- package/lib/aws/impl/AWSConnectAPIConfig.js.map +1 -0
- package/lib/aws/impl/DynamoDB/DynamoOpenRequest.js +2 -24
- package/lib/aws/impl/DynamoDB/DynamoOpenRequest.js.map +1 -0
- package/lib/aws/impl/DynamoDB/DynamoRequest.js +2 -21
- package/lib/aws/impl/DynamoDB/DynamoRequest.js.map +1 -0
- package/lib/aws/impl/DynamoDB/DynamoResourse.js +2 -45
- package/lib/aws/impl/DynamoDB/DynamoResourse.js.map +1 -0
- package/lib/aws/impl/DynamoDB/DynamoServiceFactory.js +2 -63
- package/lib/aws/impl/DynamoDB/DynamoServiceFactory.js.map +1 -0
- package/lib/aws/impl/DynamoDB/DynamoTable.js +2 -126
- package/lib/aws/impl/DynamoDB/DynamoTable.js.map +1 -0
- package/lib/aws/impl/DynamoDB/DynamoTransaction.js +2 -37
- package/lib/aws/impl/DynamoDB/DynamoTransaction.js.map +1 -0
- package/lib/aws/impl/HoopServices/HoopService.js +2 -124
- package/lib/aws/impl/HoopServices/HoopService.js.map +1 -0
- package/lib/aws/impl/HoopServices/HoopServiceFactory.js +2 -53
- package/lib/aws/impl/HoopServices/HoopServiceFactory.js.map +1 -0
- package/lib/aws/impl/HoopServices/HoopServiceOpenRequest.js +2 -24
- package/lib/aws/impl/HoopServices/HoopServiceOpenRequest.js.map +1 -0
- package/lib/aws/impl/HoopServices/HoopServiceResource.js +2 -46
- package/lib/aws/impl/HoopServices/HoopServiceResource.js.map +1 -0
- package/lib/aws/impl/HoopServices/HoopServiceTransaction.js +2 -37
- package/lib/aws/impl/HoopServices/HoopServiceTransaction.js.map +1 -0
- package/lib/aws/interface/IDirection.js +2 -2
- package/lib/aws/interface/IDirection.js.map +1 -0
- package/lib/aws/interface/ILink.js +2 -2
- package/lib/aws/interface/ILink.js.map +1 -0
- package/lib/aws/interface/IServiceDBOpenRequest.js +2 -2
- package/lib/aws/interface/IServiceDBOpenRequest.js.map +1 -0
- package/lib/aws/interface/IServiceObjectStore.js +2 -2
- package/lib/aws/interface/IServiceObjectStore.js.map +1 -0
- package/lib/aws/interface/IServiceObjectStoreParameters.js +2 -2
- package/lib/aws/interface/IServiceObjectStoreParameters.js.map +1 -0
- package/lib/aws/interface/IServiceRequest.js +2 -2
- package/lib/aws/interface/IServiceRequest.js.map +1 -0
- package/lib/aws/interface/IServiceResource.js +2 -2
- package/lib/aws/interface/IServiceResource.js.map +1 -0
- package/lib/aws/interface/IServiceTransation.js +2 -2
- package/lib/aws/interface/IServiceTransation.js.map +1 -0
- package/lib/aws/interface/ISubResourceUri.js +2 -2
- package/lib/aws/interface/ISubResourceUri.js.map +1 -0
- package/lib/aws/interface/ISyncItemData.js +2 -1
- package/lib/aws/interface/ISyncItemData.js.map +1 -0
- package/lib/aws/interface/ISyncObjectStoreParameters.js +2 -1
- package/lib/aws/interface/ISyncObjectStoreParameters.js.map +1 -0
- package/lib/aws/interface/ISyncTransactionOptions.js +2 -2
- package/lib/aws/interface/ISyncTransactionOptions.js.map +1 -0
- package/lib/common/abstract/CommonError.js +2 -12
- package/lib/common/abstract/CommonError.js.map +1 -0
- package/lib/common/abstract/Database.js +2 -58
- package/lib/common/abstract/Database.js.map +1 -0
- package/lib/common/abstract/DatabaseClient.js +2 -21
- package/lib/common/abstract/DatabaseClient.js.map +1 -0
- package/lib/common/abstract/DatabaseClientConfig.js +2 -9
- package/lib/common/abstract/DatabaseClientConfig.js.map +1 -0
- package/lib/common/abstract/DatabaseFactory.js +2 -32
- package/lib/common/abstract/DatabaseFactory.js.map +1 -0
- package/lib/common/abstract/DatabaseObjectStore.js +2 -13
- package/lib/common/abstract/DatabaseObjectStore.js.map +1 -0
- package/lib/common/abstract/DatabaseOpenRequest.js +2 -13
- package/lib/common/abstract/DatabaseOpenRequest.js.map +1 -0
- package/lib/common/abstract/DatabaseRequest.js +2 -14
- package/lib/common/abstract/DatabaseRequest.js.map +1 -0
- package/lib/common/abstract/DatabaseTransaction.js +2 -13
- package/lib/common/abstract/DatabaseTransaction.js.map +1 -0
- package/lib/common/abstract/Filter.js +2 -30
- package/lib/common/abstract/Filter.js.map +1 -0
- package/lib/common/enum/ErrorTypes.js +2 -9
- package/lib/common/enum/ErrorTypes.js.map +1 -0
- package/lib/common/enum/FilterTypes.js +2 -14
- package/lib/common/enum/FilterTypes.js.map +1 -0
- package/lib/common/interface/IDatabaesInfo.js +2 -2
- package/lib/common/interface/IDatabaesInfo.js.map +1 -0
- package/lib/common/interface/IDatabase.js +2 -2
- package/lib/common/interface/IDatabase.js.map +1 -0
- package/lib/common/interface/IDatabaseClient.js +2 -2
- package/lib/common/interface/IDatabaseClient.js.map +1 -0
- package/lib/common/interface/IDatabaseConfig.js +2 -10
- package/lib/common/interface/IDatabaseConfig.js.map +1 -0
- package/lib/common/interface/IDatabaseDBOpenRequest.js +2 -2
- package/lib/common/interface/IDatabaseDBOpenRequest.js.map +1 -0
- package/lib/common/interface/IDatabaseFactory.js +2 -2
- package/lib/common/interface/IDatabaseFactory.js.map +1 -0
- package/lib/common/interface/IDatabaseObjectStore.js +2 -2
- package/lib/common/interface/IDatabaseObjectStore.js.map +1 -0
- package/lib/common/interface/IDatabaseObjectStoreParameters.js +2 -2
- package/lib/common/interface/IDatabaseObjectStoreParameters.js.map +1 -0
- package/lib/common/interface/IDatabaseRecord.js +2 -2
- package/lib/common/interface/IDatabaseRecord.js.map +1 -0
- package/lib/common/interface/IDatabaseRequest.js +2 -2
- package/lib/common/interface/IDatabaseRequest.js.map +1 -0
- package/lib/common/interface/IDatabaseTransaction.js +2 -2
- package/lib/common/interface/IDatabaseTransaction.js.map +1 -0
- package/lib/common/interface/IDatabaseTransactionOptions.js +2 -2
- package/lib/common/interface/IDatabaseTransactionOptions.js.map +1 -0
- package/lib/common/interface/IError.js +2 -2
- package/lib/common/interface/IError.js.map +1 -0
- package/lib/common/interface/IErrorDetails.js +2 -2
- package/lib/common/interface/IErrorDetails.js.map +1 -0
- package/lib/common/interface/IFilter.js +2 -2
- package/lib/common/interface/IFilter.js.map +1 -0
- package/lib/common/type/DatabaseReadyType.js +2 -2
- package/lib/common/type/DatabaseReadyType.js.map +1 -0
- package/lib/common/type/FilterInputType.js +2 -2
- package/lib/common/type/FilterInputType.js.map +1 -0
- package/lib/common/type/SearchParameterType.js +2 -3
- package/lib/common/type/SearchParameterType.js.map +1 -0
- package/lib/common/utils/dateFormat.js +2 -58
- package/lib/common/utils/dateFormat.js.map +1 -0
- package/lib/common/utils/filter.js +2 -99
- package/lib/common/utils/filter.js.map +1 -0
- package/lib/common/utils/newFilter.js +2 -126
- package/lib/common/utils/newFilter.js.map +1 -0
- package/lib/common/utils/pagination.js +2 -9
- package/lib/common/utils/pagination.js.map +1 -0
- package/lib/common/utils/search.js +2 -14
- package/lib/common/utils/search.js.map +1 -0
- package/lib/common/utils/sort.js +2 -13
- package/lib/common/utils/sort.js.map +1 -0
- package/lib/config/AWSConfig.js +2 -9
- package/lib/config/AWSConfig.js.map +1 -0
- package/lib/config/DatabaseConfig.js +2 -36
- package/lib/config/DatabaseConfig.js.map +1 -0
- package/lib/config/TwilioConfig.js +2 -7
- package/lib/config/TwilioConfig.js.map +1 -0
- package/lib/controller/Common.d.ts +0 -1
- package/lib/controller/Common.d.ts.map +1 -1
- package/lib/controller/Common.js +2 -76
- package/lib/controller/Common.js.map +1 -0
- package/lib/controller/DatabaseFactoryCollection.js +2 -14
- package/lib/controller/DatabaseFactoryCollection.js.map +1 -0
- package/lib/controller/MainController.js +2 -174
- package/lib/controller/MainController.js.map +1 -0
- package/lib/controller/aws/HoopBuisnessHours.js +2 -408
- package/lib/controller/aws/HoopBuisnessHours.js.map +1 -0
- package/lib/controller/aws/HoopOperationsController.js +2 -86
- package/lib/controller/aws/HoopOperationsController.js.map +1 -0
- package/lib/controller/aws/HoopOverrideBranchesController.js +2 -40
- package/lib/controller/aws/HoopOverrideBranchesController.js.map +1 -0
- package/lib/controller/aws/HoopProfilesListController.js +2 -61
- package/lib/controller/aws/HoopProfilesListController.js.map +1 -0
- package/lib/controller/aws/PlaybackScreenrecordings.js +2 -63
- package/lib/controller/aws/PlaybackScreenrecordings.js.map +1 -0
- package/lib/controller/twilio/AgentActionsController.js +2 -177
- package/lib/controller/twilio/AgentActionsController.js.map +1 -0
- package/lib/controller/twilio/AgentScorecardController.js +2 -173
- package/lib/controller/twilio/AgentScorecardController.js.map +1 -0
- package/lib/controller/twilio/AuditLogController.js +2 -137
- package/lib/controller/twilio/AuditLogController.js.map +1 -0
- package/lib/controller/twilio/CallLogsController.js +2 -131
- package/lib/controller/twilio/CallLogsController.js.map +1 -0
- package/lib/controller/twilio/CallbackAndVoicemailController.js +2 -114
- package/lib/controller/twilio/CallbackAndVoicemailController.js.map +1 -0
- package/lib/controller/twilio/ChannelSettingTaskInfoController.js +2 -117
- package/lib/controller/twilio/ChannelSettingTaskInfoController.js.map +1 -0
- package/lib/controller/twilio/ChannelSettingsController.js +2 -142
- package/lib/controller/twilio/ChannelSettingsController.js.map +1 -0
- package/lib/controller/twilio/CxConfigAssetController.d.ts.map +1 -1
- package/lib/controller/twilio/CxConfigAssetController.js +2 -128
- package/lib/controller/twilio/CxConfigAssetController.js.map +1 -0
- package/lib/controller/twilio/CxConfigController.js +2 -112
- package/lib/controller/twilio/CxConfigController.js.map +1 -0
- package/lib/controller/twilio/CxConfigExternalNumbersController.js +2 -138
- package/lib/controller/twilio/CxConfigExternalNumbersController.js.map +1 -0
- package/lib/controller/twilio/CxConfigOther.js +2 -128
- package/lib/controller/twilio/CxConfigOther.js.map +1 -0
- package/lib/controller/twilio/CxConfigQueueMenuController.js +2 -129
- package/lib/controller/twilio/CxConfigQueueMenuController.js.map +1 -0
- package/lib/controller/twilio/CxConfigUIconfigController.js +2 -132
- package/lib/controller/twilio/CxConfigUIconfigController.js.map +1 -0
- package/lib/controller/twilio/GPMController.js +2 -151
- package/lib/controller/twilio/GPMController.js.map +1 -0
- package/lib/controller/twilio/HoopBusinessHoursController.js +2 -285
- package/lib/controller/twilio/HoopBusinessHoursController.js.map +1 -0
- package/lib/controller/twilio/HoopHolidaysController.js +2 -150
- package/lib/controller/twilio/HoopHolidaysController.js.map +1 -0
- package/lib/controller/twilio/HoopMainController.js +2 -297
- package/lib/controller/twilio/HoopMainController.js.map +1 -0
- package/lib/controller/twilio/HoopNotesController.js +2 -149
- package/lib/controller/twilio/HoopNotesController.js.map +1 -0
- package/lib/controller/twilio/HoopOperationsController.js +2 -138
- package/lib/controller/twilio/HoopOperationsController.js.map +1 -0
- package/lib/controller/twilio/HoopOverrideBranchesController.js +2 -137
- package/lib/controller/twilio/HoopOverrideBranchesController.js.map +1 -0
- package/lib/controller/twilio/HoopPartialDaysController.js +2 -150
- package/lib/controller/twilio/HoopPartialDaysController.js.map +1 -0
- package/lib/controller/twilio/HoopProfilesListController.js +2 -147
- package/lib/controller/twilio/HoopProfilesListController.js.map +1 -0
- package/lib/controller/twilio/NavigationController.js +2 -170
- package/lib/controller/twilio/NavigationController.js.map +1 -0
- package/lib/controller/twilio/QualityFormsController.js +2 -129
- package/lib/controller/twilio/QualityFormsController.js.map +1 -0
- package/lib/controller/twilio/QuickLinkController.js +2 -122
- package/lib/controller/twilio/QuickLinkController.js.map +1 -0
- package/lib/controller/twilio/RealTimeReportQueueDetailsController.js +2 -126
- package/lib/controller/twilio/RealTimeReportQueueDetailsController.js.map +1 -0
- package/lib/controller/twilio/RealTimeReportsWGDetailsController.js +2 -160
- package/lib/controller/twilio/RealTimeReportsWGDetailsController.js.map +1 -0
- package/lib/controller/twilio/TaskInfoPanelController.js +2 -134
- package/lib/controller/twilio/TaskInfoPanelController.js.map +1 -0
- package/lib/controller/twilio/filterImpl/AgentScorecardFilter.js +2 -52
- package/lib/controller/twilio/filterImpl/AgentScorecardFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/AuditLogsFilter.js +2 -89
- package/lib/controller/twilio/filterImpl/AuditLogsFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/CXConfigPromptFilter.js +2 -81
- package/lib/controller/twilio/filterImpl/CXConfigPromptFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/CallLogsFilter.js +2 -101
- package/lib/controller/twilio/filterImpl/CallLogsFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/CxConfigAssetFilter.js +2 -59
- package/lib/controller/twilio/filterImpl/CxConfigAssetFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/CxConfigExternalNumbersFilter.js +2 -67
- package/lib/controller/twilio/filterImpl/CxConfigExternalNumbersFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/CxConfigOtherFilter.js +2 -52
- package/lib/controller/twilio/filterImpl/CxConfigOtherFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/CxConfigQueueMenuFilter.js +2 -78
- package/lib/controller/twilio/filterImpl/CxConfigQueueMenuFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/CxConfigUIconfigFilter.js +2 -51
- package/lib/controller/twilio/filterImpl/CxConfigUIconfigFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/HoopHolidaysFilter.js +2 -55
- package/lib/controller/twilio/filterImpl/HoopHolidaysFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/HoopNotesFilter.js +2 -51
- package/lib/controller/twilio/filterImpl/HoopNotesFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/HoopPartialDaysFilter.js +2 -55
- package/lib/controller/twilio/filterImpl/HoopPartialDaysFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/MainFilterService.js +2 -108
- package/lib/controller/twilio/filterImpl/MainFilterService.js.map +1 -0
- package/lib/controller/twilio/filterImpl/NavigationFilter.js +2 -90
- package/lib/controller/twilio/filterImpl/NavigationFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/QueueDetailsFilter.js +2 -53
- package/lib/controller/twilio/filterImpl/QueueDetailsFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/TaskCompleteFilter.js +2 -62
- package/lib/controller/twilio/filterImpl/TaskCompleteFilter.js.map +1 -0
- package/lib/controller/twilio/filterImpl/TaskInfoPanelFilter.js +2 -52
- package/lib/controller/twilio/filterImpl/TaskInfoPanelFilter.js.map +1 -0
- package/lib/express/ApiResponse.js +2 -11
- package/lib/express/ApiResponse.js.map +1 -0
- package/lib/express/RequestValidator.js +2 -77
- package/lib/express/RequestValidator.js.map +1 -0
- package/lib/express/RequireParamsPicker.js +2 -14
- package/lib/express/RequireParamsPicker.js.map +1 -0
- package/lib/express/ValidateRequireParameters.js +2 -39
- package/lib/express/ValidateRequireParameters.js.map +1 -0
- package/lib/index.js +2 -100
- package/lib/index.js.map +1 -0
- package/lib/models/BatchUpdateSkills.model.js +2 -11
- package/lib/models/BatchUpdateSkills.model.js.map +1 -0
- package/lib/models/CannedMessage.model.js +2 -1
- package/lib/models/CannedMessage.model.js.map +1 -0
- package/lib/models/ChannelSettingsTaskInfo.model.js +2 -1
- package/lib/models/ChannelSettingsTaskInfo.model.js.map +1 -0
- package/lib/models/CustomerFeedback.model.js +2 -1
- package/lib/models/CustomerFeedback.model.js.map +1 -0
- package/lib/models/Filter.model.js +2 -2
- package/lib/models/Filter.model.js.map +1 -0
- package/lib/models/Hoop.model.js +2 -9
- package/lib/models/Hoop.model.js.map +1 -0
- package/lib/models/Navigation.model.js +2 -8
- package/lib/models/Navigation.model.js.map +1 -0
- package/lib/models/Roles.Model.js +2 -1
- package/lib/models/Roles.Model.js.map +1 -0
- package/lib/models/abstract/BaseModel.js +2 -40
- package/lib/models/abstract/BaseModel.js.map +1 -0
- package/lib/models/abstract/BaseModelOld.js +2 -13
- package/lib/models/abstract/BaseModelOld.js.map +1 -0
- package/lib/models/impl/AgentActionsLogsModel.js +2 -89
- package/lib/models/impl/AgentActionsLogsModel.js.map +1 -0
- package/lib/models/impl/AgentActionsModel.js +2 -60
- package/lib/models/impl/AgentActionsModel.js.map +1 -0
- package/lib/models/impl/AgentScorecardModel.js +2 -282
- package/lib/models/impl/AgentScorecardModel.js.map +1 -0
- package/lib/models/impl/AuditLogsModel.js +2 -146
- package/lib/models/impl/AuditLogsModel.js.map +1 -0
- package/lib/models/impl/CallLogsModel.js +2 -109
- package/lib/models/impl/CallLogsModel.js.map +1 -0
- package/lib/models/impl/CallStatisticsModel.js +2 -52
- package/lib/models/impl/CallStatisticsModel.js.map +1 -0
- package/lib/models/impl/CategoryDetailsModel.js +2 -44
- package/lib/models/impl/CategoryDetailsModel.js.map +1 -0
- package/lib/models/impl/MemberModel.js +2 -170
- package/lib/models/impl/MemberModel.js.map +1 -0
- package/lib/models/impl/ModelValidationError.js +2 -15
- package/lib/models/impl/ModelValidationError.js.map +1 -0
- package/lib/models/impl/NavigationModel.js +2 -126
- package/lib/models/impl/NavigationModel.js.map +1 -0
- package/lib/models/impl/PerformanceStatisticsModel.js +2 -129
- package/lib/models/impl/PerformanceStatisticsModel.js.map +1 -0
- package/lib/models/impl/PlaybackScreenrecordings.js +2 -133
- package/lib/models/impl/PlaybackScreenrecordings.js.map +1 -0
- package/lib/models/impl/ProfileModel.js +2 -102
- package/lib/models/impl/ProfileModel.js.map +1 -0
- package/lib/models/impl/QualityFormsModel.js +2 -150
- package/lib/models/impl/QualityFormsModel.js.map +1 -0
- package/lib/models/impl/QuestionDetailsModel.js +2 -173
- package/lib/models/impl/QuestionDetailsModel.js.map +1 -0
- package/lib/models/impl/QueueDetailsModel.js +2 -261
- package/lib/models/impl/QueueDetailsModel.js.map +1 -0
- package/lib/models/impl/QueueModel.js +2 -156
- package/lib/models/impl/QueueModel.js.map +1 -0
- package/lib/models/impl/QuickLinkModel.js +2 -122
- package/lib/models/impl/QuickLinkModel.js.map +1 -0
- package/lib/models/impl/StatisticsNumberDetailsModel.js +2 -72
- package/lib/models/impl/StatisticsNumberDetailsModel.js.map +1 -0
- package/lib/models/impl/StatisticsTimeDetailsModel.js +2 -72
- package/lib/models/impl/StatisticsTimeDetailsModel.js.map +1 -0
- package/lib/models/impl/TaskAttributesModel.js +2 -108
- package/lib/models/impl/TaskAttributesModel.js.map +1 -0
- package/lib/models/impl/TaskChannelModel.js +2 -69
- package/lib/models/impl/TaskChannelModel.js.map +1 -0
- package/lib/models/impl/TaskComplete.js +2 -1
- package/lib/models/impl/TaskComplete.js.map +1 -0
- package/lib/models/impl/TaskInfoPanelModel.js +2 -69
- package/lib/models/impl/TaskInfoPanelModel.js.map +1 -0
- package/lib/models/impl/TaskModel.js +2 -234
- package/lib/models/impl/TaskModel.js.map +1 -0
- package/lib/models/impl/WorkGroupDetailsModel.js +2 -281
- package/lib/models/impl/WorkGroupDetailsModel.js.map +1 -0
- package/lib/models/impl/callbackandvoicemail/CallbackAndVoicemailModel.js +2 -140
- package/lib/models/impl/callbackandvoicemail/CallbackAndVoicemailModel.js.map +1 -0
- package/lib/models/impl/callbackandvoicemail/CallbackAndVoicemailNamespace.js +2 -12
- package/lib/models/impl/callbackandvoicemail/CallbackAndVoicemailNamespace.js.map +1 -0
- package/lib/models/impl/callbackandvoicemail/CallbackModel.js +2 -82
- package/lib/models/impl/callbackandvoicemail/CallbackModel.js.map +1 -0
- package/lib/models/impl/callbackandvoicemail/VoicemailModel.js +2 -108
- package/lib/models/impl/callbackandvoicemail/VoicemailModel.js.map +1 -0
- package/lib/models/impl/channelsettings/ChannelSettingModel.js +2 -240
- package/lib/models/impl/channelsettings/ChannelSettingModel.js.map +1 -0
- package/lib/models/impl/channelsettings/ChannelSettingTaskInfoModel.js +2 -106
- package/lib/models/impl/channelsettings/ChannelSettingTaskInfoModel.js.map +1 -0
- package/lib/models/impl/channelsettings/TaskInfoAttributeModel.js +2 -80
- package/lib/models/impl/channelsettings/TaskInfoAttributeModel.js.map +1 -0
- package/lib/models/impl/channelsettings/TaskInfoModel.js +2 -52
- package/lib/models/impl/channelsettings/TaskInfoModel.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfigNamespace.js +2 -20
- package/lib/models/impl/cxconfig/CxConfigNamespace.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfigUIConfigModel.js +2 -103
- package/lib/models/impl/cxconfig/CxConfigUIConfigModel.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfiguratorConfigModel.js +2 -103
- package/lib/models/impl/cxconfig/CxConfiguratorConfigModel.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfiguratorExternalNumbersModel.js +2 -149
- package/lib/models/impl/cxconfig/CxConfiguratorExternalNumbersModel.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfiguratorGPMAssetModel.js +2 -179
- package/lib/models/impl/cxconfig/CxConfiguratorGPMAssetModel.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfiguratorGPMPromptModel.js +2 -213
- package/lib/models/impl/cxconfig/CxConfiguratorGPMPromptModel.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfiguratorOtherModel.js +2 -96
- package/lib/models/impl/cxconfig/CxConfiguratorOtherModel.js.map +1 -0
- package/lib/models/impl/cxconfig/CxConfiguratorQueueMenuModel.js +2 -128
- package/lib/models/impl/cxconfig/CxConfiguratorQueueMenuModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopBusinessHoursModel.js +2 -122
- package/lib/models/impl/hoop/HoopBusinessHoursModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopDescriptionModel.js +2 -64
- package/lib/models/impl/hoop/HoopDescriptionModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopHolidaysImplModel.js +2 -118
- package/lib/models/impl/hoop/HoopHolidaysImplModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopNotesImplModel.js +2 -117
- package/lib/models/impl/hoop/HoopNotesImplModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopOperationsImplModel.js +2 -161
- package/lib/models/impl/hoop/HoopOperationsImplModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopOverrideImplModel.js +2 -143
- package/lib/models/impl/hoop/HoopOverrideImplModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopPartialDaysImplModel.js +2 -140
- package/lib/models/impl/hoop/HoopPartialDaysImplModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopProfilesListImplModel.js +2 -104
- package/lib/models/impl/hoop/HoopProfilesListImplModel.js.map +1 -0
- package/lib/models/impl/hoop/HoopWeeklyTimingModel.js +2 -86
- package/lib/models/impl/hoop/HoopWeeklyTimingModel.js.map +1 -0
- package/lib/models/index.js +2 -53
- package/lib/models/index.js.map +1 -0
- package/lib/models/interface/IBaseModel.js +2 -2
- package/lib/models/interface/IBaseModel.js.map +1 -0
- package/lib/models/types/AgentScorecard.type.js +2 -7
- package/lib/models/types/AgentScorecard.type.js.map +1 -0
- package/lib/models/types/AuditLog.type.js +2 -10
- package/lib/models/types/AuditLog.type.js.map +1 -0
- package/lib/models/types/CallLog.type.js +2 -10
- package/lib/models/types/CallLog.type.js.map +1 -0
- package/lib/models/types/ChannelSetting.type.js +2 -11
- package/lib/models/types/ChannelSetting.type.js.map +1 -0
- package/lib/models/types/CxConfig.type.js +2 -43
- package/lib/models/types/CxConfig.type.js.map +1 -0
- package/lib/models/types/Hoop.type.js +2 -13
- package/lib/models/types/Hoop.type.js.map +1 -0
- package/lib/models/types/Navigation.type.js +2 -8
- package/lib/models/types/Navigation.type.js.map +1 -0
- package/lib/models/types/Profile.type.js +2 -2
- package/lib/models/types/Profile.type.js.map +1 -0
- package/lib/models/types/QueueDetails.type.js +2 -7
- package/lib/models/types/QueueDetails.type.js.map +1 -0
- package/lib/models/types/TaskComplete.type.js +2 -6
- package/lib/models/types/TaskComplete.type.js.map +1 -0
- package/lib/models/types/TaskInfoPanel.type.js +2 -7
- package/lib/models/types/TaskInfoPanel.type.js.map +1 -0
- package/lib/server.js +2 -39
- package/lib/server.js.map +1 -0
- package/lib/twilio/abstract/ServiceObjectStore.js +2 -10
- package/lib/twilio/abstract/ServiceObjectStore.js.map +1 -0
- package/lib/twilio/abstract/ServiceOpenRequest.js +2 -10
- package/lib/twilio/abstract/ServiceOpenRequest.js.map +1 -0
- package/lib/twilio/abstract/ServiceRequest.js +2 -7
- package/lib/twilio/abstract/ServiceRequest.js.map +1 -0
- package/lib/twilio/abstract/ServiceResource.js +2 -37
- package/lib/twilio/abstract/ServiceResource.js.map +1 -0
- package/lib/twilio/abstract/ServiceResourceFactory.js +2 -18
- package/lib/twilio/abstract/ServiceResourceFactory.js.map +1 -0
- package/lib/twilio/abstract/ServiceTransaction.js +2 -11
- package/lib/twilio/abstract/ServiceTransaction.js.map +1 -0
- package/lib/twilio/abstract/SyncServiceItemResource.js +2 -60
- package/lib/twilio/abstract/SyncServiceItemResource.js.map +1 -0
- package/lib/twilio/abstract/TwilioClientConfig.js +2 -1
- package/lib/twilio/abstract/TwilioClientConfig.js.map +1 -0
- package/lib/twilio/impl/TwilioAPIKeyConfig.js +2 -31
- package/lib/twilio/impl/TwilioAPIKeyConfig.js.map +1 -0
- package/lib/twilio/impl/TwilioAuthTokenConfig.js +2 -24
- package/lib/twilio/impl/TwilioAuthTokenConfig.js.map +1 -0
- package/lib/twilio/impl/TwilioClient.js +2 -21
- package/lib/twilio/impl/TwilioClient.js.map +1 -0
- package/lib/twilio/impl/message/messageService.js +2 -42
- package/lib/twilio/impl/message/messageService.js.map +1 -0
- package/lib/twilio/impl/sync/SyncDocument.js +2 -52
- package/lib/twilio/impl/sync/SyncDocument.js.map +1 -0
- package/lib/twilio/impl/sync/SyncDocumentTransaction.js +2 -31
- package/lib/twilio/impl/sync/SyncDocumentTransaction.js.map +1 -0
- package/lib/twilio/impl/sync/SyncList.js +2 -52
- package/lib/twilio/impl/sync/SyncList.js.map +1 -0
- package/lib/twilio/impl/sync/SyncListItem.js +2 -22
- package/lib/twilio/impl/sync/SyncListItem.js.map +1 -0
- package/lib/twilio/impl/sync/SyncListTransaction.js +2 -31
- package/lib/twilio/impl/sync/SyncListTransaction.js.map +1 -0
- package/lib/twilio/impl/sync/SyncMap.js +2 -139
- package/lib/twilio/impl/sync/SyncMap.js.map +1 -0
- package/lib/twilio/impl/sync/SyncMapItem.js +2 -7
- package/lib/twilio/impl/sync/SyncMapItem.js.map +1 -0
- package/lib/twilio/impl/sync/SyncMapTransaction.js +2 -38
- package/lib/twilio/impl/sync/SyncMapTransaction.js.map +1 -0
- package/lib/twilio/impl/sync/SyncOpenRequest.js +2 -24
- package/lib/twilio/impl/sync/SyncOpenRequest.js.map +1 -0
- package/lib/twilio/impl/sync/SyncRequest.js +2 -21
- package/lib/twilio/impl/sync/SyncRequest.js.map +1 -0
- package/lib/twilio/impl/sync/SyncResource.js +2 -97
- package/lib/twilio/impl/sync/SyncResource.js.map +1 -0
- package/lib/twilio/impl/sync/SyncServiceFactory.js +2 -117
- package/lib/twilio/impl/sync/SyncServiceFactory.js.map +1 -0
- package/lib/twilio/interface/IDirection.js +2 -2
- package/lib/twilio/interface/IDirection.js.map +1 -0
- package/lib/twilio/interface/ILink.js +2 -2
- package/lib/twilio/interface/ILink.js.map +1 -0
- package/lib/twilio/interface/IServiceDBOpenRequest.js +2 -2
- package/lib/twilio/interface/IServiceDBOpenRequest.js.map +1 -0
- package/lib/twilio/interface/IServiceObjectStore.js +2 -2
- package/lib/twilio/interface/IServiceObjectStore.js.map +1 -0
- package/lib/twilio/interface/IServiceObjectStoreParameters.js +2 -2
- package/lib/twilio/interface/IServiceObjectStoreParameters.js.map +1 -0
- package/lib/twilio/interface/IServiceRequest.js +2 -2
- package/lib/twilio/interface/IServiceRequest.js.map +1 -0
- package/lib/twilio/interface/IServiceResource.js +2 -2
- package/lib/twilio/interface/IServiceResource.js.map +1 -0
- package/lib/twilio/interface/IServiceTransation.js +2 -2
- package/lib/twilio/interface/IServiceTransation.js.map +1 -0
- package/lib/twilio/interface/ISubResourceUri.js +2 -2
- package/lib/twilio/interface/ISubResourceUri.js.map +1 -0
- package/lib/twilio/interface/ISyncItemData.js +2 -1
- package/lib/twilio/interface/ISyncItemData.js.map +1 -0
- package/lib/twilio/interface/ISyncObjectStoreParameters.js +2 -1
- package/lib/twilio/interface/ISyncObjectStoreParameters.js.map +1 -0
- package/lib/twilio/interface/ISyncTransactionOptions.js +2 -2
- package/lib/twilio/interface/ISyncTransactionOptions.js.map +1 -0
- package/package.json +10 -2
|
@@ -1,408 +1,2 @@
|
|
|
1
|
-
"
|
|
2
|
-
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.HoopBusinessHoursControllerAConnect = void 0;
|
|
16
|
-
const moment_timezone_1 = __importDefault(require("moment-timezone"));
|
|
17
|
-
const HoopProfilesListController_1 = require("./HoopProfilesListController");
|
|
18
|
-
const HoopOverrideBranchesController_1 = require("./HoopOverrideBranchesController");
|
|
19
|
-
const HoopOperationsController_1 = require("./HoopOperationsController");
|
|
20
|
-
const HoopBusinessHoursModel_1 = require("../../models/impl/hoop/HoopBusinessHoursModel");
|
|
21
|
-
const HoopDescriptionModel_1 = require("../../models/impl/hoop/HoopDescriptionModel");
|
|
22
|
-
const HoopWeeklyTimingModel_1 = require("../../models/impl/hoop/HoopWeeklyTimingModel");
|
|
23
|
-
const Hoop_type_1 = require("../../models/types/Hoop.type");
|
|
24
|
-
class HoopBusinessHoursControllerAConnect {
|
|
25
|
-
constructor(dbFactory) {
|
|
26
|
-
this._dbFactory = dbFactory;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Method to get business hours based on the profile ID.
|
|
30
|
-
* @param query - Object containing the profileName and instanceId
|
|
31
|
-
* @returns - Business hours status
|
|
32
|
-
*/
|
|
33
|
-
getBusinessHours(query) {
|
|
34
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
try {
|
|
36
|
-
// Initialize HoopBusinessHoursModel
|
|
37
|
-
const scheduleInfo = new HoopBusinessHoursModel_1.HoopBusinessHoursModel(true, // isOpen
|
|
38
|
-
false, // isHoliday
|
|
39
|
-
false, // isPartialDay
|
|
40
|
-
true, // isRegularDay
|
|
41
|
-
new HoopDescriptionModel_1.HoopDescriptionModel("", "", ""), // Description
|
|
42
|
-
{}, // Override branches
|
|
43
|
-
[], // Weekly timing
|
|
44
|
-
"", // Weekly timing string
|
|
45
|
-
new Date(Date.now()), // reopen timing string
|
|
46
|
-
"EST" // Time zone
|
|
47
|
-
);
|
|
48
|
-
// Initialize necessary controllers for fetching data
|
|
49
|
-
const profilesListController = new HoopProfilesListController_1.HoopProfilesListControllerAConnect(this._dbFactory);
|
|
50
|
-
const profileInfo = yield profilesListController.get({
|
|
51
|
-
instanceId: query.instanceId,
|
|
52
|
-
});
|
|
53
|
-
const profile = profileInfo.find((p) => p.profileName === query.profileName);
|
|
54
|
-
if (!profile) {
|
|
55
|
-
throw new Error(`Profile with name '${query.profileName}' not found.`);
|
|
56
|
-
}
|
|
57
|
-
const operationsController = new HoopOperationsController_1.HoopOperationsControllerAConnect(this._dbFactory);
|
|
58
|
-
const operationHours = yield operationsController.getAll({
|
|
59
|
-
instanceId: query.instanceId,
|
|
60
|
-
hoursOfOperationId: profile.profileId,
|
|
61
|
-
itemsPerPage: 0,
|
|
62
|
-
pageNo: 0,
|
|
63
|
-
});
|
|
64
|
-
const overridesController = new HoopOverrideBranchesController_1.HoopOverrideBranchesControllerAConnect(this._dbFactory);
|
|
65
|
-
const overrides = yield overridesController.getAll({
|
|
66
|
-
instanceId: query.instanceId,
|
|
67
|
-
hoursOfOperationId: profile.profileId,
|
|
68
|
-
itemsPerPage: 0,
|
|
69
|
-
pageNo: 0,
|
|
70
|
-
});
|
|
71
|
-
const timeZone = operationHours.length > 0 ? operationHours[0].timeZone : "EST";
|
|
72
|
-
const currentDay = new Date()
|
|
73
|
-
.toLocaleString("en-US", { timeZone: timeZone, weekday: "long" })
|
|
74
|
-
.toUpperCase();
|
|
75
|
-
const currentDate = moment_timezone_1.default.tz(scheduleInfo.timeZone).format("YYYY-MM-DD");
|
|
76
|
-
const weeklyTimings = operationHours.map((item) => __awaiter(this, void 0, void 0, function* () {
|
|
77
|
-
const weeklyTiming = new HoopWeeklyTimingModel_1.HoopWeeklyTimingModel(item.day, item.day, yield this.formatTime(item.beginTime), yield this.formatTime(item.endTime), item.day);
|
|
78
|
-
// Validate weeklyTiming
|
|
79
|
-
if (weeklyTiming.validationMessages.length > 0) {
|
|
80
|
-
throw weeklyTiming.validationMessages; // Throw error if data validation fails
|
|
81
|
-
}
|
|
82
|
-
// Serialize weeklyTiming
|
|
83
|
-
return weeklyTiming.serialize;
|
|
84
|
-
}));
|
|
85
|
-
const resolvedWeeklyTimings = yield Promise.all(weeklyTimings);
|
|
86
|
-
const groupedTimings = yield this.groupWeeklyTimings(resolvedWeeklyTimings);
|
|
87
|
-
scheduleInfo.weeklyTiming = groupedTimings;
|
|
88
|
-
yield this.evaluateTodayBusinessHours(currentDay, operationHours, scheduleInfo, currentDate);
|
|
89
|
-
const HoursOfOperationOverrideList = overrides.result.HoursOfOperationOverrideList;
|
|
90
|
-
// Check overrides for current
|
|
91
|
-
for (const overridesItem of HoursOfOperationOverrideList) {
|
|
92
|
-
if ((0, moment_timezone_1.default)(currentDate).isBetween(overridesItem.EffectiveFrom, overridesItem.EffectiveTill, null, "[]")) {
|
|
93
|
-
scheduleInfo.isOpen = false;
|
|
94
|
-
scheduleInfo.isRegularDay = false;
|
|
95
|
-
const HoopDescription = new HoopDescriptionModel_1.HoopDescriptionModel(overridesItem.Name, "00:00:00", "00:00:00");
|
|
96
|
-
if (HoopDescription.validationMessages.length > 0) {
|
|
97
|
-
throw HoopDescription.validationMessages; // Throw error if data validation fails
|
|
98
|
-
}
|
|
99
|
-
scheduleInfo.description =
|
|
100
|
-
HoopDescription.serialize;
|
|
101
|
-
if (overridesItem.Config.length > 0) {
|
|
102
|
-
overridesItem["LastModifiedTime"] =
|
|
103
|
-
overrides.result.LastModifiedTime;
|
|
104
|
-
const OverrideOperationHours = yield operationsController.mapOperations(overridesItem.Config, scheduleInfo.timeZone, overridesItem);
|
|
105
|
-
yield this.evaluateTodayBusinessHours(currentDay, OverrideOperationHours, scheduleInfo, currentDate);
|
|
106
|
-
scheduleInfo.isRegularDay = false;
|
|
107
|
-
}
|
|
108
|
-
scheduleInfo.description.hoopDesc = overridesItem.Name;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
if (scheduleInfo.validationMessages.length > 0) {
|
|
112
|
-
throw scheduleInfo.validationMessages;
|
|
113
|
-
}
|
|
114
|
-
scheduleInfo.weeklyTimingString = yield this.generateBusinessHoursString(scheduleInfo.weeklyTiming, scheduleInfo.timeZone);
|
|
115
|
-
if (scheduleInfo.isOpen === false) {
|
|
116
|
-
const reOpenTiming = yield this.findNextReopeningDate(moment_timezone_1.default.tz(scheduleInfo.timeZone), scheduleInfo.timeZone, resolvedWeeklyTimings, HoursOfOperationOverrideList);
|
|
117
|
-
scheduleInfo.reopenTiming = reOpenTiming.toDate();
|
|
118
|
-
}
|
|
119
|
-
const businessHours = scheduleInfo.serialize;
|
|
120
|
-
return businessHours;
|
|
121
|
-
}
|
|
122
|
-
catch (error) {
|
|
123
|
-
// Log and return the error if an exception occurs
|
|
124
|
-
return error;
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
formatTime(time) {
|
|
129
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
130
|
-
return time.toISOString().slice(11, 19); // Extracts the time portion (HH:MM:SS)
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
evaluateTodayBusinessHours(currentDay, operationHours, scheduleInfo, currentDate) {
|
|
134
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
-
const todayEntries = operationHours.filter((hour) => hour.day === currentDay);
|
|
136
|
-
if (todayEntries.length > 0) {
|
|
137
|
-
scheduleInfo.timeZone = todayEntries[0].timeZone;
|
|
138
|
-
let isWithinWorkingHours = false;
|
|
139
|
-
var isBeforeBeginTime = true;
|
|
140
|
-
for (const entry of todayEntries) {
|
|
141
|
-
const beginTime = moment_timezone_1.default.utc(entry.beginTime.toISOString()).format();
|
|
142
|
-
const endTime = moment_timezone_1.default.utc(entry.endTime.toISOString()).format();
|
|
143
|
-
const currentTime = (0, moment_timezone_1.default)().tz(entry.timeZone).format();
|
|
144
|
-
var isBeforeBeginTime = currentTime < beginTime ? true : currentTime > beginTime;
|
|
145
|
-
const isCurrentTimeWithinRange = currentTime >= beginTime && currentTime <= endTime;
|
|
146
|
-
isWithinWorkingHours = isWithinWorkingHours || isCurrentTimeWithinRange;
|
|
147
|
-
const description = new HoopDescriptionModel_1.HoopDescriptionModel(isCurrentTimeWithinRange
|
|
148
|
-
? "Normal Business Hours"
|
|
149
|
-
: "Out of Business Hours", yield this.formatTime(entry.beginTime), yield this.formatTime(entry.endTime));
|
|
150
|
-
if (description.validationMessages.length > 0)
|
|
151
|
-
throw description.validationMessages;
|
|
152
|
-
scheduleInfo.description =
|
|
153
|
-
description.serialize;
|
|
154
|
-
if (isCurrentTimeWithinRange)
|
|
155
|
-
break;
|
|
156
|
-
}
|
|
157
|
-
scheduleInfo.isOpen = isWithinWorkingHours;
|
|
158
|
-
scheduleInfo.isRegularDay = true;
|
|
159
|
-
}
|
|
160
|
-
else {
|
|
161
|
-
scheduleInfo.isOpen = false;
|
|
162
|
-
scheduleInfo.isRegularDay = false;
|
|
163
|
-
const description = new HoopDescriptionModel_1.HoopDescriptionModel("Out of Business Hours", "00:00:00", "00:00:00");
|
|
164
|
-
if (description.validationMessages.length > 0)
|
|
165
|
-
throw description.validationMessages;
|
|
166
|
-
scheduleInfo.description = description.serialize;
|
|
167
|
-
}
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
groupWeeklyTimings(weeklyTiming) {
|
|
171
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
172
|
-
const dayOrder = Object.keys(Hoop_type_1.AvailableDay)
|
|
173
|
-
.filter((key) => isNaN(Number(key))) // Filter out numeric keys (if any)
|
|
174
|
-
.map((key) => key.toUpperCase());
|
|
175
|
-
// Sort the input by day order and startTime
|
|
176
|
-
const sortedTiming = [...weeklyTiming].sort((a, b) => {
|
|
177
|
-
const dayComparison = dayOrder.indexOf(a.startDay.toUpperCase()) -
|
|
178
|
-
dayOrder.indexOf(b.startDay.toUpperCase());
|
|
179
|
-
if (dayComparison === 0) {
|
|
180
|
-
// If startDay is the same, sort by startTime
|
|
181
|
-
return a.startTime.localeCompare(b.startTime);
|
|
182
|
-
}
|
|
183
|
-
return dayComparison;
|
|
184
|
-
});
|
|
185
|
-
return sortedTiming.reduce((result, current) => {
|
|
186
|
-
const lastGroup = result[result.length - 1];
|
|
187
|
-
// If there is a last group and it matches the current timing
|
|
188
|
-
if (lastGroup &&
|
|
189
|
-
lastGroup.startTime === current.startTime &&
|
|
190
|
-
lastGroup.endTime === current.endTime &&
|
|
191
|
-
dayOrder.indexOf(current.startDay) ===
|
|
192
|
-
dayOrder.indexOf(lastGroup.endDay) + 1) {
|
|
193
|
-
// Extend the last group's endDay and description
|
|
194
|
-
lastGroup.endDay = current.endDay;
|
|
195
|
-
lastGroup.description = `${lastGroup.startDay}-${lastGroup.endDay}`;
|
|
196
|
-
}
|
|
197
|
-
else {
|
|
198
|
-
// Start a new group
|
|
199
|
-
const HoopWeeklyTiming = new HoopWeeklyTimingModel_1.HoopWeeklyTimingModel(current.startDay, current.endDay, current.startTime, current.endTime, current.startDay);
|
|
200
|
-
if (HoopWeeklyTiming.validationMessages.length > 0) {
|
|
201
|
-
throw HoopWeeklyTiming.validationMessages;
|
|
202
|
-
}
|
|
203
|
-
result.push(HoopWeeklyTiming.serialize);
|
|
204
|
-
}
|
|
205
|
-
return result;
|
|
206
|
-
}, []);
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
generateBusinessHoursString(weeklyTimings, timeZone) {
|
|
210
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
211
|
-
const formatTime = (time) => {
|
|
212
|
-
let [hours, minutes] = time.split(":");
|
|
213
|
-
let period = parseInt(hours) >= 12 ? "PM" : "AM";
|
|
214
|
-
if (parseInt(hours) > 12) {
|
|
215
|
-
hours = (parseInt(hours) - 12).toString().padStart(2, "0");
|
|
216
|
-
}
|
|
217
|
-
else if (parseInt(hours) === 0) {
|
|
218
|
-
hours = "12";
|
|
219
|
-
}
|
|
220
|
-
return `${hours}:${minutes} ${period}`;
|
|
221
|
-
};
|
|
222
|
-
return weeklyTimings
|
|
223
|
-
.map((item) => {
|
|
224
|
-
if (item.startDay === item.endDay) {
|
|
225
|
-
return `${item.startDay} from ${formatTime(item.startTime)} to ${formatTime(item.endTime)} ${timeZone}`;
|
|
226
|
-
}
|
|
227
|
-
else {
|
|
228
|
-
return `${item.startDay} through ${item.endDay} from ${formatTime(item.startTime)} to ${formatTime(item.endTime)} ${timeZone}`;
|
|
229
|
-
}
|
|
230
|
-
})
|
|
231
|
-
.join(", ");
|
|
232
|
-
});
|
|
233
|
-
}
|
|
234
|
-
findNextReopeningDate(currentDate, timeZone, weeklySchedule, holidayOverrides) {
|
|
235
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
236
|
-
// Check if the weekly schedule is empty
|
|
237
|
-
if (!weeklySchedule || weeklySchedule.length === 0) {
|
|
238
|
-
throw new Error("Weekly schedule is empty. Cannot determine the next reopening date.");
|
|
239
|
-
}
|
|
240
|
-
let dayOffset = 0;
|
|
241
|
-
let potentialReopeningDate = currentDate;
|
|
242
|
-
let overrideReopeningDate = "";
|
|
243
|
-
const currentDayName = currentDate.format("dddd").toUpperCase();
|
|
244
|
-
let targetDayName = potentialReopeningDate.format("dddd").toUpperCase();
|
|
245
|
-
while (true) {
|
|
246
|
-
const matchingWeeklySchedule = weeklySchedule.find((item) => item.startDay === targetDayName);
|
|
247
|
-
if (matchingWeeklySchedule) {
|
|
248
|
-
const holidayCheckResult = yield this.checkHolidayOverride(potentialReopeningDate, holidayOverrides, timeZone);
|
|
249
|
-
if (holidayCheckResult) {
|
|
250
|
-
if (holidayCheckResult.nextOpeningDay &&
|
|
251
|
-
holidayCheckResult.hasReopeningTime === true) {
|
|
252
|
-
overrideReopeningDate = holidayCheckResult.nextOpeningDay;
|
|
253
|
-
break;
|
|
254
|
-
}
|
|
255
|
-
else if (holidayCheckResult.nextOpeningDay &&
|
|
256
|
-
holidayCheckResult.hasReopeningTime === false) {
|
|
257
|
-
potentialReopeningDate = holidayCheckResult.nextOpeningDay;
|
|
258
|
-
}
|
|
259
|
-
else {
|
|
260
|
-
potentialReopeningDate = moment_timezone_1.default
|
|
261
|
-
.tz(potentialReopeningDate, timeZone)
|
|
262
|
-
.add(1, "days");
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
else {
|
|
266
|
-
const fetchCurrentDays = weeklySchedule.filter((item) => item.startDay ===
|
|
267
|
-
potentialReopeningDate.format("dddd").toUpperCase());
|
|
268
|
-
const checkTimingForToday = yield this.checkTimingsForToday(potentialReopeningDate, fetchCurrentDays, timeZone);
|
|
269
|
-
if (checkTimingForToday) {
|
|
270
|
-
overrideReopeningDate = checkTimingForToday;
|
|
271
|
-
break;
|
|
272
|
-
}
|
|
273
|
-
else {
|
|
274
|
-
potentialReopeningDate = moment_timezone_1.default
|
|
275
|
-
.tz(potentialReopeningDate, timeZone)
|
|
276
|
-
.add(1, "days");
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
else {
|
|
281
|
-
potentialReopeningDate = moment_timezone_1.default
|
|
282
|
-
.tz(currentDate, timeZone)
|
|
283
|
-
.add(dayOffset, "days");
|
|
284
|
-
targetDayName = potentialReopeningDate.format("dddd").toUpperCase(); // Update day in uppercase
|
|
285
|
-
const holidayCheckResult = yield this.checkHolidayOverride(potentialReopeningDate, holidayOverrides, timeZone);
|
|
286
|
-
if (holidayCheckResult) {
|
|
287
|
-
if (holidayCheckResult.nextOpeningDay &&
|
|
288
|
-
holidayCheckResult.hasReopeningTime === true) {
|
|
289
|
-
overrideReopeningDate = holidayCheckResult.nextOpeningDay;
|
|
290
|
-
break;
|
|
291
|
-
}
|
|
292
|
-
else if (holidayCheckResult.nextOpeningDay &&
|
|
293
|
-
holidayCheckResult.hasReopeningTime === false) {
|
|
294
|
-
const weeklyScheduleMatch = weeklySchedule.find((item) => item.startDay === targetDayName);
|
|
295
|
-
potentialReopeningDate = holidayCheckResult.nextOpeningDay;
|
|
296
|
-
dayOffset += 1;
|
|
297
|
-
}
|
|
298
|
-
else {
|
|
299
|
-
dayOffset += 1;
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
else {
|
|
303
|
-
dayOffset += 1;
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
if (!overrideReopeningDate) {
|
|
308
|
-
const matchedSchedule = weeklySchedule.find((i) => i.startDay === potentialReopeningDate.format("dddd").toUpperCase());
|
|
309
|
-
const reopeningDateTime = moment_timezone_1.default.tz(`${potentialReopeningDate.format("YYYY-MM-DD")}T${matchedSchedule.startTime}`, timeZone);
|
|
310
|
-
overrideReopeningDate = reopeningDateTime;
|
|
311
|
-
}
|
|
312
|
-
return overrideReopeningDate;
|
|
313
|
-
});
|
|
314
|
-
}
|
|
315
|
-
checkHolidayOverride(potentialDate, holidayOverrides, timeZone) {
|
|
316
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
317
|
-
const potentialDayName = potentialDate.format("dddd").toUpperCase();
|
|
318
|
-
const potentialDateString = potentialDate.format("YYYY-MM-DD");
|
|
319
|
-
for (const overrideKey in holidayOverrides) {
|
|
320
|
-
const overrideStart = holidayOverrides[overrideKey].EffectiveFrom;
|
|
321
|
-
const overrideEnd = holidayOverrides[overrideKey].EffectiveTill;
|
|
322
|
-
if (potentialDateString >= overrideStart &&
|
|
323
|
-
potentialDateString <= overrideEnd) {
|
|
324
|
-
if (holidayOverrides[overrideKey].Config.length > 0) {
|
|
325
|
-
const filteredOverrides = holidayOverrides[overrideKey].Config.filter((item) => item.Day === potentialDayName);
|
|
326
|
-
let nextOpeningDay = "";
|
|
327
|
-
try {
|
|
328
|
-
const openingTime = yield this.determineOpeningTime(potentialDate, filteredOverrides, timeZone);
|
|
329
|
-
nextOpeningDay = openingTime ? openingTime : "";
|
|
330
|
-
}
|
|
331
|
-
catch (error) {
|
|
332
|
-
console.error("Error in determineOpeningTime:", error);
|
|
333
|
-
return undefined; // Return undefined if determineOpeningTime fails
|
|
334
|
-
}
|
|
335
|
-
return { nextOpeningDay, hasReopeningTime: true };
|
|
336
|
-
}
|
|
337
|
-
else {
|
|
338
|
-
const nextAvailableDate = moment_timezone_1.default
|
|
339
|
-
.tz(overrideEnd, timeZone)
|
|
340
|
-
.add(1, "days");
|
|
341
|
-
return { nextOpeningDay: nextAvailableDate, hasReopeningTime: false };
|
|
342
|
-
}
|
|
343
|
-
}
|
|
344
|
-
}
|
|
345
|
-
});
|
|
346
|
-
}
|
|
347
|
-
determineOpeningTime(reopeningDate, dailySchedule, timeZone) {
|
|
348
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
349
|
-
try {
|
|
350
|
-
// Sort the daily schedule by StartTime
|
|
351
|
-
const sortedSchedule = [...dailySchedule].sort((a, b) => {
|
|
352
|
-
const aTimeInMinutes = a.StartTime.Hours * 60 + a.StartTime.Minutes;
|
|
353
|
-
const bTimeInMinutes = b.StartTime.Hours * 60 + b.StartTime.Minutes;
|
|
354
|
-
return aTimeInMinutes - bTimeInMinutes;
|
|
355
|
-
});
|
|
356
|
-
if (sortedSchedule.length === 0) {
|
|
357
|
-
throw Error;
|
|
358
|
-
}
|
|
359
|
-
let potentialOpeningTimes = [];
|
|
360
|
-
sortedSchedule.forEach((scheduleItem) => {
|
|
361
|
-
const currentDateString = moment_timezone_1.default.tz(timeZone).format("YYYY-MM-DD");
|
|
362
|
-
const startTime = (0, moment_timezone_1.default)(reopeningDate).set({
|
|
363
|
-
hour: scheduleItem.StartTime.Hours,
|
|
364
|
-
minute: scheduleItem.StartTime.Minutes,
|
|
365
|
-
second: 0,
|
|
366
|
-
});
|
|
367
|
-
const endTime = (0, moment_timezone_1.default)(reopeningDate).set({
|
|
368
|
-
hour: scheduleItem.EndTime.Hours,
|
|
369
|
-
minute: scheduleItem.EndTime.Minutes,
|
|
370
|
-
second: 0,
|
|
371
|
-
});
|
|
372
|
-
if (currentDateString !== startTime.format("YYYY-MM-DD")) {
|
|
373
|
-
potentialOpeningTimes.push(startTime);
|
|
374
|
-
}
|
|
375
|
-
if (reopeningDate.isBefore(startTime) &&
|
|
376
|
-
reopeningDate.isBefore(endTime)) {
|
|
377
|
-
potentialOpeningTimes.push(startTime);
|
|
378
|
-
}
|
|
379
|
-
});
|
|
380
|
-
return potentialOpeningTimes[0];
|
|
381
|
-
}
|
|
382
|
-
catch (error) {
|
|
383
|
-
console.error("Error in determineOpeningTime:", error);
|
|
384
|
-
throw error; // Rethrow the error to be handled in checkHolidayOverride
|
|
385
|
-
}
|
|
386
|
-
});
|
|
387
|
-
}
|
|
388
|
-
checkTimingsForToday(reopeningDate, fetchCurrentDays, timeZone) {
|
|
389
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
390
|
-
const sortedSchedule = fetchCurrentDays.sort((a, b) => a.startTime.localeCompare(b.startTime));
|
|
391
|
-
let potentialOpeningTimes = [];
|
|
392
|
-
sortedSchedule.forEach((item) => {
|
|
393
|
-
const currentDateString = moment_timezone_1.default.tz(timeZone).format("YYYY-MM-DD");
|
|
394
|
-
const startTime = moment_timezone_1.default.tz(`${reopeningDate.format("YYYY-MM-DD")} ${item.startTime}`, "YYYY-MM-DD HH:mm:ss", timeZone);
|
|
395
|
-
const endTime = moment_timezone_1.default.tz(`${reopeningDate.format("YYYY-MM-DD")} ${item.endTime}`, "YYYY-MM-DD HH:mm:ss", timeZone);
|
|
396
|
-
if (currentDateString !== startTime.format("YYYY-MM-DD")) {
|
|
397
|
-
potentialOpeningTimes.push(startTime);
|
|
398
|
-
}
|
|
399
|
-
if (reopeningDate.isBefore(startTime) &&
|
|
400
|
-
reopeningDate.isBefore(endTime)) {
|
|
401
|
-
potentialOpeningTimes.push(startTime);
|
|
402
|
-
}
|
|
403
|
-
});
|
|
404
|
-
return potentialOpeningTimes[0];
|
|
405
|
-
});
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
exports.HoopBusinessHoursControllerAConnect = HoopBusinessHoursControllerAConnect;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.HoopBusinessHoursControllerAConnect=void 0;const e=require("tslib"),t=e.__importDefault(require("moment-timezone")),i=require("./HoopProfilesListController"),o=require("./HoopOverrideBranchesController"),n=require("./HoopOperationsController"),r=require("../../models/impl/hoop/HoopBusinessHoursModel"),s=require("../../models/impl/hoop/HoopDescriptionModel"),a=require("../../models/impl/hoop/HoopWeeklyTimingModel"),d=require("../../models/types/Hoop.type");exports.HoopBusinessHoursControllerAConnect=class{constructor(e){this._dbFactory=e}getBusinessHours(d){return e.__awaiter(this,void 0,void 0,(function*(){try{const l=new r.HoopBusinessHoursModel(!0,!1,!1,!0,new s.HoopDescriptionModel("","",""),{},[],"",new Date(Date.now()),"EST"),m=new i.HoopProfilesListControllerAConnect(this._dbFactory),f=(yield m.get({instanceId:d.instanceId})).find((e=>e.profileName===d.profileName));if(!f)throw new Error(`Profile with name '${d.profileName}' not found.`);const u=new n.HoopOperationsControllerAConnect(this._dbFactory),p=yield u.getAll({instanceId:d.instanceId,hoursOfOperationId:f.profileId,itemsPerPage:0,pageNo:0}),c=new o.HoopOverrideBranchesControllerAConnect(this._dbFactory),g=yield c.getAll({instanceId:d.instanceId,hoursOfOperationId:f.profileId,itemsPerPage:0,pageNo:0}),y=p.length>0?p[0].timeZone:"EST",h=(new Date).toLocaleString("en-US",{timeZone:y,weekday:"long"}).toUpperCase(),D=t.default.tz(l.timeZone).format("YYYY-MM-DD"),T=p.map((t=>e.__awaiter(this,void 0,void 0,(function*(){const e=new a.HoopWeeklyTimingModel(t.day,t.day,yield this.formatTime(t.beginTime),yield this.formatTime(t.endTime),t.day);if(e.validationMessages.length>0)throw e.validationMessages;return e.serialize})))),M=yield Promise.all(T),v=yield this.groupWeeklyTimings(M);l.weeklyTiming=v,yield this.evaluateTodayBusinessHours(h,p,l,D);const H=g.result.HoursOfOperationOverrideList;for(const e of H)if((0,t.default)(D).isBetween(e.EffectiveFrom,e.EffectiveTill,null,"[]")){l.isOpen=!1,l.isRegularDay=!1;const t=new s.HoopDescriptionModel(e.Name,"00:00:00","00:00:00");if(t.validationMessages.length>0)throw t.validationMessages;if(l.description=t.serialize,e.Config.length>0){e.LastModifiedTime=g.result.LastModifiedTime;const t=yield u.mapOperations(e.Config,l.timeZone,e);yield this.evaluateTodayBusinessHours(h,t,l,D),l.isRegularDay=!1}l.description.hoopDesc=e.Name}if(l.validationMessages.length>0)throw l.validationMessages;if(l.weeklyTimingString=yield this.generateBusinessHoursString(l.weeklyTiming,l.timeZone),!1===l.isOpen){const e=yield this.findNextReopeningDate(t.default.tz(l.timeZone),l.timeZone,M,H);l.reopenTiming=e.toDate()}return l.serialize}catch(e){return e}}))}formatTime(t){return e.__awaiter(this,void 0,void 0,(function*(){return t.toISOString().slice(11,19)}))}evaluateTodayBusinessHours(i,o,n,r){return e.__awaiter(this,void 0,void 0,(function*(){const e=o.filter((e=>e.day===i));if(e.length>0){n.timeZone=e[0].timeZone;let i=!1;for(const o of e){const e=t.default.utc(o.beginTime.toISOString()).format(),r=t.default.utc(o.endTime.toISOString()).format(),a=(0,t.default)().tz(o.timeZone).format(),d=a>=e&&a<=r;i=i||d;const l=new s.HoopDescriptionModel(d?"Normal Business Hours":"Out of Business Hours",yield this.formatTime(o.beginTime),yield this.formatTime(o.endTime));if(l.validationMessages.length>0)throw l.validationMessages;if(n.description=l.serialize,d)break}n.isOpen=i,n.isRegularDay=!0}else{n.isOpen=!1,n.isRegularDay=!1;const e=new s.HoopDescriptionModel("Out of Business Hours","00:00:00","00:00:00");if(e.validationMessages.length>0)throw e.validationMessages;n.description=e.serialize}}))}groupWeeklyTimings(t){return e.__awaiter(this,void 0,void 0,(function*(){const e=Object.keys(d.AvailableDay).filter((e=>isNaN(Number(e)))).map((e=>e.toUpperCase()));return[...t].sort(((t,i)=>{const o=e.indexOf(t.startDay.toUpperCase())-e.indexOf(i.startDay.toUpperCase());return 0===o?t.startTime.localeCompare(i.startTime):o})).reduce(((t,i)=>{const o=t[t.length-1];if(o&&o.startTime===i.startTime&&o.endTime===i.endTime&&e.indexOf(i.startDay)===e.indexOf(o.endDay)+1)o.endDay=i.endDay,o.description=`${o.startDay}-${o.endDay}`;else{const e=new a.HoopWeeklyTimingModel(i.startDay,i.endDay,i.startTime,i.endTime,i.startDay);if(e.validationMessages.length>0)throw e.validationMessages;t.push(e.serialize)}return t}),[])}))}generateBusinessHoursString(t,i){return e.__awaiter(this,void 0,void 0,(function*(){const e=e=>{let[t,i]=e.split(":"),o=parseInt(t)>=12?"PM":"AM";return parseInt(t)>12?t=(parseInt(t)-12).toString().padStart(2,"0"):0===parseInt(t)&&(t="12"),`${t}:${i} ${o}`};return t.map((t=>t.startDay===t.endDay?`${t.startDay} from ${e(t.startTime)} to ${e(t.endTime)} ${i}`:`${t.startDay} through ${t.endDay} from ${e(t.startTime)} to ${e(t.endTime)} ${i}`)).join(", ")}))}findNextReopeningDate(i,o,n,r){return e.__awaiter(this,void 0,void 0,(function*(){if(!n||0===n.length)throw new Error("Weekly schedule is empty. Cannot determine the next reopening date.");let e=0,s=i,a="";i.format("dddd").toUpperCase();let d=s.format("dddd").toUpperCase();for(;;){if(n.find((e=>e.startDay===d))){const e=yield this.checkHolidayOverride(s,r,o);if(e){if(e.nextOpeningDay&&!0===e.hasReopeningTime){a=e.nextOpeningDay;break}s=e.nextOpeningDay&&!1===e.hasReopeningTime?e.nextOpeningDay:t.default.tz(s,o).add(1,"days")}else{const e=n.filter((e=>e.startDay===s.format("dddd").toUpperCase())),i=yield this.checkTimingsForToday(s,e,o);if(i){a=i;break}s=t.default.tz(s,o).add(1,"days")}}else{s=t.default.tz(i,o).add(e,"days"),d=s.format("dddd").toUpperCase();const l=yield this.checkHolidayOverride(s,r,o);if(l){if(l.nextOpeningDay&&!0===l.hasReopeningTime){a=l.nextOpeningDay;break}l.nextOpeningDay&&!1===l.hasReopeningTime?(n.find((e=>e.startDay===d)),s=l.nextOpeningDay,e+=1):e+=1}else e+=1}}if(!a){const e=n.find((e=>e.startDay===s.format("dddd").toUpperCase()));a=t.default.tz(`${s.format("YYYY-MM-DD")}T${e.startTime}`,o)}return a}))}checkHolidayOverride(i,o,n){return e.__awaiter(this,void 0,void 0,(function*(){const e=i.format("dddd").toUpperCase(),r=i.format("YYYY-MM-DD");for(const s in o){const a=o[s].EffectiveFrom,d=o[s].EffectiveTill;if(r>=a&&r<=d){if(o[s].Config.length>0){const t=o[s].Config.filter((t=>t.Day===e));let r="";try{const e=yield this.determineOpeningTime(i,t,n);r=e||""}catch(e){return void console.error("Error in determineOpeningTime:",e)}return{nextOpeningDay:r,hasReopeningTime:!0}}return{nextOpeningDay:t.default.tz(d,n).add(1,"days"),hasReopeningTime:!1}}}}))}determineOpeningTime(i,o,n){return e.__awaiter(this,void 0,void 0,(function*(){try{const e=[...o].sort(((e,t)=>60*e.StartTime.Hours+e.StartTime.Minutes-(60*t.StartTime.Hours+t.StartTime.Minutes)));if(0===e.length)throw Error;let r=[];return e.forEach((e=>{const o=t.default.tz(n).format("YYYY-MM-DD"),s=(0,t.default)(i).set({hour:e.StartTime.Hours,minute:e.StartTime.Minutes,second:0}),a=(0,t.default)(i).set({hour:e.EndTime.Hours,minute:e.EndTime.Minutes,second:0});o!==s.format("YYYY-MM-DD")&&r.push(s),i.isBefore(s)&&i.isBefore(a)&&r.push(s)})),r[0]}catch(e){throw console.error("Error in determineOpeningTime:",e),e}}))}checkTimingsForToday(i,o,n){return e.__awaiter(this,void 0,void 0,(function*(){const e=o.sort(((e,t)=>e.startTime.localeCompare(t.startTime)));let r=[];return e.forEach((e=>{const o=t.default.tz(n).format("YYYY-MM-DD"),s=t.default.tz(`${i.format("YYYY-MM-DD")} ${e.startTime}`,"YYYY-MM-DD HH:mm:ss",n),a=t.default.tz(`${i.format("YYYY-MM-DD")} ${e.endTime}`,"YYYY-MM-DD HH:mm:ss",n);o!==s.format("YYYY-MM-DD")&&r.push(s),i.isBefore(s)&&i.isBefore(a)&&r.push(s)})),r[0]}))}};
|
|
2
|
+
//# sourceMappingURL=HoopBuisnessHours.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HoopBuisnessHours.js","sources":["../../../../controller/aws/HoopBuisnessHours.ts"],"sourcesContent":[null],"names":["moment_timezone_1","tslib_1","__importDefault","require","HoopProfilesListController_1","HoopOverrideBranchesController_1","HoopOperationsController_1","HoopBusinessHoursModel_1","HoopDescriptionModel_1","HoopWeeklyTimingModel_1","Hoop_type_1","exports","HoopBusinessHoursControllerAConnect","constructor","dbFactory","this","_dbFactory","getBusinessHours","query","scheduleInfo","HoopDescriptionModel","Date","now","profilesListController","HoopProfilesListControllerAConnect","profile","get","instanceId","find","p","profileName","Error","operationsController","HoopOperationsControllerAConnect","operationHours","getAll","hoursOfOperationId","profileId","itemsPerPage","pageNo","overridesController","HoopOverrideBranchesControllerAConnect","overrides","timeZone","length","currentDay","toLocaleString","weekday","toUpperCase","currentDate","default","tz","format","weeklyTimings","map","item","__awaiter","weeklyTiming","HoopWeeklyTimingModel","day","formatTime","beginTime","endTime","validationMessages","serialize","resolvedWeeklyTimings","Promise","all","groupedTimings","groupWeeklyTimings","evaluateTodayBusinessHours","HoursOfOperationOverrideList","result","overridesItem","isBetween","EffectiveFrom","EffectiveTill","isOpen","isRegularDay","HoopDescription","Name","description","Config","LastModifiedTime","OverrideOperationHours","mapOperations","hoopDesc","weeklyTimingString","generateBusinessHoursString","reOpenTiming","findNextReopeningDate","reopenTiming","toDate","error","time","toISOString","slice","todayEntries","filter","hour","isWithinWorkingHours","entry","utc","currentTime","isCurrentTimeWithinRange","dayOrder","Object","keys","key","isNaN","Number","sort","a","b","dayComparison","indexOf","startDay","startTime","localeCompare","reduce","current","lastGroup","endDay","HoopWeeklyTiming","push","hours","minutes","split","period","parseInt","toString","padStart","join","weeklySchedule","holidayOverrides","dayOffset","potentialReopeningDate","overrideReopeningDate","targetDayName","holidayCheckResult","checkHolidayOverride","nextOpeningDay","hasReopeningTime","add","fetchCurrentDays","checkTimingForToday","checkTimingsForToday","matchedSchedule","i","potentialDate","potentialDayName","potentialDateString","overrideKey","overrideStart","overrideEnd","filteredOverrides","Day","openingTime","determineOpeningTime","console","reopeningDate","dailySchedule","sortedSchedule","StartTime","Hours","Minutes","potentialOpeningTimes","forEach","scheduleItem","currentDateString","set","minute","second","EndTime","isBefore"],"mappings":"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"}
|
|
@@ -1,86 +1,2 @@
|
|
|
1
|
-
"
|
|
2
|
-
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.HoopOperationsControllerAConnect = void 0;
|
|
16
|
-
const DatabaseConfig_1 = require("../../config/DatabaseConfig");
|
|
17
|
-
const uuid_1 = require("uuid");
|
|
18
|
-
const moment_timezone_1 = __importDefault(require("moment-timezone"));
|
|
19
|
-
// import { operationsModel } from "../../models/Hoop.model";
|
|
20
|
-
const HoopOperationsImplModel_1 = require("../../models/impl/hoop/HoopOperationsImplModel");
|
|
21
|
-
class HoopOperationsControllerAConnect {
|
|
22
|
-
// Constructor to initialize HoopServiceFactory
|
|
23
|
-
constructor(dbFactory) {
|
|
24
|
-
this._dbFactory = dbFactory;
|
|
25
|
-
}
|
|
26
|
-
// Method to get all data with query parameters
|
|
27
|
-
getAll(query) {
|
|
28
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
try {
|
|
30
|
-
// Open database connection
|
|
31
|
-
const databaseConnection = yield this._dbFactory.asyncOpen(DatabaseConfig_1.databaseConfig.databaseName, DatabaseConfig_1.databaseConfig.version);
|
|
32
|
-
const database = databaseConnection.result;
|
|
33
|
-
// Start database transaction
|
|
34
|
-
const dbTransaction = database.transaction(DatabaseConfig_1.databaseConfig.tables.hoopOverrideBranches, "readwrite");
|
|
35
|
-
// Access object store
|
|
36
|
-
let table = dbTransaction.objectStore(DatabaseConfig_1.databaseConfig.tables.hoopOverrideBranches);
|
|
37
|
-
// Retrieve all data from the object store
|
|
38
|
-
const request = yield table.customGetHoop(query);
|
|
39
|
-
const config = request.Config;
|
|
40
|
-
const timeZone = request.TimeZone || "EST";
|
|
41
|
-
// const hoursOfOperationId = request.HoursOfOperationId
|
|
42
|
-
const result = yield this.mapOperations(config, timeZone, request);
|
|
43
|
-
return result;
|
|
44
|
-
}
|
|
45
|
-
catch (error) {
|
|
46
|
-
return error;
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
dateTimeConversion(timeString, timeZone) {
|
|
51
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
52
|
-
const currentDate = (0, moment_timezone_1.default)().tz(timeZone).format('YYYY-MM-DD'); // Current date in the desired timezone
|
|
53
|
-
const date = new Date(Date.parse(`${currentDate}T${timeString}:00Z`));
|
|
54
|
-
return date;
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
mapOperations(config, timezone, request) {
|
|
58
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
try {
|
|
60
|
-
return Promise.all(config.map((item) => __awaiter(this, void 0, void 0, function* () {
|
|
61
|
-
const { Day, StartTime, EndTime } = item;
|
|
62
|
-
const formattedStartTimeMinutes = String(StartTime.Minutes).padStart(2, '0');
|
|
63
|
-
const formattedEndTimeMinutes = String(EndTime.Minutes).padStart(2, '0');
|
|
64
|
-
const formattedStartTimeHours = String(StartTime.Hours).padStart(2, '0');
|
|
65
|
-
const formattedEndTimeHours = String(EndTime.Hours).padStart(2, '0');
|
|
66
|
-
const startTime = `${formattedStartTimeHours}:${formattedStartTimeMinutes}`;
|
|
67
|
-
const endTime = `${formattedEndTimeHours}:${formattedEndTimeMinutes}`;
|
|
68
|
-
const startDateTime = yield this.dateTimeConversion(startTime, timezone);
|
|
69
|
-
const endDateTime = yield this.dateTimeConversion(endTime, timezone);
|
|
70
|
-
const uuid = (0, uuid_1.v4)();
|
|
71
|
-
const operation = new HoopOperationsImplModel_1.HoopOperationsImplModel(uuid, request.HoursOfOperationId, Day, startDateTime, endDateTime, new Date(request.LastModifiedTime), new Date(request.LastModifiedTime));
|
|
72
|
-
if (operation.validationMessages.length > 0) {
|
|
73
|
-
throw operation.validationMessages;
|
|
74
|
-
}
|
|
75
|
-
const operationData = operation.serialize;
|
|
76
|
-
operationData['timeZone'] = request.TimeZone || timezone;
|
|
77
|
-
return operationData;
|
|
78
|
-
})));
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
return error;
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
exports.HoopOperationsControllerAConnect = HoopOperationsControllerAConnect;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.HoopOperationsControllerAConnect=void 0;const e=require("tslib"),t=require("../../config/DatabaseConfig"),o=require("uuid"),i=e.__importDefault(require("moment-timezone")),r=require("../../models/impl/hoop/HoopOperationsImplModel");exports.HoopOperationsControllerAConnect=class{constructor(e){this._dbFactory=e}getAll(o){return e.__awaiter(this,void 0,void 0,(function*(){try{const e=(yield this._dbFactory.asyncOpen(t.databaseConfig.databaseName,t.databaseConfig.version)).result;let i=e.transaction(t.databaseConfig.tables.hoopOverrideBranches,"readwrite").objectStore(t.databaseConfig.tables.hoopOverrideBranches);const r=yield i.customGetHoop(o),a=r.Config,n=r.TimeZone||"EST";return yield this.mapOperations(a,n,r)}catch(e){return e}}))}dateTimeConversion(t,o){return e.__awaiter(this,void 0,void 0,(function*(){const e=(0,i.default)().tz(o).format("YYYY-MM-DD");return new Date(Date.parse(`${e}T${t}:00Z`))}))}mapOperations(t,i,a){return e.__awaiter(this,void 0,void 0,(function*(){try{return Promise.all(t.map((t=>e.__awaiter(this,void 0,void 0,(function*(){const{Day:e,StartTime:n,EndTime:s}=t,d=String(n.Minutes).padStart(2,"0"),l=String(s.Minutes).padStart(2,"0"),p=`${String(n.Hours).padStart(2,"0")}:${d}`,u=`${String(s.Hours).padStart(2,"0")}:${l}`,c=yield this.dateTimeConversion(p,i),m=yield this.dateTimeConversion(u,i),f=(0,o.v4)(),v=new r.HoopOperationsImplModel(f,a.HoursOfOperationId,e,c,m,new Date(a.LastModifiedTime),new Date(a.LastModifiedTime));if(v.validationMessages.length>0)throw v.validationMessages;const h=v.serialize;return h.timeZone=a.TimeZone||i,h})))))}catch(e){return e}}))}};
|
|
2
|
+
//# sourceMappingURL=HoopOperationsController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HoopOperationsController.js","sources":["../../../../controller/aws/HoopOperationsController.ts"],"sourcesContent":[null],"names":["DatabaseConfig_1","require","uuid_1","moment_timezone_1","tslib_1","__importDefault","HoopOperationsImplModel_1","exports","HoopOperationsControllerAConnect","constructor","dbFactory","this","_dbFactory","getAll","query","database","asyncOpen","databaseConfig","databaseName","version","result","table","transaction","tables","hoopOverrideBranches","objectStore","request","customGetHoop","config","Config","timeZone","TimeZone","mapOperations","error","dateTimeConversion","timeString","currentDate","default","tz","format","Date","parse","timezone","Promise","all","map","item","__awaiter","Day","StartTime","EndTime","formattedStartTimeMinutes","String","Minutes","padStart","formattedEndTimeMinutes","startTime","Hours","endTime","startDateTime","endDateTime","uuid","v4","operation","HoopOperationsImplModel","HoursOfOperationId","LastModifiedTime","validationMessages","length","operationData","serialize"],"mappings":"gIAG6DA,EAAAC,QAAA,+BACzBC,EAAAD,QAAA,QAEAE,EAAAC,EAAAC,gBAAAJ,QAAA,oBAEqDK,EAAAL,QAAA,kDAEzFM,QAsFCC,iCAtFD,MAII,WAAAC,CAAYC,GACRC,KAAKC,WAAaF,CACrB,CAGK,MAAAG,CAAOC,sDACT,IAEI,MAIMC,SAJ6CJ,KAAKC,WAAWI,UAC/DhB,EAAAiB,eAAeC,aACflB,iBAAemB,UAEiBC,OAOpC,IAAIC,EALkBN,EAASO,YAC3BtB,EAAAiB,eAAeM,OAAOC,qBACtB,aAGsBC,YACtBzB,EAAciB,eAACM,OAAOC,sBAG1B,MAAME,QAAgBL,EAAMM,cAAcb,GACpCc,EAASF,EAAQG,OACjBC,EAAWJ,EAAQK,UAAY,MAGrC,aADqBpB,KAAKqB,cAAcJ,EAAQE,EAAUJ,EAE7D,CAAC,MAAOO,GACL,OAAOA,CACV,IACJ,CAEa,kBAAAC,CAAmBC,EAAoBL,sDACjD,MAAMM,GAAc,EAAAjC,EAAMkC,WAAGC,GAAGR,GAAUS,OAAO,cAEjD,OADa,IAAIC,KAAKA,KAAKC,MAAM,GAAGL,KAAeD,YAEnD,CAES,aAAAH,CAAcJ,EAAec,EAAkBhB,sDACxD,IACI,OAAOiB,QAAQC,IACXhB,EAAOiB,KAAWC,GAAa1C,EAAA2C,UAAApC,UAAA,OAAA,GAAA,YAC7B,MAAMqC,IAAEA,EAAGC,UAAEA,EAASC,QAAEA,GAAYJ,EAC9BK,EAA4BC,OAAOH,EAAUI,SAASC,SAAS,EAAG,KAClEC,EAA0BH,OAAOF,EAAQG,SAASC,SAAS,EAAG,KAG9DE,EAAY,GAFcJ,OAAOH,EAAUQ,OAAOH,SAAS,EAAG,QAEpBH,IAC1CO,EAAU,GAFcN,OAAOF,EAAQO,OAAOH,SAAS,EAAG,QAEpBC,IAEtCI,QAAsBhD,KAAKuB,mBAAmBsB,EAAWd,GACzDkB,QAAoBjD,KAAKuB,mBAAmBwB,EAAShB,GAErDmB,GAAe,EAAA3D,EAAA4D,MACfC,EAAY,IAAIzD,EAAA0D,wBACpBH,EACAnC,EAAQuC,mBACRjB,EACAW,EACAC,EACA,IAAIpB,KAAKd,EAAQwC,kBACjB,IAAI1B,KAAKd,EAAQwC,mBAGnB,GAAIH,EAAUI,mBAAmBC,OAAS,EACxC,MAAML,EAAUI,mBAGlB,MAAME,EAAgBN,EAAUO,UAGhC,OAFAD,EAAwB,SAAI3C,EAAQK,UAAYW,EAEzC2B,CACR,MAER,CAAC,MAAOpC,GACL,OAAOA,CACV,IACF"}
|
|
@@ -1,40 +1,2 @@
|
|
|
1
|
-
"
|
|
2
|
-
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.HoopOverrideBranchesControllerAConnect = void 0;
|
|
13
|
-
const DatabaseConfig_1 = require("../../config/DatabaseConfig");
|
|
14
|
-
class HoopOverrideBranchesControllerAConnect {
|
|
15
|
-
// Constructor to initialize HoopServiceFactory
|
|
16
|
-
constructor(dbFactory) {
|
|
17
|
-
this._dbFactory = dbFactory;
|
|
18
|
-
}
|
|
19
|
-
// Method to get all data with query parameters
|
|
20
|
-
getAll(query) {
|
|
21
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
try {
|
|
23
|
-
// Open database connection
|
|
24
|
-
const databaseConnection = yield this._dbFactory.asyncOpen(DatabaseConfig_1.databaseConfig.databaseName, DatabaseConfig_1.databaseConfig.version);
|
|
25
|
-
const database = databaseConnection.result;
|
|
26
|
-
// Start database transaction
|
|
27
|
-
const dbTransaction = database.transaction(DatabaseConfig_1.databaseConfig.tables.hoopOverrideBranches, "readwrite");
|
|
28
|
-
// Access object store
|
|
29
|
-
let table = dbTransaction.objectStore(DatabaseConfig_1.databaseConfig.tables.hoopOverrideBranches);
|
|
30
|
-
// Retrieve all data from the object store
|
|
31
|
-
let result = yield table.customGetOverrides(query);
|
|
32
|
-
return { result }; // Return result with meta data
|
|
33
|
-
}
|
|
34
|
-
catch (error) {
|
|
35
|
-
return error;
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
exports.HoopOverrideBranchesControllerAConnect = HoopOverrideBranchesControllerAConnect;
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.HoopOverrideBranchesControllerAConnect=void 0;const e=require("tslib"),r=require("../../config/DatabaseConfig");exports.HoopOverrideBranchesControllerAConnect=class{constructor(e){this._dbFactory=e}getAll(t){return e.__awaiter(this,void 0,void 0,(function*(){try{const e=(yield this._dbFactory.asyncOpen(r.databaseConfig.databaseName,r.databaseConfig.version)).result;let o=e.transaction(r.databaseConfig.tables.hoopOverrideBranches,"readwrite").objectStore(r.databaseConfig.tables.hoopOverrideBranches);return{result:yield o.customGetOverrides(t)}}catch(e){return e}}))}};
|
|
2
|
+
//# sourceMappingURL=HoopOverrideBranchesController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HoopOverrideBranchesController.js","sources":["../../../../controller/aws/HoopOverrideBranchesController.ts"],"sourcesContent":[null],"names":["DatabaseConfig_1","require","exports","HoopOverrideBranchesControllerAConnect","constructor","dbFactory","this","_dbFactory","getAll","query","database","asyncOpen","databaseConfig","databaseName","version","result","table","transaction","tables","hoopOverrideBranches","objectStore","customGetOverrides","error"],"mappings":"sIAG6DA,EAAAC,QAAA,+BAK7DC,QAmCCC,uCAnCD,MAII,WAAAC,CAAYC,GACRC,KAAKC,WAAaF,CACrB,CAGK,MAAAG,CAAOC,sDACT,IAEI,MAIMC,SAJ6CJ,KAAKC,WAAWI,UAC/DX,EAAAY,eAAeC,aACfb,iBAAec,UAEiBC,OAOpC,IAAIC,EALkBN,EAASO,YAC3BjB,EAAAY,eAAeM,OAAOC,qBACtB,aAGsBC,YACtBpB,EAAcY,eAACM,OAAOC,sBAI1B,MAAO,CAACJ,aADWC,EAAMK,mBAAmBZ,GAE/C,CAAC,MAAOa,GACL,OAAOA,CACV,IACJ"}
|