UNPKG

@citation-js/plugin-doi

Version:

Plugin for DOI input for Citation.js

23 lines 730 B
import { util } from '@citation-js/core'; import parseDoiJson from './json.js'; const apiOptions = { checkContentType: true, headers: { Accept: 'application/vnd.citationstyles.csl+json' } }; function processApiResponse(response) { if (response === '[]') { return {}; } return parseDoiJson(JSON.parse(response)); } function parseDoiApiAsync(data) { const response = [].concat(data).map(url => util.fetchFileAsync(url, apiOptions).then(processApiResponse)); return Promise.all(response); } function parseDoiApi(data) { const response = [].concat(data).map(url => util.fetchFile(url, apiOptions)).map(processApiResponse); return response; } export { parseDoiApi as parse, parseDoiApiAsync as parseAsync };