UNPKG

@bugspotter/sdk

Version:

Professional bug reporting SDK with screenshots, session replay, and automatic error capture for web applications

33 lines (32 loc) 1.21 kB
/** * Upload Helpers * Utilities for preparing data for presigned URL uploads */ /** * Compress replay events using CompressionStream API (browser native) * Falls back to no compression if API not available * @param events - Session replay events array * @returns Compressed Blob (gzip) */ export declare function compressReplayEvents(events: unknown[]): Promise<Blob>; /** * Convert screenshot canvas to Blob * @param canvas - HTML Canvas element with screenshot * @param quality - JPEG quality (0-1), default 0.9 * @returns Screenshot Blob */ export declare function canvasToBlob(canvas: HTMLCanvasElement, quality?: number): Promise<Blob>; /** * Estimate compressed size of replay events * Uses rough heuristic: gzip typically achieves 80-90% compression for JSON * @param events - Replay events array * @returns Estimated compressed size in bytes */ export declare function estimateCompressedReplaySize(events: unknown[]): number; /** * Check if file size is within upload limits * @param blob - File or Blob to check * @param maxSizeMB - Maximum size in megabytes * @returns True if within limit */ export declare function isWithinSizeLimit(blob: Blob, maxSizeMB: number): boolean;