From 8b39546de01167d6cd7417a850a2499c0023ea2f Mon Sep 17 00:00:00 2001 From: Rares Mardare Date: Thu, 29 Feb 2024 10:41:44 +0200 Subject: [PATCH] Update faro package to 1.3.9 (#3970) # What this PR does Related to https://github.com/grafana/oncall/issues/3902 ## Which issue(s) this PR fixes ## Checklist - [ ] Unit, integration, and e2e (if applicable) tests updated - [ ] Documentation added (or `pr:no public docs` PR label added if not required) - [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not required) --- CHANGELOG.md | 1 + grafana-plugin/package.json | 5 +- grafana-plugin/src/network/network.ts | 5 - .../network/oncall-api/http-client.test.ts | 3 - .../src/network/oncall-api/http-client.ts | 5 - grafana-plugin/src/utils/faro.test.tsx | 6 - grafana-plugin/src/utils/faro.ts | 34 +- grafana-plugin/yarn.lock | 320 ++++++++++-------- 8 files changed, 207 insertions(+), 172 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a3db06ec..f164abd0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Change plugin build to use new packages instead of deprecated grafana-toolkit @maskin25 ([#3837](https://github.com/grafana/oncall/pull/3837)) - Remove explicit uWSGI and Django request size limits by @vadimkerr ([#3878](https://github.com/grafana/oncall/pull/3878)) - Migrate webhooks integration_filter to use a m2m field instead ([#3946](https://github.com/grafana/oncall/pull/3946)) +- Updated Faro package version ([#3970](https://github.com/grafana/oncall/pull/3970)) ### Fixed diff --git a/grafana-plugin/package.json b/grafana-plugin/package.json index 6417ea7e..4a47d008 100644 --- a/grafana-plugin/package.json +++ b/grafana-plugin/package.json @@ -126,15 +126,14 @@ "@dnd-kit/utilities": "^3.2.1", "@emotion/css": "11.10.6", "@grafana/data": "^10.2.3", - "@grafana/faro-web-sdk": "^1.0.0-beta4", - "@grafana/faro-web-tracing": "^1.0.0-beta4", + "@grafana/faro-web-sdk": "^1.3.9", + "@grafana/faro-web-tracing": "^1.3.9", "@grafana/labels": "1.5.0", "@grafana/runtime": "^10.2.2", "@grafana/scenes": "^1.28.0", "@grafana/schema": "^10.2.2", "@grafana/ui": "^10.2.0", "@lifeomic/attempt": "^3.0.3", - "@opentelemetry/api": "^1.3.0", "array-move": "^4.0.0", "axios": "^1.6.7", "babel-loader": "^9.1.3", diff --git a/grafana-plugin/src/network/network.ts b/grafana-plugin/src/network/network.ts index b47b2007..1c1e0f3d 100644 --- a/grafana-plugin/src/network/network.ts +++ b/grafana-plugin/src/network/network.ts @@ -1,5 +1,3 @@ -import { SpanStatusCode } from '@opentelemetry/api'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; import axios from 'axios'; import qs from 'query-string'; @@ -53,8 +51,6 @@ export const makeRequest = async (path: string, config: RequestConfig) if (!span) { span = tracer.startSpan('http-request'); span.setAttribute('page_url', document.URL.split('//')[1]); - span.setAttribute(SemanticAttributes.HTTP_URL, url); - span.setAttribute(SemanticAttributes.HTTP_METHOD, method); } return new Promise((resolve, reject) => { @@ -88,7 +84,6 @@ export const makeRequest = async (path: string, config: RequestConfig) .catch((ex) => { FaroHelper.faro.api.pushEvent('Request failed', { url }); FaroHelper.faro.api.pushError(ex); - span.setStatus({ code: SpanStatusCode.ERROR }); span.end(); reject(ex); }); diff --git a/grafana-plugin/src/network/oncall-api/http-client.test.ts b/grafana-plugin/src/network/oncall-api/http-client.test.ts index 0cdccc8a..d7e315a7 100644 --- a/grafana-plugin/src/network/oncall-api/http-client.test.ts +++ b/grafana-plugin/src/network/oncall-api/http-client.test.ts @@ -1,5 +1,3 @@ -import { SpanStatusCode } from '@opentelemetry/api'; - import { FaroHelper } from 'utils/faro'; import { getCustomFetchFn } from './http-client'; @@ -119,7 +117,6 @@ describe('customFetch', () => { expect(FaroHelper.faro.api.pushEvent).toHaveBeenCalledWith('Request failed', { url: URL }); expect(FaroHelper.faro.api.pushError).toHaveBeenCalledWith(ERROR_MOCK); expect(setStatusMock).toHaveBeenCalledTimes(1); - expect(setStatusMock).toHaveBeenCalledWith({ code: SpanStatusCode.ERROR }); expect(spanEndMock).toHaveBeenCalledTimes(1); }); }); diff --git a/grafana-plugin/src/network/oncall-api/http-client.ts b/grafana-plugin/src/network/oncall-api/http-client.ts index b105d4d7..4d5b4a20 100644 --- a/grafana-plugin/src/network/oncall-api/http-client.ts +++ b/grafana-plugin/src/network/oncall-api/http-client.ts @@ -1,5 +1,3 @@ -import { SpanStatusCode } from '@opentelemetry/api'; -import { SemanticAttributes } from '@opentelemetry/semantic-conventions'; import createClient from 'openapi-fetch'; import qs from 'query-string'; @@ -48,8 +46,6 @@ export const getCustomFetchFn = if (!span) { span = tracer.startSpan('http-request'); span.setAttribute('page_url', document.URL.split('//')[1]); - span.setAttribute(SemanticAttributes.HTTP_URL, url); - span.setAttribute(SemanticAttributes.HTTP_METHOD, requestConfig.method); } return new Promise((resolve, reject) => { @@ -66,7 +62,6 @@ export const getCustomFetchFn = const errorData = await res.json(); faro.api.pushEvent('Request failed', { url }); faro.api.pushError(errorData); - span.setStatus({ code: SpanStatusCode.ERROR }); span.end(); if (withGlobalErrorHandler) { showApiError(res); diff --git a/grafana-plugin/src/utils/faro.test.tsx b/grafana-plugin/src/utils/faro.test.tsx index 5957e410..e40e371f 100644 --- a/grafana-plugin/src/utils/faro.test.tsx +++ b/grafana-plugin/src/utils/faro.test.tsx @@ -20,12 +20,6 @@ jest.mock('@grafana/faro-web-sdk', () => ({ jest.mock('@grafana/faro-web-tracing', () => ({ TracingInstrumentation: jest.fn(), })); -jest.mock('@opentelemetry/instrumentation-document-load', () => ({ - DocumentLoadInstrumentation: jest.fn(), -})); -jest.mock('@opentelemetry/instrumentation-fetch', () => ({ - FetchInstrumentation: jest.fn(), -})); describe('Faro', () => { beforeEach(() => { diff --git a/grafana-plugin/src/utils/faro.ts b/grafana-plugin/src/utils/faro.ts index c5275938..b40e7f81 100644 --- a/grafana-plugin/src/utils/faro.ts +++ b/grafana-plugin/src/utils/faro.ts @@ -1,9 +1,13 @@ -import { Faro, initializeFaro, getWebInstrumentations } from '@grafana/faro-web-sdk'; -import { TracingInstrumentation } from '@grafana/faro-web-tracing'; -import { DocumentLoadInstrumentation } from '@opentelemetry/instrumentation-document-load'; -import { FetchInstrumentation } from '@opentelemetry/instrumentation-fetch'; -import { UserInteractionInstrumentation } from '@opentelemetry/instrumentation-user-interaction'; -import { XMLHttpRequestInstrumentation } from '@opentelemetry/instrumentation-xml-http-request'; +import { + Faro, + initializeFaro, + ErrorsInstrumentation, + WebVitalsInstrumentation, + ConsoleInstrumentation, + LogLevel, + SessionInstrumentation, + InternalLoggerLevel, +} from '@grafana/faro-web-sdk'; import plugin from '../../package.json'; // eslint-disable-line import { @@ -15,8 +19,6 @@ import { ONCALL_PROD, } from './consts'; -const IGNORE_URLS = [/^((?!\/{0,1}a\/grafana\-oncall\-app\\).)*$/]; - export function getAppNameUrlPair(onCallApiUrl: string): { appName: string; url: string } { const baseName = 'grafana-oncall'; @@ -47,18 +49,14 @@ class BaseFaroHelper { url: url, isolate: true, instrumentations: [ - ...getWebInstrumentations({ - captureConsole: true, - }), - new TracingInstrumentation({ - instrumentations: [ - new DocumentLoadInstrumentation(), - new FetchInstrumentation({ ignoreUrls: IGNORE_URLS }), - new XMLHttpRequestInstrumentation({}), - new UserInteractionInstrumentation(), - ], + new ErrorsInstrumentation(), + new WebVitalsInstrumentation(), + new ConsoleInstrumentation({ + disabledLevels: [LogLevel.TRACE, LogLevel.ERROR], }), + new SessionInstrumentation(), ], + internalLoggerLevel: InternalLoggerLevel.VERBOSE, session: (window as any).__PRELOADED_STATE__?.faro?.session, app: { name: appName, diff --git a/grafana-plugin/yarn.lock b/grafana-plugin/yarn.lock index b96f245d..8804319a 100644 --- a/grafana-plugin/yarn.lock +++ b/grafana-plugin/yarn.lock @@ -1120,15 +1120,6 @@ eslint-plugin-react-hooks "4.6.0" typescript "4.8.4" -"@grafana/faro-core@^1.0.0-beta4": - version "1.0.0-beta4" - resolved "https://registry.yarnpkg.com/@grafana/faro-core/-/faro-core-1.0.0-beta4.tgz#2f38e18764c0a3c3f1af889d510a2896bcb742ab" - integrity sha512-tB7705aYCByw4CNWt3WNoV39+sZCudBMiStmiEKHzM17VRRLBjPcrMQTkVYu4zMkEAdWMuAdYhT3xjzHlQpXIA== - dependencies: - "@opentelemetry/api" "^1.3.0" - "@opentelemetry/api-metrics" "^0.33.0" - "@opentelemetry/otlp-transformer" "^0.34.0" - "@grafana/faro-core@^1.1.0": version "1.2.1" resolved "https://registry.yarnpkg.com/@grafana/faro-core/-/faro-core-1.2.1.tgz#a95fd1376a928917f855068f101d356db067a0f4" @@ -1149,6 +1140,14 @@ "@opentelemetry/otlp-transformer" "^0.41.2" murmurhash-js "^1.0.0" +"@grafana/faro-core@^1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@grafana/faro-core/-/faro-core-1.3.9.tgz#69d7c4239c3507028eb7a6f21f1213278b11194a" + integrity sha512-zBghaYNKwMwiyErUYEYbx/E/HTdy3tFS7Oy+1f5CiIi5+iUSYidgeQqKdd4vKB1EtDn1MI5iA2dXBavxLNYGlg== + dependencies: + "@opentelemetry/api" "^1.7.0" + "@opentelemetry/otlp-transformer" "^0.48.0" + "@grafana/faro-web-sdk@1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@grafana/faro-web-sdk/-/faro-web-sdk-1.1.0.tgz#19428ee513521f1fd9d23ca021956f97aa6dde16" @@ -1167,35 +1166,33 @@ ua-parser-js "^1.0.32" web-vitals "^3.1.1" -"@grafana/faro-web-sdk@^1.0.0-beta4": - version "1.0.0-beta4" - resolved "https://registry.yarnpkg.com/@grafana/faro-web-sdk/-/faro-web-sdk-1.0.0-beta4.tgz#de9ec9b1201b4f02e3746f31dc0e7a3f77df47b3" - integrity sha512-yEBprcLn+L4zy/qYwrTEoSRpdbiN29EnesHlonYP5rj+K1G9CU+Oa0BL7PyS1oTEYZ2xOOv/gGYjiyi3PX9PEg== +"@grafana/faro-web-sdk@^1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@grafana/faro-web-sdk/-/faro-web-sdk-1.3.9.tgz#ebf8c645cbcc3a22e31a89d0e7e94f9d09f88c5f" + integrity sha512-lrUhzITfgpEtOP4I/HbhIh0UCTNpcAWveFN7bzdCJ/N/G3YULd6jXBuBoHcC25Fx3WtLChljzJ5IJ02HTA2Q9g== dependencies: - "@grafana/faro-core" "^1.0.0-beta4" + "@grafana/faro-core" "^1.3.9" ua-parser-js "^1.0.32" - web-vitals "^3.1.0" + web-vitals "^3.1.1" -"@grafana/faro-web-tracing@^1.0.0-beta4": - version "1.0.0-beta5" - resolved "https://registry.yarnpkg.com/@grafana/faro-web-tracing/-/faro-web-tracing-1.0.0-beta5.tgz#855f2714131bbc6855f3b2fd81c7e1b0995fc922" - integrity sha512-wHTv5F1eKUzf46dFKJRi4KBXHC1VRALhtgWbR+IeiXZboJn7hvRF7lwvelJzX++RcnApycFdjLi3RVEpbinZOA== +"@grafana/faro-web-tracing@^1.3.9": + version "1.3.9" + resolved "https://registry.yarnpkg.com/@grafana/faro-web-tracing/-/faro-web-tracing-1.3.9.tgz#5c228ca4781b12720b845173cf4e0df15c27948a" + integrity sha512-MZXotqt4Un+jSoB9JgoMRGAlAuMpWWF7NvZW6Y1yuDX340Xfrnj0Xm0C3uZss9UiDatBqMHNVydAK8OQNmRcHA== dependencies: - "@grafana/faro-web-sdk" "^1.0.0-beta4" - "@opentelemetry/api" "^1.3.0" - "@opentelemetry/context-zone" "^1.8.0" - "@opentelemetry/core" "^1.8.0" - "@opentelemetry/exporter-trace-otlp-http" "^0.34.0" - "@opentelemetry/instrumentation" "^0.34.0" - "@opentelemetry/instrumentation-document-load" "^0.31.0" - "@opentelemetry/instrumentation-fetch" "^0.34.0" - "@opentelemetry/instrumentation-user-interaction" "^0.32.0" - "@opentelemetry/instrumentation-xml-http-request" "^0.34.0" - "@opentelemetry/otlp-transformer" "^0.34.0" - "@opentelemetry/resources" "^1.8.0" - "@opentelemetry/sdk-trace-base" "^1.8.0" - "@opentelemetry/sdk-trace-web" "^1.8.0" - "@opentelemetry/semantic-conventions" "^1.8.0" + "@grafana/faro-web-sdk" "^1.3.9" + "@opentelemetry/api" "^1.7.0" + "@opentelemetry/context-zone" "^1.18.1" + "@opentelemetry/core" "^1.18.1" + "@opentelemetry/exporter-trace-otlp-http" "^0.48.0" + "@opentelemetry/instrumentation" "^0.48.0" + "@opentelemetry/instrumentation-document-load" "^0.35.0" + "@opentelemetry/instrumentation-fetch" "^0.48.0" + "@opentelemetry/instrumentation-xml-http-request" "^0.48.0" + "@opentelemetry/otlp-transformer" "^0.48.0" + "@opentelemetry/resources" "^1.18.1" + "@opentelemetry/sdk-trace-web" "^1.18.1" + "@opentelemetry/semantic-conventions" "^1.18.1" "@grafana/labels@1.5.0": version "1.5.0" @@ -2007,6 +2004,13 @@ dependencies: "@opentelemetry/api" "^1.0.0" +"@opentelemetry/api-logs@0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-logs/-/api-logs-0.48.0.tgz#9521a0c1e920ed536f31cda117164c4afff44caf" + integrity sha512-1/aMiU4Eqo3Zzpfwu51uXssp5pzvHFObk8S9pKAiXb1ne8pvg1qxBQitYL1XUiAMEXFzgjaidYG2V6624DRhhw== + dependencies: + "@opentelemetry/api" "^1.0.0" + "@opentelemetry/api-metrics@^0.33.0": version "0.33.0" resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.33.0.tgz#753d355289b7811ad254d6e5b0193bd1b9f23ab0" @@ -2014,7 +2018,7 @@ dependencies: "@opentelemetry/api" "^1.0.0" -"@opentelemetry/api@^1.0.0", "@opentelemetry/api@^1.3.0": +"@opentelemetry/api@^1.0.0": version "1.3.0" resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.3.0.tgz#27c6f776ac3c1c616651e506a89f438a0ed6a055" integrity sha512-YveTnGNsFFixTKJz09Oi4zYkiLT5af3WpZDu4aIUM7xX+2bHAkOJayFTVQd6zB8kkWPpbua4Ha6Ql00grdLlJQ== @@ -2024,17 +2028,22 @@ resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.4.1.tgz#ff22eb2e5d476fbc2450a196e40dd243cc20c28f" integrity sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA== -"@opentelemetry/context-zone-peer-dep@1.8.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/context-zone-peer-dep/-/context-zone-peer-dep-1.8.0.tgz#79e38b7f1d6b10424a628723eeb6fe7d80082692" - integrity sha512-j8hnrH9OOU9Rw4NN15fwXvaKtdXdsk0vj48YqC/c0mngf0xWroDvruOyOu2i43N+0mBRAv7YOcf52hFD4YQDng== +"@opentelemetry/api@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.7.0.tgz#b139c81999c23e3c8d3c0a7234480e945920fc40" + integrity sha512-AdY5wvN0P2vXBi3b29hxZgSFvdhdxPB9+f0B6s//P9Q8nibRWeA3cHm8UmLpio9ABigkVHJ5NMPk+Mz8VCCyrw== -"@opentelemetry/context-zone@^1.8.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/context-zone/-/context-zone-1.8.0.tgz#41c3b60b59bec1d195f63937919b9c233b359e2d" - integrity sha512-IcDyvP3qSQq2ekH7CPYG6qeDHHi5edRK3bmf19gAi/kmr+pEzQL70/66BDLXThHPEWyklu0OfMFPypOrA1roMQ== +"@opentelemetry/context-zone-peer-dep@1.21.0": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/context-zone-peer-dep/-/context-zone-peer-dep-1.21.0.tgz#1cc1e47d1dbc3f4dc53d2e906cbe09d989608299" + integrity sha512-VShgSOPlc2UWaNdJST7syUDLdFKstkiqVDBaFEwSwvXP9IIaE7XxS5uAVkd55EVOzfB7PhdEQ91roAt5pHyzhQ== + +"@opentelemetry/context-zone@^1.18.1": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/context-zone/-/context-zone-1.21.0.tgz#05e9423e52fc1ea7c41049171b92d60b79d44026" + integrity sha512-YJQH3LroaZZBN0baGLkvw1WlNNpdNxXf7wfdJrst5v+lYGOus5HX9GUAOB9dByj3Z6yGlPIboPPojnc+ybxKGA== dependencies: - "@opentelemetry/context-zone-peer-dep" "1.8.0" + "@opentelemetry/context-zone-peer-dep" "1.21.0" zone.js "^0.11.0" "@opentelemetry/core@1.15.2": @@ -2044,6 +2053,13 @@ dependencies: "@opentelemetry/semantic-conventions" "1.15.2" +"@opentelemetry/core@1.21.0", "@opentelemetry/core@^1.18.1": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.21.0.tgz#8c16faf16edf861b073c03c9d45977b3f4003ee1" + integrity sha512-KP+OIweb3wYoP7qTYL/j5IpOlu52uxBv5M4+QhSmmUfLyTgu1OIS71msK3chFo1D6Y61BIH3wMiMYRCxJCQctA== + dependencies: + "@opentelemetry/semantic-conventions" "1.21.0" + "@opentelemetry/core@1.8.0", "@opentelemetry/core@^1.8.0": version "1.8.0" resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.8.0.tgz#cca18594dd48ded6dc0d08c7e789c79af0315934" @@ -2051,82 +2067,77 @@ dependencies: "@opentelemetry/semantic-conventions" "1.8.0" -"@opentelemetry/exporter-trace-otlp-http@^0.34.0": - version "0.34.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.34.0.tgz#baca4cebb1666ed801288e24215d96a65f2e8ae5" - integrity sha512-MBtUwMvgpdoRo9iqK2eDJ8SP2xKYWeBCSu99s4cc1kg4HKKOpenXLE/6daGsSZ+QTPwd8j+9xMSd+hhBg+Bvzw== +"@opentelemetry/exporter-trace-otlp-http@^0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.48.0.tgz#10e719ec7fec0797a3e325964da8f08ca8d903d9" + integrity sha512-QEZKbfWqXrbKVpr2PHd4KyKI0XVOhUYC+p2RPV8s+2K5QzZBE3+F9WlxxrXDfkrvGmpQAZytBoHQQYA3AGOtpw== dependencies: - "@opentelemetry/core" "1.8.0" - "@opentelemetry/otlp-exporter-base" "0.34.0" - "@opentelemetry/otlp-transformer" "0.34.0" - "@opentelemetry/resources" "1.8.0" - "@opentelemetry/sdk-trace-base" "1.8.0" + "@opentelemetry/core" "1.21.0" + "@opentelemetry/otlp-exporter-base" "0.48.0" + "@opentelemetry/otlp-transformer" "0.48.0" + "@opentelemetry/resources" "1.21.0" + "@opentelemetry/sdk-trace-base" "1.21.0" -"@opentelemetry/instrumentation-document-load@^0.31.0": - version "0.31.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-document-load/-/instrumentation-document-load-0.31.0.tgz#8e6117b68e420fe962963baf7526d97c861b4c36" - integrity sha512-IlbJxUOyvJiatNerKuTii6cEW8iX/9F42zGmyqi8WjgxCZtncRAhkl9argG0xlQvpIoOWEotWB9S+++CjJfvfw== +"@opentelemetry/instrumentation-document-load@^0.35.0": + version "0.35.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-document-load/-/instrumentation-document-load-0.35.0.tgz#e56f4c4d9e5a654c6a164b848946e9b189f137de" + integrity sha512-U3zQBjbAF0rm7GT7YJ8DPqgiCdBoshmld4c1pZe3tAGAMa5QPIjonIfSMSvJ2XMh6Nvi+8Rfe3XFCe0cuWIjsQ== dependencies: "@opentelemetry/core" "^1.8.0" - "@opentelemetry/instrumentation" "^0.34.0" + "@opentelemetry/instrumentation" "^0.48.0" "@opentelemetry/sdk-trace-base" "^1.0.0" - "@opentelemetry/sdk-trace-web" "^1.8.0" + "@opentelemetry/sdk-trace-web" "^1.15.0" "@opentelemetry/semantic-conventions" "^1.0.0" -"@opentelemetry/instrumentation-fetch@^0.34.0": - version "0.34.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-fetch/-/instrumentation-fetch-0.34.0.tgz#059b2a389acaa1cf8af509fe3c5302c0d480710a" - integrity sha512-5ihgQiRG7UGDcj0JnsLZmN/VbZj1vcKaw1frGjsEnMzvjbulYXPwmUbtxzZGxe0lpX6u6zQIpo28Ccdzxt1pJg== +"@opentelemetry/instrumentation-fetch@^0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-fetch/-/instrumentation-fetch-0.48.0.tgz#189523417427252af084517db2e066a098516a69" + integrity sha512-y4Zw9VeUUMaowg3aXYZXcaUJQ7IKfpR6sjClrAQOJwWG8LYFpM6NIRSoAeJv/ShfxWWCPWC0P4zgXcKRqpURFQ== dependencies: - "@opentelemetry/core" "1.8.0" - "@opentelemetry/instrumentation" "0.34.0" - "@opentelemetry/sdk-trace-web" "1.8.0" - "@opentelemetry/semantic-conventions" "1.8.0" + "@opentelemetry/core" "1.21.0" + "@opentelemetry/instrumentation" "0.48.0" + "@opentelemetry/sdk-trace-web" "1.21.0" + "@opentelemetry/semantic-conventions" "1.21.0" -"@opentelemetry/instrumentation-user-interaction@^0.32.0": - version "0.32.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-user-interaction/-/instrumentation-user-interaction-0.32.0.tgz#f4f2f9836d0374a51f97833e34d6a5d7aff9c40d" - integrity sha512-FW/N4Wu2EHv06sXyl2j57lMTAHkBb9b47+YVcUgDU+g2hpz1zC07Ajo1eZQF99tYtRy/25XX2lMOriLrrviyQg== +"@opentelemetry/instrumentation-xml-http-request@^0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-xml-http-request/-/instrumentation-xml-http-request-0.48.0.tgz#5747b44d2dd5b9e61c9685d0f3d59ded325ee822" + integrity sha512-YJ9d1sR28hcEVtP4/tHtPX5Hhu0w2LsAMp3M+75YGTHkkunsN8PwcY/1FcSHUP9xwy7Z2myQvT7fTpL3g4tn4A== dependencies: - "@opentelemetry/core" "^1.8.0" - "@opentelemetry/instrumentation" "^0.34.0" - "@opentelemetry/sdk-trace-web" "^1.8.0" + "@opentelemetry/core" "1.21.0" + "@opentelemetry/instrumentation" "0.48.0" + "@opentelemetry/sdk-trace-web" "1.21.0" + "@opentelemetry/semantic-conventions" "1.21.0" -"@opentelemetry/instrumentation-xml-http-request@^0.34.0": - version "0.34.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-xml-http-request/-/instrumentation-xml-http-request-0.34.0.tgz#349818aecd967196bb2568af7496980a9ecb6498" - integrity sha512-STJuL7smHN09Q1cqN6cfQmg/9FDjPnzbIzmFV7UIWcZnHH38x2v6s8kPRZrsN8HJEH9SkS4SKbrtPW8fHX+Blw== +"@opentelemetry/instrumentation@0.48.0", "@opentelemetry/instrumentation@^0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation/-/instrumentation-0.48.0.tgz#a6dee936e973f1270c464657a55bb570807194aa" + integrity sha512-sjtZQB5PStIdCw5ovVTDGwnmQC+GGYArJNgIcydrDSqUTdYBnMrN9P4pwQZgS3vTGIp+TU1L8vMXGe51NVmIKQ== dependencies: - "@opentelemetry/core" "1.8.0" - "@opentelemetry/instrumentation" "0.34.0" - "@opentelemetry/sdk-trace-web" "1.8.0" - "@opentelemetry/semantic-conventions" "1.8.0" - -"@opentelemetry/instrumentation@0.34.0", "@opentelemetry/instrumentation@^0.34.0": - version "0.34.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation/-/instrumentation-0.34.0.tgz#bae86da46ea4466594689975cd10f0c3720b4071" - integrity sha512-VET/bOh4StOQV4vf1sAvn2JD67BhW2vPZ/ynl2gHXyafme2yB8Hs9+tr1TLzFwNGo7jwMFviFQkZjCYxMuK0AA== - dependencies: - require-in-the-middle "^5.0.3" - semver "^7.3.2" + "@types/shimmer" "^1.0.2" + import-in-the-middle "1.7.1" + require-in-the-middle "^7.1.1" + semver "^7.5.2" shimmer "^1.2.1" -"@opentelemetry/otlp-exporter-base@0.34.0": - version "0.34.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.34.0.tgz#c6020b63590d4b8ac3833eda345a6f582fa014b1" - integrity sha512-xVNvQm7oXeQogeI21iTZRnBrBYS0OVekPutEJgb7jQtHg7x2GWuCBQK9sDo84FRWNXBpNOgSYqsf8/+PxIJ2vA== +"@opentelemetry/otlp-exporter-base@0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.48.0.tgz#72b4efc548de9a0a7121c37669e052ded619bcc3" + integrity sha512-T4LJND+Ugl87GUONoyoQzuV9qCn4BFIPOnCH1biYqdGhc2JahjuLqVD9aefwLzGBW638iLAo88Lh68h2F1FLiA== dependencies: - "@opentelemetry/core" "1.8.0" + "@opentelemetry/core" "1.21.0" -"@opentelemetry/otlp-transformer@0.34.0", "@opentelemetry/otlp-transformer@^0.34.0": - version "0.34.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.34.0.tgz#71023706233c7bc6c3cdcf954c749fea9338084c" - integrity sha512-NghPJvn3pVoWBuhWyBe1n/nWIrj1D1EFUH/bIkWEp0CMVWFLux6R+BkRPZQo5klTcj8xFhCZZIZsL/ubkYPryg== +"@opentelemetry/otlp-transformer@0.48.0", "@opentelemetry/otlp-transformer@^0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.48.0.tgz#969d52a767c7538552b88f7baaa001d3f88feb17" + integrity sha512-yuoS4cUumaTK/hhxW3JUy3wl2U4keMo01cFDrUOmjloAdSSXvv1zyQ920IIH4lymp5Xd21Dj2/jq2LOro56TJg== dependencies: - "@opentelemetry/core" "1.8.0" - "@opentelemetry/resources" "1.8.0" - "@opentelemetry/sdk-metrics" "1.8.0" - "@opentelemetry/sdk-trace-base" "1.8.0" + "@opentelemetry/api-logs" "0.48.0" + "@opentelemetry/core" "1.21.0" + "@opentelemetry/resources" "1.21.0" + "@opentelemetry/sdk-logs" "0.48.0" + "@opentelemetry/sdk-metrics" "1.21.0" + "@opentelemetry/sdk-trace-base" "1.21.0" "@opentelemetry/otlp-transformer@^0.41.2": version "0.41.2" @@ -2148,7 +2159,15 @@ "@opentelemetry/core" "1.15.2" "@opentelemetry/semantic-conventions" "1.15.2" -"@opentelemetry/resources@1.8.0", "@opentelemetry/resources@^1.8.0": +"@opentelemetry/resources@1.21.0", "@opentelemetry/resources@^1.18.1": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.21.0.tgz#e773e918cc8ca26493a987dfbfc6b8a315a2ab45" + integrity sha512-1Z86FUxPKL6zWVy2LdhueEGl9AHDJcx+bvHStxomruz6Whd02mE3lNUMjVJ+FGRoktx/xYQcxccYb03DiUP6Yw== + dependencies: + "@opentelemetry/core" "1.21.0" + "@opentelemetry/semantic-conventions" "1.21.0" + +"@opentelemetry/resources@1.8.0": version "1.8.0" resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.8.0.tgz#260be9742cf7bceccc0db928d8ca8d64391acfe3" integrity sha512-KSyMH6Jvss/PFDy16z5qkCK0ERlpyqixb1xwb73wLMvVq+j7i89lobDjw3JkpCcd1Ws0J6jAI4fw28Zufj2ssg== @@ -2164,6 +2183,14 @@ "@opentelemetry/core" "1.15.2" "@opentelemetry/resources" "1.15.2" +"@opentelemetry/sdk-logs@0.48.0": + version "0.48.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-logs/-/sdk-logs-0.48.0.tgz#5248e4cbfc99bbee555ffd1a23b5db53d6553f2c" + integrity sha512-lRcA5/qkSJuSh4ItWCddhdn/nNbVvnzM+cm9Fg1xpZUeTeozjJDBcHnmeKoOaWRnrGYBdz6UTY6bynZR9aBeAA== + dependencies: + "@opentelemetry/core" "1.21.0" + "@opentelemetry/resources" "1.21.0" + "@opentelemetry/sdk-metrics@1.15.2": version "1.15.2" resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-1.15.2.tgz#eadd0a049de9cd860e1e0d49eea01156469c4b60" @@ -2173,14 +2200,14 @@ "@opentelemetry/resources" "1.15.2" lodash.merge "^4.6.2" -"@opentelemetry/sdk-metrics@1.8.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-1.8.0.tgz#d061060f03861ab3f345d0f924922bc1a6396157" - integrity sha512-+KYb+uj0vHhl8xzJO+oChS4oP1e+/2Wl3SXoHoIdcEjd1TQfDV+lxOm4oqxWq6wykXvI35/JHyejxSoT+qxGmg== +"@opentelemetry/sdk-metrics@1.21.0": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-1.21.0.tgz#40d71aaec5b696e58743889ce6d5bf2593f9a23d" + integrity sha512-on1jTzIHc5DyWhRP+xpf+zrgrREXcHBH4EDAfaB5mIG7TWpKxNXooQ1JCylaPsswZUv4wGnVTinr4HrBdGARAQ== dependencies: - "@opentelemetry/core" "1.8.0" - "@opentelemetry/resources" "1.8.0" - lodash.merge "4.6.2" + "@opentelemetry/core" "1.21.0" + "@opentelemetry/resources" "1.21.0" + lodash.merge "^4.6.2" "@opentelemetry/sdk-trace-base@1.15.2": version "1.15.2" @@ -2191,7 +2218,16 @@ "@opentelemetry/resources" "1.15.2" "@opentelemetry/semantic-conventions" "1.15.2" -"@opentelemetry/sdk-trace-base@1.8.0", "@opentelemetry/sdk-trace-base@^1.0.0", "@opentelemetry/sdk-trace-base@^1.8.0": +"@opentelemetry/sdk-trace-base@1.21.0": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.21.0.tgz#ffad912e453a92044fb220bd5d2f6743bf37bb8a" + integrity sha512-yrElGX5Fv0umzp8Nxpta/XqU71+jCAyaLk34GmBzNcrW43nqbrqvdPs4gj4MVy/HcTjr6hifCDCYA3rMkajxxA== + dependencies: + "@opentelemetry/core" "1.21.0" + "@opentelemetry/resources" "1.21.0" + "@opentelemetry/semantic-conventions" "1.21.0" + +"@opentelemetry/sdk-trace-base@^1.0.0": version "1.8.0" resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.8.0.tgz#70713aab90978a16dea188c8335209f857be7384" integrity sha512-iH41m0UTddnCKJzZx3M85vlhKzRcmT48pUeBbnzsGrq4nIay1oWVHKM5nhB5r8qRDGvd/n7f/YLCXClxwM0tvA== @@ -2200,21 +2236,26 @@ "@opentelemetry/resources" "1.8.0" "@opentelemetry/semantic-conventions" "1.8.0" -"@opentelemetry/sdk-trace-web@1.8.0", "@opentelemetry/sdk-trace-web@^1.8.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.8.0.tgz#78432fe77567cbf46846169f9f7b7643f421965b" - integrity sha512-SfotgAOOy6WTDtIxo97DjE+4l+hCiMqI0A3/TbJjixMPpk4ir/32uFqU9urhH/+zRybwwGYkQ6eILeuyZUi0ZQ== +"@opentelemetry/sdk-trace-web@1.21.0", "@opentelemetry/sdk-trace-web@^1.15.0", "@opentelemetry/sdk-trace-web@^1.18.1": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.21.0.tgz#74c80b0887d5324ecb008328c8c8befb425d429d" + integrity sha512-MxkmY/UNXkDiZj7JUu5T7wWt8Ai4NJEwSjGoQQ9YLvgLUIivvaIo9Mne+Q+KLOUG2v/uhivz3qzxbCODVa0c1A== dependencies: - "@opentelemetry/core" "1.8.0" - "@opentelemetry/sdk-trace-base" "1.8.0" - "@opentelemetry/semantic-conventions" "1.8.0" + "@opentelemetry/core" "1.21.0" + "@opentelemetry/sdk-trace-base" "1.21.0" + "@opentelemetry/semantic-conventions" "1.21.0" "@opentelemetry/semantic-conventions@1.15.2": version "1.15.2" resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.15.2.tgz#3bafb5de3e20e841dff6cb3c66f4d6e9694c4241" integrity sha512-CjbOKwk2s+3xPIMcd5UNYQzsf+v94RczbdNix9/kQh38WiQkM90sUOi3if8eyHFgiBjBjhwXrA7W3ydiSQP9mw== -"@opentelemetry/semantic-conventions@1.8.0", "@opentelemetry/semantic-conventions@^1.0.0", "@opentelemetry/semantic-conventions@^1.8.0": +"@opentelemetry/semantic-conventions@1.21.0", "@opentelemetry/semantic-conventions@^1.18.1": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.21.0.tgz#83f7479c524ab523ac2df702ade30b9724476c72" + integrity sha512-lkC8kZYntxVKr7b8xmjCVUgE0a8xgDakPyDo9uSWavXPyYqLgYYGdEd2j8NxihRyb6UwpX3G/hFUF4/9q2V+/g== + +"@opentelemetry/semantic-conventions@1.8.0", "@opentelemetry/semantic-conventions@^1.0.0": version "1.8.0" resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.8.0.tgz#fe2aa90e6df050a11cd57f5c0f47b0641fd2cad3" integrity sha512-TYh1MRcm4JnvpqtqOwT9WYaBYY4KERHdToxs/suDTLviGRsQkIjS5yYROTYTSJQUnYLOn/TuOh5GoMwfLSU+Ew== @@ -3213,6 +3254,11 @@ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.6.tgz#c65b2bfce1bec346582c07724e3f8c1017a20339" integrity sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A== +"@types/shimmer@^1.0.2": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/shimmer/-/shimmer-1.0.5.tgz#491d8984d4510e550bfeb02d518791d7f59d2b88" + integrity sha512-9Hp0ObzwwO57DpLFF0InUjUm/II8GmKAvzbefxQTihCb7KI6yc9yzf0nLc4mVdby5N4DRCgQM2wCup9KTieeww== + "@types/stack-utils@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" @@ -4544,6 +4590,11 @@ cjs-module-lexer@^1.0.0: resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== +cjs-module-lexer@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107" + integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ== + class-utils@^0.3.5: version "0.3.6" resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" @@ -7263,6 +7314,16 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: parent-module "^1.0.0" resolve-from "^4.0.0" +import-in-the-middle@1.7.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/import-in-the-middle/-/import-in-the-middle-1.7.1.tgz#3e111ff79c639d0bde459bd7ba29dd9fdf357364" + integrity sha512-1LrZPDtW+atAxH42S6288qyDFNQ2YCty+2mxEPRtfazH6Z5QwkaBSTS2ods7hnVJioF6rkRfNoA6A/MstpFXLg== + dependencies: + acorn "^8.8.2" + acorn-import-assertions "^1.9.0" + cjs-module-lexer "^1.2.2" + module-details-from-path "^1.0.3" + import-lazy@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153" @@ -8703,7 +8764,7 @@ lodash.memoize@4.x, lodash.memoize@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== -lodash.merge@4.6.2, lodash.merge@^4.6.2: +lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== @@ -11165,10 +11226,10 @@ require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== -require-in-the-middle@^5.0.3: - version "5.2.0" - resolved "https://registry.yarnpkg.com/require-in-the-middle/-/require-in-the-middle-5.2.0.tgz#4b71e3cc7f59977100af9beb76bf2d056a5a6de2" - integrity sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg== +require-in-the-middle@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/require-in-the-middle/-/require-in-the-middle-7.2.0.tgz#b539de8f00955444dc8aed95e17c69b0a4f10fcf" + integrity sha512-3TLx5TGyAY6AOqLBoXmHkNql0HIf2RGbuMgCDT2WO/uGVAPJs6h7Kl+bN6TIZGd9bWhWPwnDnTHGtW8Iu77sdw== dependencies: debug "^4.1.1" module-details-from-path "^1.0.3" @@ -11483,7 +11544,7 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@7.x, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.1, semver@^7.5.3, semver@^7.5.4: +semver@7.x, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.1, semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -11495,7 +11556,7 @@ semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.6.0: +semver@^7.5.2, semver@^7.6.0: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== @@ -13083,11 +13144,6 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" -web-vitals@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/web-vitals/-/web-vitals-3.1.0.tgz#a6f5156cb6c7fee562da46078540265ac2cd2d16" - integrity sha512-zCeQ+bOjWjJbXv5ZL0r8Py3XP2doCQMZXNKlBGfUjPAVZWokApdeF/kFlK1peuKlCt8sL9TFkKzyXE9/cmNJQA== - web-vitals@^3.1.1: version "3.3.1" resolved "https://registry.yarnpkg.com/web-vitals/-/web-vitals-3.3.1.tgz#f80e4fd01784476c023c8b2c4219075bbe96f64d"