UNPKG

1.75 kBJavaScriptView Raw
1"use strict";
2var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3 return new (P || (P = Promise))(function (resolve, reject) {
4 function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5 function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6 function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7 step((generator = generator.apply(thisArg, _arguments || [])).next());
8 });
9};
10Object.defineProperty(exports, "__esModule", { value: true });
11/**
12 * base service class
13 */
14class Service {
15 constructor(options, requestOptions) {
16 this.options = options;
17 this.requestOptions = {};
18 // tslint:disable-next-line:no-single-line-block-comment
19 /* istanbul ignore else */
20 if (requestOptions !== undefined) {
21 this.requestOptions = Object.assign({}, this.requestOptions, requestOptions);
22 }
23 }
24 /**
25 * Create and send request to API
26 */
27 request(options, expectedStatusCodes) {
28 return __awaiter(this, void 0, void 0, function* () {
29 const defaultOptions = {
30 baseUrl: this.options.endpoint,
31 // simple: false,
32 // resolveWithFullResponse: true,
33 json: true,
34 method: 'GET',
35 useQuerystring: true
36 };
37 const requestOptions = Object.assign({}, defaultOptions, this.requestOptions, options);
38 return this.options.auth.request(requestOptions, expectedStatusCodes);
39 });
40 }
41}
42exports.Service = Service;