@oneuptime/common 12.0.33 → 12.0.34
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/AnalyticsModels/RumSession.ts +117 -1
- package/Models/AnalyticsModels/RumSessionChunk.ts +13 -0
- package/Models/DatabaseModels/AlertCustomField.ts +77 -3
- package/Models/DatabaseModels/ApiKeyPermission.ts +3 -27
- package/Models/DatabaseModels/IncidentCustomField.ts +77 -3
- package/Models/DatabaseModels/InventoryItemCustomField.ts +77 -3
- package/Models/DatabaseModels/MonitorCustomField.ts +77 -3
- package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +77 -3
- package/Models/DatabaseModels/RumApplication.ts +6 -6
- package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +77 -3
- package/Models/DatabaseModels/StatusPageCustomField.ts +77 -3
- package/Models/DatabaseModels/TeamCustomField.ts +77 -3
- package/Models/DatabaseModels/TeamMember.ts +0 -9
- package/Models/DatabaseModels/TeamMemberCustomField.ts +77 -3
- package/Models/DatabaseModels/TeamPermission.ts +3 -24
- package/Models/DatabaseModels/TelemetryIngestionKey.ts +260 -0
- package/Models/DatabaseModels/UserTelegram.ts +0 -4
- package/Scripts/benchmark-fanin-capacity.js +181 -0
- package/Server/API/TelemetryAPI.ts +1284 -164
- package/Server/API/UserNotificationSettingAPI.ts +55 -0
- package/Server/API/UserTelegramAPI.ts +48 -4
- package/Server/EnvironmentConfig.ts +35 -2
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.ts +91 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.ts +67 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.ts +139 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.ts +121 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
- package/Server/Infrastructure/QueueWorker.ts +20 -14
- package/Server/Infrastructure/Semaphore.ts +2 -0
- package/Server/Middleware/TelemetryIngest.ts +453 -7
- package/Server/Services/AccessTokenService.ts +1 -0
- package/Server/Services/AlertCustomFieldService.ts +98 -0
- package/Server/Services/AlertService.ts +37 -0
- package/Server/Services/ApiKeyPermissionService.ts +461 -29
- package/Server/Services/CustomFieldMappingService.ts +879 -0
- package/Server/Services/GlobalConfigService.ts +194 -0
- package/Server/Services/IncidentCustomFieldService.ts +98 -0
- package/Server/Services/IncidentService.ts +35 -0
- package/Server/Services/MetricService.ts +194 -0
- package/Server/Services/MonitorService.ts +32 -0
- package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +78 -25
- package/Server/Services/ProjectService.ts +22 -0
- package/Server/Services/RoutineEmailSettingsService.ts +73 -0
- package/Server/Services/RumSessionReplayViewService.ts +104 -24
- package/Server/Services/ScheduledMaintenanceCustomFieldService.ts +98 -0
- package/Server/Services/ScheduledMaintenanceService.ts +32 -0
- package/Server/Services/TeamMemberService.ts +78 -0
- package/Server/Services/TeamPermissionService.ts +235 -3
- package/Server/Services/TelemetryIngestionKeyService.ts +722 -19
- package/Server/Services/UserNotificationSettingService.ts +34 -6
- package/Server/Services/UserTelegramService.ts +326 -5
- package/Server/Types/Database/QueryHelper.ts +2 -0
- package/Server/Utils/APIKey/AccessPermission.ts +5 -2
- package/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.ts +54 -0
- package/Server/Utils/CustomField/CustomFieldMappingRegistry.ts +415 -0
- package/Server/Utils/CustomField/CustomFieldMappingValidator.ts +335 -0
- package/Server/Utils/DataSource/EgressGuard.ts +177 -8
- package/Server/Utils/EmailRollup/EmailRollupConstants.ts +38 -5
- package/Server/Utils/EmailRollup/EmailRollupFlushRunner.ts +57 -4
- package/Server/Utils/FrontendEnvironment.ts +40 -0
- package/Server/Utils/LogRedaction.ts +20 -0
- package/Server/Utils/Logger.ts +11 -0
- package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +338 -77
- package/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts +30 -4
- package/Server/Utils/Monitor/MonitorAlert.ts +29 -6
- package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +110 -15
- package/Server/Utils/Monitor/MonitorIncident.ts +22 -6
- package/Server/Utils/Monitor/MonitorTemplateUtil.ts +29 -0
- package/Server/Utils/Monitor/SeriesContextEnricher.ts +304 -0
- package/Server/Utils/SSRFProtection.ts +217 -10
- package/Server/Utils/SessionReplay/SessionReplayGateCache.ts +239 -138
- package/Server/Utils/SessionReplay/SessionReplayHealthCounters.ts +305 -0
- package/Server/Utils/SessionReplay/SessionReplayReadService.ts +1430 -289
- package/Server/Utils/StartServer.ts +2 -17
- package/Server/Utils/TelegramVerificationToken.ts +185 -0
- package/Server/Utils/Telemetry/PinServiceName.ts +197 -0
- package/Server/Utils/Telemetry/TelemetryFanInWriter.ts +38 -16
- package/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.ts +92 -0
- package/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.ts +217 -0
- package/Server/Utils/VM/VMAPI.ts +1 -0
- package/Server/Utils/VM/VMRunner.ts +975 -95
- package/Tests/App/AdminDashboard/AdminHeaderSmallScreens.test.tsx +202 -0
- package/Tests/App/Dashboard/DashboardHeaderSmallScreens.test.tsx +404 -0
- package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +468 -0
- package/Tests/App/Dashboard/NotificationEmailPreferences.test.tsx +399 -0
- package/Tests/App/StatusPage/StatusPageLastUpdated.test.tsx +263 -0
- package/Tests/App/StatusPage/StatusPageOverviewLiveAndSearch.test.tsx +753 -0
- package/Tests/App/StatusPage/StatusPageResourceSearchBox.test.tsx +224 -0
- package/Tests/Models/AnalyticsModels/RumSessionReplayColumns.test.ts +262 -0
- package/Tests/Models/CustomFieldMappingColumns.test.ts +166 -0
- package/Tests/Models/DatabaseModels/SessionReplayModels.test.ts +20 -6
- package/Tests/ResponsiveVisibility.test.ts +115 -0
- package/Tests/ResponsiveVisibility.ts +183 -0
- package/Tests/Server/API/SessionReplayAPI.test.ts +1940 -216
- package/Tests/Server/API/UserNotificationSettingAPI.test.ts +186 -0
- package/Tests/Server/API/UserTelegramAPISecurity.test.ts +231 -0
- package/Tests/Server/EnvironmentConfigFrontendSecurity.test.ts +234 -0
- package/Tests/Server/Infrastructure/Postgres/CustomFieldValueMappingMigration.test.ts +202 -0
- package/Tests/Server/Infrastructure/Postgres/InventoryItemArchiveMigration.test.ts +41 -0
- package/Tests/Server/Infrastructure/Postgres/SessionReplayRecordEverySessionByDefaultMigration.test.ts +169 -0
- package/Tests/Server/Infrastructure/QueueWorkerTimeout.test.ts +210 -0
- package/Tests/Server/Infrastructure/TelemetryExporterDeploymentConfig.test.ts +130 -0
- package/Tests/Server/Middleware/ProjectAuthorizationApiKeyMiddleware.test.ts +4 -1
- package/Tests/Server/Middleware/TelemetryIngestBrowserKey.test.ts +1163 -0
- package/Tests/Server/Middleware/TelemetryIngestTokenLog.test.ts +5 -3
- package/Tests/Server/Services/AddTelemetryIngestionKeyTypeMigration.test.ts +555 -0
- package/Tests/Server/Services/ApiKeyPermissionSecurity.test.ts +678 -0
- package/Tests/Server/Services/ApiKeyPermissionService.test.ts +276 -28
- package/Tests/Server/Services/CustomFieldDropdownOptionsColumnWidth.test.ts +431 -0
- package/Tests/Server/Services/CustomFieldMappingService.test.ts +850 -0
- package/Tests/Server/Services/DiscoveryScanClaimHookFreeSafety.test.ts +32 -0
- package/Tests/Server/Services/GlobalConfigService.test.ts +414 -1
- package/Tests/Server/Services/MetricRawEntityKeyPrune.test.ts +592 -0
- package/Tests/Server/Services/NetworkDeviceAutoImportRuleEngineService.test.ts +226 -1
- package/Tests/Server/Services/RoutineEmailSettingsPostgres.test.ts +329 -0
- package/Tests/Server/Services/RumSessionReplayViewService.test.ts +267 -0
- package/Tests/Server/Services/TeamMemberAutoAcceptInvitation.test.ts +9 -0
- package/Tests/Server/Services/TeamMemberInviteRegistrationToken.test.ts +9 -0
- package/Tests/Server/Services/TeamPrivilegeEscalation.test.ts +834 -0
- package/Tests/Server/Services/TelemetryIngestionKeyPolicyResolution.test.ts +814 -0
- package/Tests/Server/Services/TelemetryIngestionKeyValidation.test.ts +998 -0
- package/Tests/Server/Services/UserNotificationSettingRollupRouting.test.ts +141 -0
- package/Tests/Server/Services/UserNotificationSettingWorkspaceChannels.test.ts +18 -10
- package/Tests/Server/Services/UserTelegramVerificationSecurity.test.ts +688 -0
- package/Tests/Server/Utils/AI/SRE/Insights/FixRouting.test.ts +497 -0
- package/Tests/Server/Utils/AI/Toolbox/Serializer.test.ts +383 -0
- package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +7 -3
- package/Tests/Server/Utils/AnalyticsDatabase/ClusterConfig.test.ts +315 -0
- package/Tests/Server/Utils/CustomField/CustomFieldMappingValidator.test.ts +437 -0
- package/Tests/Server/Utils/DataSource/EgressGuard.test.ts +300 -11
- package/Tests/Server/Utils/EmailRollup/EmailRollupBurstWindow.test.ts +83 -0
- package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerBehaviour.test.ts +1 -1
- package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerPreferences.test.ts +362 -0
- package/Tests/Server/Utils/EmailRollup/EmailRollupTestHarness.ts +77 -1
- package/Tests/Server/Utils/FrontendEnvironment.test.ts +190 -0
- package/Tests/Server/Utils/LogRedaction.test.ts +26 -0
- package/Tests/Server/Utils/LoggerCredentialLeak.test.ts +23 -9
- package/Tests/Server/Utils/Monitor/Criteria/CompareCriteriaAggregation.test.ts +584 -0
- package/Tests/Server/Utils/Monitor/Criteria/IncomingRequestHeaderCriteria.test.ts +236 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluator.test.ts +437 -0
- package/Tests/Server/Utils/Monitor/MonitorTemplateUtilSeriesContext.test.ts +176 -0
- package/Tests/Server/Utils/Monitor/SeriesContextEnricher.test.ts +356 -0
- package/Tests/Server/Utils/SSRFProtectionCloudServiceAddresses.test.ts +595 -0
- package/Tests/Server/Utils/SessionReplay/SessionReplayGateCachePolicy.test.ts +198 -1
- package/Tests/Server/Utils/SessionReplay/SessionReplayHealthCounters.test.ts +453 -0
- package/Tests/Server/Utils/SessionReplay/SessionReplayReadServiceQueries.test.ts +1378 -0
- package/Tests/Server/Utils/SessionReplayOriginAllowListRefactor.test.ts +420 -0
- package/Tests/Server/Utils/TelegramVerificationToken.test.ts +253 -0
- package/Tests/Server/Utils/Telemetry/PinServiceName.test.ts +666 -0
- package/Tests/Server/Utils/Telemetry/TelemetryFanInWriterCapacity.test.ts +458 -0
- package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.test.ts +424 -0
- package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.test.ts +528 -0
- package/Tests/Server/Utils/TelemetryExporterEnvironment.test.ts +56 -0
- package/Tests/Server/Utils/VM/VMRunnerHostBridgeLatency.test.ts +74 -0
- package/Tests/Server/Utils/VM/VMRunnerPrivateNetworkWiring.test.ts +100 -7
- package/Tests/Server/Utils/VM/VMRunnerSsrf.test.ts +1176 -6
- package/Tests/Types/CustomField/CustomFieldMappingCatalog.test.ts +220 -0
- package/Tests/Types/CustomField/CustomFieldValueMapping.test.ts +348 -0
- package/Tests/Types/JSONFunctions.test.ts +260 -0
- package/Tests/Types/Monitor/CephAlertTemplates.test.ts +422 -53
- package/Tests/Types/Monitor/DockerAlertTemplates.test.ts +495 -15
- package/Tests/Types/Monitor/DockerSwarmAlertTemplates.test.ts +191 -45
- package/Tests/Types/Monitor/HostAlertTemplates.test.ts +370 -42
- package/Tests/Types/Monitor/IotAlertTemplates.test.ts +375 -20
- package/Tests/Types/Monitor/KubernetesAlertTemplates.test.ts +636 -42
- package/Tests/Types/Monitor/KubernetesMetricCatalog.test.ts +189 -0
- package/Tests/Types/Monitor/KubernetesTemplateGroupByKeys.test.ts +95 -14
- package/Tests/Types/Monitor/PodmanAlertTemplates.test.ts +190 -21
- package/Tests/Types/Monitor/ProxmoxAlertTemplates.test.ts +352 -22
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationAlertDebuggability.test.ts +363 -0
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +93 -18
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.test.ts +259 -0
- package/Tests/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.test.ts +476 -0
- package/Tests/Types/Monitor/RumAlertTemplates.test.ts +136 -0
- package/Tests/Types/Monitor/SeriesContext/SeriesDebugHints.test.ts +661 -0
- package/Tests/Types/Monitor/SeriesContext/SeriesLabelDisplay.test.ts +507 -0
- package/Tests/Types/Monitor/ServiceAlertTemplates.test.ts +270 -0
- package/Tests/Types/Monitor/TemplateGroupByKeys.test.ts +38 -10
- package/Tests/Types/Monitor/Utils/RecommendationCriteriaAssertions.ts +102 -0
- package/Tests/Types/NotificationSetting/RoutineEmailEvents.test.ts +47 -0
- package/Tests/Types/Rum/SessionReplayApiContracts.test.ts +608 -0
- package/Tests/Types/Rum/SessionReplayCustomEvents.test.ts +434 -0
- package/Tests/Types/WebsiteRequest.test.ts +285 -3
- package/Tests/UI/Components/Charts/ChartBucketIdentity.test.ts +16 -3
- package/Tests/UI/Components/Charts/ChartTrailingBucketGap.test.ts +691 -0
- package/Tests/UI/Components/ComponentsModal.test.tsx +12 -4
- package/Tests/UI/Components/ComponentsModalUsability.test.tsx +518 -0
- package/Tests/UI/Components/CustomFields/CustomFieldsDetailMapping.test.tsx +324 -0
- package/Tests/UI/Components/CustomFields/MapFromCustomFieldInput.test.tsx +176 -0
- package/Tests/UI/Components/Graphs/DayUptimeGraph.test.tsx +484 -0
- package/Tests/UI/Components/HeaderRightRail.test.tsx +157 -0
- package/Tests/UI/Components/IconDropdownItem.test.tsx +102 -0
- package/Tests/UI/Components/JSONTablePrototypePollution.test.tsx +117 -0
- package/Tests/UI/Components/KeyboardShortcutsModal.test.tsx +214 -0
- package/Tests/UI/Components/ModelTable/ModelTableWrapContent.test.tsx +561 -0
- package/Tests/UI/Components/MonitorGraphs/UptimeBarDayModal.test.tsx +302 -0
- package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +28 -12
- package/Tests/UI/Components/ShortcutDialogGuard.test.tsx +74 -0
- package/Tests/UI/Components/StatusPage/ResourceGroupSectionAutoExpand.test.tsx +248 -0
- package/Tests/UI/Components/TableCellWrapping.test.tsx +625 -0
- package/Tests/UI/Components/TableLoadingStates.test.tsx +205 -0
- package/Tests/UI/Components/Workflow/NodePlacement.test.ts +148 -0
- package/Tests/UI/Components/Workflow/Workflow.test.tsx +981 -0
- package/Tests/UI/ConfigBrowserTelemetry.test.ts +70 -0
- package/Tests/UI/Rum/ChunkLoader.test.ts +1036 -2
- package/Tests/UI/Rum/FidelityNotices.test.ts +187 -0
- package/Tests/UI/Rum/InactivityMap.test.ts +341 -0
- package/Tests/UI/Rum/PrivacySummaryCard.test.tsx +259 -0
- package/Tests/UI/Rum/RecordingHealthCard.test.tsx +855 -0
- package/Tests/UI/Rum/RecordingHealthStrip.test.tsx +594 -0
- package/Tests/UI/Rum/ReplayCard.test.tsx +451 -0
- package/Tests/UI/Rum/ReplayCorrelationPanel.test.tsx +536 -0
- package/Tests/UI/Rum/ReplayEngine.test.ts +2503 -0
- package/Tests/UI/Rum/ReplayEngineTypes.test.ts +171 -0
- package/Tests/UI/Rum/ReplayHeader.test.tsx +711 -0
- package/Tests/UI/Rum/ReplayLink.test.tsx +119 -0
- package/Tests/UI/Rum/ReplayPinControl.test.tsx +408 -0
- package/Tests/UI/Rum/ReplayPlaybackIntent.test.ts +152 -0
- package/Tests/UI/Rum/ReplayRail.test.tsx +1296 -0
- package/Tests/UI/Rum/ReplayRailDetail.test.tsx +900 -0
- package/Tests/UI/Rum/ReplayScrubber.test.tsx +763 -147
- package/Tests/UI/Rum/ReplaySignalTypes.test.ts +189 -0
- package/Tests/UI/Rum/ReplaySignals.test.ts +1579 -0
- package/Tests/UI/Rum/ReplayStage.test.tsx +396 -473
- package/Tests/UI/Rum/ReplayStageOverlays.test.tsx +918 -0
- package/Tests/UI/Rum/ReplayTimeline.test.tsx +696 -0
- package/Tests/UI/Rum/SessionReplayEmptyState.test.tsx +499 -0
- package/Tests/UI/Rum/SessionReplaySearchBar.test.tsx +346 -0
- package/Tests/UI/Rum/SessionReplaySetupGuide.test.tsx +545 -0
- package/Tests/UI/Rum/SessionReplayTable.test.tsx +991 -0
- package/Tests/UI/Rum/TargetedCapturePanel.test.tsx +254 -0
- package/Tests/UI/Telemetry/BrowserExporterIsolation.test.ts +71 -0
- package/Tests/UI/Utils/GlobalKeyboardShortcut.test.ts +344 -0
- package/Tests/Utils/API.test.ts +308 -0
- package/Tests/Utils/HTTPResponseBodyReader.test.ts +323 -0
- package/Tests/Utils/NetworkDiscovery/DiscoveryScanStatus.test.ts +117 -0
- package/Tests/Utils/Rum/ChunkMath.test.ts +83 -0
- package/Tests/Utils/Rum/SessionReplayHealthDiagnosis.test.ts +993 -0
- package/Tests/Utils/Rum/SessionReplayStringMap.test.ts +245 -0
- package/Tests/Utils/StatusPage/ResourceSearch.test.ts +631 -0
- package/Tests/Utils/Telemetry/OriginAllowList.test.ts +633 -0
- package/Tests/Utils/Uptime/DayUptimeGraphUtil.test.ts +461 -0
- package/Tests/Utils/ValueFormatter.test.ts +148 -0
- package/Types/CustomField/CustomFieldMappingCatalog.ts +161 -0
- package/Types/CustomField/CustomFieldMappingSourceResource.ts +19 -0
- package/Types/CustomField/CustomFieldValueMapping.ts +288 -0
- package/Types/Icon/IconProp.ts +1 -0
- package/Types/JSONFunctions.ts +189 -43
- package/Types/Monitor/CephAlertTemplates.ts +157 -195
- package/Types/Monitor/DockerAlertTemplates.ts +338 -128
- package/Types/Monitor/DockerSwarmAlertTemplates.ts +95 -112
- package/Types/Monitor/HostAlertTemplates.ts +302 -130
- package/Types/Monitor/IotAlertTemplates.ts +112 -104
- package/Types/Monitor/KubernetesAlertTemplates.ts +415 -224
- package/Types/Monitor/KubernetesMetricCatalog.ts +23 -19
- package/Types/Monitor/PodmanAlertTemplates.ts +116 -163
- package/Types/Monitor/ProxmoxAlertTemplates.ts +217 -99
- package/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.ts +98 -6
- package/Types/Monitor/Recommendation/MonitorRecommendationUtil.ts +44 -7
- package/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.ts +383 -0
- package/Types/Monitor/RumAlertTemplates.ts +46 -7
- package/Types/Monitor/SeriesContext/SeriesDebugHints.ts +596 -0
- package/Types/Monitor/SeriesContext/SeriesLabelDisplay.ts +554 -0
- package/Types/Monitor/ServiceAlertTemplates.ts +98 -11
- package/Types/Monitor/UptimeHistoryLabels.ts +56 -0
- package/Types/NotificationSetting/RoutineEmailEvents.ts +30 -0
- package/Types/Rum/SessionReplay.ts +209 -0
- package/Types/Rum/SessionReplayApi.ts +722 -0
- package/Types/Rum/SessionReplayCaptureTrigger.ts +21 -12
- package/Types/Rum/SessionReplayConsentMode.ts +11 -7
- package/Types/Rum/SessionReplayCustomEvents.ts +549 -0
- package/Types/Rum/SessionReplayHealth.ts +238 -0
- package/Types/Telemetry/TelemetryIngestSurface.ts +95 -0
- package/Types/Telemetry/TelemetryIngestionKeyPolicy.ts +75 -0
- package/Types/Telemetry/TelemetryIngestionKeyType.ts +29 -0
- package/Types/WebsiteRequest.ts +85 -3
- package/UI/Components/Charts/Area/AreaChart.tsx +13 -2
- package/UI/Components/Charts/Bar/BarChart.tsx +6 -2
- package/UI/Components/Charts/Line/LineChart.tsx +13 -2
- package/UI/Components/Charts/Types/XAxis/XAxis.ts +29 -0
- package/UI/Components/Charts/Utils/DataPoint.ts +22 -3
- package/UI/Components/Charts/Utils/TimeAnnotation.ts +76 -9
- package/UI/Components/Charts/Utils/XAxis.ts +217 -0
- package/UI/Components/CustomFields/CustomFieldsDetail.tsx +143 -25
- package/UI/Components/CustomFields/MapFromCustomFieldInput.tsx +216 -0
- package/UI/Components/Graphs/DayUptimeGraph.tsx +173 -8
- package/UI/Components/Graphs/UptimeBarTooltip.tsx +22 -278
- package/UI/Components/Graphs/UptimeDaySummary.tsx +327 -0
- package/UI/Components/Header/Header.tsx +25 -9
- package/UI/Components/Header/IconDropdown/IconDropdownItem.tsx +10 -1
- package/UI/Components/Header/IconDropdown/IconDropdownMenu.tsx +6 -1
- package/UI/Components/Header/ProjectPicker/ProjectPicker.tsx +6 -1
- package/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.tsx +6 -1
- package/UI/Components/Icon/Icon.tsx +11 -0
- package/UI/Components/JSONTable/JSONTable.tsx +2 -2
- package/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.tsx +125 -0
- package/UI/Components/KeyboardShortcut/Screenshots/README.md +19 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-command-palette.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog-dark.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-help-menu.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-narrow.png +0 -0
- package/UI/Components/ModelTable/Column.ts +15 -0
- package/UI/Components/Monitor/SeriesDebugCommandsViewer.tsx +64 -0
- package/UI/Components/Monitor/SeriesLabelsViewer.tsx +93 -0
- package/UI/Components/MonitorGraphs/Uptime.tsx +14 -2
- package/UI/Components/MonitorGraphs/UptimeBarDayModal.tsx +63 -10
- package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +44 -0
- package/UI/Components/StatusPage/ResourceGroupSection.tsx +40 -0
- package/UI/Components/Table/CellClassName.ts +81 -0
- package/UI/Components/Table/TableRow.tsx +20 -14
- package/UI/Components/Table/TableSkeletonRows.tsx +9 -9
- package/UI/Components/Table/Types/Column.ts +36 -0
- package/UI/Components/Tooltip/Tooltip.tsx +11 -1
- package/UI/Components/Workflow/ComponentsModal.tsx +60 -39
- package/UI/Components/Workflow/NodePlacement.ts +57 -0
- package/UI/Components/Workflow/Workflow.tsx +47 -18
- package/UI/Config.ts +15 -33
- package/UI/Utils/GlobalKeyboardShortcut.ts +208 -0
- package/UI/Utils/Telemetry/BrowserTelemetryConfig.ts +28 -0
- package/UI/Utils/Telemetry/Telemetry.ts +10 -8
- package/Utils/API.ts +129 -3
- package/Utils/HTTPResponseBodyReader.ts +221 -0
- package/Utils/NetworkDiscovery/DiscoveryScanStatus.ts +77 -0
- package/Utils/Rum/ChunkMath.ts +106 -0
- package/Utils/Rum/SessionReplayHealth.ts +732 -0
- package/Utils/Rum/SessionReplayStringMap.ts +226 -0
- package/Utils/Schema/ModelSchema.ts +1 -0
- package/Utils/StatusPage/ResourceSearch.ts +290 -0
- package/Utils/Telemetry/OriginAllowList.ts +355 -0
- package/Utils/Uptime/DayUptimeGraphUtil.ts +205 -0
- package/Utils/ValueFormatter.ts +35 -1
- package/build/dist/Models/AnalyticsModels/RumSession.js +102 -19
- package/build/dist/Models/AnalyticsModels/RumSession.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/RumSessionChunk.js +11 -9
- package/build/dist/Models/AnalyticsModels/RumSessionChunk.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ApiKeyPermission.js +3 -27
- package/build/dist/Models/DatabaseModels/ApiKeyPermission.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RumApplication.js +6 -6
- package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/TeamCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamMember.js +0 -9
- package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamPermission.js +3 -24
- package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js +267 -0
- package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserTelegram.js +0 -4
- package/build/dist/Models/DatabaseModels/UserTelegram.js.map +1 -1
- package/build/dist/Server/API/TelemetryAPI.js +769 -109
- package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
- package/build/dist/Server/API/UserNotificationSettingAPI.js +35 -0
- package/build/dist/Server/API/UserNotificationSettingAPI.js.map +1 -0
- package/build/dist/Server/API/UserTelegramAPI.js +28 -6
- package/build/dist/Server/API/UserTelegramAPI.js.map +1 -1
- package/build/dist/Server/EnvironmentConfig.js +29 -2
- package/build/dist/Server/EnvironmentConfig.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js +60 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js +53 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js +82 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js +46 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Infrastructure/QueueWorker.js +19 -7
- package/build/dist/Server/Infrastructure/QueueWorker.js.map +1 -1
- package/build/dist/Server/Infrastructure/Semaphore.js +1 -0
- package/build/dist/Server/Infrastructure/Semaphore.js.map +1 -1
- package/build/dist/Server/Middleware/TelemetryIngest.js +315 -8
- package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
- package/build/dist/Server/Services/AccessTokenService.js +1 -0
- package/build/dist/Server/Services/AccessTokenService.js.map +1 -1
- package/build/dist/Server/Services/AlertCustomFieldService.js +93 -0
- package/build/dist/Server/Services/AlertCustomFieldService.js.map +1 -1
- package/build/dist/Server/Services/AlertService.js +34 -0
- package/build/dist/Server/Services/AlertService.js.map +1 -1
- package/build/dist/Server/Services/ApiKeyPermissionService.js +331 -28
- package/build/dist/Server/Services/ApiKeyPermissionService.js.map +1 -1
- package/build/dist/Server/Services/CustomFieldMappingService.js +614 -0
- package/build/dist/Server/Services/CustomFieldMappingService.js.map +1 -0
- package/build/dist/Server/Services/GlobalConfigService.js +133 -0
- package/build/dist/Server/Services/GlobalConfigService.js.map +1 -1
- package/build/dist/Server/Services/IncidentCustomFieldService.js +93 -0
- package/build/dist/Server/Services/IncidentCustomFieldService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +32 -0
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/MetricService.js +163 -0
- package/build/dist/Server/Services/MetricService.js.map +1 -1
- package/build/dist/Server/Services/MonitorService.js +29 -0
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +79 -27
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ProjectService.js +22 -0
- package/build/dist/Server/Services/ProjectService.js.map +1 -1
- package/build/dist/Server/Services/RoutineEmailSettingsService.js +69 -0
- package/build/dist/Server/Services/RoutineEmailSettingsService.js.map +1 -0
- package/build/dist/Server/Services/RumSessionReplayViewService.js +86 -24
- package/build/dist/Server/Services/RumSessionReplayViewService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js +93 -0
- package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceService.js +29 -0
- package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
- package/build/dist/Server/Services/TeamMemberService.js +62 -2
- package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
- package/build/dist/Server/Services/TeamPermissionService.js +166 -3
- package/build/dist/Server/Services/TeamPermissionService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryIngestionKeyService.js +562 -18
- package/build/dist/Server/Services/TelemetryIngestionKeyService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationSettingService.js +26 -6
- package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
- package/build/dist/Server/Services/UserTelegramService.js +257 -4
- package/build/dist/Server/Services/UserTelegramService.js.map +1 -1
- package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
- package/build/dist/Server/Utils/APIKey/AccessPermission.js +2 -2
- package/build/dist/Server/Utils/APIKey/AccessPermission.js.map +1 -1
- package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js +27 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js.map +1 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js +226 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js.map +1 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js +189 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js.map +1 -0
- package/build/dist/Server/Utils/DataSource/EgressGuard.js +121 -7
- package/build/dist/Server/Utils/DataSource/EgressGuard.js.map +1 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js +38 -5
- package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js.map +1 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js +44 -2
- package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js.map +1 -1
- package/build/dist/Server/Utils/FrontendEnvironment.js +33 -0
- package/build/dist/Server/Utils/FrontendEnvironment.js.map +1 -0
- package/build/dist/Server/Utils/LogRedaction.js +20 -0
- package/build/dist/Server/Utils/LogRedaction.js.map +1 -1
- package/build/dist/Server/Utils/Logger.js +10 -0
- package/build/dist/Server/Utils/Logger.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +287 -68
- package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js +20 -4
- package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js +29 -6
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +88 -13
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js +22 -6
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +22 -0
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js +237 -0
- package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js.map +1 -0
- package/build/dist/Server/Utils/SSRFProtection.js +136 -9
- package/build/dist/Server/Utils/SSRFProtection.js.map +1 -1
- package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js +174 -89
- package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js.map +1 -1
- package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js +223 -0
- package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js.map +1 -0
- package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js +945 -164
- package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js.map +1 -1
- package/build/dist/Server/Utils/StartServer.js +3 -14
- package/build/dist/Server/Utils/StartServer.js.map +1 -1
- package/build/dist/Server/Utils/TelegramVerificationToken.js +129 -0
- package/build/dist/Server/Utils/TelegramVerificationToken.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/PinServiceName.js +163 -0
- package/build/dist/Server/Utils/Telemetry/PinServiceName.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js +28 -15
- package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js +64 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js +171 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js.map +1 -0
- package/build/dist/Server/Utils/VM/VMAPI.js.map +1 -1
- package/build/dist/Server/Utils/VM/VMRunner.js +780 -69
- package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
- package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js +60 -0
- package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js.map +1 -0
- package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js +20 -0
- package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js.map +1 -0
- package/build/dist/Types/CustomField/CustomFieldValueMapping.js +141 -0
- package/build/dist/Types/CustomField/CustomFieldValueMapping.js.map +1 -0
- package/build/dist/Types/Icon/IconProp.js +1 -0
- package/build/dist/Types/Icon/IconProp.js.map +1 -1
- package/build/dist/Types/JSONFunctions.js +118 -37
- package/build/dist/Types/JSONFunctions.js.map +1 -1
- package/build/dist/Types/Monitor/CephAlertTemplates.js +130 -171
- package/build/dist/Types/Monitor/CephAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/DockerAlertTemplates.js +286 -121
- package/build/dist/Types/Monitor/DockerAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js +84 -105
- package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/HostAlertTemplates.js +250 -122
- package/build/dist/Types/Monitor/HostAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/IotAlertTemplates.js +81 -81
- package/build/dist/Types/Monitor/IotAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/KubernetesAlertTemplates.js +375 -215
- package/build/dist/Types/Monitor/KubernetesAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/KubernetesMetricCatalog.js +19 -19
- package/build/dist/Types/Monitor/KubernetesMetricCatalog.js.map +1 -1
- package/build/dist/Types/Monitor/PodmanAlertTemplates.js +104 -153
- package/build/dist/Types/Monitor/PodmanAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js +156 -91
- package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js +67 -6
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js +38 -7
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js +261 -0
- package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js.map +1 -0
- package/build/dist/Types/Monitor/RumAlertTemplates.js +46 -7
- package/build/dist/Types/Monitor/RumAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js +422 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js.map +1 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js +441 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js.map +1 -0
- package/build/dist/Types/Monitor/ServiceAlertTemplates.js +79 -15
- package/build/dist/Types/Monitor/ServiceAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/UptimeHistoryLabels.js +17 -0
- package/build/dist/Types/Monitor/UptimeHistoryLabels.js.map +1 -0
- package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js +29 -0
- package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js.map +1 -0
- package/build/dist/Types/Rum/SessionReplay.js +117 -0
- package/build/dist/Types/Rum/SessionReplay.js.map +1 -1
- package/build/dist/Types/Rum/SessionReplayApi.js +181 -0
- package/build/dist/Types/Rum/SessionReplayApi.js.map +1 -0
- package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js +21 -12
- package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js.map +1 -1
- package/build/dist/Types/Rum/SessionReplayConsentMode.js +11 -7
- package/build/dist/Types/Rum/SessionReplayConsentMode.js.map +1 -1
- package/build/dist/Types/Rum/SessionReplayCustomEvents.js +172 -0
- package/build/dist/Types/Rum/SessionReplayCustomEvents.js.map +1 -0
- package/build/dist/Types/Rum/SessionReplayHealth.js +37 -0
- package/build/dist/Types/Rum/SessionReplayHealth.js.map +1 -0
- package/build/dist/Types/Telemetry/TelemetryIngestSurface.js +85 -0
- package/build/dist/Types/Telemetry/TelemetryIngestSurface.js.map +1 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js +15 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js.map +1 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js +30 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js.map +1 -0
- package/build/dist/Types/WebsiteRequest.js +55 -3
- package/build/dist/Types/WebsiteRequest.js.map +1 -1
- package/build/dist/UI/Components/Charts/Area/AreaChart.js +13 -2
- package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/Bar/BarChart.js +6 -2
- package/build/dist/UI/Components/Charts/Bar/BarChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/Line/LineChart.js +13 -2
- package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/Types/XAxis/XAxis.js.map +1 -1
- package/build/dist/UI/Components/Charts/Utils/DataPoint.js +15 -3
- package/build/dist/UI/Components/Charts/Utils/DataPoint.js.map +1 -1
- package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js +40 -9
- package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js.map +1 -1
- package/build/dist/UI/Components/Charts/Utils/XAxis.js +186 -0
- package/build/dist/UI/Components/Charts/Utils/XAxis.js.map +1 -1
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +80 -6
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
- package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js +118 -0
- package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js.map +1 -0
- package/build/dist/UI/Components/Graphs/DayUptimeGraph.js +112 -7
- package/build/dist/UI/Components/Graphs/DayUptimeGraph.js.map +1 -1
- package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js +5 -162
- package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js.map +1 -1
- package/build/dist/UI/Components/Graphs/UptimeDaySummary.js +181 -0
- package/build/dist/UI/Components/Graphs/UptimeDaySummary.js.map +1 -0
- package/build/dist/UI/Components/Header/Header.js +2 -3
- package/build/dist/UI/Components/Header/Header.js.map +1 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js +2 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js.map +1 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js +7 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js.map +1 -1
- package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js +7 -1
- package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js.map +1 -1
- package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js +7 -1
- package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js.map +1 -1
- package/build/dist/UI/Components/Icon/Icon.js +5 -0
- package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
- package/build/dist/UI/Components/JSONTable/JSONTable.js +2 -2
- package/build/dist/UI/Components/JSONTable/JSONTable.js.map +1 -1
- package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js +35 -0
- package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js.map +1 -0
- package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js +34 -0
- package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js.map +1 -0
- package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js +49 -0
- package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js.map +1 -0
- package/build/dist/UI/Components/MonitorGraphs/Uptime.js +1 -1
- package/build/dist/UI/Components/MonitorGraphs/Uptime.js.map +1 -1
- package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js +32 -6
- package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js.map +1 -1
- package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +38 -0
- package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
- package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js +22 -1
- package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js.map +1 -1
- package/build/dist/UI/Components/Table/CellClassName.js +55 -0
- package/build/dist/UI/Components/Table/CellClassName.js.map +1 -0
- package/build/dist/UI/Components/Table/TableRow.js +16 -13
- package/build/dist/UI/Components/Table/TableRow.js.map +1 -1
- package/build/dist/UI/Components/Table/TableSkeletonRows.js +9 -8
- package/build/dist/UI/Components/Table/TableSkeletonRows.js.map +1 -1
- package/build/dist/UI/Components/Tooltip/Tooltip.js +25 -1
- package/build/dist/UI/Components/Tooltip/Tooltip.js.map +1 -1
- package/build/dist/UI/Components/Workflow/ComponentsModal.js +47 -30
- package/build/dist/UI/Components/Workflow/ComponentsModal.js.map +1 -1
- package/build/dist/UI/Components/Workflow/NodePlacement.js +37 -0
- package/build/dist/UI/Components/Workflow/NodePlacement.js.map +1 -0
- package/build/dist/UI/Components/Workflow/Workflow.js +35 -18
- package/build/dist/UI/Components/Workflow/Workflow.js.map +1 -1
- package/build/dist/UI/Config.js +10 -20
- package/build/dist/UI/Config.js.map +1 -1
- package/build/dist/UI/Utils/GlobalKeyboardShortcut.js +138 -0
- package/build/dist/UI/Utils/GlobalKeyboardShortcut.js.map +1 -0
- package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js +14 -0
- package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js.map +1 -0
- package/build/dist/UI/Utils/Telemetry/Telemetry.js +7 -5
- package/build/dist/UI/Utils/Telemetry/Telemetry.js.map +1 -1
- package/build/dist/Utils/API.js +67 -5
- package/build/dist/Utils/API.js.map +1 -1
- package/build/dist/Utils/HTTPResponseBodyReader.js +157 -0
- package/build/dist/Utils/HTTPResponseBodyReader.js.map +1 -0
- package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js +69 -0
- package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js.map +1 -0
- package/build/dist/Utils/Rum/ChunkMath.js +76 -0
- package/build/dist/Utils/Rum/ChunkMath.js.map +1 -1
- package/build/dist/Utils/Rum/SessionReplayHealth.js +534 -0
- package/build/dist/Utils/Rum/SessionReplayHealth.js.map +1 -0
- package/build/dist/Utils/Rum/SessionReplayStringMap.js +165 -0
- package/build/dist/Utils/Rum/SessionReplayStringMap.js.map +1 -0
- package/build/dist/Utils/Schema/ModelSchema.js +1 -0
- package/build/dist/Utils/Schema/ModelSchema.js.map +1 -1
- package/build/dist/Utils/StatusPage/ResourceSearch.js +200 -0
- package/build/dist/Utils/StatusPage/ResourceSearch.js.map +1 -0
- package/build/dist/Utils/Telemetry/OriginAllowList.js +299 -0
- package/build/dist/Utils/Telemetry/OriginAllowList.js.map +1 -0
- package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js +147 -0
- package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js.map +1 -0
- package/build/dist/Utils/ValueFormatter.js +32 -1
- package/build/dist/Utils/ValueFormatter.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Sanitising of the small string maps a host page hands the recorder:
|
|
3
|
+
* identify() traits, setTags()/addTag() tags and track() properties.
|
|
4
|
+
*
|
|
5
|
+
* Isomorphic on purpose. The recorder bundle imports this file through
|
|
6
|
+
* esbuild and runs it on third-party pages, and the ingest worker runs the
|
|
7
|
+
* SAME function over the same bytes at the same caps. One implementation
|
|
8
|
+
* on both sides is what makes "the server keeps exactly what the client
|
|
9
|
+
* sent" true rather than hoped for, so nothing here may touch Node, the
|
|
10
|
+
* DOM, or anything outside plain ECMAScript.
|
|
11
|
+
*
|
|
12
|
+
* Two rules the whole file serves:
|
|
13
|
+
* 1. Never throw. This runs inside a customer's page on values the page
|
|
14
|
+
* author typed; a recorder that takes the host page down over a bad
|
|
15
|
+
* tag is a worse bug than any tag.
|
|
16
|
+
* 2. Be deterministic. Insertion order is preserved and every cap is
|
|
17
|
+
* applied the same way every time, so the recorder's copy, the
|
|
18
|
+
* header row and the list cell all show the same map.
|
|
19
|
+
*/
|
|
20
|
+
/*
|
|
21
|
+
* Assigning through this key on a plain object rewrites its prototype
|
|
22
|
+
* instead of adding a property, so a page calling
|
|
23
|
+
* setTags({ __proto__: ... }) would otherwise hand us an object whose
|
|
24
|
+
* later reads fall through to attacker-chosen defaults.
|
|
25
|
+
*/
|
|
26
|
+
const PROTOTYPE_KEY = "__proto__";
|
|
27
|
+
function truncate(value, maxLength) {
|
|
28
|
+
if (maxLength <= 0) {
|
|
29
|
+
return "";
|
|
30
|
+
}
|
|
31
|
+
return value.length > maxLength ? value.slice(0, maxLength) : value;
|
|
32
|
+
}
|
|
33
|
+
/*
|
|
34
|
+
* The only value types accepted, stringified the way a page author would
|
|
35
|
+
* expect. Anything else (objects, arrays, functions, symbols, null,
|
|
36
|
+
* undefined, NaN and the infinities) is dropped rather than rendered as
|
|
37
|
+
* "[object Object]" or "NaN": a value nobody can search for is not a tag.
|
|
38
|
+
*/
|
|
39
|
+
function stringifyValue(value) {
|
|
40
|
+
if (typeof value === "string") {
|
|
41
|
+
return value;
|
|
42
|
+
}
|
|
43
|
+
if (typeof value === "number") {
|
|
44
|
+
return Number.isFinite(value) ? String(value) : null;
|
|
45
|
+
}
|
|
46
|
+
if (typeof value === "boolean") {
|
|
47
|
+
return value ? "true" : "false";
|
|
48
|
+
}
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
/*
|
|
52
|
+
* Own, enumerable string keys in insertion order, or null when the input
|
|
53
|
+
* is not a usable object. Wrapped because Object.keys can throw on an
|
|
54
|
+
* exotic object (a revoked Proxy), and rule 1 says we do not.
|
|
55
|
+
*/
|
|
56
|
+
function readOwnKeys(input) {
|
|
57
|
+
if (input === null || typeof input !== "object") {
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
/*
|
|
61
|
+
* Array.isArray itself throws on a revoked Proxy ("Cannot perform
|
|
62
|
+
* 'IsArray' on a proxy that has been revoked"), so it sits inside the
|
|
63
|
+
* guard too.
|
|
64
|
+
*/
|
|
65
|
+
try {
|
|
66
|
+
if (Array.isArray(input)) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
return Object.keys(input);
|
|
70
|
+
}
|
|
71
|
+
catch (_a) {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
/*
|
|
76
|
+
* True when the value already has the shape this module produces: a plain
|
|
77
|
+
* object whose every value is a string. Used as the type guard for the
|
|
78
|
+
* tags / traits / properties fields on custom-event payloads that cross
|
|
79
|
+
* the wire, where "shaped like a map" is the minimum worth trusting.
|
|
80
|
+
*/
|
|
81
|
+
export function isSessionReplayStringMap(value) {
|
|
82
|
+
const keys = readOwnKeys(value);
|
|
83
|
+
if (keys === null) {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
const record = value;
|
|
87
|
+
return keys.every((key) => {
|
|
88
|
+
return typeof record[key] === "string";
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
/*
|
|
92
|
+
* Coerce an untrusted value into a bounded Record<string, string>.
|
|
93
|
+
*
|
|
94
|
+
* - Non-objects, arrays and null yield {}.
|
|
95
|
+
* - Keys are truncated to maxKeyLength; a key that is empty (before or
|
|
96
|
+
* after truncation) is dropped, and a truncated key that collides with
|
|
97
|
+
* an earlier one overwrites it, which is what a plain object would do.
|
|
98
|
+
* - Values are accepted when string, finite number or boolean and are
|
|
99
|
+
* stringified then truncated to maxValueLength. Anything else is dropped
|
|
100
|
+
* with its key.
|
|
101
|
+
* - Once maxKeys distinct keys are kept, further NEW keys are dropped;
|
|
102
|
+
* a repeated key still overwrites, so the count never exceeds the cap.
|
|
103
|
+
* - Insertion order is the input's own key order.
|
|
104
|
+
*/
|
|
105
|
+
export function sanitizeSessionReplayStringMap(input, limits) {
|
|
106
|
+
const result = {};
|
|
107
|
+
const keys = readOwnKeys(input);
|
|
108
|
+
if (keys === null) {
|
|
109
|
+
return result;
|
|
110
|
+
}
|
|
111
|
+
const record = input;
|
|
112
|
+
let keptCount = 0;
|
|
113
|
+
for (const rawKey of keys) {
|
|
114
|
+
const key = truncate(rawKey, limits.maxKeyLength);
|
|
115
|
+
if (key.length === 0 || key === PROTOTYPE_KEY) {
|
|
116
|
+
continue;
|
|
117
|
+
}
|
|
118
|
+
let stringValue;
|
|
119
|
+
try {
|
|
120
|
+
stringValue = stringifyValue(record[rawKey]);
|
|
121
|
+
}
|
|
122
|
+
catch (_a) {
|
|
123
|
+
/* A throwing getter is the page's problem, not the recorder's. */
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
if (stringValue === null) {
|
|
127
|
+
continue;
|
|
128
|
+
}
|
|
129
|
+
const isNewKey = !Object.prototype.hasOwnProperty.call(result, key);
|
|
130
|
+
if (isNewKey && keptCount >= limits.maxKeys) {
|
|
131
|
+
continue;
|
|
132
|
+
}
|
|
133
|
+
result[key] = truncate(stringValue, limits.maxValueLength);
|
|
134
|
+
if (isNewKey) {
|
|
135
|
+
keptCount++;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return result;
|
|
139
|
+
}
|
|
140
|
+
/*
|
|
141
|
+
* The addTag()/setTags() merge: entries in `patch` overwrite entries in
|
|
142
|
+
* `base`; both sides are sanitised first so a stale or oversized base can
|
|
143
|
+
* never leak past the caps. When the union would exceed maxKeys, the
|
|
144
|
+
* EXISTING keys win and the patch's surplus new keys are dropped: a page
|
|
145
|
+
* that keeps adding tags past the cap gets a stable map rather than one
|
|
146
|
+
* whose oldest entries silently rotate away, and the same rule on the
|
|
147
|
+
* server keeps the header identical to what the recorder held.
|
|
148
|
+
*/
|
|
149
|
+
export function mergeSessionReplayStringMaps(base, patch, limits) {
|
|
150
|
+
const merged = sanitizeSessionReplayStringMap(base, limits);
|
|
151
|
+
const sanitizedPatch = sanitizeSessionReplayStringMap(patch, limits);
|
|
152
|
+
let keptCount = Object.keys(merged).length;
|
|
153
|
+
for (const key of Object.keys(sanitizedPatch)) {
|
|
154
|
+
const isNewKey = !Object.prototype.hasOwnProperty.call(merged, key);
|
|
155
|
+
if (isNewKey && keptCount >= limits.maxKeys) {
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
merged[key] = sanitizedPatch[key];
|
|
159
|
+
if (isNewKey) {
|
|
160
|
+
keptCount++;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return merged;
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=SessionReplayStringMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionReplayStringMap.js","sourceRoot":"","sources":["../../../../Utils/Rum/SessionReplayStringMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1528,6 +1528,7 @@ export class ModelSchema extends BaseSchema {
|
|
|
1528
1528
|
case TableColumnType.ShortText:
|
|
1529
1529
|
return this.getShortTextExample();
|
|
1530
1530
|
case TableColumnType.LongText:
|
|
1531
|
+
case TableColumnType.VeryLongText:
|
|
1531
1532
|
return this.getLongTextExample();
|
|
1532
1533
|
case TableColumnType.Email:
|
|
1533
1534
|
return "user@example.com";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelSchema.js","sourceRoot":"","sources":["../../../../Utils/Schema/ModelSchema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModelSchema.js","sourceRoot":"","sources":["../../../../Utils/Schema/ModelSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import StatusPageGroupTreeUtil from "./GroupTree";
|
|
2
|
+
/*
|
|
3
|
+
* Finding one service on a status page.
|
|
4
|
+
*
|
|
5
|
+
* A page with a few hundred resources spread over a nested group hierarchy has
|
|
6
|
+
* no way to answer "is the thing I use up?" other than opening groups one at a
|
|
7
|
+
* time and reading. This filters the page down to what a visitor typed.
|
|
8
|
+
*
|
|
9
|
+
* Two rules make it behave the way people expect rather than the way a naive
|
|
10
|
+
* substring filter would:
|
|
11
|
+
*
|
|
12
|
+
* - Typing a group's name keeps that whole group, including everything
|
|
13
|
+
* nested under it. Searching "Europe" is asking about a region, not about
|
|
14
|
+
* a service that happens to have Europe in its name.
|
|
15
|
+
* - A group is kept when anything in its subtree matched, and so is every
|
|
16
|
+
* group above it. Otherwise a match nested three levels deep would have
|
|
17
|
+
* nowhere to render.
|
|
18
|
+
*
|
|
19
|
+
* Pure and index-driven: one pass to match, one walk up per matched group. The
|
|
20
|
+
* overview calls this on every keystroke against lists that reach four figures.
|
|
21
|
+
*/
|
|
22
|
+
class StatusPageResourceSearchUtil {
|
|
23
|
+
static shouldShowSearch(data) {
|
|
24
|
+
return (data.resourceCount >= this.MinimumResourcesForSearch ||
|
|
25
|
+
data.groupCount >= this.MinimumGroupsForSearch);
|
|
26
|
+
}
|
|
27
|
+
static normalizeQuery(query) {
|
|
28
|
+
return (query || "").trim().toLowerCase();
|
|
29
|
+
}
|
|
30
|
+
static matches(data) {
|
|
31
|
+
if (!data.haystack) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
return data.haystack.toLowerCase().includes(data.needle);
|
|
35
|
+
}
|
|
36
|
+
static getResourceText(resource) {
|
|
37
|
+
var _a;
|
|
38
|
+
return [
|
|
39
|
+
resource.displayName,
|
|
40
|
+
resource.displayDescription,
|
|
41
|
+
(_a = resource.monitor) === null || _a === void 0 ? void 0 : _a.name,
|
|
42
|
+
];
|
|
43
|
+
}
|
|
44
|
+
static search(data) {
|
|
45
|
+
var _a, _b, _c;
|
|
46
|
+
const needle = this.normalizeQuery(data.query);
|
|
47
|
+
const totalResourceCount = data.statusPageResources.length;
|
|
48
|
+
if (!needle) {
|
|
49
|
+
return {
|
|
50
|
+
isActive: false,
|
|
51
|
+
matchedResourceIds: new Set(),
|
|
52
|
+
matchedResourceCount: totalResourceCount,
|
|
53
|
+
totalResourceCount: totalResourceCount,
|
|
54
|
+
visibleGroupIds: new Set(),
|
|
55
|
+
hasUngroupedMatches: true,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
const index = data.statusPageGroupTreeIndex ||
|
|
59
|
+
StatusPageGroupTreeUtil.buildIndex({
|
|
60
|
+
statusPageGroups: data.statusPageGroups,
|
|
61
|
+
});
|
|
62
|
+
/*
|
|
63
|
+
* Groups whose own name or description matched. Everything below one of
|
|
64
|
+
* these is kept wholesale.
|
|
65
|
+
*/
|
|
66
|
+
const directlyMatchedGroupIds = new Set();
|
|
67
|
+
for (const group of data.statusPageGroups) {
|
|
68
|
+
const groupId = (_a = group._id) === null || _a === void 0 ? void 0 : _a.toString();
|
|
69
|
+
if (!groupId) {
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
if (this.matches({ haystack: group.name, needle: needle }) ||
|
|
73
|
+
this.matches({ haystack: group.description, needle: needle })) {
|
|
74
|
+
directlyMatchedGroupIds.add(groupId);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/*
|
|
78
|
+
* A group is "inside a matched group" when it or any ancestor matched by
|
|
79
|
+
* name. Walking up is bounded by a visited set - a parent pointer written
|
|
80
|
+
* straight to the database can form a cycle, and this must not hang the
|
|
81
|
+
* page (see GroupTree, which is defensive about exactly this).
|
|
82
|
+
*/
|
|
83
|
+
const isInsideMatchedGroup = (groupId) => {
|
|
84
|
+
let currentId = groupId;
|
|
85
|
+
const seen = new Set();
|
|
86
|
+
while (currentId) {
|
|
87
|
+
if (seen.has(currentId)) {
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
seen.add(currentId);
|
|
91
|
+
if (directlyMatchedGroupIds.has(currentId)) {
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
const group = index.byId.get(currentId);
|
|
95
|
+
if (!group) {
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
currentId = StatusPageGroupTreeUtil.getParentId(group);
|
|
99
|
+
}
|
|
100
|
+
return false;
|
|
101
|
+
};
|
|
102
|
+
const matchedResourceIds = new Set();
|
|
103
|
+
const groupIdsHoldingMatches = new Set();
|
|
104
|
+
let hasUngroupedMatches = false;
|
|
105
|
+
for (const resource of data.statusPageResources) {
|
|
106
|
+
const resourceId = (_b = resource._id) === null || _b === void 0 ? void 0 : _b.toString();
|
|
107
|
+
const groupId = ((_c = resource.statusPageGroupId) === null || _c === void 0 ? void 0 : _c.toString()) || null;
|
|
108
|
+
const matchedByOwnText = this.getResourceText(resource).some((text) => {
|
|
109
|
+
return this.matches({ haystack: text, needle: needle });
|
|
110
|
+
});
|
|
111
|
+
const isMatch = matchedByOwnText || isInsideMatchedGroup(groupId);
|
|
112
|
+
if (!isMatch) {
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
if (resourceId) {
|
|
116
|
+
matchedResourceIds.add(resourceId);
|
|
117
|
+
}
|
|
118
|
+
if (groupId) {
|
|
119
|
+
groupIdsHoldingMatches.add(groupId);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
hasUngroupedMatches = true;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/*
|
|
126
|
+
* Every group holding a match, plus its ancestors. A group that matched by
|
|
127
|
+
* name is kept even when it turns out to hold nothing - it is a real
|
|
128
|
+
* answer to what was typed, and hiding it would read as "no such group".
|
|
129
|
+
*/
|
|
130
|
+
const visibleGroupIds = new Set();
|
|
131
|
+
const keepWithAncestors = (groupId) => {
|
|
132
|
+
let currentId = groupId;
|
|
133
|
+
const seen = new Set();
|
|
134
|
+
while (currentId) {
|
|
135
|
+
if (seen.has(currentId)) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
seen.add(currentId);
|
|
139
|
+
visibleGroupIds.add(currentId);
|
|
140
|
+
const group = index.byId.get(currentId);
|
|
141
|
+
if (!group) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
currentId = StatusPageGroupTreeUtil.getParentId(group);
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
for (const groupId of groupIdsHoldingMatches) {
|
|
148
|
+
keepWithAncestors(groupId);
|
|
149
|
+
}
|
|
150
|
+
for (const groupId of directlyMatchedGroupIds) {
|
|
151
|
+
keepWithAncestors(groupId);
|
|
152
|
+
}
|
|
153
|
+
return {
|
|
154
|
+
isActive: true,
|
|
155
|
+
matchedResourceIds: matchedResourceIds,
|
|
156
|
+
matchedResourceCount: matchedResourceIds.size,
|
|
157
|
+
totalResourceCount: totalResourceCount,
|
|
158
|
+
visibleGroupIds: visibleGroupIds,
|
|
159
|
+
hasUngroupedMatches: hasUngroupedMatches,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
/* Whether one resource survives a result. */
|
|
163
|
+
static isResourceVisible(data) {
|
|
164
|
+
var _a;
|
|
165
|
+
if (!data.result.isActive) {
|
|
166
|
+
return true;
|
|
167
|
+
}
|
|
168
|
+
const resourceId = (_a = data.resource._id) === null || _a === void 0 ? void 0 : _a.toString();
|
|
169
|
+
if (!resourceId) {
|
|
170
|
+
/*
|
|
171
|
+
* A resource with no id of its own cannot be in the matched set, and
|
|
172
|
+
* showing it under every query would be worse than dropping it from a
|
|
173
|
+
* filtered view - the visitor asked a question and this is not an
|
|
174
|
+
* answer to it.
|
|
175
|
+
*/
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
return data.result.matchedResourceIds.has(resourceId);
|
|
179
|
+
}
|
|
180
|
+
/* Whether one group is still drawn under a result. */
|
|
181
|
+
static isGroupVisible(data) {
|
|
182
|
+
var _a;
|
|
183
|
+
if (!data.result.isActive) {
|
|
184
|
+
return true;
|
|
185
|
+
}
|
|
186
|
+
const groupId = (_a = data.statusPageGroup._id) === null || _a === void 0 ? void 0 : _a.toString();
|
|
187
|
+
if (!groupId) {
|
|
188
|
+
return false;
|
|
189
|
+
}
|
|
190
|
+
return data.result.visibleGroupIds.has(groupId);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/*
|
|
194
|
+
* Below this the box is clutter - you can see the whole page at once, and a
|
|
195
|
+
* search field over three rows reads as a mistake.
|
|
196
|
+
*/
|
|
197
|
+
StatusPageResourceSearchUtil.MinimumResourcesForSearch = 8;
|
|
198
|
+
StatusPageResourceSearchUtil.MinimumGroupsForSearch = 3;
|
|
199
|
+
export default StatusPageResourceSearchUtil;
|
|
200
|
+
//# sourceMappingURL=ResourceSearch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceSearch.js","sourceRoot":"","sources":["../../../../Utils/StatusPage/ResourceSearch.ts"],"names":[],"mappings":"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"}
|