@ -1,5 +1,6 @@
import fs from 'node:fs'
import fs from 'node:fs'
import path from 'node:path'
import path from 'node:path'
import { pipeline } from 'node:stream/promises'
import {
import {
SitemapStream ,
SitemapStream ,
type EnumChangefreq ,
type EnumChangefreq ,
@ -66,14 +67,10 @@ export async function generateSitemap(
const sitemapPath = path . join ( siteConfig . outDir , 'sitemap.xml' )
const sitemapPath = path . join ( siteConfig . outDir , 'sitemap.xml' )
const sitemapStream = new SitemapStream ( siteConfig . sitemap )
const sitemapStream = new SitemapStream ( siteConfig . sitemap )
const writeStream = fs . createWriteStream ( sitemapPath )
sitemapStream . pipe ( writeStream )
items . forEach ( ( item ) = > sitemapStream . write ( item ) )
items . forEach ( ( item ) = > sitemapStream . write ( item ) )
sitemapStream . end ( )
sitemapStream . end ( )
await new Promise ( ( resolve , reject ) = >
await pipeline ( sitemapStream , fs . createWriteStream ( sitemapPath ) )
writeStream . on ( 'finish' , resolve ) . on ( 'error' , reject )
)
} )
} )
}
}