@suin/esa-api
Version:
esa.io APIクライアント
541 lines • 30.7 kB
JavaScript
;
/* tslint:disable */
/* eslint-disable */
/**
* esa API v1
* チームのナレッジ共有サービス[esa.io](https://esa.io/)のAPI v1の仕様書
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.PostApi = exports.PostApiFactory = exports.PostApiFp = exports.PostApiAxiosParamCreator = void 0;
const axios_1 = __importDefault(require("axios"));
// Some imports not used depending on template conditions
// @ts-ignore
const common_1 = require("../common");
// @ts-ignore
const base_1 = require("../base");
/**
* PostApi - axios parameter creator
* @export
*/
const PostApiAxiosParamCreator = function (configuration) {
return {
/**
*
* @summary 記事を投稿する
* @param {string} teamName チーム名
* @param {CreatePostBody} createPostBody
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createPost: async (teamName, createPostBody, options = {}) => {
// verify required parameter 'teamName' is not null or undefined
(0, common_1.assertParamExists)("createPost", "teamName", teamName);
// verify required parameter 'createPostBody' is not null or undefined
(0, common_1.assertParamExists)("createPost", "createPostBody", createPostBody);
const localVarPath = `/teams/{team_name}/posts`.replace(`{${"team_name"}}`, encodeURIComponent(String(teamName)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = {
method: "POST",
...baseOptions,
...options,
};
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication AccessTokenHeader required
// http bearer authentication required
await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
// authentication AccessTokenQueryParam required
await (0, common_1.setApiKeyToObject)(localVarQueryParameter, "access_token", configuration);
// authentication OAuth2 required
// oauth required
await (0, common_1.setOAuthToObject)(localVarHeaderParameter, "OAuth2", ["write"], configuration);
localVarHeaderParameter["Content-Type"] = "application/json";
(0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter, options.query);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {
...localVarHeaderParameter,
...headersFromBaseOptions,
...options.headers,
};
localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(createPostBody, localVarRequestOptions, configuration);
return {
url: (0, common_1.toPathString)(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
* 指定された記事を削除します。
* @summary 記事を削除する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
deletePost: async (teamName, postNumber, options = {}) => {
// verify required parameter 'teamName' is not null or undefined
(0, common_1.assertParamExists)("deletePost", "teamName", teamName);
// verify required parameter 'postNumber' is not null or undefined
(0, common_1.assertParamExists)("deletePost", "postNumber", postNumber);
const localVarPath = `/teams/{team_name}/posts/{post_number}`
.replace(`{${"team_name"}}`, encodeURIComponent(String(teamName)))
.replace(`{${"post_number"}}`, encodeURIComponent(String(postNumber)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = {
method: "DELETE",
...baseOptions,
...options,
};
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication AccessTokenHeader required
// http bearer authentication required
await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
// authentication AccessTokenQueryParam required
await (0, common_1.setApiKeyToObject)(localVarQueryParameter, "access_token", configuration);
// authentication OAuth2 required
// oauth required
await (0, common_1.setOAuthToObject)(localVarHeaderParameter, "OAuth2", ["write"], configuration);
(0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter, options.query);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {
...localVarHeaderParameter,
...headersFromBaseOptions,
...options.headers,
};
return {
url: (0, common_1.toPathString)(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
* 指定された記事を取得します。
* @summary 記事を取得する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {Array<'comments' | 'comments.stargazers' | 'stargazers'>} [include] - `comments` を指定するとコメントの配列を含んだレスポンスを返します。 - `comments,comments.stargazers`を指定するとコメントとコメントに対するStarの配列を含んだレスポンスを返します。 - `stargazers` を指定するとStarの配列を含んだレスポンスを返します。 - `stargazers,comments` のように `,` で区切ることで複数指定できます
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getPost: async (teamName, postNumber, include, options = {}) => {
// verify required parameter 'teamName' is not null or undefined
(0, common_1.assertParamExists)("getPost", "teamName", teamName);
// verify required parameter 'postNumber' is not null or undefined
(0, common_1.assertParamExists)("getPost", "postNumber", postNumber);
const localVarPath = `/teams/{team_name}/posts/{post_number}`
.replace(`{${"team_name"}}`, encodeURIComponent(String(teamName)))
.replace(`{${"post_number"}}`, encodeURIComponent(String(postNumber)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = {
method: "GET",
...baseOptions,
...options,
};
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication AccessTokenHeader required
// http bearer authentication required
await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
// authentication AccessTokenQueryParam required
await (0, common_1.setApiKeyToObject)(localVarQueryParameter, "access_token", configuration);
// authentication OAuth2 required
// oauth required
await (0, common_1.setOAuthToObject)(localVarHeaderParameter, "OAuth2", ["read"], configuration);
if (include) {
localVarQueryParameter["include"] = include.join(base_1.COLLECTION_FORMATS.csv);
}
(0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter, options.query);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {
...localVarHeaderParameter,
...headersFromBaseOptions,
...options.headers,
};
return {
url: (0, common_1.toPathString)(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
*
* @summary 記事一覧を取得する
* @param {string} teamName チーム名
* @param {string} [q] 記事を絞り込むための条件を指定します
* @param {Array<'comments' | 'comments.stargazers' | 'stargazers'>} [include] - `comments` を指定するとコメントの配列を含んだレスポンスを返します。 - `comments,comments.stargazers`を指定するとコメントとコメントに対するStarの配列を含んだレスポンスを返します。 - `stargazers` を指定するとStarの配列を含んだレスポンスを返します。 - `stargazers,comments` のように `,` で区切ることで複数指定できます
* @param {'updated' | 'created' | 'number' | 'stars' | 'watches' | 'comments' | 'best_match'} [sort] 記事の並び順を指定します - 設定可能な値 - `updated` (default) - 記事の更新日時 - `created` - 記事の作成日時 - `number` - 記事番号 - `stars` - 記事へのStarの数 - `watches` - 記事へのWatchの数 - `comments` - 記事へのCommentの数 - `best_match` - 総合的な記事のスコア
* @param {'asc' | 'desc'} [order] 設定可能な値: - `desc`: 降順 (default) - `asc`: 昇順
* @param {number} [page] ページ番号
* @param {number} [perPage] 1ページあたりに含まれる要素数
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getPosts: async (teamName, q, include, sort, order, page, perPage, options = {}) => {
// verify required parameter 'teamName' is not null or undefined
(0, common_1.assertParamExists)("getPosts", "teamName", teamName);
const localVarPath = `/teams/{team_name}/posts`.replace(`{${"team_name"}}`, encodeURIComponent(String(teamName)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = {
method: "GET",
...baseOptions,
...options,
};
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication AccessTokenHeader required
// http bearer authentication required
await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
// authentication AccessTokenQueryParam required
await (0, common_1.setApiKeyToObject)(localVarQueryParameter, "access_token", configuration);
// authentication OAuth2 required
// oauth required
await (0, common_1.setOAuthToObject)(localVarHeaderParameter, "OAuth2", ["read"], configuration);
if (q !== undefined) {
localVarQueryParameter["q"] = q;
}
if (include) {
localVarQueryParameter["include"] = include.join(base_1.COLLECTION_FORMATS.csv);
}
if (sort !== undefined) {
localVarQueryParameter["sort"] = sort;
}
if (order !== undefined) {
localVarQueryParameter["order"] = order;
}
if (page !== undefined) {
localVarQueryParameter["page"] = page;
}
if (perPage !== undefined) {
localVarQueryParameter["per_page"] = perPage;
}
(0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter, options.query);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {
...localVarHeaderParameter,
...headersFromBaseOptions,
...options.headers,
};
return {
url: (0, common_1.toPathString)(localVarUrlObj),
options: localVarRequestOptions,
};
},
/**
* 指定された記事を編集します。
* @summary 記事を編集する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {UpdatePostBody} updatePostBody
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
updatePost: async (teamName, postNumber, updatePostBody, options = {}) => {
// verify required parameter 'teamName' is not null or undefined
(0, common_1.assertParamExists)("updatePost", "teamName", teamName);
// verify required parameter 'postNumber' is not null or undefined
(0, common_1.assertParamExists)("updatePost", "postNumber", postNumber);
// verify required parameter 'updatePostBody' is not null or undefined
(0, common_1.assertParamExists)("updatePost", "updatePostBody", updatePostBody);
const localVarPath = `/teams/{team_name}/posts/{post_number}`
.replace(`{${"team_name"}}`, encodeURIComponent(String(teamName)))
.replace(`{${"post_number"}}`, encodeURIComponent(String(postNumber)));
// use dummy base URL string because the URL constructor only accepts absolute URLs.
const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
let baseOptions;
if (configuration) {
baseOptions = configuration.baseOptions;
}
const localVarRequestOptions = {
method: "PATCH",
...baseOptions,
...options,
};
const localVarHeaderParameter = {};
const localVarQueryParameter = {};
// authentication AccessTokenHeader required
// http bearer authentication required
await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
// authentication AccessTokenQueryParam required
await (0, common_1.setApiKeyToObject)(localVarQueryParameter, "access_token", configuration);
// authentication OAuth2 required
// oauth required
await (0, common_1.setOAuthToObject)(localVarHeaderParameter, "OAuth2", ["write"], configuration);
localVarHeaderParameter["Content-Type"] = "application/json";
(0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter, options.query);
let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = {
...localVarHeaderParameter,
...headersFromBaseOptions,
...options.headers,
};
localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(updatePostBody, localVarRequestOptions, configuration);
return {
url: (0, common_1.toPathString)(localVarUrlObj),
options: localVarRequestOptions,
};
},
};
};
exports.PostApiAxiosParamCreator = PostApiAxiosParamCreator;
/**
* PostApi - functional programming interface
* @export
*/
const PostApiFp = function (configuration) {
const localVarAxiosParamCreator = (0, exports.PostApiAxiosParamCreator)(configuration);
return {
/**
*
* @summary 記事を投稿する
* @param {string} teamName チーム名
* @param {CreatePostBody} createPostBody
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async createPost(teamName, createPostBody, options) {
const localVarAxiosArgs = await localVarAxiosParamCreator.createPost(teamName, createPostBody, options);
return (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration);
},
/**
* 指定された記事を削除します。
* @summary 記事を削除する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async deletePost(teamName, postNumber, options) {
const localVarAxiosArgs = await localVarAxiosParamCreator.deletePost(teamName, postNumber, options);
return (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration);
},
/**
* 指定された記事を取得します。
* @summary 記事を取得する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {Array<'comments' | 'comments.stargazers' | 'stargazers'>} [include] - `comments` を指定するとコメントの配列を含んだレスポンスを返します。 - `comments,comments.stargazers`を指定するとコメントとコメントに対するStarの配列を含んだレスポンスを返します。 - `stargazers` を指定するとStarの配列を含んだレスポンスを返します。 - `stargazers,comments` のように `,` で区切ることで複数指定できます
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getPost(teamName, postNumber, include, options) {
const localVarAxiosArgs = await localVarAxiosParamCreator.getPost(teamName, postNumber, include, options);
return (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration);
},
/**
*
* @summary 記事一覧を取得する
* @param {string} teamName チーム名
* @param {string} [q] 記事を絞り込むための条件を指定します
* @param {Array<'comments' | 'comments.stargazers' | 'stargazers'>} [include] - `comments` を指定するとコメントの配列を含んだレスポンスを返します。 - `comments,comments.stargazers`を指定するとコメントとコメントに対するStarの配列を含んだレスポンスを返します。 - `stargazers` を指定するとStarの配列を含んだレスポンスを返します。 - `stargazers,comments` のように `,` で区切ることで複数指定できます
* @param {'updated' | 'created' | 'number' | 'stars' | 'watches' | 'comments' | 'best_match'} [sort] 記事の並び順を指定します - 設定可能な値 - `updated` (default) - 記事の更新日時 - `created` - 記事の作成日時 - `number` - 記事番号 - `stars` - 記事へのStarの数 - `watches` - 記事へのWatchの数 - `comments` - 記事へのCommentの数 - `best_match` - 総合的な記事のスコア
* @param {'asc' | 'desc'} [order] 設定可能な値: - `desc`: 降順 (default) - `asc`: 昇順
* @param {number} [page] ページ番号
* @param {number} [perPage] 1ページあたりに含まれる要素数
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async getPosts(teamName, q, include, sort, order, page, perPage, options) {
const localVarAxiosArgs = await localVarAxiosParamCreator.getPosts(teamName, q, include, sort, order, page, perPage, options);
return (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration);
},
/**
* 指定された記事を編集します。
* @summary 記事を編集する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {UpdatePostBody} updatePostBody
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
async updatePost(teamName, postNumber, updatePostBody, options) {
const localVarAxiosArgs = await localVarAxiosParamCreator.updatePost(teamName, postNumber, updatePostBody, options);
return (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration);
},
};
};
exports.PostApiFp = PostApiFp;
/**
* PostApi - factory interface
* @export
*/
const PostApiFactory = function (configuration, basePath, axios) {
const localVarFp = (0, exports.PostApiFp)(configuration);
return {
/**
*
* @summary 記事を投稿する
* @param {string} teamName チーム名
* @param {CreatePostBody} createPostBody
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createPost(teamName, createPostBody, options) {
return localVarFp
.createPost(teamName, createPostBody, options)
.then((request) => request(axios, basePath));
},
/**
* 指定された記事を削除します。
* @summary 記事を削除する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
deletePost(teamName, postNumber, options) {
return localVarFp
.deletePost(teamName, postNumber, options)
.then((request) => request(axios, basePath));
},
/**
* 指定された記事を取得します。
* @summary 記事を取得する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {Array<'comments' | 'comments.stargazers' | 'stargazers'>} [include] - `comments` を指定するとコメントの配列を含んだレスポンスを返します。 - `comments,comments.stargazers`を指定するとコメントとコメントに対するStarの配列を含んだレスポンスを返します。 - `stargazers` を指定するとStarの配列を含んだレスポンスを返します。 - `stargazers,comments` のように `,` で区切ることで複数指定できます
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getPost(teamName, postNumber, include, options) {
return localVarFp
.getPost(teamName, postNumber, include, options)
.then((request) => request(axios, basePath));
},
/**
*
* @summary 記事一覧を取得する
* @param {string} teamName チーム名
* @param {string} [q] 記事を絞り込むための条件を指定します
* @param {Array<'comments' | 'comments.stargazers' | 'stargazers'>} [include] - `comments` を指定するとコメントの配列を含んだレスポンスを返します。 - `comments,comments.stargazers`を指定するとコメントとコメントに対するStarの配列を含んだレスポンスを返します。 - `stargazers` を指定するとStarの配列を含んだレスポンスを返します。 - `stargazers,comments` のように `,` で区切ることで複数指定できます
* @param {'updated' | 'created' | 'number' | 'stars' | 'watches' | 'comments' | 'best_match'} [sort] 記事の並び順を指定します - 設定可能な値 - `updated` (default) - 記事の更新日時 - `created` - 記事の作成日時 - `number` - 記事番号 - `stars` - 記事へのStarの数 - `watches` - 記事へのWatchの数 - `comments` - 記事へのCommentの数 - `best_match` - 総合的な記事のスコア
* @param {'asc' | 'desc'} [order] 設定可能な値: - `desc`: 降順 (default) - `asc`: 昇順
* @param {number} [page] ページ番号
* @param {number} [perPage] 1ページあたりに含まれる要素数
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
getPosts(teamName, q, include, sort, order, page, perPage, options) {
return localVarFp
.getPosts(teamName, q, include, sort, order, page, perPage, options)
.then((request) => request(axios, basePath));
},
/**
* 指定された記事を編集します。
* @summary 記事を編集する
* @param {string} teamName チーム名
* @param {number} postNumber 記事ID
* @param {UpdatePostBody} updatePostBody
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
updatePost(teamName, postNumber, updatePostBody, options) {
return localVarFp
.updatePost(teamName, postNumber, updatePostBody, options)
.then((request) => request(axios, basePath));
},
};
};
exports.PostApiFactory = PostApiFactory;
/**
* PostApi - object-oriented interface
* @export
* @class PostApi
* @extends {BaseAPI}
*/
class PostApi extends base_1.BaseAPI {
/**
*
* @summary 記事を投稿する
* @param {PostApiCreatePostRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof PostApi
*/
createPost(requestParameters, options) {
return (0, exports.PostApiFp)(this.configuration)
.createPost(requestParameters.teamName, requestParameters.createPostBody, options)
.then((request) => request(this.axios, this.basePath));
}
/**
* 指定された記事を削除します。
* @summary 記事を削除する
* @param {PostApiDeletePostRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof PostApi
*/
deletePost(requestParameters, options) {
return (0, exports.PostApiFp)(this.configuration)
.deletePost(requestParameters.teamName, requestParameters.postNumber, options)
.then((request) => request(this.axios, this.basePath));
}
/**
* 指定された記事を取得します。
* @summary 記事を取得する
* @param {PostApiGetPostRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof PostApi
*/
getPost(requestParameters, options) {
return (0, exports.PostApiFp)(this.configuration)
.getPost(requestParameters.teamName, requestParameters.postNumber, requestParameters.include, options)
.then((request) => request(this.axios, this.basePath));
}
/**
*
* @summary 記事一覧を取得する
* @param {PostApiGetPostsRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof PostApi
*/
getPosts(requestParameters, options) {
return (0, exports.PostApiFp)(this.configuration)
.getPosts(requestParameters.teamName, requestParameters.q, requestParameters.include, requestParameters.sort, requestParameters.order, requestParameters.page, requestParameters.perPage, options)
.then((request) => request(this.axios, this.basePath));
}
/**
* 指定された記事を編集します。
* @summary 記事を編集する
* @param {PostApiUpdatePostRequest} requestParameters Request parameters.
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof PostApi
*/
updatePost(requestParameters, options) {
return (0, exports.PostApiFp)(this.configuration)
.updatePost(requestParameters.teamName, requestParameters.postNumber, requestParameters.updatePostBody, options)
.then((request) => request(this.axios, this.basePath));
}
}
exports.PostApi = PostApi;
//# sourceMappingURL=post-api.js.map