#!/usr/bin/env node import { execSync } from 'node:child_process'; import { resolve } from 'node:path'; import process from 'node:process'; const [major, minor] = process.versions.node.split('.').map((part) => Number(part)); const supportsNativeRollup = ( major > 22 || (major === 22 && minor >= 12) || major === 21 || (major === 20 && minor >= 19) ); const env = { ...process.env }; if (!supportsNativeRollup) { env.ROLLUP_USE_NODE_JS = 'true'; console.log(`Node.js ${process.version} detected; using Rollup's JavaScript fallback.`); } else { console.log(`Node.js ${process.version} detected; using Rollup's native binary.`); } const viteBin = resolve(process.cwd(), 'node_modules', 'vite', 'bin', 'vite.js'); execSync(`node "${viteBin}" build`, { stdio: 'inherit', env });