diff --git a/.env.release.example b/.env.release.example index 59c4251..618426c 100644 --- a/.env.release.example +++ b/.env.release.example @@ -1,13 +1,12 @@ # Copy to .env.release (gitignored) and fill in. # Consumed by scripts/release.mjs. +# +# electron-updater hash-verifies via SHA-512 embedded in latest.yml, so no +# minisign / Tauri signing key is needed any more — the legacy +# TAURI_SIGNING_* vars from the Tauri build can be removed once you've +# stopped publishing Tauri releases to this host. -# Absolute path to the private key file produced by `tauri signer generate`. -TAURI_SIGNING_PRIVATE_KEY_PATH=C:/Users/denni/.tauri/chatapp.key - -# Password set when generating the key. Leave empty if none. -TAURI_SIGNING_PRIVATE_KEY_PASSWORD= - -# Host serving latest.json + installer artifacts over HTTPS. +# Host serving latest.yml + installer artifacts over HTTPS. UPDATE_HOST=update.netralax.cloud # SSH user on UPDATE_HOST with write access to UPDATE_REMOTE_PATH. diff --git a/.gitignore b/.gitignore index 75177a5..e032ef7 100644 --- a/.gitignore +++ b/.gitignore @@ -29,14 +29,9 @@ web-build/ *.key *.mobileprovision -# Tauri updater signing key (private — NEVER commit) -.tauri-updater.key -# .tauri-updater.key.pub is public, may be committed - -# Tauri -apps/desktop/src-tauri/target/ -apps/desktop/src-tauri/gen/ -apps/desktop/src-tauri/WixTools/ +# Electron desktop build artifacts +apps/desktop/out/ +apps/desktop/release/ # Logs *.log diff --git a/apps/desktop/electron.vite.config.ts b/apps/desktop/electron.vite.config.ts new file mode 100644 index 0000000..c7be0ab --- /dev/null +++ b/apps/desktop/electron.vite.config.ts @@ -0,0 +1,90 @@ +// electron-vite config. Three targets: +// - main: the Electron main-process entry (electron/main.ts) +// - preload: the contextBridge script (electron/preload.ts) +// - renderer: the existing React app at apps/desktop/ (unchanged root) +// +// Manual chunks + optimizeDeps config is ported from the pre-migration +// vite.config.ts so LiveKit/libsodium/supabase/react vendor bundles keep +// caching independently across app updates. + +import react from '@vitejs/plugin-react'; +import { defineConfig, externalizeDepsPlugin } from 'electron-vite'; +import path from 'node:path'; + +const rendererAliases = { + '@': path.resolve(__dirname, './src'), + '@shared': path.resolve(__dirname, '../../packages/shared/src'), + '@db-types': path.resolve(__dirname, '../../packages/db-types/src'), + '@ui-web': path.resolve(__dirname, '../../packages/ui-web/src'), +}; + +export default defineConfig({ + main: { + plugins: [externalizeDepsPlugin()], + build: { + outDir: 'out/main', + rollupOptions: { + input: path.resolve(__dirname, 'electron/main.ts'), + }, + }, + }, + preload: { + plugins: [externalizeDepsPlugin()], + build: { + outDir: 'out/preload', + rollupOptions: { + input: path.resolve(__dirname, 'electron/preload.ts'), + }, + }, + }, + renderer: { + root: '.', + // file:// loading from inside app.asar can't resolve root-absolute + // asset URLs (`/assets/...`) — they hit the OS root instead of the + // bundle. Relative base produces `./assets/...` which works in both + // dev (served from /) and packaged builds. + base: './', + plugins: [react()], + resolve: { + alias: rendererAliases, + }, + optimizeDeps: { + // libsodium-wrappers-sumo (and the compact variant) ship broken + // "import" conditions in package exports — the ESM bundle + // references a sibling ./libsodium.mjs that isn't in the + // published artefact. Force esbuild to pick the "require" + // condition so the self-contained CJS build is used. + include: ['libsodium-wrappers-sumo'], + esbuildOptions: { + conditions: ['require', 'node', 'default'], + }, + }, + build: { + outDir: 'out/renderer', + rollupOptions: { + input: path.resolve(__dirname, 'index.html'), + output: { + manualChunks: (id: string): string | undefined => { + if (id.includes('node_modules/livekit-client')) return 'vendor-livekit'; + if (id.includes('node_modules/libsodium-wrappers-sumo')) + return 'vendor-sodium'; + if (id.includes('node_modules/@supabase')) return 'vendor-supabase'; + if ( + id.includes('node_modules/react-router') || + id.includes('node_modules/react-dom') || + id.includes('node_modules/react/') + ) { + return 'vendor-react'; + } + return undefined; + }, + }, + }, + }, + server: { + port: 1420, + strictPort: true, + }, + clearScreen: false, + }, +}); diff --git a/apps/desktop/electron/ipc-types.ts b/apps/desktop/electron/ipc-types.ts new file mode 100644 index 0000000..0258b24 --- /dev/null +++ b/apps/desktop/electron/ipc-types.ts @@ -0,0 +1,266 @@ +// Single source of truth for the Electron IPC surface. Main process +// registers handlers keyed by the CHANNEL constants; preload exposes a +// typed `window.electronAPI` that mirrors the same shape. Renderer +// imports the type-only declarations via a d.ts published from preload. +// +// Rule: anything that the Rust side of Tauri used to do goes through +// here. If a call is not in this file it should not exist in the +// renderer. + +export const CHANNELS = { + // Screen-share — replaces Rust screen_sources + browser getDisplayMedia + // coordination. Video still flows through Chromium's native pipeline + // (LiveKit JS SDK calls getDisplayMedia); we only feed it source ids. + SCREEN_GET_SOURCES: 'screen:get-sources', + SCREEN_GET_THUMBNAIL: 'screen:get-thumbnail', + /** Renderer-driven source selection: the picker modal calls this with + * the chosen sourceId BEFORE invoking getDisplayMedia. The main-process + * display-media handler then routes that source into the LiveKit track + * (instead of silently granting request.frame). Pass null to clear. */ + SCREEN_SET_PENDING_SOURCE: 'screen:set-pending-source', + + // System audio loopback — Implementation is renderer-driven under Electron. + // Main provides the screen source id (AUDIO_LOOPBACK_RESOLVE_SOURCE); the + // renderer then calls navigator.mediaDevices.getUserMedia with a + // chromeMediaSourceId constraint to obtain the loopback MediaStream + // directly. The legacy START/STOP channels are kept as named constants + // for now to avoid breaking type imports but have no handlers — see + // the renderer's lib/screenAudio.ts for the new flow. + AUDIO_LOOPBACK_RESOLVE_SOURCE: 'audio:loopback:resolve-source', + + // Native WASAPI process-loopback path (Windows only). Implemented by + // the @chatapp/audio-loopback-native napi-rs addon; main owns the + // session and forwards PCM chunks to the renderer via the CHUNK event. + // Captures every render session on the box *except* our own PID tree, + // so peers in a video call don't hear themselves echoed back when the + // sharer ticks "include system audio". Falls back to the renderer- + // driven getUserMedia path on macOS/Linux or when the addon isn't + // available (dev builds without `pnpm build:native`, packaged builds + // missing the .node binary, etc.). + AUDIO_LOOPBACK_START: 'audio:loopback:start', + /** Window-share variant: capture audio of ONLY the picked window's + * process tree (INCLUDE_TARGET_PROCESS_TREE). Renderer derives the + * HWND from desktopCapturer's `window::0` source ids. */ + AUDIO_LOOPBACK_START_FOR_WINDOW: 'audio:loopback:start-for-window', + AUDIO_LOOPBACK_STOP: 'audio:loopback:stop', + AUDIO_LOOPBACK_CHUNK: 'audio:loopback:chunk', + + // Global hotkeys — replaces @tauri-apps/plugin-global-shortcut. Main + // owns the registration; renderer listens to `shortcut:fired` events + // for press and `shortcut:released` for PTT-style release. + SHORTCUT_REGISTER: 'shortcut:register', + SHORTCUT_UNREGISTER: 'shortcut:unregister', + SHORTCUT_IS_REGISTERED: 'shortcut:is-registered', + SHORTCUT_EVT_FIRED: 'shortcut:fired', + SHORTCUT_EVT_RELEASED: 'shortcut:released', + + // OS notifications — replaces @tauri-apps/plugin-notification. Permission + // is always granted on desktop Electron; we keep the surface symmetric + // with the Tauri version so renderer code doesn't need to branch. + NOTIFY_SHOW: 'notify:show', + NOTIFY_PERMISSION: 'notify:permission', + + // Tray badge — replaces tauri emit('tray-unread-update'). Main owns the + // Tray instance and overlays an unread count; renderer just pushes + // the number. + TRAY_UNREAD: 'tray:unread', + + // Secure store — replaces plugin-stronghold + custom file vault. Uses + // Electron safeStorage (DPAPI/Keychain/libsecret) to seal per-user + // blobs on disk. `secure-store:open` establishes a per-user handle; + // subsequent calls use the stringified handle. + SECURE_STORE_OPEN: 'secure-store:open', + SECURE_STORE_GET: 'secure-store:get', + SECURE_STORE_SET: 'secure-store:set', + SECURE_STORE_REMOVE: 'secure-store:remove', + SECURE_STORE_CLOSE: 'secure-store:close', + + // Filesystem (scoped to app local data dir) — replaces plugin-fs. + // All paths are relative to appLocalDataDir; main rejects traversal. + FS_READ: 'fs:read', + FS_WRITE: 'fs:write', + FS_EXISTS: 'fs:exists', + FS_MKDIR: 'fs:mkdir', + FS_RENAME: 'fs:rename', + FS_REMOVE: 'fs:remove', + FS_APP_LOCAL_DATA_DIR: 'fs:app-local-data-dir', + + // SQLite — replaces plugin-sql. The renderer gets a handle per DB file. + SQL_LOAD: 'sql:load', + SQL_EXECUTE: 'sql:execute', + SQL_SELECT: 'sql:select', + SQL_CLOSE: 'sql:close', + + // Auto-updater — replaces plugin-updater. electron-updater feed. + UPDATER_CHECK: 'updater:check', + UPDATER_DOWNLOAD_INSTALL: 'updater:download-install', + UPDATER_EVT_PROGRESS: 'updater:progress', + + // Autostart — replaces @tauri-apps/plugin-autostart. Uses Electron's + // built-in app.setLoginItemSettings() to manage OS login items (Windows + // registry Run key, macOS LaunchAgent, Linux .desktop entry). + AUTOSTART_IS_ENABLED: 'autostart:is-enabled', + AUTOSTART_SET: 'autostart:set', + + // Window fullscreen — replaces Tauri's `appWindow.setFullscreen(...)`. + // Used by the call cinema mode to flip the host BrowserWindow into real + // OS fullscreen so the Windows taskbar / macOS menubar gets covered. + WINDOW_SET_FULLSCREEN: 'window:set-fullscreen', +} as const; + +// ---- Screen sources ------------------------------------------------------ + +export interface ScreenSource { + /** Opaque source id. Feed unchanged into getDisplayMedia via the + * chromeMediaSourceId constraint when we want Chromium to capture it. */ + id: string; + name: string; + kind: 'screen' | 'window'; + /** Display index for monitors (0-based). null for windows. */ + displayId: number | null; + /** Pre-fetched thumbnail (data URL). Cheap to get from desktopCapturer + * so we return it inline with the listing — avoids a second round-trip + * per source. */ + thumbnailDataUrl: string | null; + /** App icon for windows (data URL); null when unavailable. */ + iconDataUrl: string | null; +} + +// ---- Audio loopback ------------------------------------------------------ + +export interface AudioFrame { + captureId: number; + sampleRate: number; + channels: number; + /** Base64 of interleaved f32 LE stereo. Matches the old Tauri + * payload shape so the existing AudioWorklet doesn't change. */ + samplesBase64: string; +} + +/** Payload shape of `AUDIO_LOOPBACK_CHUNK` events delivered from main + * to the renderer. `samples` is a Float32Array of interleaved f32 + * stereo PCM at 48kHz — Electron's structured-clone marshals + * TypedArrays directly, so no base64 hop is needed (unlike the legacy + * Tauri channel). */ +export interface AudioLoopbackChunk { + captureId: number; + samples: Float32Array; +} + +/** Result of `AUDIO_LOOPBACK_START`. */ +export interface AudioLoopbackStartResult { + captureId: number; +} + +// ---- Shortcuts ----------------------------------------------------------- + +export type ShortcutKind = 'press' | 'ptt'; + +export interface ShortcutRegisterArgs { + /** Accelerator in Electron syntax (e.g. `CommandOrControl+Shift+M`, + * or a bare key code like `F13`). PTT uses a single raw key. */ + accelerator: string; + /** Opaque id the renderer picked. Used in `shortcut:fired` events and + * for unregister. Scoping to a logical id (not the accelerator) + * means the same key can be re-bound without double-register. */ + id: string; + kind: ShortcutKind; +} + +export interface ShortcutEvent { + id: string; + /** Monotonic timestamp (ms since epoch) — useful for PTT to detect + * held-key repeats at the OS level. */ + ts: number; +} + +// ---- Notifications ------------------------------------------------------- + +export interface NotifyArgs { + title: string; + body: string; + /** Silent = no system sound. Renderer already owns its own ringtone + * layer, so most notifications are silent. */ + silent?: boolean; +} + +// ---- Secure store -------------------------------------------------------- + +export interface SecureStoreOpenArgs { + userId: string; +} + +export interface SecureStoreHandle { + handle: string; + /** True if the platform's safeStorage is available (encrypted). False + * means the store falls back to plaintext-on-disk — the renderer + * should warn the user and avoid storing long-lived secrets. */ + encrypted: boolean; +} + +// ---- Filesystem ---------------------------------------------------------- + +export type FsPath = string; + +export interface FsWriteArgs { + path: FsPath; + /** Base64 of raw bytes. JSON IPC can't carry binary cleanly. */ + dataBase64: string; +} + +export interface FsRenameArgs { + from: FsPath; + to: FsPath; +} + +// ---- SQL ----------------------------------------------------------------- + +export interface SqlLoadArgs { + /** DB filename (resolved under appLocalDataDir). Tauri's plugin-sql + * calls these `sqlite:`; we strip the prefix on the main side. */ + name: string; +} + +export interface SqlExecuteArgs { + handle: string; + query: string; + bindings?: unknown[]; +} + +export interface SqlExecuteResult { + rowsAffected: number; + lastInsertId: number | null; +} + +export interface SqlSelectArgs { + handle: string; + query: string; + bindings?: unknown[]; +} + +export type SqlSelectResult = Record[]; + +// ---- Updater ------------------------------------------------------------- + +export interface UpdateInfo { + version: string; + releaseNotes: string | null; +} + +export interface UpdateCheckResult { + available: boolean; + info: UpdateInfo | null; +} + +export interface UpdateProgress { + percent: number; + transferred: number; + total: number; +} + +// ---- Runtime marker ------------------------------------------------------ + +/** Value exposed on `window.electronAPI.platform`. Used by the renderer + * to keep the existing `isTauriRuntime()`-style branches but pointed at + * the new runtime. */ +export const ELECTRON_RUNTIME_MARKER = 'electron-chatapp-v1' as const; diff --git a/apps/desktop/electron/main.ts b/apps/desktop/electron/main.ts new file mode 100644 index 0000000..88b0d2a --- /dev/null +++ b/apps/desktop/electron/main.ts @@ -0,0 +1,232 @@ +// Electron entry point. Creates the single BrowserWindow, wires all IPC +// module registrars, and keeps a single running instance (second launch +// focuses the existing window instead of opening a new one). +// +// Loads the renderer from the Vite dev server in dev (port 1420, matches +// the old Tauri devUrl so nothing in the renderer code needs to change) +// and from the built dist in packaged mode. + +import { app, BrowserWindow, desktopCapturer, Menu, session } from 'electron'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +import { register as registerAudioLoopback } from './modules/audio-loopback'; +import { register as registerAutostart } from './modules/autostart'; +import { register as registerFsScoped } from './modules/fs-scoped'; +import { register as registerNotifications } from './modules/notifications'; +import { register as registerScreenAudio } from './modules/screen-audio'; +import { + consumePendingShareSourceId, + register as registerScreenSources, +} from './modules/screen-sources'; +import { register as registerSecureStore } from './modules/secure-store'; +import { register as registerShortcuts } from './modules/shortcuts'; +import { register as registerSql } from './modules/sql'; +import { register as registerTray } from './modules/tray'; +import { register as registerUpdater } from './modules/updater'; +import { register as registerWindowFullscreen } from './modules/window-fullscreen'; +import { attach as attachWindowState, loadState } from './window-state'; + +// __dirname in an ESM main-process bundle resolves to the out/main dir +// after electron-vite builds. Use a safe helper that works in both CJS +// (electron-vite main target defaults to CJS) and ESM contexts. +const __filenameSafe = + typeof __filename === 'string' ? __filename : fileURLToPath(import.meta.url); +const __dirnameSafe = path.dirname(__filenameSafe); + +const DEV_URL = 'http://localhost:1420'; +const WINDOW_STATE_FILE = 'window-state.json'; + +let mainWindow: BrowserWindow | null = null; + +function resolvePreloadPath(): string { + // electron-vite names the preload bundle after the entry filename, so + // electron/preload.ts → out/preload/preload.mjs. ESM preload works in + // modern Electron when sandbox: false (which we have — preload needs + // Node APIs for libsodium init etc.). The previous `index.cjs` lookup + // was a stale leftover that silently never loaded — every IPC call + // (secret store, autostart, native notifications, screen sources, + // pending-share-source) returned undefined and any .x access threw. + return path.join(__dirnameSafe, '..', 'preload', 'preload.mjs'); +} + +function resolveRendererIndex(): string { + return path.join(__dirnameSafe, '..', 'renderer', 'index.html'); +} + +function resolveIconPath(): string { + const packaged = path.join(process.resourcesPath || '', 'icon.ico'); + const dev = path.join(app.getAppPath(), 'resources', 'icon.ico'); + return app.isPackaged ? packaged : dev; +} + +async function createWindow(): Promise { + const state = await loadState(WINDOW_STATE_FILE); + + const win = new BrowserWindow({ + title: 'ChatApp', + width: state.width, + height: state.height, + ...(state.x !== undefined ? { x: state.x } : {}), + ...(state.y !== undefined ? { y: state.y } : {}), + minWidth: 800, + minHeight: 600, + resizable: true, + icon: resolveIconPath(), + show: false, + // Discord-style: no menu bar at all (no File/Edit/View/Window/Help). + // Belt: autoHideMenuBar hides it visually; suspenders: the global + // Menu.setApplicationMenu(null) below removes it entirely so Alt + // can't reveal it either. + autoHideMenuBar: true, + webPreferences: { + contextIsolation: true, + nodeIntegration: false, + // sandbox: false — preload needs Node APIs (libsodium init etc.) + sandbox: false, + preload: resolvePreloadPath(), + // Strip DevTools from release builds. Disables openDevTools(), + // F12, Ctrl+Shift+I, and the right-click Inspect entry for end + // users. Packaged = release; unpackaged = `electron-vite dev`, + // where we still want the inspector for local debugging. + devTools: !app.isPackaged, + }, + }); + + if (state.maximized) win.maximize(); + + win.once('ready-to-show', () => win.show()); + + attachWindowState(win, WINDOW_STATE_FILE); + + if (!app.isPackaged) { + await win.loadURL(DEV_URL); + } else { + await win.loadFile(resolveRendererIndex()); + } + + win.on('closed', () => { + if (mainWindow === win) mainWindow = null; + }); + + return win; +} + +function configureDisplayMediaHandler(): void { + // Our custom picker runs in the renderer; when LiveKit (or anything + // else) calls navigator.mediaDevices.getDisplayMedia with a specific + // chromeMediaSourceId constraint, Chromium defers to the handler we + // install here. + // + // Two paths: + // 1. Discord-style picker case — the renderer set a pending source id + // via SCREEN_SET_PENDING_SOURCE before calling getDisplayMedia. We + // resolve that id back to a desktopCapturer Source and pass it as + // the video grant. This is what makes the user's tile choice + // actually take effect. + // 2. Fallback — no pending id (e.g. a stray getDisplayMedia from + // another code path). Grant whatever the renderer's constraint + // selected by passing the frame back, matching the legacy v0.11.x + // behavior so we don't break anything off the picker code path. + // + // Audio: 'loopback' captures all system audio. We tried + // 'loopbackWithMute' (which excludes this app's own audio output from + // the capture) but it ALSO mutes the renderer's audio playback + // locally — so the user couldn't hear remote peers during a share + // and the stream had no audio either when the only thing playing was + // the muted call audio. There is no clean Electron equivalent of + // Tauri's EXCLUDE_TARGET_PROCESS_TREE that affects only the capture + // and not local playback. Trade-off chosen here: keep local audio + // working ('loopback'), let the user opt into the JS-level auto-duck + // (`screenShareSettings.duckRemoteAudioWhileSharing`) when they + // actually need the echo prevention. Default: off. + // https://www.electronjs.org/docs/latest/api/session#sessetdisplaymediarequesthandlerhandler-opts + session.defaultSession.setDisplayMediaRequestHandler( + (request, callback) => { + const pendingId = consumePendingShareSourceId(); + if (pendingId) { + void desktopCapturer + .getSources({ types: ['screen', 'window'] }) + .then((sources) => { + const source = sources.find((s) => s.id === pendingId); + if (source) { + callback({ video: source, audio: 'loopback' }); + } else { + // Source vanished between picker confirm and grant (window + // closed, monitor unplugged). Fall back to the frame grant + // so getDisplayMedia doesn't hang the renderer. + callback({ + video: request.frame as unknown as Electron.WebFrameMain, + audio: 'loopback', + }); + } + }) + .catch(() => { + callback({ + video: request.frame as unknown as Electron.WebFrameMain, + audio: 'loopback', + }); + }); + return; + } + callback({ + video: request.frame as unknown as Electron.WebFrameMain, + audio: 'loopback', + }); + }, + { useSystemPicker: false }, + ); +} + +// Single-instance lock — second launch focuses existing window instead +// of spawning a duplicate process. +const gotLock = app.requestSingleInstanceLock(); +if (!gotLock) { + app.quit(); +} else { + app.on('second-instance', () => { + if (!mainWindow) return; + if (mainWindow.isMinimized()) mainWindow.restore(); + mainWindow.show(); + mainWindow.focus(); + }); + + void app.whenReady().then(async () => { + // Strip the default application menu globally — we don't ship any + // File/Edit/View/Window/Help entries (Discord-style chrome). Must run + // BEFORE the first BrowserWindow is created; setting it later causes + // the menu to flash for a frame on Windows. + Menu.setApplicationMenu(null); + configureDisplayMediaHandler(); + mainWindow = await createWindow(); + + // Stateless registrars first. + registerScreenSources(); + registerScreenAudio(); + registerNotifications(); + registerSecureStore(); + registerFsScoped(); + registerSql(); + registerAutostart(); + + // Window-dependent registrars — only call once mainWindow exists so + // event emitters have somewhere to send. + registerShortcuts(mainWindow); + registerTray(mainWindow); + registerUpdater(mainWindow); + registerWindowFullscreen(mainWindow); + registerAudioLoopback(mainWindow); + }); + + app.on('window-all-closed', () => { + if (process.platform !== 'darwin') app.quit(); + }); + + app.on('activate', () => { + if (!mainWindow) { + void createWindow().then((w) => { + mainWindow = w; + }); + } + }); +} diff --git a/apps/desktop/electron/modules/audio-loopback.ts b/apps/desktop/electron/modules/audio-loopback.ts new file mode 100644 index 0000000..fb04b0f --- /dev/null +++ b/apps/desktop/electron/modules/audio-loopback.ts @@ -0,0 +1,213 @@ +// Native WASAPI process-loopback bridge. Wraps the +// @chatapp/audio-loopback-native napi-rs addon and forwards PCM chunks +// to the renderer over IPC. +// +// Why the addon over Chromium's built-in 'loopback' source: the OS +// process-loopback API supports EXCLUDE_TARGET_PROCESS_TREE, which lets +// us capture every render session *except* our own PID tree. That keeps +// LiveKit's call playback out of the outgoing share so peers don't hear +// themselves echoed back. Chromium's 'loopback' has no such filter. +// +// Windows-only. The addon's start_capture call rejects on macOS/Linux +// with a clear error string and the renderer falls through to the +// existing Chromium getUserMedia path (lib/screenAudio.ts). + +import { app, BrowserWindow, ipcMain } from 'electron'; +import { createRequire } from 'node:module'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +import { + CHANNELS, + type AudioLoopbackChunk, + type AudioLoopbackStartResult, +} from '../ipc-types'; + +interface NativeAudioLoopback { + startCapture: (callback: (samples: Float32Array) => void) => number; + /** INCLUDE_TARGET_PROCESS_TREE variant — capture only `pid`'s tree. + * Used for window-shares so we get just the picked app's audio. */ + startCaptureForPid?: ( + pid: number, + callback: (samples: Float32Array) => void, + ) => number; + /** Look up the owning process id of a top-level window handle. */ + resolveWindowPid?: (hwnd: number) => number; + stopCapture: (captureId: number) => void; +} + +// __dirname in an ESM main bundle resolves to out/main after +// electron-vite builds. We need a CJS-style require to load the native +// addon — `import` would trigger ESM resolution which doesn't handle +// .node files cleanly across electron-vite's transform. +const __filenameSafe = + typeof __filename === 'string' ? __filename : fileURLToPath(import.meta.url); +const __dirnameSafe = path.dirname(__filenameSafe); +const requireCjs = createRequire(__filenameSafe); + +let cachedAddon: NativeAudioLoopback | null | undefined; + +function resolveAddon(): NativeAudioLoopback | null { + if (cachedAddon !== undefined) return cachedAddon; + + // Production: electron-builder copies the .node into + // resources/native/audio-loopback.node (see extraResources in + // package.json). + // Dev: napi build emits the binary alongside the addon's package.json + // at apps/desktop/native/audio-loopback/audio-loopback..node, + // and writes an index.js shim that auto-selects the right triple. + // Loading the shim works in both layouts when the binary sits + // adjacent to it; for the packaged single-file layout we require the + // .node directly. + const candidates: string[] = []; + if (app.isPackaged && process.resourcesPath) { + candidates.push(path.join(process.resourcesPath, 'native', 'audio-loopback.node')); + } + // Dev workspace layout — main bundle lives at out/main/main.js, + // addon lives at native/audio-loopback/. Walk up two levels from the + // bundle dir (out/main → out → apps/desktop) and into native/. + candidates.push( + path.join(__dirnameSafe, '..', '..', 'native', 'audio-loopback', 'index.js'), + // Direct .node fallback in case the JS shim is missing (e.g. user + // ran `cargo build` manually instead of `napi build`). + path.join( + __dirnameSafe, + '..', + '..', + 'native', + 'audio-loopback', + `audio-loopback.${process.platform}-${process.arch}-msvc.node`, + ), + ); + + for (const candidate of candidates) { + try { + const mod = requireCjs(candidate) as NativeAudioLoopback; + if ( + typeof mod.startCapture === 'function' && + typeof mod.stopCapture === 'function' + ) { + cachedAddon = mod; + return mod; + } + } catch { + /* try next candidate */ + } + } + + cachedAddon = null; + return null; +} + +/** Track active capture ids per BrowserWindow so we can tear them down + * if the renderer is destroyed mid-capture (renderer crash, window + * close during share). Without this the WASAPI thread would leak. */ +const activeCaptures = new Map>(); + +function registerWindowCleanup(win: BrowserWindow, addon: NativeAudioLoopback): void { + const wcId = win.webContents.id; + if (activeCaptures.has(wcId)) return; + activeCaptures.set(wcId, new Set()); + const cleanup = (): void => { + const ids = activeCaptures.get(wcId); + if (!ids) return; + for (const id of ids) { + try { + addon.stopCapture(id); + } catch { + /* best effort */ + } + } + activeCaptures.delete(wcId); + }; + win.webContents.once('destroyed', cleanup); + win.once('closed', cleanup); +} + +export function register(mainWindow: BrowserWindow): void { + ipcMain.handle( + CHANNELS.AUDIO_LOOPBACK_START, + async (event): Promise => { + const addon = resolveAddon(); + if (!addon) { + throw new Error('audio-loopback native addon unavailable on this platform'); + } + const wc = event.sender; + // captureId is assigned synchronously by addon.startCapture below, + // but the chunk callback needs to reference it — we forward-declare + // via a closure-shared holder. The first chunk can only fire after + // startCapture returns (the worker thread spawn happens inside it). + let assignedId = 0; + const cb = makeChunkCallback(wc, () => assignedId); + assignedId = addon.startCapture(cb); + registerWindowCleanup(mainWindow, addon); + const set = activeCaptures.get(mainWindow.webContents.id); + if (set) set.add(assignedId); + return { captureId: assignedId }; + }, + ); + + ipcMain.handle( + CHANNELS.AUDIO_LOOPBACK_START_FOR_WINDOW, + async ( + event, + args: { hwnd: number }, + ): Promise => { + const addon = resolveAddon(); + if (!addon) { + throw new Error('audio-loopback native addon unavailable on this platform'); + } + if (!addon.startCaptureForPid || !addon.resolveWindowPid) { + throw new Error( + 'audio-loopback native addon is too old: missing startCaptureForPid / resolveWindowPid (rebuild with `pnpm build:native`)', + ); + } + if (!args || typeof args.hwnd !== 'number' || !Number.isFinite(args.hwnd)) { + throw new Error('AUDIO_LOOPBACK_START_FOR_WINDOW: hwnd must be a finite number'); + } + const pid = addon.resolveWindowPid(args.hwnd); + const wc = event.sender; + let assignedId = 0; + const cb = makeChunkCallback(wc, () => assignedId); + assignedId = addon.startCaptureForPid(pid, cb); + registerWindowCleanup(mainWindow, addon); + const set = activeCaptures.get(mainWindow.webContents.id); + if (set) set.add(assignedId); + return { captureId: assignedId }; + }, + ); + + ipcMain.handle( + CHANNELS.AUDIO_LOOPBACK_STOP, + async (_event, captureId: number): Promise => { + const addon = resolveAddon(); + if (!addon) return; + try { + addon.stopCapture(captureId); + } finally { + const set = activeCaptures.get(mainWindow.webContents.id); + if (set) set.delete(captureId); + } + }, + ); +} + +/** Shared chunk-forwarding callback. Both start variants produce the + * same wire format (interleaved f32 stereo @ 48kHz) so the renderer + * doesn't need to know which start path was used — the captureId + * routes the chunks. */ +function makeChunkCallback( + wc: Electron.WebContents, + getCaptureId: () => number, +): (samples: Float32Array) => void { + return (samples: Float32Array): void => { + // The addon delivers each chunk on its WASAPI capture thread — + // marshal to the renderer's webContents from the main loop. If the + // webContents has been destroyed (window closed during a share) + // silently drop; the cleanup hook will stop the capture. + if (wc.isDestroyed()) return; + const captureId = getCaptureId(); + const payload: AudioLoopbackChunk = { captureId, samples }; + wc.send(CHANNELS.AUDIO_LOOPBACK_CHUNK, payload); + }; +} diff --git a/apps/desktop/electron/modules/autostart.ts b/apps/desktop/electron/modules/autostart.ts new file mode 100644 index 0000000..eb040ad --- /dev/null +++ b/apps/desktop/electron/modules/autostart.ts @@ -0,0 +1,29 @@ +// Autostart adapter — replaces Tauri's `tauri-plugin-autostart`. Uses +// Electron's built-in `app.setLoginItemSettings()` / `app.getLoginItemSettings()`, +// which manages the OS login-items mechanism on Windows (HKCU registry +// Run key), macOS (LaunchAgent), and Linux (.desktop entry). + +import { app, ipcMain } from 'electron'; + +import { CHANNELS } from '../ipc-types'; + +export function register(): void { + ipcMain.handle(CHANNELS.AUTOSTART_IS_ENABLED, () => { + try { + const settings = app.getLoginItemSettings(); + return settings.openAtLogin; + } catch (err: unknown) { + console.warn('autostart get failed', err); + return false; + } + }); + + ipcMain.handle(CHANNELS.AUTOSTART_SET, (_evt, enabled: boolean) => { + try { + app.setLoginItemSettings({ openAtLogin: !!enabled }); + } catch (err: unknown) { + console.warn('autostart set failed', err); + throw err; + } + }); +} diff --git a/apps/desktop/electron/modules/fs-scoped.ts b/apps/desktop/electron/modules/fs-scoped.ts new file mode 100644 index 0000000..67c23ee --- /dev/null +++ b/apps/desktop/electron/modules/fs-scoped.ts @@ -0,0 +1,81 @@ +// Scoped filesystem. Every renderer-supplied path is resolved under +// `app.getPath('userData')`. Post-normalisation we re-check the resolved +// absolute path is still contained in the root; anything that breaks out +// (via .., symlink, absolute path) is rejected. Binary payloads are +// base64 on the wire because JSON IPC can't carry raw bytes cleanly. + +import { app, ipcMain } from 'electron'; +import { promises as fs } from 'node:fs'; +import path from 'node:path'; + +import { CHANNELS, type FsPath, type FsRenameArgs, type FsWriteArgs } from '../ipc-types'; + +function rootDir(): string { + return app.getPath('userData'); +} + +function resolveScoped(rel: FsPath): string { + const root = rootDir(); + if (path.isAbsolute(rel)) { + throw new Error('fs-scoped: absolute path rejected'); + } + const normalised = path.normalize(rel); + if (normalised.split(/[\\/]/).includes('..')) { + throw new Error('fs-scoped: path traversal rejected'); + } + const abs = path.resolve(root, normalised); + const withSep = root.endsWith(path.sep) ? root : root + path.sep; + if (abs !== root && !abs.startsWith(withSep)) { + throw new Error('fs-scoped: escaped scope'); + } + return abs; +} + +export function register(): void { + ipcMain.handle(CHANNELS.FS_APP_LOCAL_DATA_DIR, async (): Promise => rootDir()); + + ipcMain.handle(CHANNELS.FS_READ, async (_evt, rel: FsPath): Promise => { + const abs = resolveScoped(rel); + try { + const buf = await fs.readFile(abs); + return buf.toString('base64'); + } catch (err: unknown) { + if ((err as NodeJS.ErrnoException).code === 'ENOENT') return null; + throw err; + } + }); + + ipcMain.handle(CHANNELS.FS_WRITE, async (_evt, args: FsWriteArgs): Promise => { + const abs = resolveScoped(args.path); + await fs.mkdir(path.dirname(abs), { recursive: true }); + const buf = Buffer.from(args.dataBase64, 'base64'); + await fs.writeFile(abs, buf); + }); + + ipcMain.handle(CHANNELS.FS_EXISTS, async (_evt, rel: FsPath): Promise => { + const abs = resolveScoped(rel); + try { + await fs.access(abs); + return true; + } catch { + return false; + } + }); + + ipcMain.handle(CHANNELS.FS_MKDIR, async (_evt, rel: FsPath): Promise => { + const abs = resolveScoped(rel); + await fs.mkdir(abs, { recursive: true }); + }); + + ipcMain.handle(CHANNELS.FS_RENAME, async (_evt, args: FsRenameArgs): Promise => { + const from = resolveScoped(args.from); + const to = resolveScoped(args.to); + await fs.mkdir(path.dirname(to), { recursive: true }); + await fs.rename(from, to); + }); + + ipcMain.handle(CHANNELS.FS_REMOVE, async (_evt, rel: FsPath): Promise => { + const abs = resolveScoped(rel); + await fs.rm(abs, { recursive: true, force: true }); + }); +} diff --git a/apps/desktop/electron/modules/notifications.ts b/apps/desktop/electron/modules/notifications.ts new file mode 100644 index 0000000..36330ee --- /dev/null +++ b/apps/desktop/electron/modules/notifications.ts @@ -0,0 +1,26 @@ +// OS notifications. Electron's Notification API doesn't have a separate +// permission prompt on desktop — permission is implicit and always +// granted — so `notify:permission` is a compatibility shim that keeps +// the renderer's existing plugin-notification call-sites working +// without branching. + +import { ipcMain, Notification } from 'electron'; + +import { CHANNELS, type NotifyArgs } from '../ipc-types'; + +export function register(): void { + ipcMain.handle(CHANNELS.NOTIFY_SHOW, async (_evt, args: NotifyArgs): Promise => { + if (!Notification.isSupported()) return; + const n = new Notification({ + title: args.title, + body: args.body, + silent: args.silent ?? true, + }); + n.show(); + }); + + ipcMain.handle( + CHANNELS.NOTIFY_PERMISSION, + async (): Promise<'granted' | 'denied' | 'default'> => 'granted', + ); +} diff --git a/apps/desktop/electron/modules/screen-audio.ts b/apps/desktop/electron/modules/screen-audio.ts new file mode 100644 index 0000000..f894dc4 --- /dev/null +++ b/apps/desktop/electron/modules/screen-audio.ts @@ -0,0 +1,38 @@ +// System-audio loopback — renderer-driven. Chromium's +// `chromeMediaSource: 'desktop'` constraint on getUserMedia accepts a +// source id and returns a MediaStream that contains the OS mixer output. +// Main's only job is to resolve which source id the renderer should feed +// to getUserMedia (typically the primary screen). See the display-media +// handler in main.ts which grants the request automatically. + +import { desktopCapturer, ipcMain } from 'electron'; + +import { CHANNELS } from '../ipc-types'; + +export interface ResolveLoopbackSourceResult { + sourceId: string; +} + +export function register(): void { + ipcMain.handle( + CHANNELS.AUDIO_LOOPBACK_RESOLVE_SOURCE, + async (): Promise => { + // Enumerate only screens; windows don't expose audio loopback on + // Windows and there's no meaningful "system audio" tied to a + // single window anyway. Primary screen is the first entry — the + // id is stable across calls as long as the display config doesn't + // change mid-session. + const sources = await desktopCapturer.getSources({ + types: ['screen'], + fetchWindowIcons: false, + }); + const first = sources[0]; + if (!first) return null; + return { sourceId: first.id }; + }, + ); + + // The legacy start/stop channels are left unregistered on purpose — + // their constants still exist in ipc-types.ts for backwards compatible + // import paths, but there is no corresponding handler. +} diff --git a/apps/desktop/electron/modules/screen-sources.ts b/apps/desktop/electron/modules/screen-sources.ts new file mode 100644 index 0000000..7788499 --- /dev/null +++ b/apps/desktop/electron/modules/screen-sources.ts @@ -0,0 +1,96 @@ +// Screen / window source enumeration + on-demand high-res thumbnail fetch. +// The picker in the renderer calls `SCREEN_GET_SOURCES` once to populate +// the grid (thumbnails come back inline as data URLs from desktopCapturer, +// so no second round-trip is needed for the initial paint). When the user +// hovers a tile we can optionally refresh the thumb at a higher resolution +// via `SCREEN_GET_THUMBNAIL` — same API but a single id and 640x360 size. + +import { desktopCapturer, ipcMain } from 'electron'; + +import { CHANNELS, type ScreenSource } from '../ipc-types'; + +// Renderer-driven pending source: the picker modal sets this BEFORE calling +// getDisplayMedia so our display-media handler can route the chosen source +// to LiveKit. Stored module-level (single capture in flight at a time — +// the renderer enforces this since only one picker can be open). Cleared +// on consume or on explicit null-set (cancel/error path). +let pendingShareSourceId: string | null = null; + +/** Read-and-clear: returns the pending id and resets it to null in one + * step so the main-process display-media handler can't accidentally apply + * the same id twice (e.g. if a stray getDisplayMedia call fires while + * the picker is closed). */ +export function consumePendingShareSourceId(): string | null { + const id = pendingShareSourceId; + pendingShareSourceId = null; + return id; +} + +/** Non-destructive read for callers that just want to know if a pending + * selection exists. */ +export function getPendingShareSourceId(): string | null { + return pendingShareSourceId; +} + +function parseDisplayId(raw: string): number | null { + // desktopCapturer ids for screens look like "screen::0". We + // index monitors 0-based in the UI so reduce the opaque id to a small + // integer per primary-display order. For windows there is no display + // association, return null. + if (!raw.startsWith('screen:')) return null; + const parts = raw.split(':'); + const n = Number(parts[1]); + return Number.isFinite(n) ? n : null; +} + +async function enumerate(thumbWidth: number, thumbHeight: number): Promise { + const sources = await desktopCapturer.getSources({ + types: ['screen', 'window'], + thumbnailSize: { width: thumbWidth, height: thumbHeight }, + fetchWindowIcons: true, + }); + return sources.map((src): ScreenSource => { + const kind: 'screen' | 'window' = src.id.startsWith('screen:') ? 'screen' : 'window'; + const thumbnailDataUrl = + src.thumbnail && !src.thumbnail.isEmpty() ? src.thumbnail.toDataURL() : null; + const iconDataUrl = + src.appIcon && !src.appIcon.isEmpty() ? src.appIcon.toDataURL() : null; + return { + id: src.id, + name: src.name, + kind, + displayId: kind === 'screen' ? parseDisplayId(src.id) : null, + thumbnailDataUrl, + iconDataUrl, + }; + }); +} + +export function register(): void { + ipcMain.handle(CHANNELS.SCREEN_GET_SOURCES, async (): Promise => { + return enumerate(320, 180); + }); + + ipcMain.handle( + CHANNELS.SCREEN_GET_THUMBNAIL, + async (_evt, sourceId: string): Promise => { + // Re-enumerate — desktopCapturer has no "fetch one by id" API. Done + // at 640x360 so the detail view looks crisp without paying the full + // enumeration cost more than once per hover-debounce. + const list = await enumerate(640, 360); + const found = list.find((s) => s.id === sourceId); + return found?.thumbnailDataUrl ?? null; + }, + ); + + ipcMain.handle( + CHANNELS.SCREEN_SET_PENDING_SOURCE, + (_evt, sourceId: string | null): void => { + // Renderer signals the chosen source id (or null to clear on cancel/ + // error). Stored until the next getDisplayMedia request comes in via + // the display-media handler, which calls consumePendingShareSourceId + // to read-and-clear it. + pendingShareSourceId = sourceId; + }, + ); +} diff --git a/apps/desktop/electron/modules/secure-store.ts b/apps/desktop/electron/modules/secure-store.ts new file mode 100644 index 0000000..2df216d --- /dev/null +++ b/apps/desktop/electron/modules/secure-store.ts @@ -0,0 +1,143 @@ +// Per-user secure key/value store. Replaces Tauri's plugin-stronghold + +// custom file vault with Electron's safeStorage (DPAPI on Windows, +// Keychain on macOS, libsecret on Linux). Encryption is at the file +// level — the whole entries map is a single encrypted blob — so there's +// no per-set ciphertext rotation to track. +// +// Pre-encrypt JSON: {version:1, entries: { : }}. +// When safeStorage is unavailable we degrade to a `.plaintext` JSON file +// and flag `encrypted: false` back to the renderer so the renderer can +// warn the user and avoid long-lived secrets. + +import { app, ipcMain, safeStorage } from 'electron'; +import { createHash } from 'node:crypto'; +import { promises as fs } from 'node:fs'; +import path from 'node:path'; + +import { + CHANNELS, + type SecureStoreHandle, + type SecureStoreOpenArgs, +} from '../ipc-types'; + +interface HandleState { + filePath: string; + encrypted: boolean; + entries: Map; + saveTimer: NodeJS.Timeout | null; +} + +const handles = new Map(); + +function hashUserId(userId: string): string { + return createHash('sha256').update(userId).digest('hex').slice(0, 16); +} + +function filePathFor(userId: string, encrypted: boolean): string { + const suffix = hashUserId(userId); + const ext = encrypted ? 'bin' : 'plaintext'; + return path.join(app.getPath('userData'), `chatapp-secure-${suffix}.${ext}`); +} + +async function loadState(filePath: string, encrypted: boolean): Promise> { + try { + if (encrypted) { + const buf = await fs.readFile(filePath); + const json = safeStorage.decryptString(buf); + const parsed = JSON.parse(json) as { version?: number; entries?: Record }; + return new Map(Object.entries(parsed.entries ?? {})); + } else { + const raw = await fs.readFile(filePath, 'utf8'); + const parsed = JSON.parse(raw) as { version?: number; entries?: Record }; + return new Map(Object.entries(parsed.entries ?? {})); + } + } catch { + // Missing file or malformed contents — start fresh. The next write + // will overwrite with a fresh blob. + return new Map(); + } +} + +async function writeStateNow(state: HandleState): Promise { + const obj: Record = {}; + for (const [k, v] of state.entries) obj[k] = v; + const serialised = JSON.stringify({ version: 1, entries: obj }); + await fs.mkdir(path.dirname(state.filePath), { recursive: true }); + if (state.encrypted) { + const buf = safeStorage.encryptString(serialised); + await fs.writeFile(state.filePath, buf); + } else { + await fs.writeFile(state.filePath, serialised, 'utf8'); + } +} + +function scheduleSave(state: HandleState): void { + if (state.saveTimer) clearTimeout(state.saveTimer); + state.saveTimer = setTimeout(() => { + state.saveTimer = null; + void writeStateNow(state).catch((err: unknown) => { + console.warn('[secure-store] persist failed', err); + }); + }, 100); +} + +function requireState(handle: string): HandleState { + const s = handles.get(handle); + if (!s) throw new Error('secure-store: unknown handle'); + return s; +} + +export function register(): void { + ipcMain.handle( + CHANNELS.SECURE_STORE_OPEN, + async (_evt, args: SecureStoreOpenArgs): Promise => { + const encrypted = safeStorage.isEncryptionAvailable(); + const filePath = filePathFor(args.userId, encrypted); + const entries = await loadState(filePath, encrypted); + const handle = hashUserId(args.userId); + handles.set(handle, { filePath, encrypted, entries, saveTimer: null }); + return { handle, encrypted }; + }, + ); + + ipcMain.handle( + CHANNELS.SECURE_STORE_GET, + async (_evt, handle: string, key: string): Promise => { + const state = requireState(handle); + return state.entries.get(key) ?? null; + }, + ); + + ipcMain.handle( + CHANNELS.SECURE_STORE_SET, + async (_evt, handle: string, key: string, value: string): Promise => { + const state = requireState(handle); + state.entries.set(key, value); + scheduleSave(state); + }, + ); + + ipcMain.handle( + CHANNELS.SECURE_STORE_REMOVE, + async (_evt, handle: string, key: string): Promise => { + const state = requireState(handle); + state.entries.delete(key); + scheduleSave(state); + }, + ); + + ipcMain.handle(CHANNELS.SECURE_STORE_CLOSE, async (_evt, handle: string): Promise => { + const state = handles.get(handle); + if (!state) return; + if (state.saveTimer) { + clearTimeout(state.saveTimer); + state.saveTimer = null; + try { + await writeStateNow(state); + } catch (err: unknown) { + console.warn('[secure-store] close-flush failed', err); + } + } + handles.delete(handle); + }); +} diff --git a/apps/desktop/electron/modules/shortcuts.ts b/apps/desktop/electron/modules/shortcuts.ts new file mode 100644 index 0000000..4a17f66 --- /dev/null +++ b/apps/desktop/electron/modules/shortcuts.ts @@ -0,0 +1,86 @@ +// Global shortcuts — wraps Electron's globalShortcut, tracks registrations +// by an opaque renderer-supplied id so the same accelerator can be +// re-bound without the caller juggling state. +// +// PTT semantics are simulated: Electron's globalShortcut API only delivers +// a "pressed" callback — it has no keyup / release event. We fire +// SHORTCUT_EVT_FIRED on press, then after a 200ms timer fire +// SHORTCUT_EVT_RELEASED. Known limitation; TODO: revisit with +// `uiohook-napi` or `node-global-key-listener` if the press-and-release +// UX is too loose. + +import { app, BrowserWindow, globalShortcut, ipcMain } from 'electron'; + +import { + CHANNELS, + type ShortcutEvent, + type ShortcutKind, + type ShortcutRegisterArgs, +} from '../ipc-types'; + +interface Entry { + accelerator: string; + kind: ShortcutKind; +} + +const registry = new Map(); + +export function register(mainWindow: BrowserWindow): void { + const send = (channel: string, payload: ShortcutEvent): void => { + if (mainWindow.isDestroyed()) return; + mainWindow.webContents.send(channel, payload); + }; + + ipcMain.handle( + CHANNELS.SHORTCUT_REGISTER, + async (_evt, args: ShortcutRegisterArgs): Promise => { + const { id, accelerator, kind } = args; + const prev = registry.get(id); + if (prev) { + try { + globalShortcut.unregister(prev.accelerator); + } catch { + /* ignore */ + } + registry.delete(id); + } + if (globalShortcut.isRegistered(accelerator)) { + return false; + } + const ok = globalShortcut.register(accelerator, () => { + const ts = Date.now(); + send(CHANNELS.SHORTCUT_EVT_FIRED, { id, ts }); + if (kind === 'ptt') { + setTimeout(() => { + send(CHANNELS.SHORTCUT_EVT_RELEASED, { id, ts: Date.now() }); + }, 200); + } + }); + if (!ok) return false; + registry.set(id, { accelerator, kind }); + return true; + }, + ); + + ipcMain.handle(CHANNELS.SHORTCUT_UNREGISTER, async (_evt, id: string): Promise => { + const entry = registry.get(id); + if (!entry) return; + try { + globalShortcut.unregister(entry.accelerator); + } catch { + /* already gone */ + } + registry.delete(id); + }); + + ipcMain.handle(CHANNELS.SHORTCUT_IS_REGISTERED, async (_evt, id: string): Promise => { + const entry = registry.get(id); + if (!entry) return false; + return globalShortcut.isRegistered(entry.accelerator); + }); + + app.on('will-quit', () => { + globalShortcut.unregisterAll(); + registry.clear(); + }); +} diff --git a/apps/desktop/electron/modules/sql.ts b/apps/desktop/electron/modules/sql.ts new file mode 100644 index 0000000..96e1b7f --- /dev/null +++ b/apps/desktop/electron/modules/sql.ts @@ -0,0 +1,93 @@ +// SQLite via better-sqlite3. One Database instance per renderer-tracked +// handle; handles are keyed by the normalised db name (Tauri's plugin-sql +// uses `sqlite:` — we strip the prefix). Sync API is fine here +// because the main process has its own event loop; better-sqlite3's +// prepare/run/all are blocking but fast for typical chat-cache queries +// (<1ms per op for the current workload). +// +// Binding param style: Tauri's plugin-sql used $1, $2... positionals with +// bindings as an array. SQLite natively accepts $N so existing queries +// keep working unmodified. + +import { app, ipcMain } from 'electron'; +import Database from 'better-sqlite3'; +import fs from 'node:fs'; +import path from 'node:path'; + +import { + CHANNELS, + type SqlExecuteArgs, + type SqlExecuteResult, + type SqlLoadArgs, + type SqlSelectArgs, + type SqlSelectResult, +} from '../ipc-types'; + +interface Handle { + db: Database.Database; + filePath: string; +} + +const handles = new Map(); + +function stripPrefix(name: string): string { + return name.startsWith('sqlite:') ? name.slice('sqlite:'.length) : name; +} + +function requireHandle(h: string): Handle { + const entry = handles.get(h); + if (!entry) throw new Error(`sql: unknown handle ${h}`); + return entry; +} + +export function register(): void { + ipcMain.handle(CHANNELS.SQL_LOAD, async (_evt, args: SqlLoadArgs): Promise => { + const rawName = stripPrefix(args.name); + const fileName = rawName.endsWith('.db') ? rawName : rawName + '.db'; + const filePath = path.join(app.getPath('userData'), fileName); + fs.mkdirSync(path.dirname(filePath), { recursive: true }); + const existing = handles.get(rawName); + if (existing) return rawName; + const db = new Database(filePath); + db.pragma('journal_mode = WAL'); + handles.set(rawName, { db, filePath }); + return rawName; + }); + + ipcMain.handle( + CHANNELS.SQL_EXECUTE, + async (_evt, args: SqlExecuteArgs): Promise => { + const entry = requireHandle(args.handle); + const stmt = entry.db.prepare(args.query); + const info = stmt.run(...((args.bindings ?? []) as unknown[])); + return { + rowsAffected: info.changes, + lastInsertId: + typeof info.lastInsertRowid === 'bigint' + ? Number(info.lastInsertRowid) + : (info.lastInsertRowid ?? null), + }; + }, + ); + + ipcMain.handle( + CHANNELS.SQL_SELECT, + async (_evt, args: SqlSelectArgs): Promise => { + const entry = requireHandle(args.handle); + const stmt = entry.db.prepare(args.query); + const rows = stmt.all(...((args.bindings ?? []) as unknown[])) as Record[]; + return rows; + }, + ); + + ipcMain.handle(CHANNELS.SQL_CLOSE, async (_evt, handle: string): Promise => { + const entry = handles.get(handle); + if (!entry) return; + try { + entry.db.close(); + } catch (err: unknown) { + console.warn('[sql] close failed', err); + } + handles.delete(handle); + }); +} diff --git a/apps/desktop/electron/modules/tray.ts b/apps/desktop/electron/modules/tray.ts new file mode 100644 index 0000000..476165e --- /dev/null +++ b/apps/desktop/electron/modules/tray.ts @@ -0,0 +1,109 @@ +// System tray + Windows taskbar overlay badge. Renderer pushes the +// current aggregate unread count via CHANNELS.TRAY_UNREAD; we update the +// tooltip and (on Windows) set an overlay icon on the main window's +// taskbar button. +// +// Overlay image is a pre-rendered 16x16 red dot embedded as base64 so +// the module is self-contained — no runtime canvas dependency. + +import { + app, + BrowserWindow, + ipcMain, + Menu, + nativeImage, + type NativeImage, + Tray, +} from 'electron'; +import path from 'node:path'; + +import { CHANNELS } from '../ipc-types'; + +let trayRef: Tray | null = null; +let overlayImage: NativeImage | null = null; + +function resolveIconPath(): string { + return path.join(process.resourcesPath || app.getAppPath(), 'icon.ico'); +} + +function resolveIconPathDev(): string { + return path.join(app.getAppPath(), 'resources', 'icon.ico'); +} + +function loadTrayIcon(): NativeImage { + for (const p of [resolveIconPath(), resolveIconPathDev()]) { + try { + const img = nativeImage.createFromPath(p); + if (!img.isEmpty()) return img; + } catch { + /* try next */ + } + } + return nativeImage.createEmpty(); +} + +function buildOverlay(): NativeImage { + if (overlayImage) return overlayImage; + // 16x16 PNG, solid red circle. Inline base64 so no external file lookup. + const base64 = + 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAPElEQVR42mNkYGD4z0AGYBxVSF2F//' + + '//Z2BgYGD4/58kBYz4FDAxMDAwMDIwMDD8//+foArGUYWjCoc1AABTgwUBf3lZtAAAAABJRU5ErkJggg=='; + overlayImage = nativeImage.createFromBuffer(Buffer.from(base64, 'base64')); + return overlayImage; +} + +export function register(mainWindow: BrowserWindow): void { + const icon = loadTrayIcon(); + trayRef = new Tray(icon.isEmpty() ? nativeImage.createEmpty() : icon); + trayRef.setToolTip('ChatApp'); + + const menu = Menu.buildFromTemplate([ + { + label: 'Open', + click: (): void => { + if (mainWindow.isDestroyed()) return; + if (mainWindow.isMinimized()) mainWindow.restore(); + mainWindow.show(); + mainWindow.focus(); + }, + }, + { type: 'separator' }, + { + label: 'Quit', + click: (): void => { + app.quit(); + }, + }, + ]); + trayRef.setContextMenu(menu); + trayRef.on('click', (): void => { + if (mainWindow.isDestroyed()) return; + if (mainWindow.isMinimized()) mainWindow.restore(); + if (mainWindow.isVisible()) mainWindow.focus(); + else mainWindow.show(); + }); + + ipcMain.handle(CHANNELS.TRAY_UNREAD, async (_evt, count: number): Promise => { + const n = Math.max(0, Math.floor(Number(count) || 0)); + if (trayRef && !trayRef.isDestroyed()) { + trayRef.setToolTip(n > 0 ? `ChatApp — ${n} unread` : 'ChatApp'); + } + if (mainWindow.isDestroyed()) return; + if (process.platform === 'win32') { + if (n > 0) { + mainWindow.setOverlayIcon(buildOverlay(), `${n} unread`); + } else { + mainWindow.setOverlayIcon(null, ''); + } + } + }); + + app.on('before-quit', () => { + try { + trayRef?.destroy(); + } catch { + /* already gone */ + } + trayRef = null; + }); +} diff --git a/apps/desktop/electron/modules/updater.ts b/apps/desktop/electron/modules/updater.ts new file mode 100644 index 0000000..05a3b8a --- /dev/null +++ b/apps/desktop/electron/modules/updater.ts @@ -0,0 +1,84 @@ +// Auto-updater. Wraps electron-updater; configuration (feed URL) lives in +// package.json's `build.publish`. In dev (`app.isPackaged === false`) we +// short-circuit everything — the feed server is production-only and +// hitting it every launch from a dev machine just adds noise. + +import { app, BrowserWindow, ipcMain } from 'electron'; +import electronUpdater, { + type ProgressInfo, + type UpdateInfo as BuilderUpdateInfo, +} from 'electron-updater'; + +// electron-updater is a CJS module; named ESM imports don't work. Pull +// autoUpdater off the default export instead. +const { autoUpdater } = electronUpdater; + +import { + CHANNELS, + type UpdateCheckResult, + type UpdateInfo, + type UpdateProgress, +} from '../ipc-types'; + +let cached: BuilderUpdateInfo | null = null; + +function toPublicInfo(info: BuilderUpdateInfo | null): UpdateInfo | null { + if (!info) return null; + const notes = info.releaseNotes; + let releaseNotes: string | null = null; + if (typeof notes === 'string') releaseNotes = notes; + else if (Array.isArray(notes)) releaseNotes = notes.map((r) => r.note).join('\n\n'); + return { + version: info.version ?? '', + releaseNotes, + }; +} + +export function register(mainWindow: BrowserWindow): void { + autoUpdater.autoDownload = false; + autoUpdater.autoInstallOnAppQuit = false; + + autoUpdater.on('download-progress', (p: ProgressInfo) => { + if (mainWindow.isDestroyed()) return; + const payload: UpdateProgress = { + percent: p.percent ?? 0, + transferred: p.transferred ?? 0, + total: p.total ?? 0, + }; + mainWindow.webContents.send(CHANNELS.UPDATER_EVT_PROGRESS, payload); + }); + + ipcMain.handle(CHANNELS.UPDATER_CHECK, async (): Promise => { + if (!app.isPackaged) { + return { available: false, info: null }; + } + try { + const result = await autoUpdater.checkForUpdates(); + if (!result || !result.updateInfo) { + cached = null; + return { available: false, info: null }; + } + const current = app.getVersion(); + const remote = result.updateInfo.version; + if (!remote || remote === current) { + cached = null; + return { available: false, info: null }; + } + cached = result.updateInfo; + return { available: true, info: toPublicInfo(cached) }; + } catch (err: unknown) { + const msg = err instanceof Error ? err.message : String(err); + if (!/ENOTFOUND|ETIMEDOUT|ECONNRESET|404/i.test(msg)) { + console.warn('[updater] check failed', err); + } + return { available: false, info: null }; + } + }); + + ipcMain.handle(CHANNELS.UPDATER_DOWNLOAD_INSTALL, async (): Promise => { + if (!app.isPackaged) return; + if (!cached) throw new Error('no pending update — call check first'); + await autoUpdater.downloadUpdate(); + autoUpdater.quitAndInstall(); + }); +} diff --git a/apps/desktop/electron/modules/window-fullscreen.ts b/apps/desktop/electron/modules/window-fullscreen.ts new file mode 100644 index 0000000..95e2c19 --- /dev/null +++ b/apps/desktop/electron/modules/window-fullscreen.ts @@ -0,0 +1,25 @@ +// Window fullscreen adapter — replaces Tauri's +// `getCurrentWindow().setFullscreen(...)` from `@tauri-apps/api/window`. +// The renderer asks main to flip the OS-level fullscreen flag on the host +// BrowserWindow so cinema mode covers the Windows taskbar / macOS menubar +// the way Tauri's appWindow.setFullscreen used to. + +import { BrowserWindow, ipcMain } from 'electron'; + +import { CHANNELS } from '../ipc-types'; + +export function register(mainWindow: BrowserWindow): void { + ipcMain.handle(CHANNELS.WINDOW_SET_FULLSCREEN, (evt, enabled: boolean) => { + try { + // Prefer the BrowserWindow that issued the IPC so multi-window setups + // affect the right host; fall back to the main window we were + // registered against (matches autostart.ts's app-singleton shape). + const win = BrowserWindow.fromWebContents(evt.sender) ?? mainWindow; + if (!win || win.isDestroyed()) return; + win.setFullScreen(!!enabled); + } catch (err: unknown) { + console.warn('window setFullscreen failed', err); + throw err; + } + }); +} diff --git a/apps/desktop/electron/preload-types.d.ts b/apps/desktop/electron/preload-types.d.ts new file mode 100644 index 0000000..94edadd --- /dev/null +++ b/apps/desktop/electron/preload-types.d.ts @@ -0,0 +1,106 @@ +// Renderer-visible typing for the preload bridge. Referenced via tsconfig +// `include` so TS sees `window.electronAPI` without needing to import +// from `electron` or drag Node types into the renderer build. The +// ElectronAPI type mirrors the `api` object exported from preload.ts — +// keep them in sync when adding new methods. + +import type { + AudioLoopbackChunk, + AudioLoopbackStartResult, + FsPath, + FsRenameArgs, + FsWriteArgs, + NotifyArgs, + ScreenSource, + SecureStoreHandle, + SecureStoreOpenArgs, + ShortcutEvent, + ShortcutRegisterArgs, + SqlExecuteResult, + SqlSelectResult, + UpdateCheckResult, + UpdateProgress, +} from './ipc-types'; + +type Unsubscribe = () => void; + +export interface ElectronAPI { + /** Opaque runtime marker (value: 'electron-chatapp-v1'). */ + platform: string; + osPlatform: NodeJS.Platform; + appVersion: string; + + getScreenSources: () => Promise; + getScreenThumbnail: (sourceId: string) => Promise; + setPendingShareSource: (sourceId: string | null) => Promise; + + resolveLoopbackSource: () => Promise<{ sourceId: string } | null>; + + /** Native WASAPI process-loopback bridge — Windows only. `start` + * rejects on macOS/Linux or when the .node binary isn't shipped, so + * callers should catch and fall back to the getUserMedia path. */ + audioLoopback: { + start: () => Promise; + /** Window-share variant: capture only the picked window's process + * tree (INCLUDE_TARGET_PROCESS_TREE). hwnd is the decimal HWND + * parsed from desktopCapturer's `window::0` source id. */ + startForWindow: (hwnd: number) => Promise; + stop: (captureId: number) => Promise; + onChunk: (cb: (payload: AudioLoopbackChunk) => void) => Unsubscribe; + }; + + registerShortcut: (args: ShortcutRegisterArgs) => Promise; + unregisterShortcut: (id: string) => Promise; + isShortcutRegistered: (id: string) => Promise; + onShortcutFired: (cb: (evt: ShortcutEvent) => void) => Unsubscribe; + onShortcutReleased: (cb: (evt: ShortcutEvent) => void) => Unsubscribe; + + notify: (args: NotifyArgs) => Promise; + getNotificationPermission: () => Promise<'granted' | 'denied' | 'default'>; + + setTrayUnread: (count: number) => Promise; + + secureStoreOpen: (args: SecureStoreOpenArgs) => Promise; + secureStoreGet: (handle: string, key: string) => Promise; + secureStoreSet: (handle: string, key: string, value: string) => Promise; + secureStoreRemove: (handle: string, key: string) => Promise; + secureStoreClose: (handle: string) => Promise; + + fsRead: (p: FsPath) => Promise; + fsWrite: (args: FsWriteArgs) => Promise; + fsExists: (p: FsPath) => Promise; + fsMkdir: (p: FsPath) => Promise; + fsRename: (args: FsRenameArgs) => Promise; + fsRemove: (p: FsPath) => Promise; + fsAppLocalDataDir: () => Promise; + + sqlLoad: (args: { name: string }) => Promise; + sqlExecute: (args: { + handle: string; + query: string; + bindings?: unknown[]; + }) => Promise; + sqlSelect: (args: { + handle: string; + query: string; + bindings?: unknown[]; + }) => Promise; + sqlClose: (handle: string) => Promise; + + checkForUpdate: () => Promise; + downloadInstallUpdate: () => Promise; + onUpdaterProgress: (cb: (p: UpdateProgress) => void) => Unsubscribe; + + isAutoStartEnabled: () => Promise; + setAutoStart: (enabled: boolean) => Promise; + + setFullscreen: (enabled: boolean) => Promise; +} + +declare global { + interface Window { + electronAPI: ElectronAPI; + } +} + +export {}; diff --git a/apps/desktop/electron/preload.ts b/apps/desktop/electron/preload.ts new file mode 100644 index 0000000..1d17a94 --- /dev/null +++ b/apps/desktop/electron/preload.ts @@ -0,0 +1,154 @@ +// Preload bridge. Exposes a single `window.electronAPI` object to the +// renderer that mirrors the CHANNELS surface from ipc-types.ts. Each +// CHANNEL becomes a typed method that calls `ipcRenderer.invoke`; the +// three event channels (shortcut fired/released + updater progress) get +// `on*` subscribers that return an unsubscribe function. +// +// contextIsolation is ON so the renderer never sees `ipcRenderer` or +// Node directly — only this curated surface. + +import { contextBridge, ipcRenderer } from 'electron'; + +import { + CHANNELS, + ELECTRON_RUNTIME_MARKER, + type AudioLoopbackChunk, + type AudioLoopbackStartResult, + type FsPath, + type FsRenameArgs, + type FsWriteArgs, + type NotifyArgs, + type ScreenSource, + type SecureStoreHandle, + type SecureStoreOpenArgs, + type ShortcutEvent, + type ShortcutRegisterArgs, + type SqlExecuteResult, + type SqlSelectResult, + type UpdateCheckResult, + type UpdateProgress, +} from './ipc-types'; + +type Unsubscribe = () => void; + +function on(channel: string, cb: (payload: T) => void): Unsubscribe { + const handler = (_evt: Electron.IpcRendererEvent, payload: T): void => cb(payload); + ipcRenderer.on(channel, handler); + return () => ipcRenderer.removeListener(channel, handler); +} + +const api = { + platform: ELECTRON_RUNTIME_MARKER, + osPlatform: process.platform as NodeJS.Platform, + appVersion: process.env.npm_package_version ?? '0.0.0', + + // Screen sources --------------------------------------------------------- + getScreenSources: (): Promise => ipcRenderer.invoke(CHANNELS.SCREEN_GET_SOURCES), + getScreenThumbnail: (sourceId: string): Promise => + ipcRenderer.invoke(CHANNELS.SCREEN_GET_THUMBNAIL, sourceId), + /** Tell main which source the user picked in our Discord-style modal, + * BEFORE calling getDisplayMedia. The display-media handler reads this + * and routes the matching desktopCapturer Source into LiveKit. Pass + * null on cancel/error to clear the pending state. */ + setPendingShareSource: (sourceId: string | null): Promise => + ipcRenderer.invoke(CHANNELS.SCREEN_SET_PENDING_SOURCE, sourceId), + + // Audio loopback --------------------------------------------------------- + resolveLoopbackSource: (): Promise<{ sourceId: string } | null> => + ipcRenderer.invoke(CHANNELS.AUDIO_LOOPBACK_RESOLVE_SOURCE), + + /** Native WASAPI process-loopback (Windows only). Captures all system + * audio EXCEPT our own PID tree so peers don't hear themselves echoed + * back. Throws on platforms where the addon isn't available — caller + * is expected to fall back to the renderer-driven getUserMedia path + * (see lib/screenAudio.ts). */ + audioLoopback: { + start: (): Promise => + ipcRenderer.invoke(CHANNELS.AUDIO_LOOPBACK_START), + /** Window-share variant: capture only the picked window's process + * tree (INCLUDE_TARGET_PROCESS_TREE). hwnd is the decimal HWND + * parsed from desktopCapturer's `window::0` source id. */ + startForWindow: (hwnd: number): Promise => + ipcRenderer.invoke(CHANNELS.AUDIO_LOOPBACK_START_FOR_WINDOW, { hwnd }), + stop: (captureId: number): Promise => + ipcRenderer.invoke(CHANNELS.AUDIO_LOOPBACK_STOP, captureId), + onChunk: (cb: (payload: AudioLoopbackChunk) => void): Unsubscribe => + on(CHANNELS.AUDIO_LOOPBACK_CHUNK, cb), + }, + + // Shortcuts -------------------------------------------------------------- + registerShortcut: (args: ShortcutRegisterArgs): Promise => + ipcRenderer.invoke(CHANNELS.SHORTCUT_REGISTER, args), + unregisterShortcut: (id: string): Promise => + ipcRenderer.invoke(CHANNELS.SHORTCUT_UNREGISTER, id), + isShortcutRegistered: (id: string): Promise => + ipcRenderer.invoke(CHANNELS.SHORTCUT_IS_REGISTERED, id), + onShortcutFired: (cb: (evt: ShortcutEvent) => void): Unsubscribe => + on(CHANNELS.SHORTCUT_EVT_FIRED, cb), + onShortcutReleased: (cb: (evt: ShortcutEvent) => void): Unsubscribe => + on(CHANNELS.SHORTCUT_EVT_RELEASED, cb), + + // Notifications ---------------------------------------------------------- + notify: (args: NotifyArgs): Promise => ipcRenderer.invoke(CHANNELS.NOTIFY_SHOW, args), + getNotificationPermission: (): Promise<'granted' | 'denied' | 'default'> => + ipcRenderer.invoke(CHANNELS.NOTIFY_PERMISSION), + + // Tray ------------------------------------------------------------------- + setTrayUnread: (count: number): Promise => ipcRenderer.invoke(CHANNELS.TRAY_UNREAD, count), + + // Secure store ----------------------------------------------------------- + secureStoreOpen: (args: SecureStoreOpenArgs): Promise => + ipcRenderer.invoke(CHANNELS.SECURE_STORE_OPEN, args), + secureStoreGet: (handle: string, key: string): Promise => + ipcRenderer.invoke(CHANNELS.SECURE_STORE_GET, handle, key), + secureStoreSet: (handle: string, key: string, value: string): Promise => + ipcRenderer.invoke(CHANNELS.SECURE_STORE_SET, handle, key, value), + secureStoreRemove: (handle: string, key: string): Promise => + ipcRenderer.invoke(CHANNELS.SECURE_STORE_REMOVE, handle, key), + secureStoreClose: (handle: string): Promise => + ipcRenderer.invoke(CHANNELS.SECURE_STORE_CLOSE, handle), + + // Filesystem ------------------------------------------------------------- + fsRead: (p: FsPath): Promise => ipcRenderer.invoke(CHANNELS.FS_READ, p), + fsWrite: (args: FsWriteArgs): Promise => ipcRenderer.invoke(CHANNELS.FS_WRITE, args), + fsExists: (p: FsPath): Promise => ipcRenderer.invoke(CHANNELS.FS_EXISTS, p), + fsMkdir: (p: FsPath): Promise => ipcRenderer.invoke(CHANNELS.FS_MKDIR, p), + fsRename: (args: FsRenameArgs): Promise => ipcRenderer.invoke(CHANNELS.FS_RENAME, args), + fsRemove: (p: FsPath): Promise => ipcRenderer.invoke(CHANNELS.FS_REMOVE, p), + fsAppLocalDataDir: (): Promise => ipcRenderer.invoke(CHANNELS.FS_APP_LOCAL_DATA_DIR), + + // SQL -------------------------------------------------------------------- + sqlLoad: (args: { name: string }): Promise => + ipcRenderer.invoke(CHANNELS.SQL_LOAD, args), + sqlExecute: (args: { + handle: string; + query: string; + bindings?: unknown[]; + }): Promise => ipcRenderer.invoke(CHANNELS.SQL_EXECUTE, args), + sqlSelect: (args: { + handle: string; + query: string; + bindings?: unknown[]; + }): Promise => ipcRenderer.invoke(CHANNELS.SQL_SELECT, args), + sqlClose: (handle: string): Promise => ipcRenderer.invoke(CHANNELS.SQL_CLOSE, handle), + + // Updater ---------------------------------------------------------------- + checkForUpdate: (): Promise => ipcRenderer.invoke(CHANNELS.UPDATER_CHECK), + downloadInstallUpdate: (): Promise => + ipcRenderer.invoke(CHANNELS.UPDATER_DOWNLOAD_INSTALL), + onUpdaterProgress: (cb: (p: UpdateProgress) => void): Unsubscribe => + on(CHANNELS.UPDATER_EVT_PROGRESS, cb), + + // Autostart -------------------------------------------------------------- + isAutoStartEnabled: (): Promise => ipcRenderer.invoke(CHANNELS.AUTOSTART_IS_ENABLED), + setAutoStart: (enabled: boolean): Promise => + ipcRenderer.invoke(CHANNELS.AUTOSTART_SET, enabled), + + // Window fullscreen ------------------------------------------------------ + setFullscreen: (enabled: boolean): Promise => + ipcRenderer.invoke(CHANNELS.WINDOW_SET_FULLSCREEN, enabled), +} as const; + +export type ElectronAPI = typeof api; + +contextBridge.exposeInMainWorld('electronAPI', api); diff --git a/apps/desktop/electron/window-state.ts b/apps/desktop/electron/window-state.ts new file mode 100644 index 0000000..43f8612 --- /dev/null +++ b/apps/desktop/electron/window-state.ts @@ -0,0 +1,91 @@ +// Persists BrowserWindow bounds + maximized state to userData/. +// Saves are debounced 500ms on move/resize, and fired synchronously on close. +// Validates loaded bounds against the current display layout to avoid +// restoring a window onto a display that no longer exists. + +import { app, BrowserWindow, screen } from 'electron'; +import { promises as fs } from 'node:fs'; +import path from 'node:path'; + +interface State { + x?: number; + y?: number; + width: number; + height: number; + maximized?: boolean; +} + +const DEFAULT: State = { width: 1200, height: 800 }; + +function isOnAnyDisplay(bounds: { x: number; y: number; width: number; height: number }): boolean { + for (const d of screen.getAllDisplays()) { + const wa = d.workArea; + if ( + bounds.x >= wa.x && + bounds.y >= wa.y && + bounds.x + bounds.width <= wa.x + wa.width + 8 && + bounds.y + bounds.height <= wa.y + wa.height + 8 + ) { + return true; + } + } + return false; +} + +export async function loadState(filename: string): Promise { + const filePath = path.join(app.getPath('userData'), filename); + try { + const raw = await fs.readFile(filePath, 'utf8'); + const parsed = JSON.parse(raw) as Partial; + const width = typeof parsed.width === 'number' ? parsed.width : DEFAULT.width; + const height = typeof parsed.height === 'number' ? parsed.height : DEFAULT.height; + const state: State = { width, height }; + if (typeof parsed.x === 'number' && typeof parsed.y === 'number') { + if (isOnAnyDisplay({ x: parsed.x, y: parsed.y, width, height })) { + state.x = parsed.x; + state.y = parsed.y; + } + } + if (parsed.maximized) state.maximized = true; + return state; + } catch { + return { ...DEFAULT }; + } +} + +export function attach(win: BrowserWindow, filename: string): void { + const filePath = path.join(app.getPath('userData'), filename); + let saveTimer: NodeJS.Timeout | null = null; + + const writeNow = (): void => { + if (win.isDestroyed()) return; + const bounds = win.getNormalBounds(); + const state: State = { + x: bounds.x, + y: bounds.y, + width: bounds.width, + height: bounds.height, + maximized: win.isMaximized(), + }; + // Fire-and-forget; exceptions are logged but non-fatal. + void fs + .writeFile(filePath, JSON.stringify(state), 'utf8') + .catch((err: unknown) => { + console.warn('[window-state] write failed', err); + }); + }; + + const schedule = (): void => { + if (saveTimer) clearTimeout(saveTimer); + saveTimer = setTimeout(writeNow, 500); + }; + + win.on('move', schedule); + win.on('resize', schedule); + win.on('maximize', schedule); + win.on('unmaximize', schedule); + win.on('close', () => { + if (saveTimer) clearTimeout(saveTimer); + writeNow(); + }); +} diff --git a/apps/desktop/native/audio-loopback/Cargo.lock b/apps/desktop/native/audio-loopback/Cargo.lock new file mode 100644 index 0000000..dbb4e03 --- /dev/null +++ b/apps/desktop/native/audio-loopback/Cargo.lock @@ -0,0 +1,380 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "aho-corasick" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" +dependencies = [ + "memchr", +] + +[[package]] +name = "audio-loopback" +version = "0.1.0" +dependencies = [ + "napi", + "napi-build", + "napi-derive", + "wasapi", +] + +[[package]] +name = "autocfg" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" + +[[package]] +name = "bitflags" +version = "2.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3" + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "ctor" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" +dependencies = [ + "quote", + "syn", +] + +[[package]] +name = "libloading" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" +dependencies = [ + "cfg-if", + "windows-link", +] + +[[package]] +name = "log" +version = "0.4.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" + +[[package]] +name = "memchr" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" + +[[package]] +name = "napi" +version = "2.16.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55740c4ae1d8696773c78fdafd5d0e5fe9bc9f1b071c7ba493ba5c413a9184f3" +dependencies = [ + "bitflags", + "ctor", + "napi-derive", + "napi-sys", + "once_cell", +] + +[[package]] +name = "napi-build" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d376940fd5b723c6893cd1ee3f33abbfd86acb1cd1ec079f3ab04a2a3bc4d3b1" + +[[package]] +name = "napi-derive" +version = "2.16.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cbe2585d8ac223f7d34f13701434b9d5f4eb9c332cccce8dee57ea18ab8ab0c" +dependencies = [ + "cfg-if", + "convert_case", + "napi-derive-backend", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "napi-derive-backend" +version = "1.0.75" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1639aaa9eeb76e91c6ae66da8ce3e89e921cd3885e99ec85f4abacae72fc91bf" +dependencies = [ + "convert_case", + "once_cell", + "proc-macro2", + "quote", + "regex", + "semver", + "syn", +] + +[[package]] +name = "napi-sys" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "427802e8ec3a734331fec1035594a210ce1ff4dc5bc1950530920ab717964ea3" +dependencies = [ + "libloading", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + +[[package]] +name = "proc-macro2" +version = "1.0.106" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "regex" +version = "1.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" + +[[package]] +name = "semver" +version = "1.0.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" + +[[package]] +name = "syn" +version = "2.0.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "unicode-ident" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" + +[[package]] +name = "unicode-segmentation" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" + +[[package]] +name = "wasapi" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f6b03b82e419f186fcdc06ac6068621bdadc88b89b2612067f1c021ad2c9449" +dependencies = [ + "log", + "num-integer", + "widestring", + "windows", + "windows-core", +] + +[[package]] +name = "widestring" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471" + +[[package]] +name = "windows" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" +dependencies = [ + "windows-core", + "windows-targets", +] + +[[package]] +name = "windows-core" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-result", + "windows-targets", +] + +[[package]] +name = "windows-implement" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-interface" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-result" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" diff --git a/apps/desktop/native/audio-loopback/Cargo.toml b/apps/desktop/native/audio-loopback/Cargo.toml new file mode 100644 index 0000000..69210d8 --- /dev/null +++ b/apps/desktop/native/audio-loopback/Cargo.toml @@ -0,0 +1,31 @@ +[package] +name = "audio-loopback" +version = "0.1.0" +edition = "2021" +license = "MIT OR Apache-2.0" +publish = false +description = "Native Windows process-loopback audio capture for ChatApp Electron" + +[lib] +crate-type = ["cdylib"] + +# Reduce binary size on release builds and avoid the default-features +# panic-handler that bloats node addons. We don't strip — keeping symbols +# helps debug crashes from a packaged build. +[profile.release] +lto = true +codegen-units = 1 +panic = "abort" + +[dependencies] +napi = { version = "2", default-features = false, features = ["napi6"] } +napi-derive = "2" + +[target.'cfg(target_os = "windows")'.dependencies] +# Match the Tauri reference exactly. Cargo.lock there pins 0.15.0; the +# 0.15 family exposes AudioClient::new_application_loopback_client(pid, +# include_tree) which is the load-bearing API for EXCLUDE_TARGET_PROCESS_TREE. +wasapi = "0.15" + +[build-dependencies] +napi-build = "2" diff --git a/apps/desktop/native/audio-loopback/audio-loopback.win32-x64-msvc.node b/apps/desktop/native/audio-loopback/audio-loopback.win32-x64-msvc.node new file mode 100644 index 0000000..b688a69 Binary files /dev/null and b/apps/desktop/native/audio-loopback/audio-loopback.win32-x64-msvc.node differ diff --git a/apps/desktop/native/audio-loopback/build.rs b/apps/desktop/native/audio-loopback/build.rs new file mode 100644 index 0000000..f39d415 --- /dev/null +++ b/apps/desktop/native/audio-loopback/build.rs @@ -0,0 +1,10 @@ +// napi-rs build helper. Generates the platform-specific binding glue +// (e.g. typedefs, init symbols) that `napi build` consumes. Required for +// every napi-rs crate; the build will silently produce a half-wired +// binding without it. + +extern crate napi_build; + +fn main() { + napi_build::setup(); +} diff --git a/apps/desktop/native/audio-loopback/index.d.ts b/apps/desktop/native/audio-loopback/index.d.ts new file mode 100644 index 0000000..5a0eb89 --- /dev/null +++ b/apps/desktop/native/audio-loopback/index.d.ts @@ -0,0 +1,35 @@ +/* tslint:disable */ +/* eslint-disable */ + +/* auto-generated by NAPI-RS */ + +/** + * Start a process-loopback capture that excludes the current process + * tree. The supplied JS callback is invoked from a background thread + * with one argument: a Float32Array of interleaved f32 stereo samples + * at 48kHz. Returns a numeric capture id that must be passed to + * `stopCapture` when the share ends. + * + * Always excludes `std::process::id()` (whole-OS-mixer-minus-self). + * For "include only this app" use `start_capture_for_pid` instead. + */ +export declare function startCapture(callback: (...args: any[]) => any): number +/** + * Start a process-loopback capture that INCLUDES the target PID's + * process tree (and only that tree) — the WASAPI + * INCLUDE_TARGET_PROCESS_TREE mode. Used for window-shares where we + * want only the picked app's audio (Discord parity). + */ +export declare function startCaptureForPid(pid: number, callback: (...args: any[]) => any): number +/** + * Resolve the owning process id of a top-level window handle. The + * renderer derives `hwnd` from desktopCapturer's `window::0` + * source ids and we hand that to `start_capture_for_pid`. + */ +export declare function resolveWindowPid(hwnd: number): number +/** + * Tear down the capture for the given id. Safe to call on a missing id + * (no-op) so the JS side doesn't have to track whether the stop has + * already been issued by the screen-share teardown path. + */ +export declare function stopCapture(captureId: number): void diff --git a/apps/desktop/native/audio-loopback/index.js b/apps/desktop/native/audio-loopback/index.js new file mode 100644 index 0000000..1d6dbef --- /dev/null +++ b/apps/desktop/native/audio-loopback/index.js @@ -0,0 +1,318 @@ +/* tslint:disable */ +/* eslint-disable */ +/* prettier-ignore */ + +/* auto-generated by NAPI-RS */ + +const { existsSync, readFileSync } = require('fs') +const { join } = require('path') + +const { platform, arch } = process + +let nativeBinding = null +let localFileExisted = false +let loadError = null + +function isMusl() { + // For Node 10 + if (!process.report || typeof process.report.getReport !== 'function') { + try { + const lddPath = require('child_process').execSync('which ldd').toString().trim() + return readFileSync(lddPath, 'utf8').includes('musl') + } catch (e) { + return true + } + } else { + const { glibcVersionRuntime } = process.report.getReport().header + return !glibcVersionRuntime + } +} + +switch (platform) { + case 'android': + switch (arch) { + case 'arm64': + localFileExisted = existsSync(join(__dirname, 'audio-loopback.android-arm64.node')) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.android-arm64.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-android-arm64') + } + } catch (e) { + loadError = e + } + break + case 'arm': + localFileExisted = existsSync(join(__dirname, 'audio-loopback.android-arm-eabi.node')) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.android-arm-eabi.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-android-arm-eabi') + } + } catch (e) { + loadError = e + } + break + default: + throw new Error(`Unsupported architecture on Android ${arch}`) + } + break + case 'win32': + switch (arch) { + case 'x64': + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.win32-x64-msvc.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.win32-x64-msvc.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-win32-x64-msvc') + } + } catch (e) { + loadError = e + } + break + case 'ia32': + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.win32-ia32-msvc.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.win32-ia32-msvc.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-win32-ia32-msvc') + } + } catch (e) { + loadError = e + } + break + case 'arm64': + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.win32-arm64-msvc.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.win32-arm64-msvc.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-win32-arm64-msvc') + } + } catch (e) { + loadError = e + } + break + default: + throw new Error(`Unsupported architecture on Windows: ${arch}`) + } + break + case 'darwin': + localFileExisted = existsSync(join(__dirname, 'audio-loopback.darwin-universal.node')) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.darwin-universal.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-darwin-universal') + } + break + } catch {} + switch (arch) { + case 'x64': + localFileExisted = existsSync(join(__dirname, 'audio-loopback.darwin-x64.node')) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.darwin-x64.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-darwin-x64') + } + } catch (e) { + loadError = e + } + break + case 'arm64': + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.darwin-arm64.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.darwin-arm64.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-darwin-arm64') + } + } catch (e) { + loadError = e + } + break + default: + throw new Error(`Unsupported architecture on macOS: ${arch}`) + } + break + case 'freebsd': + if (arch !== 'x64') { + throw new Error(`Unsupported architecture on FreeBSD: ${arch}`) + } + localFileExisted = existsSync(join(__dirname, 'audio-loopback.freebsd-x64.node')) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.freebsd-x64.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-freebsd-x64') + } + } catch (e) { + loadError = e + } + break + case 'linux': + switch (arch) { + case 'x64': + if (isMusl()) { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-x64-musl.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-x64-musl.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-x64-musl') + } + } catch (e) { + loadError = e + } + } else { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-x64-gnu.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-x64-gnu.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-x64-gnu') + } + } catch (e) { + loadError = e + } + } + break + case 'arm64': + if (isMusl()) { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-arm64-musl.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-arm64-musl.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-arm64-musl') + } + } catch (e) { + loadError = e + } + } else { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-arm64-gnu.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-arm64-gnu.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-arm64-gnu') + } + } catch (e) { + loadError = e + } + } + break + case 'arm': + if (isMusl()) { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-arm-musleabihf.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-arm-musleabihf.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-arm-musleabihf') + } + } catch (e) { + loadError = e + } + } else { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-arm-gnueabihf.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-arm-gnueabihf.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-arm-gnueabihf') + } + } catch (e) { + loadError = e + } + } + break + case 'riscv64': + if (isMusl()) { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-riscv64-musl.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-riscv64-musl.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-riscv64-musl') + } + } catch (e) { + loadError = e + } + } else { + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-riscv64-gnu.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-riscv64-gnu.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-riscv64-gnu') + } + } catch (e) { + loadError = e + } + } + break + case 's390x': + localFileExisted = existsSync( + join(__dirname, 'audio-loopback.linux-s390x-gnu.node') + ) + try { + if (localFileExisted) { + nativeBinding = require('./audio-loopback.linux-s390x-gnu.node') + } else { + nativeBinding = require('@chatapp/audio-loopback-native-linux-s390x-gnu') + } + } catch (e) { + loadError = e + } + break + default: + throw new Error(`Unsupported architecture on Linux: ${arch}`) + } + break + default: + throw new Error(`Unsupported OS: ${platform}, architecture: ${arch}`) +} + +if (!nativeBinding) { + if (loadError) { + throw loadError + } + throw new Error(`Failed to load native binding`) +} + +const { startCapture, startCaptureForPid, resolveWindowPid, stopCapture } = nativeBinding + +module.exports.startCapture = startCapture +module.exports.startCaptureForPid = startCaptureForPid +module.exports.resolveWindowPid = resolveWindowPid +module.exports.stopCapture = stopCapture diff --git a/apps/desktop/native/audio-loopback/package.json b/apps/desktop/native/audio-loopback/package.json new file mode 100644 index 0000000..750c569 --- /dev/null +++ b/apps/desktop/native/audio-loopback/package.json @@ -0,0 +1,32 @@ +{ + "name": "@chatapp/audio-loopback-native", + "version": "0.1.0", + "private": true, + "description": "Native Windows process-loopback audio capture addon (excludes our own PID tree)", + "main": "index.js", + "types": "index.d.ts", + "files": [ + "index.js", + "index.d.ts", + "*.node" + ], + "napi": { + "name": "audio-loopback", + "triples": { + "defaults": false, + "additional": [ + "x86_64-pc-windows-msvc" + ] + } + }, + "scripts": { + "build": "napi build --platform --release", + "build:debug": "napi build --platform" + }, + "devDependencies": { + "@napi-rs/cli": "^2.18.0" + }, + "engines": { + "node": ">= 18" + } +} diff --git a/apps/desktop/native/audio-loopback/src/lib.rs b/apps/desktop/native/audio-loopback/src/lib.rs new file mode 100644 index 0000000..5220d3b --- /dev/null +++ b/apps/desktop/native/audio-loopback/src/lib.rs @@ -0,0 +1,339 @@ +// Native system-audio capture addon for the ChatApp Electron desktop +// client. Mirrors the proven Tauri implementation +// (apps/desktop/src-tauri/src/screen_audio.rs in the legacy repo). +// +// Why a native addon at all when Electron already exposes a 'loopback' +// audio source through setDisplayMediaRequestHandler? Because Chromium's +// loopback captures the entire OS mixer including our own renderer's +// playback — peers in a video call hear themselves echoed back when the +// sharer ticks "system audio". Windows ships an EXCLUDE_TARGET_PROCESS_TREE +// process-loopback mode that captures every render session except the +// targeted PID's tree. We pass our own PID so the LiveKit playback never +// re-enters the outgoing share. +// +// Wire format is fixed at 48kHz interleaved f32 stereo. The renderer- +// side AudioWorklet (lib/loopbackAudio.ts) assumes that layout and feeds +// samples into a MediaStreamDestination so LiveKit publishes a plain +// ScreenShareAudio track. +// +// Windows-only for v1. macOS/Linux stubs return a clear napi::Error so +// the renderer can fall through to the existing getUserMedia path. + +#![allow(clippy::needless_return)] + +use napi::bindgen_prelude::{Float32Array, Result}; +use napi::threadsafe_function::{ + ErrorStrategy, ThreadsafeFunction, ThreadsafeFunctionCallMode, +}; +use napi::JsFunction; +use napi_derive::napi; +use std::collections::HashMap; +use std::sync::atomic::{AtomicBool, AtomicU32, Ordering}; +use std::sync::{Arc, Mutex, OnceLock}; +use std::thread; + +// Output format we always deliver to the frontend. Pinning a single fixed +// format means the AudioWorklet never has to renegotiate — it just +// assumes interleaved f32 stereo at 48kHz. WASAPI mix format is usually +// already this on Windows 10+, so the resample/upmix branch inside +// process-loopback's autoconvert is rarely hit. +const OUTPUT_SAMPLE_RATE: u32 = 48_000; +const OUTPUT_CHANNELS: u16 = 2; + +static NEXT_ID: AtomicU32 = AtomicU32::new(1); +static SESSIONS: OnceLock>> = OnceLock::new(); + +fn sessions() -> &'static Mutex> { + SESSIONS.get_or_init(|| Mutex::new(HashMap::new())) +} + +struct Session { + stop: Arc, + handle: Option>, +} + +/// Start a process-loopback capture that excludes the current process +/// tree. The supplied JS callback is invoked from a background thread +/// with one argument: a Float32Array of interleaved f32 stereo samples +/// at 48kHz. Returns a numeric capture id that must be passed to +/// `stopCapture` when the share ends. +/// +/// Always excludes `std::process::id()` (whole-OS-mixer-minus-self). +/// For "include only this app" use `start_capture_for_pid` instead. +#[napi] +pub fn start_capture(callback: JsFunction) -> Result { + spawn_capture_session(callback, std::process::id(), false) +} + +/// Start a process-loopback capture that INCLUDES the target PID's +/// process tree (and only that tree) — the WASAPI +/// INCLUDE_TARGET_PROCESS_TREE mode. Used for window-shares where we +/// want only the picked app's audio (Discord parity). +#[napi] +pub fn start_capture_for_pid(pid: u32, callback: JsFunction) -> Result { + spawn_capture_session(callback, pid, true) +} + +/// Resolve the owning process id of a top-level window handle. The +/// renderer derives `hwnd` from desktopCapturer's `window::0` +/// source ids and we hand that to `start_capture_for_pid`. +#[napi] +pub fn resolve_window_pid(hwnd: u32) -> Result { + #[cfg(target_os = "windows")] + { + // Minimal FFI to user32!GetWindowThreadProcessId — pulling in a + // full windows crate just for one call would balloon build + // times. The function returns the thread id (we ignore it) and + // writes the process id through the pointer. + #[allow(non_snake_case)] + extern "system" { + fn GetWindowThreadProcessId(hWnd: usize, lpdwProcessId: *mut u32) -> u32; + } + let mut pid: u32 = 0; + // SAFETY: GetWindowThreadProcessId tolerates an invalid HWND + // (returns 0 thread id and leaves *lpdwProcessId untouched). We + // detect the failure case by checking for pid == 0 below. + let thread_id = unsafe { GetWindowThreadProcessId(hwnd as usize, &mut pid) }; + if thread_id == 0 || pid == 0 { + return Err(napi::Error::from_reason(format!( + "GetWindowThreadProcessId({hwnd}) failed — window may have closed" + ))); + } + Ok(pid) + } + + #[cfg(not(target_os = "windows"))] + { + let _ = hwnd; + Err(napi::Error::from_reason( + "resolve_window_pid only supported on Windows", + )) + } +} + +#[cfg(target_os = "windows")] +fn spawn_capture_session( + callback: JsFunction, + pid: u32, + include_tree: bool, +) -> Result { + // ErrorStrategy::Fatal — the JS callback signature is `(samples)` + // not `(err, samples)`, so we don't want napi to inject an + // error slot. If anything goes wrong on the Rust side we tear + // the session down and stop calling the callback. + let tsfn: ThreadsafeFunction = + callback.create_threadsafe_function(0, |ctx| Ok(vec![ctx.value]))?; + + let capture_id = NEXT_ID.fetch_add(1, Ordering::Relaxed); + let stop = Arc::new(AtomicBool::new(false)); + let stop_clone = Arc::clone(&stop); + + let handle = thread::Builder::new() + .name(format!("audio-loopback-{capture_id}")) + .spawn(move || { + if let Err(err) = windows_loopback::capture_loop( + capture_id, + tsfn, + stop_clone, + pid, + include_tree, + ) { + eprintln!("audio-loopback {capture_id}: {err}"); + } + }) + .map_err(|e| { + napi::Error::from_reason(format!("failed to spawn audio thread: {e}")) + })?; + + sessions().lock().unwrap().insert( + capture_id, + Session { + stop, + handle: Some(handle), + }, + ); + Ok(capture_id) +} + +#[cfg(not(target_os = "windows"))] +fn spawn_capture_session( + callback: JsFunction, + _pid: u32, + _include_tree: bool, +) -> Result { + let _ = callback; + Err(napi::Error::from_reason( + "system audio capture only supported on Windows", + )) +} + +/// Tear down the capture for the given id. Safe to call on a missing id +/// (no-op) so the JS side doesn't have to track whether the stop has +/// already been issued by the screen-share teardown path. +#[napi] +pub fn stop_capture(capture_id: u32) -> Result<()> { + let session = sessions().lock().unwrap().remove(&capture_id); + let Some(mut session) = session else { + return Ok(()); + }; + session.stop.store(true, Ordering::Relaxed); + if let Some(handle) = session.handle.take() { + // Best-effort join — the capture loop polls `stop` every event + // cycle (≤100ms) so this usually returns promptly. If a WASAPI + // call is wedged we'd rather drop the handle than hang the JS + // teardown path. + let _ = handle.join(); + } + Ok(()) +} + +// --------------------------------------------------------------------------- +// Windows loopback implementation +// --------------------------------------------------------------------------- + +#[cfg(target_os = "windows")] +mod windows_loopback { + use super::*; + use wasapi::{initialize_mta, AudioClient, Direction, SampleType, ShareMode, WaveFormat}; + + // 200ms request buffer in 100ns units. Process-loopback clients + // ignore the period for shared-mode but the API still requires a + // non-zero value — picking 200ms keeps wakeups infrequent enough + // that we don't spin the capture thread on idle audio. + const REQUESTED_BUFFER_HNS: i64 = 2_000_000; + + pub fn capture_loop( + capture_id: u32, + tsfn: ThreadsafeFunction, + stop: Arc, + pid: u32, + include_tree: bool, + ) -> std::result::Result<(), String> { + // COM must be initialised on every thread that touches WASAPI. + // MTA is the right model for a background capture thread — + // STA would require message pumping we don't want to add. + initialize_mta() + .ok() + .map_err(|e| format!("initialize_mta: {e:?}"))?; + + // Process-loopback. Two modes — selected by `include_tree`: + // false → EXCLUDE_TARGET_PROCESS_TREE: every render session on + // the box *except* the given PID's tree. Default for + // full-screen shares so LiveKit playback stays out of + // the outgoing audio (we pass our own PID). + // true → INCLUDE_TARGET_PROCESS_TREE: only the given PID's + // tree. Used for window-shares so the captured audio + // is exactly the picked app (Discord parity). + // The `include_tree` flag is the load-bearing arg to + // `new_application_loopback_client`; do not flip without + // re-reading the wasapi crate's docs. + let mut audio_client = + AudioClient::new_application_loopback_client(pid, include_tree) + .map_err(|e| format!("new_application_loopback_client: {e:?}"))?; + + // Process-loopback only accepts caller-specified formats — + // `get_mixformat` is documented as broken on this client. We + // pin the wire format we already deliver downstream: 48kHz, + // 32-bit float, stereo. `autoconvert=true` (the trailing `true` + // arg to initialize_client) lets WASAPI mix arbitrary session + // formats into ours so games at 44.1k or mono notification + // sounds don't blow up the capture. + let wave_format = WaveFormat::new( + 32, + 32, + &SampleType::Float, + OUTPUT_SAMPLE_RATE as usize, + OUTPUT_CHANNELS as usize, + None, + ); + + audio_client + .initialize_client( + &wave_format, + REQUESTED_BUFFER_HNS, + &Direction::Capture, + &ShareMode::Shared, + true, + ) + .map_err(|e| format!("initialize_client (process-loopback): {e:?}"))?; + + let h_event = audio_client + .set_get_eventhandle() + .map_err(|e| format!("set_get_eventhandle: {e:?}"))?; + let capture_client = audio_client + .get_audiocaptureclient() + .map_err(|e| format!("get_audiocaptureclient: {e:?}"))?; + + audio_client + .start_stream() + .map_err(|e| format!("start_stream: {e:?}"))?; + + let block_align = wave_format.get_blockalign() as usize; + + while !stop.load(Ordering::Relaxed) { + // 100ms timeout lets the loop check the stop flag even when + // every excluded session is silent — there's nothing to + // render so the event handle never fires. + if h_event.wait_for_event(100).is_err() { + continue; + } + + // Drain all packets available since the last wake — there + // can be several queued if we were preempted. + loop { + if stop.load(Ordering::Relaxed) { + break; + } + let frames_available = match capture_client.get_next_nbr_frames() { + Ok(Some(n)) if n > 0 => n, + Ok(_) => break, + Err(e) => { + eprintln!( + "audio-loopback {capture_id}: get_next_nbr_frames: {e:?}" + ); + break; + } + }; + + let bytes_needed = frames_available as usize * block_align; + let mut raw = vec![0u8; bytes_needed]; + if let Err(e) = capture_client.read_from_device(&mut raw) { + eprintln!( + "audio-loopback {capture_id}: read_from_device: {e:?}" + ); + break; + } + + // Reinterpret bytes as f32 little-endian samples. The + // buffer is already 48kHz f32 stereo because process- + // loopback autoconverted to our requested format. We + // copy out into a Vec so napi can hand ownership + // of a JS-owned ArrayBuffer to the renderer. + let mut samples = Vec::::with_capacity(raw.len() / 4); + let mut idx = 0; + while idx + 4 <= raw.len() { + let bytes = [raw[idx], raw[idx + 1], raw[idx + 2], raw[idx + 3]]; + samples.push(f32::from_le_bytes(bytes)); + idx += 4; + } + let _ = (OUTPUT_SAMPLE_RATE, OUTPUT_CHANNELS); + + let payload = Float32Array::new(samples); + // NonBlocking: never block the WASAPI capture thread on + // a slow JS event loop — at 48kHz stereo a stalled + // renderer would otherwise back-pressure the WASAPI + // event handle and underrun every other consumer. + let status = tsfn.call(payload, ThreadsafeFunctionCallMode::NonBlocking); + if status != napi::Status::Ok { + // Renderer went away or the threadsafe function was + // released — stop cleanly. + stop.store(true, Ordering::Relaxed); + break; + } + } + } + + let _ = audio_client.stop_stream(); + Ok(()) + } +} diff --git a/apps/desktop/native/audio-loopback/target/.rustc_info.json b/apps/desktop/native/audio-loopback/target/.rustc_info.json new file mode 100644 index 0000000..7d4860b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/.rustc_info.json @@ -0,0 +1 @@ +{"rustc_fingerprint":2812790340253412174,"outputs":{"7971740275564407648":{"success":true,"status":"","code":0,"stdout":"___.exe\nlib___.rlib\n___.dll\n___.dll\n___.lib\n___.dll\nC:\\Users\\denni\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\npacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"msvc\"\ntarget_family=\"windows\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"windows\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"pc\"\nwindows\n","stderr":""},"17747080675513052775":{"success":true,"status":"","code":0,"stdout":"rustc 1.95.0 (59807616e 2026-04-14)\nbinary: rustc\ncommit-hash: 59807616e1fa2540724bfbac14d7976d7e4a3860\ncommit-date: 2026-04-14\nhost: x86_64-pc-windows-msvc\nrelease: 1.95.0\nLLVM version: 22.1.2\n","stderr":""}},"successes":{}} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/CACHEDIR.TAG b/apps/desktop/native/audio-loopback/target/CACHEDIR.TAG new file mode 100644 index 0000000..20d7c31 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/CACHEDIR.TAG @@ -0,0 +1,3 @@ +Signature: 8a477f597d28d172789f06886806bc55 +# This file is a cache directory tag created by cargo. +# For information about cache directory tags see https://bford.info/cachedir/ diff --git a/apps/desktop/native/audio-loopback/target/release/.cargo-lock b/apps/desktop/native/audio-loopback/target/release/.cargo-lock new file mode 100644 index 0000000..e69de29 diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/dep-lib-aho_corasick b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/dep-lib-aho_corasick new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/dep-lib-aho_corasick differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/lib-aho_corasick b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/lib-aho_corasick new file mode 100644 index 0000000..419b8d1 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/lib-aho_corasick @@ -0,0 +1 @@ +e688a2af0c492af6 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/lib-aho_corasick.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/lib-aho_corasick.json new file mode 100644 index 0000000..fe7cfa8 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/aho-corasick-9f0713aa5a0615e8/lib-aho_corasick.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"perf-literal\", \"std\"]","declared_features":"[\"default\", \"logging\", \"perf-literal\", \"std\"]","target":7534583537114156500,"profile":17257705230225558938,"path":12213129009505393428,"deps":[[1363051979936526615,"memchr",false,10675094612715872077]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\aho-corasick-9f0713aa5a0615e8\\dep-lib-aho_corasick","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/build-script-build-script-build new file mode 100644 index 0000000..12854d7 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/build-script-build-script-build @@ -0,0 +1 @@ +d4081d3eaff98543 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/build-script-build-script-build.json new file mode 100644 index 0000000..e060c1e --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":5408242616063297496,"profile":17257705230225558938,"path":13767053534773805487,"deps":[[1035178698636953719,"napi_build",false,13969733624275323243]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\audio-loopback-12f5458902d8391e\\dep-build-script-build-script-build","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/dep-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/dep-build-script-build-script-build new file mode 100644 index 0000000..b7bf9e2 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/dep-build-script-build-script-build differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-12f5458902d8391e/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-2bd39f0f932932d8/run-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-2bd39f0f932932d8/run-build-script-build-script-build new file mode 100644 index 0000000..9be7a76 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-2bd39f0f932932d8/run-build-script-build-script-build @@ -0,0 +1 @@ +be43ec00f8767e8d \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-2bd39f0f932932d8/run-build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-2bd39f0f932932d8/run-build-script-build-script-build.json new file mode 100644 index 0000000..d3be6e0 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-2bd39f0f932932d8/run-build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"","declared_features":"","target":0,"profile":0,"path":0,"deps":[[2572457258515766174,"build_script_build",false,4865569503500372180]],"local":[{"RerunIfEnvChanged":{"var":"DEBUG_GENERATED_CODE","val":null}},{"RerunIfEnvChanged":{"var":"TYPE_DEF_TMP_PATH","val":"C:\\Users\\denni\\AppData\\Local\\Temp\\audio_loopback-a3c3b6f6.napi_type_def.tmp"}},{"RerunIfEnvChanged":{"var":"CARGO_CFG_NAPI_RS_CLI_VERSION","val":"2.18.4"}},{"RerunIfEnvChanged":{"var":"NAPI_DEBUG_GENERATED_CODE","val":null}},{"RerunIfEnvChanged":{"var":"NAPI_TYPE_DEF_TMP_FOLDER","val":null}},{"RerunIfEnvChanged":{"var":"NAPI_FORCE_BUILD_AUDIO_LOOPBACK","val":null}}],"rustflags":[],"config":0,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/dep-lib-audio_loopback b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/dep-lib-audio_loopback new file mode 100644 index 0000000..02bca30 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/dep-lib-audio_loopback differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/lib-audio_loopback b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/lib-audio_loopback new file mode 100644 index 0000000..0f230f4 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/lib-audio_loopback @@ -0,0 +1 @@ +5516adc767f5abec \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/lib-audio_loopback.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/lib-audio_loopback.json new file mode 100644 index 0000000..790d3d3 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/audio-loopback-6c6fd3fda356bdba/lib-audio_loopback.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":11760611160289367125,"profile":5353520049763563864,"path":10763286916239946207,"deps":[[2572457258515766174,"build_script_build",false,10195717413952832446],[13045677537521422049,"wasapi",false,17410940550348078650],[13423243174795060362,"napi_derive",false,2979073294737158417],[16099943211762415786,"napi",false,7346211637381484829]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\audio-loopback-6c6fd3fda356bdba\\dep-lib-audio_loopback","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/dep-lib-autocfg b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/dep-lib-autocfg new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/dep-lib-autocfg differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/lib-autocfg b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/lib-autocfg new file mode 100644 index 0000000..dfd4d25 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/lib-autocfg @@ -0,0 +1 @@ +0ccbb31ddfd4265e \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/lib-autocfg.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/lib-autocfg.json new file mode 100644 index 0000000..0641ef5 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/autocfg-ef41a80ef2a4f8c4/lib-autocfg.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":6962977057026645649,"profile":17257705230225558938,"path":18420280761196579094,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\autocfg-ef41a80ef2a4f8c4\\dep-lib-autocfg","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/dep-lib-bitflags b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/dep-lib-bitflags new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/dep-lib-bitflags differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/lib-bitflags b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/lib-bitflags new file mode 100644 index 0000000..3ee55a9 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/lib-bitflags @@ -0,0 +1 @@ +3f3c2a22cbdb03dc \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/lib-bitflags.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/lib-bitflags.json new file mode 100644 index 0000000..4cf3235 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/bitflags-56bc72c2ee6a11d2/lib-bitflags.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[\"arbitrary\", \"bytemuck\", \"example_generated\", \"serde\", \"serde_core\", \"std\"]","target":7691312148208718491,"profile":16503403049695105087,"path":12664969178542693245,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\bitflags-56bc72c2ee6a11d2\\dep-lib-bitflags","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/dep-lib-cfg_if b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/dep-lib-cfg_if new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/dep-lib-cfg_if differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/lib-cfg_if b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/lib-cfg_if new file mode 100644 index 0000000..8bb24e2 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/lib-cfg_if @@ -0,0 +1 @@ +fc3ac7ee25a03df6 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/lib-cfg_if.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/lib-cfg_if.json new file mode 100644 index 0000000..15dfc60 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/cfg-if-2de0fde34c98fcea/lib-cfg_if.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[\"core\", \"rustc-dep-of-std\"]","target":13840298032947503755,"profile":17257705230225558938,"path":7789178187138679712,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\cfg-if-2de0fde34c98fcea\\dep-lib-cfg_if","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/dep-lib-convert_case b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/dep-lib-convert_case new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/dep-lib-convert_case differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/lib-convert_case b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/lib-convert_case new file mode 100644 index 0000000..0b6c285 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/lib-convert_case @@ -0,0 +1 @@ +c9711a2dd730566c \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/lib-convert_case.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/lib-convert_case.json new file mode 100644 index 0000000..f789354 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/convert_case-cb245ff7b0d5094c/lib-convert_case.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[\"rand\", \"random\"]","target":13517390075341535229,"profile":17257705230225558938,"path":13073641468317742375,"deps":[[4341528441765018781,"unicode_segmentation",false,4009714942342982812]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\convert_case-cb245ff7b0d5094c\\dep-lib-convert_case","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/dep-lib-ctor b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/dep-lib-ctor new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/dep-lib-ctor differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/lib-ctor b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/lib-ctor new file mode 100644 index 0000000..3eb38a4 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/lib-ctor @@ -0,0 +1 @@ +fcff169995187d99 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/lib-ctor.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/lib-ctor.json new file mode 100644 index 0000000..177398f --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/ctor-c44e8ff1492b4966/lib-ctor.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[\"used_linker\"]","target":16767752466166802488,"profile":17257705230225558938,"path":8223028202004655627,"deps":[[10420560437213941093,"syn",false,667617596471125619],[13111758008314797071,"quote",false,15488645298819577813]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\ctor-c44e8ff1492b4966\\dep-lib-ctor","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/dep-lib-libloading b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/dep-lib-libloading new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/dep-lib-libloading differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/lib-libloading b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/lib-libloading new file mode 100644 index 0000000..c454b82 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/lib-libloading @@ -0,0 +1 @@ +48a82cf2ec9381fd \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/lib-libloading.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/lib-libloading.json new file mode 100644 index 0000000..50dd502 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/libloading-c73fed9c19177dcc/lib-libloading.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":9378127968640496523,"profile":2301124911398833726,"path":15222717544052245301,"deps":[[6959378045035346538,"windows_link",false,12153921703720002459]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\libloading-c73fed9c19177dcc\\dep-lib-libloading","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/dep-lib-log b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/dep-lib-log new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/dep-lib-log differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/lib-log b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/lib-log new file mode 100644 index 0000000..7a0d41e --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/lib-log @@ -0,0 +1 @@ +ddda7dfc68960487 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/lib-log.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/lib-log.json new file mode 100644 index 0000000..bebcfc8 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/log-503ba197615b4899/lib-log.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[\"kv\", \"kv_serde\", \"kv_std\", \"kv_sval\", \"kv_unstable\", \"kv_unstable_serde\", \"kv_unstable_std\", \"kv_unstable_sval\", \"max_level_debug\", \"max_level_error\", \"max_level_info\", \"max_level_off\", \"max_level_trace\", \"max_level_warn\", \"release_max_level_debug\", \"release_max_level_error\", \"release_max_level_info\", \"release_max_level_off\", \"release_max_level_trace\", \"release_max_level_warn\", \"serde\", \"serde_core\", \"std\", \"sval\", \"sval_ref\", \"value-bag\"]","target":6550155848337067049,"profile":16503403049695105087,"path":2935339677018414979,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\log-503ba197615b4899\\dep-lib-log","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/dep-lib-memchr b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/dep-lib-memchr new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/dep-lib-memchr differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/lib-memchr b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/lib-memchr new file mode 100644 index 0000000..a8a5509 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/lib-memchr @@ -0,0 +1 @@ +4d9f9dbefd8d2594 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/lib-memchr.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/lib-memchr.json new file mode 100644 index 0000000..fe93a55 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/memchr-0b6ded161300fb6d/lib-memchr.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"alloc\", \"std\"]","declared_features":"[\"alloc\", \"core\", \"default\", \"libc\", \"logging\", \"rustc-dep-of-std\", \"std\", \"use_std\"]","target":11745930252914242013,"profile":17257705230225558938,"path":10267584396946875985,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\memchr-0b6ded161300fb6d\\dep-lib-memchr","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/dep-lib-napi_build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/dep-lib-napi_build new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/dep-lib-napi_build differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/lib-napi_build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/lib-napi_build new file mode 100644 index 0000000..d0da110 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/lib-napi_build @@ -0,0 +1 @@ +6bc9c269b776dec1 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/lib-napi_build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/lib-napi_build.json new file mode 100644 index 0000000..b589df8 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-build-547d402dbe5275e3/lib-napi_build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":9388202626367339685,"profile":17257705230225558938,"path":6355682921637151155,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\napi-build-547d402dbe5275e3\\dep-lib-napi_build","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/dep-lib-napi b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/dep-lib-napi new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/dep-lib-napi differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/lib-napi b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/lib-napi new file mode 100644 index 0000000..17ac8ea --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/lib-napi @@ -0,0 +1 @@ +1dd1f6f28ffcf265 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/lib-napi.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/lib-napi.json new file mode 100644 index 0000000..28e95f4 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-c71c5da813d1757f/lib-napi.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"napi1\", \"napi2\", \"napi3\", \"napi4\", \"napi5\", \"napi6\"]","declared_features":"[\"anyhow\", \"async\", \"chrono\", \"chrono_date\", \"compat-mode\", \"default\", \"deferred_trace\", \"dyn-symbols\", \"encoding_rs\", \"error_anyhow\", \"experimental\", \"full\", \"indexmap\", \"latin1\", \"napi1\", \"napi2\", \"napi3\", \"napi4\", \"napi5\", \"napi6\", \"napi7\", \"napi8\", \"napi9\", \"noop\", \"object_indexmap\", \"serde\", \"serde-json\", \"serde-json-ordered\", \"serde_json\", \"tokio\", \"tokio_fs\", \"tokio_full\", \"tokio_io_std\", \"tokio_io_util\", \"tokio_macros\", \"tokio_net\", \"tokio_process\", \"tokio_rt\", \"tokio_signal\", \"tokio_sync\", \"tokio_test_util\", \"tokio_time\"]","target":6604924358859142166,"profile":16503403049695105087,"path":12768161688960962680,"deps":[[900613073546913600,"napi_sys",false,1702221090865446476],[2571033484697105782,"bitflags",false,15853756778772315199],[5855319743879205494,"once_cell",false,4803485267941743741],[6606131838865521726,"ctor",false,11060023290689421308]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\napi-c71c5da813d1757f\\dep-lib-napi","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/dep-lib-napi_derive b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/dep-lib-napi_derive new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/dep-lib-napi_derive differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/lib-napi_derive b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/lib-napi_derive new file mode 100644 index 0000000..2995d71 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/lib-napi_derive @@ -0,0 +1 @@ +1131a9b460cb5729 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/lib-napi_derive.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/lib-napi_derive.json new file mode 100644 index 0000000..165c171 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-8a06c7ca101ebb69/lib-napi_derive.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"compat-mode\", \"default\", \"full\", \"strict\", \"type-def\"]","declared_features":"[\"compat-mode\", \"default\", \"full\", \"noop\", \"strict\", \"type-def\"]","target":2065430088197001673,"profile":17257705230225558938,"path":14139299789826547350,"deps":[[4289358735036141001,"proc_macro2",false,4386134274409224043],[5241157436998822951,"napi_derive_backend",false,14640003306665018262],[7667230146095136825,"cfg_if",false,17743514191689890556],[10420560437213941093,"syn",false,667617596471125619],[13111758008314797071,"quote",false,15488645298819577813],[13475460906694513802,"convert_case",false,7806480704826143177]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\napi-derive-8a06c7ca101ebb69\\dep-lib-napi_derive","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/dep-lib-napi_derive_backend b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/dep-lib-napi_derive_backend new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/dep-lib-napi_derive_backend differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/lib-napi_derive_backend b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/lib-napi_derive_backend new file mode 100644 index 0000000..6ed71d3 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/lib-napi_derive_backend @@ -0,0 +1 @@ +960350fc70bd2bcb \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/lib-napi_derive_backend.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/lib-napi_derive_backend.json new file mode 100644 index 0000000..791113b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-derive-backend-b741fd0ea2b72c1a/lib-napi_derive_backend.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"regex\", \"semver\", \"strict\", \"type-def\"]","declared_features":"[\"noop\", \"regex\", \"semver\", \"strict\", \"type-def\"]","target":7459870077939534063,"profile":17257705230225558938,"path":18206335121874424249,"deps":[[4289358735036141001,"proc_macro2",false,4386134274409224043],[5855319743879205494,"once_cell",false,3458902346603695405],[9680020106200215617,"semver",false,3158118117038451264],[10420560437213941093,"syn",false,667617596471125619],[13111758008314797071,"quote",false,15488645298819577813],[13475460906694513802,"convert_case",false,7806480704826143177],[17109794424245468765,"regex",false,15429713168089850008]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\napi-derive-backend-b741fd0ea2b72c1a\\dep-lib-napi_derive_backend","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/dep-lib-napi_sys b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/dep-lib-napi_sys new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/dep-lib-napi_sys differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/lib-napi_sys b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/lib-napi_sys new file mode 100644 index 0000000..5c0b1ff --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/lib-napi_sys @@ -0,0 +1 @@ +4c7e363a10819f17 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/lib-napi_sys.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/lib-napi_sys.json new file mode 100644 index 0000000..dcedc1a --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/napi-sys-9a4a05b3b03a98e6/lib-napi_sys.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"napi1\", \"napi2\", \"napi3\", \"napi4\", \"napi5\", \"napi6\"]","declared_features":"[\"dyn-symbols\", \"experimental\", \"libloading\", \"napi1\", \"napi2\", \"napi3\", \"napi4\", \"napi5\", \"napi6\", \"napi7\", \"napi8\", \"napi9\"]","target":7475771664120104103,"profile":16503403049695105087,"path":17503114133641832535,"deps":[[7883780462905440460,"libloading",false,18267044209476020296]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\napi-sys-9a4a05b3b03a98e6\\dep-lib-napi_sys","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/dep-lib-num_integer b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/dep-lib-num_integer new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/dep-lib-num_integer differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/lib-num_integer b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/lib-num_integer new file mode 100644 index 0000000..5962283 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/lib-num_integer @@ -0,0 +1 @@ +bbcfe6834526535c \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/lib-num_integer.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/lib-num_integer.json new file mode 100644 index 0000000..e6ab719 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-integer-c4c848204269c844/lib-num_integer.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"std\"]","declared_features":"[\"default\", \"i128\", \"std\"]","target":7628309033881264685,"profile":16503403049695105087,"path":4800420964197105753,"deps":[[5157631553186200874,"num_traits",false,3909741165336574495]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\num-integer-c4c848204269c844\\dep-lib-num_integer","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/dep-lib-num_traits b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/dep-lib-num_traits new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/dep-lib-num_traits differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/lib-num_traits b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/lib-num_traits new file mode 100644 index 0000000..7d2471b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/lib-num_traits @@ -0,0 +1 @@ +1fba9b0be0304236 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/lib-num_traits.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/lib-num_traits.json new file mode 100644 index 0000000..2d751f4 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-03118305971f36e0/lib-num_traits.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"i128\", \"std\"]","declared_features":"[\"default\", \"i128\", \"libm\", \"std\"]","target":4278088450330190724,"profile":16503403049695105087,"path":7756100633843771872,"deps":[[5157631553186200874,"build_script_build",false,13166776042377898855]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\num-traits-03118305971f36e0\\dep-lib-num_traits","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/build-script-build-script-build new file mode 100644 index 0000000..370209c --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/build-script-build-script-build @@ -0,0 +1 @@ +65ebf59182c2d99c \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/build-script-build-script-build.json new file mode 100644 index 0000000..ae2d5c9 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"i128\", \"std\"]","declared_features":"[\"default\", \"i128\", \"libm\", \"std\"]","target":5408242616063297496,"profile":17257705230225558938,"path":9571220808474951353,"deps":[[13927012481677012980,"autocfg",false,6784343943421348620]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\num-traits-358a4796e6961756\\dep-build-script-build-script-build","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/dep-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/dep-build-script-build-script-build new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/dep-build-script-build-script-build differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-358a4796e6961756/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-63b50a34cdd7574c/run-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-63b50a34cdd7574c/run-build-script-build-script-build new file mode 100644 index 0000000..2dfb370 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-63b50a34cdd7574c/run-build-script-build-script-build @@ -0,0 +1 @@ +67eb0ecb0cc9b9b6 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-63b50a34cdd7574c/run-build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-63b50a34cdd7574c/run-build-script-build-script-build.json new file mode 100644 index 0000000..ca0eec7 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/num-traits-63b50a34cdd7574c/run-build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"","declared_features":"","target":0,"profile":0,"path":0,"deps":[[5157631553186200874,"build_script_build",false,11302278605913320293]],"local":[{"RerunIfChanged":{"output":"release\\build\\num-traits-63b50a34cdd7574c\\output","paths":["build.rs"]}}],"rustflags":[],"config":0,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/dep-lib-once_cell b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/dep-lib-once_cell new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/dep-lib-once_cell differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/lib-once_cell b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/lib-once_cell new file mode 100644 index 0000000..52e4106 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/lib-once_cell @@ -0,0 +1 @@ +7d5c7db76668a942 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/lib-once_cell.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/lib-once_cell.json new file mode 100644 index 0000000..a874aa9 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-58eed7c19356b807/lib-once_cell.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"alloc\", \"default\", \"race\", \"std\"]","declared_features":"[\"alloc\", \"atomic-polyfill\", \"critical-section\", \"default\", \"parking_lot\", \"portable-atomic\", \"race\", \"std\", \"unstable\"]","target":17524666916136250164,"profile":16503403049695105087,"path":1942199980420204124,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\once_cell-58eed7c19356b807\\dep-lib-once_cell","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/dep-lib-once_cell b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/dep-lib-once_cell new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/dep-lib-once_cell differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/lib-once_cell b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/lib-once_cell new file mode 100644 index 0000000..2ee2cfc --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/lib-once_cell @@ -0,0 +1 @@ +2d0d14b25b7d0030 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/lib-once_cell.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/lib-once_cell.json new file mode 100644 index 0000000..ad68b96 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/once_cell-f5f3a7b099532975/lib-once_cell.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"alloc\", \"default\", \"race\", \"std\"]","declared_features":"[\"alloc\", \"atomic-polyfill\", \"critical-section\", \"default\", \"parking_lot\", \"portable-atomic\", \"race\", \"std\", \"unstable\"]","target":17524666916136250164,"profile":17257705230225558938,"path":1942199980420204124,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\once_cell-f5f3a7b099532975\\dep-lib-once_cell","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/build-script-build-script-build new file mode 100644 index 0000000..8af46ec --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/build-script-build-script-build @@ -0,0 +1 @@ +49e497e513242101 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/build-script-build-script-build.json new file mode 100644 index 0000000..6db0969 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"proc-macro\"]","declared_features":"[\"default\", \"nightly\", \"proc-macro\", \"span-locations\"]","target":5408242616063297496,"profile":17257705230225558938,"path":1796872620061515473,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\proc-macro2-48e19284585b1535\\dep-build-script-build-script-build","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/dep-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/dep-build-script-build-script-build new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/dep-build-script-build-script-build differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-48e19284585b1535/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-653485dc15b16190/run-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-653485dc15b16190/run-build-script-build-script-build new file mode 100644 index 0000000..53a473f --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-653485dc15b16190/run-build-script-build-script-build @@ -0,0 +1 @@ +b0d7f06e1e682cc1 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-653485dc15b16190/run-build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-653485dc15b16190/run-build-script-build-script-build.json new file mode 100644 index 0000000..829685b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-653485dc15b16190/run-build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"","declared_features":"","target":0,"profile":0,"path":0,"deps":[[4289358735036141001,"build_script_build",false,81385936144294985]],"local":[{"RerunIfChanged":{"output":"release\\build\\proc-macro2-653485dc15b16190\\output","paths":["src/probe/proc_macro_span.rs","src/probe/proc_macro_span_location.rs","src/probe/proc_macro_span_file.rs"]}},{"RerunIfEnvChanged":{"var":"RUSTC_BOOTSTRAP","val":null}}],"rustflags":[],"config":0,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/dep-lib-proc_macro2 b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/dep-lib-proc_macro2 new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/dep-lib-proc_macro2 differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/lib-proc_macro2 b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/lib-proc_macro2 new file mode 100644 index 0000000..c632fd8 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/lib-proc_macro2 @@ -0,0 +1 @@ +6bd75343e2adde3c \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/lib-proc_macro2.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/lib-proc_macro2.json new file mode 100644 index 0000000..d030b13 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/proc-macro2-ccf35862a228406d/lib-proc_macro2.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"proc-macro\"]","declared_features":"[\"default\", \"nightly\", \"proc-macro\", \"span-locations\"]","target":369203346396300798,"profile":17257705230225558938,"path":5169618064637942735,"deps":[[4289358735036141001,"build_script_build",false,13919615028214945712],[8901712065508858692,"unicode_ident",false,8868396771065692487]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\proc-macro2-ccf35862a228406d\\dep-lib-proc_macro2","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-0f12b1589114ddf5/run-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-0f12b1589114ddf5/run-build-script-build-script-build new file mode 100644 index 0000000..55c6385 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-0f12b1589114ddf5/run-build-script-build-script-build @@ -0,0 +1 @@ +acbe840344086fab \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-0f12b1589114ddf5/run-build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-0f12b1589114ddf5/run-build-script-build-script-build.json new file mode 100644 index 0000000..44d9a1a --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-0f12b1589114ddf5/run-build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"","declared_features":"","target":0,"profile":0,"path":0,"deps":[[13111758008314797071,"build_script_build",false,7098550405621233970]],"local":[{"RerunIfChanged":{"output":"release\\build\\quote-0f12b1589114ddf5\\output","paths":["build.rs"]}}],"rustflags":[],"config":0,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/dep-lib-quote b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/dep-lib-quote new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/dep-lib-quote differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/lib-quote b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/lib-quote new file mode 100644 index 0000000..4df8182 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/lib-quote @@ -0,0 +1 @@ +d5372a40d6b8f2d6 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/lib-quote.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/lib-quote.json new file mode 100644 index 0000000..5f26552 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-a2dce141b7ee9817/lib-quote.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"proc-macro\"]","declared_features":"[\"default\", \"proc-macro\"]","target":8313845041260779044,"profile":17257705230225558938,"path":6776687023794356647,"deps":[[4289358735036141001,"proc_macro2",false,4386134274409224043],[13111758008314797071,"build_script_build",false,12353101391110389420]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\quote-a2dce141b7ee9817\\dep-lib-quote","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/build-script-build-script-build new file mode 100644 index 0000000..ae1c60d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/build-script-build-script-build @@ -0,0 +1 @@ +323942f3fb1d8362 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/build-script-build-script-build.json new file mode 100644 index 0000000..c203f28 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"proc-macro\"]","declared_features":"[\"default\", \"proc-macro\"]","target":5408242616063297496,"profile":17257705230225558938,"path":11643666334663158691,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\quote-ecbc362f0495cbaa\\dep-build-script-build-script-build","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/dep-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/dep-build-script-build-script-build new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/dep-build-script-build-script-build differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/quote-ecbc362f0495cbaa/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/dep-lib-regex b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/dep-lib-regex new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/dep-lib-regex differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/lib-regex b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/lib-regex new file mode 100644 index 0000000..ccb9b10 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/lib-regex @@ -0,0 +1 @@ +98a02952605a21d6 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/lib-regex.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/lib-regex.json new file mode 100644 index 0000000..3d6043a --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-2e1c82ee5e10bb33/lib-regex.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"perf\", \"perf-backtrack\", \"perf-cache\", \"perf-dfa\", \"perf-inline\", \"perf-literal\", \"perf-onepass\", \"std\", \"unicode\", \"unicode-age\", \"unicode-bool\", \"unicode-case\", \"unicode-gencat\", \"unicode-perl\", \"unicode-script\", \"unicode-segment\"]","declared_features":"[\"default\", \"logging\", \"pattern\", \"perf\", \"perf-backtrack\", \"perf-cache\", \"perf-dfa\", \"perf-dfa-full\", \"perf-inline\", \"perf-literal\", \"perf-onepass\", \"std\", \"unicode\", \"unicode-age\", \"unicode-bool\", \"unicode-case\", \"unicode-gencat\", \"unicode-perl\", \"unicode-script\", \"unicode-segment\", \"unstable\", \"use_std\"]","target":5796931310894148030,"profile":4418143284530305556,"path":16910636766668767623,"deps":[[1363051979936526615,"memchr",false,10675094612715872077],[3621165330500844947,"regex_automata",false,10979699800458705486],[13473492399833278124,"regex_syntax",false,3329064107802218480],[15324871377471570981,"aho_corasick",false,17738070401187219686]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\regex-2e1c82ee5e10bb33\\dep-lib-regex","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/dep-lib-regex_automata b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/dep-lib-regex_automata new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/dep-lib-regex_automata differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/lib-regex_automata b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/lib-regex_automata new file mode 100644 index 0000000..543541b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/lib-regex_automata @@ -0,0 +1 @@ +4ebac4aacbba5f98 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/lib-regex_automata.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/lib-regex_automata.json new file mode 100644 index 0000000..1369fee --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-automata-704f60644d410463/lib-regex_automata.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"alloc\", \"dfa-onepass\", \"hybrid\", \"meta\", \"nfa-backtrack\", \"nfa-pikevm\", \"nfa-thompson\", \"perf-inline\", \"perf-literal\", \"perf-literal-multisubstring\", \"perf-literal-substring\", \"std\", \"syntax\", \"unicode\", \"unicode-age\", \"unicode-bool\", \"unicode-case\", \"unicode-gencat\", \"unicode-perl\", \"unicode-script\", \"unicode-segment\", \"unicode-word-boundary\"]","declared_features":"[\"alloc\", \"default\", \"dfa\", \"dfa-build\", \"dfa-onepass\", \"dfa-search\", \"hybrid\", \"internal-instrument\", \"internal-instrument-pikevm\", \"logging\", \"meta\", \"nfa\", \"nfa-backtrack\", \"nfa-pikevm\", \"nfa-thompson\", \"perf\", \"perf-inline\", \"perf-literal\", \"perf-literal-multisubstring\", \"perf-literal-substring\", \"std\", \"syntax\", \"unicode\", \"unicode-age\", \"unicode-bool\", \"unicode-case\", \"unicode-gencat\", \"unicode-perl\", \"unicode-script\", \"unicode-segment\", \"unicode-word-boundary\"]","target":4726246767843925232,"profile":4418143284530305556,"path":6542145672743368805,"deps":[[1363051979936526615,"memchr",false,10675094612715872077],[13473492399833278124,"regex_syntax",false,3329064107802218480],[15324871377471570981,"aho_corasick",false,17738070401187219686]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\regex-automata-704f60644d410463\\dep-lib-regex_automata","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/dep-lib-regex_syntax b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/dep-lib-regex_syntax new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/dep-lib-regex_syntax differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/lib-regex_syntax b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/lib-regex_syntax new file mode 100644 index 0000000..69537ce --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/lib-regex_syntax @@ -0,0 +1 @@ +f0cf0dfc2a36332e \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/lib-regex_syntax.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/lib-regex_syntax.json new file mode 100644 index 0000000..1752fd7 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/regex-syntax-0aa2ccb0061be3ba/lib-regex_syntax.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"std\", \"unicode\", \"unicode-age\", \"unicode-bool\", \"unicode-case\", \"unicode-gencat\", \"unicode-perl\", \"unicode-script\", \"unicode-segment\"]","declared_features":"[\"arbitrary\", \"default\", \"std\", \"unicode\", \"unicode-age\", \"unicode-bool\", \"unicode-case\", \"unicode-gencat\", \"unicode-perl\", \"unicode-script\", \"unicode-segment\"]","target":742186494246220192,"profile":4418143284530305556,"path":4510953916368354750,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\regex-syntax-0aa2ccb0061be3ba\\dep-lib-regex_syntax","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/dep-lib-semver b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/dep-lib-semver new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/dep-lib-semver differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/lib-semver b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/lib-semver new file mode 100644 index 0000000..267380f --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/lib-semver @@ -0,0 +1 @@ +406acdecb1e3d32b \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/lib-semver.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/lib-semver.json new file mode 100644 index 0000000..50a6e15 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/semver-1783b44b5dee25b3/lib-semver.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"std\"]","declared_features":"[\"default\", \"serde\", \"std\"]","target":12174432953422647384,"profile":17257705230225558938,"path":2967117883039813934,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\semver-1783b44b5dee25b3\\dep-lib-semver","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/dep-lib-syn b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/dep-lib-syn new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/dep-lib-syn differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/lib-syn b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/lib-syn new file mode 100644 index 0000000..b3241aa --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/lib-syn @@ -0,0 +1 @@ +732676b3aada4309 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/lib-syn.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/lib-syn.json new file mode 100644 index 0000000..ec09ea3 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/syn-17343a382f09a1e7/lib-syn.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"clone-impls\", \"default\", \"derive\", \"extra-traits\", \"fold\", \"full\", \"parsing\", \"printing\", \"proc-macro\"]","declared_features":"[\"clone-impls\", \"default\", \"derive\", \"extra-traits\", \"fold\", \"full\", \"parsing\", \"printing\", \"proc-macro\", \"test\", \"visit\", \"visit-mut\"]","target":9442126953582868550,"profile":17257705230225558938,"path":3835382280637760129,"deps":[[4289358735036141001,"proc_macro2",false,4386134274409224043],[8901712065508858692,"unicode_ident",false,8868396771065692487],[13111758008314797071,"quote",false,15488645298819577813]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\syn-17343a382f09a1e7\\dep-lib-syn","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/dep-lib-unicode_ident b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/dep-lib-unicode_ident new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/dep-lib-unicode_ident differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/lib-unicode_ident b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/lib-unicode_ident new file mode 100644 index 0000000..a79e61d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/lib-unicode_ident @@ -0,0 +1 @@ +47819762e0df127b \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/lib-unicode_ident.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/lib-unicode_ident.json new file mode 100644 index 0000000..490a5c1 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-ident-8b7f523ab35918b8/lib-unicode_ident.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":14045917370260632744,"profile":17257705230225558938,"path":13994594804682327165,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\unicode-ident-8b7f523ab35918b8\\dep-lib-unicode_ident","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/dep-lib-unicode_segmentation b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/dep-lib-unicode_segmentation new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/dep-lib-unicode_segmentation differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/lib-unicode_segmentation b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/lib-unicode_segmentation new file mode 100644 index 0000000..d373220 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/lib-unicode_segmentation @@ -0,0 +1 @@ +9cecede47e5ea537 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/lib-unicode_segmentation.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/lib-unicode_segmentation.json new file mode 100644 index 0000000..65a245e --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/unicode-segmentation-8da93bcdee04ce34/lib-unicode_segmentation.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[\"no_std\"]","target":14369684853076716314,"profile":17257705230225558938,"path":3249532914660527404,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\unicode-segmentation-8da93bcdee04ce34\\dep-lib-unicode_segmentation","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/dep-lib-wasapi b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/dep-lib-wasapi new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/dep-lib-wasapi differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/lib-wasapi b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/lib-wasapi new file mode 100644 index 0000000..e6fb3a3 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/lib-wasapi @@ -0,0 +1 @@ +3afef0f42e16a0f1 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/lib-wasapi.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/lib-wasapi.json new file mode 100644 index 0000000..9168b2e --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/wasapi-f37956a90f27a368/lib-wasapi.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":3942105502295199464,"profile":16503403049695105087,"path":16156773331653992588,"deps":[[3272922030943206072,"widestring",false,6860500329811748953],[6779180614165240252,"windows_core",false,18359323233826304713],[9632417652293025463,"windows",false,6365694407413787445],[10630857666389190470,"log",false,9729066472683985629],[16795989132585092538,"num_integer",false,6652703154563895227]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\wasapi-f37956a90f27a368\\dep-lib-wasapi","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/dep-lib-widestring b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/dep-lib-widestring new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/dep-lib-widestring differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/lib-widestring b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/lib-widestring new file mode 100644 index 0000000..559f53e --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/lib-widestring @@ -0,0 +1 @@ +5928e193b364355f \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/lib-widestring.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/lib-widestring.json new file mode 100644 index 0000000..531abb6 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/widestring-e4ff05f1ba63a6fd/lib-widestring.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"alloc\", \"default\", \"std\"]","declared_features":"[\"alloc\", \"debugger_visualizer\", \"default\", \"std\"]","target":15675311582350372676,"profile":16503403049695105087,"path":1317289454590159521,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\widestring-e4ff05f1ba63a6fd\\dep-lib-widestring","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/dep-lib-windows b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/dep-lib-windows new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/dep-lib-windows differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/lib-windows b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/lib-windows new file mode 100644 index 0000000..e73bffb --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/lib-windows @@ -0,0 +1 @@ +35eb962e567d5758 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/lib-windows.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/lib-windows.json new file mode 100644 index 0000000..d7df3cc --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-317e26e04bae559c/lib-windows.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"Foundation\", \"Win32\", \"Win32_Devices\", \"Win32_Devices_FunctionDiscovery\", \"Win32_Devices_Properties\", \"Win32_Foundation\", \"Win32_Media\", \"Win32_Media_Audio\", \"Win32_Media_KernelStreaming\", \"Win32_Media_Multimedia\", \"Win32_Security\", \"Win32_System\", \"Win32_System_Com\", \"Win32_System_Com_StructuredStorage\", \"Win32_System_Threading\", \"Win32_System_Variant\", \"Win32_UI\", \"Win32_UI_Shell\", \"Win32_UI_Shell_PropertiesSystem\", \"default\", \"implement\", \"std\"]","declared_features":"[\"AI\", \"AI_MachineLearning\", \"ApplicationModel\", \"ApplicationModel_Activation\", \"ApplicationModel_AppExtensions\", \"ApplicationModel_AppService\", \"ApplicationModel_Appointments\", \"ApplicationModel_Appointments_AppointmentsProvider\", \"ApplicationModel_Appointments_DataProvider\", \"ApplicationModel_Background\", \"ApplicationModel_Calls\", \"ApplicationModel_Calls_Background\", \"ApplicationModel_Calls_Provider\", \"ApplicationModel_Chat\", \"ApplicationModel_CommunicationBlocking\", \"ApplicationModel_Contacts\", \"ApplicationModel_Contacts_DataProvider\", \"ApplicationModel_Contacts_Provider\", \"ApplicationModel_ConversationalAgent\", \"ApplicationModel_Core\", \"ApplicationModel_DataTransfer\", \"ApplicationModel_DataTransfer_DragDrop\", \"ApplicationModel_DataTransfer_DragDrop_Core\", \"ApplicationModel_DataTransfer_ShareTarget\", \"ApplicationModel_Email\", \"ApplicationModel_Email_DataProvider\", \"ApplicationModel_ExtendedExecution\", \"ApplicationModel_ExtendedExecution_Foreground\", \"ApplicationModel_Holographic\", \"ApplicationModel_LockScreen\", \"ApplicationModel_Payments\", \"ApplicationModel_Payments_Provider\", \"ApplicationModel_Preview\", \"ApplicationModel_Preview_Holographic\", \"ApplicationModel_Preview_InkWorkspace\", \"ApplicationModel_Preview_Notes\", \"ApplicationModel_Resources\", \"ApplicationModel_Resources_Core\", \"ApplicationModel_Resources_Management\", \"ApplicationModel_Search\", \"ApplicationModel_Search_Core\", \"ApplicationModel_UserActivities\", \"ApplicationModel_UserActivities_Core\", \"ApplicationModel_UserDataAccounts\", \"ApplicationModel_UserDataAccounts_Provider\", \"ApplicationModel_UserDataAccounts_SystemAccess\", \"ApplicationModel_UserDataTasks\", \"ApplicationModel_UserDataTasks_DataProvider\", \"ApplicationModel_VoiceCommands\", \"ApplicationModel_Wallet\", \"ApplicationModel_Wallet_System\", \"Data\", \"Data_Html\", \"Data_Json\", \"Data_Pdf\", \"Data_Text\", \"Data_Xml\", \"Data_Xml_Dom\", \"Data_Xml_Xsl\", \"Devices\", \"Devices_Adc\", \"Devices_Adc_Provider\", \"Devices_Background\", \"Devices_Bluetooth\", \"Devices_Bluetooth_Advertisement\", \"Devices_Bluetooth_Background\", \"Devices_Bluetooth_GenericAttributeProfile\", \"Devices_Bluetooth_Rfcomm\", \"Devices_Custom\", \"Devices_Display\", \"Devices_Display_Core\", \"Devices_Enumeration\", \"Devices_Enumeration_Pnp\", \"Devices_Geolocation\", \"Devices_Geolocation_Geofencing\", \"Devices_Geolocation_Provider\", \"Devices_Gpio\", \"Devices_Gpio_Provider\", \"Devices_Haptics\", \"Devices_HumanInterfaceDevice\", \"Devices_I2c\", \"Devices_I2c_Provider\", \"Devices_Input\", \"Devices_Input_Preview\", \"Devices_Lights\", \"Devices_Lights_Effects\", \"Devices_Midi\", \"Devices_PointOfService\", \"Devices_PointOfService_Provider\", \"Devices_Portable\", \"Devices_Power\", \"Devices_Printers\", \"Devices_Printers_Extensions\", \"Devices_Pwm\", \"Devices_Pwm_Provider\", \"Devices_Radios\", \"Devices_Scanners\", \"Devices_Sensors\", \"Devices_Sensors_Custom\", \"Devices_SerialCommunication\", \"Devices_SmartCards\", \"Devices_Sms\", \"Devices_Spi\", \"Devices_Spi_Provider\", \"Devices_Usb\", \"Devices_WiFi\", \"Devices_WiFiDirect\", \"Devices_WiFiDirect_Services\", \"Embedded\", \"Embedded_DeviceLockdown\", \"Foundation\", \"Foundation_Collections\", \"Foundation_Diagnostics\", \"Foundation_Metadata\", \"Foundation_Numerics\", \"Gaming\", \"Gaming_Input\", \"Gaming_Input_Custom\", \"Gaming_Input_ForceFeedback\", \"Gaming_Input_Preview\", \"Gaming_Preview\", \"Gaming_Preview_GamesEnumeration\", \"Gaming_UI\", \"Gaming_XboxLive\", \"Gaming_XboxLive_Storage\", \"Globalization\", \"Globalization_Collation\", \"Globalization_DateTimeFormatting\", \"Globalization_Fonts\", \"Globalization_NumberFormatting\", \"Globalization_PhoneNumberFormatting\", \"Graphics\", \"Graphics_Capture\", \"Graphics_DirectX\", \"Graphics_DirectX_Direct3D11\", \"Graphics_Display\", \"Graphics_Display_Core\", \"Graphics_Effects\", \"Graphics_Holographic\", \"Graphics_Imaging\", \"Graphics_Printing\", \"Graphics_Printing3D\", \"Graphics_Printing_OptionDetails\", \"Graphics_Printing_PrintSupport\", \"Graphics_Printing_PrintTicket\", \"Graphics_Printing_Workflow\", \"Management\", \"Management_Core\", \"Management_Deployment\", \"Management_Deployment_Preview\", \"Management_Policies\", \"Management_Update\", \"Management_Workplace\", \"Media\", \"Media_AppBroadcasting\", \"Media_AppRecording\", \"Media_Audio\", \"Media_Capture\", \"Media_Capture_Core\", \"Media_Capture_Frames\", \"Media_Casting\", \"Media_ClosedCaptioning\", \"Media_ContentRestrictions\", \"Media_Control\", \"Media_Core\", \"Media_Core_Preview\", \"Media_Devices\", \"Media_Devices_Core\", \"Media_DialProtocol\", \"Media_Editing\", \"Media_Effects\", \"Media_FaceAnalysis\", \"Media_Import\", \"Media_MediaProperties\", \"Media_Miracast\", \"Media_Ocr\", \"Media_PlayTo\", \"Media_Playback\", \"Media_Playlists\", \"Media_Protection\", \"Media_Protection_PlayReady\", \"Media_Render\", \"Media_SpeechRecognition\", \"Media_SpeechSynthesis\", \"Media_Streaming\", \"Media_Streaming_Adaptive\", \"Media_Transcoding\", \"Networking\", \"Networking_BackgroundTransfer\", \"Networking_Connectivity\", \"Networking_NetworkOperators\", \"Networking_Proximity\", \"Networking_PushNotifications\", \"Networking_ServiceDiscovery\", \"Networking_ServiceDiscovery_Dnssd\", \"Networking_Sockets\", \"Networking_Vpn\", \"Networking_XboxLive\", \"Perception\", \"Perception_Automation\", \"Perception_Automation_Core\", \"Perception_People\", \"Perception_Spatial\", \"Perception_Spatial_Preview\", \"Perception_Spatial_Surfaces\", \"Phone\", \"Phone_ApplicationModel\", \"Phone_Devices\", \"Phone_Devices_Notification\", \"Phone_Devices_Power\", \"Phone_Management\", \"Phone_Management_Deployment\", \"Phone_Media\", \"Phone_Media_Devices\", \"Phone_Notification\", \"Phone_Notification_Management\", \"Phone_PersonalInformation\", \"Phone_PersonalInformation_Provisioning\", \"Phone_Speech\", \"Phone_Speech_Recognition\", \"Phone_StartScreen\", \"Phone_System\", \"Phone_System_Power\", \"Phone_System_Profile\", \"Phone_System_UserProfile\", \"Phone_System_UserProfile_GameServices\", \"Phone_System_UserProfile_GameServices_Core\", \"Phone_UI\", \"Phone_UI_Input\", \"Security\", \"Security_Authentication\", \"Security_Authentication_Identity\", \"Security_Authentication_Identity_Core\", \"Security_Authentication_OnlineId\", \"Security_Authentication_Web\", \"Security_Authentication_Web_Core\", \"Security_Authentication_Web_Provider\", \"Security_Authorization\", \"Security_Authorization_AppCapabilityAccess\", \"Security_Credentials\", \"Security_Credentials_UI\", \"Security_Cryptography\", \"Security_Cryptography_Certificates\", \"Security_Cryptography_Core\", \"Security_Cryptography_DataProtection\", \"Security_DataProtection\", \"Security_EnterpriseData\", \"Security_ExchangeActiveSyncProvisioning\", \"Security_Isolation\", \"Services\", \"Services_Maps\", \"Services_Maps_Guidance\", \"Services_Maps_LocalSearch\", \"Services_Maps_OfflineMaps\", \"Services_Store\", \"Services_TargetedContent\", \"Storage\", \"Storage_AccessCache\", \"Storage_BulkAccess\", \"Storage_Compression\", \"Storage_FileProperties\", \"Storage_Pickers\", \"Storage_Pickers_Provider\", \"Storage_Provider\", \"Storage_Search\", \"Storage_Streams\", \"System\", \"System_Diagnostics\", \"System_Diagnostics_DevicePortal\", \"System_Diagnostics_Telemetry\", \"System_Diagnostics_TraceReporting\", \"System_Display\", \"System_Implementation\", \"System_Implementation_FileExplorer\", \"System_Inventory\", \"System_Power\", \"System_Profile\", \"System_Profile_SystemManufacturers\", \"System_RemoteDesktop\", \"System_RemoteDesktop_Input\", \"System_RemoteDesktop_Provider\", \"System_RemoteSystems\", \"System_Threading\", \"System_Threading_Core\", \"System_Update\", \"System_UserProfile\", \"UI\", \"UI_Accessibility\", \"UI_ApplicationSettings\", \"UI_Composition\", \"UI_Composition_Core\", \"UI_Composition_Desktop\", \"UI_Composition_Diagnostics\", \"UI_Composition_Effects\", \"UI_Composition_Interactions\", \"UI_Composition_Scenes\", \"UI_Core\", \"UI_Core_AnimationMetrics\", \"UI_Core_Preview\", \"UI_Input\", \"UI_Input_Core\", \"UI_Input_Inking\", \"UI_Input_Inking_Analysis\", \"UI_Input_Inking_Core\", \"UI_Input_Inking_Preview\", \"UI_Input_Preview\", \"UI_Input_Preview_Injection\", \"UI_Input_Spatial\", \"UI_Notifications\", \"UI_Notifications_Management\", \"UI_Notifications_Preview\", \"UI_Popups\", \"UI_Shell\", \"UI_StartScreen\", \"UI_Text\", \"UI_Text_Core\", \"UI_UIAutomation\", \"UI_UIAutomation_Core\", \"UI_ViewManagement\", \"UI_ViewManagement_Core\", \"UI_WebUI\", \"UI_WebUI_Core\", \"UI_WindowManagement\", \"UI_WindowManagement_Preview\", \"Wdk\", \"Wdk_Devices\", \"Wdk_Devices_HumanInterfaceDevice\", \"Wdk_Foundation\", \"Wdk_Graphics\", \"Wdk_Graphics_Direct3D\", \"Wdk_NetworkManagement\", \"Wdk_NetworkManagement_Ndis\", \"Wdk_NetworkManagement_WindowsFilteringPlatform\", \"Wdk_Storage\", \"Wdk_Storage_FileSystem\", \"Wdk_Storage_FileSystem_Minifilters\", \"Wdk_System\", \"Wdk_System_IO\", \"Wdk_System_OfflineRegistry\", \"Wdk_System_Registry\", \"Wdk_System_SystemInformation\", \"Wdk_System_SystemServices\", \"Wdk_System_Threading\", \"Web\", \"Web_AtomPub\", \"Web_Http\", \"Web_Http_Diagnostics\", \"Web_Http_Filters\", \"Web_Http_Headers\", \"Web_Syndication\", \"Web_UI\", \"Web_UI_Interop\", \"Win32\", \"Win32_AI\", \"Win32_AI_MachineLearning\", \"Win32_AI_MachineLearning_DirectML\", \"Win32_AI_MachineLearning_WinML\", \"Win32_Data\", \"Win32_Data_HtmlHelp\", \"Win32_Data_RightsManagement\", \"Win32_Data_Xml\", \"Win32_Data_Xml_MsXml\", \"Win32_Data_Xml_XmlLite\", \"Win32_Devices\", \"Win32_Devices_AllJoyn\", \"Win32_Devices_BiometricFramework\", \"Win32_Devices_Bluetooth\", \"Win32_Devices_Communication\", \"Win32_Devices_DeviceAccess\", \"Win32_Devices_DeviceAndDriverInstallation\", \"Win32_Devices_DeviceQuery\", \"Win32_Devices_Display\", \"Win32_Devices_Enumeration\", \"Win32_Devices_Enumeration_Pnp\", \"Win32_Devices_Fax\", \"Win32_Devices_FunctionDiscovery\", \"Win32_Devices_Geolocation\", \"Win32_Devices_HumanInterfaceDevice\", \"Win32_Devices_ImageAcquisition\", \"Win32_Devices_PortableDevices\", \"Win32_Devices_Properties\", \"Win32_Devices_Pwm\", \"Win32_Devices_Sensors\", \"Win32_Devices_SerialCommunication\", \"Win32_Devices_Tapi\", \"Win32_Devices_Usb\", \"Win32_Devices_WebServicesOnDevices\", \"Win32_Foundation\", \"Win32_Gaming\", \"Win32_Globalization\", \"Win32_Graphics\", \"Win32_Graphics_CompositionSwapchain\", \"Win32_Graphics_DXCore\", \"Win32_Graphics_Direct2D\", \"Win32_Graphics_Direct2D_Common\", \"Win32_Graphics_Direct3D\", \"Win32_Graphics_Direct3D10\", \"Win32_Graphics_Direct3D11\", \"Win32_Graphics_Direct3D11on12\", \"Win32_Graphics_Direct3D12\", \"Win32_Graphics_Direct3D9\", \"Win32_Graphics_Direct3D9on12\", \"Win32_Graphics_Direct3D_Dxc\", \"Win32_Graphics_Direct3D_Fxc\", \"Win32_Graphics_DirectComposition\", \"Win32_Graphics_DirectDraw\", \"Win32_Graphics_DirectManipulation\", \"Win32_Graphics_DirectWrite\", \"Win32_Graphics_Dwm\", \"Win32_Graphics_Dxgi\", \"Win32_Graphics_Dxgi_Common\", \"Win32_Graphics_Gdi\", \"Win32_Graphics_GdiPlus\", \"Win32_Graphics_Hlsl\", \"Win32_Graphics_Imaging\", \"Win32_Graphics_Imaging_D2D\", \"Win32_Graphics_OpenGL\", \"Win32_Graphics_Printing\", \"Win32_Graphics_Printing_PrintTicket\", \"Win32_Management\", \"Win32_Management_MobileDeviceManagementRegistration\", \"Win32_Media\", \"Win32_Media_Audio\", \"Win32_Media_Audio_Apo\", \"Win32_Media_Audio_DirectMusic\", \"Win32_Media_Audio_DirectSound\", \"Win32_Media_Audio_Endpoints\", \"Win32_Media_Audio_XAudio2\", \"Win32_Media_DeviceManager\", \"Win32_Media_DirectShow\", \"Win32_Media_DirectShow_Tv\", \"Win32_Media_DirectShow_Xml\", \"Win32_Media_DxMediaObjects\", \"Win32_Media_KernelStreaming\", \"Win32_Media_LibrarySharingServices\", \"Win32_Media_MediaFoundation\", \"Win32_Media_MediaPlayer\", \"Win32_Media_Multimedia\", \"Win32_Media_PictureAcquisition\", \"Win32_Media_Speech\", \"Win32_Media_Streaming\", \"Win32_Media_WindowsMediaFormat\", \"Win32_NetworkManagement\", \"Win32_NetworkManagement_Dhcp\", \"Win32_NetworkManagement_Dns\", \"Win32_NetworkManagement_InternetConnectionWizard\", \"Win32_NetworkManagement_IpHelper\", \"Win32_NetworkManagement_MobileBroadband\", \"Win32_NetworkManagement_Multicast\", \"Win32_NetworkManagement_Ndis\", \"Win32_NetworkManagement_NetBios\", \"Win32_NetworkManagement_NetManagement\", \"Win32_NetworkManagement_NetShell\", \"Win32_NetworkManagement_NetworkDiagnosticsFramework\", \"Win32_NetworkManagement_NetworkPolicyServer\", \"Win32_NetworkManagement_P2P\", \"Win32_NetworkManagement_QoS\", \"Win32_NetworkManagement_Rras\", \"Win32_NetworkManagement_Snmp\", \"Win32_NetworkManagement_WNet\", \"Win32_NetworkManagement_WebDav\", \"Win32_NetworkManagement_WiFi\", \"Win32_NetworkManagement_WindowsConnectNow\", \"Win32_NetworkManagement_WindowsConnectionManager\", \"Win32_NetworkManagement_WindowsFilteringPlatform\", \"Win32_NetworkManagement_WindowsFirewall\", \"Win32_NetworkManagement_WindowsNetworkVirtualization\", \"Win32_Networking\", \"Win32_Networking_ActiveDirectory\", \"Win32_Networking_BackgroundIntelligentTransferService\", \"Win32_Networking_Clustering\", \"Win32_Networking_HttpServer\", \"Win32_Networking_Ldap\", \"Win32_Networking_NetworkListManager\", \"Win32_Networking_RemoteDifferentialCompression\", \"Win32_Networking_WebSocket\", \"Win32_Networking_WinHttp\", \"Win32_Networking_WinInet\", \"Win32_Networking_WinSock\", \"Win32_Networking_WindowsWebServices\", \"Win32_Security\", \"Win32_Security_AppLocker\", \"Win32_Security_Authentication\", \"Win32_Security_Authentication_Identity\", \"Win32_Security_Authentication_Identity_Provider\", \"Win32_Security_Authorization\", \"Win32_Security_Authorization_UI\", \"Win32_Security_ConfigurationSnapin\", \"Win32_Security_Credentials\", \"Win32_Security_Cryptography\", \"Win32_Security_Cryptography_Catalog\", \"Win32_Security_Cryptography_Certificates\", \"Win32_Security_Cryptography_Sip\", \"Win32_Security_Cryptography_UI\", \"Win32_Security_DiagnosticDataQuery\", \"Win32_Security_DirectoryServices\", \"Win32_Security_EnterpriseData\", \"Win32_Security_ExtensibleAuthenticationProtocol\", \"Win32_Security_Isolation\", \"Win32_Security_LicenseProtection\", \"Win32_Security_NetworkAccessProtection\", \"Win32_Security_Tpm\", \"Win32_Security_WinTrust\", \"Win32_Security_WinWlx\", \"Win32_Storage\", \"Win32_Storage_Cabinets\", \"Win32_Storage_CloudFilters\", \"Win32_Storage_Compression\", \"Win32_Storage_DataDeduplication\", \"Win32_Storage_DistributedFileSystem\", \"Win32_Storage_EnhancedStorage\", \"Win32_Storage_FileHistory\", \"Win32_Storage_FileServerResourceManager\", \"Win32_Storage_FileSystem\", \"Win32_Storage_Imapi\", \"Win32_Storage_IndexServer\", \"Win32_Storage_InstallableFileSystems\", \"Win32_Storage_IscsiDisc\", \"Win32_Storage_Jet\", \"Win32_Storage_Nvme\", \"Win32_Storage_OfflineFiles\", \"Win32_Storage_OperationRecorder\", \"Win32_Storage_Packaging\", \"Win32_Storage_Packaging_Appx\", \"Win32_Storage_Packaging_Opc\", \"Win32_Storage_ProjectedFileSystem\", \"Win32_Storage_StructuredStorage\", \"Win32_Storage_Vhd\", \"Win32_Storage_VirtualDiskService\", \"Win32_Storage_Vss\", \"Win32_Storage_Xps\", \"Win32_Storage_Xps_Printing\", \"Win32_System\", \"Win32_System_AddressBook\", \"Win32_System_Antimalware\", \"Win32_System_ApplicationInstallationAndServicing\", \"Win32_System_ApplicationVerifier\", \"Win32_System_AssessmentTool\", \"Win32_System_ClrHosting\", \"Win32_System_Com\", \"Win32_System_Com_CallObj\", \"Win32_System_Com_ChannelCredentials\", \"Win32_System_Com_Events\", \"Win32_System_Com_Marshal\", \"Win32_System_Com_StructuredStorage\", \"Win32_System_Com_UI\", \"Win32_System_Com_Urlmon\", \"Win32_System_ComponentServices\", \"Win32_System_Console\", \"Win32_System_Contacts\", \"Win32_System_CorrelationVector\", \"Win32_System_DataExchange\", \"Win32_System_DeploymentServices\", \"Win32_System_DesktopSharing\", \"Win32_System_DeveloperLicensing\", \"Win32_System_Diagnostics\", \"Win32_System_Diagnostics_Ceip\", \"Win32_System_Diagnostics_ClrProfiling\", \"Win32_System_Diagnostics_Debug\", \"Win32_System_Diagnostics_Debug_ActiveScript\", \"Win32_System_Diagnostics_Debug_Extensions\", \"Win32_System_Diagnostics_Etw\", \"Win32_System_Diagnostics_ProcessSnapshotting\", \"Win32_System_Diagnostics_ToolHelp\", \"Win32_System_Diagnostics_TraceLogging\", \"Win32_System_DistributedTransactionCoordinator\", \"Win32_System_Environment\", \"Win32_System_ErrorReporting\", \"Win32_System_EventCollector\", \"Win32_System_EventLog\", \"Win32_System_EventNotificationService\", \"Win32_System_GroupPolicy\", \"Win32_System_HostCompute\", \"Win32_System_HostComputeNetwork\", \"Win32_System_HostComputeSystem\", \"Win32_System_Hypervisor\", \"Win32_System_IO\", \"Win32_System_Iis\", \"Win32_System_Ioctl\", \"Win32_System_JobObjects\", \"Win32_System_Js\", \"Win32_System_Kernel\", \"Win32_System_LibraryLoader\", \"Win32_System_Mailslots\", \"Win32_System_Mapi\", \"Win32_System_Memory\", \"Win32_System_Memory_NonVolatile\", \"Win32_System_MessageQueuing\", \"Win32_System_MixedReality\", \"Win32_System_Mmc\", \"Win32_System_Ole\", \"Win32_System_ParentalControls\", \"Win32_System_PasswordManagement\", \"Win32_System_Performance\", \"Win32_System_Performance_HardwareCounterProfiling\", \"Win32_System_Pipes\", \"Win32_System_Power\", \"Win32_System_ProcessStatus\", \"Win32_System_RealTimeCommunications\", \"Win32_System_Recovery\", \"Win32_System_Registry\", \"Win32_System_RemoteAssistance\", \"Win32_System_RemoteDesktop\", \"Win32_System_RemoteManagement\", \"Win32_System_RestartManager\", \"Win32_System_Restore\", \"Win32_System_Rpc\", \"Win32_System_Search\", \"Win32_System_Search_Common\", \"Win32_System_SecurityCenter\", \"Win32_System_ServerBackup\", \"Win32_System_Services\", \"Win32_System_SettingsManagementInfrastructure\", \"Win32_System_SetupAndMigration\", \"Win32_System_Shutdown\", \"Win32_System_SideShow\", \"Win32_System_StationsAndDesktops\", \"Win32_System_SubsystemForLinux\", \"Win32_System_SystemInformation\", \"Win32_System_SystemServices\", \"Win32_System_TaskScheduler\", \"Win32_System_Threading\", \"Win32_System_Time\", \"Win32_System_TpmBaseServices\", \"Win32_System_TransactionServer\", \"Win32_System_UpdateAgent\", \"Win32_System_UpdateAssessment\", \"Win32_System_UserAccessLogging\", \"Win32_System_Variant\", \"Win32_System_VirtualDosMachines\", \"Win32_System_WinRT\", \"Win32_System_WinRT_AllJoyn\", \"Win32_System_WinRT_Composition\", \"Win32_System_WinRT_CoreInputView\", \"Win32_System_WinRT_Direct3D11\", \"Win32_System_WinRT_Display\", \"Win32_System_WinRT_Graphics\", \"Win32_System_WinRT_Graphics_Capture\", \"Win32_System_WinRT_Graphics_Direct2D\", \"Win32_System_WinRT_Graphics_Imaging\", \"Win32_System_WinRT_Holographic\", \"Win32_System_WinRT_Isolation\", \"Win32_System_WinRT_ML\", \"Win32_System_WinRT_Media\", \"Win32_System_WinRT_Metadata\", \"Win32_System_WinRT_Pdf\", \"Win32_System_WinRT_Printing\", \"Win32_System_WinRT_Shell\", \"Win32_System_WinRT_Storage\", \"Win32_System_WindowsProgramming\", \"Win32_System_WindowsSync\", \"Win32_System_Wmi\", \"Win32_UI\", \"Win32_UI_Accessibility\", \"Win32_UI_Animation\", \"Win32_UI_ColorSystem\", \"Win32_UI_Controls\", \"Win32_UI_Controls_Dialogs\", \"Win32_UI_Controls_RichEdit\", \"Win32_UI_HiDpi\", \"Win32_UI_Input\", \"Win32_UI_Input_Ime\", \"Win32_UI_Input_Ink\", \"Win32_UI_Input_KeyboardAndMouse\", \"Win32_UI_Input_Pointer\", \"Win32_UI_Input_Radial\", \"Win32_UI_Input_Touch\", \"Win32_UI_Input_XboxController\", \"Win32_UI_InteractionContext\", \"Win32_UI_LegacyWindowsEnvironmentFeatures\", \"Win32_UI_Magnification\", \"Win32_UI_Notifications\", \"Win32_UI_Ribbon\", \"Win32_UI_Shell\", \"Win32_UI_Shell_Common\", \"Win32_UI_Shell_PropertiesSystem\", \"Win32_UI_TabletPC\", \"Win32_UI_TextServices\", \"Win32_UI_WindowsAndMessaging\", \"Win32_UI_Wpf\", \"Win32_Web\", \"Win32_Web_InternetExplorer\", \"default\", \"deprecated\", \"docs\", \"implement\", \"std\"]","target":12348472677138311267,"profile":4102627009121085979,"path":17761242412722607992,"deps":[[6779180614165240252,"windows_core",false,18359323233826304713],[14322346790800707264,"windows_targets",false,716337549701793194]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows-317e26e04bae559c\\dep-lib-windows","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/dep-lib-windows_core b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/dep-lib-windows_core new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/dep-lib-windows_core differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/lib-windows_core b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/lib-windows_core new file mode 100644 index 0000000..f907d0a --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/lib-windows_core @@ -0,0 +1 @@ +c9f2ca94356bc9fe \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/lib-windows_core.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/lib-windows_core.json new file mode 100644 index 0000000..7186eee --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-core-f1e02dd38acd2bfa/lib-windows_core.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"std\"]","declared_features":"[\"default\", \"std\"]","target":13201692854421378145,"profile":4102627009121085979,"path":1585147621535530959,"deps":[[6953976305614903299,"windows_implement",false,10073621209239922501],[11254740334450415437,"windows_result",false,8878674039156750320],[14322346790800707264,"windows_targets",false,716337549701793194],[15707748268215641697,"windows_interface",false,11745056926881650383]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows-core-f1e02dd38acd2bfa\\dep-lib-windows_core","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/dep-lib-windows_implement b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/dep-lib-windows_implement new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/dep-lib-windows_implement differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/lib-windows_implement b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/lib-windows_implement new file mode 100644 index 0000000..69cb8e1 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/lib-windows_implement @@ -0,0 +1 @@ +452796121eb1cc8b \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/lib-windows_implement.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/lib-windows_implement.json new file mode 100644 index 0000000..1a5a65d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-implement-d5c4a27c5b0fd166/lib-windows_implement.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":10039664040985150611,"profile":5643748954295112004,"path":2525884871545965240,"deps":[[4289358735036141001,"proc_macro2",false,4386134274409224043],[10420560437213941093,"syn",false,667617596471125619],[13111758008314797071,"quote",false,15488645298819577813]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows-implement-d5c4a27c5b0fd166\\dep-lib-windows_implement","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/dep-lib-windows_interface b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/dep-lib-windows_interface new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/dep-lib-windows_interface differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/lib-windows_interface b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/lib-windows_interface new file mode 100644 index 0000000..7756882 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/lib-windows_interface @@ -0,0 +1 @@ +cf9685090cd3fea2 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/lib-windows_interface.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/lib-windows_interface.json new file mode 100644 index 0000000..136d728 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-interface-bec01c36a72a9e29/lib-windows_interface.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":5697970080876356432,"profile":5643748954295112004,"path":4758391054776891368,"deps":[[4289358735036141001,"proc_macro2",false,4386134274409224043],[10420560437213941093,"syn",false,667617596471125619],[13111758008314797071,"quote",false,15488645298819577813]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows-interface-bec01c36a72a9e29\\dep-lib-windows_interface","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/dep-lib-windows_link b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/dep-lib-windows_link new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/dep-lib-windows_link differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/lib-windows_link b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/lib-windows_link new file mode 100644 index 0000000..51e7702 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/lib-windows_link @@ -0,0 +1 @@ +9b2324326567aba8 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/lib-windows_link.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/lib-windows_link.json new file mode 100644 index 0000000..ac918c2 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-link-4d21bbe1d7ccf23e/lib-windows_link.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":2558631941022679061,"profile":8503165152366276803,"path":3790015084061570428,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows-link-4d21bbe1d7ccf23e\\dep-lib-windows_link","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/dep-lib-windows_result b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/dep-lib-windows_result new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/dep-lib-windows_result differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/lib-windows_result b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/lib-windows_result new file mode 100644 index 0000000..0b7d385 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/lib-windows_result @@ -0,0 +1 @@ +f0b76b54ff62377b \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/lib-windows_result.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/lib-windows_result.json new file mode 100644 index 0000000..a3e241b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-result-7bfbea7560c255e7/lib-windows_result.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[\"default\", \"std\"]","declared_features":"[\"default\", \"std\"]","target":4443055816520199735,"profile":4102627009121085979,"path":9595379509309149174,"deps":[[14322346790800707264,"windows_targets",false,716337549701793194]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows-result-7bfbea7560c255e7\\dep-lib-windows_result","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/dep-lib-windows_targets b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/dep-lib-windows_targets new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/dep-lib-windows_targets differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/lib-windows_targets b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/lib-windows_targets new file mode 100644 index 0000000..75c3179 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/lib-windows_targets @@ -0,0 +1 @@ +aac53fc534f1f009 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/lib-windows_targets.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/lib-windows_targets.json new file mode 100644 index 0000000..9cda343 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows-targets-c60965f72ec09e5e/lib-windows_targets.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":12110220207092481134,"profile":17884772060100371467,"path":1537781194062817086,"deps":[[6520462792382062950,"windows_x86_64_msvc",false,8253584122999446156]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows-targets-c60965f72ec09e5e\\dep-lib-windows_targets","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/dep-lib-windows_x86_64_msvc b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/dep-lib-windows_x86_64_msvc new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/dep-lib-windows_x86_64_msvc differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/lib-windows_x86_64_msvc b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/lib-windows_x86_64_msvc new file mode 100644 index 0000000..8e63407 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/lib-windows_x86_64_msvc @@ -0,0 +1 @@ +8c9a2fcf079f8a72 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/lib-windows_x86_64_msvc.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/lib-windows_x86_64_msvc.json new file mode 100644 index 0000000..c21d142 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-3a740eea84d4dc67/lib-windows_x86_64_msvc.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":3306771437825829530,"profile":16503403049695105087,"path":11116025981374927633,"deps":[[6520462792382062950,"build_script_build",false,4654080717267360180]],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows_x86_64_msvc-3a740eea84d4dc67\\dep-lib-windows_x86_64_msvc","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-474308f80002dfef/run-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-474308f80002dfef/run-build-script-build-script-build new file mode 100644 index 0000000..dc5dd8f --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-474308f80002dfef/run-build-script-build-script-build @@ -0,0 +1 @@ +b459b704c19d9640 \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-474308f80002dfef/run-build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-474308f80002dfef/run-build-script-build-script-build.json new file mode 100644 index 0000000..8686004 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-474308f80002dfef/run-build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"","declared_features":"","target":0,"profile":0,"path":0,"deps":[[6520462792382062950,"build_script_build",false,13657465881305234060]],"local":[{"Precalculated":"0.52.6"}],"rustflags":[],"config":0,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/build-script-build-script-build new file mode 100644 index 0000000..1fe0ccb --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/build-script-build-script-build @@ -0,0 +1 @@ +8c3a37d3db1089bd \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/build-script-build-script-build.json b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/build-script-build-script-build.json new file mode 100644 index 0000000..707b628 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/build-script-build-script-build.json @@ -0,0 +1 @@ +{"rustc":8891013984288978370,"features":"[]","declared_features":"[]","target":5408242616063297496,"profile":17257705230225558938,"path":2657152726668776769,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"release\\.fingerprint\\windows_x86_64_msvc-c5c00453ea78d151\\dep-build-script-build-script-build","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/dep-build-script-build-script-build b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/dep-build-script-build-script-build new file mode 100644 index 0000000..ec3cb8b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/dep-build-script-build-script-build differ diff --git a/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/invoked.timestamp b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/invoked.timestamp new file mode 100644 index 0000000..e00328d --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/.fingerprint/windows_x86_64_msvc-c5c00453ea78d151/invoked.timestamp @@ -0,0 +1 @@ +This file has an mtime of when this was started. \ No newline at end of file diff --git a/apps/desktop/native/audio-loopback/target/release/audio_loopback.d b/apps/desktop/native/audio-loopback/target/release/audio_loopback.d new file mode 100644 index 0000000..e29a547 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/audio_loopback.d @@ -0,0 +1 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\audio_loopback.dll: D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\build.rs D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\src\lib.rs diff --git a/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll b/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll new file mode 100644 index 0000000..b688a69 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll differ diff --git a/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll.exp b/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll.exp new file mode 100644 index 0000000..2ca1d61 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll.exp differ diff --git a/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll.lib b/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll.lib new file mode 100644 index 0000000..f12b6d6 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/audio_loopback.dll.lib differ diff --git a/apps/desktop/native/audio-loopback/target/release/audio_loopback.pdb b/apps/desktop/native/audio-loopback/target/release/audio_loopback.pdb new file mode 100644 index 0000000..88908d2 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/audio_loopback.pdb differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/aho_corasick-9f0713aa5a0615e8.d b/apps/desktop/native/audio-loopback/target/release/deps/aho_corasick-9f0713aa5a0615e8.d new file mode 100644 index 0000000..6472a4a --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/aho_corasick-9f0713aa5a0615e8.d @@ -0,0 +1,35 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\aho_corasick-9f0713aa5a0615e8.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\ahocorasick.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\automaton.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\dfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\contiguous.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\noncontiguous.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\api.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\pattern.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\rabinkarp.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\builder.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\generic.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\vector.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\alphabet.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\byte_frequencies.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\prefilter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\primitives.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\remapper.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\special.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libaho_corasick-9f0713aa5a0615e8.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\ahocorasick.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\automaton.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\dfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\contiguous.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\noncontiguous.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\api.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\pattern.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\rabinkarp.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\builder.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\generic.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\vector.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\alphabet.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\byte_frequencies.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\prefilter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\primitives.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\remapper.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\special.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libaho_corasick-9f0713aa5a0615e8.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\ahocorasick.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\automaton.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\dfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\contiguous.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\noncontiguous.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\api.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\pattern.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\rabinkarp.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\builder.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\generic.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\vector.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\alphabet.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\byte_frequencies.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\prefilter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\primitives.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\remapper.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\special.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\macros.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\ahocorasick.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\automaton.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\dfa.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\contiguous.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\nfa\noncontiguous.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\api.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\ext.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\pattern.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\rabinkarp.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\builder.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\teddy\generic.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\packed\vector.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\alphabet.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\buffer.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\byte_frequencies.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\debug.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\int.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\prefilter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\primitives.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\remapper.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\search.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\aho-corasick-1.1.4\src\util\special.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.d b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.d new file mode 100644 index 0000000..316a795 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.d @@ -0,0 +1,5 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\audio_loopback.d: src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\audio_loopback.dll: src\lib.rs + +src\lib.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll new file mode 100644 index 0000000..b688a69 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll.exp b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll.exp new file mode 100644 index 0000000..2ca1d61 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll.exp differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll.lib b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll.lib new file mode 100644 index 0000000..f12b6d6 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.dll.lib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.pdb b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.pdb new file mode 100644 index 0000000..88908d2 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/audio_loopback.pdb differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/autocfg-ef41a80ef2a4f8c4.d b/apps/desktop/native/audio-loopback/target/release/deps/autocfg-ef41a80ef2a4f8c4.d new file mode 100644 index 0000000..66ceb51 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/autocfg-ef41a80ef2a4f8c4.d @@ -0,0 +1,10 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\autocfg-ef41a80ef2a4f8c4.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\rustc.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\version.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libautocfg-ef41a80ef2a4f8c4.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\rustc.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\version.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libautocfg-ef41a80ef2a4f8c4.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\rustc.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\version.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\rustc.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\autocfg-1.5.0\src\version.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/bitflags-56bc72c2ee6a11d2.d b/apps/desktop/native/audio-loopback/target/release/deps/bitflags-56bc72c2ee6a11d2.d new file mode 100644 index 0000000..15d9f94 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/bitflags-56bc72c2ee6a11d2.d @@ -0,0 +1,13 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\bitflags-56bc72c2ee6a11d2.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\parser.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\traits.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\public.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\internal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\external.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libbitflags-56bc72c2ee6a11d2.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\parser.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\traits.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\public.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\internal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\external.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libbitflags-56bc72c2ee6a11d2.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\parser.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\traits.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\public.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\internal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\external.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\iter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\parser.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\traits.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\public.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\internal.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\bitflags-2.11.1\src\external.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/cfg_if-2de0fde34c98fcea.d b/apps/desktop/native/audio-loopback/target/release/deps/cfg_if-2de0fde34c98fcea.d new file mode 100644 index 0000000..da00a7b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/cfg_if-2de0fde34c98fcea.d @@ -0,0 +1,7 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\cfg_if-2de0fde34c98fcea.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\cfg-if-1.0.4\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libcfg_if-2de0fde34c98fcea.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\cfg-if-1.0.4\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libcfg_if-2de0fde34c98fcea.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\cfg-if-1.0.4\src\lib.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\cfg-if-1.0.4\src\lib.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/convert_case-cb245ff7b0d5094c.d b/apps/desktop/native/audio-loopback/target/release/deps/convert_case-cb245ff7b0d5094c.d new file mode 100644 index 0000000..66e6dce --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/convert_case-cb245ff7b0d5094c.d @@ -0,0 +1,11 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\convert_case-cb245ff7b0d5094c.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\case.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\converter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\pattern.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\segmentation.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libconvert_case-cb245ff7b0d5094c.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\case.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\converter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\pattern.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\segmentation.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libconvert_case-cb245ff7b0d5094c.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\case.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\converter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\pattern.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\segmentation.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\case.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\converter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\pattern.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\convert_case-0.6.0\src\segmentation.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.d b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.d new file mode 100644 index 0000000..f949a9b --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.d @@ -0,0 +1,5 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\ctor-c44e8ff1492b4966.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\ctor-0.2.9\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\ctor-c44e8ff1492b4966.dll: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\ctor-0.2.9\src\lib.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\ctor-0.2.9\src\lib.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll new file mode 100644 index 0000000..ffd1988 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll.exp b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll.exp new file mode 100644 index 0000000..7d09edc Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll.exp differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll.lib b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll.lib new file mode 100644 index 0000000..3c6481a Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.dll.lib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.pdb b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.pdb new file mode 100644 index 0000000..c6fe5c6 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/ctor-c44e8ff1492b4966.pdb differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libaho_corasick-9f0713aa5a0615e8.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libaho_corasick-9f0713aa5a0615e8.rlib new file mode 100644 index 0000000..d9019a9 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libaho_corasick-9f0713aa5a0615e8.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libaho_corasick-9f0713aa5a0615e8.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libaho_corasick-9f0713aa5a0615e8.rmeta new file mode 100644 index 0000000..b4266ba Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libaho_corasick-9f0713aa5a0615e8.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libautocfg-ef41a80ef2a4f8c4.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libautocfg-ef41a80ef2a4f8c4.rlib new file mode 100644 index 0000000..c985286 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libautocfg-ef41a80ef2a4f8c4.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libautocfg-ef41a80ef2a4f8c4.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libautocfg-ef41a80ef2a4f8c4.rmeta new file mode 100644 index 0000000..8b28461 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libautocfg-ef41a80ef2a4f8c4.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libbitflags-56bc72c2ee6a11d2.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libbitflags-56bc72c2ee6a11d2.rlib new file mode 100644 index 0000000..83e1ffb Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libbitflags-56bc72c2ee6a11d2.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libbitflags-56bc72c2ee6a11d2.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libbitflags-56bc72c2ee6a11d2.rmeta new file mode 100644 index 0000000..5f35ec5 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libbitflags-56bc72c2ee6a11d2.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libcfg_if-2de0fde34c98fcea.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libcfg_if-2de0fde34c98fcea.rlib new file mode 100644 index 0000000..1fcdfd1 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libcfg_if-2de0fde34c98fcea.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libcfg_if-2de0fde34c98fcea.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libcfg_if-2de0fde34c98fcea.rmeta new file mode 100644 index 0000000..4251b17 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libcfg_if-2de0fde34c98fcea.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libconvert_case-cb245ff7b0d5094c.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libconvert_case-cb245ff7b0d5094c.rlib new file mode 100644 index 0000000..8b54d0e Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libconvert_case-cb245ff7b0d5094c.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libconvert_case-cb245ff7b0d5094c.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libconvert_case-cb245ff7b0d5094c.rmeta new file mode 100644 index 0000000..12c39b1 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libconvert_case-cb245ff7b0d5094c.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/liblibloading-c73fed9c19177dcc.rlib b/apps/desktop/native/audio-loopback/target/release/deps/liblibloading-c73fed9c19177dcc.rlib new file mode 100644 index 0000000..b053d58 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/liblibloading-c73fed9c19177dcc.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/liblibloading-c73fed9c19177dcc.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/liblibloading-c73fed9c19177dcc.rmeta new file mode 100644 index 0000000..394dce0 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/liblibloading-c73fed9c19177dcc.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libloading-c73fed9c19177dcc.d b/apps/desktop/native/audio-loopback/target/release/deps/libloading-c73fed9c19177dcc.d new file mode 100644 index 0000000..1a1c960 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/libloading-c73fed9c19177dcc.d @@ -0,0 +1,13 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libloading-c73fed9c19177dcc.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\changelog.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\windows\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\safe.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\util.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\liblibloading-c73fed9c19177dcc.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\changelog.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\windows\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\safe.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\util.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\liblibloading-c73fed9c19177dcc.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\changelog.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\windows\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\safe.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\util.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\changelog.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\os\windows\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\safe.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\libloading-0.8.9\src\util.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/liblog-503ba197615b4899.rlib b/apps/desktop/native/audio-loopback/target/release/deps/liblog-503ba197615b4899.rlib new file mode 100644 index 0000000..4e2a228 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/liblog-503ba197615b4899.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/liblog-503ba197615b4899.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/liblog-503ba197615b4899.rmeta new file mode 100644 index 0000000..5a56413 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/liblog-503ba197615b4899.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libmemchr-0b6ded161300fb6d.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libmemchr-0b6ded161300fb6d.rlib new file mode 100644 index 0000000..137c7ea Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libmemchr-0b6ded161300fb6d.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libmemchr-0b6ded161300fb6d.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libmemchr-0b6ded161300fb6d.rmeta new file mode 100644 index 0000000..24dffa8 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libmemchr-0b6ded161300fb6d.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi-c71c5da813d1757f.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libnapi-c71c5da813d1757f.rlib new file mode 100644 index 0000000..b718282 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi-c71c5da813d1757f.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi-c71c5da813d1757f.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libnapi-c71c5da813d1757f.rmeta new file mode 100644 index 0000000..adf0770 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi-c71c5da813d1757f.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi_build-547d402dbe5275e3.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_build-547d402dbe5275e3.rlib new file mode 100644 index 0000000..367cb05 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_build-547d402dbe5275e3.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi_build-547d402dbe5275e3.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_build-547d402dbe5275e3.rmeta new file mode 100644 index 0000000..67747c8 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_build-547d402dbe5275e3.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi_derive_backend-b741fd0ea2b72c1a.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_derive_backend-b741fd0ea2b72c1a.rlib new file mode 100644 index 0000000..1850ce8 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_derive_backend-b741fd0ea2b72c1a.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi_derive_backend-b741fd0ea2b72c1a.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_derive_backend-b741fd0ea2b72c1a.rmeta new file mode 100644 index 0000000..2bc1b70 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_derive_backend-b741fd0ea2b72c1a.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi_sys-9a4a05b3b03a98e6.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_sys-9a4a05b3b03a98e6.rlib new file mode 100644 index 0000000..f8c83fa Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_sys-9a4a05b3b03a98e6.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnapi_sys-9a4a05b3b03a98e6.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_sys-9a4a05b3b03a98e6.rmeta new file mode 100644 index 0000000..41b4a03 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnapi_sys-9a4a05b3b03a98e6.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnum_integer-c4c848204269c844.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libnum_integer-c4c848204269c844.rlib new file mode 100644 index 0000000..0ade962 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnum_integer-c4c848204269c844.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnum_integer-c4c848204269c844.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libnum_integer-c4c848204269c844.rmeta new file mode 100644 index 0000000..63033d7 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnum_integer-c4c848204269c844.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnum_traits-03118305971f36e0.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libnum_traits-03118305971f36e0.rlib new file mode 100644 index 0000000..9e06310 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnum_traits-03118305971f36e0.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libnum_traits-03118305971f36e0.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libnum_traits-03118305971f36e0.rmeta new file mode 100644 index 0000000..26b2189 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libnum_traits-03118305971f36e0.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-58eed7c19356b807.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-58eed7c19356b807.rlib new file mode 100644 index 0000000..51c8c65 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-58eed7c19356b807.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-58eed7c19356b807.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-58eed7c19356b807.rmeta new file mode 100644 index 0000000..d66d357 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-58eed7c19356b807.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-f5f3a7b099532975.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-f5f3a7b099532975.rlib new file mode 100644 index 0000000..a08c656 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-f5f3a7b099532975.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-f5f3a7b099532975.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-f5f3a7b099532975.rmeta new file mode 100644 index 0000000..420b655 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libonce_cell-f5f3a7b099532975.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libproc_macro2-ccf35862a228406d.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libproc_macro2-ccf35862a228406d.rlib new file mode 100644 index 0000000..d41d79c Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libproc_macro2-ccf35862a228406d.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libproc_macro2-ccf35862a228406d.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libproc_macro2-ccf35862a228406d.rmeta new file mode 100644 index 0000000..2ec40e1 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libproc_macro2-ccf35862a228406d.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libquote-a2dce141b7ee9817.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libquote-a2dce141b7ee9817.rlib new file mode 100644 index 0000000..d9c64b1 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libquote-a2dce141b7ee9817.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libquote-a2dce141b7ee9817.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libquote-a2dce141b7ee9817.rmeta new file mode 100644 index 0000000..60844ef Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libquote-a2dce141b7ee9817.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libregex-2e1c82ee5e10bb33.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libregex-2e1c82ee5e10bb33.rlib new file mode 100644 index 0000000..96f81d5 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libregex-2e1c82ee5e10bb33.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libregex-2e1c82ee5e10bb33.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libregex-2e1c82ee5e10bb33.rmeta new file mode 100644 index 0000000..9a0f9e0 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libregex-2e1c82ee5e10bb33.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libregex_automata-704f60644d410463.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libregex_automata-704f60644d410463.rlib new file mode 100644 index 0000000..5d3b341 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libregex_automata-704f60644d410463.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libregex_automata-704f60644d410463.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libregex_automata-704f60644d410463.rmeta new file mode 100644 index 0000000..7ce9e35 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libregex_automata-704f60644d410463.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libregex_syntax-0aa2ccb0061be3ba.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libregex_syntax-0aa2ccb0061be3ba.rlib new file mode 100644 index 0000000..c96313b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libregex_syntax-0aa2ccb0061be3ba.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libregex_syntax-0aa2ccb0061be3ba.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libregex_syntax-0aa2ccb0061be3ba.rmeta new file mode 100644 index 0000000..74cad81 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libregex_syntax-0aa2ccb0061be3ba.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libsemver-1783b44b5dee25b3.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libsemver-1783b44b5dee25b3.rlib new file mode 100644 index 0000000..0146253 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libsemver-1783b44b5dee25b3.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libsemver-1783b44b5dee25b3.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libsemver-1783b44b5dee25b3.rmeta new file mode 100644 index 0000000..120260b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libsemver-1783b44b5dee25b3.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libsyn-17343a382f09a1e7.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libsyn-17343a382f09a1e7.rlib new file mode 100644 index 0000000..79a2587 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libsyn-17343a382f09a1e7.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libsyn-17343a382f09a1e7.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libsyn-17343a382f09a1e7.rmeta new file mode 100644 index 0000000..cd7b299 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libsyn-17343a382f09a1e7.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libunicode_ident-8b7f523ab35918b8.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_ident-8b7f523ab35918b8.rlib new file mode 100644 index 0000000..da1a9ab Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_ident-8b7f523ab35918b8.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libunicode_ident-8b7f523ab35918b8.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_ident-8b7f523ab35918b8.rmeta new file mode 100644 index 0000000..95c0107 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_ident-8b7f523ab35918b8.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libunicode_segmentation-8da93bcdee04ce34.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_segmentation-8da93bcdee04ce34.rlib new file mode 100644 index 0000000..9aa71d7 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_segmentation-8da93bcdee04ce34.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libunicode_segmentation-8da93bcdee04ce34.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_segmentation-8da93bcdee04ce34.rmeta new file mode 100644 index 0000000..fcae20b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libunicode_segmentation-8da93bcdee04ce34.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwasapi-f37956a90f27a368.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwasapi-f37956a90f27a368.rlib new file mode 100644 index 0000000..830fe11 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwasapi-f37956a90f27a368.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwasapi-f37956a90f27a368.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwasapi-f37956a90f27a368.rmeta new file mode 100644 index 0000000..3dd4b95 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwasapi-f37956a90f27a368.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwidestring-e4ff05f1ba63a6fd.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwidestring-e4ff05f1ba63a6fd.rlib new file mode 100644 index 0000000..76a077b Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwidestring-e4ff05f1ba63a6fd.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwidestring-e4ff05f1ba63a6fd.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwidestring-e4ff05f1ba63a6fd.rmeta new file mode 100644 index 0000000..3c3c3d5 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwidestring-e4ff05f1ba63a6fd.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows-317e26e04bae559c.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwindows-317e26e04bae559c.rlib new file mode 100644 index 0000000..64d7043 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows-317e26e04bae559c.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows-317e26e04bae559c.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwindows-317e26e04bae559c.rmeta new file mode 100644 index 0000000..a44e403 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows-317e26e04bae559c.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_core-f1e02dd38acd2bfa.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_core-f1e02dd38acd2bfa.rlib new file mode 100644 index 0000000..41dbe59 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_core-f1e02dd38acd2bfa.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_core-f1e02dd38acd2bfa.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_core-f1e02dd38acd2bfa.rmeta new file mode 100644 index 0000000..9463485 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_core-f1e02dd38acd2bfa.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_link-4d21bbe1d7ccf23e.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_link-4d21bbe1d7ccf23e.rlib new file mode 100644 index 0000000..4f7b567 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_link-4d21bbe1d7ccf23e.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_link-4d21bbe1d7ccf23e.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_link-4d21bbe1d7ccf23e.rmeta new file mode 100644 index 0000000..05bcdc2 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_link-4d21bbe1d7ccf23e.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_result-7bfbea7560c255e7.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_result-7bfbea7560c255e7.rlib new file mode 100644 index 0000000..b4de2b7 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_result-7bfbea7560c255e7.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_result-7bfbea7560c255e7.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_result-7bfbea7560c255e7.rmeta new file mode 100644 index 0000000..85cfd27 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_result-7bfbea7560c255e7.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_targets-c60965f72ec09e5e.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_targets-c60965f72ec09e5e.rlib new file mode 100644 index 0000000..2c07902 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_targets-c60965f72ec09e5e.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_targets-c60965f72ec09e5e.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_targets-c60965f72ec09e5e.rmeta new file mode 100644 index 0000000..fcec7ca Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_targets-c60965f72ec09e5e.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_x86_64_msvc-3a740eea84d4dc67.rlib b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_x86_64_msvc-3a740eea84d4dc67.rlib new file mode 100644 index 0000000..ef469ce Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_x86_64_msvc-3a740eea84d4dc67.rlib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/libwindows_x86_64_msvc-3a740eea84d4dc67.rmeta b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_x86_64_msvc-3a740eea84d4dc67.rmeta new file mode 100644 index 0000000..25e3fd1 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/libwindows_x86_64_msvc-3a740eea84d4dc67.rmeta differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/log-503ba197615b4899.d b/apps/desktop/native/audio-loopback/target/release/deps/log-503ba197615b4899.d new file mode 100644 index 0000000..ec29a04 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/log-503ba197615b4899.d @@ -0,0 +1,10 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\log-503ba197615b4899.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\serde.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\__private_api.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\liblog-503ba197615b4899.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\serde.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\__private_api.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\liblog-503ba197615b4899.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\serde.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\__private_api.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\macros.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\serde.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\log-0.4.29\src\__private_api.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/memchr-0b6ded161300fb6d.d b/apps/desktop/native/audio-loopback/target/release/deps/memchr-0b6ded161300fb6d.d new file mode 100644 index 0000000..8ae3f1c --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/memchr-0b6ded161300fb6d.d @@ -0,0 +1,33 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\memchr-0b6ded161300fb6d.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\default_rank.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\rabinkarp.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\shiftor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\twoway.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\cow.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\searcher.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\vector.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libmemchr-0b6ded161300fb6d.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\default_rank.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\rabinkarp.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\shiftor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\twoway.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\cow.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\searcher.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\vector.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libmemchr-0b6ded161300fb6d.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\default_rank.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\rabinkarp.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\shiftor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\twoway.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\packedpair.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\cow.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\searcher.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\vector.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\macros.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\packedpair\default_rank.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\rabinkarp.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\shiftor.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\all\twoway.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\generic\packedpair.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\avx2\packedpair.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\sse2\packedpair.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\arch\x86_64\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\cow.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\ext.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\memmem\searcher.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\memchr-2.8.0\src\vector.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi-c71c5da813d1757f.d b/apps/desktop/native/audio-loopback/target/release/deps/napi-c71c5da813d1757f.d new file mode 100644 index 0000000..ef77006 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/napi-c71c5da813d1757f.d @@ -0,0 +1,63 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\napi-c71c5da813d1757f.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\async_work.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\callback_info.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\iterator.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\array.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\arraybuffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\boolean.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\class.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\external.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\map.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\nil.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\number.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\string.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\symbol.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\task.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\value_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\module_register.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\call_context.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\cleanup_env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\arraybuffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\boolean.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\date.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\deferred.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\escapable_handle_scope.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\global.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\number.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object_property.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\latin1.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf16.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf8.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\tagged_object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\undefined.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\status.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\task.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\value_type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\threadsafe_function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\version.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi-c71c5da813d1757f.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\async_work.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\callback_info.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\iterator.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\array.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\arraybuffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\boolean.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\class.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\external.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\map.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\nil.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\number.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\string.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\symbol.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\task.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\value_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\module_register.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\call_context.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\cleanup_env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\arraybuffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\boolean.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\date.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\deferred.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\escapable_handle_scope.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\global.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\number.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object_property.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\latin1.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf16.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf8.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\tagged_object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\undefined.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\status.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\task.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\value_type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\threadsafe_function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\version.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi-c71c5da813d1757f.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\async_work.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\callback_info.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\iterator.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\array.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\arraybuffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\boolean.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\class.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\external.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\map.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\nil.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\number.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\string.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\symbol.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\task.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\value_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\module_register.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\call_context.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\cleanup_env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\env.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\arraybuffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\boolean.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\date.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\deferred.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\escapable_handle_scope.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\global.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\number.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object_property.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\latin1.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf16.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf8.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\tagged_object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\undefined.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\status.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\task.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\value_type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\threadsafe_function.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\version.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\async_work.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\callback_info.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\env.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\iterator.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\array.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\arraybuffer.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\bigint.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\boolean.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\buffer.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\class.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\either.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\external.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\function.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\map.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\nil.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\number.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\object.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\string.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\symbol.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\task.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\js_values\value_ref.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\bindgen_runtime\module_register.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\call_context.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\cleanup_env.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\env.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\arraybuffer.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\bigint.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\boolean.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\buffer.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\date.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\deferred.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\either.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\escapable_handle_scope.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\function.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\global.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\number.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\object_property.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\latin1.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf16.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\string\utf8.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\tagged_object.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\undefined.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\js_values\value_ref.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\status.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\task.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\value_type.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\threadsafe_function.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-2.16.17\src\version.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_build-547d402dbe5275e3.d b/apps/desktop/native/audio-loopback/target/release/deps/napi_build-547d402dbe5275e3.d new file mode 100644 index 0000000..b013651 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/napi_build-547d402dbe5275e3.d @@ -0,0 +1,10 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\napi_build-547d402dbe5275e3.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\android.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\wasi.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\windows.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi_build-547d402dbe5275e3.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\android.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\wasi.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\windows.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi_build-547d402dbe5275e3.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\android.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\wasi.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\windows.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\android.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\wasi.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-build-2.3.1\src\windows.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.d b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.d new file mode 100644 index 0000000..caad7bd --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.d @@ -0,0 +1,10 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\napi_derive-8a06c7ca101ebb69.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\compat_macro.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\expand.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\parser\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\parser\attrs.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\expand\napi.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\napi_derive-8a06c7ca101ebb69.dll: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\compat_macro.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\expand.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\parser\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\parser\attrs.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\expand\napi.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\compat_macro.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\expand.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\parser\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\parser\attrs.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-2.16.13\src\expand\napi.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll new file mode 100644 index 0000000..c79a05d Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll.exp b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll.exp new file mode 100644 index 0000000..c79269a Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll.exp differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll.lib b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll.lib new file mode 100644 index 0000000..9689ef8 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.dll.lib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.pdb b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.pdb new file mode 100644 index 0000000..4c48880 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive-8a06c7ca101ebb69.pdb differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_derive_backend-b741fd0ea2b72c1a.d b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive_backend-b741fd0ea2b72c1a.d new file mode 100644 index 0000000..abf77fe --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/napi_derive_backend-b741fd0ea2b72c1a.d @@ -0,0 +1,19 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\napi_derive_backend-b741fd0ea2b72c1a.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\ast.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\const.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\enum.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\fn.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\struct.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\const.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\enum.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\fn.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\struct.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi_derive_backend-b741fd0ea2b72c1a.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\ast.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\const.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\enum.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\fn.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\struct.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\const.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\enum.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\fn.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\struct.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi_derive_backend-b741fd0ea2b72c1a.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\ast.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\const.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\enum.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\fn.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\struct.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\const.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\enum.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\fn.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\struct.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\ast.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\const.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\enum.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\fn.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\codegen\struct.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\const.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\enum.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\fn.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-derive-backend-1.0.75\src\typegen\struct.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/napi_sys-9a4a05b3b03a98e6.d b/apps/desktop/native/audio-loopback/target/release/deps/napi_sys-9a4a05b3b03a98e6.d new file mode 100644 index 0000000..64a6d30 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/napi_sys-9a4a05b3b03a98e6.d @@ -0,0 +1,9 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\napi_sys-9a4a05b3b03a98e6.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\functions.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\types.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi_sys-9a4a05b3b03a98e6.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\functions.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\types.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnapi_sys-9a4a05b3b03a98e6.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\functions.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\types.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\functions.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\napi-sys-2.4.0\src\types.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/num_integer-c4c848204269c844.d b/apps/desktop/native/audio-loopback/target/release/deps/num_integer-c4c848204269c844.d new file mode 100644 index 0000000..820cc22 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/num_integer-c4c848204269c844.d @@ -0,0 +1,9 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\num_integer-c4c848204269c844.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\roots.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\average.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnum_integer-c4c848204269c844.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\roots.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\average.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnum_integer-c4c848204269c844.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\roots.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\average.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\roots.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-integer-0.1.46\src\average.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/num_traits-03118305971f36e0.d b/apps/desktop/native/audio-loopback/target/release/deps/num_traits-03118305971f36e0.d new file mode 100644 index 0000000..32c9b32 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/num_traits-03118305971f36e0.d @@ -0,0 +1,25 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\num_traits-03118305971f36e0.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\bounds.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\cast.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\float.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\identities.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\checked.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\euclid.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\inv.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mul_add.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\overflowing.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\saturating.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\wrapping.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\pow.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\real.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\sign.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnum_traits-03118305971f36e0.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\bounds.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\cast.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\float.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\identities.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\checked.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\euclid.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\inv.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mul_add.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\overflowing.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\saturating.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\wrapping.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\pow.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\real.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\sign.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libnum_traits-03118305971f36e0.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\bounds.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\cast.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\float.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\identities.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\checked.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\euclid.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\inv.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mul_add.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\overflowing.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\saturating.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\wrapping.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\pow.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\real.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\sign.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\macros.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\bounds.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\cast.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\float.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\identities.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\int.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\bytes.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\checked.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\euclid.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\inv.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\mul_add.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\overflowing.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\saturating.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\ops\wrapping.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\pow.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\real.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\num-traits-0.2.19\src\sign.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/once_cell-58eed7c19356b807.d b/apps/desktop/native/audio-loopback/target/release/deps/once_cell-58eed7c19356b807.d new file mode 100644 index 0000000..27ec345 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/once_cell-58eed7c19356b807.d @@ -0,0 +1,9 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\once_cell-58eed7c19356b807.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libonce_cell-58eed7c19356b807.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libonce_cell-58eed7c19356b807.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/once_cell-f5f3a7b099532975.d b/apps/desktop/native/audio-loopback/target/release/deps/once_cell-f5f3a7b099532975.d new file mode 100644 index 0000000..187de10 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/once_cell-f5f3a7b099532975.d @@ -0,0 +1,9 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\once_cell-f5f3a7b099532975.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libonce_cell-f5f3a7b099532975.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libonce_cell-f5f3a7b099532975.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\imp_std.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\once_cell-1.21.4\src\race.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/proc_macro2-ccf35862a228406d.d b/apps/desktop/native/audio-loopback/target/release/deps/proc_macro2-ccf35862a228406d.d new file mode 100644 index 0000000..83a6d73 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/proc_macro2-ccf35862a228406d.d @@ -0,0 +1,17 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\proc_macro2-ccf35862a228406d.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\marker.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_file.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_location.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\rcvec.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\detection.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\fallback.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\extra.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\wrapper.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libproc_macro2-ccf35862a228406d.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\marker.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_file.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_location.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\rcvec.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\detection.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\fallback.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\extra.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\wrapper.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libproc_macro2-ccf35862a228406d.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\marker.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_file.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_location.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\rcvec.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\detection.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\fallback.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\extra.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\wrapper.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\marker.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\parse.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_file.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\probe\proc_macro_span_location.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\rcvec.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\detection.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\fallback.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\extra.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\proc-macro2-1.0.106\src\wrapper.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/quote-a2dce141b7ee9817.d b/apps/desktop/native/audio-loopback/target/release/deps/quote-a2dce141b7ee9817.d new file mode 100644 index 0000000..84ddd88 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/quote-a2dce141b7ee9817.d @@ -0,0 +1,13 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\quote-a2dce141b7ee9817.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\format.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ident_fragment.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\to_tokens.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\runtime.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\spanned.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libquote-a2dce141b7ee9817.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\format.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ident_fragment.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\to_tokens.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\runtime.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\spanned.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libquote-a2dce141b7ee9817.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\format.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ident_fragment.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\to_tokens.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\runtime.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\spanned.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ext.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\format.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\ident_fragment.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\to_tokens.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\runtime.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\quote-1.0.45\src\spanned.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/regex-2e1c82ee5e10bb33.d b/apps/desktop/native/audio-loopback/target/release/deps/regex-2e1c82ee5e10bb33.d new file mode 100644 index 0000000..919bce9 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/regex-2e1c82ee5e10bb33.d @@ -0,0 +1,17 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\regex-2e1c82ee5e10bb33.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\builders.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\find_byte.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\string.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\string.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libregex-2e1c82ee5e10bb33.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\builders.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\find_byte.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\string.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\string.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libregex-2e1c82ee5e10bb33.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\builders.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\find_byte.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\string.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\bytes.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\string.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\builders.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\bytes.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\find_byte.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\bytes.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regex\string.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\bytes.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-1.12.3\src\regexset\string.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/regex_automata-704f60644d410463.d b/apps/desktop/native/audio-loopback/target/release/deps/regex_automata-704f60644d410463.d new file mode 100644 index 0000000..6205916 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/regex_automata-704f60644d410463.d @@ -0,0 +1,65 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\regex_automata-704f60644d410463.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\onepass.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\remapper.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\dfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\id.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\regex.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\limited.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\literal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\regex.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\reverse_inner.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\stopat.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\strategy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\wrappers.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\backtrack.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\builder.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\compiler.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\literal_trie.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\map.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\nfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\pikevm.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\range_trie.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\alphabet.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\captures.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\escape.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\interpolate.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\lazy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\look.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\pool.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\aho_corasick.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\byteset.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memmem.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\teddy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\primitives.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\start.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\syntax.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\wire.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\state.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\empty.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\sparse_set.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\unicode_data\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\utf8.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libregex_automata-704f60644d410463.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\onepass.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\remapper.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\dfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\id.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\regex.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\limited.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\literal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\regex.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\reverse_inner.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\stopat.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\strategy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\wrappers.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\backtrack.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\builder.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\compiler.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\literal_trie.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\map.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\nfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\pikevm.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\range_trie.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\alphabet.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\captures.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\escape.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\interpolate.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\lazy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\look.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\pool.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\aho_corasick.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\byteset.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memmem.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\teddy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\primitives.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\start.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\syntax.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\wire.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\state.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\empty.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\sparse_set.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\unicode_data\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\utf8.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libregex_automata-704f60644d410463.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\onepass.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\remapper.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\dfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\id.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\regex.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\limited.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\literal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\regex.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\reverse_inner.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\stopat.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\strategy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\wrappers.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\backtrack.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\builder.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\compiler.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\literal_trie.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\map.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\nfa.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\pikevm.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\range_trie.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\alphabet.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\captures.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\escape.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\interpolate.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\lazy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\look.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\pool.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\aho_corasick.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\byteset.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memmem.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\teddy.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\primitives.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\start.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\syntax.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\wire.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\state.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\empty.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\int.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\memchr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\search.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\sparse_set.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\unicode_data\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\utf8.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\macros.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\onepass.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\dfa\remapper.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\dfa.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\id.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\regex.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\hybrid\search.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\limited.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\literal.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\regex.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\reverse_inner.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\stopat.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\strategy.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\meta\wrappers.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\backtrack.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\builder.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\compiler.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\literal_trie.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\map.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\nfa.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\pikevm.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\nfa\thompson\range_trie.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\alphabet.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\captures.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\escape.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\interpolate.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\iter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\lazy.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\look.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\pool.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\aho_corasick.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\byteset.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\memmem.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\prefilter\teddy.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\primitives.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\start.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\syntax.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\wire.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\determinize\state.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\empty.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\int.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\memchr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\search.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\sparse_set.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\unicode_data\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-automata-0.4.14\src\util\utf8.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/regex_syntax-0aa2ccb0061be3ba.d b/apps/desktop/native/audio-loopback/target/release/deps/regex_syntax-0aa2ccb0061be3ba.d new file mode 100644 index 0000000..8a35194 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/regex_syntax-0aa2ccb0061be3ba.d @@ -0,0 +1,37 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\regex_syntax-0aa2ccb0061be3ba.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\visitor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\interval.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\literal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\translate.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\visitor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\parser.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\rank.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\age.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\case_folding_simple.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\general_category.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\grapheme_cluster_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\perl_word.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_bool.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_names.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_values.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script_extension.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\sentence_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\word_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\utf8.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libregex_syntax-0aa2ccb0061be3ba.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\visitor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\interval.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\literal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\translate.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\visitor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\parser.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\rank.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\age.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\case_folding_simple.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\general_category.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\grapheme_cluster_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\perl_word.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_bool.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_names.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_values.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script_extension.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\sentence_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\word_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\utf8.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libregex_syntax-0aa2ccb0061be3ba.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\visitor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\either.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\interval.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\literal.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\translate.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\visitor.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\parser.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\rank.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\age.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\case_folding_simple.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\general_category.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\grapheme_cluster_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\perl_word.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_bool.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_names.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_values.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script_extension.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\sentence_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\word_break.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\utf8.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\parse.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\print.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\ast\visitor.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\debug.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\either.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\interval.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\literal.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\print.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\translate.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\hir\visitor.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\parser.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\rank.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\age.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\case_folding_simple.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\general_category.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\grapheme_cluster_break.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\perl_word.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_bool.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_names.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\property_values.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\script_extension.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\sentence_break.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\unicode_tables\word_break.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\regex-syntax-0.8.10\src\utf8.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/semver-1783b44b5dee25b3.d b/apps/desktop/native/audio-loopback/target/release/deps/semver-1783b44b5dee25b3.d new file mode 100644 index 0000000..de21ee4 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/semver-1783b44b5dee25b3.d @@ -0,0 +1,13 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\semver-1783b44b5dee25b3.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\display.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\eval.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\identifier.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\impls.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\parse.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libsemver-1783b44b5dee25b3.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\display.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\eval.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\identifier.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\impls.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\parse.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libsemver-1783b44b5dee25b3.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\display.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\eval.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\identifier.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\impls.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\parse.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\display.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\eval.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\identifier.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\impls.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\semver-1.0.28\src\parse.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/syn-17343a382f09a1e7.d b/apps/desktop/native/audio-loopback/target/release/deps/syn-17343a382f09a1e7.d new file mode 100644 index 0000000..3ffc4a4 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/syn-17343a382f09a1e7.d @@ -0,0 +1,58 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\syn-17343a382f09a1e7.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\group.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\token.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\attr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\classify.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_keyword.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_punctuation.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\data.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\derive.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\drops.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\expr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\file.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\fixup.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\generics.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ident.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\item.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lifetime.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lit.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lookahead.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\mac.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\meta.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\op.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\discouraged.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_macro_input.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_quote.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\pat.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\path.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\precedence.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\punctuated.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\restriction.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\sealed.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\span.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\spanned.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\stmt.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\thread.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\tt.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ty.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\verbatim.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\whitespace.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\export.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\fold.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\clone.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\eq.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\hash.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libsyn-17343a382f09a1e7.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\group.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\token.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\attr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\classify.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_keyword.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_punctuation.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\data.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\derive.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\drops.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\expr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\file.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\fixup.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\generics.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ident.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\item.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lifetime.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lit.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lookahead.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\mac.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\meta.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\op.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\discouraged.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_macro_input.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_quote.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\pat.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\path.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\precedence.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\punctuated.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\restriction.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\sealed.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\span.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\spanned.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\stmt.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\thread.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\tt.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ty.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\verbatim.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\whitespace.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\export.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\fold.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\clone.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\eq.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\hash.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libsyn-17343a382f09a1e7.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\group.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\token.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\attr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\bigint.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\buffer.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\classify.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_keyword.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_punctuation.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\data.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\derive.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\drops.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\expr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ext.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\file.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\fixup.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\generics.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ident.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\item.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lifetime.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lit.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lookahead.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\mac.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\meta.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\op.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\discouraged.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_macro_input.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_quote.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\pat.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\path.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\precedence.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\print.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\punctuated.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\restriction.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\sealed.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\span.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\spanned.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\stmt.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\thread.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\tt.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ty.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\verbatim.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\whitespace.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\export.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\fold.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\clone.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\debug.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\eq.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\hash.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\macros.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\group.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\token.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\attr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\bigint.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\buffer.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\classify.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_keyword.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\custom_punctuation.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\data.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\derive.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\drops.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\expr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ext.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\file.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\fixup.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\generics.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ident.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\item.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lifetime.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lit.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\lookahead.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\mac.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\meta.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\op.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\discouraged.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_macro_input.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\parse_quote.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\pat.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\path.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\precedence.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\print.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\punctuated.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\restriction.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\sealed.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\span.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\spanned.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\stmt.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\thread.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\tt.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\ty.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\verbatim.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\whitespace.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\export.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\fold.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\clone.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\debug.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\eq.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\syn-2.0.117\src\gen\hash.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/unicode_ident-8b7f523ab35918b8.d b/apps/desktop/native/audio-loopback/target/release/deps/unicode_ident-8b7f523ab35918b8.d new file mode 100644 index 0000000..f3879f5 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/unicode_ident-8b7f523ab35918b8.d @@ -0,0 +1,8 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\unicode_ident-8b7f523ab35918b8.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\tables.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libunicode_ident-8b7f523ab35918b8.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\tables.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libunicode_ident-8b7f523ab35918b8.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\tables.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-ident-1.0.24\src\tables.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/unicode_segmentation-8da93bcdee04ce34.d b/apps/desktop/native/audio-loopback/target/release/deps/unicode_segmentation-8da93bcdee04ce34.d new file mode 100644 index 0000000..d80ada6 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/unicode_segmentation-8da93bcdee04ce34.d @@ -0,0 +1,11 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\unicode_segmentation-8da93bcdee04ce34.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\grapheme.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\sentence.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\word.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\tables.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libunicode_segmentation-8da93bcdee04ce34.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\grapheme.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\sentence.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\word.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\tables.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libunicode_segmentation-8da93bcdee04ce34.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\grapheme.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\sentence.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\word.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\tables.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\grapheme.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\sentence.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\word.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\unicode-segmentation-1.13.2\src\tables.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/wasapi-f37956a90f27a368.d b/apps/desktop/native/audio-loopback/target/release/deps/wasapi-f37956a90f27a368.d new file mode 100644 index 0000000..6730f39 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/wasapi-f37956a90f27a368.d @@ -0,0 +1,10 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\wasapi-f37956a90f27a368.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\api.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\events.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\waveformat.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwasapi-f37956a90f27a368.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\api.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\events.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\waveformat.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwasapi-f37956a90f27a368.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\api.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\events.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\waveformat.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\api.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\events.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wasapi-0.15.0\src\waveformat.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/widestring-e4ff05f1ba63a6fd.d b/apps/desktop/native/audio-loopback/target/release/deps/widestring-e4ff05f1ba63a6fd.d new file mode 100644 index 0000000..a3a4842 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/widestring-e4ff05f1ba63a6fd.d @@ -0,0 +1,22 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\widestring-e4ff05f1ba63a6fd.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\windows.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring\iter.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwidestring-e4ff05f1ba63a6fd.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\windows.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring\iter.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwidestring-e4ff05f1ba63a6fd.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\macros.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\windows.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr\iter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring\iter.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\iter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\macros.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\platform\windows.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ucstring.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustr\iter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\ustring\iter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstr\iter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\widestring-1.2.1\src\utfstring\iter.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows-317e26e04bae559c.d b/apps/desktop/native/audio-loopback/target/release/deps/windows-317e26e04bae559c.d new file mode 100644 index 0000000..8eb4fc6 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows-317e26e04bae559c.d @@ -0,0 +1,38 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows-317e26e04bae559c.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows/mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\Properties\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Foundation\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Security\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Variant\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\impl.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows-317e26e04bae559c.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows/mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\Properties\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Foundation\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Security\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Variant\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\impl.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows-317e26e04bae559c.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows/mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\Properties\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Foundation\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Security\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Variant\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\impl.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows/mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\Properties\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Foundation\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Security\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Variant\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Foundation\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Devices\FunctionDiscovery\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Audio\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\KernelStreaming\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\Multimedia\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\Media\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\StructuredStorage\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Com\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\System\Threading\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\PropertiesSystem\impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-0.57.0\src\Windows\Win32\UI\Shell\impl.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_core-f1e02dd38acd2bfa.d b/apps/desktop/native/audio-loopback/target/release/deps/windows_core-f1e02dd38acd2bfa.d new file mode 100644 index 0000000..5382244 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows_core-f1e02dd38acd2bfa.d @@ -0,0 +1,48 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_core-f1e02dd38acd2bfa.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\can_into.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\com_bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\delay_load.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\factory_cache.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\generic_factory.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\heap.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\ref_count.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\sha1.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\waiter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\weak_ref_count.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\agile_reference.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\array.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\as_impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\com_object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\event.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\guid.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\handles.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\inspectable.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\interface.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_param.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param_value.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_name.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\scoped_interface.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\bstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\hstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\literals.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcwstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pwstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\unknown.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\variant.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\weak.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_core-f1e02dd38acd2bfa.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\can_into.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\com_bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\delay_load.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\factory_cache.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\generic_factory.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\heap.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\ref_count.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\sha1.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\waiter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\weak_ref_count.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\agile_reference.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\array.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\as_impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\com_object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\event.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\guid.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\handles.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\inspectable.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\interface.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_param.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param_value.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_name.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\scoped_interface.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\bstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\hstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\literals.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcwstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pwstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\unknown.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\variant.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\weak.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_core-f1e02dd38acd2bfa.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\can_into.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\com_bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\delay_load.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\factory_cache.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\generic_factory.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\heap.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\ref_count.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\sha1.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\waiter.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\weak_ref_count.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\agile_reference.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\array.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\as_impl.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\com_object.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\event.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\guid.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\handles.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\inspectable.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\interface.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_param.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param_value.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\ref.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_name.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\scoped_interface.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\mod.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\bstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\hstring.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\literals.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcwstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pwstr.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\type.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\unknown.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\variant.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\weak.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\bindings.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\can_into.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\com_bindings.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\delay_load.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\factory_cache.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\generic_factory.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\heap.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\ref_count.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\sha1.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\waiter.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\imp\weak_ref_count.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\agile_reference.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\array.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\as_impl.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\com_object.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\event.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\guid.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\handles.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\inspectable.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\interface.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_param.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\out_ref.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\param_value.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\ref.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_name.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\runtime_type.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\scoped_interface.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\mod.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\bstr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\hstring.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\literals.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcstr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pcwstr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pstr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\strings\pwstr.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\type.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\unknown.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\variant.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-core-0.57.0\src\weak.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.d b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.d new file mode 100644 index 0000000..7efcb95 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.d @@ -0,0 +1,5 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_implement-d5c4a27c5b0fd166.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-implement-0.57.0\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_implement-d5c4a27c5b0fd166.dll: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-implement-0.57.0\src\lib.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-implement-0.57.0\src\lib.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll new file mode 100644 index 0000000..bf427f7 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll.exp b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll.exp new file mode 100644 index 0000000..b13b025 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll.exp differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll.lib b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll.lib new file mode 100644 index 0000000..1900e8f Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.dll.lib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.pdb b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.pdb new file mode 100644 index 0000000..30d0bc3 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_implement-d5c4a27c5b0fd166.pdb differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.d b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.d new file mode 100644 index 0000000..fee3c42 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.d @@ -0,0 +1,5 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_interface-bec01c36a72a9e29.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-interface-0.57.0\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_interface-bec01c36a72a9e29.dll: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-interface-0.57.0\src\lib.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-interface-0.57.0\src\lib.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll new file mode 100644 index 0000000..3602a86 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll.exp b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll.exp new file mode 100644 index 0000000..4af66a1 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll.exp differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll.lib b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll.lib new file mode 100644 index 0000000..be4df12 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.dll.lib differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.pdb b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.pdb new file mode 100644 index 0000000..8db4ca3 Binary files /dev/null and b/apps/desktop/native/audio-loopback/target/release/deps/windows_interface-bec01c36a72a9e29.pdb differ diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_link-4d21bbe1d7ccf23e.d b/apps/desktop/native/audio-loopback/target/release/deps/windows_link-4d21bbe1d7ccf23e.d new file mode 100644 index 0000000..7f43aed --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows_link-4d21bbe1d7ccf23e.d @@ -0,0 +1,8 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_link-4d21bbe1d7ccf23e.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\../readme.md + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_link-4d21bbe1d7ccf23e.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\../readme.md + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_link-4d21bbe1d7ccf23e.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\../readme.md + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-link-0.2.1\src\../readme.md: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_result-7bfbea7560c255e7.d b/apps/desktop/native/audio-loopback/target/release/deps/windows_result-7bfbea7560c255e7.d new file mode 100644 index 0000000..ca60493 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows_result-7bfbea7560c255e7.d @@ -0,0 +1,12 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_result-7bfbea7560c255e7.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\com.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\strings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\hresult.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_result-7bfbea7560c255e7.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\com.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\strings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\hresult.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_result-7bfbea7560c255e7.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\lib.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\bindings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\com.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\strings.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\error.rs C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\hresult.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\lib.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\bindings.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\com.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\strings.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\error.rs: +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-result-0.1.2\src\hresult.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_targets-c60965f72ec09e5e.d b/apps/desktop/native/audio-loopback/target/release/deps/windows_targets-c60965f72ec09e5e.d new file mode 100644 index 0000000..c6e4e84 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows_targets-c60965f72ec09e5e.d @@ -0,0 +1,7 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_targets-c60965f72ec09e5e.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-targets-0.52.6\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_targets-c60965f72ec09e5e.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-targets-0.52.6\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_targets-c60965f72ec09e5e.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-targets-0.52.6\src\lib.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows-targets-0.52.6\src\lib.rs: diff --git a/apps/desktop/native/audio-loopback/target/release/deps/windows_x86_64_msvc-3a740eea84d4dc67.d b/apps/desktop/native/audio-loopback/target/release/deps/windows_x86_64_msvc-3a740eea84d4dc67.d new file mode 100644 index 0000000..496d775 --- /dev/null +++ b/apps/desktop/native/audio-loopback/target/release/deps/windows_x86_64_msvc-3a740eea84d4dc67.d @@ -0,0 +1,7 @@ +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\windows_x86_64_msvc-3a740eea84d4dc67.d: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows_x86_64_msvc-0.52.6\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_x86_64_msvc-3a740eea84d4dc67.rlib: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows_x86_64_msvc-0.52.6\src\lib.rs + +D:\Programmieren\ChatApp-Electron\chat-app\apps\desktop\native\audio-loopback\target\release\deps\libwindows_x86_64_msvc-3a740eea84d4dc67.rmeta: C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows_x86_64_msvc-0.52.6\src\lib.rs + +C:\Users\denni\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\windows_x86_64_msvc-0.52.6\src\lib.rs: diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 7c5d22f..e8cbb41 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -1,20 +1,21 @@ { "name": "@chat-app/desktop", - "version": "0.11.3", + "version": "0.16.0", "private": true, - "description": "Tauri v2 desktop client (Windows / macOS / Linux)", + "description": "Electron desktop client (Windows / macOS / Linux)", "type": "module", + "main": "out/main/main.js", "scripts": { - "dev": "tauri dev", - "vite:dev": "vite", - "build": "tauri build", - "vite:build": "vite build", - "preview": "vite preview", + "dev": "pnpm build:native && electron-vite dev", + "build": "pnpm build:native && electron-vite build && electron-builder", + "build:win": "pnpm build:native && electron-vite build && electron-builder --win", + "build:native": "pnpm --filter @chatapp/audio-loopback-native run build", + "preview": "electron-vite preview", "lint": "eslint src --ext .ts,.tsx", "typecheck": "tsc --noEmit", "test": "vitest run", "test:watch": "vitest", - "clean": "rm -rf dist .turbo src-tauri/target *.tsbuildinfo" + "clean": "rimraf dist out .turbo *.tsbuildinfo" }, "dependencies": { "@chat-app/db-types": "workspace:*", @@ -23,32 +24,75 @@ "@livekit/components-react": "^2.9.0", "@livekit/track-processors": "^0.7.2", "@supabase/supabase-js": "^2.46.0", - "@tauri-apps/api": "^2.1.1", - "@tauri-apps/plugin-fs": "^2.5.0", - "@tauri-apps/plugin-global-shortcut": "^2.3.1", - "@tauri-apps/plugin-notification": "^2.0.1", - "@tauri-apps/plugin-sql": "^2.0.1", - "@tauri-apps/plugin-stronghold": "^2.0.1", - "@tauri-apps/plugin-updater": "^2.10.1", + "better-sqlite3": "^11.3.0", + "electron-updater": "^6.3.0", "i18next": "^23.16.4", "libsodium-wrappers-sumo": "0.7.15", "livekit-client": "^2.7.0", "react": "^18.3.1", "react-dom": "^18.3.1", + "react-easy-crop": "^5.5.7", "react-i18next": "^15.1.1", "react-router-dom": "^6.28.0", "zustand": "^5.0.1" }, "devDependencies": { - "@tauri-apps/cli": "^2.1.0", + "@types/better-sqlite3": "^7.6.0", "@types/libsodium-wrappers": "^0.7.14", "@types/libsodium-wrappers-sumo": "^0.8.2", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@vitejs/plugin-react": "^4.3.3", "autoprefixer": "^10.4.20", + "electron": "^33.0.0", + "electron-builder": "^25.0.0", + "electron-vite": "^2.3.0", "postcss": "^8.4.49", + "rimraf": "^6.0.0", "tailwindcss": "^3.4.15", "vite": "^5.4.11" + }, + "build": { + "appId": "com.meinname.chatapp", + "productName": "ChatApp", + "directories": { + "output": "release", + "buildResources": "resources" + }, + "files": [ + "out/**/*", + "package.json" + ], + "extraResources": [ + { + "from": "native/audio-loopback/audio-loopback.win32-x64-msvc.node", + "to": "native/audio-loopback.node" + } + ], + "win": { + "target": [ + "nsis" + ], + "icon": "resources/icon.ico" + }, + "mac": { + "target": [ + "dmg" + ], + "icon": "resources/icon.icns", + "identity": null + }, + "linux": { + "target": [ + "AppImage" + ], + "icon": "resources/icon.png" + }, + "publish": [ + { + "provider": "generic", + "url": "https://update.netralax.cloud/windows/" + } + ] } } diff --git a/apps/desktop/src-tauri/icons/icon.icns b/apps/desktop/resources/icon.icns similarity index 100% rename from apps/desktop/src-tauri/icons/icon.icns rename to apps/desktop/resources/icon.icns diff --git a/apps/desktop/src-tauri/icons/icon.ico b/apps/desktop/resources/icon.ico similarity index 100% rename from apps/desktop/src-tauri/icons/icon.ico rename to apps/desktop/resources/icon.ico diff --git a/apps/desktop/src-tauri/icons/icon.png b/apps/desktop/resources/icon.png similarity index 100% rename from apps/desktop/src-tauri/icons/icon.png rename to apps/desktop/resources/icon.png diff --git a/apps/desktop/src-tauri/.gitignore b/apps/desktop/src-tauri/.gitignore deleted file mode 100644 index ba18136..0000000 --- a/apps/desktop/src-tauri/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -target/ -gen/ -WixTools/ diff --git a/apps/desktop/src-tauri/Cargo.lock b/apps/desktop/src-tauri/Cargo.lock deleted file mode 100644 index 3dab62b..0000000 --- a/apps/desktop/src-tauri/Cargo.lock +++ /dev/null @@ -1,9738 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "adler2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" - -[[package]] -name = "adler32" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" - -[[package]] -name = "aead" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" -dependencies = [ - "crypto-common", - "generic-array", -] - -[[package]] -name = "aes" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", -] - -[[package]] -name = "aes-gcm" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" -dependencies = [ - "aead", - "aes", - "cipher", - "ctr", - "ghash", - "subtle", -] - -[[package]] -name = "ahash" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" -dependencies = [ - "getrandom 0.2.17", - "once_cell", - "version_check", -] - -[[package]] -name = "aho-corasick" -version = "1.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" -dependencies = [ - "memchr", -] - -[[package]] -name = "aligned" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee4508988c62edf04abd8d92897fca0c2995d907ce1dfeaf369dac3716a40685" -dependencies = [ - "as-slice", -] - -[[package]] -name = "aligned-vec" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc890384c8602f339876ded803c97ad529f3842aba97f6392b3dba0dd171769b" -dependencies = [ - "equator", -] - -[[package]] -name = "alloc-no-stdlib" -version = "2.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" - -[[package]] -name = "alloc-stdlib" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" -dependencies = [ - "alloc-no-stdlib", -] - -[[package]] -name = "allocator-api2" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] - -[[package]] -name = "anstyle" -version = "1.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" - -[[package]] -name = "anyhow" -version = "1.0.102" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" - -[[package]] -name = "arbitrary" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" -dependencies = [ - "derive_arbitrary", -] - -[[package]] -name = "arg_enum_proc_macro" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "arrayref" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" - -[[package]] -name = "arrayvec" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" - -[[package]] -name = "as-slice" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "516b6b4f0e40d50dcda9365d53964ec74560ad4284da2e7fc97122cd83174516" -dependencies = [ - "stable_deref_trait", -] - -[[package]] -name = "async-broadcast" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" -dependencies = [ - "event-listener", - "event-listener-strategy", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-channel" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2" -dependencies = [ - "concurrent-queue", - "event-listener-strategy", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-executor" -version = "1.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c96bf972d85afc50bf5ab8fe2d54d1586b4e0b46c97c50a0c9e71e2f7bcd812a" -dependencies = [ - "async-task", - "concurrent-queue", - "fastrand", - "futures-lite", - "pin-project-lite", - "slab", -] - -[[package]] -name = "async-io" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "456b8a8feb6f42d237746d4b3e9a178494627745c3c56c6ea55d92ba50d026fc" -dependencies = [ - "autocfg", - "cfg-if", - "concurrent-queue", - "futures-io", - "futures-lite", - "parking", - "polling", - "rustix", - "slab", - "windows-sys 0.61.2", -] - -[[package]] -name = "async-lock" -version = "3.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" -dependencies = [ - "event-listener", - "event-listener-strategy", - "pin-project-lite", -] - -[[package]] -name = "async-process" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc50921ec0055cdd8a16de48773bfeec5c972598674347252c0399676be7da75" -dependencies = [ - "async-channel", - "async-io", - "async-lock", - "async-signal", - "async-task", - "blocking", - "cfg-if", - "event-listener", - "futures-lite", - "rustix", -] - -[[package]] -name = "async-recursion" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "async-signal" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52b5aaafa020cf5053a01f2a60e8ff5dccf550f0f77ec54a4e47285ac2bab485" -dependencies = [ - "async-io", - "async-lock", - "atomic-waker", - "cfg-if", - "futures-core", - "futures-io", - "rustix", - "signal-hook-registry", - "slab", - "windows-sys 0.61.2", -] - -[[package]] -name = "async-task" -version = "4.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" - -[[package]] -name = "async-trait" -version = "0.1.89" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "atk" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241b621213072e993be4f6f3a9e4b45f65b7e6faad43001be957184b7bb1824b" -dependencies = [ - "atk-sys", - "glib 0.18.5", - "libc", -] - -[[package]] -name = "atk-sys" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5e48b684b0ca77d2bbadeef17424c2ea3c897d44d566a1617e7e8f30614d086" -dependencies = [ - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "atoi" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28d99ec8bfea296261ca1af174f24225171fea9664ba9003cbebee704810528" -dependencies = [ - "num-traits", -] - -[[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - -[[package]] -name = "autocfg" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" - -[[package]] -name = "av-scenechange" -version = "0.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f321d77c20e19b92c39e7471cf986812cbb46659d2af674adc4331ef3f18394" -dependencies = [ - "aligned", - "anyhow", - "arg_enum_proc_macro", - "arrayvec", - "log", - "num-rational", - "num-traits", - "pastey", - "rayon", - "thiserror 2.0.18", - "v_frame", - "y4m", -] - -[[package]] -name = "av1-grain" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cfddb07216410377231960af4fcab838eaa12e013417781b78bd95ee22077f8" -dependencies = [ - "anyhow", - "arrayvec", - "log", - "nom", - "num-rational", - "v_frame", -] - -[[package]] -name = "avif-serialize" -version = "0.8.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "375082f007bd67184fb9c0374614b29f9aaa604ec301635f72338bb65386a53d" -dependencies = [ - "arrayvec", -] - -[[package]] -name = "base16ct" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" - -[[package]] -name = "base64" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "base64" -version = "0.22.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" - -[[package]] -name = "base64ct" -version = "1.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" - -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - -[[package]] -name = "bit-set" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" - -[[package]] -name = "bit_field" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e4b40c7323adcfc0a41c4b88143ed58346ff65a288fc144329c5c45e05d70c6" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3" -dependencies = [ - "serde_core", -] - -[[package]] -name = "bitstream-io" -version = "4.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eff00be299a18769011411c9def0d827e8f2d7bf0c3dbf53633147a8867fd1f" -dependencies = [ - "no_std_io2", -] - -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - -[[package]] -name = "blake2" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" -dependencies = [ - "digest", -] - -[[package]] -name = "blake2b_simd" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b79834656f71332577234b50bfc009996f7449e0c056884e6a02492ded0ca2f3" -dependencies = [ - "arrayref", - "arrayvec", - "constant_time_eq 0.4.2", -] - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block-padding" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block2" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" -dependencies = [ - "objc2", -] - -[[package]] -name = "blocking" -version = "1.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e83f8d02be6967315521be875afa792a316e28d57b5a2d401897e2a7921b7f21" -dependencies = [ - "async-channel", - "async-task", - "futures-io", - "futures-lite", - "piper", -] - -[[package]] -name = "bmrng" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54df9073108f1558f90ae6c5bf5ab9c917c4185f5527b280c87a993cbead0ac" -dependencies = [ - "futures-core", - "tokio", -] - -[[package]] -name = "borsh" -version = "1.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfd1e3f8955a5d7de9fab72fc8373fade9fb8a703968cb200ae3dc6cf08e185a" -dependencies = [ - "borsh-derive", - "bytes", - "cfg_aliases", -] - -[[package]] -name = "borsh-derive" -version = "1.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfcfdc083699101d5a7965e49925975f2f55060f94f9a05e7187be95d530ca59" -dependencies = [ - "once_cell", - "proc-macro-crate 3.5.0", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "brotli" -version = "8.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd8b9603c7aa97359dbd97ecf258968c95f3adddd6db2f7e7a5bef101c84560" -dependencies = [ - "alloc-no-stdlib", - "alloc-stdlib", - "brotli-decompressor", -] - -[[package]] -name = "brotli-decompressor" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "874bb8112abecc98cbd6d81ea4fa7e94fb9449648c93cc89aa40c81c24d7de03" -dependencies = [ - "alloc-no-stdlib", - "alloc-stdlib", -] - -[[package]] -name = "built" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4ad8f11f288f48ca24471bbd51ac257aaeaaa07adae295591266b792902ae64" - -[[package]] -name = "bumpalo" -version = "3.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" - -[[package]] -name = "bytecheck" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" -dependencies = [ - "bytecheck_derive", - "ptr_meta", - "simdutf8", -] - -[[package]] -name = "bytecheck_derive" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "bytemuck" -version = "1.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8efb64bd706a16a1bdde310ae86b351e4d21550d98d056f22f8a7f7a2183fec" - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "byteorder-lite" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" - -[[package]] -name = "bytes" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" -dependencies = [ - "serde", -] - -[[package]] -name = "bzip2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" -dependencies = [ - "bzip2-sys", - "libc", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.13+1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" -dependencies = [ - "cc", - "pkg-config", -] - -[[package]] -name = "cairo-rs" -version = "0.18.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2" -dependencies = [ - "bitflags 2.11.1", - "cairo-sys-rs", - "glib 0.18.5", - "libc", - "once_cell", - "thiserror 1.0.69", -] - -[[package]] -name = "cairo-sys-rs" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51" -dependencies = [ - "glib-sys 0.18.1", - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "camino" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e629a66d692cb9ff1a1c664e41771b3dcaf961985a9774c0eb0bd1b51cf60a48" -dependencies = [ - "serde_core", -] - -[[package]] -name = "cargo-platform" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.19.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" -dependencies = [ - "camino", - "cargo-platform", - "semver", - "serde", - "serde_json", - "thiserror 2.0.18", -] - -[[package]] -name = "cargo_toml" -version = "0.22.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "374b7c592d9c00c1f4972ea58390ac6b18cbb6ab79011f3bdc90a0b82ca06b77" -dependencies = [ - "serde", - "toml 0.9.12+spec-1.1.0", -] - -[[package]] -name = "cc" -version = "1.2.60" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43c5703da9466b66a946814e1adf53ea2c90f10063b86290cc9eb67ce3478a20" -dependencies = [ - "find-msvc-tools", - "jobserver", - "libc", - "shlex", -] - -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - -[[package]] -name = "cfb" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f" -dependencies = [ - "byteorder", - "fnv", - "uuid", -] - -[[package]] -name = "cfg-expr" -version = "0.15.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" -dependencies = [ - "smallvec", - "target-lexicon 0.12.16", -] - -[[package]] -name = "cfg-expr" -version = "0.20.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c6b04e07d8080154ed4ac03546d9a2b303cc2fe1901ba0b35b301516e289368" -dependencies = [ - "smallvec", - "target-lexicon 0.13.3", -] - -[[package]] -name = "cfg-if" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" - -[[package]] -name = "cfg_aliases" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" - -[[package]] -name = "chacha20" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", -] - -[[package]] -name = "chacha20poly1305" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35" -dependencies = [ - "aead", - "chacha20", - "cipher", - "poly1305", - "zeroize", -] - -[[package]] -name = "chat-app-desktop" -version = "0.11.2" -dependencies = [ - "base64 0.22.1", - "dryoc", - "image", - "livekit", - "serde", - "serde_json", - "tauri", - "tauri-build", - "tauri-plugin-fs", - "tauri-plugin-global-shortcut", - "tauri-plugin-notification", - "tauri-plugin-sql", - "tauri-plugin-stronghold", - "tauri-plugin-updater", - "tauri-plugin-window-state", - "tokio", - "wasapi", - "windows 0.58.0", - "xcap", -] - -[[package]] -name = "chrono" -version = "0.4.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c673075a2e0e5f4a1dde27ce9dee1ea4558c7ffe648f576438a20ca1d2acc4b0" -dependencies = [ - "iana-time-zone", - "js-sys", - "num-traits", - "serde", - "wasm-bindgen", - "windows-link 0.2.1", -] - -[[package]] -name = "cipher" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" -dependencies = [ - "crypto-common", - "inout", - "zeroize", -] - -[[package]] -name = "clap" -version = "4.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ddb117e43bbf7dacf0a4190fef4d345b9bad68dfc649cb349e7d17d28428e51" -dependencies = [ - "clap_builder", -] - -[[package]] -name = "clap_builder" -version = "4.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" -dependencies = [ - "anstyle", - "clap_lex", - "strsim 0.11.1", -] - -[[package]] -name = "clap_lex" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" - -[[package]] -name = "codespan-reporting" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af491d569909a7e4dee0ad7db7f5341fef5c614d5b8ec8cf765732aba3cff681" -dependencies = [ - "serde", - "termcolor", - "unicode-width", -] - -[[package]] -name = "color_quant" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" - -[[package]] -name = "combine" -version = "4.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" -dependencies = [ - "bytes", - "memchr", -] - -[[package]] -name = "concurrent-queue" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "constant_time_eq" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" - -[[package]] -name = "constant_time_eq" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" - -[[package]] -name = "constant_time_eq" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b" - -[[package]] -name = "convert_case" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" - -[[package]] -name = "cookie" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" -dependencies = [ - "time", - "version_check", -] - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" - -[[package]] -name = "core-graphics" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa95a34622365fa5bbf40b20b75dba8dfa8c94c734aea8ac9a5ca38af14316f1" -dependencies = [ - "bitflags 2.11.1", - "core-foundation 0.10.1", - "core-graphics-types", - "foreign-types", - "libc", -] - -[[package]] -name = "core-graphics" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "064badf302c3194842cf2c5d61f56cc88e54a759313879cdf03abdd27d0c3b97" -dependencies = [ - "bitflags 2.11.1", - "core-foundation 0.10.1", - "core-graphics-types", - "foreign-types", - "libc", -] - -[[package]] -name = "core-graphics-types" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" -dependencies = [ - "bitflags 2.11.1", - "core-foundation 0.10.1", - "libc", -] - -[[package]] -name = "cpufeatures" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" -dependencies = [ - "libc", -] - -[[package]] -name = "crc" -version = "3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eb8a2a1cd12ab0d987a5d5e825195d372001a4094a0376319d5a0ad71c1ba0d" -dependencies = [ - "crc-catalog", -] - -[[package]] -name = "crc-catalog" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" - -[[package]] -name = "crc32fast" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "crossbeam-channel" -version = "0.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-queue" -version = "0.3.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" - -[[package]] -name = "crunchy" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" - -[[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "generic-array", - "rand_core 0.6.4", - "subtle", - "zeroize", -] - -[[package]] -name = "crypto-common" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "cssparser" -version = "0.29.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93d03419cb5950ccfd3daf3ff1c7a36ace64609a1a8746d493df1ca0afde0fa" -dependencies = [ - "cssparser-macros", - "dtoa-short", - "itoa", - "matches", - "phf 0.10.1", - "proc-macro2", - "quote", - "smallvec", - "syn 1.0.109", -] - -[[package]] -name = "cssparser" -version = "0.36.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dae61cf9c0abb83bd659dab65b7e4e38d8236824c85f0f804f173567bda257d2" -dependencies = [ - "cssparser-macros", - "dtoa-short", - "itoa", - "phf 0.13.1", - "smallvec", -] - -[[package]] -name = "cssparser-macros" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" -dependencies = [ - "quote", - "syn 2.0.117", -] - -[[package]] -name = "ctor" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" -dependencies = [ - "quote", - "syn 2.0.117", -] - -[[package]] -name = "ctr" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" -dependencies = [ - "cipher", -] - -[[package]] -name = "curve25519-dalek" -version = "4.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" -dependencies = [ - "cfg-if", - "cpufeatures", - "curve25519-dalek-derive", - "digest", - "fiat-crypto", - "rustc_version", - "subtle", - "zeroize", -] - -[[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "cxx" -version = "1.0.194" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "747d8437319e3a2f43d93b341c137927ca70c0f5dabeea7a005a73665e247c7e" -dependencies = [ - "cc", - "cxx-build", - "cxxbridge-cmd", - "cxxbridge-flags", - "cxxbridge-macro", - "foldhash 0.2.0", - "link-cplusplus", -] - -[[package]] -name = "cxx-build" -version = "1.0.194" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0f4697d190a142477b16aef7da8a99bfdc41e7e8b1687583c0d23a79c7afc1e" -dependencies = [ - "cc", - "codespan-reporting", - "indexmap 2.14.0", - "proc-macro2", - "quote", - "scratch", - "syn 2.0.117", -] - -[[package]] -name = "cxxbridge-cmd" -version = "1.0.194" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0956799fa8678d4c50eed028f2de1c0552ae183c76e976cf7ca8c4e36a7c328" -dependencies = [ - "clap", - "codespan-reporting", - "indexmap 2.14.0", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "cxxbridge-flags" -version = "1.0.194" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23384a836ab4f0ad98ace7e3955ad2de39de42378ab487dc28d3990392cb283a" - -[[package]] -name = "cxxbridge-macro" -version = "1.0.194" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6acc6b5822b9526adfb4fc377b67128fdd60aac757cc4a741a6278603f763cf" -dependencies = [ - "indexmap 2.14.0", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "darling" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" -dependencies = [ - "darling_core 0.14.4", - "darling_macro 0.14.4", -] - -[[package]] -name = "darling" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" -dependencies = [ - "darling_core 0.23.0", - "darling_macro 0.23.0", -] - -[[package]] -name = "darling_core" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", -] - -[[package]] -name = "darling_core" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" -dependencies = [ - "ident_case", - "proc-macro2", - "quote", - "strsim 0.11.1", - "syn 2.0.117", -] - -[[package]] -name = "darling_macro" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" -dependencies = [ - "darling_core 0.14.4", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "darling_macro" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" -dependencies = [ - "darling_core 0.23.0", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "dary_heap" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b1e3a325bc115f096c8b77bbf027a7c2592230e70be2d985be950d3d5e60ebe" - -[[package]] -name = "data-encoding" -version = "2.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea" - -[[package]] -name = "dbus" -version = "0.9.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b942602992bb7acfd1f51c49811c58a610ef9181b6e66f3e519d79b540a3bf73" -dependencies = [ - "libc", - "libdbus-sys", - "windows-sys 0.61.2", -] - -[[package]] -name = "der" -version = "0.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" -dependencies = [ - "const-oid", - "pem-rfc7468", - "zeroize", -] - -[[package]] -name = "deranged" -version = "0.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" -dependencies = [ - "powerfmt", - "serde_core", -] - -[[package]] -name = "derive_arbitrary" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "derive_more" -version = "0.99.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" -dependencies = [ - "convert_case", - "proc-macro2", - "quote", - "rustc_version", - "syn 2.0.117", -] - -[[package]] -name = "derive_more" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" -dependencies = [ - "derive_more-impl", -] - -[[package]] -name = "derive_more-impl" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" -dependencies = [ - "proc-macro2", - "quote", - "rustc_version", - "syn 2.0.117", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "dirs" -version = "4.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" -dependencies = [ - "dirs-sys 0.3.7", -] - -[[package]] -name = "dirs" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" -dependencies = [ - "dirs-sys 0.5.0", -] - -[[package]] -name = "dirs-next" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" -dependencies = [ - "cfg-if", - "dirs-sys-next", -] - -[[package]] -name = "dirs-sys" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" -dependencies = [ - "libc", - "redox_users 0.4.6", - "winapi", -] - -[[package]] -name = "dirs-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" -dependencies = [ - "libc", - "option-ext", - "redox_users 0.5.2", - "windows-sys 0.61.2", -] - -[[package]] -name = "dirs-sys-next" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" -dependencies = [ - "libc", - "redox_users 0.4.6", - "winapi", -] - -[[package]] -name = "dispatch2" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38" -dependencies = [ - "bitflags 2.11.1", - "block2", - "libc", - "objc2", -] - -[[package]] -name = "displaydoc" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "dlopen2" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e2c5bd4158e66d1e215c49b837e11d62f3267b30c92f1d171c4d3105e3dc4d4" -dependencies = [ - "dlopen2_derive", - "libc", - "once_cell", - "winapi", -] - -[[package]] -name = "dlopen2_derive" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fbbb781877580993a8707ec48672673ec7b81eeba04cfd2310bd28c08e47c8f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "dom_query" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "521e380c0c8afb8d9a1e83a1822ee03556fc3e3e7dbc1fd30be14e37f9cb3f89" -dependencies = [ - "bit-set", - "cssparser 0.36.0", - "foldhash 0.2.0", - "html5ever 0.38.0", - "precomputed-hash", - "selectors 0.36.1", - "tendril 0.5.0", -] - -[[package]] -name = "dotenvy" -version = "0.15.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" - -[[package]] -name = "dpi" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76" -dependencies = [ - "serde", -] - -[[package]] -name = "dryoc" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4684d84cc4dc1a8705dcbe8be0e258581dfdbb308477ed604f52797c336bb3d2" -dependencies = [ - "bitflags 2.11.1", - "chacha20", - "curve25519-dalek", - "generic-array", - "lazy_static", - "libc", - "rand_core 0.9.5", - "salsa20", - "serde", - "sha2", - "subtle", - "winapi", - "zeroize", -] - -[[package]] -name = "dtoa" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c3cf4824e2d5f025c7b531afcb2325364084a16806f6d47fbc1f5fbd9960590" - -[[package]] -name = "dtoa-short" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87" -dependencies = [ - "dtoa", -] - -[[package]] -name = "dunce" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" - -[[package]] -name = "dyn-clone" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" - -[[package]] -name = "ecdsa" -version = "0.16.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" -dependencies = [ - "der", - "digest", - "elliptic-curve", - "rfc6979", - "signature", - "spki", -] - -[[package]] -name = "ed25519" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" -dependencies = [ - "pkcs8", - "signature", -] - -[[package]] -name = "ed25519-dalek" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9" -dependencies = [ - "curve25519-dalek", - "ed25519", - "serde", - "sha2", - "subtle", - "zeroize", -] - -[[package]] -name = "ed25519-zebra" -version = "4.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775765289f7c6336c18d3d66127527820dd45ffd9eb3b6b8ee4708590e6c20f5" -dependencies = [ - "curve25519-dalek", - "ed25519", - "rand_core 0.6.4", - "sha2", - "subtle", - "zeroize", -] - -[[package]] -name = "either" -version = "1.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" -dependencies = [ - "serde", -] - -[[package]] -name = "elliptic-curve" -version = "0.13.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" -dependencies = [ - "base16ct", - "crypto-bigint", - "digest", - "ff", - "generic-array", - "group", - "hkdf", - "pem-rfc7468", - "pkcs8", - "rand_core 0.6.4", - "sec1", - "subtle", - "zeroize", -] - -[[package]] -name = "embed-resource" -version = "3.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63a1d0de4f2249aa0ff5884d7080814f446bb241a559af6c170a41e878ed2d45" -dependencies = [ - "cc", - "memchr", - "rustc_version", - "toml 0.9.12+spec-1.1.0", - "vswhom", - "winreg", -] - -[[package]] -name = "embed_plist" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7" - -[[package]] -name = "endi" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66b7e2430c6dff6a955451e2cfc438f09cea1965a9d6f87f7e3b90decc014099" - -[[package]] -name = "enumflags2" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1027f7680c853e056ebcec683615fb6fbbc07dbaa13b4d5d9442b146ded4ecef" -dependencies = [ - "enumflags2_derive", - "serde", -] - -[[package]] -name = "enumflags2_derive" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "equator" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4711b213838dfee0117e3be6ac926007d7f433d7bbe33595975d4190cb07e6fc" -dependencies = [ - "equator-macro", -] - -[[package]] -name = "equator-macro" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "equivalent" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" - -[[package]] -name = "erased-serde" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2add8a07dd6a8d93ff627029c51de145e12686fbc36ecb298ac22e74cf02dec" -dependencies = [ - "serde", - "serde_core", - "typeid", -] - -[[package]] -name = "errno" -version = "0.3.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" -dependencies = [ - "libc", - "windows-sys 0.61.2", -] - -[[package]] -name = "etcetera" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "136d1b5283a1ab77bd9257427ffd09d8667ced0570b6f938942bc7568ed5b943" -dependencies = [ - "cfg-if", - "home", - "windows-sys 0.48.0", -] - -[[package]] -name = "event-listener" -version = "5.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" -dependencies = [ - "concurrent-queue", - "parking", - "pin-project-lite", -] - -[[package]] -name = "event-listener-strategy" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" -dependencies = [ - "event-listener", - "pin-project-lite", -] - -[[package]] -name = "exr" -version = "1.74.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4300e043a56aa2cb633c01af81ca8f699a321879a7854d3896a0ba89056363be" -dependencies = [ - "bit_field", - "half", - "lebe", - "miniz_oxide", - "rayon-core", - "smallvec", - "zune-inflate", -] - -[[package]] -name = "fastrand" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" - -[[package]] -name = "fax" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05de7d48f37cd6730705cbca900770cab77a89f413d23e100ad7fad7795a0ab" -dependencies = [ - "fax_derive", -] - -[[package]] -name = "fax_derive" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0aca10fb742cb43f9e7bb8467c91aa9bcb8e3ffbc6a6f7389bb93ffc920577d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "fdeflate" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c" -dependencies = [ - "simd-adler32", -] - -[[package]] -name = "ff" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" -dependencies = [ - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "fiat-crypto" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" - -[[package]] -name = "field-offset" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f" -dependencies = [ - "memoffset 0.9.1", - "rustc_version", -] - -[[package]] -name = "filetime" -version = "0.2.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98844151eee8917efc50bd9e8318cb963ae8b297431495d3f758616ea5c57db" -dependencies = [ - "cfg-if", - "libc", - "libredox", -] - -[[package]] -name = "find-msvc-tools" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" - -[[package]] -name = "fixedbitset" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" - -[[package]] -name = "flate2" -version = "1.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" -dependencies = [ - "crc32fast", - "miniz_oxide", - "zlib-rs", -] - -[[package]] -name = "flume" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095" -dependencies = [ - "futures-core", - "futures-sink", - "spin", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "foldhash" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" - -[[package]] -name = "foldhash" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" - -[[package]] -name = "foreign-types" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" -dependencies = [ - "foreign-types-macros", - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-macros" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "foreign-types-shared" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" - -[[package]] -name = "form_urlencoded" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "from_variants" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e859c8f2057687618905dbe99fc76e836e0a69738865ef90e46fc214a41bbf2" -dependencies = [ - "from_variants_impl", -] - -[[package]] -name = "from_variants_impl" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55a5e644a80e6d96b2b4910fa7993301d7b7926c045b475b62202b20a36ce69e" -dependencies = [ - "darling 0.14.4", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "fs2" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - -[[package]] -name = "futf" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843" -dependencies = [ - "mac", - "new_debug_unreachable", -] - -[[package]] -name = "futures-channel" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" - -[[package]] -name = "futures-executor" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-intrusive" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d930c203dd0b6ff06e0201a4a2fe9149b43c684fd4420555b26d21b1a02956f" -dependencies = [ - "futures-core", - "lock_api", - "parking_lot", -] - -[[package]] -name = "futures-io" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" - -[[package]] -name = "futures-lite" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" -dependencies = [ - "fastrand", - "futures-core", - "futures-io", - "parking", - "pin-project-lite", -] - -[[package]] -name = "futures-macro" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "futures-sink" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" - -[[package]] -name = "futures-task" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" - -[[package]] -name = "futures-util" -version = "0.3.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" -dependencies = [ - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "slab", -] - -[[package]] -name = "fxhash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" -dependencies = [ - "byteorder", -] - -[[package]] -name = "gdk" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9f245958c627ac99d8e529166f9823fb3b838d1d41fd2b297af3075093c2691" -dependencies = [ - "cairo-rs", - "gdk-pixbuf", - "gdk-sys", - "gio", - "glib 0.18.5", - "libc", - "pango", -] - -[[package]] -name = "gdk-pixbuf" -version = "0.18.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50e1f5f1b0bfb830d6ccc8066d18db35c487b1b2b1e8589b5dfe9f07e8defaec" -dependencies = [ - "gdk-pixbuf-sys", - "gio", - "glib 0.18.5", - "libc", - "once_cell", -] - -[[package]] -name = "gdk-pixbuf-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7" -dependencies = [ - "gio-sys 0.18.1", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "gdk-sys" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c2d13f38594ac1e66619e188c6d5a1adb98d11b2fcf7894fc416ad76aa2f3f7" -dependencies = [ - "cairo-sys-rs", - "gdk-pixbuf-sys", - "gio-sys 0.18.1", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "pango-sys", - "pkg-config", - "system-deps 6.2.2", -] - -[[package]] -name = "gdkwayland-sys" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "140071d506d223f7572b9f09b5e155afbd77428cd5cc7af8f2694c41d98dfe69" -dependencies = [ - "gdk-sys", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "pkg-config", - "system-deps 6.2.2", -] - -[[package]] -name = "gdkx11" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3caa00e14351bebbc8183b3c36690327eb77c49abc2268dd4bd36b856db3fbfe" -dependencies = [ - "gdk", - "gdkx11-sys", - "gio", - "glib 0.18.5", - "libc", - "x11", -] - -[[package]] -name = "gdkx11-sys" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e2e7445fe01ac26f11601db260dd8608fe172514eb63b3b5e261ea6b0f4428d" -dependencies = [ - "gdk-sys", - "glib-sys 0.18.1", - "libc", - "system-deps 6.2.2", - "x11", -] - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", - "zeroize", -] - -[[package]] -name = "gethostname" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bd49230192a3797a9a4d6abe9b3eed6f7fa4c8a8a4947977c6f80025f92cbd8" -dependencies = [ - "rustix", - "windows-link 0.2.1", -] - -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", -] - -[[package]] -name = "getrandom" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "wasi 0.11.1+wasi-snapshot-preview1", - "wasm-bindgen", -] - -[[package]] -name = "getrandom" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "r-efi 5.3.0", - "wasip2", - "wasm-bindgen", -] - -[[package]] -name = "getrandom" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" -dependencies = [ - "cfg-if", - "libc", - "r-efi 6.0.0", - "wasip2", - "wasip3", -] - -[[package]] -name = "ghash" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" -dependencies = [ - "opaque-debug", - "polyval", -] - -[[package]] -name = "gif" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee8cfcc411d9adbbaba82fb72661cc1bcca13e8bba98b364e62b2dba8f960159" -dependencies = [ - "color_quant", - "weezl", -] - -[[package]] -name = "gio" -version = "0.18.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-util", - "gio-sys 0.18.1", - "glib 0.18.5", - "libc", - "once_cell", - "pin-project-lite", - "smallvec", - "thiserror 1.0.69", -] - -[[package]] -name = "gio-sys" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2" -dependencies = [ - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "system-deps 6.2.2", - "winapi", -] - -[[package]] -name = "gio-sys" -version = "0.21.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0071fe88dba8e40086c8ff9bbb62622999f49628344b1d1bf490a48a29d80f22" -dependencies = [ - "glib-sys 0.21.5", - "gobject-sys 0.21.5", - "libc", - "system-deps 7.0.8", - "windows-sys 0.61.2", -] - -[[package]] -name = "glib" -version = "0.18.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5" -dependencies = [ - "bitflags 2.11.1", - "futures-channel", - "futures-core", - "futures-executor", - "futures-task", - "futures-util", - "gio-sys 0.18.1", - "glib-macros 0.18.5", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "memchr", - "once_cell", - "smallvec", - "thiserror 1.0.69", -] - -[[package]] -name = "glib" -version = "0.21.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16de123c2e6c90ce3b573b7330de19be649080ec612033d397d72da265f1bd8b" -dependencies = [ - "bitflags 2.11.1", - "futures-channel", - "futures-core", - "futures-executor", - "futures-task", - "futures-util", - "gio-sys 0.21.5", - "glib-macros 0.21.5", - "glib-sys 0.21.5", - "gobject-sys 0.21.5", - "libc", - "memchr", - "smallvec", -] - -[[package]] -name = "glib-macros" -version = "0.18.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bb0228f477c0900c880fd78c8759b95c7636dbd7842707f49e132378aa2acdc" -dependencies = [ - "heck 0.4.1", - "proc-macro-crate 2.0.2", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "glib-macros" -version = "0.21.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf59b675301228a696fe01c3073974643365080a76cc3ed5bc2cbc466ad87f17" -dependencies = [ - "heck 0.5.0", - "proc-macro-crate 3.5.0", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "glib-sys" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898" -dependencies = [ - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "glib-sys" -version = "0.21.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d95e1a3a19ae464a7286e14af9a90683c64d70c02532d88d87ce95056af3e6c" -dependencies = [ - "libc", - "system-deps 7.0.8", -] - -[[package]] -name = "glob" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" - -[[package]] -name = "global-hotkey" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9247516746aa8e53411a0db9b62b0e24efbcf6a76e0ba73e5a91b512ddabed7" -dependencies = [ - "crossbeam-channel", - "keyboard-types", - "objc2", - "objc2-app-kit", - "once_cell", - "serde", - "thiserror 2.0.18", - "windows-sys 0.59.0", - "x11rb", - "xkeysym", -] - -[[package]] -name = "gobject-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44" -dependencies = [ - "glib-sys 0.18.1", - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "gobject-sys" -version = "0.21.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dca35da0d19a18f4575f3cb99fe1c9e029a2941af5662f326f738a21edaf294" -dependencies = [ - "glib-sys 0.21.5", - "libc", - "system-deps 7.0.8", -] - -[[package]] -name = "group" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" -dependencies = [ - "ff", - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "gtk" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd56fb197bfc42bd5d2751f4f017d44ff59fbb58140c6b49f9b3b2bdab08506a" -dependencies = [ - "atk", - "cairo-rs", - "field-offset", - "futures-channel", - "gdk", - "gdk-pixbuf", - "gio", - "glib 0.18.5", - "gtk-sys", - "gtk3-macros", - "libc", - "pango", - "pkg-config", -] - -[[package]] -name = "gtk-sys" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f29a1c21c59553eb7dd40e918be54dccd60c52b049b75119d5d96ce6b624414" -dependencies = [ - "atk-sys", - "cairo-sys-rs", - "gdk-pixbuf-sys", - "gdk-sys", - "gio-sys 0.18.1", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "pango-sys", - "system-deps 6.2.2", -] - -[[package]] -name = "gtk3-macros" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52ff3c5b21f14f0736fed6dcfc0bfb4225ebf5725f3c0209edeec181e4d73e9d" -dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "half" -version = "2.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" -dependencies = [ - "cfg-if", - "crunchy", - "zerocopy", -] - -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash", -] - -[[package]] -name = "hashbrown" -version = "0.15.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" -dependencies = [ - "allocator-api2", - "equivalent", - "foldhash 0.1.5", -] - -[[package]] -name = "hashbrown" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" -dependencies = [ - "allocator-api2", - "equivalent", - "foldhash 0.2.0", -] - -[[package]] -name = "hashbrown" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" - -[[package]] -name = "hashlink" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7382cf6263419f2d8df38c55d7da83da5c18aef87fc7a7fc1fb1e344edfe14c1" -dependencies = [ - "hashbrown 0.15.5", -] - -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "heck" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" - -[[package]] -name = "hermit-abi" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "hkdf" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" -dependencies = [ - "hmac", -] - -[[package]] -name = "hmac" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" -dependencies = [ - "digest", -] - -[[package]] -name = "home" -version = "0.5.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc627f471c528ff0c4a49e1d5e60450c8f6461dd6d10ba9dcd3a61d3dff7728d" -dependencies = [ - "windows-sys 0.61.2", -] - -[[package]] -name = "html5ever" -version = "0.29.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b7410cae13cbc75623c98ac4cbfd1f0bedddf3227afc24f370cf0f50a44a11c" -dependencies = [ - "log", - "mac", - "markup5ever 0.14.1", - "match_token", -] - -[[package]] -name = "html5ever" -version = "0.38.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1054432bae2f14e0061e33d23402fbaa67a921d319d56adc6bcf887ddad1cbc2" -dependencies = [ - "log", - "markup5ever 0.38.0", -] - -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3ba2a386d7f85a81f119ad7498ebe444d2e22c2af0b86b069416ace48b3311a" -dependencies = [ - "bytes", - "itoa", -] - -[[package]] -name = "http-body" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" -dependencies = [ - "bytes", - "http 1.4.0", -] - -[[package]] -name = "http-body-util" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" -dependencies = [ - "bytes", - "futures-core", - "http 1.4.0", - "http-body", - "pin-project-lite", -] - -[[package]] -name = "httparse" -version = "1.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" - -[[package]] -name = "hyper" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca" -dependencies = [ - "atomic-waker", - "bytes", - "futures-channel", - "futures-core", - "http 1.4.0", - "http-body", - "httparse", - "itoa", - "pin-project-lite", - "smallvec", - "tokio", - "want", -] - -[[package]] -name = "hyper-rustls" -version = "0.27.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ca68d021ef39cf6463ab54c1d0f5daf03377b70561305bb89a8f83aab66e0f" -dependencies = [ - "http 1.4.0", - "hyper", - "hyper-util", - "rustls 0.23.38", - "rustls-native-certs 0.8.3", - "tokio", - "tokio-rustls 0.26.4", - "tower-service", -] - -[[package]] -name = "hyper-util" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-channel", - "futures-util", - "http 1.4.0", - "http-body", - "hyper", - "ipnet", - "libc", - "percent-encoding", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", -] - -[[package]] -name = "iana-time-zone" -version = "0.1.65" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "log", - "wasm-bindgen", - "windows-core 0.62.2", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - -[[package]] -name = "ico" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e795dff5605e0f04bff85ca41b51a96b83e80b281e96231bcaaf1ac35103371" -dependencies = [ - "byteorder", - "png 0.17.16", -] - -[[package]] -name = "icu_collections" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" -dependencies = [ - "displaydoc", - "potential_utf", - "utf8_iter", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locale_core" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_normalizer" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" -dependencies = [ - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" - -[[package]] -name = "icu_properties" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" -dependencies = [ - "icu_collections", - "icu_locale_core", - "icu_properties_data", - "icu_provider", - "zerotrie", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" - -[[package]] -name = "icu_provider" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" -dependencies = [ - "displaydoc", - "icu_locale_core", - "writeable", - "yoke", - "zerofrom", - "zerotrie", - "zerovec", -] - -[[package]] -name = "id-arena" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954" - -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - -[[package]] -name = "idna" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" -dependencies = [ - "idna_adapter", - "smallvec", - "utf8_iter", -] - -[[package]] -name = "idna_adapter" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" -dependencies = [ - "icu_normalizer", - "icu_properties", -] - -[[package]] -name = "image" -version = "0.25.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85ab80394333c02fe689eaf900ab500fbd0c2213da414687ebf995a65d5a6104" -dependencies = [ - "bytemuck", - "byteorder-lite", - "color_quant", - "exr", - "gif", - "image-webp", - "moxcms", - "num-traits", - "png 0.18.1", - "qoi", - "ravif", - "rayon", - "rgb", - "tiff", - "zune-core", - "zune-jpeg", -] - -[[package]] -name = "image-webp" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525e9ff3e1a4be2fbea1fdf0e98686a6d98b4d8f937e1bf7402245af1909e8c3" -dependencies = [ - "byteorder-lite", - "quick-error", -] - -[[package]] -name = "imgref" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c5cedc30da3a610cac6b4ba17597bdf7152cf974e8aab3afb3d54455e371c8" - -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", - "serde", -] - -[[package]] -name = "indexmap" -version = "2.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" -dependencies = [ - "equivalent", - "hashbrown 0.17.0", - "serde", - "serde_core", -] - -[[package]] -name = "infer" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a588916bfdfd92e71cacef98a63d9b1f0d74d6599980d11894290e7ddefffcf7" -dependencies = [ - "cfb", -] - -[[package]] -name = "inout" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" -dependencies = [ - "block-padding", - "generic-array", -] - -[[package]] -name = "interpolate_name" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "iota-crypto" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98a38db844c910d78825e173c083f2ef416b69cb091bba8ac1055763c6db065b" -dependencies = [ - "aead", - "aes", - "aes-gcm", - "autocfg", - "base64 0.21.7", - "blake2", - "chacha20poly1305", - "cipher", - "curve25519-dalek", - "digest", - "ed25519-zebra", - "generic-array", - "getrandom 0.2.17", - "hkdf", - "hmac", - "iterator-sorted", - "k256", - "pbkdf2 0.12.2", - "rand 0.8.6", - "scrypt", - "serde", - "sha2", - "tiny-keccak", - "unicode-normalization", - "x25519-dalek", - "zeroize", -] - -[[package]] -name = "iota_stronghold" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c0d301c7edbc31494d183b7d24c1bb51d3fb10fce2f3793df1baf45b6988e10" -dependencies = [ - "bincode", - "hkdf", - "iota-crypto", - "rust-argon2 1.0.0", - "serde", - "stronghold-derive", - "stronghold-utils", - "stronghold_engine", - "thiserror 1.0.69", - "zeroize", -] - -[[package]] -name = "ipnet" -version = "2.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" - -[[package]] -name = "iri-string" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25e659a4bb38e810ebc252e53b5814ff908a8c58c2a9ce2fae1bbec24cbf4e20" -dependencies = [ - "memchr", - "serde", -] - -[[package]] -name = "iterator-sorted" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d101775d2bc8f99f4ac18bf29b9ed70c0dd138b9a1e88d7b80179470cbbe8bd2" - -[[package]] -name = "itertools" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" - -[[package]] -name = "javascriptcore-rs" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca5671e9ffce8ffba57afc24070e906da7fc4b1ba66f2cabebf61bf2ea257fcc" -dependencies = [ - "bitflags 1.3.2", - "glib 0.18.5", - "javascriptcore-rs-sys", -] - -[[package]] -name = "javascriptcore-rs-sys" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1be78d14ffa4b75b66df31840478fef72b51f8c2465d4ca7c194da9f7a5124" -dependencies = [ - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "jni" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" -dependencies = [ - "cesu8", - "cfg-if", - "combine", - "jni-sys 0.3.1", - "log", - "thiserror 1.0.69", - "walkdir", - "windows-sys 0.45.0", -] - -[[package]] -name = "jni-sys" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" -dependencies = [ - "jni-sys 0.4.1", -] - -[[package]] -name = "jni-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" -dependencies = [ - "jni-sys-macros", -] - -[[package]] -name = "jni-sys-macros" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" -dependencies = [ - "quote", - "syn 2.0.117", -] - -[[package]] -name = "jobserver" -version = "0.1.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" -dependencies = [ - "getrandom 0.3.4", - "libc", -] - -[[package]] -name = "js-sys" -version = "0.3.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2964e92d1d9dc3364cae4d718d93f227e3abb088e747d92e0395bfdedf1c12ca" -dependencies = [ - "cfg-if", - "futures-util", - "once_cell", - "wasm-bindgen", -] - -[[package]] -name = "json-patch" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "863726d7afb6bc2590eeff7135d923545e5e964f004c2ccf8716c25e70a86f08" -dependencies = [ - "jsonptr", - "serde", - "serde_json", - "thiserror 1.0.69", -] - -[[package]] -name = "jsonptr" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dea2b27dd239b2556ed7a25ba842fe47fd602e7fc7433c2a8d6106d4d9edd70" -dependencies = [ - "serde", - "serde_json", -] - -[[package]] -name = "jsonwebtoken" -version = "10.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0529410abe238729a60b108898784df8984c87f6054c9c4fcacc47e4803c1ce1" -dependencies = [ - "base64 0.22.1", - "ed25519-dalek", - "getrandom 0.2.17", - "hmac", - "js-sys", - "p256", - "p384", - "rand 0.8.6", - "rsa", - "serde", - "serde_json", - "sha2", - "signature", -] - -[[package]] -name = "k256" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" -dependencies = [ - "cfg-if", - "ecdsa", - "elliptic-curve", - "once_cell", - "sha2", -] - -[[package]] -name = "keyboard-types" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b750dcadc39a09dbadd74e118f6dd6598df77fa01df0cfcdc52c28dece74528a" -dependencies = [ - "bitflags 2.11.1", - "serde", - "unicode-segmentation", -] - -[[package]] -name = "kuchikiki" -version = "0.8.8-speedreader" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02cb977175687f33fa4afa0c95c112b987ea1443e5a51c8f8ff27dc618270cc2" -dependencies = [ - "cssparser 0.29.6", - "html5ever 0.29.1", - "indexmap 2.14.0", - "selectors 0.24.0", -] - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" -dependencies = [ - "spin", -] - -[[package]] -name = "leb128fmt" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" - -[[package]] -name = "lebe" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a79a3332a6609480d7d0c9eab957bca6b455b91bb84e66d19f5ff66294b85b8" - -[[package]] -name = "libappindicator" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03589b9607c868cc7ae54c0b2a22c8dc03dd41692d48f2d7df73615c6a95dc0a" -dependencies = [ - "glib 0.18.5", - "gtk", - "gtk-sys", - "libappindicator-sys", - "log", -] - -[[package]] -name = "libappindicator-sys" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e9ec52138abedcc58dc17a7c6c0c00a2bdb4f3427c7f63fa97fd0d859155caf" -dependencies = [ - "gtk-sys", - "libloading 0.7.4", - "once_cell", -] - -[[package]] -name = "libc" -version = "0.2.185" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52ff2c0fe9bc6cb6b14a0592c2ff4fa9ceb83eea9db979b0487cd054946a2b8f" - -[[package]] -name = "libdbus-sys" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "328c4789d42200f1eeec05bd86c9c13c7f091d2ba9a6ea35acdf51f31bc0f043" -dependencies = [ - "pkg-config", -] - -[[package]] -name = "libflate" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd96e993e5f3368b0cb8497dae6c860c22af8ff18388c61c6c0b86c58d86b5df" -dependencies = [ - "adler32", - "crc32fast", - "dary_heap", - "libflate_lz77", - "no_std_io2", -] - -[[package]] -name = "libflate_lz77" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff7a10e427698aef6eef269482776debfef63384d30f13aad39a1a95e0e098fd" -dependencies = [ - "hashbrown 0.16.1", - "no_std_io2", - "rle-decode-fast", -] - -[[package]] -name = "libfuzzer-sys" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f12a681b7dd8ce12bff52488013ba614b869148d54dd79836ab85aafdd53f08d" -dependencies = [ - "arbitrary", - "cc", -] - -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "libloading" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" -dependencies = [ - "cfg-if", - "windows-link 0.2.1", -] - -[[package]] -name = "libm" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" - -[[package]] -name = "libredox" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e02f3bb43d335493c96bf3fd3a321600bf6bd07ed34bc64118e9293bdffea46c" -dependencies = [ - "bitflags 2.11.1", - "libc", - "plain", - "redox_syscall 0.7.4", -] - -[[package]] -name = "libsodium-sys-stable" -version = "1.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b04bf6da2c98b727af37ab62cb505f4d751b975b034a9b9ad491d333b0564e" -dependencies = [ - "cc", - "libc", - "libflate", - "minisign-verify", - "pkg-config", - "tar", - "ureq", - "vcpkg", - "zip 8.5.1", -] - -[[package]] -name = "libsqlite3-sys" -version = "0.30.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149" -dependencies = [ - "cc", - "pkg-config", - "vcpkg", -] - -[[package]] -name = "libwebrtc" -version = "0.3.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6e6738afd128524d26e4896f59574f52118883b7fb6c3146d4acdb4e0dec590" -dependencies = [ - "cxx", - "glib 0.21.5", - "jni", - "js-sys", - "lazy_static", - "livekit-protocol", - "livekit-runtime", - "log", - "parking_lot", - "rtrb", - "serde", - "serde_json", - "thiserror 2.0.18", - "tokio", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webrtc-sys", -] - -[[package]] -name = "link-cplusplus" -version = "1.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f78c730aaa7d0b9336a299029ea49f9ee53b0ed06e9202e8cb7db9bae7b8c82" -dependencies = [ - "cc", -] - -[[package]] -name = "linux-raw-sys" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" - -[[package]] -name = "litemap" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" - -[[package]] -name = "livekit" -version = "0.7.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd316178ce26fb2ee1ccd453ac2d78d4a3b027ac56cc02f4538b06b54989afcf" -dependencies = [ - "base64 0.22.1", - "bmrng", - "bytes", - "chrono", - "futures-util", - "lazy_static", - "libloading 0.8.9", - "libwebrtc", - "livekit-api", - "livekit-datatrack", - "livekit-protocol", - "livekit-runtime", - "log", - "parking_lot", - "prost", - "semver", - "serde", - "serde_json", - "thiserror 1.0.69", - "tokio", -] - -[[package]] -name = "livekit-api" -version = "0.4.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2247e3127fc52f9cc30f2763726f0508120d0424bd5159464d731cb58e2bea1" -dependencies = [ - "base64 0.21.7", - "futures-util", - "http 1.4.0", - "jsonwebtoken", - "livekit-protocol", - "livekit-runtime", - "log", - "os_info", - "parking_lot", - "pbjson-types", - "prost", - "rand 0.9.4", - "reqwest 0.12.28", - "rustls-native-certs 0.6.3", - "scopeguard", - "serde", - "serde_json", - "sha2", - "thiserror 2.0.18", - "tokio", - "tokio-rustls 0.24.1", - "tokio-tungstenite", - "url", -] - -[[package]] -name = "livekit-datatrack" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27259f6ba14232601345a1118f3c020d1cfb3b5356e7a79275ed192fdea2ed29" -dependencies = [ - "anyhow", - "bytes", - "from_variants", - "futures-core", - "futures-util", - "livekit-protocol", - "livekit-runtime", - "log", - "rand 0.9.4", - "thiserror 2.0.18", - "tokio", - "tokio-stream", -] - -[[package]] -name = "livekit-protocol" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d080ff1e4806c4b57427db696dc093e1a6817de9500a262167259cf7bab646e" -dependencies = [ - "futures-util", - "livekit-runtime", - "parking_lot", - "pbjson", - "pbjson-types", - "prost", - "serde", - "thiserror 2.0.18", - "tokio", -] - -[[package]] -name = "livekit-runtime" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "532e84c6cdc5fe774f2b5d9912597b5f3bea561927a48296d03e24549d21c3f6" -dependencies = [ - "tokio", - "tokio-stream", -] - -[[package]] -name = "lock_api" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" -dependencies = [ - "scopeguard", -] - -[[package]] -name = "log" -version = "0.4.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" - -[[package]] -name = "loop9" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fae87c125b03c1d2c0150c90365d7d6bcc53fb73a9acaef207d2d065860f062" -dependencies = [ - "imgref", -] - -[[package]] -name = "lru-slab" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" - -[[package]] -name = "mac" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4" - -[[package]] -name = "mac-notification-sys" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29a16783dd1a47849b8c8133c9cd3eb2112cfbc6901670af3dba47c8bbfb07d3" -dependencies = [ - "cc", - "objc2", - "objc2-foundation", - "time", -] - -[[package]] -name = "markup5ever" -version = "0.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7a7213d12e1864c0f002f52c2923d4556935a43dec5e71355c2760e0f6e7a18" -dependencies = [ - "log", - "phf 0.11.3", - "phf_codegen 0.11.3", - "string_cache 0.8.9", - "string_cache_codegen 0.5.4", - "tendril 0.4.3", -] - -[[package]] -name = "markup5ever" -version = "0.38.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8983d30f2915feeaaab2d6babdd6bc7e9ed1a00b66b5e6d74df19aa9c0e91862" -dependencies = [ - "log", - "tendril 0.5.0", - "web_atoms", -] - -[[package]] -name = "match_token" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88a9689d8d44bf9964484516275f5cd4c9b59457a6940c1d5d0ecbb94510a36b" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "matches" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" - -[[package]] -name = "maybe-rayon" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519" -dependencies = [ - "cfg-if", - "rayon", -] - -[[package]] -name = "md-5" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" -dependencies = [ - "cfg-if", - "digest", -] - -[[package]] -name = "memchr" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" - -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - -[[package]] -name = "memoffset" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" -dependencies = [ - "autocfg", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "minisign-verify" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22f9645cb765ea72b8111f36c522475d2daa0d22c957a9826437e97534bc4e9e" - -[[package]] -name = "miniz_oxide" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" -dependencies = [ - "adler2", - "simd-adler32", -] - -[[package]] -name = "mio" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" -dependencies = [ - "libc", - "wasi 0.11.1+wasi-snapshot-preview1", - "windows-sys 0.61.2", -] - -[[package]] -name = "moxcms" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb85c154ba489f01b25c0d36ae69a87e4a1c73a72631fc6c0eb6dde34a73e44b" -dependencies = [ - "num-traits", - "pxfm", -] - -[[package]] -name = "muda" -version = "0.17.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c9fec5a4e89860383d778d10563a605838f8f0b2f9303868937e5ff32e86177" -dependencies = [ - "crossbeam-channel", - "dpi", - "gtk", - "keyboard-types", - "objc2", - "objc2-app-kit", - "objc2-core-foundation", - "objc2-foundation", - "once_cell", - "png 0.17.16", - "serde", - "thiserror 2.0.18", - "windows-sys 0.60.2", -] - -[[package]] -name = "multimap" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d87ecb2933e8aeadb3e3a02b828fed80a7528047e68b4f424523a0981a3a084" - -[[package]] -name = "ndk" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" -dependencies = [ - "bitflags 2.11.1", - "jni-sys 0.3.1", - "log", - "ndk-sys", - "num_enum", - "raw-window-handle", - "thiserror 1.0.69", -] - -[[package]] -name = "ndk-context" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" - -[[package]] -name = "ndk-sys" -version = "0.6.0+11769913" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" -dependencies = [ - "jni-sys 0.3.1", -] - -[[package]] -name = "new_debug_unreachable" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" - -[[package]] -name = "nix" -version = "0.24.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" -dependencies = [ - "bitflags 1.3.2", - "cfg-if", - "libc", - "memoffset 0.6.5", -] - -[[package]] -name = "nix" -version = "0.30.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" -dependencies = [ - "bitflags 2.11.1", - "cfg-if", - "cfg_aliases", - "libc", -] - -[[package]] -name = "no_std_io2" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b51ed7824b6e07d354605f4abb3d9d300350701299da96642ee084f5ce631550" -dependencies = [ - "memchr", -] - -[[package]] -name = "nodrop" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" - -[[package]] -name = "nom" -version = "8.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df9761775871bdef83bee530e60050f7e54b1105350d6884eb0fb4f46c2f9405" -dependencies = [ - "memchr", -] - -[[package]] -name = "noop_proc_macro" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8" - -[[package]] -name = "notify-rust" -version = "4.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c8146c105ae33d744e2d645f684d063b01176a99daf5986556266777b428816" -dependencies = [ - "futures-lite", - "log", - "mac-notification-sys", - "serde", - "tauri-winrt-notification", - "zbus", -] - -[[package]] -name = "ntapi" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3b335231dfd352ffb0f8017f3b6027a4917f7df785ea2143d8af2adc66980ae" -dependencies = [ - "winapi", -] - -[[package]] -name = "num-bigint" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" -dependencies = [ - "num-integer", - "num-traits", -] - -[[package]] -name = "num-bigint-dig" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e661dda6640fad38e827a6d4a310ff4763082116fe217f279885c97f511bb0b7" -dependencies = [ - "lazy_static", - "libm", - "num-integer", - "num-iter", - "num-traits", - "rand 0.8.6", - "smallvec", - "zeroize", -] - -[[package]] -name = "num-conv" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" - -[[package]] -name = "num-derive" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "num-integer" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" -dependencies = [ - "num-bigint", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", - "libm", -] - -[[package]] -name = "num_enum" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d0bca838442ec211fa11de3a8b0e0e8f3a4522575b5c4c06ed722e005036f26" -dependencies = [ - "num_enum_derive", - "rustversion", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8" -dependencies = [ - "proc-macro-crate 3.5.0", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "objc2" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a12a8ed07aefc768292f076dc3ac8c48f3781c8f2d5851dd3d98950e8c5a89f" -dependencies = [ - "objc2-encode", - "objc2-exception-helper", -] - -[[package]] -name = "objc2-app-kit" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c" -dependencies = [ - "bitflags 2.11.1", - "block2", - "objc2", - "objc2-core-foundation", - "objc2-foundation", -] - -[[package]] -name = "objc2-cloud-kit" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73ad74d880bb43877038da939b7427bba67e9dd42004a18b809ba7d87cee241c" -dependencies = [ - "bitflags 2.11.1", - "objc2", - "objc2-foundation", -] - -[[package]] -name = "objc2-core-data" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b402a653efbb5e82ce4df10683b6b28027616a2715e90009947d50b8dd298fa" -dependencies = [ - "objc2", - "objc2-foundation", -] - -[[package]] -name = "objc2-core-foundation" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" -dependencies = [ - "bitflags 2.11.1", - "dispatch2", - "objc2", -] - -[[package]] -name = "objc2-core-graphics" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" -dependencies = [ - "bitflags 2.11.1", - "dispatch2", - "objc2", - "objc2-core-foundation", - "objc2-io-surface", -] - -[[package]] -name = "objc2-core-image" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d563b38d2b97209f8e861173de434bd0214cf020e3423a52624cd1d989f006" -dependencies = [ - "objc2", - "objc2-foundation", -] - -[[package]] -name = "objc2-core-location" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca347214e24bc973fc025fd0d36ebb179ff30536ed1f80252706db19ee452009" -dependencies = [ - "objc2", - "objc2-foundation", -] - -[[package]] -name = "objc2-core-text" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cde0dfb48d25d2b4862161a4d5fcc0e3c24367869ad306b0c9ec0073bfed92d" -dependencies = [ - "bitflags 2.11.1", - "objc2", - "objc2-core-foundation", - "objc2-core-graphics", -] - -[[package]] -name = "objc2-encode" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" - -[[package]] -name = "objc2-exception-helper" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7a1c5fbb72d7735b076bb47b578523aedc40f3c439bea6dfd595c089d79d98a" -dependencies = [ - "cc", -] - -[[package]] -name = "objc2-foundation" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" -dependencies = [ - "bitflags 2.11.1", - "block2", - "libc", - "objc2", - "objc2-core-foundation", -] - -[[package]] -name = "objc2-io-surface" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180788110936d59bab6bd83b6060ffdfffb3b922ba1396b312ae795e1de9d81d" -dependencies = [ - "bitflags 2.11.1", - "objc2", - "objc2-core-foundation", -] - -[[package]] -name = "objc2-osa-kit" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f112d1746737b0da274ef79a23aac283376f335f4095a083a267a082f21db0c0" -dependencies = [ - "bitflags 2.11.1", - "objc2", - "objc2-app-kit", - "objc2-foundation", -] - -[[package]] -name = "objc2-quartz-core" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c1358452b371bf9f104e21ec536d37a650eb10f7ee379fff67d2e08d537f1f" -dependencies = [ - "bitflags 2.11.1", - "objc2", - "objc2-core-foundation", - "objc2-foundation", -] - -[[package]] -name = "objc2-ui-kit" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d87d638e33c06f577498cbcc50491496a3ed4246998a7fbba7ccb98b1e7eab22" -dependencies = [ - "bitflags 2.11.1", - "block2", - "objc2", - "objc2-cloud-kit", - "objc2-core-data", - "objc2-core-foundation", - "objc2-core-graphics", - "objc2-core-image", - "objc2-core-location", - "objc2-core-text", - "objc2-foundation", - "objc2-quartz-core", - "objc2-user-notifications", -] - -[[package]] -name = "objc2-user-notifications" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9df9128cbbfef73cda168416ccf7f837b62737d748333bfe9ab71c245d76613e" -dependencies = [ - "objc2", - "objc2-foundation", -] - -[[package]] -name = "objc2-web-kit" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2e5aaab980c433cf470df9d7af96a7b46a9d892d521a2cbbb2f8a4c16751e7f" -dependencies = [ - "bitflags 2.11.1", - "block2", - "objc2", - "objc2-app-kit", - "objc2-core-foundation", - "objc2-foundation", -] - -[[package]] -name = "once_cell" -version = "1.21.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" - -[[package]] -name = "opaque-debug" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" - -[[package]] -name = "openssl-probe" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" - -[[package]] -name = "openssl-probe" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" - -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - -[[package]] -name = "ordered-stream" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" -dependencies = [ - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "os_info" -version = "3.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4022a17595a00d6a369236fdae483f0de7f0a339960a53118b818238e132224" -dependencies = [ - "android_system_properties", - "log", - "nix 0.30.1", - "objc2", - "objc2-foundation", - "objc2-ui-kit", - "serde", - "windows-sys 0.61.2", -] - -[[package]] -name = "osakit" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "732c71caeaa72c065bb69d7ea08717bd3f4863a4f451402fc9513e29dbd5261b" -dependencies = [ - "objc2", - "objc2-foundation", - "objc2-osa-kit", - "serde", - "serde_json", - "thiserror 2.0.18", -] - -[[package]] -name = "p256" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2", -] - -[[package]] -name = "p384" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe42f1670a52a47d448f14b6a5c61dd78fce51856e68edaa38f7ae3a46b8d6b6" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2", -] - -[[package]] -name = "pango" -version = "0.18.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4" -dependencies = [ - "gio", - "glib 0.18.5", - "libc", - "once_cell", - "pango-sys", -] - -[[package]] -name = "pango-sys" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5" -dependencies = [ - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "parking" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" - -[[package]] -name = "parking_lot" -version = "0.12.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall 0.5.18", - "smallvec", - "windows-link 0.2.1", -] - -[[package]] -name = "password-hash" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "pastey" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35fb2e5f958ec131621fdd531e9fc186ed768cbe395337403ae56c17a74c68ec" - -[[package]] -name = "pbjson" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1030c719b0ec2a2d25a5df729d6cff1acf3cc230bf766f4f97833591f7577b90" -dependencies = [ - "base64 0.21.7", - "serde", -] - -[[package]] -name = "pbjson-build" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2580e33f2292d34be285c5bc3dba5259542b083cfad6037b6d70345f24dcb735" -dependencies = [ - "heck 0.4.1", - "itertools 0.11.0", - "prost", - "prost-types", -] - -[[package]] -name = "pbjson-types" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18f596653ba4ac51bdecbb4ef6773bc7f56042dc13927910de1684ad3d32aa12" -dependencies = [ - "bytes", - "chrono", - "pbjson", - "pbjson-build", - "prost", - "prost-build", - "serde", -] - -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" -dependencies = [ - "digest", - "hmac", - "password-hash", - "sha2", -] - -[[package]] -name = "pbkdf2" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" -dependencies = [ - "digest", - "hmac", -] - -[[package]] -name = "pem-rfc7468" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" -dependencies = [ - "base64ct", -] - -[[package]] -name = "percent-encoding" -version = "2.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" - -[[package]] -name = "petgraph" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" -dependencies = [ - "fixedbitset", - "indexmap 2.14.0", -] - -[[package]] -name = "phf" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12" -dependencies = [ - "phf_shared 0.8.0", -] - -[[package]] -name = "phf" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" -dependencies = [ - "phf_macros 0.10.0", - "phf_shared 0.10.0", - "proc-macro-hack", -] - -[[package]] -name = "phf" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" -dependencies = [ - "phf_macros 0.11.3", - "phf_shared 0.11.3", -] - -[[package]] -name = "phf" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf" -dependencies = [ - "phf_macros 0.13.1", - "phf_shared 0.13.1", - "serde", -] - -[[package]] -name = "phf_codegen" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815" -dependencies = [ - "phf_generator 0.8.0", - "phf_shared 0.8.0", -] - -[[package]] -name = "phf_codegen" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" -dependencies = [ - "phf_generator 0.11.3", - "phf_shared 0.11.3", -] - -[[package]] -name = "phf_codegen" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49aa7f9d80421bca176ca8dbfebe668cc7a2684708594ec9f3c0db0805d5d6e1" -dependencies = [ - "phf_generator 0.13.1", - "phf_shared 0.13.1", -] - -[[package]] -name = "phf_generator" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526" -dependencies = [ - "phf_shared 0.8.0", - "rand 0.7.3", -] - -[[package]] -name = "phf_generator" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6" -dependencies = [ - "phf_shared 0.10.0", - "rand 0.8.6", -] - -[[package]] -name = "phf_generator" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" -dependencies = [ - "phf_shared 0.11.3", - "rand 0.8.6", -] - -[[package]] -name = "phf_generator" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" -dependencies = [ - "fastrand", - "phf_shared 0.13.1", -] - -[[package]] -name = "phf_macros" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0" -dependencies = [ - "phf_generator 0.10.0", - "phf_shared 0.10.0", - "proc-macro-hack", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "phf_macros" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" -dependencies = [ - "phf_generator 0.11.3", - "phf_shared 0.11.3", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "phf_macros" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef" -dependencies = [ - "phf_generator 0.13.1", - "phf_shared 0.13.1", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "phf_shared" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7" -dependencies = [ - "siphasher 0.3.11", -] - -[[package]] -name = "phf_shared" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" -dependencies = [ - "siphasher 0.3.11", -] - -[[package]] -name = "phf_shared" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" -dependencies = [ - "siphasher 1.0.2", -] - -[[package]] -name = "phf_shared" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266" -dependencies = [ - "siphasher 1.0.2", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" - -[[package]] -name = "piper" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c835479a4443ded371d6c535cbfd8d31ad92c5d23ae9770a61bc155e4992a3c1" -dependencies = [ - "atomic-waker", - "fastrand", - "futures-io", -] - -[[package]] -name = "pkcs1" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f" -dependencies = [ - "der", - "pkcs8", - "spki", -] - -[[package]] -name = "pkcs8" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" -dependencies = [ - "der", - "spki", -] - -[[package]] -name = "pkg-config" -version = "0.3.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" - -[[package]] -name = "plain" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" - -[[package]] -name = "plist" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "740ebea15c5d1428f910cd1a5f52cebf8d25006245ed8ade92702f4943d91e07" -dependencies = [ - "base64 0.22.1", - "indexmap 2.14.0", - "quick-xml 0.38.4", - "serde", - "time", -] - -[[package]] -name = "png" -version = "0.17.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526" -dependencies = [ - "bitflags 1.3.2", - "crc32fast", - "fdeflate", - "flate2", - "miniz_oxide", -] - -[[package]] -name = "png" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60769b8b31b2a9f263dae2776c37b1b28ae246943cf719eb6946a1db05128a61" -dependencies = [ - "bitflags 2.11.1", - "crc32fast", - "fdeflate", - "flate2", - "miniz_oxide", -] - -[[package]] -name = "polling" -version = "3.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" -dependencies = [ - "cfg-if", - "concurrent-queue", - "hermit-abi", - "pin-project-lite", - "rustix", - "windows-sys 0.61.2", -] - -[[package]] -name = "poly1305" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" -dependencies = [ - "cpufeatures", - "opaque-debug", - "universal-hash", -] - -[[package]] -name = "polyval" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" -dependencies = [ - "cfg-if", - "cpufeatures", - "opaque-debug", - "universal-hash", -] - -[[package]] -name = "potential_utf" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" -dependencies = [ - "zerovec", -] - -[[package]] -name = "powerfmt" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" - -[[package]] -name = "ppv-lite86" -version = "0.2.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" -dependencies = [ - "zerocopy", -] - -[[package]] -name = "precomputed-hash" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" - -[[package]] -name = "prettyplease" -version = "0.2.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" -dependencies = [ - "proc-macro2", - "syn 2.0.117", -] - -[[package]] -name = "primeorder" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" -dependencies = [ - "elliptic-curve", -] - -[[package]] -name = "proc-macro-crate" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" -dependencies = [ - "once_cell", - "toml_edit 0.19.15", -] - -[[package]] -name = "proc-macro-crate" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24" -dependencies = [ - "toml_datetime 0.6.3", - "toml_edit 0.20.2", -] - -[[package]] -name = "proc-macro-crate" -version = "3.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" -dependencies = [ - "toml_edit 0.25.11+spec-1.1.0", -] - -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn 1.0.109", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - -[[package]] -name = "proc-macro-hack" -version = "0.5.20+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" - -[[package]] -name = "proc-macro2" -version = "1.0.106" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "profiling" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eb8486b569e12e2c32ad3e204dbaba5e4b5b216e9367044f25f1dba42341773" -dependencies = [ - "profiling-procmacros", -] - -[[package]] -name = "profiling-procmacros" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52717f9a02b6965224f95ca2a81e2e0c5c43baacd28ca057577988930b6c3d5b" -dependencies = [ - "quote", - "syn 2.0.117", -] - -[[package]] -name = "prost" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" -dependencies = [ - "bytes", - "prost-derive", -] - -[[package]] -name = "prost-build" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" -dependencies = [ - "bytes", - "heck 0.5.0", - "itertools 0.12.1", - "log", - "multimap", - "once_cell", - "petgraph", - "prettyplease", - "prost", - "prost-types", - "regex", - "syn 2.0.117", - "tempfile", -] - -[[package]] -name = "prost-derive" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" -dependencies = [ - "anyhow", - "itertools 0.12.1", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "prost-types" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" -dependencies = [ - "prost", -] - -[[package]] -name = "ptr_meta" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "pxfm" -version = "0.1.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0c5ccf5294c6ccd63a74f1565028353830a9c2f5eb0c682c355c471726a6e3f" - -[[package]] -name = "qoi" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001" -dependencies = [ - "bytemuck", -] - -[[package]] -name = "quick-error" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3" - -[[package]] -name = "quick-xml" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eff6510e86862b57b210fd8cbe8ed3f0d7d600b9c2863cd4549a2e033c66e956" -dependencies = [ - "memchr", -] - -[[package]] -name = "quick-xml" -version = "0.37.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb" -dependencies = [ - "memchr", -] - -[[package]] -name = "quick-xml" -version = "0.38.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b66c2058c55a409d601666cffe35f04333cf1013010882cec174a7467cd4e21c" -dependencies = [ - "memchr", -] - -[[package]] -name = "quinn" -version = "0.11.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" -dependencies = [ - "bytes", - "cfg_aliases", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash", - "rustls 0.23.38", - "socket2", - "thiserror 2.0.18", - "tokio", - "tracing", - "web-time", -] - -[[package]] -name = "quinn-proto" -version = "0.11.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "434b42fec591c96ef50e21e886936e66d3cc3f737104fdb9b737c40ffb94c098" -dependencies = [ - "bytes", - "getrandom 0.3.4", - "lru-slab", - "rand 0.9.4", - "ring", - "rustc-hash", - "rustls 0.23.38", - "rustls-pki-types", - "slab", - "thiserror 2.0.18", - "tinyvec", - "tracing", - "web-time", -] - -[[package]] -name = "quinn-udp" -version = "0.5.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" -dependencies = [ - "cfg_aliases", - "libc", - "once_cell", - "socket2", - "tracing", - "windows-sys 0.60.2", -] - -[[package]] -name = "quote" -version = "1.0.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "r-efi" -version = "5.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" - -[[package]] -name = "r-efi" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" - -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", - "rand_pcg", -] - -[[package]] -name = "rand" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca0ecfa931c29007047d1bc58e623ab12e5590e8c7cc53200d5202b69266d8a" -dependencies = [ - "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", -] - -[[package]] -name = "rand" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea" -dependencies = [ - "rand_chacha 0.9.0", - "rand_core 0.9.5", -] - -[[package]] -name = "rand_chacha" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_chacha" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" -dependencies = [ - "ppv-lite86", - "rand_core 0.9.5", -] - -[[package]] -name = "rand_core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -dependencies = [ - "getrandom 0.1.16", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom 0.2.17", -] - -[[package]] -name = "rand_core" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" -dependencies = [ - "getrandom 0.3.4", -] - -[[package]] -name = "rand_hc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -dependencies = [ - "rand_core 0.5.1", -] - -[[package]] -name = "rand_pcg" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429" -dependencies = [ - "rand_core 0.5.1", -] - -[[package]] -name = "rav1e" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43b6dd56e85d9483277cde964fd1bdb0428de4fec5ebba7540995639a21cb32b" -dependencies = [ - "aligned-vec", - "arbitrary", - "arg_enum_proc_macro", - "arrayvec", - "av-scenechange", - "av1-grain", - "bitstream-io", - "built", - "cfg-if", - "interpolate_name", - "itertools 0.14.0", - "libc", - "libfuzzer-sys", - "log", - "maybe-rayon", - "new_debug_unreachable", - "noop_proc_macro", - "num-derive", - "num-traits", - "paste", - "profiling", - "rand 0.9.4", - "rand_chacha 0.9.0", - "simd_helpers", - "thiserror 2.0.18", - "v_frame", - "wasm-bindgen", -] - -[[package]] -name = "ravif" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e52310197d971b0f5be7fe6b57530dcd27beb35c1b013f29d66c1ad73fbbcc45" -dependencies = [ - "avif-serialize", - "imgref", - "loop9", - "quick-error", - "rav1e", - "rayon", - "rgb", -] - -[[package]] -name = "raw-window-handle" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" - -[[package]] -name = "rayon" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - -[[package]] -name = "redox_syscall" -version = "0.5.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" -dependencies = [ - "bitflags 2.11.1", -] - -[[package]] -name = "redox_syscall" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f450ad9c3b1da563fb6948a8e0fb0fb9269711c9c73d9ea1de5058c79c8d643a" -dependencies = [ - "bitflags 2.11.1", -] - -[[package]] -name = "redox_users" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" -dependencies = [ - "getrandom 0.2.17", - "libredox", - "thiserror 1.0.69", -] - -[[package]] -name = "redox_users" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" -dependencies = [ - "getrandom 0.2.17", - "libredox", - "thiserror 2.0.18", -] - -[[package]] -name = "ref-cast" -version = "1.0.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" -dependencies = [ - "ref-cast-impl", -] - -[[package]] -name = "ref-cast-impl" -version = "1.0.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "regex" -version = "1.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" - -[[package]] -name = "rend" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" -dependencies = [ - "bytecheck", -] - -[[package]] -name = "reqwest" -version = "0.12.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "http 1.4.0", - "http-body", - "http-body-util", - "hyper", - "hyper-rustls", - "hyper-util", - "js-sys", - "log", - "percent-encoding", - "pin-project-lite", - "quinn", - "rustls 0.23.38", - "rustls-native-certs 0.8.3", - "rustls-pki-types", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper", - "tokio", - "tokio-rustls 0.26.4", - "tower", - "tower-http", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "reqwest" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab3f43e3283ab1488b624b44b0e988d0acea0b3214e694730a055cb6b2efa801" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-core", - "futures-util", - "http 1.4.0", - "http-body", - "http-body-util", - "hyper", - "hyper-rustls", - "hyper-util", - "js-sys", - "log", - "percent-encoding", - "pin-project-lite", - "rustls 0.23.38", - "rustls-pki-types", - "rustls-platform-verifier", - "serde", - "serde_json", - "sync_wrapper", - "tokio", - "tokio-rustls 0.26.4", - "tokio-util", - "tower", - "tower-http", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "wasm-streams", - "web-sys", -] - -[[package]] -name = "rfc6979" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" -dependencies = [ - "hmac", - "subtle", -] - -[[package]] -name = "rgb" -version = "0.8.53" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47b34b781b31e5d73e9fbc8689c70551fd1ade9a19e3e28cfec8580a79290cc4" - -[[package]] -name = "ring" -version = "0.17.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" -dependencies = [ - "cc", - "cfg-if", - "getrandom 0.2.17", - "libc", - "untrusted", - "windows-sys 0.52.0", -] - -[[package]] -name = "rkyv" -version = "0.7.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2297bf9c81a3f0dc96bc9521370b88f054168c29826a75e89c55ff196e7ed6a1" -dependencies = [ - "bitvec", - "bytecheck", - "bytes", - "hashbrown 0.12.3", - "ptr_meta", - "rend", - "rkyv_derive", - "seahash", - "tinyvec", - "uuid", -] - -[[package]] -name = "rkyv_derive" -version = "0.7.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d7b42d4b8d06048d3ac8db0eb31bcb942cbeb709f0b5f2b2ebde398d3038f5" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "rle-decode-fast" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422" - -[[package]] -name = "rsa" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d" -dependencies = [ - "const-oid", - "digest", - "num-bigint-dig", - "num-integer", - "num-traits", - "pkcs1", - "pkcs8", - "rand_core 0.6.4", - "signature", - "spki", - "subtle", - "zeroize", -] - -[[package]] -name = "rtrb" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7204ed6420f698836b76d4d5c2ec5dec7585fd5c3a788fd1cde855d1de598239" - -[[package]] -name = "rust-argon2" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b50162d19404029c1ceca6f6980fe40d45c8b369f6f44446fa14bb39573b5bb9" -dependencies = [ - "base64 0.13.1", - "blake2b_simd", - "constant_time_eq 0.1.5", - "crossbeam-utils", -] - -[[package]] -name = "rust-argon2" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d9848531d60c9cbbcf9d166c885316c24bc0e2a9d3eba0956bb6cbbd79bc6e8" -dependencies = [ - "base64 0.21.7", - "blake2b_simd", - "constant_time_eq 0.3.1", -] - -[[package]] -name = "rust_decimal" -version = "1.41.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ce901f9a19d251159075a4c37af514c3b8ef99c22e02dd8c19161cf397ee94a" -dependencies = [ - "arrayvec", - "borsh", - "bytes", - "num-traits", - "rand 0.8.6", - "rkyv", - "serde", - "serde_json", - "wasm-bindgen", -] - -[[package]] -name = "rustc-hash" -version = "2.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" - -[[package]] -name = "rustc_version" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" -dependencies = [ - "semver", -] - -[[package]] -name = "rustix" -version = "1.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" -dependencies = [ - "bitflags 2.11.1", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.61.2", -] - -[[package]] -name = "rustls" -version = "0.21.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" -dependencies = [ - "log", - "ring", - "rustls-webpki 0.101.7", - "sct", -] - -[[package]] -name = "rustls" -version = "0.23.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f9466fb2c14ea04357e91413efb882e2a6d4a406e625449bc0a5d360d53a21" -dependencies = [ - "once_cell", - "ring", - "rustls-pki-types", - "rustls-webpki 0.103.12", - "subtle", - "zeroize", -] - -[[package]] -name = "rustls-native-certs" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" -dependencies = [ - "openssl-probe 0.1.6", - "rustls-pemfile", - "schannel", - "security-framework 2.11.1", -] - -[[package]] -name = "rustls-native-certs" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" -dependencies = [ - "openssl-probe 0.2.1", - "rustls-pki-types", - "schannel", - "security-framework 3.7.0", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64 0.21.7", -] - -[[package]] -name = "rustls-pki-types" -version = "1.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd" -dependencies = [ - "web-time", - "zeroize", -] - -[[package]] -name = "rustls-platform-verifier" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784" -dependencies = [ - "core-foundation 0.10.1", - "core-foundation-sys", - "jni", - "log", - "once_cell", - "rustls 0.23.38", - "rustls-native-certs 0.8.3", - "rustls-platform-verifier-android", - "rustls-webpki 0.103.12", - "security-framework 3.7.0", - "security-framework-sys", - "webpki-root-certs", - "windows-sys 0.61.2", -] - -[[package]] -name = "rustls-platform-verifier-android" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" - -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "rustls-webpki" -version = "0.103.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8279bb85272c9f10811ae6a6c547ff594d6a7f3c6c6b02ee9726d1d0dcfcdd06" -dependencies = [ - "ring", - "rustls-pki-types", - "untrusted", -] - -[[package]] -name = "rustversion" -version = "1.0.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" - -[[package]] -name = "ryu" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" - -[[package]] -name = "salsa20" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" -dependencies = [ - "cipher", -] - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "schannel" -version = "0.1.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939" -dependencies = [ - "windows-sys 0.61.2", -] - -[[package]] -name = "schemars" -version = "0.8.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" -dependencies = [ - "dyn-clone", - "indexmap 1.9.3", - "schemars_derive", - "serde", - "serde_json", - "url", - "uuid", -] - -[[package]] -name = "schemars" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" -dependencies = [ - "dyn-clone", - "ref-cast", - "serde", - "serde_json", -] - -[[package]] -name = "schemars" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2b42f36aa1cd011945615b92222f6bf73c599a102a300334cd7f8dbeec726cc" -dependencies = [ - "dyn-clone", - "ref-cast", - "serde", - "serde_json", -] - -[[package]] -name = "schemars_derive" -version = "0.8.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" -dependencies = [ - "proc-macro2", - "quote", - "serde_derive_internals", - "syn 2.0.117", -] - -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - -[[package]] -name = "scratch" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d68f2ec51b097e4c1a75b681a8bec621909b5e91f15bb7b840c4f2f7b01148b2" - -[[package]] -name = "scrypt" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" -dependencies = [ - "pbkdf2 0.12.2", - "salsa20", - "sha2", -] - -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring", - "untrusted", -] - -[[package]] -name = "seahash" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" - -[[package]] -name = "sec1" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" -dependencies = [ - "base16ct", - "der", - "generic-array", - "pkcs8", - "subtle", - "zeroize", -] - -[[package]] -name = "security-framework" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" -dependencies = [ - "bitflags 2.11.1", - "core-foundation 0.9.4", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework" -version = "3.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" -dependencies = [ - "bitflags 2.11.1", - "core-foundation 0.10.1", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce2691df843ecc5d231c0b14ece2acc3efb62c0a398c7e1d875f3983ce020e3" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "selectors" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c37578180969d00692904465fb7f6b3d50b9a2b952b87c23d0e2e5cb5013416" -dependencies = [ - "bitflags 1.3.2", - "cssparser 0.29.6", - "derive_more 0.99.20", - "fxhash", - "log", - "phf 0.8.0", - "phf_codegen 0.8.0", - "precomputed-hash", - "servo_arc 0.2.0", - "smallvec", -] - -[[package]] -name = "selectors" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5d9c0c92a92d33f08817311cf3f2c29a3538a8240e94a6a3c622ce652d7e00c" -dependencies = [ - "bitflags 2.11.1", - "cssparser 0.36.0", - "derive_more 2.1.1", - "log", - "new_debug_unreachable", - "phf 0.13.1", - "phf_codegen 0.13.1", - "precomputed-hash", - "rustc-hash", - "servo_arc 0.4.3", - "smallvec", -] - -[[package]] -name = "semver" -version = "1.0.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" -dependencies = [ - "serde", - "serde_core", -] - -[[package]] -name = "serde" -version = "1.0.228" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" -dependencies = [ - "serde_core", - "serde_derive", -] - -[[package]] -name = "serde-untagged" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9faf48a4a2d2693be24c6289dbe26552776eb7737074e6722891fadbe6c5058" -dependencies = [ - "erased-serde", - "serde", - "serde_core", - "typeid", -] - -[[package]] -name = "serde_core" -version = "1.0.228" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.228" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "serde_derive_internals" -version = "0.29.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "serde_json" -version = "1.0.149" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" -dependencies = [ - "itoa", - "memchr", - "serde", - "serde_core", - "zmij", -] - -[[package]] -name = "serde_repr" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "serde_spanned" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_spanned" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" -dependencies = [ - "serde_core", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_with" -version = "3.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd5414fad8e6907dbdd5bc441a50ae8d6e26151a03b1de04d89a5576de61d01f" -dependencies = [ - "base64 0.22.1", - "chrono", - "hex", - "indexmap 1.9.3", - "indexmap 2.14.0", - "schemars 0.9.0", - "schemars 1.2.1", - "serde_core", - "serde_json", - "serde_with_macros", - "time", -] - -[[package]] -name = "serde_with_macros" -version = "3.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3db8978e608f1fe7357e211969fd9abdcae80bac1ba7a3369bb7eb6b404eb65" -dependencies = [ - "darling 0.23.0", - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "serialize-to-javascript" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04f3666a07a197cdb77cdf306c32be9b7f598d7060d50cfd4d5aa04bfd92f6c5" -dependencies = [ - "serde", - "serde_json", - "serialize-to-javascript-impl", -] - -[[package]] -name = "serialize-to-javascript-impl" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "772ee033c0916d670af7860b6e1ef7d658a4629a6d0b4c8c3e67f09b3765b75d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "servo_arc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52aa42f8fdf0fed91e5ce7f23d8138441002fa31dca008acf47e6fd4721f741" -dependencies = [ - "nodrop", - "stable_deref_trait", -] - -[[package]] -name = "servo_arc" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "170fb83ab34de17dc69aa7c67482b22218ddb85da56546f9bd6b929e32a05930" -dependencies = [ - "stable_deref_trait", -] - -[[package]] -name = "sha1" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "sha2" -version = "0.10.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest", -] - -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - -[[package]] -name = "signal-hook-registry" -version = "1.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" -dependencies = [ - "errno", - "libc", -] - -[[package]] -name = "signature" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -dependencies = [ - "digest", - "rand_core 0.6.4", -] - -[[package]] -name = "simd-adler32" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" - -[[package]] -name = "simd_helpers" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95890f873bec569a0362c235787f3aca6e1e887302ba4840839bcc6459c42da6" -dependencies = [ - "quote", -] - -[[package]] -name = "simdutf8" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" - -[[package]] -name = "siphasher" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" - -[[package]] -name = "siphasher" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" - -[[package]] -name = "slab" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" - -[[package]] -name = "smallvec" -version = "1.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" -dependencies = [ - "serde", -] - -[[package]] -name = "socket2" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e" -dependencies = [ - "libc", - "windows-sys 0.61.2", -] - -[[package]] -name = "softbuffer" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aac18da81ebbf05109ab275b157c22a653bb3c12cf884450179942f81bcbf6c3" -dependencies = [ - "bytemuck", - "js-sys", - "ndk", - "objc2", - "objc2-core-foundation", - "objc2-core-graphics", - "objc2-foundation", - "objc2-quartz-core", - "raw-window-handle", - "redox_syscall 0.5.18", - "tracing", - "wasm-bindgen", - "web-sys", - "windows-sys 0.61.2", -] - -[[package]] -name = "soup3" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "471f924a40f31251afc77450e781cb26d55c0b650842efafc9c6cbd2f7cc4f9f" -dependencies = [ - "futures-channel", - "gio", - "glib 0.18.5", - "libc", - "soup3-sys", -] - -[[package]] -name = "soup3-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ebe8950a680a12f24f15ebe1bf70db7af98ad242d9db43596ad3108aab86c27" -dependencies = [ - "gio-sys 0.18.1", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "libc", - "system-deps 6.2.2", -] - -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" -dependencies = [ - "lock_api", -] - -[[package]] -name = "spki" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" -dependencies = [ - "base64ct", - "der", -] - -[[package]] -name = "sqlx" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fefb893899429669dcdd979aff487bd78f4064e5e7907e4269081e0ef7d97dc" -dependencies = [ - "sqlx-core", - "sqlx-macros", - "sqlx-mysql", - "sqlx-postgres", - "sqlx-sqlite", -] - -[[package]] -name = "sqlx-core" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee6798b1838b6a0f69c007c133b8df5866302197e404e8b6ee8ed3e3a5e68dc6" -dependencies = [ - "base64 0.22.1", - "bytes", - "crc", - "crossbeam-queue", - "either", - "event-listener", - "futures-core", - "futures-intrusive", - "futures-io", - "futures-util", - "hashbrown 0.15.5", - "hashlink", - "indexmap 2.14.0", - "log", - "memchr", - "once_cell", - "percent-encoding", - "rust_decimal", - "serde", - "serde_json", - "sha2", - "smallvec", - "thiserror 2.0.18", - "time", - "tokio", - "tokio-stream", - "tracing", - "url", - "uuid", -] - -[[package]] -name = "sqlx-macros" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2d452988ccaacfbf5e0bdbc348fb91d7c8af5bee192173ac3636b5fb6e6715d" -dependencies = [ - "proc-macro2", - "quote", - "sqlx-core", - "sqlx-macros-core", - "syn 2.0.117", -] - -[[package]] -name = "sqlx-macros-core" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19a9c1841124ac5a61741f96e1d9e2ec77424bf323962dd894bdb93f37d5219b" -dependencies = [ - "dotenvy", - "either", - "heck 0.5.0", - "hex", - "once_cell", - "proc-macro2", - "quote", - "serde", - "serde_json", - "sha2", - "sqlx-core", - "sqlx-mysql", - "sqlx-postgres", - "sqlx-sqlite", - "syn 2.0.117", - "tokio", - "url", -] - -[[package]] -name = "sqlx-mysql" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa003f0038df784eb8fecbbac13affe3da23b45194bd57dba231c8f48199c526" -dependencies = [ - "atoi", - "base64 0.22.1", - "bitflags 2.11.1", - "byteorder", - "bytes", - "crc", - "digest", - "dotenvy", - "either", - "futures-channel", - "futures-core", - "futures-io", - "futures-util", - "generic-array", - "hex", - "hkdf", - "hmac", - "itoa", - "log", - "md-5", - "memchr", - "once_cell", - "percent-encoding", - "rand 0.8.6", - "rsa", - "rust_decimal", - "serde", - "sha1", - "sha2", - "smallvec", - "sqlx-core", - "stringprep", - "thiserror 2.0.18", - "time", - "tracing", - "uuid", - "whoami", -] - -[[package]] -name = "sqlx-postgres" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db58fcd5a53cf07c184b154801ff91347e4c30d17a3562a635ff028ad5deda46" -dependencies = [ - "atoi", - "base64 0.22.1", - "bitflags 2.11.1", - "byteorder", - "crc", - "dotenvy", - "etcetera", - "futures-channel", - "futures-core", - "futures-util", - "hex", - "hkdf", - "hmac", - "home", - "itoa", - "log", - "md-5", - "memchr", - "once_cell", - "rand 0.8.6", - "rust_decimal", - "serde", - "serde_json", - "sha2", - "smallvec", - "sqlx-core", - "stringprep", - "thiserror 2.0.18", - "time", - "tracing", - "uuid", - "whoami", -] - -[[package]] -name = "sqlx-sqlite" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2d12fe70b2c1b4401038055f90f151b78208de1f9f89a7dbfd41587a10c3eea" -dependencies = [ - "atoi", - "flume", - "futures-channel", - "futures-core", - "futures-executor", - "futures-intrusive", - "futures-util", - "libsqlite3-sys", - "log", - "percent-encoding", - "serde", - "serde_urlencoded", - "sqlx-core", - "thiserror 2.0.18", - "time", - "tracing", - "url", - "uuid", -] - -[[package]] -name = "stable_deref_trait" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" - -[[package]] -name = "string_cache" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" -dependencies = [ - "new_debug_unreachable", - "parking_lot", - "phf_shared 0.11.3", - "precomputed-hash", - "serde", -] - -[[package]] -name = "string_cache" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18596f8c785a729f2819c0f6a7eae6ebeebdfffbfe4214ae6b087f690e31901" -dependencies = [ - "new_debug_unreachable", - "parking_lot", - "phf_shared 0.13.1", - "precomputed-hash", -] - -[[package]] -name = "string_cache_codegen" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c711928715f1fe0fe509c53b43e993a9a557babc2d0a3567d0a3006f1ac931a0" -dependencies = [ - "phf_generator 0.11.3", - "phf_shared 0.11.3", - "proc-macro2", - "quote", -] - -[[package]] -name = "string_cache_codegen" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585635e46db231059f76c5849798146164652513eb9e8ab2685939dd90f29b69" -dependencies = [ - "phf_generator 0.13.1", - "phf_shared 0.13.1", - "proc-macro2", - "quote", -] - -[[package]] -name = "stringprep" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b4df3d392d81bd458a8a621b8bffbd2302a12ffe288a9d931670948749463b1" -dependencies = [ - "unicode-bidi", - "unicode-normalization", - "unicode-properties", -] - -[[package]] -name = "stronghold-derive" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2835db23c4724c05a2f85b81c4681f4aa8ea158edc8a7f4ad791c916fb766c2e" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "stronghold-runtime" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18db7cc51450cefdab5f4990e128dd02c98da6d2992b93ffef8992ac0d2f3ddf" -dependencies = [ - "dirs 4.0.0", - "iota-crypto", - "libc", - "libsodium-sys-stable", - "log", - "nix 0.24.3", - "rand 0.8.6", - "serde", - "thiserror 1.0.69", - "windows 0.36.1", - "zeroize", -] - -[[package]] -name = "stronghold-utils" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8300214898af5e153e7f66e49dbd1c6a21585f2d592d9f24f58b969792475ed6" -dependencies = [ - "rand 0.8.6", - "stronghold-derive", -] - -[[package]] -name = "stronghold_engine" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd7371c42e557dd71a7f860bb2ec6b6fdb32f97a97987ccc2435fdd1f3a8615" -dependencies = [ - "anyhow", - "dirs-next", - "hex", - "iota-crypto", - "once_cell", - "paste", - "serde", - "stronghold-runtime", - "thiserror 1.0.69", - "zeroize", -] - -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - -[[package]] -name = "subtle" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" - -[[package]] -name = "swift-rs" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4057c98e2e852d51fdcfca832aac7b571f6b351ad159f9eda5db1655f8d0c4d7" -dependencies = [ - "base64 0.21.7", - "serde", - "serde_json", -] - -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.117" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "sync_wrapper" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" -dependencies = [ - "futures-core", -] - -[[package]] -name = "synstructure" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "sysinfo" -version = "0.32.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c33cd241af0f2e9e3b5c32163b873b29956890b5342e6745b917ce9d490f4af" -dependencies = [ - "core-foundation-sys", - "libc", - "memchr", - "ntapi", - "rayon", - "windows 0.57.0", -] - -[[package]] -name = "system-deps" -version = "6.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" -dependencies = [ - "cfg-expr 0.15.8", - "heck 0.5.0", - "pkg-config", - "toml 0.8.2", - "version-compare", -] - -[[package]] -name = "system-deps" -version = "7.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "396a35feb67335377e0251fcbc1092fc85c484bd4e3a7a54319399da127796e7" -dependencies = [ - "cfg-expr 0.20.7", - "heck 0.5.0", - "pkg-config", - "toml 1.1.2+spec-1.1.0", - "version-compare", -] - -[[package]] -name = "tao" -version = "0.34.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9103edf55f2da3c82aea4c7fab7c4241032bfeea0e71fa557d98e00e7ce7cc20" -dependencies = [ - "bitflags 2.11.1", - "block2", - "core-foundation 0.10.1", - "core-graphics 0.25.0", - "crossbeam-channel", - "dispatch2", - "dlopen2", - "dpi", - "gdkwayland-sys", - "gdkx11-sys", - "gtk", - "jni", - "libc", - "log", - "ndk", - "ndk-context", - "ndk-sys", - "objc2", - "objc2-app-kit", - "objc2-foundation", - "once_cell", - "parking_lot", - "raw-window-handle", - "tao-macros", - "unicode-segmentation", - "url", - "windows 0.61.3", - "windows-core 0.61.2", - "windows-version", - "x11-dl", -] - -[[package]] -name = "tao-macros" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4e16beb8b2ac17db28eab8bca40e62dbfbb34c0fcdc6d9826b11b7b5d047dfd" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] -name = "tar" -version = "0.4.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22692a6476a21fa75fdfc11d452fda482af402c008cdbaf3476414e122040973" -dependencies = [ - "filetime", - "libc", - "xattr", -] - -[[package]] -name = "target-lexicon" -version = "0.12.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" - -[[package]] -name = "target-lexicon" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c" - -[[package]] -name = "tauri" -version = "2.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da77cc00fb9028caf5b5d4650f75e31f1ef3693459dfca7f7e506d1ecef0ba2d" -dependencies = [ - "anyhow", - "bytes", - "cookie", - "dirs 6.0.0", - "dunce", - "embed_plist", - "getrandom 0.3.4", - "glob", - "gtk", - "heck 0.5.0", - "http 1.4.0", - "jni", - "libc", - "log", - "mime", - "muda", - "objc2", - "objc2-app-kit", - "objc2-foundation", - "objc2-ui-kit", - "objc2-web-kit", - "percent-encoding", - "plist", - "raw-window-handle", - "reqwest 0.13.2", - "serde", - "serde_json", - "serde_repr", - "serialize-to-javascript", - "swift-rs", - "tauri-build", - "tauri-macros", - "tauri-runtime", - "tauri-runtime-wry", - "tauri-utils", - "thiserror 2.0.18", - "tokio", - "tray-icon", - "url", - "webkit2gtk", - "webview2-com", - "window-vibrancy", - "windows 0.61.3", -] - -[[package]] -name = "tauri-build" -version = "2.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bbc990d1dbf57a8e1c7fa2327f2a614d8b757805603c1b9ba5c81bade09fd4d" -dependencies = [ - "anyhow", - "cargo_toml", - "dirs 6.0.0", - "glob", - "heck 0.5.0", - "json-patch", - "schemars 0.8.22", - "semver", - "serde", - "serde_json", - "tauri-utils", - "tauri-winres", - "toml 0.9.12+spec-1.1.0", - "walkdir", -] - -[[package]] -name = "tauri-codegen" -version = "2.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4a24476afd977c5d5d169f72425868613d82747916dd29e0a357c84c4bd6d29" -dependencies = [ - "base64 0.22.1", - "brotli", - "ico", - "json-patch", - "plist", - "png 0.17.16", - "proc-macro2", - "quote", - "semver", - "serde", - "serde_json", - "sha2", - "syn 2.0.117", - "tauri-utils", - "thiserror 2.0.18", - "time", - "url", - "uuid", - "walkdir", -] - -[[package]] -name = "tauri-macros" -version = "2.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d39b349a98dadaffebb73f0a40dcd1f23c999211e5a2e744403db384d0c33de7" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "syn 2.0.117", - "tauri-codegen", - "tauri-utils", -] - -[[package]] -name = "tauri-plugin" -version = "2.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddde7d51c907b940fb573006cdda9a642d6a7c8153657e88f8a5c3c9290cd4aa" -dependencies = [ - "anyhow", - "glob", - "plist", - "schemars 0.8.22", - "serde", - "serde_json", - "tauri-utils", - "toml 0.9.12+spec-1.1.0", - "walkdir", -] - -[[package]] -name = "tauri-plugin-fs" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36e1ec28b79f3d0683f4507e1615c36292c0ea6716668770d4396b9b39871ed8" -dependencies = [ - "anyhow", - "dunce", - "glob", - "log", - "objc2-foundation", - "percent-encoding", - "schemars 0.8.22", - "serde", - "serde_json", - "serde_repr", - "tauri", - "tauri-plugin", - "tauri-utils", - "thiserror 2.0.18", - "toml 0.9.12+spec-1.1.0", - "url", -] - -[[package]] -name = "tauri-plugin-global-shortcut" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "424af23c7e88d05e4a1a6fc2c7be077912f8c76bd7900fd50aa2b7cbf5a2c405" -dependencies = [ - "global-hotkey", - "log", - "serde", - "serde_json", - "tauri", - "tauri-plugin", - "thiserror 2.0.18", -] - -[[package]] -name = "tauri-plugin-notification" -version = "2.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fc2c5ff41105bd1f7242d8201fdf3efd70749b82fa013a17f2126357d194cc" -dependencies = [ - "log", - "notify-rust", - "rand 0.9.4", - "serde", - "serde_json", - "serde_repr", - "tauri", - "tauri-plugin", - "thiserror 2.0.18", - "time", - "url", -] - -[[package]] -name = "tauri-plugin-sql" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbbdb4f17a7984ef0aa425b11e543a44d11f2fddbdee3fc61970091f8adfb914" -dependencies = [ - "futures-core", - "indexmap 2.14.0", - "log", - "rust_decimal", - "serde", - "serde_json", - "sqlx", - "tauri", - "tauri-plugin", - "thiserror 2.0.18", - "time", - "tokio", - "uuid", -] - -[[package]] -name = "tauri-plugin-stronghold" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6307f47fcf548531743f6f12dbde075014bd8a22c5f8c14201e571de52cbd057" -dependencies = [ - "hex", - "iota-crypto", - "iota_stronghold", - "log", - "rand_chacha 0.9.0", - "rand_core 0.9.5", - "rust-argon2 2.1.0", - "serde", - "serde_json", - "tauri", - "tauri-plugin", - "thiserror 2.0.18", - "zeroize", -] - -[[package]] -name = "tauri-plugin-updater" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "806d9dac662c2e4594ff03c647a552f2c9bd544e7d0f683ec58f872f952ce4af" -dependencies = [ - "base64 0.22.1", - "dirs 6.0.0", - "flate2", - "futures-util", - "http 1.4.0", - "infer", - "log", - "minisign-verify", - "osakit", - "percent-encoding", - "reqwest 0.13.2", - "rustls 0.23.38", - "semver", - "serde", - "serde_json", - "tar", - "tauri", - "tauri-plugin", - "tempfile", - "thiserror 2.0.18", - "time", - "tokio", - "url", - "windows-sys 0.60.2", - "zip 4.6.1", -] - -[[package]] -name = "tauri-plugin-window-state" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73736611e14142408d15353e21e3cca2f12a3cfb523ad0ce85999b6d2ef1a704" -dependencies = [ - "bitflags 2.11.1", - "log", - "serde", - "serde_json", - "tauri", - "tauri-plugin", - "thiserror 2.0.18", -] - -[[package]] -name = "tauri-runtime" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2826d79a3297ed08cd6ea7f412644ef58e32969504bc4fbd8d7dbeabc4445ea2" -dependencies = [ - "cookie", - "dpi", - "gtk", - "http 1.4.0", - "jni", - "objc2", - "objc2-ui-kit", - "objc2-web-kit", - "raw-window-handle", - "serde", - "serde_json", - "tauri-utils", - "thiserror 2.0.18", - "url", - "webkit2gtk", - "webview2-com", - "windows 0.61.3", -] - -[[package]] -name = "tauri-runtime-wry" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e11ea2e6f801d275fdd890d6c9603736012742a1c33b96d0db788c9cdebf7f9e" -dependencies = [ - "gtk", - "http 1.4.0", - "jni", - "log", - "objc2", - "objc2-app-kit", - "once_cell", - "percent-encoding", - "raw-window-handle", - "softbuffer", - "tao", - "tauri-runtime", - "tauri-utils", - "url", - "webkit2gtk", - "webview2-com", - "windows 0.61.3", - "wry", -] - -[[package]] -name = "tauri-utils" -version = "2.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219a1f983a2af3653f75b5747f76733b0da7ff03069c7a41901a5eb3ace4557d" -dependencies = [ - "anyhow", - "brotli", - "cargo_metadata", - "ctor", - "dunce", - "glob", - "html5ever 0.29.1", - "http 1.4.0", - "infer", - "json-patch", - "kuchikiki", - "log", - "memchr", - "phf 0.11.3", - "proc-macro2", - "quote", - "regex", - "schemars 0.8.22", - "semver", - "serde", - "serde-untagged", - "serde_json", - "serde_with", - "swift-rs", - "thiserror 2.0.18", - "toml 0.9.12+spec-1.1.0", - "url", - "urlpattern", - "uuid", - "walkdir", -] - -[[package]] -name = "tauri-winres" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1087b111fe2b005e42dbdc1990fc18593234238d47453b0c99b7de1c9ab2c1e0" -dependencies = [ - "dunce", - "embed-resource", - "toml 0.9.12+spec-1.1.0", -] - -[[package]] -name = "tauri-winrt-notification" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b1e66e07de489fe43a46678dd0b8df65e0c973909df1b60ba33874e297ba9b9" -dependencies = [ - "quick-xml 0.37.5", - "thiserror 2.0.18", - "windows 0.61.3", - "windows-version", -] - -[[package]] -name = "tempfile" -version = "3.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" -dependencies = [ - "fastrand", - "getrandom 0.4.2", - "once_cell", - "rustix", - "windows-sys 0.61.2", -] - -[[package]] -name = "tendril" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0" -dependencies = [ - "futf", - "mac", - "utf-8", -] - -[[package]] -name = "tendril" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4790fc369d5a530f4b544b094e31388b9b3a37c0f4652ade4505945f5660d24" -dependencies = [ - "new_debug_unreachable", - "utf-8", -] - -[[package]] -name = "termcolor" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "thiserror" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" -dependencies = [ - "thiserror-impl 1.0.69", -] - -[[package]] -name = "thiserror" -version = "2.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" -dependencies = [ - "thiserror-impl 2.0.18", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "thiserror-impl" -version = "2.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "tiff" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b63feaf3343d35b6ca4d50483f94843803b0f51634937cc2ec519fc32232bc52" -dependencies = [ - "fax", - "flate2", - "half", - "quick-error", - "weezl", - "zune-jpeg", -] - -[[package]] -name = "time" -version = "0.3.47" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c" -dependencies = [ - "deranged", - "itoa", - "num-conv", - "powerfmt", - "serde_core", - "time-core", - "time-macros", -] - -[[package]] -name = "time-core" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca" - -[[package]] -name = "time-macros" -version = "0.2.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215" -dependencies = [ - "num-conv", - "time-core", -] - -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - -[[package]] -name = "tinystr" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" -dependencies = [ - "displaydoc", - "zerovec", -] - -[[package]] -name = "tinyvec" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - -[[package]] -name = "tokio" -version = "1.52.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67dee974fe86fd92cc45b7a95fdd2f99a36a6d7b0d431a231178d3d670bbcc6" -dependencies = [ - "bytes", - "libc", - "mio", - "pin-project-lite", - "signal-hook-registry", - "socket2", - "tokio-macros", - "windows-sys 0.61.2", -] - -[[package]] -name = "tokio-macros" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls 0.21.12", - "tokio", -] - -[[package]] -name = "tokio-rustls" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" -dependencies = [ - "rustls 0.23.38", - "tokio", -] - -[[package]] -name = "tokio-stream" -version = "0.1.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", - "tokio-util", -] - -[[package]] -name = "tokio-tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" -dependencies = [ - "futures-util", - "log", - "rustls 0.21.12", - "rustls-native-certs 0.6.3", - "tokio", - "tokio-rustls 0.24.1", - "tungstenite", -] - -[[package]] -name = "tokio-util" -version = "0.7.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "toml" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d" -dependencies = [ - "serde", - "serde_spanned 0.6.9", - "toml_datetime 0.6.3", - "toml_edit 0.20.2", -] - -[[package]] -name = "toml" -version = "0.9.12+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863" -dependencies = [ - "indexmap 2.14.0", - "serde_core", - "serde_spanned 1.1.1", - "toml_datetime 0.7.5+spec-1.1.0", - "toml_parser", - "toml_writer", - "winnow 0.7.15", -] - -[[package]] -name = "toml" -version = "1.1.2+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81f3d15e84cbcd896376e6730314d59fb5a87f31e4b038454184435cd57defee" -dependencies = [ - "indexmap 2.14.0", - "serde_core", - "serde_spanned 1.1.1", - "toml_datetime 1.1.1+spec-1.1.0", - "toml_parser", - "toml_writer", - "winnow 1.0.1", -] - -[[package]] -name = "toml_datetime" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" -dependencies = [ - "serde", -] - -[[package]] -name = "toml_datetime" -version = "0.7.5+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" -dependencies = [ - "serde_core", -] - -[[package]] -name = "toml_datetime" -version = "1.1.1+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" -dependencies = [ - "serde_core", -] - -[[package]] -name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap 2.14.0", - "toml_datetime 0.6.3", - "winnow 0.5.40", -] - -[[package]] -name = "toml_edit" -version = "0.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" -dependencies = [ - "indexmap 2.14.0", - "serde", - "serde_spanned 0.6.9", - "toml_datetime 0.6.3", - "winnow 0.5.40", -] - -[[package]] -name = "toml_edit" -version = "0.25.11+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b59c4d22ed448339746c59b905d24568fcbb3ab65a500494f7b8c3e97739f2b" -dependencies = [ - "indexmap 2.14.0", - "toml_datetime 1.1.1+spec-1.1.0", - "toml_parser", - "winnow 1.0.1", -] - -[[package]] -name = "toml_parser" -version = "1.1.2+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" -dependencies = [ - "winnow 1.0.1", -] - -[[package]] -name = "toml_writer" -version = "1.1.1+spec-1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" - -[[package]] -name = "tower" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" -dependencies = [ - "futures-core", - "futures-util", - "pin-project-lite", - "sync_wrapper", - "tokio", - "tower-layer", - "tower-service", -] - -[[package]] -name = "tower-http" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" -dependencies = [ - "bitflags 2.11.1", - "bytes", - "futures-util", - "http 1.4.0", - "http-body", - "iri-string", - "pin-project-lite", - "tower", - "tower-layer", - "tower-service", -] - -[[package]] -name = "tower-layer" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" - -[[package]] -name = "tower-service" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" - -[[package]] -name = "tracing" -version = "0.1.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" -dependencies = [ - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "tracing-core" -version = "0.1.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" -dependencies = [ - "once_cell", -] - -[[package]] -name = "tray-icon" -version = "0.21.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e85aa143ceb072062fc4d6356c1b520a51d636e7bc8e77ec94be3608e5e80c" -dependencies = [ - "crossbeam-channel", - "dirs 6.0.0", - "libappindicator", - "muda", - "objc2", - "objc2-app-kit", - "objc2-core-foundation", - "objc2-core-graphics", - "objc2-foundation", - "once_cell", - "png 0.17.16", - "serde", - "thiserror 2.0.18", - "windows-sys 0.60.2", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9" -dependencies = [ - "byteorder", - "bytes", - "data-encoding", - "http 0.2.12", - "httparse", - "log", - "rand 0.8.6", - "rustls 0.21.12", - "sha1", - "thiserror 1.0.69", - "url", - "utf-8", -] - -[[package]] -name = "typed-path" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e28f89b80c87b8fb0cf04ab448d5dd0dd0ade2f8891bae878de66a75a28600e" - -[[package]] -name = "typeid" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" - -[[package]] -name = "typenum" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" - -[[package]] -name = "uds_windows" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f6fb2847f6742cd76af783a2a2c49e9375d0a111c7bef6f71cd9e738c72d6e" -dependencies = [ - "memoffset 0.9.1", - "tempfile", - "windows-sys 0.61.2", -] - -[[package]] -name = "unic-char-property" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221" -dependencies = [ - "unic-char-range", -] - -[[package]] -name = "unic-char-range" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc" - -[[package]] -name = "unic-common" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc" - -[[package]] -name = "unic-ucd-ident" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e230a37c0381caa9219d67cf063aa3a375ffed5bf541a452db16e744bdab6987" -dependencies = [ - "unic-char-property", - "unic-char-range", - "unic-ucd-version", -] - -[[package]] -name = "unic-ucd-version" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4" -dependencies = [ - "unic-common", -] - -[[package]] -name = "unicode-bidi" -version = "0.3.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" - -[[package]] -name = "unicode-ident" -version = "1.0.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" - -[[package]] -name = "unicode-normalization" -version = "0.1.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd4f6878c9cb28d874b009da9e8d183b5abc80117c40bbd187a1fde336be6e8" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "unicode-properties" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7df058c713841ad818f1dc5d3fd88063241cc61f49f5fbea4b951e8cf5a8d71d" - -[[package]] -name = "unicode-segmentation" -version = "1.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" - -[[package]] -name = "unicode-width" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" - -[[package]] -name = "unicode-xid" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" - -[[package]] -name = "universal-hash" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" -dependencies = [ - "crypto-common", - "subtle", -] - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - -[[package]] -name = "ureq" -version = "3.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dea7109cdcd5864d4eeb1b58a1648dc9bf520360d7af16ec26d0a9354bafcfc0" -dependencies = [ - "base64 0.22.1", - "log", - "percent-encoding", - "ureq-proto", - "utf8-zero", -] - -[[package]] -name = "ureq-proto" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e994ba84b0bd1b1b0cf92878b7ef898a5c1760108fe7b6010327e274917a808c" -dependencies = [ - "base64 0.22.1", - "http 1.4.0", - "httparse", - "log", -] - -[[package]] -name = "url" -version = "2.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" -dependencies = [ - "form_urlencoded", - "idna", - "percent-encoding", - "serde", - "serde_derive", -] - -[[package]] -name = "urlpattern" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70acd30e3aa1450bc2eece896ce2ad0d178e9c079493819301573dae3c37ba6d" -dependencies = [ - "regex", - "serde", - "unic-ucd-ident", - "url", -] - -[[package]] -name = "utf-8" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" - -[[package]] -name = "utf8-zero" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8c0a043c9540bae7c578c88f91dda8bd82e59ae27c21baca69c8b191aaf5a6e" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - -[[package]] -name = "uuid" -version = "1.23.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd74a9687298c6858e9b88ec8935ec45d22e8fd5e6394fa1bd4e99a87789c76" -dependencies = [ - "getrandom 0.4.2", - "js-sys", - "serde_core", - "wasm-bindgen", -] - -[[package]] -name = "v_frame" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "666b7727c8875d6ab5db9533418d7c764233ac9c0cff1d469aec8fa127597be2" -dependencies = [ - "aligned-vec", - "num-traits", - "wasm-bindgen", -] - -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - -[[package]] -name = "version-compare" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c2856837ef78f57382f06b2b8563a2f512f7185d732608fd9176cb3b8edf0e" - -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - -[[package]] -name = "vswhom" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b" -dependencies = [ - "libc", - "vswhom-sys", -] - -[[package]] -name = "vswhom-sys" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb067e4cbd1ff067d1df46c9194b5de0e98efd2810bbc95c5d5e5f25a3231150" -dependencies = [ - "cc", - "libc", -] - -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasapi" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f6b03b82e419f186fcdc06ac6068621bdadc88b89b2612067f1c021ad2c9449" -dependencies = [ - "log", - "num-integer", - "widestring", - "windows 0.57.0", - "windows-core 0.57.0", -] - -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - -[[package]] -name = "wasi" -version = "0.11.1+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" - -[[package]] -name = "wasip2" -version = "1.0.2+wasi-0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" -dependencies = [ - "wit-bindgen", -] - -[[package]] -name = "wasip3" -version = "0.4.0+wasi-0.3.0-rc-2026-01-06" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5" -dependencies = [ - "wit-bindgen", -] - -[[package]] -name = "wasite" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" - -[[package]] -name = "wasm-bindgen" -version = "0.2.118" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bf938a0bacb0469e83c1e148908bd7d5a6010354cf4fb73279b7447422e3a89" -dependencies = [ - "cfg-if", - "once_cell", - "rustversion", - "serde", - "wasm-bindgen-macro", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f371d383f2fb139252e0bfac3b81b265689bf45b6874af544ffa4c975ac1ebf8" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.118" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeff24f84126c0ec2db7a449f0c2ec963c6a49efe0698c4242929da037ca28ed" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.118" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d08065faf983b2b80a79fd87d8254c409281cf7de75fc4b773019824196c904" -dependencies = [ - "bumpalo", - "proc-macro2", - "quote", - "syn 2.0.117", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.118" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd04d9e306f1907bd13c6361b5c6bfc7b3b3c095ed3f8a9246390f8dbdee129" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "wasm-encoder" -version = "0.244.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319" -dependencies = [ - "leb128fmt", - "wasmparser", -] - -[[package]] -name = "wasm-metadata" -version = "0.244.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" -dependencies = [ - "anyhow", - "indexmap 2.14.0", - "wasm-encoder", - "wasmparser", -] - -[[package]] -name = "wasm-streams" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d1ec4f6517c9e11ae630e200b2b65d193279042e28edd4a2cda233e46670bbb" -dependencies = [ - "futures-util", - "js-sys", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "wasmparser" -version = "0.244.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" -dependencies = [ - "bitflags 2.11.1", - "hashbrown 0.15.5", - "indexmap 2.14.0", - "semver", -] - -[[package]] -name = "web-sys" -version = "0.3.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f2dfbb17949fa2088e5d39408c48368947b86f7834484e87b73de55bc14d97d" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "web-time" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "web_atoms" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a9779e9f04d2ac1ce317aee707aa2f6b773afba7b931222bff6983843b1576" -dependencies = [ - "phf 0.13.1", - "phf_codegen 0.13.1", - "string_cache 0.9.0", - "string_cache_codegen 0.6.1", -] - -[[package]] -name = "webkit2gtk" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1027150013530fb2eaf806408df88461ae4815a45c541c8975e61d6f2fc4793" -dependencies = [ - "bitflags 1.3.2", - "cairo-rs", - "gdk", - "gdk-sys", - "gio", - "gio-sys 0.18.1", - "glib 0.18.5", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "gtk", - "gtk-sys", - "javascriptcore-rs", - "libc", - "once_cell", - "soup3", - "webkit2gtk-sys", -] - -[[package]] -name = "webkit2gtk-sys" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "916a5f65c2ef0dfe12fff695960a2ec3d4565359fdbb2e9943c974e06c734ea5" -dependencies = [ - "bitflags 1.3.2", - "cairo-sys-rs", - "gdk-sys", - "gio-sys 0.18.1", - "glib-sys 0.18.1", - "gobject-sys 0.18.0", - "gtk-sys", - "javascriptcore-rs-sys", - "libc", - "pkg-config", - "soup3-sys", - "system-deps 6.2.2", -] - -[[package]] -name = "webpki-root-certs" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31141ce3fc3e300ae89b78c0dd67f9708061d1d2eda54b8209346fd6be9a92c" -dependencies = [ - "rustls-pki-types", -] - -[[package]] -name = "webrtc-sys" -version = "0.3.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63493a8d3b0cfe1ac4cc947d7c7ebba8f2d5f9cc890ee4f807be8c27a7482764" -dependencies = [ - "cc", - "cxx", - "cxx-build", - "glob", - "log", - "pkg-config", - "webrtc-sys-build", -] - -[[package]] -name = "webrtc-sys-build" -version = "0.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f9a618b192cc7c7824b0f3bb931876fa7df8ba518ea163bd9f6e6e2d4b485e8" -dependencies = [ - "anyhow", - "fs2", - "regex", - "reqwest 0.12.28", - "scratch", - "semver", - "zip 0.6.6", -] - -[[package]] -name = "webview2-com" -version = "0.38.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7130243a7a5b33c54a444e54842e6a9e133de08b5ad7b5861cd8ed9a6a5bc96a" -dependencies = [ - "webview2-com-macros", - "webview2-com-sys", - "windows 0.61.3", - "windows-core 0.61.2", - "windows-implement 0.60.2", - "windows-interface 0.59.3", -] - -[[package]] -name = "webview2-com-macros" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a921c1b6914c367b2b823cd4cde6f96beec77d30a939c8199bb377cf9b9b54" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "webview2-com-sys" -version = "0.38.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "381336cfffd772377d291702245447a5251a2ffa5bad679c99e61bc48bacbf9c" -dependencies = [ - "thiserror 2.0.18", - "windows 0.61.3", - "windows-core 0.61.2", -] - -[[package]] -name = "weezl" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28ac98ddc8b9274cb41bb4d9d4d5c425b6020c50c46f25559911905610b4a88" - -[[package]] -name = "whoami" -version = "1.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d4a4db5077702ca3015d3d02d74974948aba2ad9e12ab7df718ee64ccd7e97d" -dependencies = [ - "libredox", - "wasite", -] - -[[package]] -name = "widestring" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471" - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-util" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" -dependencies = [ - "windows-sys 0.61.2", -] - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "window-vibrancy" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9bec5a31f3f9362f2258fd0e9c9dd61a9ca432e7306cc78c444258f0dce9a9c" -dependencies = [ - "objc2", - "objc2-app-kit", - "objc2-core-foundation", - "objc2-foundation", - "raw-window-handle", - "windows-sys 0.59.0", - "windows-version", -] - -[[package]] -name = "windows" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e53b97a83176b369b0eb2fd8158d4ae215357d02df9d40c1e1bf1879c5482c80" -dependencies = [ - "windows_aarch64_msvc 0.36.1", - "windows_i686_gnu 0.36.1", - "windows_i686_msvc 0.36.1", - "windows_x86_64_gnu 0.36.1", - "windows_x86_64_msvc 0.36.1", -] - -[[package]] -name = "windows" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" -dependencies = [ - "windows-core 0.57.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" -dependencies = [ - "windows-core 0.58.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows" -version = "0.61.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" -dependencies = [ - "windows-collections", - "windows-core 0.61.2", - "windows-future", - "windows-link 0.1.3", - "windows-numerics", -] - -[[package]] -name = "windows-collections" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" -dependencies = [ - "windows-core 0.61.2", -] - -[[package]] -name = "windows-core" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" -dependencies = [ - "windows-implement 0.57.0", - "windows-interface 0.57.0", - "windows-result 0.1.2", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-core" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" -dependencies = [ - "windows-implement 0.58.0", - "windows-interface 0.58.0", - "windows-result 0.2.0", - "windows-strings 0.1.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-core" -version = "0.61.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" -dependencies = [ - "windows-implement 0.60.2", - "windows-interface 0.59.3", - "windows-link 0.1.3", - "windows-result 0.3.4", - "windows-strings 0.4.2", -] - -[[package]] -name = "windows-core" -version = "0.62.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" -dependencies = [ - "windows-implement 0.60.2", - "windows-interface 0.59.3", - "windows-link 0.2.1", - "windows-result 0.4.1", - "windows-strings 0.5.1", -] - -[[package]] -name = "windows-future" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" -dependencies = [ - "windows-core 0.61.2", - "windows-link 0.1.3", - "windows-threading", -] - -[[package]] -name = "windows-implement" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "windows-implement" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "windows-implement" -version = "0.60.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "windows-interface" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "windows-interface" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "windows-interface" -version = "0.59.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "windows-link" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" - -[[package]] -name = "windows-link" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" - -[[package]] -name = "windows-numerics" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" -dependencies = [ - "windows-core 0.61.2", - "windows-link 0.1.3", -] - -[[package]] -name = "windows-result" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-result" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-result" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" -dependencies = [ - "windows-link 0.1.3", -] - -[[package]] -name = "windows-result" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" -dependencies = [ - "windows-link 0.2.1", -] - -[[package]] -name = "windows-strings" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" -dependencies = [ - "windows-result 0.2.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-strings" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" -dependencies = [ - "windows-link 0.1.3", -] - -[[package]] -name = "windows-strings" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" -dependencies = [ - "windows-link 0.2.1", -] - -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.60.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" -dependencies = [ - "windows-targets 0.53.5", -] - -[[package]] -name = "windows-sys" -version = "0.61.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" -dependencies = [ - "windows-link 0.2.1", -] - -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.53.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" -dependencies = [ - "windows-link 0.2.1", - "windows_aarch64_gnullvm 0.53.1", - "windows_aarch64_msvc 0.53.1", - "windows_i686_gnu 0.53.1", - "windows_i686_gnullvm 0.53.1", - "windows_i686_msvc 0.53.1", - "windows_x86_64_gnu 0.53.1", - "windows_x86_64_gnullvm 0.53.1", - "windows_x86_64_msvc 0.53.1", -] - -[[package]] -name = "windows-threading" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" -dependencies = [ - "windows-link 0.1.3", -] - -[[package]] -name = "windows-version" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4060a1da109b9d0326b7262c8e12c84df67cc0dbc9e33cf49e01ccc2eb63631" -dependencies = [ - "windows-link 0.2.1", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" - -[[package]] -name = "windows_i686_gnu" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" - -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnu" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" - -[[package]] -name = "windows_i686_msvc" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" - -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_i686_msvc" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.36.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.53.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" - -[[package]] -name = "winnow" -version = "0.5.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - -[[package]] -name = "winnow" -version = "0.7.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" -dependencies = [ - "memchr", -] - -[[package]] -name = "winnow" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09dac053f1cd375980747450bfc7250c264eaae0583872e845c0c7cd578872b5" -dependencies = [ - "memchr", -] - -[[package]] -name = "winreg" -version = "0.55.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb5a765337c50e9ec252c2069be9bf91c7df47afb103b642ba3a53bf8101be97" -dependencies = [ - "cfg-if", - "windows-sys 0.59.0", -] - -[[package]] -name = "wit-bindgen" -version = "0.51.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" -dependencies = [ - "wit-bindgen-rust-macro", -] - -[[package]] -name = "wit-bindgen-core" -version = "0.51.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc" -dependencies = [ - "anyhow", - "heck 0.5.0", - "wit-parser", -] - -[[package]] -name = "wit-bindgen-rust" -version = "0.51.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" -dependencies = [ - "anyhow", - "heck 0.5.0", - "indexmap 2.14.0", - "prettyplease", - "syn 2.0.117", - "wasm-metadata", - "wit-bindgen-core", - "wit-component", -] - -[[package]] -name = "wit-bindgen-rust-macro" -version = "0.51.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a" -dependencies = [ - "anyhow", - "prettyplease", - "proc-macro2", - "quote", - "syn 2.0.117", - "wit-bindgen-core", - "wit-bindgen-rust", -] - -[[package]] -name = "wit-component" -version = "0.244.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" -dependencies = [ - "anyhow", - "bitflags 2.11.1", - "indexmap 2.14.0", - "log", - "serde", - "serde_derive", - "serde_json", - "wasm-encoder", - "wasm-metadata", - "wasmparser", - "wit-parser", -] - -[[package]] -name = "wit-parser" -version = "0.244.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" -dependencies = [ - "anyhow", - "id-arena", - "indexmap 2.14.0", - "log", - "semver", - "serde", - "serde_derive", - "serde_json", - "unicode-xid", - "wasmparser", -] - -[[package]] -name = "writeable" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" - -[[package]] -name = "wry" -version = "0.54.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a8135d8676225e5744de000d4dff5a082501bf7db6a1c1495034f8c314edbc" -dependencies = [ - "base64 0.22.1", - "block2", - "cookie", - "crossbeam-channel", - "dirs 6.0.0", - "dom_query", - "dpi", - "dunce", - "gdkx11", - "gtk", - "http 1.4.0", - "javascriptcore-rs", - "jni", - "libc", - "ndk", - "objc2", - "objc2-app-kit", - "objc2-core-foundation", - "objc2-foundation", - "objc2-ui-kit", - "objc2-web-kit", - "once_cell", - "percent-encoding", - "raw-window-handle", - "sha2", - "soup3", - "tao-macros", - "thiserror 2.0.18", - "url", - "webkit2gtk", - "webkit2gtk-sys", - "webview2-com", - "windows 0.61.3", - "windows-core 0.61.2", - "windows-version", - "x11-dl", -] - -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "x11" -version = "2.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e" -dependencies = [ - "libc", - "pkg-config", -] - -[[package]] -name = "x11-dl" -version = "2.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" -dependencies = [ - "libc", - "once_cell", - "pkg-config", -] - -[[package]] -name = "x11rb" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9993aa5be5a26815fe2c3eacfc1fde061fc1a1f094bf1ad2a18bf9c495dd7414" -dependencies = [ - "gethostname", - "rustix", - "x11rb-protocol", -] - -[[package]] -name = "x11rb-protocol" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6fc2961e4ef194dcbfe56bb845534d0dc8098940c7e5c012a258bfec6701bd" - -[[package]] -name = "x25519-dalek" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277" -dependencies = [ - "curve25519-dalek", - "rand_core 0.6.4", - "zeroize", -] - -[[package]] -name = "xattr" -version = "1.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" -dependencies = [ - "libc", - "rustix", -] - -[[package]] -name = "xcap" -version = "0.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1107223d8283abdd9f22bad27cf36562ef7d3941d82360c75c303656b7dfcb66" -dependencies = [ - "core-foundation 0.10.1", - "core-graphics 0.24.0", - "dbus", - "image", - "log", - "percent-encoding", - "sysinfo", - "thiserror 1.0.69", - "windows 0.58.0", - "xcb", -] - -[[package]] -name = "xcb" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee4c580d8205abb0a5cf4eb7e927bd664e425b6c3263f9c5310583da96970cf6" -dependencies = [ - "bitflags 1.3.2", - "libc", - "quick-xml 0.30.0", -] - -[[package]] -name = "xkeysym" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56" - -[[package]] -name = "y4m" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5a4b21e1a62b67a2970e6831bc091d7b87e119e7f9791aef9702e3bef04448" - -[[package]] -name = "yoke" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca" -dependencies = [ - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", - "synstructure", -] - -[[package]] -name = "zbus" -version = "5.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca82f95dbd3943a40a53cfded6c2d0a2ca26192011846a1810c4256ef92c60bc" -dependencies = [ - "async-broadcast", - "async-executor", - "async-io", - "async-lock", - "async-process", - "async-recursion", - "async-task", - "async-trait", - "blocking", - "enumflags2", - "event-listener", - "futures-core", - "futures-lite", - "hex", - "libc", - "ordered-stream", - "rustix", - "serde", - "serde_repr", - "tracing", - "uds_windows", - "uuid", - "windows-sys 0.61.2", - "winnow 0.7.15", - "zbus_macros", - "zbus_names", - "zvariant", -] - -[[package]] -name = "zbus_macros" -version = "5.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897e79616e84aac4b2c46e9132a4f63b93105d54fe8c0e8f6bffc21fa8d49222" -dependencies = [ - "proc-macro-crate 3.5.0", - "proc-macro2", - "quote", - "syn 2.0.117", - "zbus_names", - "zvariant", - "zvariant_utils", -] - -[[package]] -name = "zbus_names" -version = "4.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffd8af6d5b78619bab301ff3c560a5bd22426150253db278f164d6cf3b72c50f" -dependencies = [ - "serde", - "winnow 0.7.15", - "zvariant", -] - -[[package]] -name = "zerocopy" -version = "0.8.48" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9" -dependencies = [ - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.8.48" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "zerofrom" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", - "synstructure", -] - -[[package]] -name = "zeroize" -version = "1.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" -dependencies = [ - "serde", - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "zerotrie" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", -] - -[[package]] -name = "zerovec" -version = "0.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.117", -] - -[[package]] -name = "zip" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" -dependencies = [ - "aes", - "byteorder", - "bzip2", - "constant_time_eq 0.1.5", - "crc32fast", - "crossbeam-utils", - "flate2", - "hmac", - "pbkdf2 0.11.0", - "sha1", - "time", - "zstd", -] - -[[package]] -name = "zip" -version = "4.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caa8cd6af31c3b31c6631b8f483848b91589021b28fffe50adada48d4f4d2ed1" -dependencies = [ - "arbitrary", - "crc32fast", - "indexmap 2.14.0", - "memchr", -] - -[[package]] -name = "zip" -version = "8.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcab981e19633ebcf0b001ddd37dd802996098bc1864f90b7c5d970ce76c1d59" -dependencies = [ - "crc32fast", - "flate2", - "indexmap 2.14.0", - "memchr", - "typed-path", - "zopfli", -] - -[[package]] -name = "zlib-rs" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be3d40e40a133f9c916ee3f9f4fa2d9d63435b5fbe1bfc6d9dae0aa0ada1513" - -[[package]] -name = "zmij" -version = "1.0.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" - -[[package]] -name = "zopfli" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05cd8797d63865425ff89b5c4a48804f35ba0ce8d125800027ad6017d2b5249" -dependencies = [ - "bumpalo", - "crc32fast", - "log", - "simd-adler32", -] - -[[package]] -name = "zstd" -version = "0.11.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" -dependencies = [ - "libc", - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.16+zstd.1.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748" -dependencies = [ - "cc", - "pkg-config", -] - -[[package]] -name = "zune-core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb8a0807f7c01457d0379ba880ba6322660448ddebc890ce29bb64da71fb40f9" - -[[package]] -name = "zune-inflate" -version = "0.2.54" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02" -dependencies = [ - "simd-adler32", -] - -[[package]] -name = "zune-jpeg" -version = "0.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27bc9d5b815bc103f142aa054f561d9187d191692ec7c2d1e2b4737f8dbd7296" -dependencies = [ - "zune-core", -] - -[[package]] -name = "zvariant" -version = "5.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5708299b21903bbe348e94729f22c49c55d04720a004aa350f1f9c122fd2540b" -dependencies = [ - "endi", - "enumflags2", - "serde", - "winnow 0.7.15", - "zvariant_derive", - "zvariant_utils", -] - -[[package]] -name = "zvariant_derive" -version = "5.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b59b012ebe9c46656f9cc08d8da8b4c726510aef12559da3e5f1bf72780752c" -dependencies = [ - "proc-macro-crate 3.5.0", - "proc-macro2", - "quote", - "syn 2.0.117", - "zvariant_utils", -] - -[[package]] -name = "zvariant_utils" -version = "3.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f75c23a64ef8f40f13a6989991e643554d9bef1d682a281160cf0c1bc389c5e9" -dependencies = [ - "proc-macro2", - "quote", - "serde", - "syn 2.0.117", - "winnow 0.7.15", -] diff --git a/apps/desktop/src-tauri/Cargo.toml b/apps/desktop/src-tauri/Cargo.toml deleted file mode 100644 index 87ccdf9..0000000 --- a/apps/desktop/src-tauri/Cargo.toml +++ /dev/null @@ -1,95 +0,0 @@ -[package] -name = "chat-app-desktop" -version = "0.11.3" -description = "ChatApp desktop client" -authors = ["Dennis"] -edition = "2021" -rust-version = "1.77" - -[lib] -name = "chat_app_desktop_lib" -crate-type = ["staticlib", "cdylib", "rlib"] - -[build-dependencies] -tauri-build = { version = "2", features = [] } - -[dependencies] -tauri = { version = "2", features = ["devtools", "tray-icon"] } -tauri-plugin-notification = "2" -tauri-plugin-sql = { version = "2", features = ["sqlite"] } -tauri-plugin-stronghold = "2" -tauri-plugin-fs = "2" -serde = { version = "1", features = ["derive"] } -serde_json = "1" - -# Pure-rust libsodium-compatible primitives. No C toolchain required so -# cross-compile for mobile stays clean. API output is bit-compatible with -# libsodium-wrappers-sumo for the ops we use (secretbox, box, pwhash). -dryoc = { version = "0.7", default-features = false, features = ["serde"] } -base64 = "0.22" - -# PNG encoding for screen-source thumbnails returned by the -# `enumerate_screen_sources` command. `default-features = false` skips the -# image-format decoders we don't use (jpeg, gif, webp, …) — keeps the -# thumbnail command at ~200KB extra binary size. -image = { version = "0.25", default-features = false, features = ["png"] } - -# Cross-platform screen + window enumeration and capture. Replaces direct -# Win32 GDI / macOS CoreGraphics / X11 calls with a small uniform API so -# the enumerate-sources command has one code path. The crate pulls in -# platform-specific backends automatically (~1.5MB binary growth on -# Windows). Marked optional so non-desktop targets don't compile it. -xcap = "0.0.14" - -[target."cfg(not(any(target_os = \"android\", target_os = \"ios\")))".dependencies] -tauri-plugin-global-shortcut = "2" -tauri-plugin-updater = "2" -tauri-plugin-window-state = "2" - -# Windows-only screen-source enumeration + thumbnail capture. Pulled in -# only on Windows so macOS + Linux builds stay slim. The enumerate command -# returns stub-empty on non-Windows until we add native equivalents. -[target."cfg(target_os = \"windows\")".dependencies] -windows = { version = "0.58", features = [ - "Win32_Foundation", - "Win32_Graphics_Gdi", - "Win32_UI_HiDpi", - "Win32_UI_WindowsAndMessaging", -] } - -# WASAPI loopback capture for system-audio screen-share. Lets the custom -# picker hand LiveKit a real audio track without falling back to the OS -# screen picker (which is the only way getDisplayMedia can grab system -# sound). Windows-only for v1; macOS needs ScreenCaptureKit-audio and -# Linux needs a PulseAudio / PipeWire path. -wasapi = "0.15" - -# LiveKit client SDK — lives behind the `rust-livekit` feature flag so the -# baseline build stays unaffected while the JS-SDK path is still the -# default. Pulls libwebrtc-rs which adds ~20MB to the binary and ~5-10min -# to the first build. Tokio runtime is required; the rest of the crate -# stays idle when the feature is off. -livekit = { version = "0.7", default-features = false, features = ["tokio", "rustls-tls-native-roots"], optional = true } -tokio = { version = "1", features = ["rt-multi-thread", "sync", "macros"], optional = true } - -[features] -# This feature is used for production builds or when `devPath` points to the filesystem -# and disables specific features relevant to the dev build. -custom-protocol = ["tauri/custom-protocol"] - -# Enable the Rust LiveKit client. Off by default so CI + users stay on the -# JS-SDK path until the rust bridge reaches feature parity. Turn on via: -# cargo build --features rust-livekit -rust-livekit = ["dep:livekit", "dep:tokio"] - -# Release-profile tuned for ChatApp: whole-program LTO + single codegen unit -# cuts binary size by ~20-30% and trims startup overhead. `strip = "symbols"` -# removes debug + symbol tables (the updater already signs separately so -# symbol-backed crash reports aren't the recovery path). `panic = "abort"` -# skips unwinding metadata since the app doesn't use catch_unwind anywhere. -[profile.release] -lto = true -codegen-units = 1 -strip = "symbols" -panic = "abort" -opt-level = "s" diff --git a/apps/desktop/src-tauri/Info.plist b/apps/desktop/src-tauri/Info.plist deleted file mode 100644 index 2ed2b26..0000000 --- a/apps/desktop/src-tauri/Info.plist +++ /dev/null @@ -1,12 +0,0 @@ - - - - - NSMicrophoneUsageDescription - ChatApp needs microphone access for voice calls. - NSCameraUsageDescription - ChatApp needs camera access for video calls. - NSScreenCaptureUsageDescription - ChatApp needs screen recording access for screen sharing during calls. - - diff --git a/apps/desktop/src-tauri/build.rs b/apps/desktop/src-tauri/build.rs deleted file mode 100644 index d860e1e..0000000 --- a/apps/desktop/src-tauri/build.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() { - tauri_build::build() -} diff --git a/apps/desktop/src-tauri/capabilities/default.json b/apps/desktop/src-tauri/capabilities/default.json deleted file mode 100644 index 58c40d8..0000000 --- a/apps/desktop/src-tauri/capabilities/default.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "$schema": "../gen/schemas/desktop-schema.json", - "identifier": "default", - "description": "Default permissions for ChatApp desktop windows.", - "windows": ["main"], - "permissions": [ - "core:default", - "notification:default", - "notification:allow-notify", - "notification:allow-is-permission-granted", - "notification:allow-request-permission", - "sql:default", - "sql:allow-load", - "sql:allow-execute", - "sql:allow-select", - "sql:allow-close", - "global-shortcut:allow-register", - "global-shortcut:allow-unregister", - "global-shortcut:allow-is-registered", - "updater:allow-check", - "updater:allow-download", - "updater:allow-install", - "updater:allow-download-and-install", - "stronghold:default", - "stronghold:allow-initialize", - "stronghold:allow-load-client", - "stronghold:allow-create-client", - "stronghold:allow-save", - "stronghold:allow-get-store-record", - "stronghold:allow-save-store-record", - "stronghold:allow-remove-store-record", - "fs:default", - "fs:allow-read-file", - "fs:allow-write-file", - "fs:allow-mkdir", - "fs:allow-exists", - "fs:allow-rename", - "fs:allow-remove", - { - "identifier": "fs:scope", - "allow": [ - { "path": "$APPLOCALDATA" }, - { "path": "$APPLOCALDATA/**" } - ] - } - ] -} diff --git a/apps/desktop/src-tauri/icons/128x128.png b/apps/desktop/src-tauri/icons/128x128.png deleted file mode 100644 index 21d575e..0000000 Binary files a/apps/desktop/src-tauri/icons/128x128.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/128x128@2x.png b/apps/desktop/src-tauri/icons/128x128@2x.png deleted file mode 100644 index 358035b..0000000 Binary files a/apps/desktop/src-tauri/icons/128x128@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/32x32.png b/apps/desktop/src-tauri/icons/32x32.png deleted file mode 100644 index 030b29b..0000000 Binary files a/apps/desktop/src-tauri/icons/32x32.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/64x64.png b/apps/desktop/src-tauri/icons/64x64.png deleted file mode 100644 index 10a4fbe..0000000 Binary files a/apps/desktop/src-tauri/icons/64x64.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square107x107Logo.png b/apps/desktop/src-tauri/icons/Square107x107Logo.png deleted file mode 100644 index f199cc3..0000000 Binary files a/apps/desktop/src-tauri/icons/Square107x107Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square142x142Logo.png b/apps/desktop/src-tauri/icons/Square142x142Logo.png deleted file mode 100644 index f09910a..0000000 Binary files a/apps/desktop/src-tauri/icons/Square142x142Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square150x150Logo.png b/apps/desktop/src-tauri/icons/Square150x150Logo.png deleted file mode 100644 index 9679265..0000000 Binary files a/apps/desktop/src-tauri/icons/Square150x150Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square284x284Logo.png b/apps/desktop/src-tauri/icons/Square284x284Logo.png deleted file mode 100644 index db691f2..0000000 Binary files a/apps/desktop/src-tauri/icons/Square284x284Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square30x30Logo.png b/apps/desktop/src-tauri/icons/Square30x30Logo.png deleted file mode 100644 index 7dca92e..0000000 Binary files a/apps/desktop/src-tauri/icons/Square30x30Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square310x310Logo.png b/apps/desktop/src-tauri/icons/Square310x310Logo.png deleted file mode 100644 index 521146b..0000000 Binary files a/apps/desktop/src-tauri/icons/Square310x310Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square44x44Logo.png b/apps/desktop/src-tauri/icons/Square44x44Logo.png deleted file mode 100644 index 2f80a33..0000000 Binary files a/apps/desktop/src-tauri/icons/Square44x44Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square71x71Logo.png b/apps/desktop/src-tauri/icons/Square71x71Logo.png deleted file mode 100644 index 9463b7f..0000000 Binary files a/apps/desktop/src-tauri/icons/Square71x71Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/Square89x89Logo.png b/apps/desktop/src-tauri/icons/Square89x89Logo.png deleted file mode 100644 index a33106a..0000000 Binary files a/apps/desktop/src-tauri/icons/Square89x89Logo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/StoreLogo.png b/apps/desktop/src-tauri/icons/StoreLogo.png deleted file mode 100644 index e2ebc7d..0000000 Binary files a/apps/desktop/src-tauri/icons/StoreLogo.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml b/apps/desktop/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml deleted file mode 100644 index 2ffbf24..0000000 --- a/apps/desktop/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png b/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index f60eb87..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png b/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png deleted file mode 100644 index 882f799..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png b/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png deleted file mode 100644 index f944ee1..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png b/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 9150e35..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png b/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png deleted file mode 100644 index 2a3aa56..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png b/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png deleted file mode 100644 index 6a6bca2..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png b/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index 37a805a..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png b/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png deleted file mode 100644 index ed8fdb8..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png b/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png deleted file mode 100644 index 52c5ebb..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png b/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index 60a0853..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png b/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png deleted file mode 100644 index db576a2..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png b/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png deleted file mode 100644 index 84d2a1e..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png b/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index fad2aae..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png b/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png deleted file mode 100644 index 2cdbf06..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png b/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png deleted file mode 100644 index a97005a..0000000 Binary files a/apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/android/values/ic_launcher_background.xml b/apps/desktop/src-tauri/icons/android/values/ic_launcher_background.xml deleted file mode 100644 index ea9c223..0000000 --- a/apps/desktop/src-tauri/icons/android/values/ic_launcher_background.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - #fff - \ No newline at end of file diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@1x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@1x.png deleted file mode 100644 index 8ed4203..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@1x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x-1.png b/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x-1.png deleted file mode 100644 index a604fe4..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x-1.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x.png deleted file mode 100644 index a604fe4..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@3x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@3x.png deleted file mode 100644 index bc3e437..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-20x20@3x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@1x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@1x.png deleted file mode 100644 index 4b07f22..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@1x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x-1.png b/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x-1.png deleted file mode 100644 index 2c642e3..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x-1.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x.png deleted file mode 100644 index 2c642e3..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@3x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@3x.png deleted file mode 100644 index d6fac69..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-29x29@3x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@1x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@1x.png deleted file mode 100644 index a604fe4..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@1x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x-1.png b/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x-1.png deleted file mode 100644 index 104e055..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x-1.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x.png deleted file mode 100644 index 104e055..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@3x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@3x.png deleted file mode 100644 index 0825aa6..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-40x40@3x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-512@2x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-512@2x.png deleted file mode 100644 index 7f1799e..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-512@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-60x60@2x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-60x60@2x.png deleted file mode 100644 index 0825aa6..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-60x60@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-60x60@3x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-60x60@3x.png deleted file mode 100644 index e6322a9..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-60x60@3x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-76x76@1x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-76x76@1x.png deleted file mode 100644 index 14ab4fc..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-76x76@1x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-76x76@2x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-76x76@2x.png deleted file mode 100644 index 0925c16..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-76x76@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png b/apps/desktop/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png deleted file mode 100644 index 676d90a..0000000 Binary files a/apps/desktop/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png and /dev/null differ diff --git a/apps/desktop/src-tauri/icons/source.svg b/apps/desktop/src-tauri/icons/source.svg deleted file mode 100644 index 095d8ae..0000000 --- a/apps/desktop/src-tauri/icons/source.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/apps/desktop/src-tauri/src/crypto.rs b/apps/desktop/src-tauri/src/crypto.rs deleted file mode 100644 index c8a039b..0000000 --- a/apps/desktop/src-tauri/src/crypto.rs +++ /dev/null @@ -1,287 +0,0 @@ -// Native crypto primitives exposed as Tauri commands. The JS side calls -// these via `invoke('crypto_…', …)` through `lib/nativeCryptoBackend.ts`. -// -// All byte arrays cross the IPC boundary as base64 strings to sidestep -// serde_json's lack of native bytes support; JS encodes/decodes at the -// thin wrapper layer. The extra encode step costs a few µs per call — -// negligible against Argon2id's ~200ms and acceptable for bulk AEAD ops -// which still outperform the WASM backend after the round-trip. -// -// Semantics: bit-compatible with libsodium-wrappers-sumo for all inputs. -// AEAD authentication failures surface as `Err(String)` so the JS layer -// can re-throw a deterministic error that existing callers already handle. - -use base64::{engine::general_purpose::STANDARD as B64, Engine}; -use dryoc::classic::crypto_box; -use dryoc::classic::crypto_pwhash::{self, PasswordHashAlgorithm}; -use dryoc::classic::crypto_secretbox; -use dryoc::constants::{ - CRYPTO_BOX_PUBLICKEYBYTES, CRYPTO_BOX_SECRETKEYBYTES, CRYPTO_PWHASH_MEMLIMIT_MODERATE, - CRYPTO_PWHASH_OPSLIMIT_MODERATE, CRYPTO_PWHASH_SALTBYTES, -}; -use dryoc::rng::randombytes_buf; -use serde::{Deserialize, Serialize}; - -fn encode(bytes: &[u8]) -> String { - B64.encode(bytes) -} - -fn decode(s: &str) -> Result, String> { - B64.decode(s).map_err(|e| format!("invalid base64: {}", e)) -} - -// --------------------------------------------------------------------------- -// Random -// --------------------------------------------------------------------------- - -#[tauri::command] -pub fn crypto_random_bytes(len: usize) -> Result { - if len == 0 || len > 1024 * 1024 { - return Err("invalid length".into()); - } - let buf = randombytes_buf(len); - Ok(encode(&buf)) -} - -// --------------------------------------------------------------------------- -// crypto_secretbox — XSalsa20-Poly1305 -// --------------------------------------------------------------------------- - -#[tauri::command] -pub fn crypto_secretbox_encrypt( - plaintext_b64: String, - nonce_b64: String, - key_b64: String, -) -> Result { - let plaintext = decode(&plaintext_b64)?; - let nonce = decode(&nonce_b64)?; - let key = decode(&key_b64)?; - if nonce.len() != 24 { - return Err("nonce must be 24 bytes".into()); - } - if key.len() != 32 { - return Err("key must be 32 bytes".into()); - } - let mut ciphertext = vec![0u8; plaintext.len() + 16]; - let nonce_arr: [u8; 24] = nonce.as_slice().try_into().unwrap(); - let key_arr: [u8; 32] = key.as_slice().try_into().unwrap(); - crypto_secretbox::crypto_secretbox_easy( - &mut ciphertext, - &plaintext, - &nonce_arr, - &key_arr, - ) - .map_err(|e| format!("secretbox encrypt failed: {}", e))?; - Ok(encode(&ciphertext)) -} - -#[tauri::command] -pub fn crypto_secretbox_decrypt( - ciphertext_b64: String, - nonce_b64: String, - key_b64: String, -) -> Result { - let ciphertext = decode(&ciphertext_b64)?; - let nonce = decode(&nonce_b64)?; - let key = decode(&key_b64)?; - if nonce.len() != 24 { - return Err("nonce must be 24 bytes".into()); - } - if key.len() != 32 { - return Err("key must be 32 bytes".into()); - } - if ciphertext.len() < 16 { - return Err("ciphertext too short".into()); - } - let mut plaintext = vec![0u8; ciphertext.len() - 16]; - let nonce_arr: [u8; 24] = nonce.as_slice().try_into().unwrap(); - let key_arr: [u8; 32] = key.as_slice().try_into().unwrap(); - crypto_secretbox::crypto_secretbox_open_easy( - &mut plaintext, - &ciphertext, - &nonce_arr, - &key_arr, - ) - .map_err(|_| "secretbox auth failed".to_string())?; - Ok(encode(&plaintext)) -} - -// --------------------------------------------------------------------------- -// crypto_box — X25519 + XSalsa20-Poly1305 -// --------------------------------------------------------------------------- - -#[derive(Serialize, Deserialize)] -pub struct KeyPairB64 { - pub public_key: String, - pub private_key: String, -} - -#[tauri::command] -pub fn crypto_box_keypair() -> Result { - let (pk, sk) = crypto_box::crypto_box_keypair(); - Ok(KeyPairB64 { - public_key: encode(&pk), - private_key: encode(&sk), - }) -} - -#[tauri::command] -pub fn crypto_box_encrypt( - plaintext_b64: String, - nonce_b64: String, - recipient_pk_b64: String, - sender_sk_b64: String, -) -> Result { - let plaintext = decode(&plaintext_b64)?; - let nonce = decode(&nonce_b64)?; - let pk = decode(&recipient_pk_b64)?; - let sk = decode(&sender_sk_b64)?; - if pk.len() != CRYPTO_BOX_PUBLICKEYBYTES { - return Err("pk must be 32 bytes".into()); - } - if sk.len() != CRYPTO_BOX_SECRETKEYBYTES { - return Err("sk must be 32 bytes".into()); - } - let mut ciphertext = vec![0u8; plaintext.len() + 16]; - let nonce_arr: [u8; 24] = nonce.as_slice().try_into().map_err(|_| "bad nonce")?; - let pk_arr: [u8; 32] = pk.as_slice().try_into().unwrap(); - let sk_arr: [u8; 32] = sk.as_slice().try_into().unwrap(); - crypto_box::crypto_box_easy(&mut ciphertext, &plaintext, &nonce_arr, &pk_arr, &sk_arr) - .map_err(|e| format!("box encrypt failed: {}", e))?; - Ok(encode(&ciphertext)) -} - -#[tauri::command] -pub fn crypto_box_decrypt( - ciphertext_b64: String, - nonce_b64: String, - sender_pk_b64: String, - recipient_sk_b64: String, -) -> Result { - let ciphertext = decode(&ciphertext_b64)?; - let nonce = decode(&nonce_b64)?; - let pk = decode(&sender_pk_b64)?; - let sk = decode(&recipient_sk_b64)?; - if pk.len() != CRYPTO_BOX_PUBLICKEYBYTES { - return Err("pk must be 32 bytes".into()); - } - if sk.len() != CRYPTO_BOX_SECRETKEYBYTES { - return Err("sk must be 32 bytes".into()); - } - if ciphertext.len() < 16 { - return Err("ciphertext too short".into()); - } - let mut plaintext = vec![0u8; ciphertext.len() - 16]; - let nonce_arr: [u8; 24] = nonce.as_slice().try_into().map_err(|_| "bad nonce")?; - let pk_arr: [u8; 32] = pk.as_slice().try_into().unwrap(); - let sk_arr: [u8; 32] = sk.as_slice().try_into().unwrap(); - crypto_box::crypto_box_open_easy( - &mut plaintext, - &ciphertext, - &nonce_arr, - &pk_arr, - &sk_arr, - ) - .map_err(|_| "box auth failed".to_string())?; - Ok(encode(&plaintext)) -} - -// Sealed-box (anonymous) variant — sender identity not authenticated but -// recipient still verified. Used by the conv-key wrapping flow. -#[tauri::command] -pub fn crypto_box_seal( - plaintext_b64: String, - recipient_pk_b64: String, -) -> Result { - let plaintext = decode(&plaintext_b64)?; - let pk = decode(&recipient_pk_b64)?; - if pk.len() != CRYPTO_BOX_PUBLICKEYBYTES { - return Err("pk must be 32 bytes".into()); - } - let pk_arr: [u8; 32] = pk.as_slice().try_into().unwrap(); - let mut ciphertext = vec![0u8; plaintext.len() + 48]; - crypto_box::crypto_box_seal(&mut ciphertext, &plaintext, &pk_arr) - .map_err(|e| format!("seal failed: {}", e))?; - Ok(encode(&ciphertext)) -} - -#[tauri::command] -pub fn crypto_box_seal_open( - ciphertext_b64: String, - recipient_pk_b64: String, - recipient_sk_b64: String, -) -> Result { - let ciphertext = decode(&ciphertext_b64)?; - let pk = decode(&recipient_pk_b64)?; - let sk = decode(&recipient_sk_b64)?; - if pk.len() != CRYPTO_BOX_PUBLICKEYBYTES { - return Err("pk must be 32 bytes".into()); - } - if sk.len() != CRYPTO_BOX_SECRETKEYBYTES { - return Err("sk must be 32 bytes".into()); - } - if ciphertext.len() < 48 { - return Err("ciphertext too short".into()); - } - let pk_arr: [u8; 32] = pk.as_slice().try_into().unwrap(); - let sk_arr: [u8; 32] = sk.as_slice().try_into().unwrap(); - let mut plaintext = vec![0u8; ciphertext.len() - 48]; - crypto_box::crypto_box_seal_open(&mut plaintext, &ciphertext, &pk_arr, &sk_arr) - .map_err(|_| "seal open failed".to_string())?; - Ok(encode(&plaintext)) -} - -// --------------------------------------------------------------------------- -// crypto_pwhash — Argon2id -// --------------------------------------------------------------------------- - -#[derive(Deserialize)] -pub struct PwhashArgs { - pub password: String, - pub salt_b64: String, - pub out_len: usize, - // Opslimit / memlimit presets map to libsodium constants; callers pass - // one of "interactive" | "moderate" | "sensitive". We default to - // moderate which matches every current call-site. - #[serde(default)] - pub preset: Option, -} - -fn pwhash_limits(preset: Option<&str>) -> (u64, usize) { - match preset { - Some("interactive") => (2, 64 * 1024 * 1024), - Some("sensitive") => (4, 1024 * 1024 * 1024), - _ => ( - CRYPTO_PWHASH_OPSLIMIT_MODERATE as u64, - CRYPTO_PWHASH_MEMLIMIT_MODERATE, - ), - } -} - -#[tauri::command] -pub fn crypto_pwhash(args: PwhashArgs) -> Result { - let salt = decode(&args.salt_b64)?; - if salt.len() != CRYPTO_PWHASH_SALTBYTES { - return Err(format!( - "salt must be {} bytes", - CRYPTO_PWHASH_SALTBYTES - )); - } - if args.out_len < 16 || args.out_len > 64 { - return Err("out_len out of range (16..=64)".into()); - } - let salt_arr: [u8; CRYPTO_PWHASH_SALTBYTES] = - salt.as_slice().try_into().unwrap(); - let (opslimit, memlimit) = pwhash_limits(args.preset.as_deref()); - let mut out = vec![0u8; args.out_len]; - crypto_pwhash::crypto_pwhash( - &mut out, - args.password.as_bytes(), - &salt_arr, - opslimit, - memlimit, - PasswordHashAlgorithm::Argon2id13, - ) - .map_err(|e| format!("pwhash failed: {}", e))?; - Ok(encode(&out)) -} diff --git a/apps/desktop/src-tauri/src/lib.rs b/apps/desktop/src-tauri/src/lib.rs deleted file mode 100644 index fc93957..0000000 --- a/apps/desktop/src-tauri/src/lib.rs +++ /dev/null @@ -1,253 +0,0 @@ -mod crypto; -mod screen_audio; -mod screen_capture; -mod screen_sources; - -#[cfg(feature = "rust-livekit")] -mod livekit_bridge; - -#[cfg(not(any(target_os = "android", target_os = "ios")))] -use tauri::{ - menu::{Menu, MenuEvent, MenuItem, PredefinedMenuItem}, - tray::{MouseButton, MouseButtonState, TrayIconBuilder, TrayIconEvent}, - AppHandle, Listener, Manager, -}; - -#[cfg(not(any(target_os = "android", target_os = "ios")))] -use serde::Deserialize; - -// Payload for the `tray-unread-update` event the JS layer emits whenever the -// aggregate unread-count changes. 0 hides the badge / resets the tooltip; -// non-zero sets a count indicator. -#[cfg(not(any(target_os = "android", target_os = "ios")))] -#[derive(Deserialize)] -struct TrayUnreadPayload { - count: u32, -} - -// Red-dot overlay icon for the Windows taskbar. Drawn as raw RGBA instead of -// shipping a PNG so we don't add another resource to the bundle. Kept small -// (32x32) since Windows scales the overlay down anyway. -#[cfg(target_os = "windows")] -fn unread_overlay_rgba() -> Vec { - const SIZE: u32 = 32; - let r = SIZE as f32 / 2.0; - let mut buf = Vec::with_capacity((SIZE * SIZE * 4) as usize); - for y in 0..SIZE { - for x in 0..SIZE { - let dx = x as f32 - r + 0.5; - let dy = y as f32 - r + 0.5; - let d = (dx * dx + dy * dy).sqrt(); - let edge = r - 1.0; - if d <= edge { - buf.extend_from_slice(&[0xDC, 0x26, 0x26, 0xFF]); - } else if d <= r { - let alpha = (255.0 * (r - d)).clamp(0.0, 255.0) as u8; - buf.extend_from_slice(&[0xDC, 0x26, 0x26, alpha]); - } else { - buf.extend_from_slice(&[0, 0, 0, 0]); - } - } - } - buf -} - -#[cfg(not(any(target_os = "android", target_os = "ios")))] -fn show_main_window(app: &AppHandle) { - if let Some(win) = app.get_webview_window("main") { - let _ = win.show(); - let _ = win.unminimize(); - let _ = win.set_focus(); - } -} - -#[cfg(not(any(target_os = "android", target_os = "ios")))] -fn hide_main_window(app: &AppHandle) { - if let Some(win) = app.get_webview_window("main") { - let _ = win.hide(); - } -} - -#[cfg(not(any(target_os = "android", target_os = "ios")))] -fn handle_menu_event(app: &AppHandle, event: MenuEvent) { - match event.id.as_ref() { - "tray-show" => show_main_window(app), - "tray-hide" => hide_main_window(app), - "tray-quit" => { - app.exit(0); - } - _ => {} - } -} - -#[cfg_attr(mobile, tauri::mobile_entry_point)] -pub fn run() { - #[cfg(not(feature = "rust-livekit"))] - let mut builder = tauri::Builder::default() - .invoke_handler(tauri::generate_handler![ - crypto::crypto_random_bytes, - crypto::crypto_secretbox_encrypt, - crypto::crypto_secretbox_decrypt, - crypto::crypto_box_keypair, - crypto::crypto_box_encrypt, - crypto::crypto_box_decrypt, - crypto::crypto_box_seal, - crypto::crypto_box_seal_open, - crypto::crypto_pwhash, - screen_sources::enumerate_screen_sources, - screen_sources::list_screen_sources, - screen_sources::capture_screen_source_thumbnail, - screen_sources::capture_screen_source_thumbnail_bytes, - screen_capture::start_screen_capture, - screen_capture::stop_screen_capture, - screen_audio::start_system_audio_capture, - screen_audio::stop_system_audio_capture, - ]) - .plugin(tauri_plugin_notification::init()); - - #[cfg(feature = "rust-livekit")] - let mut builder = tauri::Builder::default() - .manage(livekit_bridge::LivekitState::new()) - .invoke_handler(tauri::generate_handler![ - crypto::crypto_random_bytes, - crypto::crypto_secretbox_encrypt, - crypto::crypto_secretbox_decrypt, - crypto::crypto_box_keypair, - crypto::crypto_box_encrypt, - crypto::crypto_box_decrypt, - crypto::crypto_box_seal, - crypto::crypto_box_seal_open, - crypto::crypto_pwhash, - screen_sources::enumerate_screen_sources, - screen_sources::list_screen_sources, - screen_sources::capture_screen_source_thumbnail, - screen_sources::capture_screen_source_thumbnail_bytes, - screen_capture::start_screen_capture, - screen_capture::stop_screen_capture, - screen_audio::start_system_audio_capture, - screen_audio::stop_system_audio_capture, - livekit_bridge::livekit_connect, - livekit_bridge::livekit_disconnect, - livekit_bridge::livekit_send_data, - livekit_bridge::livekit_set_mic, - livekit_bridge::livekit_set_camera, - ]) - .plugin(tauri_plugin_notification::init()); - - builder = builder - .plugin(tauri_plugin_sql::Builder::default().build()) - .plugin(tauri_plugin_fs::init()) - .plugin( - tauri_plugin_stronghold::Builder::new(|password| { - // TODO: derive stronghold key from password using argon2 / blake2b. - // Placeholder so project compiles. - password.as_bytes().to_vec() - }) - .build(), - ); - - // Global shortcut + updater + window-state plugins are desktop-only - // (no mobile support — mobile windows are OS-managed). - #[cfg(not(any(target_os = "android", target_os = "ios")))] - { - builder = builder - .plugin(tauri_plugin_global_shortcut::Builder::new().build()) - .plugin(tauri_plugin_updater::Builder::new().build()) - .plugin(tauri_plugin_window_state::Builder::new().build()); - } - - #[cfg(not(any(target_os = "android", target_os = "ios")))] - { - builder = builder.setup(|app| { - // Tray icon with a minimal menu. Left-click toggles window - // visibility; right-click shows the menu. Badge / tooltip updates - // come from the JS side via `tray-unread-update` events. - let show = MenuItem::with_id(app, "tray-show", "Öffnen", true, None::<&str>)?; - let hide = MenuItem::with_id(app, "tray-hide", "Ausblenden", true, None::<&str>)?; - let sep = PredefinedMenuItem::separator(app)?; - let quit = MenuItem::with_id(app, "tray-quit", "Beenden", true, None::<&str>)?; - let menu = Menu::with_items(app, &[&show, &hide, &sep, &quit])?; - - let mut tray_builder = TrayIconBuilder::with_id("chatapp-tray") - .menu(&menu) - .show_menu_on_left_click(false) - .tooltip("ChatApp") - .on_menu_event(|app, event| handle_menu_event(app, event)) - .on_tray_icon_event(|tray, event| { - if let TrayIconEvent::Click { - button: MouseButton::Left, - button_state: MouseButtonState::Up, - .. - } = event - { - let app = tray.app_handle(); - if let Some(win) = app.get_webview_window("main") { - if win.is_visible().unwrap_or(false) { - let _ = win.hide(); - } else { - let _ = win.show(); - let _ = win.set_focus(); - } - } - } - }); - - // `default_window_icon` returns Option<&Image>; only attach if - // we actually have one bundled (should always be true via the - // tauri.conf.json icon list, but guard to stay typesafe). - if let Some(icon) = app.default_window_icon() { - tray_builder = tray_builder.icon(icon.clone()); - } - - let tray = tray_builder.build(app)?; - - // Listen for JS-side unread updates and mirror them into the tray - // tooltip + macOS dock badge. `tray` is cheap to clone (internal - // Arc) so we can move it into the listener closure directly. - let tray_handle = tray.clone(); - let badge_window = app.get_webview_window("main"); - app.listen("tray-unread-update", move |event| { - let Ok(payload) = serde_json::from_str::(event.payload()) - else { - return; - }; - let tooltip = if payload.count == 0 { - "ChatApp".to_string() - } else { - format!("ChatApp · {} neu", payload.count) - }; - let _ = tray_handle.set_tooltip(Some(tooltip)); - // Dock/taskbar badge. macOS uses a numeric label; Windows uses - // an overlay icon (red dot = unread). Linux has no cross-DE - // badge API — skip. - #[cfg(target_os = "macos")] - if let Some(win) = badge_window.as_ref() { - let badge = if payload.count == 0 { - None - } else { - Some(payload.count.to_string()) - }; - let _ = win.set_badge_label(badge); - } - #[cfg(target_os = "windows")] - if let Some(win) = badge_window.as_ref() { - if payload.count == 0 { - let _ = win.set_overlay_icon(None); - } else { - let rgba = unread_overlay_rgba(); - let img = tauri::image::Image::new_owned(rgba, 32, 32); - let _ = win.set_overlay_icon(Some(img)); - } - } - #[cfg(not(any(target_os = "macos", target_os = "windows")))] - let _ = &badge_window; - }); - - Ok(()) - }); - } - - builder - .run(tauri::generate_context!()) - .expect("error while running tauri application"); -} diff --git a/apps/desktop/src-tauri/src/livekit_bridge.rs b/apps/desktop/src-tauri/src/livekit_bridge.rs deleted file mode 100644 index 6704505..0000000 --- a/apps/desktop/src-tauri/src/livekit_bridge.rs +++ /dev/null @@ -1,227 +0,0 @@ -// Rust LiveKit bridge — command/event glue between the JS CallContext and -// the native livekit client. Feature-gated behind `rust-livekit` so the -// baseline build doesn't pay the libwebrtc download / link cost while the -// bridge is still evolving. -// -// Design contract (matches `lib/nativeLiveKit.ts` on the JS side): -// command: livekit_connect { url, token, e2ee_key_b64? } -// command: livekit_disconnect -// command: livekit_set_mic { enabled } -// command: livekit_set_camera { enabled } -// command: livekit_start_share {} -// command: livekit_stop_share {} -// command: livekit_send_data { payload_b64, reliable } -// event: livekit:room_state { state } -// event: livekit:participant_joined { identity, name? } -// event: livekit:participant_left { identity } -// event: livekit:track_published { identity, sid, kind, source } -// event: livekit:track_unpublished { identity, sid } -// event: livekit:audio_level { identity, level } -// event: livekit:data_received { identity, payload_b64 } -// event: livekit:error { message } -// -// Phase B.1 (this file) only wires connect/disconnect + room-state events -// so the JS side can prove round-trip; mic/camera/video come later. - -#![cfg(feature = "rust-livekit")] - -use std::sync::Arc; - -use livekit::{ - id::ParticipantIdentity, DataPacketKind, Room, RoomEvent, RoomOptions, -}; -use serde::{Deserialize, Serialize}; -use tauri::{AppHandle, Emitter, State}; -use tokio::sync::{mpsc, Mutex}; - -pub struct LivekitState { - room: Mutex>>, -} - -impl LivekitState { - pub fn new() -> Self { - Self { - room: Mutex::new(None), - } - } -} - -#[derive(Deserialize)] -pub struct ConnectArgs { - pub url: String, - pub token: String, -} - -#[derive(Serialize, Clone)] -struct RoomStatePayload { - state: &'static str, -} - -#[derive(Serialize, Clone)] -struct ParticipantPayload { - identity: String, -} - -#[derive(Serialize, Clone)] -struct DataPayload { - identity: String, - payload_b64: String, - reliable: bool, -} - -#[tauri::command] -pub async fn livekit_connect( - app: AppHandle, - state: State<'_, LivekitState>, - args: ConnectArgs, -) -> Result<(), String> { - let mut guard = state.room.lock().await; - if guard.is_some() { - return Err("already connected".into()); - } - let options = RoomOptions::default(); - let (room, mut events) = Room::connect(&args.url, &args.token, options) - .await - .map_err(|e| format!("livekit connect failed: {}", e))?; - let room = Arc::new(room); - *guard = Some(room.clone()); - drop(guard); - - let _ = app.emit( - "livekit:room_state", - RoomStatePayload { state: "connected" }, - ); - - // Spawn the event pump. Lives for the duration of the room connection; - // stops naturally when the channel closes (disconnect or crash). - let app_for_events = app.clone(); - tokio::spawn(async move { - while let Some(event) = events.recv().await { - pump_event(&app_for_events, event); - } - let _ = app_for_events.emit( - "livekit:room_state", - RoomStatePayload { - state: "disconnected", - }, - ); - }); - - Ok(()) -} - -fn pump_event(app: &AppHandle, event: RoomEvent) { - match event { - RoomEvent::ParticipantConnected(p) => { - let _ = app.emit( - "livekit:participant_joined", - ParticipantPayload { - identity: identity_string(p.identity()), - }, - ); - } - RoomEvent::ParticipantDisconnected(p) => { - let _ = app.emit( - "livekit:participant_left", - ParticipantPayload { - identity: identity_string(p.identity()), - }, - ); - } - RoomEvent::DataReceived { - payload, - kind, - participant, - .. - } => { - use base64::engine::general_purpose::STANDARD; - use base64::Engine; - let identity = participant - .map(|p| identity_string(p.identity())) - .unwrap_or_default(); - let _ = app.emit( - "livekit:data_received", - DataPayload { - identity, - payload_b64: STANDARD.encode(payload.as_ref()), - reliable: matches!(kind, DataPacketKind::Reliable), - }, - ); - } - RoomEvent::Disconnected { .. } => { - let _ = app.emit( - "livekit:room_state", - RoomStatePayload { - state: "disconnected", - }, - ); - } - _ => { - // Remaining events (TrackPublished, TrackSubscribed, etc.) land - // in later phases. Ignoring silently keeps the prototype small. - } - } -} - -fn identity_string(id: ParticipantIdentity) -> String { - // ParticipantIdentity is a newtype around String in the livekit crate. - id.0 -} - -#[tauri::command] -pub async fn livekit_disconnect(state: State<'_, LivekitState>) -> Result<(), String> { - let mut guard = state.room.lock().await; - if let Some(room) = guard.take() { - let _ = room.close().await; - } - Ok(()) -} - -#[tauri::command] -pub async fn livekit_send_data( - state: State<'_, LivekitState>, - payload_b64: String, - reliable: bool, -) -> Result<(), String> { - use base64::engine::general_purpose::STANDARD; - use base64::Engine; - let room = state.room.lock().await; - let room = room.as_ref().ok_or_else(|| "not connected".to_string())?; - let payload = STANDARD - .decode(&payload_b64) - .map_err(|e| format!("bad base64: {}", e))?; - let kind = if reliable { - DataPacketKind::Reliable - } else { - DataPacketKind::Lossy - }; - room.local_participant() - .publish_data(livekit::prelude::DataPacket { - payload, - topic: None, - reliable: matches!(kind, DataPacketKind::Reliable), - destination_identities: Vec::new(), - }) - .await - .map_err(|e| format!("publish_data failed: {}", e))?; - Ok(()) -} - -// Placeholder — Phase B.2 will fill these in. -#[tauri::command] -pub async fn livekit_set_mic(_enabled: bool) -> Result<(), String> { - Err("livekit_set_mic not implemented — Phase B.2".into()) -} - -#[tauri::command] -pub async fn livekit_set_camera(_enabled: bool) -> Result<(), String> { - Err("livekit_set_camera not implemented — Phase B.2".into()) -} - -// Unused-send bridge so `mpsc` doesn't get unused-import-warned when the -// feature gate is off. -#[allow(dead_code)] -fn _mpsc_anchor() -> mpsc::Sender<()> { - let (tx, _rx) = mpsc::channel::<()>(1); - tx -} diff --git a/apps/desktop/src-tauri/src/main.rs b/apps/desktop/src-tauri/src/main.rs deleted file mode 100644 index 4154dd4..0000000 --- a/apps/desktop/src-tauri/src/main.rs +++ /dev/null @@ -1,6 +0,0 @@ -// Prevents additional console window on Windows in release. -#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] - -fn main() { - chat_app_desktop_lib::run(); -} diff --git a/apps/desktop/src-tauri/src/screen_audio.rs b/apps/desktop/src-tauri/src/screen_audio.rs deleted file mode 100644 index ee62151..0000000 --- a/apps/desktop/src-tauri/src/screen_audio.rs +++ /dev/null @@ -1,428 +0,0 @@ -// Native system-audio capture for the custom screen-share picker. Without -// this path the picker has to fall back to getDisplayMedia whenever the -// user ticks "Mit System-Sound", because Chromium only wires audio into -// desktop captures that the OS picker produced. Here we grab the default -// render endpoint's loopback stream via WASAPI, convert it to 48kHz f32 -// stereo, and ship the samples to the JS side through a Tauri Channel. -// An AudioWorklet on the frontend feeds them into a MediaStreamDestination -// so LiveKit publishes a plain ScreenShareAudio track. -// -// Windows-only for v1. macOS + Linux stubs return a clear error so the -// frontend can fall back cleanly on those platforms until their native -// paths ship (ScreenCaptureKit-audio / PipeWire). - -#![allow(clippy::needless_return)] - -use base64::Engine; -use serde::Serialize; -use std::collections::HashMap; -use std::sync::atomic::{AtomicBool, AtomicU32, Ordering}; -use std::sync::{Arc, Mutex, OnceLock}; -use std::thread; -use tauri::ipc::Channel; - -// Output format we always deliver to the frontend. Picking a single fixed -// format means the AudioWorklet never has to renegotiate — it just assumes -// interleaved f32 stereo at 48kHz. WASAPI mix format is usually already -// this on Windows 10+, so the resample branch is rarely hit. -const OUTPUT_SAMPLE_RATE: u32 = 48_000; -const OUTPUT_CHANNELS: u16 = 2; - -static NEXT_ID: AtomicU32 = AtomicU32::new(1); -static SESSIONS: OnceLock>> = OnceLock::new(); - -fn sessions() -> &'static Mutex> { - SESSIONS.get_or_init(|| Mutex::new(HashMap::new())) -} - -struct Session { - stop: Arc, - handle: Option>, -} - -#[derive(Serialize, Clone)] -#[serde(rename_all = "camelCase")] -pub struct AudioFramePayload { - pub capture_id: u32, - pub sample_rate: u32, - pub channels: u16, - /// Interleaved little-endian f32 stereo samples, base64-encoded. - /// Frontend decodes via `atob` → `Uint8Array` → `Float32Array` view. - /// Base64 is used instead of a raw `Vec` because Tauri Channel - /// serialises via JSON — a JSON array of floats balloons to ~2–3× - /// the byte count, and at 48kHz stereo that's enough IPC traffic - /// to matter. - pub samples_base64: String, -} - -/// Start a loopback capture of the default render endpoint and begin -/// streaming audio frames on the provided channel. Returns a numeric -/// capture id that must be handed to `stop_system_audio_capture` when -/// the share ends. -#[tauri::command] -pub fn start_system_audio_capture( - channel: Channel, -) -> Result { - #[cfg(target_os = "windows")] - { - let capture_id = NEXT_ID.fetch_add(1, Ordering::Relaxed); - let stop = Arc::new(AtomicBool::new(false)); - let stop_clone = Arc::clone(&stop); - - let handle = thread::Builder::new() - .name(format!("screen-audio-{capture_id}")) - .spawn(move || { - if let Err(err) = - windows_loopback::capture_loop(capture_id, channel, stop_clone) - { - eprintln!("screen-audio {capture_id}: {err}"); - } - }) - .map_err(|e| format!("failed to spawn audio thread: {e}"))?; - - sessions().lock().unwrap().insert( - capture_id, - Session { - stop, - handle: Some(handle), - }, - ); - Ok(capture_id) - } - - #[cfg(not(target_os = "windows"))] - { - // Keep the `channel` binding alive so Tauri doesn't complain about - // an unused parameter on the non-Windows build. - let _ = channel; - Err("system audio capture only supported on Windows".into()) - } -} - -/// Tear down the capture for the given id. Safe to call on a missing id -/// (no-op) so the JS side doesn't have to track whether the stop has -/// already been issued by the screen-share teardown path. -#[tauri::command] -pub fn stop_system_audio_capture(capture_id: u32) -> Result<(), String> { - let session = sessions().lock().unwrap().remove(&capture_id); - let Some(mut session) = session else { - return Ok(()); - }; - session.stop.store(true, Ordering::Relaxed); - if let Some(handle) = session.handle.take() { - // Best-effort join — the capture loop polls `stop` every event - // cycle (≤100ms) so this usually returns promptly. If the WASAPI - // call is wedged we'd rather drop the handle than hang the stop. - let _ = handle.join(); - } - Ok(()) -} - -// --------------------------------------------------------------------------- -// Windows loopback implementation -// --------------------------------------------------------------------------- - -#[cfg(target_os = "windows")] -mod windows_loopback { - use super::*; - use wasapi::{initialize_mta, Direction, SampleType, ShareMode}; - - pub fn capture_loop( - capture_id: u32, - channel: Channel, - stop: Arc, - ) -> Result<(), String> { - // COM must be initialised on every thread that touches WASAPI. - // MTA is the right model for a background capture thread — STA - // would require message pumping we don't want to add. - initialize_mta() - .ok() - .map_err(|e| format!("initialize_mta: {e:?}"))?; - - let device = wasapi::get_default_device(&Direction::Render) - .map_err(|e| format!("get_default_device: {e:?}"))?; - let mut audio_client = device - .get_iaudioclient() - .map_err(|e| format!("get_iaudioclient: {e:?}"))?; - - // Use the mix format that Windows is already pushing to the - // endpoint. Loopback capture won't convert for us — asking for a - // fixed format here makes Initialize() fail on non-matching - // hardware. We resample + channel-mix ourselves downstream. - let mix_format = audio_client - .get_mixformat() - .map_err(|e| format!("get_mixformat: {e:?}"))?; - let input_rate = mix_format.get_samplespersec(); - let input_channels = mix_format.get_nchannels(); - let bits_per_sample = mix_format.get_bitspersample(); - let block_align = mix_format.get_blockalign(); - let sample_type = mix_format.get_subformat().unwrap_or(SampleType::Int); - - let (def_time, _min_time) = audio_client - .get_periods() - .map_err(|e| format!("get_periods: {e:?}"))?; - - // Direction::Capture + loopback: WASAPI streams what Windows is - // sending to the speakers instead of what an input device is - // producing. Shared mode so we coexist with other apps. - audio_client - .initialize_client( - &mix_format, - def_time, - &Direction::Capture, - &ShareMode::Shared, - true, - ) - .map_err(|e| format!("initialize_client: {e:?}"))?; - - let h_event = audio_client - .set_get_eventhandle() - .map_err(|e| format!("set_get_eventhandle: {e:?}"))?; - let capture_client = audio_client - .get_audiocaptureclient() - .map_err(|e| format!("get_audiocaptureclient: {e:?}"))?; - - audio_client - .start_stream() - .map_err(|e| format!("start_stream: {e:?}"))?; - - // Resampler state — last stereo frame from the previous buffer so - // linear interpolation at the buffer boundary doesn't click. - // Initialised to silence. - let mut last_stereo: [f32; 2] = [0.0, 0.0]; - - while !stop.load(Ordering::Relaxed) { - // 100ms timeout lets the loop check the stop flag even when - // the endpoint is silent (WASAPI doesn't signal the event at - // all for pure-silence streams on some driver versions). - if h_event.wait_for_event(100).is_err() { - continue; - } - - // Drain all packets available since the last wake — there - // can be several queued if we were preempted. - loop { - if stop.load(Ordering::Relaxed) { - break; - } - let frames_available = match capture_client.get_next_nbr_frames() { - Ok(Some(n)) if n > 0 => n, - Ok(_) => break, - Err(e) => { - eprintln!( - "screen-audio {capture_id}: get_next_nbr_frames: {e:?}" - ); - break; - } - }; - - let bytes_needed = - frames_available as usize * block_align as usize; - let mut raw = vec![0u8; bytes_needed]; - if let Err(e) = capture_client.read_from_device(&mut raw) { - eprintln!( - "screen-audio {capture_id}: read_from_device: {e:?}" - ); - break; - } - - // Decode PCM into interleaved f32 at the device's native - // rate + channel count. - let decoded = decode_pcm( - &raw, - input_channels, - bits_per_sample, - &sample_type, - ); - - // Channel-fold → 2ch, then resample → 48kHz. - let stereo = to_stereo(&decoded, input_channels); - let out_samples = resample_linear_stereo( - &stereo, - input_rate, - OUTPUT_SAMPLE_RATE, - &mut last_stereo, - ); - - if out_samples.is_empty() { - continue; - } - - // Pack f32s as little-endian bytes then base64. IPC-wise - // this is ~1.3× the raw byte count versus 5–10× for a - // JSON array of floats, which is the difference between - // "fine" and "wastes a CPU core" at 48kHz stereo. - let mut bytes = Vec::with_capacity(out_samples.len() * 4); - for s in &out_samples { - bytes.extend_from_slice(&s.to_le_bytes()); - } - let samples_b64 = - base64::engine::general_purpose::STANDARD.encode(&bytes); - - if channel - .send(AudioFramePayload { - capture_id, - sample_rate: OUTPUT_SAMPLE_RATE, - channels: OUTPUT_CHANNELS, - samples_base64: samples_b64, - }) - .is_err() - { - // Frontend went away — stop cleanly. - stop.store(true, Ordering::Relaxed); - break; - } - } - } - - let _ = audio_client.stop_stream(); - Ok(()) - } - - // Convert a raw WASAPI buffer into interleaved f32 at the device's - // native channel count. Handles the three formats that actually show - // up on Windows render endpoints: f32 (most modern hardware), i16 - // (older onboard codecs), and i32 (pro audio interfaces). Anything - // else falls through to zeros so a weird format doesn't crash the - // share — the user will notice silence and can retry. - fn decode_pcm( - raw: &[u8], - channels: u16, - bits_per_sample: u16, - sample_type: &SampleType, - ) -> Vec { - match (sample_type, bits_per_sample) { - (SampleType::Float, 32) => { - let mut out = Vec::with_capacity(raw.len() / 4); - for chunk in raw.chunks_exact(4) { - out.push(f32::from_le_bytes([ - chunk[0], chunk[1], chunk[2], chunk[3], - ])); - } - out - } - (SampleType::Int, 16) => { - let scale = 1.0_f32 / (i16::MAX as f32); - let mut out = Vec::with_capacity(raw.len() / 2); - for chunk in raw.chunks_exact(2) { - let s = i16::from_le_bytes([chunk[0], chunk[1]]); - out.push(s as f32 * scale); - } - out - } - (SampleType::Int, 32) => { - let scale = 1.0_f32 / (i32::MAX as f32); - let mut out = Vec::with_capacity(raw.len() / 4); - for chunk in raw.chunks_exact(4) { - let s = i32::from_le_bytes([ - chunk[0], chunk[1], chunk[2], chunk[3], - ]); - out.push(s as f32 * scale); - } - out - } - _ => { - // Unknown format — emit silence of the right frame count - // so downstream math stays correct. - let bytes_per_frame = - (bits_per_sample as usize / 8) * channels as usize; - let frames = if bytes_per_frame == 0 { - 0 - } else { - raw.len() / bytes_per_frame - }; - vec![0.0; frames * channels as usize] - } - } - } - - // Down- or up-mix to stereo. Surround layouts fold L+R only (center - // + surrounds get dropped) which is the simplest defensible choice - // for screen-share audio — most content is LR-centric and a proper - // ITU-R BS.775 downmix would pull in matrix coefficients we'd rather - // avoid in v1. - fn to_stereo(interleaved: &[f32], channels: u16) -> Vec { - if channels == 0 || interleaved.is_empty() { - return Vec::new(); - } - if channels == 2 { - return interleaved.to_vec(); - } - let ch = channels as usize; - let frames = interleaved.len() / ch; - let mut out = Vec::with_capacity(frames * 2); - if channels == 1 { - for i in 0..frames { - let s = interleaved[i]; - out.push(s); - out.push(s); - } - } else { - for i in 0..frames { - let base = i * ch; - out.push(interleaved[base]); - out.push(interleaved[base + 1]); - } - } - out - } - - // Linear-interpolation resampler for interleaved stereo f32. Not the - // prettiest option theoretically, but at 44.1→48 the audible - // artefacts stay below threshold for speech + game/music content. The - // `last_stereo` state preserves the final frame across invocations so - // the interpolation at the buffer boundary doesn't produce a click. - fn resample_linear_stereo( - input_stereo: &[f32], - input_rate: u32, - output_rate: u32, - last_stereo: &mut [f32; 2], - ) -> Vec { - if input_stereo.is_empty() { - return Vec::new(); - } - if input_rate == output_rate { - last_stereo[0] = input_stereo[input_stereo.len() - 2]; - last_stereo[1] = input_stereo[input_stereo.len() - 1]; - return input_stereo.to_vec(); - } - let ratio = output_rate as f64 / input_rate as f64; - let in_frames = input_stereo.len() / 2; - let out_frames = (in_frames as f64 * ratio).floor() as usize; - if out_frames == 0 { - last_stereo[0] = input_stereo[input_stereo.len() - 2]; - last_stereo[1] = input_stereo[input_stereo.len() - 1]; - return Vec::new(); - } - let mut out = Vec::with_capacity(out_frames * 2); - - let prev_l = last_stereo[0]; - let prev_r = last_stereo[1]; - - for i in 0..out_frames { - let src_pos = i as f64 / ratio; - let src_frame = src_pos.floor() as i64; - let frac = (src_pos - src_frame as f64) as f32; - - // `src_frame == -1` comes up for the very first output frame - // when ratio > 1 — interpolate against the previous buffer's - // final sample to bridge the two. - let (l0, r0) = if src_frame < 0 { - (prev_l, prev_r) - } else { - let idx = (src_frame as usize).min(in_frames - 1) * 2; - (input_stereo[idx], input_stereo[idx + 1]) - }; - let next = ((src_frame + 1) as usize).min(in_frames - 1); - let l1 = input_stereo[next * 2]; - let r1 = input_stereo[next * 2 + 1]; - - out.push(l0 + (l1 - l0) * frac); - out.push(r0 + (r1 - r0) * frac); - } - - last_stereo[0] = input_stereo[input_stereo.len() - 2]; - last_stereo[1] = input_stereo[input_stereo.len() - 1]; - out - } -} diff --git a/apps/desktop/src-tauri/src/screen_capture.rs b/apps/desktop/src-tauri/src/screen_capture.rs deleted file mode 100644 index c815b91..0000000 --- a/apps/desktop/src-tauri/src/screen_capture.rs +++ /dev/null @@ -1,266 +0,0 @@ -// Native screen / window capture pipeline. Spawns a Rust thread per active -// capture that grabs frames via xcap, downscales them to the user's target -// resolution, encodes JPEG, and streams each frame to the JS side through -// a Tauri `Channel`. The JS end decodes into an -// ImageBitmap, draws to a , and exposes the canvas as a -// MediaStream via captureStream() — that stream is what LiveKit publishes. -// Net result: the user picks a source in our custom picker and the share -// starts directly, without the OS/browser picker appearing. -// -// JPEG on the Rust side + decode on the JS side introduces a second -// encoding hop (LiveKit re-encodes VP9 later) but keeps IPC bandwidth -// manageable — raw RGBA at 1920×1080×30fps would be ~240MB/s and cannot -// go over Tauri's JSON-serialised IPC. JPEG frames at Q72 land around -// 50–150KB each, so 30fps = 2–5MB/s of base64 traffic, which is fine. - -use base64::Engine; -use serde::Serialize; -use std::collections::HashMap; -use std::sync::atomic::{AtomicBool, AtomicU32, Ordering}; -use std::sync::{Arc, Mutex, OnceLock}; -use std::thread; -use std::time::{Duration, Instant}; -use tauri::ipc::Channel; - -static NEXT_ID: AtomicU32 = AtomicU32::new(1); -static SESSIONS: OnceLock>> = OnceLock::new(); - -fn sessions() -> &'static Mutex> { - SESSIONS.get_or_init(|| Mutex::new(HashMap::new())) -} - -struct Session { - stop: Arc, - handle: Option>, -} - -#[derive(Serialize, Clone)] -#[serde(rename_all = "camelCase")] -pub struct FramePayload { - pub capture_id: u32, - pub width: u32, - pub height: u32, - /// JPEG image bytes, base64-encoded (no data-URL prefix). Frontend - /// reconstructs via `Uint8Array.from(atob(...))` and decodes with - /// `createImageBitmap(blob)`. - pub jpeg_base64: String, -} - -enum Source { - Window(xcap::Window), - Monitor(xcap::Monitor), -} - -/// Start a continuous capture for the given source id and begin streaming -/// JPEG frames via the provided channel. Returns a numeric capture id that -/// must be passed to `stop_screen_capture` to tear the pipeline down. -#[tauri::command] -pub fn start_screen_capture( - source_id: String, - max_width: u32, - max_height: u32, - fps: u32, - channel: Channel, -) -> Result { - let clamped_fps = fps.clamp(5, 60); - let clamped_w = max_width.max(320).min(3840); - let clamped_h = max_height.max(180).min(2160); - - // Probe once on the command thread so we can surface a clear error - // before spawning; the actual capture handle is re-resolved inside the - // worker thread (xcap::Window holds a Windows HWND which is !Send). - if find_source(&source_id).is_none() { - return Err(format!("screen source {source_id} not found")); - } - - let capture_id = NEXT_ID.fetch_add(1, Ordering::Relaxed); - let stop = Arc::new(AtomicBool::new(false)); - let stop_clone = Arc::clone(&stop); - let source_id_owned = source_id; - - let handle = thread::Builder::new() - .name(format!("screen-capture-{capture_id}")) - .spawn(move || { - capture_loop( - source_id_owned, - clamped_w, - clamped_h, - clamped_fps, - capture_id, - channel, - stop_clone, - ); - }) - .map_err(|e| format!("failed to spawn capture thread: {e}"))?; - - sessions().lock().unwrap().insert( - capture_id, - Session { - stop, - handle: Some(handle), - }, - ); - Ok(capture_id) -} - -/// Signal the capture thread to stop and join it. Safe to call more than -/// once — missing ids are silently no-ops so the JS side doesn't need to -/// track whether a stop was already issued by the OS "stop sharing" path. -#[tauri::command] -pub fn stop_screen_capture(capture_id: u32) -> Result<(), String> { - let session = sessions().lock().unwrap().remove(&capture_id); - let Some(mut session) = session else { - return Ok(()); - }; - session.stop.store(true, Ordering::Relaxed); - if let Some(handle) = session.handle.take() { - // Best-effort join. If the thread is stuck in a long OS capture - // call we don't want to hang the command — detach after a brief - // wait by dropping the handle. - let _ = handle.join(); - } - Ok(()) -} - -fn capture_loop( - source_id: String, - max_w: u32, - max_h: u32, - fps: u32, - capture_id: u32, - channel: Channel, - stop: Arc, -) { - let frame_interval = Duration::from_nanos(1_000_000_000 / fps as u64); - let jpeg_quality: u8 = 72; - - // Re-resolve the source inside the worker thread — xcap::Window holds - // an HWND which is !Send so we can't move it across threads. Caching - // the handle for the lifetime of the loop keeps per-frame cost to the - // actual pixel capture + encode. - let source = match find_source(&source_id) { - Some(s) => s, - None => { - eprintln!("screen-capture {capture_id}: source vanished before capture started"); - return; - } - }; - - while !stop.load(Ordering::Relaxed) { - let frame_start = Instant::now(); - - let img_result = match &source { - Source::Window(w) => w.capture_image(), - Source::Monitor(m) => m.capture_image(), - }; - let img = match img_result { - Ok(i) => i, - Err(err) => { - eprintln!("screen-capture {capture_id}: capture failed: {err}"); - // Brief backoff before retrying — transient Windows GDI - // errors (e.g. during screen lock) tend to recover within - // a frame or two. - thread::sleep(frame_interval); - continue; - } - }; - - let (raw_w, raw_h) = img.dimensions(); - let (tgt_w, tgt_h) = scale_to_fit(raw_w, raw_h, max_w, max_h); - let scaled = if (tgt_w, tgt_h) != (raw_w, raw_h) { - image::imageops::resize( - &img, - tgt_w, - tgt_h, - image::imageops::FilterType::Triangle, - ) - } else { - img - }; - - // JPEG doesn't support alpha; strip it before encoding. - let rgb = rgba_to_rgb(&scaled); - - let mut jpeg_buf: Vec = Vec::with_capacity((tgt_w * tgt_h) as usize); - { - use image::codecs::jpeg::JpegEncoder; - let mut encoder = JpegEncoder::new_with_quality(&mut jpeg_buf, jpeg_quality); - if let Err(err) = - encoder.encode(&rgb, tgt_w, tgt_h, image::ExtendedColorType::Rgb8) - { - eprintln!("screen-capture {capture_id}: encode failed: {err}"); - thread::sleep(frame_interval); - continue; - } - } - - let jpeg_base64 = base64::engine::general_purpose::STANDARD.encode(&jpeg_buf); - - let send_result = channel.send(FramePayload { - capture_id, - width: tgt_w, - height: tgt_h, - jpeg_base64, - }); - if send_result.is_err() { - // Frontend went away (window closed, renderer crashed). - break; - } - - // Pace to target framerate. If the capture + encode already took - // longer than one frame interval, yield a millisecond to avoid - // pegging a single core when the target is unreachable. - let elapsed = frame_start.elapsed(); - if elapsed < frame_interval { - thread::sleep(frame_interval - elapsed); - } else { - thread::sleep(Duration::from_millis(1)); - } - } -} - -fn rgba_to_rgb(buf: &image::RgbaImage) -> Vec { - let (w, h) = buf.dimensions(); - let mut out = Vec::with_capacity((w * h * 3) as usize); - for p in buf.pixels() { - out.extend_from_slice(&[p.0[0], p.0[1], p.0[2]]); - } - out -} - -fn scale_to_fit(w: u32, h: u32, max_w: u32, max_h: u32) -> (u32, u32) { - if w == 0 || h == 0 { - return (w, h); - } - let scale = (max_w as f32 / w as f32) - .min(max_h as f32 / h as f32) - .min(1.0); - if scale >= 1.0 { - return (w, h); - } - let new_w = ((w as f32) * scale).round().max(1.0) as u32; - let new_h = ((h as f32) * scale).round().max(1.0) as u32; - (new_w, new_h) -} - -fn find_source(source_id: &str) -> Option { - if let Some(rest) = source_id.strip_prefix("window:") { - let raw = rest.strip_suffix(":0")?; - let raw_id: u32 = raw.parse().ok()?; - let windows = xcap::Window::all().ok()?; - return windows - .into_iter() - .find(|w| w.id() == raw_id) - .map(Source::Window); - } - if let Some(rest) = source_id.strip_prefix("screen:") { - let raw = rest.strip_suffix(":0")?; - let raw_id: u32 = raw.parse().ok()?; - let monitors = xcap::Monitor::all().ok()?; - return monitors - .into_iter() - .find(|m| m.id() == raw_id) - .map(Source::Monitor); - } - None -} diff --git a/apps/desktop/src-tauri/src/screen_sources.rs b/apps/desktop/src-tauri/src/screen_sources.rs deleted file mode 100644 index 55873bb..0000000 --- a/apps/desktop/src-tauri/src/screen_sources.rs +++ /dev/null @@ -1,335 +0,0 @@ -// Source enumeration for the Discord-style screen-share picker. Split -// into two commands on the slow-vs-fast axis: -// -// - list_screen_sources — metadata only (no thumbnails). Fast; the -// picker shows names + placeholders instantly. -// - capture_screen_source_thumbnail — one thumbnail at a time, keyed by -// the id returned from the list. -// -// The frontend fans out the thumbnail calls via Promise.all so Tauri's -// command thread pool captures them in parallel — wall-clock time ends up -// bounded by the *slowest* source rather than the sum of all captures. -// The `id` field is emitted in Chromium's internal desktopCapturer format -// ("screen::0" / "window::0") so the JS side can try to pass it -// straight into getUserMedia's `chromeMediaSourceId` constraint, or use -// it as the source key for the native capture pipeline in screen_capture. -// -// xcap abstracts the platform-specific capture APIs (Windows GDI + DXGI, -// macOS CoreGraphics/ScreenCaptureKit, X11) so the code here stays flat. -// Thumbnails are captured at native resolution, then letterbox-downscaled -// to fit a 320×180 box to keep the base64 payload small. - -use base64::Engine; -use image::{ImageBuffer, Rgba}; -use serde::Serialize; - -// Thumbnail dimensions tuned for the picker grid: even smaller than the -// first pass because we're now streaming raw JPEG bytes (no base64) — -// smaller payload = less IPC postMessage work on the main thread. At -// 192×108 / Q60 the typical window thumbnail is 5–10 KB and decodes to -// the grid in a frame or two. -const THUMB_MAX_W: u32 = 192; -const THUMB_MAX_H: u32 = 108; -const THUMB_JPEG_QUALITY: u8 = 60; - -#[derive(Serialize, Clone)] -#[serde(rename_all = "camelCase")] -pub struct ScreenSource { - /// Chromium-format source id — stable within one enumeration call. - pub id: String, - /// Human-readable label for the picker (monitor name or window title). - pub name: String, - /// Discriminator for the grid grouping. - pub kind: &'static str, - /// Base64-encoded PNG, no data-URL prefix. None when the capture - /// fails (minimised window, permission-denied surface, transient - /// race). The UI renders a name-only card in that case. - pub thumbnail_png: Option, - /// Native width of the full-res source — mostly informational, used - /// by the UI for aspect-ratio styling of the card. - pub width: u32, - pub height: u32, -} - -// Fast metadata-only enumeration. No image capture happens here — that's -// why it returns in tens of milliseconds instead of the multi-second -// wait the single-shot enumerate_screen_sources command had. -#[tauri::command] -pub fn list_screen_sources() -> Result, String> { - let mut out: Vec = Vec::new(); - append_monitor_metadata(&mut out); - append_window_metadata(&mut out); - Ok(out) -} - -// One-shot thumbnail capture by source id. Called N times in parallel from -// the frontend after the list lands so the total wall-clock is bounded by -// the slowest capture rather than the sum. Legacy base64 variant — kept -// for rollback; the preferred path is `capture_screen_source_thumbnail_bytes`. -#[tauri::command] -pub fn capture_screen_source_thumbnail(source_id: String) -> Result, String> { - if let Some(raw) = source_id.strip_prefix("screen:").and_then(strip_zero_suffix) { - return Ok(capture_monitor_by_id(raw)); - } - if let Some(raw) = source_id.strip_prefix("window:").and_then(strip_zero_suffix) { - return Ok(capture_window_by_id(raw)); - } - Err(format!("unknown source id format: {source_id}")) -} - -// Binary variant: returns raw JPEG bytes wrapped in `tauri::ipc::Response` -// so Tauri ships them over IPC without JSON-encoding / base64. On the JS -// side, `invoke` resolves to an ArrayBuffer that we wrap in a Blob and -// expose via `URL.createObjectURL` — skips the base64-decode step -// entirely and keeps the main thread responsive during fan-in. -// -// The return type MUST be `Response` directly (not `Result`): -// a Result wrapper forces Tauri to JSON-serialise the variant so the -// frontend gets a JSON object instead of raw bytes. Failures — bad id -// format, capture errors, source vanished — all funnel into an empty -// byte buffer; the caller treats `byteLength === 0` as the "no thumbnail" -// signal. -#[tauri::command] -pub fn capture_screen_source_thumbnail_bytes(source_id: String) -> tauri::ipc::Response { - let bytes = if let Some(raw) = source_id.strip_prefix("screen:").and_then(strip_zero_suffix) { - capture_monitor_bytes_by_id(raw).unwrap_or_default() - } else if let Some(raw) = source_id.strip_prefix("window:").and_then(strip_zero_suffix) { - capture_window_bytes_by_id(raw).unwrap_or_default() - } else { - eprintln!("capture_screen_source_thumbnail_bytes: unknown id format: {source_id}"); - Vec::new() - }; - tauri::ipc::Response::new(bytes) -} - -fn strip_zero_suffix(s: &str) -> Option<&str> { - s.strip_suffix(":0") -} - -// Legacy one-shot all-in-one enumeration. Kept around so the frontend can -// fall back during rollout if the split pair throws; marked dead_code so -// the linker doesn't grumble when only the split variant is wired up. -#[allow(dead_code)] -#[tauri::command] -pub fn enumerate_screen_sources() -> Result, String> { - let mut out: Vec = Vec::new(); - append_monitors(&mut out); - append_windows(&mut out); - Ok(out) -} - -// --------------------------------------------------------------------------- -// Monitors -// --------------------------------------------------------------------------- - -fn append_monitor_metadata(out: &mut Vec) { - let monitors = match xcap::Monitor::all() { - Ok(m) => m, - Err(err) => { - eprintln!("xcap Monitor::all failed: {err}"); - return; - } - }; - for (idx, m) in monitors.iter().enumerate() { - out.push(ScreenSource { - id: format!("screen:{}:0", m.id()), - name: monitor_label(m, idx), - kind: "screen", - thumbnail_png: None, - width: m.width(), - height: m.height(), - }); - } -} - -#[allow(dead_code)] -fn append_monitors(out: &mut Vec) { - let monitors = match xcap::Monitor::all() { - Ok(m) => m, - Err(err) => { - eprintln!("xcap Monitor::all failed: {err}"); - return; - } - }; - for (idx, m) in monitors.iter().enumerate() { - out.push(ScreenSource { - id: format!("screen:{}:0", m.id()), - name: monitor_label(m, idx), - kind: "screen", - thumbnail_png: capture_monitor_thumbnail(m), - width: m.width(), - height: m.height(), - }); - } -} - -fn capture_monitor_by_id(raw: &str) -> Option { - let raw_id: u32 = raw.parse().ok()?; - let monitors = xcap::Monitor::all().ok()?; - let target = monitors.into_iter().find(|m| m.id() == raw_id)?; - capture_monitor_thumbnail(&target) -} - -fn capture_monitor_bytes_by_id(raw: &str) -> Option> { - let raw_id: u32 = raw.parse().ok()?; - let monitors = xcap::Monitor::all().ok()?; - let target = monitors.into_iter().find(|m| m.id() == raw_id)?; - let image = target.capture_image().ok()?; - encode_scaled_jpeg_bytes(image) -} - -fn monitor_label(m: &xcap::Monitor, idx: usize) -> String { - let name = m.name(); - if name.is_empty() { - format!("Bildschirm {}", idx + 1) - } else { - name.to_string() - } -} - -fn capture_monitor_thumbnail(m: &xcap::Monitor) -> Option { - let image = m.capture_image().ok()?; - encode_scaled_jpeg(image) -} - -// --------------------------------------------------------------------------- -// Windows -// --------------------------------------------------------------------------- - -fn append_window_metadata(out: &mut Vec) { - let windows = match xcap::Window::all() { - Ok(w) => w, - Err(err) => { - eprintln!("xcap Window::all failed: {err}"); - return; - } - }; - for w in windows.iter() { - if !is_shareable_window(w) { - continue; - } - let title = w.title(); - if title.trim().is_empty() { - continue; - } - out.push(ScreenSource { - id: format!("window:{}:0", w.id()), - name: title.to_string(), - kind: "window", - thumbnail_png: None, - width: w.width(), - height: w.height(), - }); - } -} - -#[allow(dead_code)] -fn append_windows(out: &mut Vec) { - let windows = match xcap::Window::all() { - Ok(w) => w, - Err(err) => { - eprintln!("xcap Window::all failed: {err}"); - return; - } - }; - for w in windows.iter() { - if !is_shareable_window(w) { - continue; - } - let title = w.title(); - if title.trim().is_empty() { - continue; - } - out.push(ScreenSource { - id: format!("window:{}:0", w.id()), - name: title.to_string(), - kind: "window", - thumbnail_png: capture_window_thumbnail(w), - width: w.width(), - height: w.height(), - }); - } -} - -fn capture_window_by_id(raw: &str) -> Option { - let raw_id: u32 = raw.parse().ok()?; - let windows = xcap::Window::all().ok()?; - let target = windows.into_iter().find(|w| w.id() == raw_id)?; - capture_window_thumbnail(&target) -} - -fn capture_window_bytes_by_id(raw: &str) -> Option> { - let raw_id: u32 = raw.parse().ok()?; - let windows = xcap::Window::all().ok()?; - let target = windows.into_iter().find(|w| w.id() == raw_id)?; - let image = target.capture_image().ok()?; - encode_scaled_jpeg_bytes(image) -} - -fn is_shareable_window(w: &xcap::Window) -> bool { - if w.is_minimized() { - return false; - } - let width = w.width(); - let height = w.height(); - // Tooltips, invisible tray-helpers, etc. sit at or near zero size — - // they'd clutter the picker grid and usually can't be captured anyway. - if width < 80 || height < 60 { - return false; - } - true -} - -fn capture_window_thumbnail(w: &xcap::Window) -> Option { - let image = w.capture_image().ok()?; - encode_scaled_jpeg(image) -} - -// --------------------------------------------------------------------------- -// Scaling + encoding -// --------------------------------------------------------------------------- - -// Letterbox-shrink the captured image so the long edge is at most -// THUMB_MAX_W / THUMB_MAX_H. Keeps aspect ratio, skips upscaling entirely -// (tiny windows stay their captured size). Returns raw JPEG bytes — the -// binary-IPC path ships these directly, the legacy base64 wrapper -// (`encode_scaled_jpeg`) wraps in base64 for the old command. -fn encode_scaled_jpeg_bytes(src: ImageBuffer, Vec>) -> Option> { - let (w, h) = src.dimensions(); - if w == 0 || h == 0 { - return None; - } - let scale = (THUMB_MAX_W as f32 / w as f32) - .min(THUMB_MAX_H as f32 / h as f32) - .min(1.0); - let scaled = if scale < 1.0 { - let new_w = ((w as f32) * scale).round().max(1.0) as u32; - let new_h = ((h as f32) * scale).round().max(1.0) as u32; - image::imageops::resize(&src, new_w, new_h, image::imageops::FilterType::Triangle) - } else { - src - }; - // JPEG encoder doesn't accept RGBA — strip alpha into a packed RGB - // buffer first. Alpha carries no info for a visible thumbnail anyway. - let (sw, sh) = (scaled.width(), scaled.height()); - let mut rgb: Vec = Vec::with_capacity((sw * sh * 3) as usize); - for p in scaled.pixels() { - rgb.extend_from_slice(&[p.0[0], p.0[1], p.0[2]]); - } - let mut buf: Vec = Vec::with_capacity((sw * sh / 8) as usize); - { - use image::codecs::jpeg::JpegEncoder; - let mut encoder = JpegEncoder::new_with_quality(&mut buf, THUMB_JPEG_QUALITY); - encoder - .encode(&rgb, sw, sh, image::ExtendedColorType::Rgb8) - .ok()?; - } - Some(buf) -} - -// Legacy base64 wrapper — used by `capture_screen_source_thumbnail` -// (Result, String>) which predates the binary variant. -fn encode_scaled_jpeg(src: ImageBuffer, Vec>) -> Option { - let bytes = encode_scaled_jpeg_bytes(src)?; - Some(base64::engine::general_purpose::STANDARD.encode(&bytes)) -} diff --git a/apps/desktop/src-tauri/tauri.conf.json b/apps/desktop/src-tauri/tauri.conf.json deleted file mode 100644 index d1c932b..0000000 --- a/apps/desktop/src-tauri/tauri.conf.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "$schema": "https://schema.tauri.app/config/2", - "productName": "ChatApp", - "version": "0.11.3", - "identifier": "com.meinname.chatapp", - "build": { - "beforeDevCommand": "pnpm vite:dev", - "beforeBuildCommand": "pnpm vite:build", - "devUrl": "http://localhost:1420", - "frontendDist": "../dist" - }, - "app": { - "windows": [ - { - "title": "ChatApp", - "width": 1200, - "height": 800, - "minWidth": 800, - "minHeight": 600, - "resizable": true, - "fullscreen": false - } - ], - "security": { - "csp": null - } - }, - "bundle": { - "active": true, - "targets": "all", - "icon": [ - "icons/32x32.png", - "icons/128x128.png", - "icons/128x128@2x.png", - "icons/icon.icns", - "icons/icon.ico" - ], - "createUpdaterArtifacts": true, - "macOS": { - "signingIdentity": "-" - } - }, - "plugins": { - "updater": { - "endpoints": [ - "https://update.netralax.cloud/windows/latest.json" - ], - "pubkey": "dW50cnVzdGVkIGNvbW1lbnQ6IG1pbmlzaWduIHB1YmxpYyBrZXk6IEI1Mzc0QjVBQUZEQTA3RUIKUldUckI5cXZXa3MzdGM3QkE4WWFPd3NnVzRZeXdpcUM0eUtjRDlGN09ySEdzNXhLNlo3azBPajYK", - "windows": { - "installMode": "passive" - } - } - } -} diff --git a/apps/desktop/src/App.tsx b/apps/desktop/src/App.tsx index f70c493..ec24037 100644 --- a/apps/desktop/src/App.tsx +++ b/apps/desktop/src/App.tsx @@ -1,5 +1,5 @@ import { lazy, Suspense } from 'react'; -import { BrowserRouter, Navigate, Outlet, Route, Routes } from 'react-router-dom'; +import { HashRouter, Navigate, Outlet, Route, Routes } from 'react-router-dom'; import { AppShell } from './components/AppShell'; import { CrashToast } from './components/CrashToast'; @@ -31,6 +31,9 @@ const FriendsPage = lazy(() => const SettingsPage = lazy(() => import('./pages/SettingsPage').then((m) => ({ default: m.SettingsPage })), ); +const ChangelogPage = lazy(() => + import('./pages/ChangelogPage').then((m) => ({ default: m.ChangelogPage })), +); function RouteSuspense({ children }: { children: React.ReactNode }) { return ( @@ -64,7 +67,7 @@ export function App() { - + }> + + + + } + /> + }> }> - + diff --git a/apps/desktop/src/components/AppShell.tsx b/apps/desktop/src/components/AppShell.tsx index 43c8d2b..8bb9c7f 100644 --- a/apps/desktop/src/components/AppShell.tsx +++ b/apps/desktop/src/components/AppShell.tsx @@ -38,15 +38,13 @@ export function AppShell() { ); } -// Subtle ambient background — only renders in dark mode where the app's -// visual language expects depth. Light mode stays clean and flat. +// Subtle desktop texture for dark mode. The panels carry the depth; the +// background stays quiet so chat content remains the focus. function ShellBackground() { return (