@hprose/rpc-wx
Version:
60 lines • 2.13 kB
JavaScript
;
/*--------------------------------------------------------*\
| |
| hprose |
| |
| Official WebSite: https://hprose.com |
| |
| index.ts |
| |
| @hprose/rpc-wx for TypeScript. |
| |
| LastModified: Jan 28, 2019 |
| Author: Ma Bingyao <andot@hprose.com> |
| |
\*________________________________________________________*/
Object.defineProperty(exports, "__esModule", { value: true });
var HttpTransport_1 = require("./HttpTransport");
exports.HttpTransport = HttpTransport_1.HttpTransport;
var WebSocketTransport_1 = require("./WebSocketTransport");
exports.WebSocketTransport = WebSocketTransport_1.WebSocketTransport;
function wxPromisify(name) {
return function (args) {
args = args || {};
return new Promise(function (resolve, reject) {
args.success = resolve;
args.fail = reject;
try {
wx[name](args);
}
catch (e) {
reject(e);
}
});
};
}
exports.wxPromisify = wxPromisify;
var exclusionList = [
'canIUse',
'invoke',
'getLogManager',
'drawCanvas',
'canvasToTempFilePath',
'hideKeyboard',
'getPublicLibVersion',
'nextTick'
];
var WX = {};
for (var name_1 in wx) {
if (typeof wx[name_1] === 'function'
&& wx[name_1].length > 0
&& exclusionList.indexOf(name_1) === 1
&& name_1.search(/(^(on|off|create))|((Sync)$)/) < 0) {
WX[name_1] = wxPromisify(name_1);
}
else {
WX[name_1] = wx[name_1].bind(wx);
}
}
exports.default = WX;
//# sourceMappingURL=index.js.map