UNPKG

@cutls/megalodon

Version:

Mastodon, Pleroma, Misskey API client for node.js and browser

49 lines (48 loc) 1.43 kB
import Pleroma from './pleroma.js'; import Mastodon from './mastodon.js'; import Misskey from './misskey.js'; export class NotImplementedError extends Error { constructor(err) { super(err); this.name = new.target.name; Object.setPrototypeOf(this, new.target.prototype); } } export class ArgumentError extends Error { constructor(err) { super(err); this.name = new.target.name; Object.setPrototypeOf(this, new.target.prototype); } } export class UnexpectedError extends Error { constructor(err) { super(err); this.name = new.target.name; Object.setPrototypeOf(this, new.target.prototype); } } export class NodeinfoError extends Error { constructor(err) { super(err); this.name = new.target.name; Object.setPrototypeOf(this, new.target.prototype); } } const generator = (sns, baseUrl, accessToken = null, userAgent = null) => { switch (sns) { case 'pleroma': { const pleroma = new Pleroma(baseUrl, accessToken, userAgent); return pleroma; } case 'mastodon': { const mastodon = new Mastodon(baseUrl, accessToken, userAgent); return mastodon; } case 'misskey': { const misskey = new Misskey(baseUrl, accessToken, userAgent); return misskey; } } }; export default generator;