diff --git a/dist/index.d.ts b/dist/index.d.ts index fb199e9..f054354 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -1,4 +1,9 @@ -import * as types from "@/types"; +export type versionNotes = { + title: string; + date: Date | string; + link: string; + html: string; +}; export default class Updater { archiveURL: string; feedType: string; @@ -8,5 +13,5 @@ export default class Updater { private atomGetArchive; private rssGetVersionDetails; private rssGetArchive; - getArchive(): Promise; + getArchive(): Promise; } diff --git a/dist/types.d.ts b/dist/types.d.ts deleted file mode 100644 index a871e56..0000000 --- a/dist/types.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type versionNotes = { - title: string; - date: Date | string; - link: string; - html: string; -}; diff --git a/src/index.ts b/src/index.ts index a8889e0..25a9857 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,6 +1,12 @@ -import * as types from "@/types"; import { parseXml, XmlDocument, XmlElement, XmlText } from "@rgrove/parse-xml"; +export type versionNotes = { + title: string; + date: Date | string; + link: string; + html: string; +} + export default class Updater { public archiveURL: string; public feedType: string; @@ -18,8 +24,8 @@ export default class Updater { } // atom feeds - private atomGetVersionDetails(entry: XmlElement): types.versionNotes { - let outEntry: types.versionNotes = {title: "", date: new Date, link: "", html: ""}; + private atomGetVersionDetails(entry: XmlElement): versionNotes { + let outEntry: versionNotes = {title: "", date: new Date, link: "", html: ""}; entry.children.forEach((elm) => { let element = elm as XmlElement; if (element.name == "title") { @@ -38,11 +44,11 @@ export default class Updater { return outEntry; } - private async atomGetArchive(): Promise { + private async atomGetArchive(): Promise { const rawArchive: string = await this.getRawArchive(); const releaseNotes: XmlDocument = parseXml(rawArchive); - const output: types.versionNotes[] = []; + const output: versionNotes[] = []; // console.dir(releaseNotes) (releaseNotes.children[0] as XmlElement).children.forEach((elm) => { if (elm.type == "element") { @@ -56,8 +62,8 @@ export default class Updater { } // rss feeds - private rssGetVersionDetails(entry: XmlElement): types.versionNotes { - let outEntry: types.versionNotes = {title: "", date: new Date, link: "", html: ""}; + private rssGetVersionDetails(entry: XmlElement): versionNotes { + let outEntry: versionNotes = {title: "", date: new Date, link: "", html: ""}; entry.children.forEach((elm) => { let element = elm as XmlElement; if (element.name == "title") { @@ -76,11 +82,11 @@ export default class Updater { return outEntry; } - private async rssGetArchive(): Promise { + private async rssGetArchive(): Promise { const rawArchive: string = await this.getRawArchive(); const releaseNotes: XmlDocument = parseXml(rawArchive); - const output: types.versionNotes[] = []; + const output: versionNotes[] = []; ((releaseNotes.children[0] as XmlElement).children[1] as XmlElement).children.forEach((elm) => { if (elm.type == "element") { const element = elm as XmlElement; @@ -92,7 +98,7 @@ export default class Updater { return output; } - public async getArchive(): Promise { + public async getArchive(): Promise { if (this.feedType == "atom") { return this.atomGetArchive() } else if (this.feedType == "rss"){ diff --git a/src/types.ts b/src/types.ts deleted file mode 100644 index 8419d35..0000000 --- a/src/types.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type versionNotes = { - title: string; - date: Date | string; - link: string; - html: string; -} \ No newline at end of file diff --git a/test/archive.test.ts b/test/archive.test.ts index 1fac9a6..9fa9c70 100644 --- a/test/archive.test.ts +++ b/test/archive.test.ts @@ -1,6 +1,5 @@ import { expect, expectTypeOf, test } from "vitest"; import Updater from "../src/index.ts"; -import * as types from "../src/types.ts"; test("get an atom feed from gitea", async (): Promise => { const updater = new Updater("https://git.emaker.limited/MicrocontrollerCD/SoftwareRelease/releases", "atom");