UNPKG

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.

27 lines (26 loc) 1.08 kB
import { generateNumber, generatePlainString, isObject, trimArray, trimObject } from "../../../common/utils.js"; //#region src/namespaces/opensearch/generate/utils.ts const generateQuery = (query) => { if (!isObject(query)) return; return trimObject({ "@role": generatePlainString(query.role), "@searchTerms": generatePlainString(query.searchTerms), "@count": generateNumber(query.count), "@startIndex": generateNumber(query.startIndex), "@startPage": generateNumber(query.startPage), "@language": generatePlainString(query.language), "@inputEncoding": generatePlainString(query.inputEncoding), "@outputEncoding": generatePlainString(query.outputEncoding) }); }; const generateFeed = (feed) => { if (!isObject(feed)) return; return trimObject({ "opensearch:totalResults": generateNumber(feed.totalResults), "opensearch:startIndex": generateNumber(feed.startIndex), "opensearch:itemsPerPage": generateNumber(feed.itemsPerPage), "opensearch:Query": trimArray(feed.queries, generateQuery) }); }; //#endregion export { generateFeed, generateQuery };