feedsmith
Version:
Fast, all‑in‑one feed parser and generator for RSS, Atom, RDF, and JSON Feed, with support for Podcast, iTunes, Dublin Core, and OPML files.
21 lines (20 loc) • 790 B
JavaScript
import { isObject, parseArrayOf, parseSingularOf, parseString, trimObject } from "../../../common/utils.js";
//#region src/namespaces/psc/parse/utils.ts
const parseChapter = (value) => {
if (!isObject(value)) return;
return trimObject({
start: parseSingularOf(value["@start"], parseString),
title: parseSingularOf(value["@title"], parseString),
href: parseSingularOf(value["@href"], parseString),
image: parseSingularOf(value["@image"], parseString)
});
};
const parseChapters = (value) => {
return parseArrayOf(value?.["psc:chapter"], parseChapter);
};
const retrieveItem = (value) => {
if (!isObject(value)) return;
return trimObject({ chapters: parseSingularOf(value["psc:chapters"], parseChapters) });
};
//#endregion
export { parseChapter, parseChapters, retrieveItem };