skyeye-svc-common-utils 2.0.0-dev0.20 → 2.0.0-dev0.22
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/dist/index.d.ts +32 -0
- package/dist/index.js +49 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/apiResponse.d.ts +7 -0
- package/dist/interfaces/apiResponse.js +3 -0
- package/dist/interfaces/apiResponse.js.map +1 -0
- package/dist/interfaces/grpcListRequest.d.ts +6 -0
- package/dist/interfaces/grpcListRequest.js +3 -0
- package/dist/interfaces/grpcListRequest.js.map +1 -0
- package/dist/interfaces/grpcServiceResponse.d.ts +8 -0
- package/dist/interfaces/grpcServiceResponse.js +3 -0
- package/dist/interfaces/grpcServiceResponse.js.map +1 -0
- package/dist/interfaces/index.d.ts +10 -0
- package/dist/interfaces/index.js +26 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/interfaces/internalHttp/request/index.d.ts +1 -0
- package/dist/interfaces/internalHttp/request/index.js +18 -0
- package/dist/interfaces/internalHttp/request/index.js.map +1 -0
- package/dist/interfaces/internalHttp/request/search.d.ts +9 -0
- package/dist/interfaces/internalHttp/request/search.js +3 -0
- package/dist/interfaces/internalHttp/request/search.js.map +1 -0
- package/dist/interfaces/internalHttp/response/index.d.ts +1 -0
- package/dist/interfaces/internalHttp/response/index.js +18 -0
- package/dist/interfaces/internalHttp/response/index.js.map +1 -0
- package/dist/interfaces/internalHttp/response/search.d.ts +10 -0
- package/dist/interfaces/internalHttp/response/search.js +3 -0
- package/dist/interfaces/internalHttp/response/search.js.map +1 -0
- package/dist/interfaces/pagination.d.ts +6 -0
- package/dist/interfaces/pagination.js +12 -0
- package/dist/interfaces/pagination.js.map +1 -0
- package/dist/interfaces/serviceResponse.d.ts +8 -0
- package/dist/interfaces/serviceResponse.js +3 -0
- package/dist/interfaces/serviceResponse.js.map +1 -0
- package/dist/interfaces/subcriptionFeaturePermissionModel.d.ts +8 -0
- package/dist/interfaces/subcriptionFeaturePermissionModel.js +14 -0
- package/dist/interfaces/subcriptionFeaturePermissionModel.js.map +1 -0
- package/dist/interfaces/userInfo.d.ts +17 -0
- package/dist/interfaces/userInfo.js +21 -0
- package/dist/interfaces/userInfo.js.map +1 -0
- package/dist/lib/azure/azureBlobStorage.d.ts +4 -0
- package/dist/lib/azure/azureBlobStorage.js +137 -0
- package/dist/lib/azure/azureBlobStorage.js.map +1 -0
- package/dist/lib/azure/azureKeyVault.d.ts +11 -0
- package/dist/lib/azure/azureKeyVault.js +65 -0
- package/dist/lib/azure/azureKeyVault.js.map +1 -0
- package/dist/lib/azure/azureServiceBusClient.d.ts +47 -0
- package/dist/lib/azure/azureServiceBusClient.js +139 -0
- package/dist/lib/azure/azureServiceBusClient.js.map +1 -0
- package/dist/lib/azure/azureServiceBusQueue.d.ts +1 -0
- package/dist/lib/azure/azureServiceBusQueue.js +42 -0
- package/dist/lib/azure/azureServiceBusQueue.js.map +1 -0
- package/dist/lib/azure/azureStorageQueue.d.ts +1 -0
- package/dist/lib/azure/azureStorageQueue.js +26 -0
- package/dist/lib/azure/azureStorageQueue.js.map +1 -0
- package/dist/lib/azure/azureTableStorage.d.ts +4 -0
- package/dist/lib/azure/azureTableStorage.js +67 -0
- package/dist/lib/azure/azureTableStorage.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/QueryType.d.ts +8 -0
- package/dist/lib/azure/cognitiveSearch/QueryType.js +13 -0
- package/dist/lib/azure/cognitiveSearch/QueryType.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/SearchClient.d.ts +42 -0
- package/dist/lib/azure/cognitiveSearch/SearchClient.js +161 -0
- package/dist/lib/azure/cognitiveSearch/SearchClient.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/SearchFacets.d.ts +16 -0
- package/dist/lib/azure/cognitiveSearch/SearchFacets.js +3 -0
- package/dist/lib/azure/cognitiveSearch/SearchFacets.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/SearchFilter.d.ts +68 -0
- package/dist/lib/azure/cognitiveSearch/SearchFilter.js +125 -0
- package/dist/lib/azure/cognitiveSearch/SearchFilter.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/SearchMode.d.ts +9 -0
- package/dist/lib/azure/cognitiveSearch/SearchMode.js +14 -0
- package/dist/lib/azure/cognitiveSearch/SearchMode.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/SearchOption.d.ts +88 -0
- package/dist/lib/azure/cognitiveSearch/SearchOption.js +104 -0
- package/dist/lib/azure/cognitiveSearch/SearchOption.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/SearchOrder.d.ts +9 -0
- package/dist/lib/azure/cognitiveSearch/SearchOrder.js +3 -0
- package/dist/lib/azure/cognitiveSearch/SearchOrder.js.map +1 -0
- package/dist/lib/azure/cognitiveSearch/index.d.ts +7 -0
- package/dist/lib/azure/cognitiveSearch/index.js +24 -0
- package/dist/lib/azure/cognitiveSearch/index.js.map +1 -0
- package/dist/lib/azure/index.d.ts +7 -0
- package/dist/lib/azure/index.js +24 -0
- package/dist/lib/azure/index.js.map +1 -0
- package/dist/lib/fetch/index.d.ts +2 -0
- package/dist/lib/fetch/index.js +19 -0
- package/dist/lib/fetch/index.js.map +1 -0
- package/dist/lib/fetch/sendRequest.d.ts +8 -0
- package/dist/lib/fetch/sendRequest.js +25 -0
- package/dist/lib/fetch/sendRequest.js.map +1 -0
- package/dist/lib/fetch/sendRequestWithTimeout.d.ts +9 -0
- package/dist/lib/fetch/sendRequestWithTimeout.js +53 -0
- package/dist/lib/fetch/sendRequestWithTimeout.js.map +1 -0
- package/dist/lib/httpClient.d.ts +4 -0
- package/dist/lib/httpClient.js +55 -0
- package/dist/lib/httpClient.js.map +1 -0
- package/dist/lib/index.d.ts +3 -0
- package/dist/lib/index.js +20 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/redisClient.d.ts +45 -0
- package/dist/lib/redisClient.js +153 -0
- package/dist/lib/redisClient.js.map +1 -0
- package/dist/lib/sendGridClient.d.ts +27 -0
- package/dist/lib/sendGridClient.js +62 -0
- package/dist/lib/sendGridClient.js.map +1 -0
- package/dist/lib/teams/broadcastLogMessage.d.ts +8 -0
- package/dist/lib/teams/broadcastLogMessage.js +81 -0
- package/dist/lib/teams/broadcastLogMessage.js.map +1 -0
- package/dist/lib/teams/index.d.ts +2 -0
- package/dist/lib/teams/index.js +19 -0
- package/dist/lib/teams/index.js.map +1 -0
- package/dist/lib/teams/logMessage.d.ts +51 -0
- package/dist/lib/teams/logMessage.js +33 -0
- package/dist/lib/teams/logMessage.js.map +1 -0
- package/dist/models/baseControllerParameter.d.ts +9 -0
- package/dist/models/baseControllerParameter.js +24 -0
- package/dist/models/baseControllerParameter.js.map +1 -0
- package/dist/models/campaign/grpcCampaignEventModel.d.ts +18 -0
- package/dist/models/campaign/grpcCampaignEventModel.js +24 -0
- package/dist/models/campaign/grpcCampaignEventModel.js.map +1 -0
- package/dist/models/campaign/grpcCampaignEventUserModel.d.ts +13 -0
- package/dist/models/campaign/grpcCampaignEventUserModel.js +19 -0
- package/dist/models/campaign/grpcCampaignEventUserModel.js.map +1 -0
- package/dist/models/campaign/grpcCampaignUserModel.d.ts +12 -0
- package/dist/models/campaign/grpcCampaignUserModel.js +16 -0
- package/dist/models/campaign/grpcCampaignUserModel.js.map +1 -0
- package/dist/models/campaign/index.d.ts +4 -0
- package/dist/models/campaign/index.js +10 -0
- package/dist/models/campaign/index.js.map +1 -0
- package/dist/models/emailtemplate/grpcEmailTemplateModel.d.ts +10 -0
- package/dist/models/emailtemplate/grpcEmailTemplateModel.js +16 -0
- package/dist/models/emailtemplate/grpcEmailTemplateModel.js.map +1 -0
- package/dist/models/emailtemplate/index.d.ts +2 -0
- package/dist/models/emailtemplate/index.js +6 -0
- package/dist/models/emailtemplate/index.js.map +1 -0
- package/dist/models/index.d.ts +10 -0
- package/dist/models/index.js +28 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/organisation/grpcOrganisationModel.d.ts +15 -0
- package/dist/models/organisation/grpcOrganisationModel.js +21 -0
- package/dist/models/organisation/grpcOrganisationModel.js.map +1 -0
- package/dist/models/organisation/index.d.ts +2 -0
- package/dist/models/organisation/index.js +6 -0
- package/dist/models/organisation/index.js.map +1 -0
- package/dist/models/rbac/grpcRoleModel.d.ts +9 -0
- package/dist/models/rbac/grpcRoleModel.js +15 -0
- package/dist/models/rbac/grpcRoleModel.js.map +1 -0
- package/dist/models/rbac/index.d.ts +2 -0
- package/dist/models/rbac/index.js +6 -0
- package/dist/models/rbac/index.js.map +1 -0
- package/dist/models/scoutai/grpcAIDETrainingResultListModel.d.ts +8 -0
- package/dist/models/scoutai/grpcAIDETrainingResultListModel.js +14 -0
- package/dist/models/scoutai/grpcAIDETrainingResultListModel.js.map +1 -0
- package/dist/models/scoutai/grpcNerlCorrectionModel.d.ts +11 -0
- package/dist/models/scoutai/grpcNerlCorrectionModel.js +16 -0
- package/dist/models/scoutai/grpcNerlCorrectionModel.js.map +1 -0
- package/dist/models/scoutai/grpcScoutAIListReq.d.ts +12 -0
- package/dist/models/scoutai/grpcScoutAIListReq.js +17 -0
- package/dist/models/scoutai/grpcScoutAIListReq.js.map +1 -0
- package/dist/models/scoutai/grpcScoutAIModel.d.ts +10 -0
- package/dist/models/scoutai/grpcScoutAIModel.js +16 -0
- package/dist/models/scoutai/grpcScoutAIModel.js.map +1 -0
- package/dist/models/scoutai/grpcScoutAIResult.d.ts +10 -0
- package/dist/models/scoutai/grpcScoutAIResult.js +16 -0
- package/dist/models/scoutai/grpcScoutAIResult.js.map +1 -0
- package/dist/models/scoutai/grpcTaasConfigAIModel.d.ts +6 -0
- package/dist/models/scoutai/grpcTaasConfigAIModel.js +12 -0
- package/dist/models/scoutai/grpcTaasConfigAIModel.js.map +1 -0
- package/dist/models/scoutai/grpcTaasConfigModel.d.ts +11 -0
- package/dist/models/scoutai/grpcTaasConfigModel.js +15 -0
- package/dist/models/scoutai/grpcTaasConfigModel.js.map +1 -0
- package/dist/models/scoutai/grpcTaasConfigUserModel.d.ts +8 -0
- package/dist/models/scoutai/grpcTaasConfigUserModel.js +14 -0
- package/dist/models/scoutai/grpcTaasConfigUserModel.js.map +1 -0
- package/dist/models/scoutai/grpcTagItemModel.d.ts +9 -0
- package/dist/models/scoutai/grpcTagItemModel.js +15 -0
- package/dist/models/scoutai/grpcTagItemModel.js.map +1 -0
- package/dist/models/scoutai/grpcVisualisationModel.d.ts +11 -0
- package/dist/models/scoutai/grpcVisualisationModel.js +15 -0
- package/dist/models/scoutai/grpcVisualisationModel.js.map +1 -0
- package/dist/models/scoutai/grpcVisualisationPositionModel.d.ts +6 -0
- package/dist/models/scoutai/grpcVisualisationPositionModel.js +11 -0
- package/dist/models/scoutai/grpcVisualisationPositionModel.js.map +1 -0
- package/dist/models/scoutai/index.d.ts +10 -0
- package/dist/models/scoutai/index.js +22 -0
- package/dist/models/scoutai/index.js.map +1 -0
- package/dist/models/search/grpcAggregation.d.ts +9 -0
- package/dist/models/search/grpcAggregation.js +14 -0
- package/dist/models/search/grpcAggregation.js.map +1 -0
- package/dist/models/search/grpcCmsModel.d.ts +5 -0
- package/dist/models/search/grpcCmsModel.js +11 -0
- package/dist/models/search/grpcCmsModel.js.map +1 -0
- package/dist/models/search/grpcCommonModels.d.ts +109 -0
- package/dist/models/search/grpcCommonModels.js +80 -0
- package/dist/models/search/grpcCommonModels.js.map +1 -0
- package/dist/models/search/grpcCompanyAggregation.d.ts +14 -0
- package/dist/models/search/grpcCompanyAggregation.js +16 -0
- package/dist/models/search/grpcCompanyAggregation.js.map +1 -0
- package/dist/models/search/grpcCompanyConnectModel.d.ts +14 -0
- package/dist/models/search/grpcCompanyConnectModel.js +18 -0
- package/dist/models/search/grpcCompanyConnectModel.js.map +1 -0
- package/dist/models/search/grpcCompanyListReq.d.ts +36 -0
- package/dist/models/search/grpcCompanyListReq.js +42 -0
- package/dist/models/search/grpcCompanyListReq.js.map +1 -0
- package/dist/models/search/grpcCompanyModel.d.ts +43 -0
- package/dist/models/search/grpcCompanyModel.js +46 -0
- package/dist/models/search/grpcCompanyModel.js.map +1 -0
- package/dist/models/search/grpcCompanyNewsCountModel.d.ts +9 -0
- package/dist/models/search/grpcCompanyNewsCountModel.js +14 -0
- package/dist/models/search/grpcCompanyNewsCountModel.js.map +1 -0
- package/dist/models/search/grpcCompanyPeriodMentionModel.d.ts +18 -0
- package/dist/models/search/grpcCompanyPeriodMentionModel.js +22 -0
- package/dist/models/search/grpcCompanyPeriodMentionModel.js.map +1 -0
- package/dist/models/search/grpcCompanyPreviewModel.d.ts +26 -0
- package/dist/models/search/grpcCompanyPreviewModel.js +31 -0
- package/dist/models/search/grpcCompanyPreviewModel.js.map +1 -0
- package/dist/models/search/grpcContentAggregation.d.ts +8 -0
- package/dist/models/search/grpcContentAggregation.js +7 -0
- package/dist/models/search/grpcContentAggregation.js.map +1 -0
- package/dist/models/search/grpcContentListReq.d.ts +16 -0
- package/dist/models/search/grpcContentListReq.js +22 -0
- package/dist/models/search/grpcContentListReq.js.map +1 -0
- package/dist/models/search/grpcContentModel.d.ts +32 -0
- package/dist/models/search/grpcContentModel.js +37 -0
- package/dist/models/search/grpcContentModel.js.map +1 -0
- package/dist/models/search/grpcContentPreviewModel.d.ts +28 -0
- package/dist/models/search/grpcContentPreviewModel.js +33 -0
- package/dist/models/search/grpcContentPreviewModel.js.map +1 -0
- package/dist/models/search/grpcContentTabsModel.d.ts +10 -0
- package/dist/models/search/grpcContentTabsModel.js +15 -0
- package/dist/models/search/grpcContentTabsModel.js.map +1 -0
- package/dist/models/search/grpcCountryModel.d.ts +13 -0
- package/dist/models/search/grpcCountryModel.js +19 -0
- package/dist/models/search/grpcCountryModel.js.map +1 -0
- package/dist/models/search/grpcFinancialModel.d.ts +292 -0
- package/dist/models/search/grpcFinancialModel.js +7 -0
- package/dist/models/search/grpcFinancialModel.js.map +1 -0
- package/dist/models/search/grpcMarketModel.d.ts +16 -0
- package/dist/models/search/grpcMarketModel.js +6 -0
- package/dist/models/search/grpcMarketModel.js.map +1 -0
- package/dist/models/search/grpcMentionContentCountModel.d.ts +5 -0
- package/dist/models/search/grpcMentionContentCountModel.js +7 -0
- package/dist/models/search/grpcMentionContentCountModel.js.map +1 -0
- package/dist/models/search/index.d.ts +16 -0
- package/dist/models/search/index.js +44 -0
- package/dist/models/search/index.js.map +1 -0
- package/dist/models/subscription/applicationFeatureModel.d.ts +7 -0
- package/dist/models/subscription/applicationFeatureModel.js +12 -0
- package/dist/models/subscription/applicationFeatureModel.js.map +1 -0
- package/dist/models/subscription/featureModel.d.ts +7 -0
- package/dist/models/subscription/featureModel.js +13 -0
- package/dist/models/subscription/featureModel.js.map +1 -0
- package/dist/models/subscription/grpcSubscriptionModel.d.ts +6 -0
- package/dist/models/subscription/grpcSubscriptionModel.js +12 -0
- package/dist/models/subscription/grpcSubscriptionModel.js.map +1 -0
- package/dist/models/subscription/index.d.ts +10 -0
- package/dist/models/subscription/index.js +22 -0
- package/dist/models/subscription/index.js.map +1 -0
- package/dist/models/subscription/licenseModel.d.ts +6 -0
- package/dist/models/subscription/licenseModel.js +12 -0
- package/dist/models/subscription/licenseModel.js.map +1 -0
- package/dist/models/subscription/licenseUserModel.d.ts +5 -0
- package/dist/models/subscription/licenseUserModel.js +11 -0
- package/dist/models/subscription/licenseUserModel.js.map +1 -0
- package/dist/models/subscription/subscriptionFeatureModel.d.ts +6 -0
- package/dist/models/subscription/subscriptionFeatureModel.js +12 -0
- package/dist/models/subscription/subscriptionFeatureModel.js.map +1 -0
- package/dist/models/subscription/subscriptionModel.d.ts +14 -0
- package/dist/models/subscription/subscriptionModel.js +19 -0
- package/dist/models/subscription/subscriptionModel.js.map +1 -0
- package/dist/models/subscription/subscriptionPlanFeatureModel.d.ts +5 -0
- package/dist/models/subscription/subscriptionPlanFeatureModel.js +11 -0
- package/dist/models/subscription/subscriptionPlanFeatureModel.js.map +1 -0
- package/dist/models/subscription/subscriptionPlanModel.d.ts +15 -0
- package/dist/models/subscription/subscriptionPlanModel.js +20 -0
- package/dist/models/subscription/subscriptionPlanModel.js.map +1 -0
- package/dist/models/user/grpcAccountInfoModel.d.ts +5 -0
- package/dist/models/user/grpcAccountInfoModel.js +7 -0
- package/dist/models/user/grpcAccountInfoModel.js.map +1 -0
- package/dist/models/user/grpcAppUserModel.d.ts +15 -0
- package/dist/models/user/grpcAppUserModel.js +20 -0
- package/dist/models/user/grpcAppUserModel.js.map +1 -0
- package/dist/models/user/grpcAppUserOrganisationStatistic.d.ts +6 -0
- package/dist/models/user/grpcAppUserOrganisationStatistic.js +12 -0
- package/dist/models/user/grpcAppUserOrganisationStatistic.js.map +1 -0
- package/dist/models/user/grpcAppUserRoleModel.d.ts +5 -0
- package/dist/models/user/grpcAppUserRoleModel.js +11 -0
- package/dist/models/user/grpcAppUserRoleModel.js.map +1 -0
- package/dist/models/user/grpcBrowseHistoryModel.d.ts +8 -0
- package/dist/models/user/grpcBrowseHistoryModel.js +14 -0
- package/dist/models/user/grpcBrowseHistoryModel.js.map +1 -0
- package/dist/models/user/grpcDailyDigestUserModel.d.ts +10 -0
- package/dist/models/user/grpcDailyDigestUserModel.js +15 -0
- package/dist/models/user/grpcDailyDigestUserModel.js.map +1 -0
- package/dist/models/user/grpcNotificationSettingModel.d.ts +11 -0
- package/dist/models/user/grpcNotificationSettingModel.js +17 -0
- package/dist/models/user/grpcNotificationSettingModel.js.map +1 -0
- package/dist/models/user/grpcSavedSearchModel.d.ts +8 -0
- package/dist/models/user/grpcSavedSearchModel.js +14 -0
- package/dist/models/user/grpcSavedSearchModel.js.map +1 -0
- package/dist/models/user/grpcSearchHistoryModel.d.ts +7 -0
- package/dist/models/user/grpcSearchHistoryModel.js +13 -0
- package/dist/models/user/grpcSearchHistoryModel.js.map +1 -0
- package/dist/models/user/grpcTargetListEntityModel.d.ts +5 -0
- package/dist/models/user/grpcTargetListEntityModel.js +7 -0
- package/dist/models/user/grpcTargetListEntityModel.js.map +1 -0
- package/dist/models/user/grpcTargetListExportModel.d.ts +8 -0
- package/dist/models/user/grpcTargetListExportModel.js +14 -0
- package/dist/models/user/grpcTargetListExportModel.js.map +1 -0
- package/dist/models/user/grpcTargetListItemModel.d.ts +7 -0
- package/dist/models/user/grpcTargetListItemModel.js +13 -0
- package/dist/models/user/grpcTargetListItemModel.js.map +1 -0
- package/dist/models/user/grpcTargetListModel.d.ts +9 -0
- package/dist/models/user/grpcTargetListModel.js +14 -0
- package/dist/models/user/grpcTargetListModel.js.map +1 -0
- package/dist/models/user/index.d.ts +14 -0
- package/dist/models/user/index.js +30 -0
- package/dist/models/user/index.js.map +1 -0
- package/dist/utils/appConfig.d.ts +45 -0
- package/dist/utils/appConfig.js +57 -0
- package/dist/utils/appConfig.js.map +1 -0
- package/dist/utils/appConst.d.ts +196 -0
- package/dist/utils/appConst.js +214 -0
- package/dist/utils/appConst.js.map +1 -0
- package/dist/utils/authentication/auth.d.ts +2 -0
- package/dist/utils/authentication/auth.js +163 -0
- package/dist/utils/authentication/auth.js.map +1 -0
- package/dist/utils/authentication/role.d.ts +7 -0
- package/dist/utils/authentication/role.js +139 -0
- package/dist/utils/authentication/role.js.map +1 -0
- package/dist/utils/baseClass/appDataSource.d.ts +7 -0
- package/dist/utils/baseClass/appDataSource.js +31 -0
- package/dist/utils/baseClass/appDataSource.js.map +1 -0
- package/dist/utils/baseClass/baseController.d.ts +12 -0
- package/dist/utils/baseClass/baseController.js +176 -0
- package/dist/utils/baseClass/baseController.js.map +1 -0
- package/dist/utils/baseClass/baseService.d.ts +7 -0
- package/dist/utils/baseClass/baseService.js +11 -0
- package/dist/utils/baseClass/baseService.js.map +1 -0
- package/dist/utils/commonUtils/appConfigKeyRetriever.d.ts +7 -0
- package/dist/utils/commonUtils/appConfigKeyRetriever.js +43 -0
- package/dist/utils/commonUtils/appConfigKeyRetriever.js.map +1 -0
- package/dist/utils/commonUtils/appUtils.d.ts +41 -0
- package/dist/utils/commonUtils/appUtils.js +236 -0
- package/dist/utils/commonUtils/appUtils.js.map +1 -0
- package/dist/utils/commonUtils/cronUtils.d.ts +9 -0
- package/dist/utils/commonUtils/cronUtils.js +32 -0
- package/dist/utils/commonUtils/cronUtils.js.map +1 -0
- package/dist/utils/commonUtils/index.d.ts +6 -0
- package/dist/utils/commonUtils/index.js +23 -0
- package/dist/utils/commonUtils/index.js.map +1 -0
- package/dist/utils/commonUtils/jwtUtils.d.ts +3 -0
- package/dist/utils/commonUtils/jwtUtils.js +83 -0
- package/dist/utils/commonUtils/jwtUtils.js.map +1 -0
- package/dist/utils/commonUtils/responseUtils.d.ts +7 -0
- package/dist/utils/commonUtils/responseUtils.js +131 -0
- package/dist/utils/commonUtils/responseUtils.js.map +1 -0
- package/dist/utils/commonUtils/validation.d.ts +6 -0
- package/dist/utils/commonUtils/validation.js +92 -0
- package/dist/utils/commonUtils/validation.js.map +1 -0
- package/dist/utils/documentation/swagger.d.ts +1 -0
- package/dist/utils/documentation/swagger.js +44 -0
- package/dist/utils/documentation/swagger.js.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +19 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger/logger.d.ts +1 -0
- package/dist/utils/logger/logger.js +58 -0
- package/dist/utils/logger/logger.js.map +1 -0
- package/dist/utils/logger/morganLogger.d.ts +2 -0
- package/dist/utils/logger/morganLogger.js +41 -0
- package/dist/utils/logger/morganLogger.js.map +1 -0
- package/dist/utils/middleware/handleError.d.ts +2 -0
- package/dist/utils/middleware/handleError.js +12 -0
- package/dist/utils/middleware/handleError.js.map +1 -0
- package/dist/utils/middleware/isPublicUser.d.ts +2 -0
- package/dist/utils/middleware/isPublicUser.js +35 -0
- package/dist/utils/middleware/isPublicUser.js.map +1 -0
- package/dist/utils/middleware/loadConfig.d.ts +128 -0
- package/dist/utils/middleware/loadConfig.js +143 -0
- package/dist/utils/middleware/loadConfig.js.map +1 -0
- package/dist/utils/middleware/overwriteConst.d.ts +1 -0
- package/dist/utils/middleware/overwriteConst.js +84 -0
- package/dist/utils/middleware/overwriteConst.js.map +1 -0
- package/dist/utils/monitoring/apm.d.ts +6 -0
- package/dist/utils/monitoring/apm.js +99 -0
- package/dist/utils/monitoring/apm.js.map +1 -0
- package/package.json +3 -5
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
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.sendRequestWithTimeout = void 0;
|
|
16
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
17
|
+
const abort_controller_1 = require("@azure/abort-controller");
|
|
18
|
+
const appConst_1 = require("../../utils/appConst");
|
|
19
|
+
/**
|
|
20
|
+
* @description to store the current processing request, it should only be called
|
|
21
|
+
* by function sendRequestWithTimeout
|
|
22
|
+
*/
|
|
23
|
+
const abortedSet = new Set();
|
|
24
|
+
/**
|
|
25
|
+
* @description send a request which will automatically abort within a given time
|
|
26
|
+
* if the request is not response yet
|
|
27
|
+
* @param {string} url - url of request endpoint
|
|
28
|
+
* @param {any} options - fetch option
|
|
29
|
+
* @param {number} abortWithinMs - automatically abort after given millisecond
|
|
30
|
+
* @returns {any} response
|
|
31
|
+
*/
|
|
32
|
+
function sendRequestWithTimeout(url, options, abortWithinMs = appConst_1.thirdPartyRegulation.requestLimitationMsec) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
const controller = new abort_controller_1.AbortController();
|
|
35
|
+
const timeout = setTimeout(() => {
|
|
36
|
+
abortedSet.add(url);
|
|
37
|
+
controller.abort();
|
|
38
|
+
}, abortWithinMs);
|
|
39
|
+
try {
|
|
40
|
+
const response = yield (0, node_fetch_1.default)(url, Object.assign({ signal: controller.signal }, options));
|
|
41
|
+
clearTimeout(timeout);
|
|
42
|
+
return response;
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
if (abortedSet.has(url) && err.name === 'AbortError') {
|
|
46
|
+
abortedSet.delete(url);
|
|
47
|
+
}
|
|
48
|
+
throw err;
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
exports.sendRequestWithTimeout = sendRequestWithTimeout;
|
|
53
|
+
//# sourceMappingURL=sendRequestWithTimeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendRequestWithTimeout.js","sourceRoot":"","sources":["../../../src/lib/fetch/sendRequestWithTimeout.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4DAA+B;AAC/B,8DAA0D;AAC1D,mDAA4D;AAG5D;;;GAGG;AACH,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAU,CAAC;AAElD;;;;;;;GAOG;AACH,SAAsB,sBAAsB,CACxC,GAAW,EACX,OAAY,EACZ,gBAAwB,+BAAoB,CAAC,qBAAqB;;QAElE,MAAM,UAAU,GAAG,IAAI,kCAAe,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpB,UAAU,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC,EAAE,aAAa,CAAC,CAAC;QAClB,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,kBAAI,MAAM,EAAE,UAAU,CAAC,MAAM,IAAK,OAAO,EAAE,CAAC;YAC5E,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,OAAO,QAAQ,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAK,GAAa,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAAC,CAAC;YAC5F,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;CAAA;AAlBD,wDAkBC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Response } from 'node-fetch';
|
|
2
|
+
import { UserInfo } from '../interfaces';
|
|
3
|
+
export declare function httpRequest(method: string, url: string, data?: any, headers?: any): Promise<Response>;
|
|
4
|
+
export declare function sendInternalHttpRequest(userInfo: UserInfo, client: string, endpoint: string, data?: any, method?: string, select?: string[]): Promise<any>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
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.sendInternalHttpRequest = exports.httpRequest = void 0;
|
|
16
|
+
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
17
|
+
const commonUtils_1 = require("../utils/commonUtils");
|
|
18
|
+
const commonUtils_2 = require("../utils/commonUtils");
|
|
19
|
+
const appConst_1 = require("../utils/appConst");
|
|
20
|
+
const logger_1 = require("../utils/logger/logger");
|
|
21
|
+
function httpRequest(method, url, data = null, headers = (0, appConst_1.jsonContentTypeHeaders)()) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const init = {
|
|
24
|
+
method,
|
|
25
|
+
headers,
|
|
26
|
+
body: data === null ? undefined : JSON.stringify(data)
|
|
27
|
+
};
|
|
28
|
+
return (0, node_fetch_1.default)(url, init);
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
exports.httpRequest = httpRequest;
|
|
32
|
+
function sendInternalHttpRequest(userInfo, client, endpoint, data = null, method, select) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
method = method !== null && method !== void 0 ? method : appConst_1.commonAppConst.httpMethod.POST;
|
|
35
|
+
const internalClient = yield (0, commonUtils_1.getInternalClient)(client);
|
|
36
|
+
const url = internalClient + endpoint;
|
|
37
|
+
let headers = (0, appConst_1.jsonContentTypeHeaders)();
|
|
38
|
+
if (userInfo) {
|
|
39
|
+
userInfo = yield (0, commonUtils_1.userInfoSimplifier)(userInfo, select);
|
|
40
|
+
let token = `${appConst_1.commonAppConst.httpHeader.BEARER} ${yield (0, commonUtils_2.generateJWT)(userInfo)}`;
|
|
41
|
+
headers[appConst_1.commonAppConst.httpHeader.AUTHORIZATION] = token;
|
|
42
|
+
}
|
|
43
|
+
let response;
|
|
44
|
+
try {
|
|
45
|
+
response = yield httpRequest(method, url, data, headers);
|
|
46
|
+
return response.json();
|
|
47
|
+
}
|
|
48
|
+
catch (err) {
|
|
49
|
+
logger_1.logger.error(`Error while sending internal http request, receiving response: ${response}`);
|
|
50
|
+
throw new Error(`${err}`);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
exports.sendInternalHttpRequest = sendInternalHttpRequest;
|
|
55
|
+
//# sourceMappingURL=httpClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/lib/httpClient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4DAA0D;AAE1D,sDAA6E;AAC7E,sDAAmD;AACnD,gDAA0E;AAC1E,mDAAgD;AAEhD,SAAsB,WAAW,CAAC,MAAc,EAAE,GAAY,EAAG,OAAY,IAAI,EAAE,UAAgB,IAAA,iCAAsB,GAAE;;QACvH,MAAM,IAAI,GAAgB;YACtB,MAAM;YACN,OAAO;YACP,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SACzD,CAAA;QACD,OAAO,IAAA,oBAAK,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;CAAA;AAPD,kCAOC;AAED,SAAsB,uBAAuB,CAAC,QAAiB,EAAE,MAAc,EAAE,QAAgB,EAAE,OAAY,IAAI,EAAE,MAAe,EAAE,MAAgB;;QAClJ,MAAM,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,yBAAc,CAAC,UAAU,CAAC,IAAI,CAAC;QAClD,MAAM,cAAc,GAAG,MAAM,IAAA,+BAAiB,EAAC,MAAM,CAAC,CAAA;QACtD,MAAM,GAAG,GAAG,cAAc,GAAG,QAAQ,CAAC;QACtC,IAAI,OAAO,GAAO,IAAA,iCAAsB,GAAE,CAAC;QAC3C,IAAG,QAAQ,EAAC,CAAC;YACT,QAAQ,GAAG,MAAM,IAAA,gCAAkB,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YACrD,IAAI,KAAK,GAAW,GAAG,yBAAc,CAAC,UAAU,CAAC,MAAM,IAAI,MAAM,IAAA,yBAAW,EAAC,QAAQ,CAAC,EAAE,CAAC;YACzF,OAAO,CAAC,yBAAc,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;QAC7D,CAAC;QAED,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACD,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACzD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC3B,CAAC;QACD,OAAO,GAAG,EAAE,CAAC;YACT,eAAM,CAAC,KAAK,CAAC,kEAAkE,QAAQ,EAAE,CAAC,CAAC;YAC3F,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;CAAA;AApBD,0DAoBC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./azure"), exports);
|
|
18
|
+
__exportStar(require("./fetch"), exports);
|
|
19
|
+
__exportStar(require("./teams"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0CAAwB;AACxB,0CAAwB"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import Redis, { RedisOptions } from 'ioredis';
|
|
2
|
+
/**
|
|
3
|
+
* A wrapper class for Redis client that adds error handling and logging
|
|
4
|
+
*/
|
|
5
|
+
export declare class RedisClient extends Redis {
|
|
6
|
+
/**
|
|
7
|
+
* @constructor
|
|
8
|
+
* @param {RedisOptions} options - config options for redis connection
|
|
9
|
+
*/
|
|
10
|
+
constructor(options: RedisOptions);
|
|
11
|
+
/**
|
|
12
|
+
* @override It returns the value of the key from the Redis database.
|
|
13
|
+
* @param {string} key - The key to get the value of.
|
|
14
|
+
* @returns {Promise<string | null>} Value of the key.
|
|
15
|
+
*/
|
|
16
|
+
get(key: string): Promise<string | null>;
|
|
17
|
+
/**
|
|
18
|
+
* It sets a key-value pair in the Redis cache.
|
|
19
|
+
* @param {string} key - The key to store the value in.
|
|
20
|
+
* @param {any} value - The value for the key
|
|
21
|
+
* @param {number} time - Time to live, in seconds
|
|
22
|
+
* @returns {Promise<boolean>} A boolean to tell whether it is able to set a key in redis.
|
|
23
|
+
*/
|
|
24
|
+
put(key: string, value: any, time?: number): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* It locks a key in redis with a default TTL of 5 minutes, if possible.
|
|
27
|
+
* @param {string} key - The key to lock.
|
|
28
|
+
* @param {number} time - Time to live, in seconds
|
|
29
|
+
* @returns {Promise<boolean>} A boolean to tell whether it is able to lock the key.
|
|
30
|
+
*/
|
|
31
|
+
lock(key: string, time?: number): Promise<boolean>;
|
|
32
|
+
/**
|
|
33
|
+
* If the key is locked (i.e. key exists in redis), return true, otherwise return false.
|
|
34
|
+
* @param {string} key - the key to check
|
|
35
|
+
* @returns {Promise<boolean>} A boolean to tell whether a key is locked in redis.
|
|
36
|
+
*/
|
|
37
|
+
isLocked(key: string): Promise<boolean>;
|
|
38
|
+
/**
|
|
39
|
+
* It unlocks a key in redis.
|
|
40
|
+
* @param {string} key - The key to unlock.
|
|
41
|
+
*/
|
|
42
|
+
unlock(key: string): Promise<void>;
|
|
43
|
+
}
|
|
44
|
+
declare function createRedisClient(): Promise<RedisClient | null>;
|
|
45
|
+
export { createRedisClient };
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
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.createRedisClient = exports.RedisClient = void 0;
|
|
16
|
+
const ioredis_1 = __importDefault(require("ioredis"));
|
|
17
|
+
const logger_1 = require("../utils/logger/logger");
|
|
18
|
+
const appConst_1 = require("../utils/appConst");
|
|
19
|
+
const appConfig_1 = require("../utils/appConfig");
|
|
20
|
+
const appConfigKeyRetriever_1 = require("../utils/commonUtils/appConfigKeyRetriever");
|
|
21
|
+
/**
|
|
22
|
+
* A wrapper class for Redis client that adds error handling and logging
|
|
23
|
+
*/
|
|
24
|
+
class RedisClient extends ioredis_1.default {
|
|
25
|
+
/**
|
|
26
|
+
* @constructor
|
|
27
|
+
* @param {RedisOptions} options - config options for redis connection
|
|
28
|
+
*/
|
|
29
|
+
constructor(options) {
|
|
30
|
+
super(options);
|
|
31
|
+
// emits immediately right after the connect event.
|
|
32
|
+
this.on("ready", () => {
|
|
33
|
+
logger_1.logger.info(`RedisClient connected, host: ${options.host}, port: ${options.port}`);
|
|
34
|
+
});
|
|
35
|
+
// emits when an error occurs while connecting.
|
|
36
|
+
this.on("error", (err) => {
|
|
37
|
+
logger_1.logger.error(`RedisClient connection error: ${err}`);
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @override It returns the value of the key from the Redis database.
|
|
42
|
+
* @param {string} key - The key to get the value of.
|
|
43
|
+
* @returns {Promise<string | null>} Value of the key.
|
|
44
|
+
*/
|
|
45
|
+
get(key) {
|
|
46
|
+
const _super = Object.create(null, {
|
|
47
|
+
get: { get: () => super.get }
|
|
48
|
+
});
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
logger_1.logger.info("start RedisClient.get");
|
|
51
|
+
try {
|
|
52
|
+
return _super.get.call(this, key);
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
logger_1.logger.warn(`RedisClient/get error: ${err}`);
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* It sets a key-value pair in the Redis cache.
|
|
62
|
+
* @param {string} key - The key to store the value in.
|
|
63
|
+
* @param {any} value - The value for the key
|
|
64
|
+
* @param {number} time - Time to live, in seconds
|
|
65
|
+
* @returns {Promise<boolean>} A boolean to tell whether it is able to set a key in redis.
|
|
66
|
+
*/
|
|
67
|
+
put(key, value, time = appConst_1.commonAppConst.redis.TTLfor5min) {
|
|
68
|
+
const _super = Object.create(null, {
|
|
69
|
+
set: { get: () => super.set }
|
|
70
|
+
});
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
logger_1.logger.info("start RedisClient.put");
|
|
73
|
+
try {
|
|
74
|
+
return Promise.resolve(!!(yield _super.set.call(this, key, value, appConst_1.commonAppConst.redis.expiryMode.inSeconds, time)));
|
|
75
|
+
}
|
|
76
|
+
catch (err) {
|
|
77
|
+
logger_1.logger.warn(`RedisClient/put error: ${err}`);
|
|
78
|
+
return Promise.resolve(false);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* It locks a key in redis with a default TTL of 5 minutes, if possible.
|
|
84
|
+
* @param {string} key - The key to lock.
|
|
85
|
+
* @param {number} time - Time to live, in seconds
|
|
86
|
+
* @returns {Promise<boolean>} A boolean to tell whether it is able to lock the key.
|
|
87
|
+
*/
|
|
88
|
+
lock(key, time = appConst_1.commonAppConst.redis.TTLfor5min) {
|
|
89
|
+
const _super = Object.create(null, {
|
|
90
|
+
set: { get: () => super.set }
|
|
91
|
+
});
|
|
92
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
93
|
+
logger_1.logger.info("start RedisClient.lock");
|
|
94
|
+
try {
|
|
95
|
+
return Promise.resolve(!!(yield _super.set.call(this, key, null, appConst_1.commonAppConst.redis.expiryMode.inSeconds, time, appConst_1.commonAppConst.redis.setMode.setIfNotExist)));
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
logger_1.logger.error(`RedisClient/lock error: ${err}`);
|
|
99
|
+
return Promise.resolve(false);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* If the key is locked (i.e. key exists in redis), return true, otherwise return false.
|
|
105
|
+
* @param {string} key - the key to check
|
|
106
|
+
* @returns {Promise<boolean>} A boolean to tell whether a key is locked in redis.
|
|
107
|
+
*/
|
|
108
|
+
isLocked(key) {
|
|
109
|
+
const _super = Object.create(null, {
|
|
110
|
+
exists: { get: () => super.exists }
|
|
111
|
+
});
|
|
112
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
+
logger_1.logger.info("start RedisClient.isLocked");
|
|
114
|
+
try {
|
|
115
|
+
return !!(yield _super.exists.call(this, key));
|
|
116
|
+
}
|
|
117
|
+
catch (err) {
|
|
118
|
+
logger_1.logger.warn(`RedisClient/isLocked error: ${err}`);
|
|
119
|
+
return Promise.resolve(true);
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* It unlocks a key in redis.
|
|
125
|
+
* @param {string} key - The key to unlock.
|
|
126
|
+
*/
|
|
127
|
+
unlock(key) {
|
|
128
|
+
const _super = Object.create(null, {
|
|
129
|
+
del: { get: () => super.del }
|
|
130
|
+
});
|
|
131
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
132
|
+
logger_1.logger.info("start RedisClient.unlock");
|
|
133
|
+
try {
|
|
134
|
+
yield _super.del.call(this, key);
|
|
135
|
+
}
|
|
136
|
+
catch (err) {
|
|
137
|
+
logger_1.logger.error(`RedisClient/unlock error: ${err}`);
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
exports.RedisClient = RedisClient;
|
|
143
|
+
function createRedisClient() {
|
|
144
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
145
|
+
let redisConnection = yield appConfigKeyRetriever_1.AppConfigKeyRetriever.getRedisConnection();
|
|
146
|
+
// Create the RedisOptions object
|
|
147
|
+
const options = Object.assign({}, JSON.parse(redisConnection));
|
|
148
|
+
// Create and return the RedisClient instance
|
|
149
|
+
return appConfig_1.commonAppConfig.RedisEnable ? new RedisClient(options) : null;
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
exports.createRedisClient = createRedisClient;
|
|
153
|
+
//# sourceMappingURL=redisClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redisClient.js","sourceRoot":"","sources":["../../src/lib/redisClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { MailDataRequired } from '@sendgrid/mail';
|
|
2
|
+
/**
|
|
3
|
+
* A SendGrid client class
|
|
4
|
+
*/
|
|
5
|
+
declare class SendGridClient {
|
|
6
|
+
private mailService;
|
|
7
|
+
/**
|
|
8
|
+
* @constructor
|
|
9
|
+
* @param {string} [apiKey] - SendGrid API key (optional)
|
|
10
|
+
*/
|
|
11
|
+
constructor();
|
|
12
|
+
/**
|
|
13
|
+
* Initializes the SendGrid client with the API key retrieved from Azure Key Vault.
|
|
14
|
+
*/
|
|
15
|
+
private initialize;
|
|
16
|
+
/**
|
|
17
|
+
* It sends an email.
|
|
18
|
+
* @param {string} from - The email address of the sender.
|
|
19
|
+
* @param {string[]} to - string[] - an array of email addresses to send the email to
|
|
20
|
+
* @param {string} subject - The subject of the email
|
|
21
|
+
* @param {string} htmlBodyText - The HTML body of the email.
|
|
22
|
+
* @param {any} [options] - Extra settings for the email
|
|
23
|
+
*/
|
|
24
|
+
send(from: string, to: string[], subject: string, htmlBodyText: string, options?: Partial<MailDataRequired>): Promise<void> | never;
|
|
25
|
+
}
|
|
26
|
+
export declare const sendGridClient: SendGridClient;
|
|
27
|
+
export {};
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
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.sendGridClient = void 0;
|
|
13
|
+
const mail_1 = require("@sendgrid/mail");
|
|
14
|
+
const logger_1 = require("./../utils/logger/logger");
|
|
15
|
+
const appConfigKeyRetriever_1 = require("./../utils/commonUtils/appConfigKeyRetriever");
|
|
16
|
+
const appConfig_1 = require("./../utils/appConfig");
|
|
17
|
+
/**
|
|
18
|
+
* A SendGrid client class
|
|
19
|
+
*/
|
|
20
|
+
class SendGridClient {
|
|
21
|
+
/**
|
|
22
|
+
* @constructor
|
|
23
|
+
* @param {string} [apiKey] - SendGrid API key (optional)
|
|
24
|
+
*/
|
|
25
|
+
constructor() {
|
|
26
|
+
this.mailService = new mail_1.MailService();
|
|
27
|
+
this.initialize();
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Initializes the SendGrid client with the API key retrieved from Azure Key Vault.
|
|
31
|
+
*/
|
|
32
|
+
initialize() {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
const sendGridClientSecret = yield appConfigKeyRetriever_1.AppConfigKeyRetriever.getSendgridClientSecret();
|
|
35
|
+
this.mailService.setApiKey(sendGridClientSecret);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* It sends an email.
|
|
40
|
+
* @param {string} from - The email address of the sender.
|
|
41
|
+
* @param {string[]} to - string[] - an array of email addresses to send the email to
|
|
42
|
+
* @param {string} subject - The subject of the email
|
|
43
|
+
* @param {string} htmlBodyText - The HTML body of the email.
|
|
44
|
+
* @param {any} [options] - Extra settings for the email
|
|
45
|
+
*/
|
|
46
|
+
send(from, to, subject, htmlBodyText, options) {
|
|
47
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
const msg = Object.assign({ from,
|
|
49
|
+
to,
|
|
50
|
+
subject, html: htmlBodyText }, options);
|
|
51
|
+
try {
|
|
52
|
+
yield this.mailService.send(msg);
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
logger_1.logger.error(`SendGridClient/send with error, ${err}`);
|
|
56
|
+
throw err;
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
exports.sendGridClient = appConfig_1.commonAppConfig.SendgridClientSecretKey ? new SendGridClient() : null;
|
|
62
|
+
//# sourceMappingURL=sendGridClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendGridClient.js","sourceRoot":"","sources":["../../src/lib/sendGridClient.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAA+D;AAC/D,qDAAkD;AAClD,wFAAqF;AACrF,oDAAuD;AAEvD;;GAEG;AACH,MAAM,cAAc;IAIhB;;;OAGG;IACH;QACI,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACW,UAAU;;YACpB,MAAM,oBAAoB,GAAG,MAAM,6CAAqB,CAAC,uBAAuB,EAAE,CAAC;YACnF,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACrD,CAAC;KAAA;IAGD;;;;;;;OAOG;IACG,IAAI,CAAC,IAAY,EAAE,EAAY,EAAE,OAAe,EAAE,YAAoB,EAAE,OAAmC;;YAC7G,MAAM,GAAG,mBACL,IAAI;gBACJ,EAAE;gBACF,OAAO,EACP,IAAI,EAAE,YAAY,IACf,OAAO,CACb,CAAC;YAEF,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,eAAM,CAAC,KAAK,CAAC,mCAAmC,GAAG,EAAE,CAAC,CAAC;gBACvD,MAAM,GAAG,CAAC;YACd,CAAC;QACL,CAAC;KAAA;CACJ;AAEY,QAAA,cAAc,GAAG,2BAAe,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LogLevel } from './logMessage';
|
|
2
|
+
/**
|
|
3
|
+
* @description broadcast log message to specific Microsoft Teams channels
|
|
4
|
+
* @param {LogLevel} level - level of the log
|
|
5
|
+
* @param {string} message - log message
|
|
6
|
+
* @returns {void} the function is deposable, thus it won't return any of information
|
|
7
|
+
*/
|
|
8
|
+
export declare function broadcastLogMessage(level: LogLevel, message: string): Promise<void>;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
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.broadcastLogMessage = void 0;
|
|
13
|
+
const loadConfig_1 = require("../../utils/middleware/loadConfig");
|
|
14
|
+
const fetch_1 = require("../fetch");
|
|
15
|
+
/**
|
|
16
|
+
* @description broadcast log message to specific Microsoft Teams channels
|
|
17
|
+
* @param {LogLevel} level - level of the log
|
|
18
|
+
* @param {string} message - log message
|
|
19
|
+
* @returns {void} the function is deposable, thus it won't return any of information
|
|
20
|
+
*/
|
|
21
|
+
function broadcastLogMessage(level, message) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
// we only broadcast two levels of log.
|
|
24
|
+
if (level !== 'error' && level !== 'warn') {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* When the keyVaultName is empty, loadConfig() should be called in order to fetch the value as possible
|
|
29
|
+
* since we are not using lazy-loading here. It would be better to transform into a lazy-loading mechanism.
|
|
30
|
+
*/
|
|
31
|
+
if (loadConfig_1.appConfig === undefined) {
|
|
32
|
+
try {
|
|
33
|
+
yield (0, loadConfig_1.loadConfig)();
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
throw err;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const time = new Date().toISOString();
|
|
40
|
+
const logMessage = {
|
|
41
|
+
level,
|
|
42
|
+
message,
|
|
43
|
+
time,
|
|
44
|
+
environment: loadConfig_1.appConfig.environment,
|
|
45
|
+
appName: loadConfig_1.appConfig.appName,
|
|
46
|
+
version: loadConfig_1.appConfig.version
|
|
47
|
+
};
|
|
48
|
+
const messageCard = (() => {
|
|
49
|
+
return {
|
|
50
|
+
'@type': 'MessageCard',
|
|
51
|
+
'@context': 'http://schema.org/extensions',
|
|
52
|
+
'summary': 'Teams broadcasting of Logs',
|
|
53
|
+
'sections': [{
|
|
54
|
+
'activityTitle': `# ***Service Error Log - ${logMessage.level}***`,
|
|
55
|
+
'facts': [
|
|
56
|
+
{ 'name': 'Time', 'value': logMessage.time },
|
|
57
|
+
{ 'name': 'Environment', 'value': logMessage.environment },
|
|
58
|
+
{ 'name': 'Service', 'value': logMessage.appName },
|
|
59
|
+
{ 'name': 'Version', 'value': logMessage.version },
|
|
60
|
+
{ 'name': 'Message', 'value': logMessage.message }
|
|
61
|
+
],
|
|
62
|
+
'markdown': true
|
|
63
|
+
}],
|
|
64
|
+
'potentialAction': [
|
|
65
|
+
{
|
|
66
|
+
'@type': 'OpenUri',
|
|
67
|
+
'name': 'View Documentation',
|
|
68
|
+
'targets': [{ 'os': 'default', 'uri': '' }]
|
|
69
|
+
}
|
|
70
|
+
]
|
|
71
|
+
};
|
|
72
|
+
})();
|
|
73
|
+
const url = level === 'error' ?
|
|
74
|
+
loadConfig_1.appConfig.telemetry.teamsChannelWebHook.errorChannel
|
|
75
|
+
:
|
|
76
|
+
loadConfig_1.appConfig.telemetry.teamsChannelWebHook.warnChannel;
|
|
77
|
+
yield (0, fetch_1.sendRequestWithTimeout)(url, { method: 'POST', body: JSON.stringify(messageCard) });
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
exports.broadcastLogMessage = broadcastLogMessage;
|
|
81
|
+
//# sourceMappingURL=broadcastLogMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"broadcastLogMessage.js","sourceRoot":"","sources":["../../../src/lib/teams/broadcastLogMessage.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,kEAA0E;AAC1E,oCAAkD;AAGlD;;;;;GAKG;AACH,SAAsB,mBAAmB,CAAC,KAAe,EAAE,OAAe;;QACtE,uCAAuC;QACvC,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAEtD;;;WAGG;QACH,IAAI,sBAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACD,MAAM,IAAA,uBAAU,GAAE,CAAC;YACvB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,MAAM,GAAG,CAAC;YACd,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACtC,MAAM,UAAU,GAAe;YAC3B,KAAK;YACL,OAAO;YACP,IAAI;YACJ,WAAW,EAAE,sBAAS,CAAC,WAAW;YAClC,OAAO,EAAE,sBAAS,CAAC,OAAO;YAC1B,OAAO,EAAE,sBAAS,CAAC,OAAO;SAC7B,CAAC;QAEF,MAAM,WAAW,GAAW,CAAC,GAAW,EAAE;YACtC,OAAO;gBACH,OAAO,EAAE,aAAa;gBACtB,UAAU,EAAE,8BAA8B;gBAC1C,SAAS,EAAE,4BAA4B;gBACvC,UAAU,EAAE,CAAC;wBACT,eAAe,EAAE,4BAA4B,UAAU,CAAC,KAAK,KAAK;wBAClE,OAAO,EAAE;4BACL,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,IAAI,EAAE;4BAC5C,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,CAAC,WAAW,EAAE;4BAC1D,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE;4BAClD,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE;4BAClD,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE;yBACrD;wBACD,UAAU,EAAE,IAAI;qBACnB,CAAC;gBACF,iBAAiB,EAAE;oBACf;wBACI,OAAO,EAAE,SAAS;wBAClB,MAAM,EAAE,oBAAoB;wBAC5B,SAAS,EAAE,CAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,CAAE;qBAChD;iBACJ;aACJ,CAAA;QACL,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,GAAG,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC;YAC3B,sBAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,YAAY;YACpD,CAAC;gBACD,sBAAS,CAAC,SAAS,CAAC,mBAAmB,CAAC,WAAW,CAAC;QAExD,MAAM,IAAA,8BAAsB,EAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;CAAA;AA1DD,kDA0DC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./broadcastLogMessage"), exports);
|
|
18
|
+
__exportStar(require("./logMessage"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/teams/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,+CAA6B"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Environment } from '../../utils';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/**
|
|
4
|
+
* @description we classified the logs into 4 levels and one supporting level:
|
|
5
|
+
* - `verbose`: The most fine-grained information only used in rare cases where
|
|
6
|
+
* you need the full visibility of what is happening in your application
|
|
7
|
+
* and inside the third-party libraries that you use
|
|
8
|
+
* - `info`: The standard log level indicating that something happened;
|
|
9
|
+
* the application entered a certain state. It should be purely informative and
|
|
10
|
+
* not looking into them on a regular basis
|
|
11
|
+
* - `warn`: the log level that indicates that something unexpected happened in
|
|
12
|
+
* the application, a problem, or a situation that might disturb one of the
|
|
13
|
+
* processes. But that doesn’t mean that the application failed
|
|
14
|
+
* - `error`: error, states as `FATAL` in the modern log leveling to alleviate DRY.
|
|
15
|
+
* It tells that the application encountered an event or entered a state in which
|
|
16
|
+
* one of the crucial business functionality is no longer working
|
|
17
|
+
* - `disabled`: supporting enum for disabling the functionality of logger
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```markdown
|
|
21
|
+
* - verbose: annotate each step in the algorithm or each individual query
|
|
22
|
+
* with parameters in your code
|
|
23
|
+
* - info: request of authorization API which states whether a user sign-on success or not
|
|
24
|
+
* - warn`: a parsing error occurred that resulted in a certain document not being processed
|
|
25
|
+
* - error: when the application is not able to connect to a crucial data store like a database
|
|
26
|
+
* or one of the sub-service is unavailable
|
|
27
|
+
* ```
|
|
28
|
+
* @see https://sematext.com/blog/logging-levels/
|
|
29
|
+
*/
|
|
30
|
+
export declare const zLogLevel: z.ZodEnum<["verbose", "info", "warn", "error", "disabled"]>;
|
|
31
|
+
/**
|
|
32
|
+
* @description typedef of `zLogLevel`
|
|
33
|
+
*/
|
|
34
|
+
export type LogLevel = z.infer<typeof zLogLevel>;
|
|
35
|
+
/**
|
|
36
|
+
* @description definition of the context that a log should contains
|
|
37
|
+
* @property {LogLevel} level - log level
|
|
38
|
+
* @property {string} time - when does the log be generated
|
|
39
|
+
* @property {string} appName - the service which generates the logs
|
|
40
|
+
* @property {Environment} environment - log happened in which environment
|
|
41
|
+
* @property {string} message - log message
|
|
42
|
+
* @property {string} version - current app version
|
|
43
|
+
*/
|
|
44
|
+
export type LogMessage = {
|
|
45
|
+
level: LogLevel;
|
|
46
|
+
time: string;
|
|
47
|
+
appName: string;
|
|
48
|
+
environment: Environment;
|
|
49
|
+
message: string;
|
|
50
|
+
version: string;
|
|
51
|
+
};
|