aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
99 lines (96 loc) • 3.28 kB
JavaScript
import 'react';
/**
* Consciousness Interface Performance Optimization Utilities
*/
// Consciousness feature resource pool
class ConsciousnessResourcePool {
constructor() {
this.eyeTrackingWorkers = [];
this.biometricProcessors = [];
this.predictiveAnalyzers = [];
this.spatialAudioContexts = [];
}
// Initialize resource pools
initialize() {
// Pre-create Web Workers for heavy computations
// Only runs in browser environment, not during SSR
if (typeof Worker !== "undefined") {
try {
// Create workers with error handling to prevent build failures
const eyeWorker = new Worker(new URL("../workers/eyeTrackingWorker.js", import.meta.url));
this.eyeTrackingWorkers.push(eyeWorker);
const bioWorker = new Worker(new URL("../workers/biometricWorker.js", import.meta.url));
this.biometricProcessors.push(bioWorker);
const predWorker = new Worker(new URL("../workers/predictiveWorker.js", import.meta.url));
this.predictiveAnalyzers.push(predWorker);
} catch (error) {
// Workers not available in this environment (e.g., SSR, old browsers)
console.warn("Consciousness workers not available:", error);
}
}
}
// Get eye tracking worker
getEyeTrackingWorker() {
return this.eyeTrackingWorkers.pop() || null;
}
// Return eye tracking worker
returnEyeTrackingWorker(worker) {
this.eyeTrackingWorkers.push(worker);
}
// Get biometric processor
getBiometricProcessor() {
return this.biometricProcessors.pop() || null;
}
// Return biometric processor
returnBiometricProcessor(worker) {
this.biometricProcessors.push(worker);
}
// Get spatial audio context
getSpatialAudioContext() {
return this.spatialAudioContexts.pop() || null;
}
// Return spatial audio context
returnSpatialAudioContext(context) {
this.spatialAudioContexts.push(context);
}
// Clean up resources
cleanup() {
[...this.eyeTrackingWorkers, ...this.biometricProcessors, ...this.predictiveAnalyzers].forEach(worker => worker.terminate());
this.spatialAudioContexts.forEach(context => {
if (context.state !== "closed") {
context.close();
}
});
}
}
// Global resource pool (singleton, lazy initialization)
let consciousnessResourcePoolInstance = null;
/**
* Get or create the consciousness resource pool
* Call this from useEffect or component initialization
*/
function getConsciousnessResourcePool() {
if (!consciousnessResourcePoolInstance) {
consciousnessResourcePoolInstance = new ConsciousnessResourcePool();
// Only initialize if in browser context
if (typeof window !== "undefined") {
consciousnessResourcePoolInstance.initialize();
// Cleanup on unload
window.addEventListener("beforeunload", () => {
consciousnessResourcePoolInstance?.cleanup();
});
}
}
return consciousnessResourcePoolInstance;
}
/**
* @deprecated Use getConsciousnessResourcePool() instead
* Kept for backward compatibility - will lazy-initialize on first access
*/
new Proxy({}, {
get(target, prop) {
return getConsciousnessResourcePool()[prop];
}
});
export { getConsciousnessResourcePool };
//# sourceMappingURL=consciousnessOptimization.js.map