canny-api-js
Version:
Unofficial node API wrapper for Canny's API (https://canny.io/).
49 lines • 3.93 kB
JavaScript
import axios from 'axios';
import Boards from './Boards';
import ChangelogEntries from './ChangelogEntries';
import Comments from './Comments';
import Companies from './Companies';
import Opportunities from './Opportunities';
import Posts from './Posts';
import StatusChanges from './StatusChanges';
import Tags from './Tags';
import Users from './Users';
import Votes from './Votes';
export default class CannyAPI {
apiBaseUrl = 'https://canny.io/api/v1';
config;
axios;
boards;
changelogEntries;
comments;
companies;
opportunities;
posts;
statusChanges;
tags;
users;
votes;
constructor(config) {
if (!config.apiKey) {
throw new Error('You must provide a valid apiKey attribute in your configuration object. To get one, read the official Canny API documentation: https://developers.canny.io/api-reference#authentication');
}
this.config = config;
this.axios = axios.create({
baseURL: this.apiBaseUrl,
params: {
apiKey: this.config.apiKey,
},
});
this.boards = new Boards(this.axios);
this.changelogEntries = new ChangelogEntries(this.axios);
this.comments = new Comments(this.axios);
this.companies = new Companies(this.axios);
this.opportunities = new Opportunities(this.axios);
this.posts = new Posts(this.axios);
this.statusChanges = new StatusChanges(this.axios);
this.tags = new Tags(this.axios);
this.users = new Users(this.axios);
this.votes = new Votes(this.axios);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FubnlBUEkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL0Nhbm55QVBJLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBd0IsTUFBTSxPQUFPLENBQUM7QUFFN0MsT0FBTyxNQUFNLE1BQU0sVUFBVSxDQUFDO0FBQzlCLE9BQU8sZ0JBQWdCLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxRQUFRLE1BQU0sWUFBWSxDQUFDO0FBQ2xDLE9BQU8sU0FBUyxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLGFBQWEsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEtBQUssTUFBTSxTQUFTLENBQUM7QUFDNUIsT0FBTyxhQUFhLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxJQUFJLE1BQU0sUUFBUSxDQUFDO0FBQzFCLE9BQU8sS0FBSyxNQUFNLFNBQVMsQ0FBQztBQUM1QixPQUFPLEtBQUssTUFBTSxTQUFTLENBQUM7QUFFNUIsTUFBTSxDQUFDLE9BQU8sT0FBTyxRQUFRO0lBQzNCLFVBQVUsR0FBRyx5QkFBeUIsQ0FBQztJQUN2QyxNQUFNLENBQWtCO0lBQ3hCLEtBQUssQ0FBZ0I7SUFFckIsTUFBTSxDQUFTO0lBQ2YsZ0JBQWdCLENBQW1CO0lBQ25DLFFBQVEsQ0FBVztJQUNuQixTQUFTLENBQVk7SUFDckIsYUFBYSxDQUFnQjtJQUM3QixLQUFLLENBQVE7SUFDYixhQUFhLENBQWdCO0lBQzdCLElBQUksQ0FBTztJQUNYLEtBQUssQ0FBUTtJQUNiLEtBQUssQ0FBUTtJQUViLFlBQVksTUFBdUI7UUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FDYix5TEFBeUwsQ0FDMUwsQ0FBQztTQUNIO1FBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3hCLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVTtZQUN4QixNQUFNLEVBQUU7Z0JBQ04sTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTthQUMzQjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0NBQ0YifQ==