@oneuptime/common 12.0.13 → 12.0.14
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/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +14 -0
- package/Models/DatabaseModels/UserCall.ts +94 -3
- package/Models/DatabaseModels/UserEmail.ts +94 -3
- package/Models/DatabaseModels/UserIncomingCallNumber.ts +94 -3
- package/Models/DatabaseModels/UserPush.ts +37 -0
- package/Models/DatabaseModels/UserSMS.ts +94 -3
- package/Models/DatabaseModels/UserWhatsApp.ts +93 -2
- package/Server/API/BaseAPI.ts +79 -14
- package/Server/API/UserCallAPI.ts +53 -45
- package/Server/API/UserEmailAPI.ts +53 -44
- package/Server/API/UserIncomingCallNumberAPI.ts +48 -38
- package/Server/API/UserNotificationMethodAdminAPI.ts +481 -0
- package/Server/API/UserPushAPI.ts +126 -2
- package/Server/API/UserSmsAPI.ts +53 -44
- package/Server/API/UserWhatsAppAPI.ts +53 -50
- package/Server/Infrastructure/Postgres/SchemaMigrations/1787142779538-MigrationName.ts +154 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1787156982416-MigrationName.ts +17 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1787700000000-FixTotpOtpUrlAlgorithm.ts +45 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +6 -0
- package/Server/Middleware/VerificationCodeRateLimit.ts +586 -0
- package/Server/Services/AnalyticsDatabaseService.ts +169 -0
- package/Server/Services/DatabaseService.ts +101 -0
- package/Server/Services/LogAggregationService.ts +5 -0
- package/Server/Services/PushNotificationService.ts +127 -12
- package/Server/Services/TeamMemberService.ts +53 -13
- package/Server/Services/UserCallService.ts +55 -24
- package/Server/Services/UserEmailService.ts +83 -17
- package/Server/Services/UserIncomingCallNumberService.ts +49 -85
- package/Server/Services/UserNotificationMethodAdminService.ts +1527 -0
- package/Server/Services/UserNotificationRuleService.ts +26 -0
- package/Server/Services/UserPushService.ts +89 -0
- package/Server/Services/UserSmsService.ts +50 -17
- package/Server/Services/UserWhatsAppService.ts +48 -15
- package/Server/Types/Database/QueryHelper.ts +30 -0
- package/Server/Utils/AnalyticsDatabase/QuerySettingsHelper.ts +59 -0
- package/Server/Utils/ChannelVerification.ts +510 -0
- package/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts +13 -16
- package/Server/Utils/Monitor/MonitorAlert.ts +24 -21
- package/Server/Utils/Monitor/MonitorIncident.ts +21 -18
- package/Server/Utils/Monitor/MonitorResourceContext.ts +107 -0
- package/Server/Utils/Monitor/MonitorStepResourceIdentity.ts +442 -0
- package/Server/Utils/Monitor/SeriesResourceLabels.ts +3 -3
- package/Server/Utils/Monitor/SeriesResourceLinker.ts +96 -28
- package/Server/Utils/TotpAuth.ts +137 -9
- package/Server/Utils/UserRegistrationToken.ts +182 -0
- package/Server/Utils/VerificationCode.ts +134 -0
- package/Tests/App/Dashboard/AdminNotificationRulesPage.test.tsx +173 -94
- package/Tests/App/Dashboard/AdminUserNotificationMethodsPage.test.tsx +1151 -0
- package/Tests/App/Dashboard/AdminUserOnCallPages.test.tsx +905 -0
- package/Tests/App/Dashboard/DashboardCommandPalette.test.tsx +338 -0
- package/Tests/App/Dashboard/InvestigationPanel.test.tsx +1 -1
- package/Tests/App/Dashboard/MonitorTypePicker.test.tsx +28 -0
- package/Tests/Models/UserPushCriticalAlertColumn.test.ts +172 -0
- package/Tests/Server/API/BaseAPIGetListParallel.test.ts +519 -0
- package/Tests/Server/API/NotificationChannelVerificationAPI.test.ts +543 -0
- package/Tests/Server/API/UserIncomingCallNumberApi.test.ts +108 -18
- package/Tests/Server/API/UserNotificationMethodAdminAPI.test.ts +963 -0
- package/Tests/Server/API/UserPushCriticalAlertsApi.test.ts +114 -0
- package/Tests/Server/API/UserSmsApi.test.ts +107 -14
- package/Tests/Server/API/UserTotpAuthAPI.test.ts +427 -0
- package/Tests/Server/Infrastructure/Postgres/FixTotpOtpUrlAlgorithmMigration.test.ts +315 -0
- package/Tests/Server/Middleware/VerificationCodeRateLimit.test.ts +775 -0
- package/Tests/Server/Services/AddNetworkDeviceReachabilityColumnsMigration.test.ts +10 -62
- package/Tests/Server/Services/AnalyticsDatabasePaginationStability.test.ts +33 -13
- package/Tests/Server/Services/AnalyticsDatabaseSortKeyBoundary.test.ts +658 -0
- package/Tests/Server/Services/CriticalOnCallAlertDelivery.test.ts +458 -0
- package/Tests/Server/Services/CriticalPushAlertPayload.test.ts +301 -0
- package/Tests/Server/Services/DatabaseServiceAtomicIncrement.test.ts +143 -0
- package/Tests/Server/Services/DeliverNotificationForRuleExtraction.test.ts +1 -0
- package/Tests/Server/Services/LogAggregationScanMemory.test.ts +421 -0
- package/Tests/Server/Services/LogAggregationService.test.ts +2 -2
- package/Tests/Server/Services/NotificationChannelCodeIssuance.test.ts +401 -0
- package/Tests/Server/Services/PushNotificationDeliveryOptions.test.ts +204 -0
- package/Tests/Server/Services/TeamMemberAutoAcceptInvitation.test.ts +21 -1
- package/Tests/Server/Services/TeamMemberInviteRegistrationToken.test.ts +290 -0
- package/Tests/Server/Services/UserNotificationMethodAdminService.test.ts +948 -0
- package/Tests/Server/Services/UserNotificationRuleExecuteItem.test.ts +1 -0
- package/Tests/Server/Services/UserPushCriticalAlertToggle.test.ts +255 -0
- package/Tests/Server/Services/UserTotpAuthEnrolment.test.ts +218 -0
- package/Tests/Server/TestingUtils/AuthenticatorApp.ts +248 -0
- package/Tests/Server/Types/Database/Permissions/NotificationChannelVerificationColumns.test.ts +135 -0
- package/Tests/Server/Types/Database/Permissions/OnCallScheduleRelationSelect.test.ts +504 -0
- package/Tests/Server/Types/Database/QueryHelperFindWithSameTextAnyOf.test.ts +91 -0
- package/Tests/Server/Types/Workflow/Components/JsonToText.test.ts +384 -0
- package/Tests/Server/Types/Workflow/Components/MergeJson.test.ts +403 -0
- package/Tests/Server/Utils/Browser.test.ts +162 -0
- package/Tests/Server/Utils/ChannelVerification.test.ts +689 -0
- package/Tests/Server/Utils/Express.test.ts +371 -0
- package/Tests/Server/Utils/Monitor/Criteria/CustomCodeMonitorCriteria.test.ts +707 -0
- package/Tests/Server/Utils/Monitor/Criteria/DnsMonitorCriteria.test.ts +698 -0
- package/Tests/Server/Utils/Monitor/Criteria/IncomingEmailBodyCriteria.test.ts +243 -0
- package/Tests/Server/Utils/Monitor/Criteria/IncomingRequestBodyCriteria.test.ts +278 -0
- package/Tests/Server/Utils/Monitor/MonitorAlertResourceLinking.test.ts +160 -20
- package/Tests/Server/Utils/Monitor/MonitorDependencySuppressionCreatorSkip.test.ts +13 -8
- package/Tests/Server/Utils/Monitor/MonitorIncidentResourceLinking.test.ts +162 -18
- package/Tests/Server/Utils/Monitor/MonitorResourceContext.test.ts +349 -0
- package/Tests/Server/Utils/Monitor/MonitorStepResourceIdentity.test.ts +690 -0
- package/Tests/Server/Utils/Monitor/MonitorSummaryPersistence.test.ts +7 -2
- package/Tests/Server/Utils/Monitor/SeriesResourceLinker.test.ts +92 -18
- package/Tests/Server/Utils/PushNotificationUtilCreators.test.ts +267 -0
- package/Tests/Server/Utils/Telemetry/OneuptimeLabel.test.ts +439 -0
- package/Tests/Server/Utils/TotpAuth.test.ts +719 -0
- package/Tests/Server/Utils/UserRegistrationToken.test.ts +322 -0
- package/Tests/Server/Utils/VerificationCode.test.ts +296 -0
- package/Tests/Types/AutoRemediation/AutoRemediationSuggestionStatus.test.ts +192 -0
- package/Tests/Types/Call/CallRequest.test.ts +189 -0
- package/Tests/Types/Dashboard/DashboardSize.test.ts +226 -0
- package/Tests/Types/Incident/IncidentSlaStatus.test.ts +191 -0
- package/Tests/Types/Metrics/MetricDashboardMetricType.test.ts +278 -0
- package/Tests/Types/Metrics/MetricPipelineRuleType.test.ts +517 -0
- package/Tests/Types/Monitor/IncomingMonitorDefaultCriteria.test.ts +470 -0
- package/Tests/Types/Monitor/MonitorCriteriaInstance.test.ts +6 -4
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCatalog.test.ts +262 -5
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCoverage.test.ts +1 -1
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +1 -1
- package/Tests/Types/Monitor/ServiceAlertTemplates.test.ts +905 -0
- package/Tests/Types/Service/ServiceLanguage.test.ts +255 -0
- package/Tests/Types/TextRandomGeneration.test.ts +211 -0
- package/Tests/UI/Components/Button.test.tsx +175 -1
- package/Tests/UI/Components/CodeBlockLanguages.test.tsx +236 -0
- package/Tests/UI/Components/CommandPalette/CommandPalette.test.tsx +568 -0
- package/Tests/UI/Components/CommandPalette/CommandPaletteKeyboard.test.tsx +239 -0
- package/Tests/UI/Components/CommandPalette/CommandPaletteProviders.test.tsx +400 -0
- package/Tests/UI/Components/CommandPalette/PaletteFilter.test.ts +234 -0
- package/Tests/UI/Components/CommandPalette/RecentCommands.test.ts +97 -0
- package/Tests/UI/Components/CountModelSideMenuItemGuard.test.tsx +198 -0
- package/Tests/UI/Components/FeedItemSafeMode.test.tsx +1 -1
- package/Tests/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.test.ts +267 -0
- package/Tests/UI/Components/List.test.tsx +9 -2
- package/Tests/UI/Components/ListLoadingStates.test.tsx +173 -0
- package/Tests/UI/Components/MarkdownLazy.test.tsx +113 -0
- package/Tests/UI/Components/MarkdownMermaidRetry.test.tsx +110 -0
- package/Tests/UI/Components/ModelTable/useCustomFieldColumns.test.tsx +8 -0
- package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +692 -0
- package/Tests/UI/Components/MoreMenuMotion.test.tsx +118 -0
- package/Tests/UI/Components/NavBarCommandKGating.test.tsx +178 -0
- package/Tests/UI/Components/OrderedStatesList.test.tsx +19 -2
- package/Tests/UI/Components/SideOverMotion.test.tsx +109 -0
- package/Tests/UI/Components/Skeleton.test.tsx +71 -0
- package/Tests/UI/Components/TableLoadingStates.test.tsx +279 -0
- package/Tests/UI/Components/Tabs.test.tsx +24 -0
- package/Tests/UI/Components/Toast.test.tsx +130 -7
- package/Tests/UI/Components/ToastStacking.test.tsx +198 -0
- package/Tests/UI/Utils/Dropdown.test.ts +423 -0
- package/Tests/UI/Utils/ModelAPITenantHeader.test.ts +122 -0
- package/Tests/UI/Utils/ModelListCache.test.ts +338 -0
- package/Tests/UI/Utils/ProjectListCacheInvalidation.test.ts +225 -0
- package/Tests/Utils/API.test.ts +16 -2
- package/Tests/Utils/Dashboard/Components/DashboardKubernetesResourceListShared.test.ts +347 -0
- package/Tests/Utils/Dashboard/Components/DashboardListSharedArgs.test.ts +259 -0
- package/Tests/Utils/Dashboard/Components/DashboardMonitorListComponent.test.ts +466 -0
- package/Tests/Utils/Rum/UrlScrubberSegments.test.ts +362 -0
- package/Types/Email/EmailTemplateType.ts +1 -0
- package/Types/Monitor/MonitorCriteriaInstance.ts +41 -20
- package/Types/Monitor/Recommendation/MonitorRecommendationCatalog.ts +131 -8
- package/Types/Monitor/Recommendation/MonitorRecommendationTypes.ts +48 -8
- package/Types/Monitor/ServiceAlertTemplates.ts +1352 -0
- package/Types/Permission.ts +35 -0
- package/Types/PushNotification/AndroidNotificationChannel.ts +26 -0
- package/Types/PushNotification/PushNotificationMessage.ts +15 -0
- package/Types/PushNotification/PushNotificationRequest.ts +8 -16
- package/Types/Service/ServiceLanguage.ts +144 -0
- package/Types/Text.ts +111 -19
- package/UI/Components/Button/Button.tsx +27 -14
- package/UI/Components/CodeBlock/CodeBlock.tsx +54 -7
- package/UI/Components/CodeBlock/LanguageRegistry.ts +103 -0
- package/UI/Components/CommandPalette/CommandPalette.tsx +790 -0
- package/UI/Components/CommandPalette/PaletteFilter.ts +196 -0
- package/UI/Components/CommandPalette/PaletteRow.tsx +173 -0
- package/UI/Components/CommandPalette/RecentCommands.ts +57 -0
- package/UI/Components/CommandPalette/Types.ts +49 -0
- package/UI/Components/CommandPalette/UseProviderSearch.ts +129 -0
- package/UI/Components/Dropdown/Dropdown.tsx +6 -1
- package/UI/Components/Feed/FeedItem.tsx +1 -1
- package/UI/Components/List/List.tsx +37 -5
- package/UI/Components/List/ListSkeleton.tsx +54 -0
- package/UI/Components/Markdown.tsx/LazyMarkdownViewer.tsx +6 -1
- package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +71 -26
- package/UI/Components/Modal/Modal.tsx +2 -2
- package/UI/Components/ModelTable/BaseModelTable.tsx +1 -1
- package/UI/Components/ModelTable/useCustomFieldColumns.ts +11 -5
- package/UI/Components/MoreMenu/MoreMenu.tsx +39 -1
- package/UI/Components/Navbar/NavBar.tsx +14 -1
- package/UI/Components/OrderedStatesList/OrderedStatesList.tsx +50 -5
- package/UI/Components/SideMenu/CountModelSideMenuItem.tsx +40 -1
- package/UI/Components/SideOver/SideOver.tsx +37 -2
- package/UI/Components/Skeleton/Skeleton.tsx +53 -0
- package/UI/Components/Table/Table.tsx +74 -44
- package/UI/Components/Table/TableSkeletonRows.tsx +141 -0
- package/UI/Components/Tabs/Tab.tsx +1 -1
- package/UI/Components/Toast/Toast.tsx +118 -53
- package/UI/Components/Toast/ToastInit.tsx +82 -32
- package/UI/Styles/Theme.css +40 -0
- package/UI/Utils/ModelAPI/ModelAPI.ts +20 -10
- package/UI/Utils/ModelListCache.ts +188 -0
- package/UI/Utils/Project.ts +29 -0
- package/Utils/API.ts +6 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +14 -0
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserCall.js +101 -3
- package/build/dist/Models/DatabaseModels/UserCall.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserEmail.js +101 -3
- package/build/dist/Models/DatabaseModels/UserEmail.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserIncomingCallNumber.js +101 -3
- package/build/dist/Models/DatabaseModels/UserIncomingCallNumber.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserPush.js +38 -0
- package/build/dist/Models/DatabaseModels/UserPush.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserSMS.js +101 -3
- package/build/dist/Models/DatabaseModels/UserSMS.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserWhatsApp.js +100 -2
- package/build/dist/Models/DatabaseModels/UserWhatsApp.js.map +1 -1
- package/build/dist/Server/API/BaseAPI.js +69 -13
- package/build/dist/Server/API/BaseAPI.js.map +1 -1
- package/build/dist/Server/API/UserCallAPI.js +42 -38
- package/build/dist/Server/API/UserCallAPI.js.map +1 -1
- package/build/dist/Server/API/UserEmailAPI.js +42 -38
- package/build/dist/Server/API/UserEmailAPI.js.map +1 -1
- package/build/dist/Server/API/UserIncomingCallNumberAPI.js +37 -32
- package/build/dist/Server/API/UserIncomingCallNumberAPI.js.map +1 -1
- package/build/dist/Server/API/UserNotificationMethodAdminAPI.js +341 -0
- package/build/dist/Server/API/UserNotificationMethodAdminAPI.js.map +1 -0
- package/build/dist/Server/API/UserPushAPI.js +95 -2
- package/build/dist/Server/API/UserPushAPI.js.map +1 -1
- package/build/dist/Server/API/UserSmsAPI.js +42 -38
- package/build/dist/Server/API/UserSmsAPI.js.map +1 -1
- package/build/dist/Server/API/UserWhatsAppAPI.js +42 -40
- package/build/dist/Server/API/UserWhatsAppAPI.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787142779538-MigrationName.js +89 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787142779538-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787156982416-MigrationName.js +12 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787156982416-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787700000000-FixTotpOtpUrlAlgorithm.js +40 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787700000000-FixTotpOtpUrlAlgorithm.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +6 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Middleware/VerificationCodeRateLimit.js +393 -0
- package/build/dist/Server/Middleware/VerificationCodeRateLimit.js.map +1 -0
- package/build/dist/Server/Services/AnalyticsDatabaseService.js +136 -0
- package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
- package/build/dist/Server/Services/DatabaseService.js +74 -0
- package/build/dist/Server/Services/DatabaseService.js.map +1 -1
- package/build/dist/Server/Services/LogAggregationService.js +5 -0
- package/build/dist/Server/Services/LogAggregationService.js.map +1 -1
- package/build/dist/Server/Services/PushNotificationService.js +69 -30
- package/build/dist/Server/Services/PushNotificationService.js.map +1 -1
- package/build/dist/Server/Services/TeamMemberService.js +43 -7
- package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
- package/build/dist/Server/Services/UserCallService.js +54 -22
- package/build/dist/Server/Services/UserCallService.js.map +1 -1
- package/build/dist/Server/Services/UserEmailService.js +78 -17
- package/build/dist/Server/Services/UserEmailService.js.map +1 -1
- package/build/dist/Server/Services/UserIncomingCallNumberService.js +45 -74
- package/build/dist/Server/Services/UserIncomingCallNumberService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationMethodAdminService.js +1117 -0
- package/build/dist/Server/Services/UserNotificationMethodAdminService.js.map +1 -0
- package/build/dist/Server/Services/UserNotificationRuleService.js +20 -0
- package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
- package/build/dist/Server/Services/UserPushService.js +77 -0
- package/build/dist/Server/Services/UserPushService.js.map +1 -1
- package/build/dist/Server/Services/UserSmsService.js +50 -17
- package/build/dist/Server/Services/UserSmsService.js.map +1 -1
- package/build/dist/Server/Services/UserWhatsAppService.js +48 -15
- package/build/dist/Server/Services/UserWhatsAppService.js.map +1 -1
- package/build/dist/Server/Types/Database/QueryHelper.js +27 -0
- package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
- package/build/dist/Server/Utils/AnalyticsDatabase/QuerySettingsHelper.js +46 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/QuerySettingsHelper.js.map +1 -1
- package/build/dist/Server/Utils/ChannelVerification.js +348 -0
- package/build/dist/Server/Utils/ChannelVerification.js.map +1 -0
- package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js +13 -12
- package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js +20 -17
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js +17 -14
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorResourceContext.js +95 -0
- package/build/dist/Server/Utils/Monitor/MonitorResourceContext.js.map +1 -0
- package/build/dist/Server/Utils/Monitor/MonitorStepResourceIdentity.js +313 -0
- package/build/dist/Server/Utils/Monitor/MonitorStepResourceIdentity.js.map +1 -0
- package/build/dist/Server/Utils/Monitor/SeriesResourceLabels.js +3 -3
- package/build/dist/Server/Utils/Monitor/SeriesResourceLinker.js +67 -26
- package/build/dist/Server/Utils/Monitor/SeriesResourceLinker.js.map +1 -1
- package/build/dist/Server/Utils/TotpAuth.js +127 -8
- package/build/dist/Server/Utils/TotpAuth.js.map +1 -1
- package/build/dist/Server/Utils/UserRegistrationToken.js +170 -0
- package/build/dist/Server/Utils/UserRegistrationToken.js.map +1 -0
- package/build/dist/Server/Utils/VerificationCode.js +120 -0
- package/build/dist/Server/Utils/VerificationCode.js.map +1 -0
- package/build/dist/Types/Email/EmailTemplateType.js +1 -0
- package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +42 -21
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js +77 -5
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js +18 -6
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js.map +1 -1
- package/build/dist/Types/Monitor/ServiceAlertTemplates.js +1028 -0
- package/build/dist/Types/Monitor/ServiceAlertTemplates.js.map +1 -0
- package/build/dist/Types/Permission.js +33 -0
- package/build/dist/Types/Permission.js.map +1 -1
- package/build/dist/Types/PushNotification/AndroidNotificationChannel.js +27 -0
- package/build/dist/Types/PushNotification/AndroidNotificationChannel.js.map +1 -0
- package/build/dist/Types/Service/ServiceLanguage.js +96 -0
- package/build/dist/Types/Service/ServiceLanguage.js.map +1 -0
- package/build/dist/Types/Text.js +82 -17
- package/build/dist/Types/Text.js.map +1 -1
- package/build/dist/UI/Components/Button/Button.js +22 -14
- package/build/dist/UI/Components/Button/Button.js.map +1 -1
- package/build/dist/UI/Components/CodeBlock/CodeBlock.js +35 -3
- package/build/dist/UI/Components/CodeBlock/CodeBlock.js.map +1 -1
- package/build/dist/UI/Components/CodeBlock/LanguageRegistry.js +57 -0
- package/build/dist/UI/Components/CodeBlock/LanguageRegistry.js.map +1 -0
- package/build/dist/UI/Components/CommandPalette/CommandPalette.js +439 -0
- package/build/dist/UI/Components/CommandPalette/CommandPalette.js.map +1 -0
- package/build/dist/UI/Components/CommandPalette/PaletteFilter.js +135 -0
- package/build/dist/UI/Components/CommandPalette/PaletteFilter.js.map +1 -0
- package/build/dist/UI/Components/CommandPalette/PaletteRow.js +83 -0
- package/build/dist/UI/Components/CommandPalette/PaletteRow.js.map +1 -0
- package/build/dist/UI/Components/CommandPalette/RecentCommands.js +47 -0
- package/build/dist/UI/Components/CommandPalette/RecentCommands.js.map +1 -0
- package/build/dist/UI/Components/CommandPalette/Types.js +2 -0
- package/build/dist/UI/Components/CommandPalette/Types.js.map +1 -0
- package/build/dist/UI/Components/CommandPalette/UseProviderSearch.js +88 -0
- package/build/dist/UI/Components/CommandPalette/UseProviderSearch.js.map +1 -0
- package/build/dist/UI/Components/Dropdown/Dropdown.js +6 -1
- package/build/dist/UI/Components/Dropdown/Dropdown.js.map +1 -1
- package/build/dist/UI/Components/Feed/FeedItem.js +1 -1
- package/build/dist/UI/Components/Feed/FeedItem.js.map +1 -1
- package/build/dist/UI/Components/List/List.js +19 -5
- package/build/dist/UI/Components/List/List.js.map +1 -1
- package/build/dist/UI/Components/List/ListSkeleton.js +21 -0
- package/build/dist/UI/Components/List/ListSkeleton.js.map +1 -0
- package/build/dist/UI/Components/Markdown.tsx/LazyMarkdownViewer.js.map +1 -1
- package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +52 -25
- package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js.map +1 -1
- package/build/dist/UI/Components/Modal/Modal.js +2 -2
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js +1 -1
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
- package/build/dist/UI/Components/ModelTable/useCustomFieldColumns.js +9 -2
- package/build/dist/UI/Components/ModelTable/useCustomFieldColumns.js.map +1 -1
- package/build/dist/UI/Components/MoreMenu/MoreMenu.js +32 -1
- package/build/dist/UI/Components/MoreMenu/MoreMenu.js.map +1 -1
- package/build/dist/UI/Components/Navbar/NavBar.js +5 -1
- package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
- package/build/dist/UI/Components/OrderedStatesList/OrderedStatesList.js +29 -5
- package/build/dist/UI/Components/OrderedStatesList/OrderedStatesList.js.map +1 -1
- package/build/dist/UI/Components/SideMenu/CountModelSideMenuItem.js +23 -1
- package/build/dist/UI/Components/SideMenu/CountModelSideMenuItem.js.map +1 -1
- package/build/dist/UI/Components/SideOver/SideOver.js +23 -2
- package/build/dist/UI/Components/SideOver/SideOver.js.map +1 -1
- package/build/dist/UI/Components/Skeleton/Skeleton.js +23 -0
- package/build/dist/UI/Components/Skeleton/Skeleton.js.map +1 -0
- package/build/dist/UI/Components/Table/Table.js +35 -24
- package/build/dist/UI/Components/Table/Table.js.map +1 -1
- package/build/dist/UI/Components/Table/TableSkeletonRows.js +52 -0
- package/build/dist/UI/Components/Table/TableSkeletonRows.js.map +1 -0
- package/build/dist/UI/Components/Tabs/Tab.js +1 -1
- package/build/dist/UI/Components/Tabs/Tab.js.map +1 -1
- package/build/dist/UI/Components/Toast/Toast.js +77 -23
- package/build/dist/UI/Components/Toast/Toast.js.map +1 -1
- package/build/dist/UI/Components/Toast/ToastInit.js +37 -15
- package/build/dist/UI/Components/Toast/ToastInit.js.map +1 -1
- package/build/dist/UI/Utils/ModelAPI/ModelAPI.js +18 -9
- package/build/dist/UI/Utils/ModelAPI/ModelAPI.js.map +1 -1
- package/build/dist/UI/Utils/ModelListCache.js +126 -0
- package/build/dist/UI/Utils/ModelListCache.js.map +1 -0
- package/build/dist/UI/Utils/Project.js +24 -1
- package/build/dist/UI/Utils/Project.js.map +1 -1
- package/build/dist/Utils/API.js +6 -1
- package/build/dist/Utils/API.js.map +1 -1
- package/jest.config.json +1 -1
- package/package.json +2 -3
- package/Server/Utils/Monitor/MonitorClusterContext.ts +0 -182
- package/Tests/__mocks__/otpauth.js +0 -30
- package/build/dist/Server/Utils/Monitor/MonitorClusterContext.js +0 -141
- package/build/dist/Server/Utils/Monitor/MonitorClusterContext.js.map +0 -1
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
import logger from "./Logger";
|
|
2
|
+
import VerificationCode from "./VerificationCode";
|
|
3
|
+
import BadDataException from "../../Types/Exception/BadDataException";
|
|
4
|
+
/*
|
|
5
|
+
* The ownership check shared by every notification channel a user can add to
|
|
6
|
+
* their own account: email, SMS, voice call, WhatsApp and the incoming-call
|
|
7
|
+
* number. Each of those had its own copy of "compare the column, set
|
|
8
|
+
* isVerified", and each copy had the same three holes.
|
|
9
|
+
*
|
|
10
|
+
* WHAT WAS WRONG
|
|
11
|
+
*
|
|
12
|
+
* The code was a stable six-digit value with no expiry, no attempt counter
|
|
13
|
+
* and no lockout. Nothing stops a caller creating a channel row pointing at
|
|
14
|
+
* SOMEBODY ELSE'S address or number - that is the normal, intended flow, it
|
|
15
|
+
* is how you add your own phone - so an authenticated low-privilege user
|
|
16
|
+
* could add a colleague's number and then walk the whole 10^6 code space
|
|
17
|
+
* against /verify at request speed. A million requests is minutes of
|
|
18
|
+
* scripting, and the code at the end of it was still the same code it was at
|
|
19
|
+
* the start. Success marks the row verified, which creates the default
|
|
20
|
+
* notification rules, which makes the victim's phone a delivery target for
|
|
21
|
+
* whatever that project pages about.
|
|
22
|
+
*
|
|
23
|
+
* WHAT REPLACES IT
|
|
24
|
+
*
|
|
25
|
+
* Four controls, each of which has to be defeated on its own:
|
|
26
|
+
*
|
|
27
|
+
* EXPIRY a code lives 15 minutes, so the search space is not
|
|
28
|
+
* available indefinitely.
|
|
29
|
+
* ATTEMPTS five wrong guesses per issued code, counted with a single
|
|
30
|
+
* atomic UPDATE ... RETURNING so racing requests cannot all
|
|
31
|
+
* read the same pre-increment value and all decide they are
|
|
32
|
+
* under the limit.
|
|
33
|
+
* ROTATION crossing the attempt limit does not merely pause the
|
|
34
|
+
* attacker with the target still valid behind it - the stored
|
|
35
|
+
* challenge is burned. Continuing costs a resend, which
|
|
36
|
+
* notifies the victim.
|
|
37
|
+
* THROTTLE resends are on a cooldown, so "burn the code and get a new
|
|
38
|
+
* one" is not free either, and the victim is not the one who
|
|
39
|
+
* pays for it in unsolicited messages.
|
|
40
|
+
*
|
|
41
|
+
* On top of that the stored value is a keyed digest rather than the code (see
|
|
42
|
+
* VerificationCode.ts) and the routes are rate limited per user, per row and
|
|
43
|
+
* per address (see Middleware/VerificationCodeRateLimit.ts).
|
|
44
|
+
*
|
|
45
|
+
* Together: five guesses per code, a resend needed for the next five, a
|
|
46
|
+
* cooldown on resends, and every resend visible to the person being attacked.
|
|
47
|
+
*/
|
|
48
|
+
const parsePositiveIntFromEnv = (envKey, fallback) => {
|
|
49
|
+
const rawValue = process.env[envKey];
|
|
50
|
+
if (!rawValue) {
|
|
51
|
+
return fallback;
|
|
52
|
+
}
|
|
53
|
+
const parsedValue = parseInt(rawValue, 10);
|
|
54
|
+
if (!Number.isFinite(parsedValue) || parsedValue <= 0) {
|
|
55
|
+
return fallback;
|
|
56
|
+
}
|
|
57
|
+
return parsedValue;
|
|
58
|
+
};
|
|
59
|
+
/*
|
|
60
|
+
* Long enough to survive a slow SMS carrier, an email that lands in a spam
|
|
61
|
+
* folder the user has to go and look in, or a voice call the user missed and
|
|
62
|
+
* had to wait to be repeated. Short enough that the code space is not
|
|
63
|
+
* standing open. Fifteen minutes is the usual figure for exactly this
|
|
64
|
+
* trade-off and is what the notification copy tells the user.
|
|
65
|
+
*/
|
|
66
|
+
export const VERIFICATION_CODE_EXPIRY_MINUTES = parsePositiveIntFromEnv("NOTIFICATION_VERIFICATION_CODE_EXPIRY_MINUTES", 15);
|
|
67
|
+
/*
|
|
68
|
+
* Five is chosen for the human, not the attacker: somebody typing a code off
|
|
69
|
+
* a phone screen will fat-finger it once or twice, and almost never five
|
|
70
|
+
* times. The attacker's number is not five - it is five multiplied by how
|
|
71
|
+
* many resends they are willing to send to their victim's phone, which is the
|
|
72
|
+
* point of the cooldown below.
|
|
73
|
+
*/
|
|
74
|
+
export const MAX_VERIFICATION_ATTEMPTS = parsePositiveIntFromEnv("NOTIFICATION_VERIFICATION_MAX_ATTEMPTS", 5);
|
|
75
|
+
/*
|
|
76
|
+
* A resend both issues a fresh code and, for SMS/call/WhatsApp, spends real
|
|
77
|
+
* money sending it to a real handset. The cooldown is the control on the
|
|
78
|
+
* "burn five guesses, resend, repeat" loop AND on using the resend button as
|
|
79
|
+
* a way to text somebody 200 times.
|
|
80
|
+
*
|
|
81
|
+
* Sixty seconds is the interval a user who did not receive the first message
|
|
82
|
+
* will tolerate, and it caps the loop above at five guesses a minute: roughly
|
|
83
|
+
* 200,000 minutes, or four months of uninterrupted attack with a message
|
|
84
|
+
* landing on the victim's phone every sixty seconds of it, for an even chance
|
|
85
|
+
* of hitting one code.
|
|
86
|
+
*/
|
|
87
|
+
export const RESEND_COOLDOWN_SECONDS = parsePositiveIntFromEnv("NOTIFICATION_VERIFICATION_RESEND_COOLDOWN_SECONDS", 60);
|
|
88
|
+
export var ChannelVerificationOutcome;
|
|
89
|
+
(function (ChannelVerificationOutcome) {
|
|
90
|
+
ChannelVerificationOutcome["Verified"] = "verified";
|
|
91
|
+
ChannelVerificationOutcome["NotFound"] = "not-found";
|
|
92
|
+
ChannelVerificationOutcome["NotOwner"] = "not-owner";
|
|
93
|
+
ChannelVerificationOutcome["AlreadyVerified"] = "already-verified";
|
|
94
|
+
ChannelVerificationOutcome["Expired"] = "expired";
|
|
95
|
+
ChannelVerificationOutcome["TooManyAttempts"] = "too-many-attempts";
|
|
96
|
+
ChannelVerificationOutcome["IncorrectCode"] = "incorrect-code";
|
|
97
|
+
})(ChannelVerificationOutcome || (ChannelVerificationOutcome = {}));
|
|
98
|
+
const asWriter = (service) => {
|
|
99
|
+
return service;
|
|
100
|
+
};
|
|
101
|
+
export default class ChannelVerification {
|
|
102
|
+
/*
|
|
103
|
+
* When a code issued now stops being accepted.
|
|
104
|
+
*/
|
|
105
|
+
static getExpiresAt(now = new Date()) {
|
|
106
|
+
return new Date(now.getTime() + VERIFICATION_CODE_EXPIRY_MINUTES * 60 * 1000);
|
|
107
|
+
}
|
|
108
|
+
/*
|
|
109
|
+
* A missing expiry is treated as expired, NOT as "never expires".
|
|
110
|
+
*
|
|
111
|
+
* That is the direction that matters for the rows written before this
|
|
112
|
+
* column existed: they carry a plaintext code and no expiry, and the
|
|
113
|
+
* conservative reading turns them into "request a new code" rather than
|
|
114
|
+
* leaving a permanently valid challenge in place. The cost is that a user
|
|
115
|
+
* who had an unverified channel across the upgrade has to press resend
|
|
116
|
+
* once.
|
|
117
|
+
*/
|
|
118
|
+
static isCodeExpired(data) {
|
|
119
|
+
if (!data.expiresAt) {
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
const now = data.now || new Date();
|
|
123
|
+
return new Date(data.expiresAt).getTime() <= now.getTime();
|
|
124
|
+
}
|
|
125
|
+
/*
|
|
126
|
+
* Seconds the caller must wait before another code may be sent, or 0 if a
|
|
127
|
+
* send is allowed right now.
|
|
128
|
+
*/
|
|
129
|
+
static getResendRetryAfterSeconds(data) {
|
|
130
|
+
if (!data.lastSentAt) {
|
|
131
|
+
return 0;
|
|
132
|
+
}
|
|
133
|
+
const now = data.now || new Date();
|
|
134
|
+
const elapsedSeconds = (now.getTime() - new Date(data.lastSentAt).getTime()) / 1000;
|
|
135
|
+
/*
|
|
136
|
+
* A lastSentAt in the future means a clock went backwards, not that the
|
|
137
|
+
* caller may send freely. Treat it as a full cooldown.
|
|
138
|
+
*/
|
|
139
|
+
if (elapsedSeconds < 0) {
|
|
140
|
+
return RESEND_COOLDOWN_SECONDS;
|
|
141
|
+
}
|
|
142
|
+
if (elapsedSeconds >= RESEND_COOLDOWN_SECONDS) {
|
|
143
|
+
return 0;
|
|
144
|
+
}
|
|
145
|
+
return Math.max(1, Math.ceil(RESEND_COOLDOWN_SECONDS - elapsedSeconds));
|
|
146
|
+
}
|
|
147
|
+
/*
|
|
148
|
+
* The column values that put a freshly issued code on a row. Returned
|
|
149
|
+
* rather than written so the caller can fold them into whatever write it
|
|
150
|
+
* was already making, and so the plaintext - which exists in memory for
|
|
151
|
+
* exactly as long as it takes to hand it to the notification service -
|
|
152
|
+
* comes back alongside them.
|
|
153
|
+
*/
|
|
154
|
+
static issueCode(data) {
|
|
155
|
+
const now = data.now || new Date();
|
|
156
|
+
const plainCode = VerificationCode.generate();
|
|
157
|
+
return {
|
|
158
|
+
plainCode,
|
|
159
|
+
fields: {
|
|
160
|
+
verificationCode: VerificationCode.hashCode({
|
|
161
|
+
code: plainCode,
|
|
162
|
+
channelId: data.channelId,
|
|
163
|
+
}),
|
|
164
|
+
verificationCodeExpiresAt: ChannelVerification.getExpiresAt(now),
|
|
165
|
+
verificationCodeSentAt: now,
|
|
166
|
+
verificationFailedAttempts: 0,
|
|
167
|
+
},
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
/*
|
|
171
|
+
* The column values that leave a row with NO live challenge on it: a digest
|
|
172
|
+
* no code can produce, and no expiry.
|
|
173
|
+
*
|
|
174
|
+
* `verificationCode` is NOT NULL on every one of these tables, so "there is
|
|
175
|
+
* no code" cannot be written as null. A random 256-bit digest says the same
|
|
176
|
+
* thing and cannot be hit by any of the 10^6 codes.
|
|
177
|
+
*/
|
|
178
|
+
static getClearedCodeFields() {
|
|
179
|
+
return {
|
|
180
|
+
verificationCode: VerificationCode.generateUnusableHash(),
|
|
181
|
+
verificationCodeExpiresAt: null,
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
/*
|
|
185
|
+
* Write a fresh code onto an existing row and return the plaintext to send.
|
|
186
|
+
*
|
|
187
|
+
* Callers must have already decided that a send is allowed - this does not
|
|
188
|
+
* check the cooldown, because whether a resend is permitted is a question
|
|
189
|
+
* about the CHANNEL (already verified? project out of SMS credit?) that
|
|
190
|
+
* only the channel's own service can answer.
|
|
191
|
+
*/
|
|
192
|
+
static async issueCodeOnItem(data) {
|
|
193
|
+
const issued = ChannelVerification.issueCode({ channelId: data.itemId });
|
|
194
|
+
await asWriter(data.service).updateOneById({
|
|
195
|
+
id: data.itemId,
|
|
196
|
+
props: {
|
|
197
|
+
isRoot: true,
|
|
198
|
+
},
|
|
199
|
+
data: issued.fields,
|
|
200
|
+
});
|
|
201
|
+
return issued.plainCode;
|
|
202
|
+
}
|
|
203
|
+
/*
|
|
204
|
+
* Check a submitted code and, if it is right, mark the row verified.
|
|
205
|
+
*
|
|
206
|
+
* The ORDER of the steps is the security-relevant part:
|
|
207
|
+
*
|
|
208
|
+
* ownership first, so one user cannot even probe the state of another
|
|
209
|
+
* user's row;
|
|
210
|
+
*
|
|
211
|
+
* already-verified before the counter, so re-submitting a code against a
|
|
212
|
+
* row that is already done is not a way to burn somebody's attempts;
|
|
213
|
+
*
|
|
214
|
+
* the lockout gate before the counter, so a row whose budget is already
|
|
215
|
+
* spent is refused without growing the counter forever and without a
|
|
216
|
+
* database write per request;
|
|
217
|
+
*
|
|
218
|
+
* expiry before the counter, because an expired code is refused
|
|
219
|
+
* unconditionally and there is no reason to spend a user's remaining
|
|
220
|
+
* attempts telling them so;
|
|
221
|
+
*
|
|
222
|
+
* the counter before the comparison, so every attempt - including the
|
|
223
|
+
* ones racing each other - has already consumed its slot by the time
|
|
224
|
+
* anybody learns whether it was right.
|
|
225
|
+
*
|
|
226
|
+
* The lockout gate reads a value that a concurrent request may already have
|
|
227
|
+
* moved, which is exactly why it is a fast path and not the control. The
|
|
228
|
+
* control is the atomic increment below: N requests that all slip past the
|
|
229
|
+
* stale gate together still receive N DISTINCT attempt numbers, so all but
|
|
230
|
+
* the first MAX_VERIFICATION_ATTEMPTS of them are refused.
|
|
231
|
+
*/
|
|
232
|
+
static async verifyCode(data) {
|
|
233
|
+
var _a;
|
|
234
|
+
const item = await data.service.findOneById({
|
|
235
|
+
id: data.itemId,
|
|
236
|
+
props: {
|
|
237
|
+
isRoot: true,
|
|
238
|
+
},
|
|
239
|
+
select: {
|
|
240
|
+
userId: true,
|
|
241
|
+
projectId: true,
|
|
242
|
+
isVerified: true,
|
|
243
|
+
verificationCode: true,
|
|
244
|
+
verificationCodeExpiresAt: true,
|
|
245
|
+
verificationFailedAttempts: true,
|
|
246
|
+
},
|
|
247
|
+
});
|
|
248
|
+
const writer = asWriter(data.service);
|
|
249
|
+
if (!item) {
|
|
250
|
+
return { outcome: ChannelVerificationOutcome.NotFound };
|
|
251
|
+
}
|
|
252
|
+
if (((_a = item.userId) === null || _a === void 0 ? void 0 : _a.toString()) !== data.userId.toString()) {
|
|
253
|
+
return { outcome: ChannelVerificationOutcome.NotOwner };
|
|
254
|
+
}
|
|
255
|
+
if (item.isVerified) {
|
|
256
|
+
return { outcome: ChannelVerificationOutcome.AlreadyVerified };
|
|
257
|
+
}
|
|
258
|
+
if ((item.verificationFailedAttempts || 0) >= MAX_VERIFICATION_ATTEMPTS) {
|
|
259
|
+
return { outcome: ChannelVerificationOutcome.TooManyAttempts };
|
|
260
|
+
}
|
|
261
|
+
if (ChannelVerification.isCodeExpired({
|
|
262
|
+
expiresAt: item.verificationCodeExpiresAt,
|
|
263
|
+
})) {
|
|
264
|
+
return { outcome: ChannelVerificationOutcome.Expired };
|
|
265
|
+
}
|
|
266
|
+
const attemptNumber = await writer.atomicIncrementColumnValueByOneAndGetValue({
|
|
267
|
+
id: data.itemId,
|
|
268
|
+
columnName: "verificationFailedAttempts",
|
|
269
|
+
});
|
|
270
|
+
/*
|
|
271
|
+
* Only reachable when requests raced past the gate above together. They
|
|
272
|
+
* are refused here rather than being given a comparison, and the request
|
|
273
|
+
* holding attempt number MAX_VERIFICATION_ATTEMPTS still burns the
|
|
274
|
+
* challenge below.
|
|
275
|
+
*/
|
|
276
|
+
if (attemptNumber > MAX_VERIFICATION_ATTEMPTS) {
|
|
277
|
+
return { outcome: ChannelVerificationOutcome.TooManyAttempts };
|
|
278
|
+
}
|
|
279
|
+
const submittedHash = VerificationCode.hashCode({
|
|
280
|
+
code: String(data.code),
|
|
281
|
+
channelId: data.itemId,
|
|
282
|
+
});
|
|
283
|
+
if (!VerificationCode.isHashEqual(submittedHash, item.verificationCode || "")) {
|
|
284
|
+
/*
|
|
285
|
+
* That was the last attempt this code gets, so burn it now rather than
|
|
286
|
+
* leave a spent-but-still-valid challenge on the row. The attacker's
|
|
287
|
+
* next move has to be a resend, which costs them the cooldown and tells
|
|
288
|
+
* the victim what is happening.
|
|
289
|
+
*
|
|
290
|
+
* Done exactly once, on the attempt that exhausts the budget; every
|
|
291
|
+
* later request is turned away by the gate above without a write.
|
|
292
|
+
*/
|
|
293
|
+
if (attemptNumber >= MAX_VERIFICATION_ATTEMPTS) {
|
|
294
|
+
await writer.updateOneById({
|
|
295
|
+
id: data.itemId,
|
|
296
|
+
props: {
|
|
297
|
+
isRoot: true,
|
|
298
|
+
},
|
|
299
|
+
data: ChannelVerification.getClearedCodeFields(),
|
|
300
|
+
});
|
|
301
|
+
logger.warn(`ChannelVerification: attempt limit reached on ${writer.getModel().tableName} ${data.itemId.toString()} for user ${data.userId.toString()}; verification code invalidated`);
|
|
302
|
+
}
|
|
303
|
+
return { outcome: ChannelVerificationOutcome.IncorrectCode };
|
|
304
|
+
}
|
|
305
|
+
/*
|
|
306
|
+
* Correct. Mark verified AND clear the challenge in the same write: a
|
|
307
|
+
* used code must not remain usable, and the attempt counter goes back to
|
|
308
|
+
* zero so a later re-issue (if the row is ever un-verified) starts fresh.
|
|
309
|
+
*/
|
|
310
|
+
await writer.updateOneById({
|
|
311
|
+
id: data.itemId,
|
|
312
|
+
props: {
|
|
313
|
+
isRoot: true,
|
|
314
|
+
},
|
|
315
|
+
data: Object.assign({ isVerified: true, verificationFailedAttempts: 0 }, ChannelVerification.getClearedCodeFields()),
|
|
316
|
+
});
|
|
317
|
+
return {
|
|
318
|
+
outcome: ChannelVerificationOutcome.Verified,
|
|
319
|
+
itemId: data.itemId,
|
|
320
|
+
userId: item.userId,
|
|
321
|
+
projectId: item.projectId,
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
/*
|
|
325
|
+
* The message a failed outcome is reported to the caller with.
|
|
326
|
+
*
|
|
327
|
+
* IncorrectCode and NotFound deliberately do NOT say anything the caller
|
|
328
|
+
* did not already know, and every failure is a plain BadDataException so
|
|
329
|
+
* the shape of the response does not vary with the reason either.
|
|
330
|
+
*/
|
|
331
|
+
static getFailureException(outcome) {
|
|
332
|
+
switch (outcome) {
|
|
333
|
+
case ChannelVerificationOutcome.NotFound:
|
|
334
|
+
return new BadDataException("Item not found");
|
|
335
|
+
case ChannelVerificationOutcome.NotOwner:
|
|
336
|
+
return new BadDataException("Invalid user ID");
|
|
337
|
+
case ChannelVerificationOutcome.AlreadyVerified:
|
|
338
|
+
return new BadDataException("This is already verified");
|
|
339
|
+
case ChannelVerificationOutcome.Expired:
|
|
340
|
+
return new BadDataException("This verification code has expired. Please request a new code.");
|
|
341
|
+
case ChannelVerificationOutcome.TooManyAttempts:
|
|
342
|
+
return new BadDataException("Too many incorrect attempts. This verification code is no longer valid. Please request a new code.");
|
|
343
|
+
default:
|
|
344
|
+
return new BadDataException("Invalid code");
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
//# sourceMappingURL=ChannelVerification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChannelVerification.js","sourceRoot":"","sources":["../../../../Server/Utils/ChannelVerification.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,26 +108,27 @@ export default class IncomingRequestCriteria {
|
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
if (input.criteriaFilter.checkOn === CheckOn.RequestBody) {
|
|
111
|
-
let
|
|
112
|
-
if (
|
|
113
|
-
|
|
114
|
-
}
|
|
115
|
-
if (!responseBody) {
|
|
116
|
-
return null;
|
|
111
|
+
let requestBody = input.dataToProcess.requestBody;
|
|
112
|
+
if (requestBody && typeof requestBody === Typeof.Object) {
|
|
113
|
+
requestBody = JSON.stringify(requestBody);
|
|
117
114
|
}
|
|
115
|
+
/*
|
|
116
|
+
* A request that carried no body is an empty body, not an unknown one.
|
|
117
|
+
* Normalising to "" (the same thing IncomingEmailCriteria does for the
|
|
118
|
+
* email fields) is what lets a "Not Contains" filter match a bodiless
|
|
119
|
+
* heartbeat ping - the default online criteria for this monitor type.
|
|
120
|
+
* "Contains" is unaffected: "" contains nothing.
|
|
121
|
+
*/
|
|
122
|
+
const body = requestBody || "";
|
|
118
123
|
// contains
|
|
119
124
|
if (input.criteriaFilter.filterType === FilterType.Contains) {
|
|
120
|
-
if (value &&
|
|
121
|
-
responseBody &&
|
|
122
|
-
responseBody.includes(value)) {
|
|
125
|
+
if (value && body.includes(value)) {
|
|
123
126
|
return `Request body contains ${value}.`;
|
|
124
127
|
}
|
|
125
128
|
return null;
|
|
126
129
|
}
|
|
127
130
|
if (input.criteriaFilter.filterType === FilterType.NotContains) {
|
|
128
|
-
if (value &&
|
|
129
|
-
responseBody &&
|
|
130
|
-
!responseBody.includes(value)) {
|
|
131
|
+
if (value && !body.includes(value)) {
|
|
131
132
|
return `Request body does not contain ${value}.`;
|
|
132
133
|
}
|
|
133
134
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IncomingRequestCriteria.js","sourceRoot":"","sources":["../../../../../../Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"IncomingRequestCriteria.js","sourceRoot":"","sources":["../../../../../../Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,MAAM,MAAM,uBAAuB,CAAC;AAE3C,OAAO,aAAa,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EACL,OAAO,EAEP,UAAU,GACX,MAAM,0CAA0C,CAAC;AAElD,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAEhD,OAAO,WAAW,MAAM,6BAA6B,CAAC;AAEtD,MAAM,CAAC,OAAO,OAAO,uBAAuB;IAEtB,AAAb,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,KAGtD;QACC,2BAA2B;;QAE3B,MAAM,CAAC,KAAK,CACV,gDAAgD;YAC9C,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,CAC3C,CAAC;QAEF,MAAM,CAAC,KAAK,CACV,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CACnE,CAAC;QAEF,MAAM,CAAC,KAAK,CACV,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CACpE,CAAC;QAEF,IAAI,KAAK,GAAgC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC;QAEpE,IAAI,aAAa,GACf,SAAS,CAAC;QAEZ,IACE,KAAK,CAAC,cAAc,CAAC,gBAAgB;YACrC,KAAK,CAAC,cAAc,CAAC,uBAAuB,EAC5C,CAAC;YACD,IAAI,CAAC;gBACH,aAAa,GAAG,MAAM,gBAAgB,CAAC,gBAAgB,CAAC;oBACtD,SAAS,EAAG,KAAK,CAAC,aAAwC,CAAC,SAAS;oBACpE,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,SAAU;oBACzC,uBAAuB,EAAE,KAAK,CAAC,cAAc,CAAC,uBAAuB;oBACrE,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO;iBACzC,CAAC,CAAC;gBAEH,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/D,aAAa,GAAG,SAAS,CAAC;gBAC5B,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CACV,wCAAwC,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,CACvE,CAAC;gBACF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClB,aAAa,GAAG,SAAS,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtD,MAAM,eAAe,GAClB,aAAgC;gBAChC,KAAK,CAAC,aAAsC,CAAC,QAAQ,CAAC;YAEzD,OAAO,eAAe,CAAC,sBAAsB,CAAC;gBAC5C,KAAK,EAAE,eAAe;gBACtB,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CAAC,CAAC;QACL,CAAC;QAED,WAAW;QACX,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC9D,MAAM,gBAAgB,GACnB,aAAgC;gBAChC,KAAK,CAAC,aAAsC,CAAC,SAAS,CAAC;YAE1D,OAAO,eAAe,CAAC,sBAAsB,CAAC;gBAC5C,KAAK,EAAE,gBAAgB;gBACvB,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CAAC,CAAC;QACL,CAAC;QAED,sCAAsC;QAEtC,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7D,MAAM,CAAC,KAAK,CACV,wCAAwC;gBACtC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,CAC3C,CAAC;YAEF,MAAM,aAAa,GACjB,KAAK,CAAC,aACP,CAAC,yBAAyB,CAAC;YAE5B,MAAM,CAAC,KAAK,CAAC,mBAAmB,GAAG,aAAa,CAAC,CAAC;YAElD,MAAM,mBAAmB,GAAW,aAAa,CAAC,sBAAsB,CACtE,aAAa,EACb,CAAA,MAAC,KAAK,CAAC,aAAwC,0CAAE,SAAS;gBACxD,aAAa,CAAC,cAAc,EAAE,CACjC,CAAC;YAEF,MAAM,CAAC,KAAK,CAAC,yBAAyB,GAAG,mBAAmB,CAAC,CAAC;YAE9D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,OAAO,KAAK,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,KAAK,GAAG,QAAQ,CAAC,KAAe,CAAC,CAAC;gBACpC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAClB,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YAED,IAAI,OAAO,KAAK,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,iBAAiB,EAAE,CAAC;gBACrE,MAAM,CAAC,KAAK,CACV,0CAA0C;oBACxC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,CAC3C,CAAC;gBACF,IAAI,KAAK,IAAI,mBAAmB,IAAK,KAAgB,EAAE,CAAC;oBACtD,MAAM,CAAC,KAAK,CACV,iCAAiC;wBAC/B,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE;wBACxC,UAAU,CACb,CAAC;oBACF,OAAO,4CAA4C,KAAK,6BAA6B,mBAAmB,eAAe,CAAC;gBAC1H,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,oBAAoB,EAAE,CAAC;gBACxE,MAAM,CAAC,KAAK,CACV,6CAA6C;oBAC3C,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,CAC3C,CAAC;gBACF,IAAI,KAAK,IAAI,mBAAmB,GAAI,KAAgB,EAAE,CAAC;oBACrD,MAAM,CAAC,KAAK,CACV,oCAAoC;wBAClC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE;wBACxC,UAAU,CACb,CAAC;oBACF,OAAO,gDAAgD,KAAK,6BAA6B,mBAAmB,eAAe,CAAC;gBAC9H,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;YACzD,IAAI,WAAW,GACb,KAAK,CAAC,aACP,CAAC,WAAW,CAAC;YAEd,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxD,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAC5C,CAAC;YAED;;;;;;eAMG;YACH,MAAM,IAAI,GAAY,WAAkC,IAAI,EAAE,CAAC;YAE/D,WAAW;YACX,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAC5D,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAe,CAAC,EAAE,CAAC;oBAC5C,OAAO,yBAAyB,KAAK,GAAG,CAAC;gBAC3C,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC/D,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAe,CAAC,EAAE,CAAC;oBAC7C,OAAO,iCAAiC,KAAK,GAAG,CAAC;gBACnD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3D,MAAM,UAAU,GAAkB,MAAM,CAAC,IAAI,CAC1C,KAAK,CAAC,aAAwC,CAAC,cAAc,IAAI,EAAE,CACrE,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE;gBACpB,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,WAAW;YACX,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAC5D,IAAI,KAAK,IAAI,UAAU,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAe,CAAC,EAAE,CAAC;oBAChE,OAAO,2BAA2B,KAAK,GAAG,CAAC;gBAC7C,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC/D,IAAI,KAAK,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAe,CAAC,EAAE,CAAC;oBACjE,OAAO,mCAAmC,KAAK,GAAG,CAAC;gBACrD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,cAAc,CAAC,OAAO,KAAK,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAChE,MAAM,YAAY,GAAkB,MAAM,CAAC,MAAM,CAC9C,KAAK,CAAC,aAAwC,CAAC,cAAc,IAAI,EAAE,CACrE,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE;gBACpB,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,WAAW;YACX,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAC5D,IAAI,KAAK,IAAI,YAAY,IAAI,YAAY,CAAC,QAAQ,CAAC,KAAe,CAAC,EAAE,CAAC;oBACpE,OAAO,iCAAiC,KAAK,GAAG,CAAC;gBACnD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC/D,IAAI,KAAK,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAe,CAAC,EAAE,CAAC;oBACrE,OAAO,yCAAyC,KAAK,GAAG,CAAC;gBAC3D,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAjOqB;IADnB,WAAW,EAAE;;;;uEAiOb"}
|
|
@@ -23,7 +23,7 @@ import AlertStateTimelineService from "../../Services/AlertStateTimelineService"
|
|
|
23
23
|
import NetworkDeviceOwnerUserService from "../../Services/NetworkDeviceOwnerUserService";
|
|
24
24
|
import logger from "../Logger";
|
|
25
25
|
import CaptureSpan from "../Telemetry/CaptureSpan";
|
|
26
|
-
import
|
|
26
|
+
import MonitorResourceContextUtil from "./MonitorResourceContext";
|
|
27
27
|
import MonitorTemplateUtil from "./MonitorTemplateUtil";
|
|
28
28
|
import SeriesResourceLinker from "./SeriesResourceLinker";
|
|
29
29
|
import MonitorDependencySuppression from "./MonitorDependencySuppression";
|
|
@@ -198,14 +198,16 @@ export default class MonitorAlert {
|
|
|
198
198
|
return;
|
|
199
199
|
}
|
|
200
200
|
/*
|
|
201
|
-
*
|
|
202
|
-
*
|
|
203
|
-
*
|
|
204
|
-
*
|
|
205
|
-
*
|
|
206
|
-
*
|
|
201
|
+
* Resolve the resources this monitor's own config names — its host,
|
|
202
|
+
* cluster, fleet, telemetry services, or the resource its metric
|
|
203
|
+
* filters scope it to — once per evaluation, so every alert created
|
|
204
|
+
* below is attached to them. Series labels cannot supply this: they
|
|
205
|
+
* only exist for grouped criteria, and most monitors (every shipped
|
|
206
|
+
* Host/Docker/Podman template, all Logs/Traces/Exceptions monitors)
|
|
207
|
+
* are ungrouped. No-op, and no round-trip, for monitor types whose
|
|
208
|
+
* config names no resource.
|
|
207
209
|
*/
|
|
208
|
-
const
|
|
210
|
+
const resourceContext = await MonitorResourceContextUtil.resolveResourceContextForMonitor({
|
|
209
211
|
monitor: input.monitor,
|
|
210
212
|
});
|
|
211
213
|
/*
|
|
@@ -372,20 +374,21 @@ export default class MonitorAlert {
|
|
|
372
374
|
model: alert,
|
|
373
375
|
seriesLabels,
|
|
374
376
|
projectId: input.monitor.projectId,
|
|
377
|
+
monitorType: input.monitor.monitorType,
|
|
375
378
|
});
|
|
376
379
|
}
|
|
377
380
|
/*
|
|
378
|
-
* Deterministic
|
|
379
|
-
*
|
|
380
|
-
*
|
|
381
|
-
*
|
|
382
|
-
*
|
|
383
|
-
*
|
|
384
|
-
*
|
|
381
|
+
* Deterministic resource link from the monitor's step config
|
|
382
|
+
* (resolved once above). For most monitor types this — not the
|
|
383
|
+
* label path above — is what makes the per-resource Activity
|
|
384
|
+
* tabs and badge counts see monitor-created alerts, because
|
|
385
|
+
* their criteria are ungrouped and emit no series labels at
|
|
386
|
+
* all. Runs for both grouped and ungrouped alerts, and merges
|
|
387
|
+
* with whatever the labels resolved.
|
|
385
388
|
*/
|
|
386
|
-
SeriesResourceLinker.
|
|
389
|
+
SeriesResourceLinker.attachResolvedResources({
|
|
387
390
|
model: alert,
|
|
388
|
-
|
|
391
|
+
resolved: resourceContext,
|
|
389
392
|
});
|
|
390
393
|
alert.onCallDutyPolicies =
|
|
391
394
|
((_0 = criteriaAlert.onCallPolicyIds) === null || _0 === void 0 ? void 0 : _0.map((id) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorAlert.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorAlert.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MonitorAlert.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorAlert.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,7 +29,7 @@ import MonitorTemplateUtil from "./MonitorTemplateUtil";
|
|
|
29
29
|
import MonitorDependencySuppression from "./MonitorDependencySuppression";
|
|
30
30
|
import OneUptimeDate from "../../../Types/Date";
|
|
31
31
|
import MonitorSummarySnapshotUtil from "../../../Utils/Monitor/MonitorSummarySnapshotUtil";
|
|
32
|
-
import
|
|
32
|
+
import MonitorResourceContextUtil from "./MonitorResourceContext";
|
|
33
33
|
import SeriesResourceLinker from "./SeriesResourceLinker";
|
|
34
34
|
export default class MonitorIncident {
|
|
35
35
|
static async checkOpenIncidentsAndCloseIfResolved(input) {
|
|
@@ -213,14 +213,16 @@ export default class MonitorIncident {
|
|
|
213
213
|
return;
|
|
214
214
|
}
|
|
215
215
|
/*
|
|
216
|
-
*
|
|
217
|
-
*
|
|
218
|
-
*
|
|
219
|
-
*
|
|
220
|
-
*
|
|
221
|
-
*
|
|
216
|
+
* Resolve the resources this monitor's own config names — its host,
|
|
217
|
+
* cluster, fleet, telemetry services, or the resource its metric
|
|
218
|
+
* filters scope it to — once per evaluation, so every incident
|
|
219
|
+
* created below is attached to them. Series labels cannot supply
|
|
220
|
+
* this: they only exist for grouped criteria, and most monitors
|
|
221
|
+
* (every shipped Host/Docker/Podman template, all Logs/Traces/
|
|
222
|
+
* Exceptions monitors) are ungrouped. No-op, and no round-trip, for
|
|
223
|
+
* monitor types whose config names no resource.
|
|
222
224
|
*/
|
|
223
|
-
const
|
|
225
|
+
const resourceContext = await MonitorResourceContextUtil.resolveResourceContextForMonitor({
|
|
224
226
|
monitor: input.monitor,
|
|
225
227
|
});
|
|
226
228
|
/*
|
|
@@ -437,18 +439,19 @@ export default class MonitorIncident {
|
|
|
437
439
|
model: incident,
|
|
438
440
|
seriesLabels,
|
|
439
441
|
projectId: input.monitor.projectId,
|
|
442
|
+
monitorType: input.monitor.monitorType,
|
|
440
443
|
});
|
|
441
444
|
}
|
|
442
445
|
/*
|
|
443
|
-
* Deterministic
|
|
444
|
-
*
|
|
445
|
-
*
|
|
446
|
-
*
|
|
446
|
+
* Deterministic resource link from the monitor's step config
|
|
447
|
+
* (resolved once above). Runs for both grouped and ungrouped
|
|
448
|
+
* incidents and merges with anything the series-label path
|
|
449
|
+
* resolved, so the per-resource Activity tabs always see
|
|
447
450
|
* monitor-created incidents.
|
|
448
451
|
*/
|
|
449
|
-
SeriesResourceLinker.
|
|
452
|
+
SeriesResourceLinker.attachResolvedResources({
|
|
450
453
|
model: incident,
|
|
451
|
-
|
|
454
|
+
resolved: resourceContext,
|
|
452
455
|
});
|
|
453
456
|
incident.onCallDutyPolicies =
|
|
454
457
|
((_6 = criteriaIncident.onCallPolicyIds) === null || _6 === void 0 ? void 0 : _6.map((id) => {
|