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.

153 lines (152 loc) 20.3 kB
const require_utils = require("../../../common/utils.cjs"); //#region src/namespaces/prism/parse/utils.ts const retrieveFeed = (value) => { if (!require_utils.isObject(value)) return; return require_utils.trimObject({ publicationName: require_utils.parseSingularOf(value["prism:publicationname"], (value) => require_utils.parseString(require_utils.retrieveText(value))), issn: require_utils.parseSingularOf(value["prism:issn"], (value) => require_utils.parseString(require_utils.retrieveText(value))), eIssn: require_utils.parseSingularOf(value["prism:eissn"], (value) => require_utils.parseString(require_utils.retrieveText(value))), isbns: require_utils.parseArrayOf(value["prism:isbn"], (value) => require_utils.parseString(require_utils.retrieveText(value))), issueIdentifier: require_utils.parseSingularOf(value["prism:issueidentifier"], (value) => require_utils.parseString(require_utils.retrieveText(value))), issueName: require_utils.parseSingularOf(value["prism:issuename"], (value) => require_utils.parseString(require_utils.retrieveText(value))), issueTeaser: require_utils.parseSingularOf(value["prism:issueteaser"], (value) => require_utils.parseString(require_utils.retrieveText(value))), issueType: require_utils.parseSingularOf(value["prism:issuetype"], (value) => require_utils.parseString(require_utils.retrieveText(value))), volume: require_utils.parseSingularOf(value["prism:volume"], (value) => require_utils.parseString(require_utils.retrieveText(value))), number: require_utils.parseSingularOf(value["prism:number"], (value) => require_utils.parseString(require_utils.retrieveText(value))), edition: require_utils.parseSingularOf(value["prism:edition"], (value) => require_utils.parseString(require_utils.retrieveText(value))), aggregateIssueNumber: require_utils.parseSingularOf(value["prism:aggregateissuenumber"], (value) => require_utils.parseNumber(require_utils.retrieveText(value))), aggregationType: require_utils.parseSingularOf(value["prism:aggregationtype"], (value) => require_utils.parseString(require_utils.retrieveText(value))), coverDate: require_utils.parseSingularOf(value["prism:coverdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), coverDisplayDate: require_utils.parseSingularOf(value["prism:coverdisplaydate"], (value) => require_utils.parseString(require_utils.retrieveText(value))), publicationDates: require_utils.parseArrayOf(value["prism:publicationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), publicationDisplayDates: require_utils.parseArrayOf(value["prism:publicationdisplaydate"], (value) => require_utils.parseString(require_utils.retrieveText(value))), creationDate: require_utils.parseSingularOf(value["prism:creationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), modificationDate: require_utils.parseSingularOf(value["prism:modificationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), dateReceived: require_utils.parseSingularOf(value["prism:datereceived"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), onSaleDates: require_utils.parseArrayOf(value["prism:onsaledate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), onSaleDays: require_utils.parseArrayOf(value["prism:onsaleday"], (value) => require_utils.parseString(require_utils.retrieveText(value))), offSaleDates: require_utils.parseArrayOf(value["prism:offsaledate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), killDate: require_utils.parseSingularOf(value["prism:killdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), copyrightYears: require_utils.parseArrayOf(value["prism:copyrightyear"], (value) => require_utils.parseString(require_utils.retrieveText(value))), contentType: require_utils.parseSingularOf(value["prism:contenttype"], (value) => require_utils.parseString(require_utils.retrieveText(value))), alternateTitles: require_utils.parseArrayOf(value["prism:alternatetitle"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subtitles: require_utils.parseArrayOf(value["prism:subtitle"], (value) => require_utils.parseString(require_utils.retrieveText(value))), teasers: require_utils.parseArrayOf(value["prism:teaser"], (value) => require_utils.parseString(require_utils.retrieveText(value))), keywords: require_utils.parseArrayOf(value["prism:keyword"], (value) => require_utils.parseString(require_utils.retrieveText(value))), seriesTitle: require_utils.parseSingularOf(value["prism:seriestitle"], (value) => require_utils.parseString(require_utils.retrieveText(value))), seriesNumber: require_utils.parseSingularOf(value["prism:seriesnumber"], (value) => require_utils.parseNumber(require_utils.retrieveText(value))), bookEditions: require_utils.parseArrayOf(value["prism:bookedition"], (value) => require_utils.parseString(require_utils.retrieveText(value))), nationalCatalogNumber: require_utils.parseSingularOf(value["prism:nationalcatalognumber"], (value) => require_utils.parseString(require_utils.retrieveText(value))), productCodes: require_utils.parseArrayOf(value["prism:productcode"], (value) => require_utils.parseString(require_utils.retrieveText(value))), uspsNumber: require_utils.parseSingularOf(value["prism:uspsnumber"], (value) => require_utils.parseString(require_utils.retrieveText(value))), publishingFrequency: require_utils.parseSingularOf(value["prism:publishingfrequency"], (value) => require_utils.parseString(require_utils.retrieveText(value))), channels: require_utils.parseArrayOf(value["prism:channel"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subchannel1: require_utils.parseSingularOf(value["prism:subchannel1"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subchannel2: require_utils.parseSingularOf(value["prism:subchannel2"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subchannel3: require_utils.parseSingularOf(value["prism:subchannel3"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subchannel4: require_utils.parseSingularOf(value["prism:subchannel4"], (value) => require_utils.parseString(require_utils.retrieveText(value))), section: require_utils.parseSingularOf(value["prism:section"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subsection1: require_utils.parseSingularOf(value["prism:subsection1"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subsection2: require_utils.parseSingularOf(value["prism:subsection2"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subsection3: require_utils.parseSingularOf(value["prism:subsection3"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subsection4: require_utils.parseSingularOf(value["prism:subsection4"], (value) => require_utils.parseString(require_utils.retrieveText(value))), corporateEntities: require_utils.parseArrayOf(value["prism:corporateentity"], (value) => require_utils.parseString(require_utils.retrieveText(value))), distributor: require_utils.parseSingularOf(value["prism:distributor"], (value) => require_utils.parseString(require_utils.retrieveText(value))), sellingAgencies: require_utils.parseArrayOf(value["prism:sellingagency"], (value) => require_utils.parseString(require_utils.retrieveText(value))), organizations: require_utils.parseArrayOf(value["prism:organization"], (value) => require_utils.parseString(require_utils.retrieveText(value))), persons: require_utils.parseArrayOf(value["prism:person"], (value) => require_utils.parseString(require_utils.retrieveText(value))), platforms: require_utils.parseArrayOf(value["prism:platform"], (value) => require_utils.parseString(require_utils.retrieveText(value))), originPlatforms: require_utils.parseArrayOf(value["prism:originplatform"], (value) => require_utils.parseString(require_utils.retrieveText(value))), device: require_utils.parseSingularOf(value["prism:device"], (value) => require_utils.parseString(require_utils.retrieveText(value))), complianceProfile: require_utils.parseSingularOf(value["prism:complianceprofile"], (value) => require_utils.parseString(require_utils.retrieveText(value))), blogTitle: require_utils.parseSingularOf(value["prism:blogtitle"], (value) => require_utils.parseString(require_utils.retrieveText(value))), blogURL: require_utils.parseSingularOf(value["prism:blogurl"], (value) => require_utils.parseString(require_utils.retrieveText(value))), links: require_utils.parseArrayOf(value["prism:link"], (value) => require_utils.parseString(require_utils.retrieveText(value))), urls: require_utils.parseArrayOf(value["prism:url"], (value) => require_utils.parseString(require_utils.retrieveText(value))), byteCount: require_utils.parseSingularOf(value["prism:bytecount"], (value) => require_utils.parseNumber(require_utils.retrieveText(value))), ratings: require_utils.parseArrayOf(value["prism:rating"], (value) => require_utils.parseString(require_utils.retrieveText(value))), timePeriod: require_utils.parseSingularOf(value["prism:timeperiod"], (value) => require_utils.parseString(require_utils.retrieveText(value))), versionIdentifier: require_utils.parseSingularOf(value["prism:versionidentifier"], (value) => require_utils.parseString(require_utils.retrieveText(value))), tickers: require_utils.parseArrayOf(value["prism:ticker"], (value) => require_utils.parseString(require_utils.retrieveText(value))), academicFields: require_utils.parseArrayOf(value["prism:academicfield"], (value) => require_utils.parseString(require_utils.retrieveText(value))), events: require_utils.parseArrayOf(value["prism:event"], (value) => require_utils.parseString(require_utils.retrieveText(value))), genres: require_utils.parseArrayOf(value["prism:genre"], (value) => require_utils.parseString(require_utils.retrieveText(value))), industries: require_utils.parseArrayOf(value["prism:industry"], (value) => require_utils.parseString(require_utils.retrieveText(value))), locations: require_utils.parseArrayOf(value["prism:location"], (value) => require_utils.parseString(require_utils.retrieveText(value))), objects: require_utils.parseArrayOf(value["prism:object"], (value) => require_utils.parseString(require_utils.retrieveText(value))), profession: require_utils.parseSingularOf(value["prism:profession"], (value) => require_utils.parseString(require_utils.retrieveText(value))), sport: require_utils.parseSingularOf(value["prism:sport"], (value) => require_utils.parseString(require_utils.retrieveText(value))), embargoDate: require_utils.parseSingularOf(value["prism:embargodate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), copyright: require_utils.parseSingularOf(value["prism:copyright"], (value) => require_utils.parseString(require_utils.retrieveText(value))), expirationDate: require_utils.parseSingularOf(value["prism:expirationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), rightsAgent: require_utils.parseSingularOf(value["prism:rightsagent"], (value) => require_utils.parseString(require_utils.retrieveText(value))) }); }; const retrieveItem = (value) => { if (!require_utils.isObject(value)) return; return require_utils.trimObject({ publicationName: require_utils.parseSingularOf(value["prism:publicationname"], (value) => require_utils.parseString(require_utils.retrieveText(value))), issn: require_utils.parseSingularOf(value["prism:issn"], (value) => require_utils.parseString(require_utils.retrieveText(value))), eIssn: require_utils.parseSingularOf(value["prism:eissn"], (value) => require_utils.parseString(require_utils.retrieveText(value))), doi: require_utils.parseSingularOf(value["prism:doi"], (value) => require_utils.parseString(require_utils.retrieveText(value))), urls: require_utils.parseArrayOf(value["prism:url"], (value) => require_utils.parseString(require_utils.retrieveText(value))), volume: require_utils.parseSingularOf(value["prism:volume"], (value) => require_utils.parseString(require_utils.retrieveText(value))), number: require_utils.parseSingularOf(value["prism:number"], (value) => require_utils.parseString(require_utils.retrieveText(value))), edition: require_utils.parseSingularOf(value["prism:edition"], (value) => require_utils.parseString(require_utils.retrieveText(value))), section: require_utils.parseSingularOf(value["prism:section"], (value) => require_utils.parseString(require_utils.retrieveText(value))), startingPage: require_utils.parseSingularOf(value["prism:startingpage"], (value) => require_utils.parseString(require_utils.retrieveText(value))), endingPage: require_utils.parseSingularOf(value["prism:endingpage"], (value) => require_utils.parseString(require_utils.retrieveText(value))), pageRange: require_utils.parseSingularOf(value["prism:pagerange"], (value) => require_utils.parseString(require_utils.retrieveText(value))), pageCount: require_utils.parseSingularOf(value["prism:pagecount"], (value) => require_utils.parseNumber(require_utils.retrieveText(value))), pageProgressionDirection: require_utils.parseSingularOf(value["prism:pageprogressiondirection"], (value) => require_utils.parseString(require_utils.retrieveText(value))), samplePageRange: require_utils.parseSingularOf(value["prism:samplepagerange"], (value) => require_utils.parseString(require_utils.retrieveText(value))), publicationDates: require_utils.parseArrayOf(value["prism:publicationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), publicationDisplayDates: require_utils.parseArrayOf(value["prism:publicationdisplaydate"], (value) => require_utils.parseString(require_utils.retrieveText(value))), creationDate: require_utils.parseSingularOf(value["prism:creationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), modificationDate: require_utils.parseSingularOf(value["prism:modificationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), dateReceived: require_utils.parseSingularOf(value["prism:datereceived"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), killDate: require_utils.parseSingularOf(value["prism:killdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), copyrightYears: require_utils.parseArrayOf(value["prism:copyrightyear"], (value) => require_utils.parseString(require_utils.retrieveText(value))), contentType: require_utils.parseSingularOf(value["prism:contenttype"], (value) => require_utils.parseString(require_utils.retrieveText(value))), genres: require_utils.parseArrayOf(value["prism:genre"], (value) => require_utils.parseString(require_utils.retrieveText(value))), alternateTitles: require_utils.parseArrayOf(value["prism:alternatetitle"], (value) => require_utils.parseString(require_utils.retrieveText(value))), subtitles: require_utils.parseArrayOf(value["prism:subtitle"], (value) => require_utils.parseString(require_utils.retrieveText(value))), teasers: require_utils.parseArrayOf(value["prism:teaser"], (value) => require_utils.parseString(require_utils.retrieveText(value))), keywords: require_utils.parseArrayOf(value["prism:keyword"], (value) => require_utils.parseString(require_utils.retrieveText(value))), corporateEntities: require_utils.parseArrayOf(value["prism:corporateentity"], (value) => require_utils.parseString(require_utils.retrieveText(value))), organizations: require_utils.parseArrayOf(value["prism:organization"], (value) => require_utils.parseString(require_utils.retrieveText(value))), persons: require_utils.parseArrayOf(value["prism:person"], (value) => require_utils.parseString(require_utils.retrieveText(value))), platforms: require_utils.parseArrayOf(value["prism:platform"], (value) => require_utils.parseString(require_utils.retrieveText(value))), device: require_utils.parseSingularOf(value["prism:device"], (value) => require_utils.parseString(require_utils.retrieveText(value))), academicFields: require_utils.parseArrayOf(value["prism:academicfield"], (value) => require_utils.parseString(require_utils.retrieveText(value))), events: require_utils.parseArrayOf(value["prism:event"], (value) => require_utils.parseString(require_utils.retrieveText(value))), industries: require_utils.parseArrayOf(value["prism:industry"], (value) => require_utils.parseString(require_utils.retrieveText(value))), locations: require_utils.parseArrayOf(value["prism:location"], (value) => require_utils.parseString(require_utils.retrieveText(value))), objects: require_utils.parseArrayOf(value["prism:object"], (value) => require_utils.parseString(require_utils.retrieveText(value))), profession: require_utils.parseSingularOf(value["prism:profession"], (value) => require_utils.parseString(require_utils.retrieveText(value))), sport: require_utils.parseSingularOf(value["prism:sport"], (value) => require_utils.parseString(require_utils.retrieveText(value))), hasAlternatives: require_utils.parseArrayOf(value["prism:hasalternative"], (value) => require_utils.parseString(require_utils.retrieveText(value))), hasCorrections: require_utils.parseArrayOf(value["prism:hascorrection"], (value) => require_utils.parseString(require_utils.retrieveText(value))), hasTranslations: require_utils.parseArrayOf(value["prism:hastranslation"], (value) => require_utils.parseString(require_utils.retrieveText(value))), isAlternativeOf: require_utils.parseArrayOf(value["prism:isalternativeof"], (value) => require_utils.parseString(require_utils.retrieveText(value))), isCorrectionOf: require_utils.parseArrayOf(value["prism:iscorrectionof"], (value) => require_utils.parseString(require_utils.retrieveText(value))), isTranslationOf: require_utils.parseSingularOf(value["prism:istranslationof"], (value) => require_utils.parseString(require_utils.retrieveText(value))), supplementTitles: require_utils.parseArrayOf(value["prism:supplementtitle"], (value) => require_utils.parseString(require_utils.retrieveText(value))), supplementDisplayID: require_utils.parseSingularOf(value["prism:supplementdisplayid"], (value) => require_utils.parseString(require_utils.retrieveText(value))), supplementStartingPage: require_utils.parseSingularOf(value["prism:supplementstartingpage"], (value) => require_utils.parseString(require_utils.retrieveText(value))), links: require_utils.parseArrayOf(value["prism:link"], (value) => require_utils.parseString(require_utils.retrieveText(value))), wordCount: require_utils.parseSingularOf(value["prism:wordcount"], (value) => require_utils.parseNumber(require_utils.retrieveText(value))), byteCount: require_utils.parseSingularOf(value["prism:bytecount"], (value) => require_utils.parseNumber(require_utils.retrieveText(value))), ratings: require_utils.parseArrayOf(value["prism:rating"], (value) => require_utils.parseString(require_utils.retrieveText(value))), timePeriod: require_utils.parseSingularOf(value["prism:timeperiod"], (value) => require_utils.parseString(require_utils.retrieveText(value))), versionIdentifier: require_utils.parseSingularOf(value["prism:versionidentifier"], (value) => require_utils.parseString(require_utils.retrieveText(value))), tickers: require_utils.parseArrayOf(value["prism:ticker"], (value) => require_utils.parseString(require_utils.retrieveText(value))), embargoDate: require_utils.parseSingularOf(value["prism:embargodate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), copyright: require_utils.parseSingularOf(value["prism:copyright"], (value) => require_utils.parseString(require_utils.retrieveText(value))), expirationDate: require_utils.parseSingularOf(value["prism:expirationdate"], (value) => require_utils.parseDate(require_utils.retrieveText(value))), rightsAgent: require_utils.parseSingularOf(value["prism:rightsagent"], (value) => require_utils.parseString(require_utils.retrieveText(value))) }); }; //#endregion exports.retrieveFeed = retrieveFeed; exports.retrieveItem = retrieveItem;