export const normalizeViteModuleId = (id: string): string => { const withoutQuery = id.split('?', 1)[0] if (withoutQuery.startsWith('/@fs/')) return withoutQuery.slice('/@fs'.length) return withoutQuery } export const injectClientSnippet = (code: string, marker: string, snippet: string): string => { if (code.includes(marker)) return code const useClientMatch = code.match(/(['"])use client\1;?\s*\n/) if (!useClientMatch) return `${snippet}\n${code}` const insertAt = (useClientMatch.index ?? 0) + useClientMatch[0].length return `${code.slice(0, insertAt)}\n${snippet}\n${code.slice(insertAt)}` }