31 lines
1022 B
JavaScript
31 lines
1022 B
JavaScript
import { writeFile, access } from 'fs/promises';
|
|
import { constants } from 'fs';
|
|
import { randomBytes } from 'crypto';
|
|
import { join, dirname } from 'path';
|
|
import { fileURLToPath } from 'url';
|
|
|
|
// Resolve __dirname in ES Modules
|
|
const __filename = fileURLToPath(import.meta.url);
|
|
const __dirname = dirname(__filename);
|
|
|
|
// Define the file path (adjusted for new location in scripts/)
|
|
const filePath = join(__dirname, '..', 'src', 'qapp-config.ts');
|
|
|
|
try {
|
|
// Check if file already exists
|
|
await access(filePath, constants.F_OK);
|
|
console.log('⚠️ qapp-config.ts already exists. Skipping creation.');
|
|
} catch {
|
|
// File does not exist, proceed to create it
|
|
const publicSalt = randomBytes(32).toString('base64');
|
|
const tsContent = `export const publicSalt = "${publicSalt}";\n`;
|
|
|
|
try {
|
|
await writeFile(filePath, tsContent, 'utf8');
|
|
console.log('✅ qapp-config.ts has been created with a unique public salt.');
|
|
} catch (error) {
|
|
console.error('❌ Error writing qapp-config.ts:', error);
|
|
}
|
|
}
|
|
|