Fix preloader

This commit is contained in:
2026-05-21 20:12:53 +04:00
parent 03fc7cc9d5
commit 73dfd4e750
15 changed files with 333 additions and 676 deletions

View File

@@ -1,83 +0,0 @@
/* This is a script to build the site with Pagefind */
const { execSync } = require('child_process');
const { existsSync } = require('fs');
const { join } = require('path');
// Detect the platform
function detectPlatform() {
// Check environment variables
if (process.env.VERCEL) {
return 'vercel';
}
if (process.env.CF_PAGES) {
return 'cloudflare';
}
if (process.env.NETLIFY) {
return 'netlify';
}
if (process.env.GITHUB_ACTIONS) {
return 'github';
}
// Check if specific directories exist
if (existsSync('.vercel')) {
return 'vercel';
}
// Default to standard dist directory
return 'default';
}
// Get Pagefind output directory
function getPagefindOutputDir(platform) {
const outputDirs = {
vercel: '.vercel/output/static',
cloudflare: 'dist',
netlify: 'dist',
github: 'dist',
default: 'dist'
};
return outputDirs[platform] || 'dist';
}
// Main function
function main() {
const platform = detectPlatform();
const outputDir = getPagefindOutputDir(platform);
console.log(`🚀 Detected deployment platform: ${platform}`);
console.log(`📁 Pagefind output directory: ${outputDir}`);
try {
// Run Astro build
console.log('🔨 Running Astro build...');
execSync(`npx astro build`.trim(), {
stdio: 'inherit',
cwd: process.cwd() // Ensure in the correct directory
});
// Check if output directory exists
if (!existsSync(outputDir)) {
console.error(`❌ Output directory does not exist: ${outputDir}`);
process.exit(1);
}
// Run Pagefind
console.log(`🔍 Running Pagefind search index generation...`);
execSync(`npx pagefind --site ${outputDir}`, {
stdio: 'inherit',
cwd: process.cwd() // Ensure in the correct directory
});
console.log('✅ Build completed!');
console.log(`📊 Search index generated at: ${outputDir}/pagefind/`);
} catch (error) {
console.error('❌ Build failed:', error.message);
process.exit(1);
}
}
main();

9
scripts/copy-iconify.cjs Normal file
View File

@@ -0,0 +1,9 @@
const { copyFileSync, mkdirSync } = require("fs");
const { dirname, join } = require("path");
const src = join(__dirname, "../node_modules/iconify-icon/dist/iconify-icon.min.js");
const dest = join(__dirname, "../public/assets/iconify/iconify-icon.min.js");
mkdirSync(dirname(dest), { recursive: true });
copyFileSync(src, dest);
console.log(`Copied iconify-icon.min.js to ${dest}`);