{ "name": "rocky-mountain-vending", "version": "0.1.0", "private": true, "type": "module", "packageManager": "pnpm@10.22.0", "scripts": { "build": "next build", "copy:check": "node scripts/check-public-copy.mjs", "diagnose:ebay": "node scripts/staging-smoke.mjs", "deploy:staging:convex-gate": "node scripts/check-convex-manuals-gate.mjs", "deploy:staging:env": "node scripts/deploy-readiness.mjs", "deploy:staging:preflight": "node scripts/deploy-readiness.mjs --build && pnpm deploy:staging:convex-gate", "deploy:staging:smoke": "node scripts/staging-smoke.mjs", "typecheck": "tsc --noEmit -p tsconfig.typecheck.json", "manuals:qdrant:build": "tsx scripts/build-manuals-qdrant-corpus.ts", "manuals:qdrant:eval": "tsx scripts/evaluate-manuals-qdrant-corpus.ts", "manuals:sync:convex": "tsx scripts/sync-manuals-to-convex.ts", "manuals:sync:convex:dry": "tsx scripts/sync-manuals-to-convex.ts --dry-run", "manuals:backfill:tenant": "tsx scripts/backfill-convex-manuals-tenant.ts", "ghl:export:call-transcripts": "tsx scripts/export-ghl-call-transcripts.ts", "ghl:export:outbound-call-transcripts": "tsx scripts/export-ghl-outbound-call-transcripts.ts", "convex:codegen": "node -e \"console.log('Convex generated stubs are committed. Run `pnpm exec convex dev` or `pnpm exec convex codegen` after configuring a deployment to replace them with typed output.')\"", "dev": "next dev", "lint": "eslint .", "lint:fix": "eslint . --fix", "format": "prettier . --write", "format:check": "prettier . --check", "voice-agent:dev": "tsx livekit-agent/worker.ts dev", "voice-agent:start": "tsx livekit-agent/worker.ts start", "voice-assistant:test:local": "node scripts/voice-assistant-regression.mjs --base-url http://127.0.0.1:3000 --label local", "voice-assistant:test:local:voice": "node scripts/voice-assistant-regression.mjs --base-url http://127.0.0.1:3000 --fake-media --label local-voice", "voice-assistant:test:live": "node scripts/voice-assistant-regression.mjs --base-url https://rockymountainvending.com --fake-media --label live", "start": "next start", "lighthouse:dev": "node scripts/lighthouse-test.js --dev", "lighthouse:build": "node scripts/lighthouse-test.js", "lighthouse:ci": "lighthouse-ci autorun", "analyze": "ANALYZE=true next build", "generate:links": "node scripts/generate-internal-links.js", "contacts:import:ghl": "tsx scripts/import-ghl-contacts-to-contact-profiles.ts", "links": "node scripts/generate-internal-links.js", "mcp": "pnpm dlx shadcn@latest mcp", "seo:sitemap": "node scripts/seo-internal-link-tool.js sitemap", "seo:analyze": "node scripts/seo-internal-link-tool.js analyze", "seo:optimize": "node scripts/seo-internal-link-tool.js optimize", "seo:report": "node scripts/seo-internal-link-tool.js report", "seo:json-ld": "node scripts/seo-internal-link-tool.js json-ld", "seo:interactive": "node scripts/seo-internal-link-tool.js interactive" }, "dependencies": { "@aws-sdk/client-sesv2": "^3.1017.0", "@aws-sdk/client-s3": "^3.0.0", "@hookform/resolvers": "^3.10.0", "@livekit/agents": "^1.2.1", "@livekit/agents-plugin-xai": "^1.2.1", "@livekit/components-react": "^2.9.20", "@livekit/components-styles": "^1.2.0", "@radix-ui/react-accordion": "1.2.2", "@radix-ui/react-alert-dialog": "1.1.4", "@radix-ui/react-aspect-ratio": "1.1.1", "@radix-ui/react-avatar": "1.1.2", "@radix-ui/react-checkbox": "1.1.3", "@radix-ui/react-collapsible": "1.1.2", "@radix-ui/react-context-menu": "2.2.4", "@radix-ui/react-dialog": "1.1.4", "@radix-ui/react-dropdown-menu": "2.1.4", "@radix-ui/react-hover-card": "1.1.4", "@radix-ui/react-label": "2.1.1", "@radix-ui/react-menubar": "1.1.4", "@radix-ui/react-navigation-menu": "1.2.3", "@radix-ui/react-popover": "1.1.4", "@radix-ui/react-progress": "1.1.1", "@radix-ui/react-radio-group": "1.2.2", "@radix-ui/react-scroll-area": "1.2.2", "@radix-ui/react-select": "2.1.4", "@radix-ui/react-separator": "1.1.1", "@radix-ui/react-slider": "1.2.2", "@radix-ui/react-slot": "1.1.1", "@radix-ui/react-switch": "1.1.2", "@radix-ui/react-tabs": "1.1.2", "@radix-ui/react-toast": "1.2.4", "@radix-ui/react-toggle": "1.1.1", "@radix-ui/react-toggle-group": "1.1.1", "@radix-ui/react-tooltip": "1.1.6", "@stripe/stripe-js": "^4.0.0", "@supabase/ssr": "^0.8.0", "@supabase/supabase-js": "^2.95.3", "@vercel/analytics": "latest", "autoprefixer": "^10.4.20", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "1.0.4", "convex": "^1.34.0", "date-fns": "4.1.0", "dotenv": "^17.3.1", "embla-carousel-react": "8.5.1", "input-otp": "1.4.1", "livekit-client": "^2.18.0", "livekit-server-sdk": "^2.15.0", "lucide-react": "^0.454.0", "next": "16.0.0", "next-themes": "^0.4.6", "react": "19.2.0", "react-day-picker": "9.8.0", "react-dom": "19.2.0", "react-hook-form": "^7.60.0", "react-resizable-panels": "^2.1.7", "recharts": "2.15.4", "sonner": "^1.7.4", "stripe": "^17.0.0", "tailwind-merge": "^2.5.5", "tailwindcss-animate": "^1.0.7", "usesend-js": "^1.6.3", "vaul": "^0.9.9", "zod": "3.25.76" }, "devDependencies": { "@next/bundle-analyzer": "^15.1.0", "@tailwindcss/postcss": "^4.1.9", "@types/node": "^22", "@types/react": "^19", "@types/react-dom": "^19", "chrome-launcher": "^1.1.0", "eslint": "^9.38.0", "eslint-config-next": "16.0.0", "eslint-config-prettier": "^10.1.8", "lighthouse": "^12.0.0", "playwright": "^1.58.2", "postcss": "^8.5", "prettier": "^3.6.2", "tailwindcss": "^4.1.9", "tsx": "^4.21.0", "tw-animate-css": "1.3.3", "typescript": "^5", "wait-on": "^8.0.1", "wrangler": "^3.0.0" } }