@multiplayer-app/session-recorder-browser 1.3.26 → 1.3.28

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.
@@ -1,15 +1,14 @@
1
1
  import { Context } from '@opentelemetry/api';
2
- import { ReadableSpan, SpanProcessor, Span, BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
2
+ import { ReadableSpan, SpanProcessor, Span } from '@opentelemetry/sdk-trace-base';
3
3
  import type { CrashBuffer } from '@multiplayer-app/session-recorder-common';
4
4
  /**
5
5
  * Implementation of the {@link SpanProcessor} that batches spans exported by
6
6
  * the SDK then pushes them to the exporter pipeline.
7
7
  */
8
8
  export declare class CrashBufferSpanProcessor implements SpanProcessor {
9
- private readonly _exporter;
10
9
  private readonly _crashBuffer;
11
10
  private readonly _serializeSpan;
12
- constructor(_exporter: BatchSpanProcessor, _crashBuffer: CrashBuffer | undefined, _serializeSpan: (span: ReadableSpan) => any);
11
+ constructor(_crashBuffer: CrashBuffer | undefined, _serializeSpan: (span: ReadableSpan) => any);
13
12
  forceFlush(): Promise<void>;
14
13
  onStart(_span: Span, _parentContext: Context): void;
15
14
  onEnd(span: ReadableSpan): void;
@@ -1 +1 @@
1
- {"version":3,"file":"CrashBufferSpanProcessor.d.ts","sourceRoot":"","sources":["../../src/otel/CrashBufferSpanProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAKrG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAE3E;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,aAAa;IAE1D,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAFd,SAAS,EAAE,kBAAkB,EAC7B,YAAY,EAAE,WAAW,GAAG,SAAS,EACrC,cAAc,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,GAAG;IAG9D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI;IAInD,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAsB/B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAG1B"}
1
+ {"version":3,"file":"CrashBufferSpanProcessor.d.ts","sourceRoot":"","sources":["../../src/otel/CrashBufferSpanProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAA;AAEjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAE3E;;;GAGG;AACH,qBAAa,wBAAyB,YAAW,aAAa;IAE1D,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,YAAY,EAAE,WAAW,GAAG,SAAS,EACrC,cAAc,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,GAAG;IAG9D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,GAAG,IAAI;IAInD,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAuB/B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAG1B"}
@@ -1,26 +1,26 @@
1
- import { TraceFlags } from '@opentelemetry/api';
2
- import { MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX, } from '@multiplayer-app/session-recorder-common';
1
+ import { MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX } from '@multiplayer-app/session-recorder-common';
3
2
  /**
4
3
  * Implementation of the {@link SpanProcessor} that batches spans exported by
5
4
  * the SDK then pushes them to the exporter pipeline.
6
5
  */
7
6
  export class CrashBufferSpanProcessor {
8
- constructor(_exporter, _crashBuffer, _serializeSpan) {
9
- this._exporter = _exporter;
7
+ constructor(_crashBuffer, _serializeSpan) {
10
8
  this._crashBuffer = _crashBuffer;
11
9
  this._serializeSpan = _serializeSpan;
12
10
  }
13
11
  forceFlush() {
14
- return this._exporter.forceFlush();
12
+ return Promise.resolve();
15
13
  }
16
14
  onStart(_span, _parentContext) {
17
- return this._exporter.onStart(_span, _parentContext);
15
+ return;
18
16
  }
19
17
  onEnd(span) {
20
- const traceId = span.spanContext().traceId;
21
- if ((span.spanContext().traceFlags & TraceFlags.SAMPLED) === 0) {
22
- return;
23
- }
18
+ const _spanContext = span.spanContext();
19
+ const traceId = _spanContext.traceId;
20
+ // // Never buffer/export unsampled spans.
21
+ // if ((_spanContext.traceFlags & TraceFlags.SAMPLED) === 0) {
22
+ // return
23
+ // }
24
24
  if (traceId.startsWith(MULTIPLAYER_TRACE_SESSION_CACHE_PREFIX)) {
25
25
  if (this._crashBuffer) {
26
26
  this._crashBuffer.appendSpans([
@@ -32,10 +32,9 @@ export class CrashBufferSpanProcessor {
32
32
  }
33
33
  return;
34
34
  }
35
- this._exporter.onEnd(span);
36
35
  }
37
36
  shutdown() {
38
- return this._exporter.shutdown();
37
+ return Promise.resolve();
39
38
  }
40
39
  }
41
40
  //# sourceMappingURL=CrashBufferSpanProcessor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CrashBufferSpanProcessor.js","sourceRoot":"","sources":["../../src/otel/CrashBufferSpanProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAExD,OAAO,EACL,sCAAsC,GAEvC,MAAM,0CAA0C,CAAA;AAGjD;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACnC,YACmB,SAA6B,EAC7B,YAAqC,EACrC,cAA2C;QAF3C,cAAS,GAAT,SAAS,CAAoB;QAC7B,iBAAY,GAAZ,YAAY,CAAyB;QACrC,mBAAc,GAAd,cAAc,CAA6B;IAC3D,CAAC;IAEJ,UAAU;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAA;IACpC,CAAC;IAED,OAAO,CAAC,KAAW,EAAE,cAAuB;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;IACtD,CAAC;IAED,KAAK,CAAC,IAAkB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAA;QAE1C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/D,OAAM;QACR,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,CAAC,sCAAsC,CAAC,EAAE,CAAC;YAC/D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;oBAC5B;wBACE,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO;wBAC1D,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;qBAChC;iBACF,CAAC,CAAA;YACJ,CAAC;YACD,OAAM;QACR,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAA;IAClC,CAAC;CACF"}
1
+ {"version":3,"file":"CrashBufferSpanProcessor.js","sourceRoot":"","sources":["../../src/otel/CrashBufferSpanProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sCAAsC,EAAE,MAAM,0CAA0C,CAAA;AAGjG;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACnC,YACmB,YAAqC,EACrC,cAA2C;QAD3C,iBAAY,GAAZ,YAAY,CAAyB;QACrC,mBAAc,GAAd,cAAc,CAA6B;IAC3D,CAAC;IAEJ,UAAU;QACR,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,OAAO,CAAC,KAAW,EAAE,cAAuB;QAC1C,OAAM;IACR,CAAC;IAED,KAAK,CAAC,IAAkB;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAEvC,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAA;QAEpC,0CAA0C;QAC1C,8DAA8D;QAC9D,WAAW;QACX,IAAI;QAEJ,IAAI,OAAO,CAAC,UAAU,CAAC,sCAAsC,CAAC,EAAE,CAAC;YAC/D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;oBAC5B;wBACE,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO;wBAC1D,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;qBAChC;iBACF,CAAC,CAAA;YACJ,CAAC;YACD,OAAM;QACR,CAAC;IACH,CAAC;IAED,QAAQ;QACN,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;CACF"}
@@ -20,6 +20,7 @@ export declare class TracerBrowserSDK {
20
20
  start(sessionId: any, sessionType: SessionType): void;
21
21
  stop(): void;
22
22
  setApiKey(apiKey: string): void;
23
+ private static _toReadableSpanLike;
23
24
  exportTraces(spans: ReadableSpan[]): Promise<ExportResult | undefined | void>;
24
25
  /**
25
26
  * Capture an exception as an error span/event.
@@ -27,7 +28,6 @@ export declare class TracerBrowserSDK {
27
28
  * Otherwise, a short-lived span will be created to hold the exception event.
28
29
  */
29
30
  captureException(error: Error, errorInfo?: Record<string, any>): void;
30
- private _recordException;
31
31
  private _getSpanSessionIdProcessor;
32
32
  private _registerGlobalErrorListeners;
33
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAA6B,MAAM,qBAAqB,CAAA;AAE7E,OAAO,EAAsB,YAAY,EAAiB,MAAM,+BAA+B,CAAA;AAI/F,OAAO,EACL,WAAW,EAOZ,MAAM,0CAA0C,CAAA;AAEjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAY3E,qBAAa,gBAAgB;IAC3B,QAAQ,SAAK;IACb,OAAO,CAAC,cAAc,CAAC,CAAmB;IAC1C,OAAO,CAAC,MAAM,CAAC,CAAqB;IACpC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,WAAW,CAAC,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAC,CAAqC;IACtD,OAAO,CAAC,8BAA8B,CAAQ;IAC9C,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,kBAAkB,CAAC,CAAoB;;IAI/C,OAAO,CAAC,aAAa;IAUrB,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAyJxC,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI;IAI1D,KAAK,CAAC,SAAS,KAAA,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAQhD,IAAI,IAAI,IAAI;IAQZ,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQzB,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC;IAQnF;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAwBrE,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,6BAA6B;CA0BtC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAA6B,MAAM,qBAAqB,CAAA;AAE7E,OAAO,EAAsB,YAAY,EAAiB,MAAM,+BAA+B,CAAA;AAI/F,OAAO,EACL,WAAW,EAOZ,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAY3E,qBAAa,gBAAgB;IAC3B,QAAQ,SAAK;IACb,OAAO,CAAC,cAAc,CAAC,CAAmB;IAC1C,OAAO,CAAC,MAAM,CAAC,CAAqB;IACpC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,WAAW,CAAC,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAC,CAAqC;IACtD,OAAO,CAAC,8BAA8B,CAAQ;IAC9C,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,kBAAkB,CAAC,CAAoB;;IAI/C,OAAO,CAAC,aAAa;IAUrB,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAwJxC,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI;IAI1D,KAAK,CAAC,SAAS,KAAA,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI;IAQhD,IAAI,IAAI,IAAI;IAQZ,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ/B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAyD5B,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC;IAgBnF;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAIrE,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,6BAA6B;CA0BtC"}
@@ -5,8 +5,7 @@ import { BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
5
5
  import * as SemanticAttributes from '@opentelemetry/semantic-conventions';
6
6
  import { registerInstrumentations } from '@opentelemetry/instrumentation';
7
7
  import { getWebAutoInstrumentations } from '@opentelemetry/auto-instrumentations-web';
8
- import { SessionType, ATTR_MULTIPLAYER_SESSION_ID, SessionRecorderIdGenerator, SessionRecorderBrowserTraceExporter, SessionRecorderSdk, MULTIPLAYER_TRACE_CLIENT_ID_LENGTH, SessionRecorderTraceIdRatioBasedSampler, } from '@multiplayer-app/session-recorder-common';
9
- import { trace, SpanStatusCode, context } from '@opentelemetry/api';
8
+ import { SessionType, SessionRecorderSdk, SessionRecorderIdGenerator, SessionRecorderBrowserTraceExporter, SessionRecorderTraceIdRatioBasedSampler, ATTR_MULTIPLAYER_SESSION_ID, MULTIPLAYER_TRACE_CLIENT_ID_LENGTH, } from '@multiplayer-app/session-recorder-common';
10
9
  import { OTEL_IGNORE_URLS } from '../config';
11
10
  import { processHttpPayload, headersToObject, extractResponseBody, getExporterEndpoint, getElementTextContent, getElementInnerText, } from './helpers';
12
11
  import { CrashBufferSpanProcessor } from './CrashBufferSpanProcessor';
@@ -35,18 +34,20 @@ export class TracerBrowserSDK {
35
34
  url: getExporterEndpoint(options.exporterEndpoint),
36
35
  usePostMessageFallback: options.usePostMessageFallback,
37
36
  });
38
- this.batchSpanProcessor = new BatchSpanProcessor(this.exporter);
37
+ const resourceAttributes = resourceFromAttributes({
38
+ [SemanticAttributes.SEMRESATTRS_SERVICE_NAME]: application,
39
+ [SemanticAttributes.SEMRESATTRS_SERVICE_VERSION]: version,
40
+ [SemanticAttributes.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT]: environment,
41
+ });
42
+ SessionRecorderSdk.setResourceAttributes(resourceAttributes.attributes);
39
43
  this.tracerProvider = new WebTracerProvider({
40
- resource: resourceFromAttributes({
41
- [SemanticAttributes.SEMRESATTRS_SERVICE_NAME]: application,
42
- [SemanticAttributes.SEMRESATTRS_SERVICE_VERSION]: version,
43
- [SemanticAttributes.SEMRESATTRS_DEPLOYMENT_ENVIRONMENT]: environment,
44
- }),
44
+ resource: resourceAttributes,
45
45
  idGenerator: this.idGenerator,
46
46
  sampler: new SessionRecorderTraceIdRatioBasedSampler(this.config.sampleTraceRatio),
47
47
  spanProcessors: [
48
48
  this._getSpanSessionIdProcessor(),
49
- new CrashBufferSpanProcessor(this.batchSpanProcessor, this.crashBuffer, this.exporter.serializeSpan.bind(this.exporter)),
49
+ new BatchSpanProcessor(this.exporter),
50
+ new CrashBufferSpanProcessor(this.crashBuffer, this.exporter.serializeSpan),
50
51
  ],
51
52
  });
52
53
  this.tracerProvider.register({
@@ -177,13 +178,70 @@ export class TracerBrowserSDK {
177
178
  }
178
179
  this.exporter.setApiKey(apiKey);
179
180
  }
180
- async exportTraces(spans) {
181
+ static _toReadableSpanLike(span) {
181
182
  var _a;
182
- if ((_a = this === null || this === void 0 ? void 0 : this.batchSpanProcessor) === null || _a === void 0 ? void 0 : _a.onEnd) {
183
- spans.map((span) => { var _a; return (_a = this === null || this === void 0 ? void 0 : this.batchSpanProcessor) === null || _a === void 0 ? void 0 : _a.onEnd(span); });
184
- // return this.batchSpanProcessor.onEnd()
183
+ if (span && typeof span.spanContext === 'function' && span.instrumentationScope) {
184
+ return span;
185
185
  }
186
- throw new Error('Buffer span processor not initialized');
186
+ const spanContext = typeof (span === null || span === void 0 ? void 0 : span.spanContext) === 'function' ? span.spanContext() : span === null || span === void 0 ? void 0 : span._spanContext;
187
+ const normalizedCtx = spanContext ||
188
+ {
189
+ traceId: span === null || span === void 0 ? void 0 : span.traceId,
190
+ spanId: span === null || span === void 0 ? void 0 : span.spanId,
191
+ traceFlags: span === null || span === void 0 ? void 0 : span.traceFlags,
192
+ traceState: span === null || span === void 0 ? void 0 : span.traceState,
193
+ };
194
+ const instrumentationScope = (span === null || span === void 0 ? void 0 : span.instrumentationScope) ||
195
+ (span === null || span === void 0 ? void 0 : span.instrumentationLibrary) ||
196
+ { name: 'multiplayer-buffer', version: undefined, schemaUrl: undefined };
197
+ const normalizedScope = {
198
+ name: (instrumentationScope === null || instrumentationScope === void 0 ? void 0 : instrumentationScope.name) || 'multiplayer-buffer',
199
+ version: instrumentationScope === null || instrumentationScope === void 0 ? void 0 : instrumentationScope.version,
200
+ schemaUrl: instrumentationScope === null || instrumentationScope === void 0 ? void 0 : instrumentationScope.schemaUrl,
201
+ };
202
+ const resource = (span === null || span === void 0 ? void 0 : span.resource) || { attributes: {}, asyncAttributesPending: false };
203
+ const parentSpanId = span === null || span === void 0 ? void 0 : span.parentSpanId;
204
+ return {
205
+ name: (span === null || span === void 0 ? void 0 : span.name) || '',
206
+ kind: span === null || span === void 0 ? void 0 : span.kind,
207
+ spanContext: () => normalizedCtx,
208
+ parentSpanContext: parentSpanId
209
+ ? {
210
+ traceId: normalizedCtx === null || normalizedCtx === void 0 ? void 0 : normalizedCtx.traceId,
211
+ spanId: parentSpanId,
212
+ traceFlags: normalizedCtx === null || normalizedCtx === void 0 ? void 0 : normalizedCtx.traceFlags,
213
+ traceState: normalizedCtx === null || normalizedCtx === void 0 ? void 0 : normalizedCtx.traceState,
214
+ }
215
+ : undefined,
216
+ startTime: span === null || span === void 0 ? void 0 : span.startTime,
217
+ endTime: (_a = span === null || span === void 0 ? void 0 : span.endTime) !== null && _a !== void 0 ? _a : span === null || span === void 0 ? void 0 : span.startTime,
218
+ duration: span === null || span === void 0 ? void 0 : span.duration,
219
+ status: span === null || span === void 0 ? void 0 : span.status,
220
+ attributes: (span === null || span === void 0 ? void 0 : span.attributes) || {},
221
+ links: (span === null || span === void 0 ? void 0 : span.links) || [],
222
+ events: (span === null || span === void 0 ? void 0 : span.events) || [],
223
+ ended: typeof (span === null || span === void 0 ? void 0 : span.ended) === 'boolean' ? span.ended : true,
224
+ droppedAttributesCount: (span === null || span === void 0 ? void 0 : span.droppedAttributesCount) || 0,
225
+ droppedEventsCount: (span === null || span === void 0 ? void 0 : span.droppedEventsCount) || 0,
226
+ droppedLinksCount: (span === null || span === void 0 ? void 0 : span.droppedLinksCount) || 0,
227
+ resource,
228
+ instrumentationScope: normalizedScope,
229
+ };
230
+ }
231
+ async exportTraces(spans) {
232
+ if (!this.exporter) {
233
+ throw new Error('Trace exporter not initialized');
234
+ }
235
+ if (!spans || spans.length === 0) {
236
+ return Promise.resolve();
237
+ }
238
+ const readableSpans = spans.map((s) => TracerBrowserSDK._toReadableSpanLike(s));
239
+ return new Promise((resolve) => {
240
+ var _a;
241
+ (_a = this.exporter) === null || _a === void 0 ? void 0 : _a.exportBuffer(readableSpans, (result) => {
242
+ resolve(result);
243
+ });
244
+ });
187
245
  }
188
246
  /**
189
247
  * Capture an exception as an error span/event.
@@ -191,42 +249,7 @@ export class TracerBrowserSDK {
191
249
  * Otherwise, a short-lived span will be created to hold the exception event.
192
250
  */
193
251
  captureException(error, errorInfo) {
194
- var _a, _b;
195
- if (!error)
196
- return;
197
- // Prefer attaching to the active span to keep correlation intact
198
- try {
199
- const activeSpan = trace.getSpan(context.active());
200
- if (activeSpan) {
201
- this._recordException(activeSpan, error, errorInfo);
202
- (_a = this.tracerProvider) === null || _a === void 0 ? void 0 : _a.forceFlush();
203
- return;
204
- }
205
- // eslint-disable-next-line
206
- }
207
- catch (_ignored) { }
208
- // Fallback: create a short-lived span to hold the exception details
209
- try {
210
- const tracer = trace.getTracer('exception');
211
- const span = tracer.startSpan(error.name || 'Error');
212
- this._recordException(span, error, errorInfo);
213
- span.end();
214
- (_b = this.tracerProvider) === null || _b === void 0 ? void 0 : _b.forceFlush();
215
- // eslint-disable-next-line
216
- }
217
- catch (_ignored) { }
218
- }
219
- _recordException(span, error, errorInfo) {
220
- span.recordException(error);
221
- span.setStatus({ code: SpanStatusCode.ERROR, message: error.message });
222
- span.setAttribute('exception.type', error.name || 'Error');
223
- span.setAttribute('exception.message', error.message);
224
- span.setAttribute('exception.stacktrace', error.stack || '');
225
- if (errorInfo) {
226
- Object.entries(errorInfo).forEach(([key, value]) => {
227
- span.setAttribute(`error_info.${key}`, value);
228
- });
229
- }
252
+ SessionRecorderSdk.captureException(error, errorInfo);
230
253
  }
231
254
  _getSpanSessionIdProcessor() {
232
255
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/otel/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"crashBuffer.service.d.ts","sourceRoot":"","sources":["../../src/services/crashBuffer.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,+BAA+B,EAC/B,4BAA4B,EAC5B,mBAAmB,EACpB,MAAM,0CAA0C,CAAA;AAEjD,qBAAa,kBAAmB,YAAW,WAAW;IAWlD,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAZ3B,OAAO,CAAC,WAAW,CAAI;IACvB,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,QAAQ,CAAO;IACvB,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,oBAAoB,CAAO;IACnC,OAAO,CAAC,WAAW,CAAI;IACvB,OAAO,CAAC,SAAS,CAAqG;gBAGnG,EAAE,EAAE,gBAAgB,EACpB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM;YAGrB,KAAK;IAQb,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,WAAW,CAAC,OAAO,EAAE,4BAA4B,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BrF,WAAW,CAAC,OAAO,EAAE,+BAA+B,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B9F,EAAE,CAAC,CAAC,SAAS,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAO7G,GAAG,CAAC,CAAC,SAAS,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI;IAOxG,OAAO,CAAC,KAAK;IAYP,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA+CpF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,iBAAiB,IAAI,OAAO;IAI5B;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAsBhC,OAAO,CAAC,SAAS;CAsBlB"}
1
+ {"version":3,"file":"crashBuffer.service.d.ts","sourceRoot":"","sources":["../../src/services/crashBuffer.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,KAAK,EACV,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,+BAA+B,EAC/B,4BAA4B,EAC5B,mBAAmB,EACpB,MAAM,0CAA0C,CAAA;AAEjD,qBAAa,kBAAmB,YAAW,WAAW;IAWlD,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAZ3B,OAAO,CAAC,WAAW,CAAI;IACvB,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,QAAQ,CAAO;IACvB,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,eAAe,CAAY;IACnC,OAAO,CAAC,oBAAoB,CAAO;IACnC,OAAO,CAAC,WAAW,CAAI;IACvB,OAAO,CAAC,SAAS,CAAqG;gBAGnG,EAAE,EAAE,gBAAgB,EACpB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM;YAGrB,KAAK;IAQb,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,WAAW,CAAC,OAAO,EAAE,4BAA4B,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCrF,WAAW,CAAC,OAAO,EAAE,+BAA+B,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B9F,EAAE,CAAC,CAAC,SAAS,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAO7G,GAAG,CAAC,CAAC,SAAS,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI;IAOxG,OAAO,CAAC,KAAK;IAYP,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA2EpF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,iBAAiB,IAAI,OAAO;IAI5B;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAsBhC,OAAO,CAAC,SAAS;CAsBlB"}
@@ -1,4 +1,5 @@
1
1
  import { SpanStatusCode } from '@opentelemetry/api';
2
+ import { EventType } from '@rrweb/types';
2
3
  export class CrashBufferService {
3
4
  constructor(db, tabId, windowMs) {
4
5
  this.db = db;
@@ -30,12 +31,16 @@ export class CrashBufferService {
30
31
  }, undefined);
31
32
  }
32
33
  async appendEvent(payload, _windowMs) {
34
+ var _a;
33
35
  this.lastSeenEventTs = Math.max(this.lastSeenEventTs, payload.ts || 0);
34
36
  if (!this.isActive)
35
37
  return;
36
38
  const isFullSnapshot = Boolean(payload.isFullSnapshot);
37
- if (this.requiresFullSnapshot && !isFullSnapshot) {
38
- // Buffer must always start with a full snapshot; drop incrementals until we see one.
39
+ const eventType = (_a = payload === null || payload === void 0 ? void 0 : payload.event) === null || _a === void 0 ? void 0 : _a.eventType;
40
+ const isMeta = eventType === EventType.Meta;
41
+ if (this.requiresFullSnapshot && !isFullSnapshot && !isMeta) {
42
+ // rrweb replayable prefix is Meta -> FullSnapshot.
43
+ // While waiting for the first FullSnapshot, we still keep the Meta event (but drop incrementals).
39
44
  return;
40
45
  }
41
46
  await this._safe(async () => {
@@ -48,8 +53,8 @@ export class CrashBufferService {
48
53
  }, undefined);
49
54
  if (isFullSnapshot && this.requiresFullSnapshot) {
50
55
  // Ensure this snapshot becomes the first replayable event.
51
- // We keep the snapshot itself and prune everything older.
52
- await this._safe(() => this.db.pruneOlderThan(this.tabId, Math.max(0, payload.ts - 1)), undefined);
56
+ // Keep Meta + FullSnapshot (if present) and prune everything older.
57
+ await this._safe(() => this.db.pruneOlderThanWithRrwebSnapshotAnchor(this.tabId, payload.ts), undefined);
53
58
  this.requiresFullSnapshot = false;
54
59
  }
55
60
  else if (isFullSnapshot) {
@@ -112,6 +117,7 @@ export class CrashBufferService {
112
117
  }
113
118
  }
114
119
  async snapshot(_windowMs, now = Date.now()) {
120
+ var _a, _b;
115
121
  const toTs = now;
116
122
  const fromTs = Math.max(0, toTs - this.windowMs);
117
123
  // Always include a full snapshot "anchor" if one exists at/before the window start.
@@ -127,10 +133,37 @@ export class CrashBufferService {
127
133
  const rrwebSorted = rrweb
128
134
  .sort((a, b) => a.ts - b.ts)
129
135
  .map((r) => ({ ts: r.ts, isFullSnapshot: r.isFullSnapshot, event: r.event }));
130
- // Hard guarantee: snapshot payload starts with a FullSnapshot (or is empty).
136
+ // Hard guarantee: snapshot payload starts with Meta -> FullSnapshot (or is empty).
131
137
  const firstFullSnapshotIdx = rrwebSorted.findIndex((e) => Boolean(e.isFullSnapshot));
132
- const rrwebEvents = firstFullSnapshotIdx >= 0 ? rrwebSorted.slice(firstFullSnapshotIdx) : [];
133
- // Align spans with the rrweb replay start: spans must start from the FullSnapshot timestamp.
138
+ if (firstFullSnapshotIdx < 0) {
139
+ return {
140
+ rrwebEvents: [],
141
+ otelSpans: [],
142
+ attrs: attrs
143
+ ? {
144
+ sessionAttributes: attrs.sessionAttributes,
145
+ resourceAttributes: attrs.resourceAttributes,
146
+ userAttributes: attrs.userAttributes,
147
+ }
148
+ : null,
149
+ windowMs: this.windowMs,
150
+ fromTs,
151
+ toTs,
152
+ };
153
+ }
154
+ // Prefer including the Meta event immediately preceding the first FullSnapshot.
155
+ let startIdx = firstFullSnapshotIdx;
156
+ for (let i = firstFullSnapshotIdx - 1; i >= 0; i--) {
157
+ const t = (_b = (_a = rrwebSorted[i]) === null || _a === void 0 ? void 0 : _a.event) === null || _b === void 0 ? void 0 : _b.eventType;
158
+ if (t === EventType.Meta) {
159
+ startIdx = i;
160
+ break;
161
+ }
162
+ }
163
+ const rrwebEvents = rrwebSorted.slice(startIdx);
164
+ // Align spans with the rrweb replay start (Meta if present, otherwise FullSnapshot).
165
+ // Important: we return `fromTs` to consumers and many UIs compute relative offsets from it,
166
+ // so `fromTs` must match the first rrweb event timestamp we return.
134
167
  const replayStartTs = rrwebEvents.length > 0 ? rrwebEvents[0].ts : fromTs;
135
168
  const otelSpans = spans
136
169
  .filter((s) => typeof (s === null || s === void 0 ? void 0 : s.ts) === 'number' && s.ts >= replayStartTs)
@@ -1 +1 @@
1
- {"version":3,"file":"crashBuffer.service.js","sourceRoot":"","sources":["../../src/services/crashBuffer.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAYnD,MAAM,OAAO,kBAAkB;IAU7B,YACmB,EAAoB,EACpB,KAAa,EACb,QAAgB;QAFhB,OAAE,GAAF,EAAE,CAAkB;QACpB,UAAK,GAAL,KAAK,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAQ;QAZ3B,gBAAW,GAAG,CAAC,CAAA;QACf,kBAAa,GAAyB,IAAI,CAAA;QAC1C,aAAQ,GAAG,IAAI,CAAA;QACf,eAAU,GAAkB,IAAI,CAAA;QAChC,oBAAe,GAAW,CAAC,CAAA;QAC3B,yBAAoB,GAAG,IAAI,CAAA;QAC3B,gBAAW,GAAG,CAAC,CAAA;QACf,cAAS,GAAG,IAAI,GAAG,EAA2F,CAAA;IAMnH,CAAC;IAEI,KAAK,CAAC,KAAK,CAAI,EAAoB,EAAE,QAAW;QACtD,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAA;QACnB,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACZ,OAAO,QAAQ,CAAA;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAuB;QACpC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG,KAAK;aACT,CAAC,CAAA;QACJ,CAAC,EAAE,SAAgB,CAAC,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAqC,EAAE,SAAkB;QACzE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QACtE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAE1B,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QACtD,IAAI,IAAI,CAAC,oBAAoB,IAAI,CAAC,cAAc,EAAE,CAAC;YACjD,qFAAqF;YACrF,OAAM;QACR,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;gBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB,CAAC,CAAA;QACJ,CAAC,EAAE,SAAgB,CAAC,CAAA;QAEpB,IAAI,cAAc,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAChD,2DAA2D;YAC3D,0DAA0D;YAC1D,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,SAAgB,CAAC,CAAA;YACzG,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAA;QACnC,CAAC;aAAM,IAAI,cAAc,EAAE,CAAC;YAC1B,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAA;QACnC,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAwC,EAAE,SAAkB;QAC5E,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QAClE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAC1B,IAAI,UAAU,GAAsD,IAAI,CAAA;QACxE,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;gBAChC,IAAI,CAAC,UAAU,IAAI,CAAA,MAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,0CAAE,MAAM,0CAAE,IAAI,MAAK,cAAc,CAAC,KAAK,EAAE,CAAC;oBAClE,UAAU,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBACzC,CAAC;gBACD,OAAO;oBACL,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,IAAI,EAAE,CAAC,CAAC,IAAI;iBACb,CAAA;YACH,CAAC,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC,EAAE,SAAgB,CAAC,CAAA;QAEpB,IAAI,CAAC,SAAS,EAAE,CAAA;QAEhB,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,EAAE,CAAiC,KAAQ,EAAE,QAAmD;QAC9F,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAE,CAAA;QAClD,GAAG,CAAC,GAAG,CAAC,QAAe,CAAC,CAAA;QACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,GAAU,CAAC,CAAA;QACrC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAe,CAAC,CAAA;IAC/C,CAAC;IAED,GAAG,CAAiC,KAAQ,EAAE,QAAmD;QAC/F,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,CAAC,GAAG;YAAE,OAAM;QAChB,GAAG,CAAC,MAAM,CAAC,QAAe,CAAC,CAAA;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAClD,CAAC;IAEO,KAAK,CAAiC,KAAQ,EAAE,OAA+B;QACrF,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,OAAM;QAClC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,CAAC;gBAAC,EAAU,CAAC,OAAO,CAAC,CAAA;YACvB,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,4BAA4B;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,SAAkB,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;QACzD,MAAM,IAAI,GAAG,GAAG,CAAA;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEhD,oFAAoF;QACpF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,8BAA8B,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;YAC/E,OAAO,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,CAAA,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;QAC5D,CAAC,EAAE,MAAM,CAAC,CAAA;QAEV,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;YACjF,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;SACrD,CAAC,CAAA;QAEF,MAAM,WAAW,GAAG,KAAK;aACtB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAE/E,6EAA6E;QAC7E,MAAM,oBAAoB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAA;QACpF,MAAM,WAAW,GAAG,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAE5F,6FAA6F;QAC7F,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;QACzE,MAAM,SAAS,GAAG,KAAK;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,EAAE,CAAA,KAAK,QAAQ,IAAI,CAAC,CAAC,EAAE,IAAI,aAAa,CAAC;aACjE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QAE3C,OAAO;YACL,WAAW;YACX,SAAS;YACT,KAAK,EAAE,KAAK;gBACV,CAAC,CAAC;oBACA,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;oBAC1C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAC5C,cAAc,EAAE,KAAK,CAAC,cAAc;iBACrC;gBACD,CAAC,CAAC,IAAI;YACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,aAAa;YACrB,IAAI;SACL,CAAA;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAgB,CAAC,CAAA;QACtE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;IAClC,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,oBAAoB,CAAA;IAClC,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,MAAe;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM;YAAE,OAAM;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAA;QAEtB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;YACnD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;YAE1B,qFAAqF;YACrF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;YACpD,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,qCAAqC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,SAAgB,CAAC,CAAA;YAC1G,OAAM;QACR,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,CAAA;QAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;QAEtB,uFAAuF;QACvF,IAAI,SAAS;YAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;QAC/C,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,8DAA8D;QAC9D,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI;YAAE,OAAM;QACzC,IAAI,IAAI,CAAC,aAAa;YAAE,OAAM;QAE9B,IAAI,CAAC,WAAW,GAAG,GAAG,CAAA;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC/C,gEAAgE;QAChE,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,KAAM,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAA;YACtB,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,SAAgB,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAC7B,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,qCAAqC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EACvE,SAAgB,CACjB,CAAC,OAAO,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QAC3B,CAAC,CAAC,CAAA;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"crashBuffer.service.js","sourceRoot":"","sources":["../../src/services/crashBuffer.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAYxC,MAAM,OAAO,kBAAkB;IAU7B,YACmB,EAAoB,EACpB,KAAa,EACb,QAAgB;QAFhB,OAAE,GAAF,EAAE,CAAkB;QACpB,UAAK,GAAL,KAAK,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAQ;QAZ3B,gBAAW,GAAG,CAAC,CAAA;QACf,kBAAa,GAAyB,IAAI,CAAA;QAC1C,aAAQ,GAAG,IAAI,CAAA;QACf,eAAU,GAAkB,IAAI,CAAA;QAChC,oBAAe,GAAW,CAAC,CAAA;QAC3B,yBAAoB,GAAG,IAAI,CAAA;QAC3B,gBAAW,GAAG,CAAC,CAAA;QACf,cAAS,GAAG,IAAI,GAAG,EAA2F,CAAA;IAMnH,CAAC;IAEI,KAAK,CAAC,KAAK,CAAI,EAAoB,EAAE,QAAW;QACtD,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAA;QACnB,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACZ,OAAO,QAAQ,CAAA;QACjB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAuB;QACpC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG,KAAK;aACT,CAAC,CAAA;QACJ,CAAC,EAAE,SAAgB,CAAC,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAqC,EAAE,SAAkB;;QACzE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QACtE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAE1B,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QACtD,MAAM,SAAS,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,0CAAE,SAAS,CAAA;QAC3C,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,CAAC,IAAI,CAAA;QAC3C,IAAI,IAAI,CAAC,oBAAoB,IAAI,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5D,mDAAmD;YACnD,kGAAkG;YAClG,OAAM;QACR,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;gBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB,CAAC,CAAA;QACJ,CAAC,EAAE,SAAgB,CAAC,CAAA;QAEpB,IAAI,cAAc,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAChD,2DAA2D;YAC3D,oEAAoE;YACpE,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,qCAAqC,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,SAAgB,CAAC,CAAA;YAC/G,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAA;QACnC,CAAC;aAAM,IAAI,cAAc,EAAE,CAAC;YAC1B,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAA;QACnC,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAwC,EAAE,SAAkB;QAC5E,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;QAClE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAC1B,IAAI,UAAU,GAAsD,IAAI,CAAA;QACxE,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;gBAChC,IAAI,CAAC,UAAU,IAAI,CAAA,MAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,IAAI,0CAAE,MAAM,0CAAE,IAAI,MAAK,cAAc,CAAC,KAAK,EAAE,CAAC;oBAClE,UAAU,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;gBACzC,CAAC;gBACD,OAAO;oBACL,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,IAAI,EAAE,CAAC,CAAC,IAAI;iBACb,CAAA;YACH,CAAC,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC,EAAE,SAAgB,CAAC,CAAA;QAEpB,IAAI,CAAC,SAAS,EAAE,CAAA;QAEhB,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,EAAE,CAAiC,KAAQ,EAAE,QAAmD;QAC9F,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAE,CAAA;QAClD,GAAG,CAAC,GAAG,CAAC,QAAe,CAAC,CAAA;QACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,GAAU,CAAC,CAAA;QACrC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAe,CAAC,CAAA;IAC/C,CAAC;IAED,GAAG,CAAiC,KAAQ,EAAE,QAAmD;QAC/F,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,CAAC,GAAG;YAAE,OAAM;QAChB,GAAG,CAAC,MAAM,CAAC,QAAe,CAAC,CAAA;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAClD,CAAC;IAEO,KAAK,CAAiC,KAAQ,EAAE,OAA+B;QACrF,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,OAAM;QAClC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,CAAC;gBAAC,EAAU,CAAC,OAAO,CAAC,CAAA;YACvB,CAAC;YAAC,OAAO,EAAE,EAAE,CAAC;gBACZ,4BAA4B;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,SAAkB,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;;QACzD,MAAM,IAAI,GAAG,GAAG,CAAA;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEhD,oFAAoF;QACpF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,8BAA8B,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;YAC/E,OAAO,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,CAAA,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;QAC5D,CAAC,EAAE,MAAM,CAAC,CAAA;QAEV,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;YACjF,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;SACrD,CAAC,CAAA;QAEF,MAAM,WAAW,GAAG,KAAK;aACtB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAE/E,mFAAmF;QACnF,MAAM,oBAAoB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAA;QACpF,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACL,WAAW,EAAE,EAAE;gBACf,SAAS,EAAE,EAAE;gBACb,KAAK,EAAE,KAAK;oBACV,CAAC,CAAC;wBACA,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;wBAC1C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;wBAC5C,cAAc,EAAE,KAAK,CAAC,cAAc;qBACrC;oBACD,CAAC,CAAC,IAAI;gBACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM;gBACN,IAAI;aACL,CAAA;QACH,CAAC;QAED,gFAAgF;QAChF,IAAI,QAAQ,GAAG,oBAAoB,CAAA;QACnC,KAAK,IAAI,CAAC,GAAG,oBAAoB,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,MAAA,MAAA,WAAW,CAAC,CAAC,CAAC,0CAAE,KAAK,0CAAE,SAAS,CAAA;YAC1C,IAAI,CAAC,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;gBACzB,QAAQ,GAAG,CAAC,CAAA;gBACZ,MAAK;YACP,CAAC;QACH,CAAC;QACD,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAE/C,qFAAqF;QACrF,4FAA4F;QAC5F,oEAAoE;QACpE,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;QACzE,MAAM,SAAS,GAAG,KAAK;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,EAAE,CAAA,KAAK,QAAQ,IAAI,CAAC,CAAC,EAAE,IAAI,aAAa,CAAC;aACjE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QAE3C,OAAO;YACL,WAAW;YACX,SAAS;YACT,KAAK,EAAE,KAAK;gBACV,CAAC,CAAC;oBACA,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;oBAC1C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAC5C,cAAc,EAAE,KAAK,CAAC,cAAc;iBACrC;gBACD,CAAC,CAAC,IAAI;YACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,aAAa;YACrB,IAAI;SACL,CAAA;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAgB,CAAC,CAAA;QACtE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;IAClC,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,oBAAoB,CAAA;IAClC,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,MAAe;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM;YAAE,OAAM;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAA;QAEtB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;YACnD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;YAE1B,qFAAqF;YACrF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;YACpD,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,qCAAqC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,SAAgB,CAAC,CAAA;YAC1G,OAAM;QACR,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,KAAK,IAAI,CAAA;QAC1C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;QAEtB,uFAAuF;QACvF,IAAI,SAAS;YAAE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;QAC/C,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,8DAA8D;QAC9D,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI;YAAE,OAAM;QACzC,IAAI,IAAI,CAAC,aAAa;YAAE,OAAM;QAE9B,IAAI,CAAC,WAAW,GAAG,GAAG,CAAA;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC/C,gEAAgE;QAChE,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,KAAM,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAA;YACtB,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,SAAgB,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAC7B,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,qCAAqC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EACvE,SAAgB,CACjB,CAAC,OAAO,CAAC,GAAG,EAAE;YACb,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;QAC3B,CAAC,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -58,11 +58,21 @@ export declare class IndexedDBService {
58
58
  * Used to keep a replayable anchor when pruning.
59
59
  */
60
60
  getLastRrwebFullSnapshotBefore(tabId: TabId, cutoffTs: number): Promise<CrashBufferRrwebEventRecord | null>;
61
+ /**
62
+ * Returns the last (highest-ts) Meta event record at/before `cutoffTs`.
63
+ *
64
+ * rrweb replays expect the stream to begin with:
65
+ * - Meta
66
+ * - FullSnapshot
67
+ *
68
+ * We persist packed events (plus a small wrapper) so we detect Meta via `record.event.eventType`.
69
+ */
70
+ getLastRrwebMetaBefore(tabId: TabId, cutoffTs: number): Promise<CrashBufferRrwebEventRecord | null>;
61
71
  getOtelSpansWindow(tabId: TabId, fromTs: number, toTs: number): Promise<CrashBufferOtelSpanRecord[]>;
62
72
  pruneOlderThan(tabId: TabId, cutoffTs: number): Promise<void>;
63
73
  /**
64
74
  * Prune older data while keeping rrweb replayability:
65
- * - rrweb: keep the last FullSnapshot at/before cutoff as an "anchor"
75
+ * - rrweb: keep the last Meta + FullSnapshot pair at/before cutoff as an "anchor"
66
76
  * - spans: prune strictly by cutoff
67
77
  */
68
78
  pruneOlderThanWithRrwebSnapshotAnchor(tabId: TabId, cutoffTs: number): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"indexedDb.service.d.ts","sourceRoot":"","sources":["../../src/services/indexedDb.service.ts"],"names":[],"mappings":"AASA,KAAK,KAAK,GAAG,MAAM,CAAA;AAEnB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACxC,cAAc,CAAC,EAAE,GAAG,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,GAAG,CAAA;CACX,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,GAAG,CAAA;CACV,CAAA;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,SAAS,CAAsB;;IAMvC,OAAO,CAAC,MAAM;IA6Bd;;;OAGG;IACG,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1C;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAezC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAY5B,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5F,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAUxD,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAUhD;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,GAAE,MAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB3E;;;OAGG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB3E,WAAW,CAAC,MAAM,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC;IAU/D,WAAW,CAAC,OAAO,EAAE,yBAAyB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAchE,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,EAAE,CAAC;IAY9G;;;OAGG;IACG,8BAA8B,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,GAAG,IAAI,CAAC;IAwB3G,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAYpG,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCnE;;;;OAIG;IACG,qCAAqC,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0CpF,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CA4C5C"}
1
+ {"version":3,"file":"indexedDb.service.d.ts","sourceRoot":"","sources":["../../src/services/indexedDb.service.ts"],"names":[],"mappings":"AAWA,KAAK,KAAK,GAAG,MAAM,CAAA;AAEnB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACxC,cAAc,CAAC,EAAE,GAAG,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,GAAG,CAAA;CACX,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,GAAG,CAAA;CACV,CAAA;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,SAAS,CAAsB;;IAMvC,OAAO,CAAC,MAAM;IA6Bd;;;OAGG;IACG,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAY1C;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAezC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAY5B,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5F,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAUxD,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAUhD;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,GAAE,MAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB3E;;;OAGG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,OAAO,CAAC,MAAM,CAAC;IAoB3E,WAAW,CAAC,MAAM,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC;IAU/D,WAAW,CAAC,OAAO,EAAE,yBAAyB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAchE,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,EAAE,CAAC;IAY9G;;;OAGG;IACG,8BAA8B,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,GAAG,IAAI,CAAC;IAwBjH;;;;;;;;OAQG;IACG,sBAAsB,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,GAAG,IAAI,CAAC;IAyBnG,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAYpG,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCnE;;;;OAIG;IACG,qCAAqC,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqDpF,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CA4C5C"}
@@ -4,6 +4,7 @@ const legacyStoreName = 'mpEventsStore';
4
4
  const rrwebEventsStore = 'rrwebEvents';
5
5
  const otelSpansStore = 'otelSpans';
6
6
  const attrsStore = 'crashBufferAttrs';
7
+ import { EventType } from '@rrweb/types';
7
8
  export class IndexedDBService {
8
9
  constructor() {
9
10
  this.dbPromise = this.openDB();
@@ -211,6 +212,40 @@ export class IndexedDBService {
211
212
  req.onerror = () => reject(req.error);
212
213
  });
213
214
  }
215
+ /**
216
+ * Returns the last (highest-ts) Meta event record at/before `cutoffTs`.
217
+ *
218
+ * rrweb replays expect the stream to begin with:
219
+ * - Meta
220
+ * - FullSnapshot
221
+ *
222
+ * We persist packed events (plus a small wrapper) so we detect Meta via `record.event.eventType`.
223
+ */
224
+ async getLastRrwebMetaBefore(tabId, cutoffTs) {
225
+ const db = await this.dbPromise;
226
+ const range = IDBKeyRange.bound([tabId, 0], [tabId, cutoffTs]);
227
+ return new Promise((resolve, reject) => {
228
+ const tx = db.transaction(rrwebEventsStore, 'readonly');
229
+ const idx = tx.objectStore(rrwebEventsStore).index('tabId_ts');
230
+ const req = idx.openCursor(range, 'prev');
231
+ req.onsuccess = () => {
232
+ var _a;
233
+ const cursor = req.result;
234
+ if (!cursor) {
235
+ resolve(null);
236
+ return;
237
+ }
238
+ const value = cursor.value;
239
+ const eventType = (_a = value === null || value === void 0 ? void 0 : value.event) === null || _a === void 0 ? void 0 : _a.eventType;
240
+ if (eventType === EventType.Meta) {
241
+ resolve(value);
242
+ return;
243
+ }
244
+ cursor.continue();
245
+ };
246
+ req.onerror = () => reject(req.error);
247
+ });
248
+ }
214
249
  async getOtelSpansWindow(tabId, fromTs, toTs) {
215
250
  const db = await this.dbPromise;
216
251
  const range = IDBKeyRange.bound([tabId, fromTs], [tabId, toTs]);
@@ -257,15 +292,24 @@ export class IndexedDBService {
257
292
  }
258
293
  /**
259
294
  * Prune older data while keeping rrweb replayability:
260
- * - rrweb: keep the last FullSnapshot at/before cutoff as an "anchor"
295
+ * - rrweb: keep the last Meta + FullSnapshot pair at/before cutoff as an "anchor"
261
296
  * - spans: prune strictly by cutoff
262
297
  */
263
298
  async pruneOlderThanWithRrwebSnapshotAnchor(tabId, cutoffTs) {
264
299
  const db = await this.dbPromise;
265
300
  const anchor = await this.getLastRrwebFullSnapshotBefore(tabId, cutoffTs);
266
- // rrweb: delete everything strictly older than the anchor snapshot (keep the anchor itself)
301
+ // rrweb: delete everything strictly older than the anchor meta event (if any),
302
+ // otherwise strictly older than the anchor snapshot (keep the anchor itself).
303
+ //
304
+ // This preserves rrweb's expected replay prefix:
305
+ // Meta -> FullSnapshot
306
+ const anchorMeta = anchor ? await this.getLastRrwebMetaBefore(tabId, anchor.ts) : null;
267
307
  // spans: delete everything older than cutoffTs
268
- const rrwebCutoffTs = typeof (anchor === null || anchor === void 0 ? void 0 : anchor.ts) === 'number' ? Math.max(0, anchor.ts - 1) : cutoffTs;
308
+ const rrwebCutoffTs = typeof (anchorMeta === null || anchorMeta === void 0 ? void 0 : anchorMeta.ts) === 'number'
309
+ ? Math.max(0, anchorMeta.ts - 1)
310
+ : typeof (anchor === null || anchor === void 0 ? void 0 : anchor.ts) === 'number'
311
+ ? Math.max(0, anchor.ts - 1)
312
+ : cutoffTs;
269
313
  const rrwebRange = IDBKeyRange.bound([tabId, 0], [tabId, rrwebCutoffTs]);
270
314
  const spansRange = IDBKeyRange.bound([tabId, 0], [tabId, cutoffTs]);
271
315
  const pruneStore = (store, range) => new Promise((resolve, reject) => {