{"version":3,"file":"8737.34adb8d2f931a0b7230d.js","mappings":"8JAmBO,MAAMA,CAAuF,CAIlG,YAAmBC,EAAoC,CAApC,aAAAA,EAHnB,KAAQ,OAAoC,CAAC,EAC7C,qBAAkB,CAAC,KAAc,WAAW,EAI5C,cAAYC,GAAiB,CAC3B,KAAK,OAAO,KAAKA,EAAE,OAAO,CAC5B,EAEA,WAAQ,IAAM,CACR,KAAK,OAAO,SAAW,IAI3B,KACG,KACC,wBACA,CACE,OAAQ,KAAK,MACf,EACA,CAAE,eAAgB,EAAM,CAC1B,EACC,MAAM,IAAM,CAEb,CAAC,EAEH,KAAK,OAAS,CAAC,EACjB,CAxBwD,CAyB1D,C","sources":["webpack://grafana/./public/app/core/services/echo/backends/PerformanceBackend.ts"],"sourcesContent":["import { EchoBackend, EchoEvent, EchoEventType } from '@grafana/runtime';\n\nimport { backendSrv } from '../../backend_srv';\n\nexport interface PerformanceEventPayload {\n name: string;\n value: number;\n}\n\nexport interface PerformanceEvent extends EchoEvent {}\n\nexport interface PerformanceBackendOptions {\n url?: string;\n}\n\n/**\n * Echo's performance metrics consumer\n * Reports performance metrics to given url (TODO)\n */\nexport class PerformanceBackend implements EchoBackend {\n private buffer: PerformanceEventPayload[] = [];\n supportedEvents = [EchoEventType.Performance];\n\n constructor(public options: PerformanceBackendOptions) {}\n\n addEvent = (e: EchoEvent) => {\n this.buffer.push(e.payload);\n };\n\n flush = () => {\n if (this.buffer.length === 0) {\n return;\n }\n\n backendSrv\n .post(\n '/api/frontend-metrics',\n {\n events: this.buffer,\n },\n { showErrorAlert: false }\n )\n .catch(() => {\n // Just swallow this error - it's non-critical\n });\n\n this.buffer = [];\n };\n}\n"],"names":["PerformanceBackend","options","e"],"sourceRoot":""}