mirror of
https://github.com/neynarxyz/create-farcaster-mini-app.git
synced 2025-11-18 17:09:47 -05:00
Revert "feat: replace next-auth with quick auth"
This reverts commit 86029b2bd9.
This commit is contained in:
@@ -5,6 +5,7 @@ import os from 'os';
|
||||
import { fileURLToPath } from 'url';
|
||||
import inquirer from 'inquirer';
|
||||
import dotenv from 'dotenv';
|
||||
import crypto from 'crypto';
|
||||
import { Vercel } from '@vercel/sdk';
|
||||
import { APP_NAME, APP_BUTTON_TEXT } from '../src/lib/constants';
|
||||
|
||||
@@ -129,7 +130,7 @@ async function checkRequiredEnvVars(): Promise<void> {
|
||||
|
||||
process.env.SPONSOR_SIGNER = sponsorSigner.toString();
|
||||
|
||||
if (process.env.SEED_PHRASE) {
|
||||
if (storeSeedPhrase) {
|
||||
fs.appendFileSync(
|
||||
'.env.local',
|
||||
`\nSPONSOR_SIGNER="${sponsorSigner}"`
|
||||
@@ -286,26 +287,17 @@ async function setVercelEnvVarSDK(vercelClient: Vercel, projectId: string, key:
|
||||
}
|
||||
|
||||
// Get existing environment variables
|
||||
const existingVars = await vercelClient.projects.filterProjectEnvs({
|
||||
const existingVars = await vercelClient.projects.getEnvironmentVariables({
|
||||
idOrName: projectId,
|
||||
});
|
||||
|
||||
// Handle different response types
|
||||
let envs: any[] = [];
|
||||
if ('envs' in existingVars && Array.isArray(existingVars.envs)) {
|
||||
envs = existingVars.envs;
|
||||
} else if ('target' in existingVars && 'key' in existingVars) {
|
||||
// Single environment variable response
|
||||
envs = [existingVars];
|
||||
}
|
||||
|
||||
const existingVar = envs.find((env: any) =>
|
||||
const existingVar = existingVars.envs?.find((env: any) =>
|
||||
env.key === key && env.target?.includes('production')
|
||||
);
|
||||
|
||||
if (existingVar && existingVar.id) {
|
||||
if (existingVar) {
|
||||
// Update existing variable
|
||||
await vercelClient.projects.editProjectEnv({
|
||||
await vercelClient.projects.editEnvironmentVariable({
|
||||
idOrName: projectId,
|
||||
id: existingVar.id,
|
||||
requestBody: {
|
||||
@@ -316,7 +308,7 @@ async function setVercelEnvVarSDK(vercelClient: Vercel, projectId: string, key:
|
||||
console.log(`✅ Updated environment variable: ${key}`);
|
||||
} else {
|
||||
// Create new variable
|
||||
await vercelClient.projects.createProjectEnv({
|
||||
await vercelClient.projects.createEnvironmentVariable({
|
||||
idOrName: projectId,
|
||||
requestBody: {
|
||||
key: key,
|
||||
@@ -434,7 +426,7 @@ async function waitForDeployment(vercelClient: Vercel | null, projectId: string,
|
||||
|
||||
while (Date.now() - startTime < maxWaitTime) {
|
||||
try {
|
||||
const deployments = await vercelClient?.deployments.getDeployments({
|
||||
const deployments = await vercelClient?.deployments.list({
|
||||
projectId: projectId,
|
||||
limit: 1,
|
||||
});
|
||||
@@ -566,15 +558,12 @@ async function deployToVercel(useGitHub = false): Promise<void> {
|
||||
|
||||
if (vercelClient) {
|
||||
try {
|
||||
const projects = await vercelClient.projects.getProjects({});
|
||||
const project = projects.projects.find(p => p.id === projectId || p.name === projectId);
|
||||
if (project) {
|
||||
projectName = project.name;
|
||||
domain = `${projectName}.vercel.app`;
|
||||
console.log('🌐 Using project name for domain:', domain);
|
||||
} else {
|
||||
throw new Error('Project not found');
|
||||
}
|
||||
const project = await vercelClient.projects.get({
|
||||
idOrName: projectId,
|
||||
});
|
||||
projectName = project.name;
|
||||
domain = `${projectName}.vercel.app`;
|
||||
console.log('🌐 Using project name for domain:', domain);
|
||||
} catch (error: unknown) {
|
||||
if (error instanceof Error) {
|
||||
console.warn('⚠️ Could not get project details via SDK, using CLI fallback');
|
||||
@@ -626,7 +615,12 @@ async function deployToVercel(useGitHub = false): Promise<void> {
|
||||
}
|
||||
|
||||
// Prepare environment variables
|
||||
const nextAuthSecret =
|
||||
process.env.NEXTAUTH_SECRET || crypto.randomBytes(32).toString('hex');
|
||||
const vercelEnv = {
|
||||
NEXTAUTH_SECRET: nextAuthSecret,
|
||||
AUTH_SECRET: nextAuthSecret,
|
||||
NEXTAUTH_URL: `https://${domain}`,
|
||||
NEXT_PUBLIC_URL: `https://${domain}`,
|
||||
|
||||
...(process.env.NEYNAR_API_KEY && { NEYNAR_API_KEY: process.env.NEYNAR_API_KEY }),
|
||||
@@ -720,6 +714,7 @@ async function deployToVercel(useGitHub = false): Promise<void> {
|
||||
console.log('🔄 Updating environment variables with correct domain...');
|
||||
|
||||
const updatedEnv: Record<string, string | object> = {
|
||||
NEXTAUTH_URL: `https://${actualDomain}`,
|
||||
NEXT_PUBLIC_URL: `https://${actualDomain}`,
|
||||
};
|
||||
|
||||
|
||||
@@ -149,7 +149,7 @@ async function startDev() {
|
||||
|
||||
nextDev = spawn(nextBin, ['dev', '-p', port.toString()], {
|
||||
stdio: 'inherit',
|
||||
env: { ...process.env, NEXT_PUBLIC_URL: miniAppUrl },
|
||||
env: { ...process.env, NEXT_PUBLIC_URL: miniAppUrl, NEXTAUTH_URL: miniAppUrl },
|
||||
cwd: projectRoot,
|
||||
shell: process.platform === 'win32' // Add shell option for Windows
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user