diff --git a/injected/src/features/breakage-reporting/utils.js b/injected/src/features/breakage-reporting/utils.js index aa7f9e66a7..bec25b5c6e 100644 --- a/injected/src/features/breakage-reporting/utils.js +++ b/injected/src/features/breakage-reporting/utils.js @@ -64,7 +64,7 @@ function waitForLCP(timeoutMs = 500) { * Get the expanded performance metrics * @returns {Promise} */ -export async function getExpandedPerformanceMetrics() { +export async function getExpandedPerformanceMetrics(timeoutMs = 500) { try { if (document.readyState !== 'complete') { return returnError('Document not ready'); @@ -80,7 +80,7 @@ export async function getExpandedPerformanceMetrics() { // Get largest contentful paint if available let largestContentfulPaint = null; if (PerformanceObserver.supportedEntryTypes.includes('largest-contentful-paint')) { - largestContentfulPaint = await waitForLCP(); + largestContentfulPaint = await waitForLCP(timeoutMs); } // Calculate total resource sizes diff --git a/injected/src/features/performance-metrics.js b/injected/src/features/performance-metrics.js index 251b140d39..89ecd62e5e 100644 --- a/injected/src/features/performance-metrics.js +++ b/injected/src/features/performance-metrics.js @@ -39,7 +39,8 @@ export default class PerformanceMetrics extends ContentFeature { } async triggerExpandedPerformanceMetrics() { - const expandedPerformanceMetrics = await getExpandedPerformanceMetrics(); + const permissableDelayMs = this.getFeatureSetting('expandedTimeoutMs') ?? 5000; + const expandedPerformanceMetrics = await getExpandedPerformanceMetrics(permissableDelayMs); this.messaging.notify('expandedPerformanceMetricsResult', expandedPerformanceMetrics); } }