diff --git a/ts/smartsitemap.classes.smartsitemap.ts b/ts/smartsitemap.classes.smartsitemap.ts index 10fcde4..db3d2a3 100644 --- a/ts/smartsitemap.classes.smartsitemap.ts +++ b/ts/smartsitemap.classes.smartsitemap.ts @@ -1,5 +1,5 @@ import { SitemapNews } from './smartsitemap.classes.sitemapnews'; -import { SitemapWebsite } from './smartsitemap.classes.sitemapwebsite'; +import { IUrlInfo, SitemapWebsite } from './smartsitemap.classes.sitemapwebsite'; import * as plugins from './smartsitemap.plugins'; import * as interfaces from './interfaces'; @@ -18,7 +18,7 @@ export class SmartSitemap { /** * creates a normal sitemap from a list of urls */ - public async createSitemapFromYmlString(yamlString: string) { + public async createSitemapFromYmlString(yamlString: string): Promise { const yamlObject: interfaces.ISitemapYaml = await plugins.smartyaml.yamlStringToObject(yamlString); const sitemapWebsite = new SitemapWebsite(); for(const urlArg of yamlObject.daily) { @@ -28,5 +28,17 @@ export class SmartSitemap { frequency: 'daily' }); } + return sitemapWebsite.exportSitemapXml(); + } + + /** + * creates a normal sitemap from a list of urls + */ + public async createSitemapFromUrlInfoArray(urlInfosArg: IUrlInfo[]) { + const sitemapWebsite = new SitemapWebsite(); + for(const urlInfo of urlInfosArg) { + sitemapWebsite.addUrl(urlInfo); + } + return sitemapWebsite.exportSitemapXml(); } }