wikibase-edit
Version:
Edit Wikibase from NodeJS
24 lines • 829 B
JavaScript
import { uniq } from 'lodash-es';
import { formatBadges } from '../entity/format.js';
import { newError } from '../error.js';
import { getEntitySitelinks } from '../get_entity.js';
import { validateEntityId, validateSite } from '../validate.js';
export async function addBadge(params, config, API) {
let { id, site, badges } = params;
validateEntityId(id);
validateSite(site);
badges = formatBadges(badges);
const sitelinks = await getEntitySitelinks(id, config);
const siteObj = sitelinks[site];
if (!siteObj) {
throw newError('sitelink does not exist', 400, params);
}
const { title, badges: currentBadges } = siteObj;
return API.sitelink.set({
id,
site,
title,
badges: uniq(currentBadges.concat(badges)),
});
}
//# sourceMappingURL=add.js.map