- Enhanced event creation wizard with multi-step validation - Added advanced QR scanning system with offline support - Implemented comprehensive territory management features - Expanded analytics with export functionality and KPIs - Created complete design token system with theme switching - Added 25+ Playwright test files for comprehensive coverage - Implemented enterprise-grade permission system - Enhanced component library with 80+ React components - Added Firebase integration for deployment - Completed Phase 3 development goals substantially 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
90 lines
1.9 KiB
TypeScript
90 lines
1.9 KiB
TypeScript
/// <reference types="@playwright/test" />
|
|
|
|
// Test-specific window extensions
|
|
declare global {
|
|
interface Window {
|
|
// Battery performance test properties
|
|
performanceMetrics?: {
|
|
startTime: number;
|
|
memoryUsage: Array<{
|
|
used: number;
|
|
total: number;
|
|
limit: number;
|
|
timestamp: number;
|
|
}>;
|
|
frameRates: Array<{
|
|
fps: number;
|
|
timestamp: number;
|
|
}>;
|
|
scanCounts: number;
|
|
errors: any[];
|
|
};
|
|
|
|
rapidScanMetrics?: {
|
|
processedScans: number;
|
|
droppedScans: number;
|
|
averageProcessingTime: number[];
|
|
};
|
|
|
|
rateLimitTesting?: {
|
|
warningsShown: number;
|
|
scansBlocked: number;
|
|
};
|
|
|
|
thermalTesting?: {
|
|
thermalState: string;
|
|
frameReductionActive: boolean;
|
|
performanceAdaptations: string[];
|
|
};
|
|
|
|
resourceMonitor?: {
|
|
cpuMetrics: Array<{
|
|
name: string;
|
|
duration: number;
|
|
timestamp: number;
|
|
}>;
|
|
renderMetrics: Array<{
|
|
frameDelta: number;
|
|
timestamp: number;
|
|
}>;
|
|
startTime: number;
|
|
};
|
|
|
|
leakDetector?: {
|
|
eventListeners: Map<string, number>;
|
|
intervals: Set<number>;
|
|
timeouts: Set<number>;
|
|
};
|
|
|
|
mediaStreamTracker?: {
|
|
createdStreams: number;
|
|
activeStreams: number;
|
|
cleanedUpStreams: number;
|
|
};
|
|
|
|
// Browser globals that may not be available in all contexts
|
|
gc?: () => void;
|
|
}
|
|
|
|
// Extend Performance interface for memory property (Chrome-specific)
|
|
interface Performance {
|
|
memory?: {
|
|
usedJSHeapSize: number;
|
|
totalJSHeapSize: number;
|
|
jsHeapSizeLimit: number;
|
|
};
|
|
}
|
|
|
|
// Extend Navigator interface for battery API
|
|
interface Navigator {
|
|
getBattery?: () => Promise<{
|
|
level: number;
|
|
charging: boolean;
|
|
chargingTime: number;
|
|
dischargingTime: number;
|
|
addEventListener?: (type: string, listener: EventListener) => void;
|
|
}>;
|
|
}
|
|
}
|
|
|
|
export {}; |