what-is-surprise
Version:
translate tool
79 lines (78 loc) • 3.48 kB
JavaScript
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
(function (factory) {
if (typeof module === "object" && typeof module.exports === "object") {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
}
else if (typeof define === "function" && define.amd) {
define(["require", "exports", "axios", "./YoudaoFanyiConfig", "../../utils", "../../BaseFanyi"], factory);
}
})(function (require, exports) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.YoudaoFanyi = void 0;
var axios_1 = __importDefault(require("axios"));
var YoudaoFanyiConfig_1 = require("./YoudaoFanyiConfig");
var utils_1 = require("../../utils");
var BaseFanyi_1 = require("../../BaseFanyi");
var onRespond = function (res) {
var _a;
if (((_a = res.data) === null || _a === void 0 ? void 0 : _a.errorCode) !== '0')
return Promise.reject(res.data);
return Promise.resolve(res.data);
};
var YoudaoFanyi = /** @class */ (function (_super) {
__extends(YoudaoFanyi, _super);
function YoudaoFanyi(options) {
var _this = _super.call(this) || this;
_this.config = new YoudaoFanyiConfig_1.YoudaoFanyiConfig;
_this.url = YoudaoFanyi.DEFAULT_API_URL;
_this.requestMethod = 'get';
utils_1.assignOptions(_this, options);
return _this;
}
YoudaoFanyi.createTranslator = function (options) {
return utils_1.assignOptions(new YoudaoFanyi, options);
};
YoudaoFanyi.prototype.setRequestMethod = function (method) {
this.requestMethod = method;
return this;
};
YoudaoFanyi.prototype.translate = function () {
var _a = this, requestMethod = _a.requestMethod, url = _a.url;
var params = this.createRequestBody();
if (requestMethod === 'get') {
return axios_1.default.get(url, {
withCredentials: true,
params: params,
}).then(onRespond);
}
if (requestMethod === 'post') {
return axios_1.default.post(url, params, {
withCredentials: true
}).then(onRespond);
}
return Promise.reject(new Error("Method '" + requestMethod + "' is not Supported"));
};
YoudaoFanyi.DEFAULT_API_URL = 'https://openapi.youdao.com/api';
return YoudaoFanyi;
}(BaseFanyi_1.BaseFanyi));
exports.YoudaoFanyi = YoudaoFanyi;
});