Update source files

This commit is contained in:
2025-10-16 01:46:14 -05:00
commit 23cb3c8d67
187 changed files with 30600 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
import { invoke } from "@tauri-apps/api/core";
import type { AnalyticsAPI } from "@/shared/analytics/AnalyticsAPI";
/**
* Desktop implementation of AnalyticsAPI using Tauri commands.
*
* Events are sent to the Rust backend which handles batching and
* sending to PostHog.
*/
export class TauriAnalytics implements AnalyticsAPI {
track(event: string, properties?: Record<string, any>): void {
invoke("track_analytics_event", {
payload: {
event,
properties: properties || {},
},
}).catch((err) => {
console.error("Failed to track analytics event:", err);
});
}
async flush(): Promise<void> {
try {
await invoke("flush_analytics");
} catch (err) {
console.error("Failed to flush analytics:", err);
}
}
}
// Export singleton instance
export const tauriAnalytics = new TauriAnalytics();