ng-yunzai-mobile
Version:
1. 适配yunzai_uni_app_x
243 lines • 13.5 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: devices/webview-uniappx.service.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
/**
* @record
*/
function WebViewMessage() { }
if (false) {
/** @type {?} */
WebViewMessage.prototype.action;
/** @type {?|undefined} */
WebViewMessage.prototype.callbackId;
/** @type {?|undefined} */
WebViewMessage.prototype.params;
}
/**
* @record
*/
function AppResponse() { }
if (false) {
/** @type {?} */
AppResponse.prototype.callbackId;
/** @type {?} */
AppResponse.prototype.data;
/** @type {?} */
AppResponse.prototype.status;
}
/**
* @record
*/
export function AppUserInfo() { }
if (false) {
/** @type {?} */
AppUserInfo.prototype.token;
/** @type {?} */
AppUserInfo.prototype.tenantId;
/** @type {?} */
AppUserInfo.prototype.userId;
/** @type {?} */
AppUserInfo.prototype.username;
/** @type {?} */
AppUserInfo.prototype.realname;
/** @type {?} */
AppUserInfo.prototype.userCode;
/** @type {?} */
AppUserInfo.prototype.userType;
/** @type {?} */
AppUserInfo.prototype.deptId;
/** @type {?} */
AppUserInfo.prototype.deptName;
}
var WebViewAppCommService = /** @class */ (function () {
function WebViewAppCommService() {
// 回调管理池
this.callbackMap = new Map();
this.callbackId = 0;
// JSBridge 是否就绪
this.bridgeReady = false;
this.initBridgeListener();
}
/**
* 初始化监听 UniApp JSBridge 就绪
*/
/**
* 初始化监听 UniApp JSBridge 就绪
* @private
* @return {?}
*/
WebViewAppCommService.prototype.initBridgeListener = /**
* 初始化监听 UniApp JSBridge 就绪
* @private
* @return {?}
*/
function () {
if (((/** @type {?} */ (window))).uni) {
((/** @type {?} */ (window))).handleAppMessage = this.handleAppMessage.bind(this);
this.bridgeReady = true;
}
};
/**
* 统一发送消息给 App
*/
/**
* 统一发送消息给 App
* @template T
* @param {?} param
* @return {?}
*/
WebViewAppCommService.prototype.postMessage = /**
* 统一发送消息给 App
* @template T
* @param {?} param
* @return {?}
*/
function (param) {
var _this = this;
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
// 桥接未就绪
if (!_this.bridgeReady) {
reject(new Error('JSBridge 未初始化'));
return;
}
// 生成唯一回调 ID
/** @type {?} */
var cid = "cb_" + _this.callbackId++;
param.callbackId = cid;
// 存入回调
_this.callbackMap.set(cid, (/**
* @param {?} data
* @param {?} status
* @return {?}
*/
function (data, status) {
_this.callbackMap.delete(cid); // 执行后立即删除
if (status === 'success')
resolve(data);
else
reject(new Error('App 返回失败'));
}));
uni.webView.postMessage({
data: param
});
}));
};
/**
* 接收 App 发来的消息(全局挂载)
*/
/**
* 接收 App 发来的消息(全局挂载)
* @private
* @param {?} res
* @return {?}
*/
WebViewAppCommService.prototype.handleAppMessage = /**
* 接收 App 发来的消息(全局挂载)
* @private
* @param {?} res
* @return {?}
*/
function (res) {
/** @type {?} */
var callback = this.callbackMap.get(res.callbackId);
if (callback) {
callback(res.data, res.status);
}
};
/**
* 【核心方法】从 App 获取用户信息
*/
/**
* 【核心方法】从 App 获取用户信息
* @return {?}
*/
WebViewAppCommService.prototype.getUserInfo = /**
* 【核心方法】从 App 获取用户信息
* @return {?}
*/
function () {
/** @type {?} */
var param = {
action: 'getUserInfo',
callbackId: '',
params: {}
};
return this.postMessage(param);
};
/**
* 退出登录
*/
/**
* 退出登录
* @return {?}
*/
WebViewAppCommService.prototype.logout = /**
* 退出登录
* @return {?}
*/
function () {
/** @type {?} */
var param = {
action: 'logout',
callbackId: '',
params: {}
};
this.postMessage(param);
};
/**
* 网页跳转
* @param url
*/
/**
* 网页跳转
* @param {?} url
* @return {?}
*/
WebViewAppCommService.prototype.navigateTo = /**
* 网页跳转
* @param {?} url
* @return {?}
*/
function (url) {
uni.navigateTo({
url: '/pages/public-web-view/public-web-view?url=' + encodeURIComponent(url)
});
};
WebViewAppCommService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
WebViewAppCommService.ctorParameters = function () { return []; };
/** @nocollapse */ WebViewAppCommService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function WebViewAppCommService_Factory() { return new WebViewAppCommService(); }, token: WebViewAppCommService, providedIn: "root" });
return WebViewAppCommService;
}());
export { WebViewAppCommService };
if (false) {
/**
* @type {?}
* @private
*/
WebViewAppCommService.prototype.callbackMap;
/**
* @type {?}
* @private
*/
WebViewAppCommService.prototype.callbackId;
/**
* @type {?}
* @private
*/
WebViewAppCommService.prototype.bridgeReady;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vidmlldy11bmlhcHB4LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy15dW56YWktbW9iaWxlLyIsInNvdXJjZXMiOlsiZGV2aWNlcy93ZWJ2aWV3LXVuaWFwcHguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7O0FBSXpDLDZCQUlDOzs7SUFIQyxnQ0FBZTs7SUFDZixvQ0FBb0I7O0lBQ3BCLGdDQUFhOzs7OztBQUdmLDBCQUlDOzs7SUFIQyxpQ0FBbUI7O0lBQ25CLDJCQUFVOztJQUNWLDZCQUEyQjs7Ozs7QUFJN0IsaUNBVUM7OztJQVRDLDRCQUFjOztJQUNkLCtCQUFpQjs7SUFDakIsNkJBQWU7O0lBQ2YsK0JBQWlCOztJQUNqQiwrQkFBaUI7O0lBQ2pCLCtCQUFpQjs7SUFDakIsK0JBQWlCOztJQUNqQiw2QkFBZTs7SUFDZiwrQkFBaUI7O0FBR25CO0lBV0U7O1FBTlEsZ0JBQVcsR0FBRyxJQUFJLEdBQUcsRUFBK0MsQ0FBQztRQUNyRSxlQUFVLEdBQUcsQ0FBQyxDQUFDOztRQUVmLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBSTFCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRDs7T0FFRzs7Ozs7O0lBQ0ssa0RBQWtCOzs7OztJQUExQjtRQUNFLElBQUksQ0FBQyxtQkFBQSxNQUFNLEVBQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRTtZQUN2QixDQUFDLG1CQUFBLE1BQU0sRUFBTyxDQUFDLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRDs7T0FFRzs7Ozs7OztJQUNILDJDQUFXOzs7Ozs7SUFBWCxVQUFxQixLQUFxQjtRQUExQyxpQkFvQkM7UUFuQkMsT0FBTyxJQUFJLE9BQU87Ozs7O1FBQUMsVUFBQyxPQUFPLEVBQUUsTUFBTTtZQUNqQyxRQUFRO1lBQ1IsSUFBSSxDQUFDLEtBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3JCLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO2dCQUNuQyxPQUFPO2FBQ1I7OztnQkFFSyxHQUFHLEdBQUcsUUFBTSxLQUFJLENBQUMsVUFBVSxFQUFJO1lBQ3JDLEtBQUssQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFBO1lBQ3RCLE9BQU87WUFDUCxLQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHOzs7OztZQUFFLFVBQUMsSUFBSSxFQUFFLE1BQU07Z0JBQ3JDLEtBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVTtnQkFDeEMsSUFBSSxNQUFNLEtBQUssU0FBUztvQkFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7O29CQUNuQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUNyQyxDQUFDLEVBQUMsQ0FBQztZQUNILEdBQUcsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO2dCQUN0QixJQUFJLEVBQUUsS0FBSzthQUNaLENBQUMsQ0FBQztRQUNMLENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHOzs7Ozs7O0lBQ0ssZ0RBQWdCOzs7Ozs7SUFBeEIsVUFBeUIsR0FBZ0I7O1lBQ2pDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO1FBQ3JELElBQUksUUFBUSxFQUFFO1lBQ1osUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUVEOztPQUVHOzs7OztJQUNILDJDQUFXOzs7O0lBQVg7O1lBQ1EsS0FBSyxHQUFtQjtZQUM1QixNQUFNLEVBQUUsYUFBYTtZQUNyQixVQUFVLEVBQUUsRUFBRTtZQUNkLE1BQU0sRUFBRSxFQUFFO1NBQ1g7UUFDRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQWMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOztPQUVHOzs7OztJQUNILHNDQUFNOzs7O0lBQU47O1lBQ1EsS0FBSyxHQUFtQjtZQUM1QixNQUFNLEVBQUUsUUFBUTtZQUNoQixVQUFVLEVBQUUsRUFBRTtZQUNkLE1BQU0sRUFBRSxFQUFFO1NBQ1g7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7Ozs7OztJQUNILDBDQUFVOzs7OztJQUFWLFVBQVcsR0FBVztRQUNwQixHQUFHLENBQUMsVUFBVSxDQUFDO1lBQ2IsR0FBRyxFQUFFLDZDQUE2QyxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQztTQUM3RSxDQUFDLENBQUM7SUFDTCxDQUFDOztnQkE1RkYsVUFBVSxTQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7Ozs7Z0NBL0JEO0NBMEhDLEFBN0ZELElBNkZDO1NBMUZZLHFCQUFxQjs7Ozs7O0lBRWhDLDRDQUE2RTs7Ozs7SUFDN0UsMkNBQXVCOzs7OztJQUV2Qiw0Q0FBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5kZWNsYXJlIHZhciB1bmk6IGFueTtcblxuaW50ZXJmYWNlIFdlYlZpZXdNZXNzYWdlIHtcbiAgYWN0aW9uOiBzdHJpbmc7XG4gIGNhbGxiYWNrSWQ/OiBzdHJpbmc7XG4gIHBhcmFtcz86IGFueTtcbn1cblxuaW50ZXJmYWNlIEFwcFJlc3BvbnNlIHtcbiAgY2FsbGJhY2tJZDogc3RyaW5nO1xuICBkYXRhOiBhbnk7XG4gIHN0YXR1czogJ3N1Y2Nlc3MnIHwgJ2ZhaWwnO1xufVxuXG4vLyDnlKjmiLfkv6Hmga/nsbvlnovvvIjlj6/moLnmja7kvaDnmoTkuJrliqHkv67mlLnvvIlcbmV4cG9ydCBpbnRlcmZhY2UgQXBwVXNlckluZm8ge1xuICB0b2tlbjogc3RyaW5nO1xuICB0ZW5hbnRJZDogc3RyaW5nO1xuICB1c2VySWQ6IHN0cmluZztcbiAgdXNlcm5hbWU6IHN0cmluZztcbiAgcmVhbG5hbWU6IHN0cmluZztcbiAgdXNlckNvZGU6IHN0cmluZztcbiAgdXNlclR5cGU6IG51bWJlcjtcbiAgZGVwdElkOiBzdHJpbmc7XG4gIGRlcHROYW1lOiBzdHJpbmc7XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFdlYlZpZXdBcHBDb21tU2VydmljZSB7XG4gIC8vIOWbnuiwg+euoeeQhuaxoFxuICBwcml2YXRlIGNhbGxiYWNrTWFwID0gbmV3IE1hcDxzdHJpbmcsIChkYXRhOiBhbnksIHN0YXR1czogc3RyaW5nKSA9PiB2b2lkPigpO1xuICBwcml2YXRlIGNhbGxiYWNrSWQgPSAwO1xuICAvLyBKU0JyaWRnZSDmmK/lkKblsLHnu6pcbiAgcHJpdmF0ZSBicmlkZ2VSZWFkeSA9IGZhbHNlO1xuXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5pbml0QnJpZGdlTGlzdGVuZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDliJ3lp4vljJbnm5HlkKwgVW5pQXBwIEpTQnJpZGdlIOWwsee7qlxuICAgKi9cbiAgcHJpdmF0ZSBpbml0QnJpZGdlTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgaWYgKCh3aW5kb3cgYXMgYW55KS51bmkpIHtcbiAgICAgICh3aW5kb3cgYXMgYW55KS5oYW5kbGVBcHBNZXNzYWdlID0gdGhpcy5oYW5kbGVBcHBNZXNzYWdlLmJpbmQodGhpcyk7XG4gICAgICB0aGlzLmJyaWRnZVJlYWR5ID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICog57uf5LiA5Y+R6YCB5raI5oGv57uZIEFwcFxuICAgKi9cbiAgcG9zdE1lc3NhZ2U8VCA9IGFueT4ocGFyYW06IFdlYlZpZXdNZXNzYWdlKTogUHJvbWlzZTxUPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIC8vIOahpeaOpeacquWwsee7qlxuICAgICAgaWYgKCF0aGlzLmJyaWRnZVJlYWR5KSB7XG4gICAgICAgIHJlamVjdChuZXcgRXJyb3IoJ0pTQnJpZGdlIOacquWIneWni+WMlicpKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgLy8g55Sf5oiQ5ZSv5LiA5Zue6LCDIElEXG4gICAgICBjb25zdCBjaWQgPSBgY2JfJHt0aGlzLmNhbGxiYWNrSWQrK31gO1xuICAgICAgcGFyYW0uY2FsbGJhY2tJZCA9IGNpZFxuICAgICAgLy8g5a2Y5YWl5Zue6LCDXG4gICAgICB0aGlzLmNhbGxiYWNrTWFwLnNldChjaWQsIChkYXRhLCBzdGF0dXMpID0+IHtcbiAgICAgICAgdGhpcy5jYWxsYmFja01hcC5kZWxldGUoY2lkKTsgLy8g5omn6KGM5ZCO56uL5Y2z5Yig6ZmkXG4gICAgICAgIGlmIChzdGF0dXMgPT09ICdzdWNjZXNzJykgcmVzb2x2ZShkYXRhKTtcbiAgICAgICAgZWxzZSByZWplY3QobmV3IEVycm9yKCdBcHAg6L+U5Zue5aSx6LSlJykpO1xuICAgICAgfSk7XG4gICAgICB1bmkud2ViVmlldy5wb3N0TWVzc2FnZSh7XG4gICAgICAgIGRhdGE6IHBhcmFtXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiDmjqXmlLYgQXBwIOWPkeadpeeahOa2iOaBr++8iOWFqOWxgOaMgui9ve+8iVxuICAgKi9cbiAgcHJpdmF0ZSBoYW5kbGVBcHBNZXNzYWdlKHJlczogQXBwUmVzcG9uc2UpOiB2b2lkIHtcbiAgICBjb25zdCBjYWxsYmFjayA9IHRoaXMuY2FsbGJhY2tNYXAuZ2V0KHJlcy5jYWxsYmFja0lkKTtcbiAgICBpZiAoY2FsbGJhY2spIHtcbiAgICAgIGNhbGxiYWNrKHJlcy5kYXRhLCByZXMuc3RhdHVzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICog44CQ5qC45b+D5pa55rOV44CR5LuOIEFwcCDojrflj5bnlKjmiLfkv6Hmga9cbiAgICovXG4gIGdldFVzZXJJbmZvKCk6IFByb21pc2U8QXBwVXNlckluZm8+IHtcbiAgICBjb25zdCBwYXJhbTogV2ViVmlld01lc3NhZ2UgPSB7XG4gICAgICBhY3Rpb246ICdnZXRVc2VySW5mbycsXG4gICAgICBjYWxsYmFja0lkOiAnJyxcbiAgICAgIHBhcmFtczoge31cbiAgICB9O1xuICAgIHJldHVybiB0aGlzLnBvc3RNZXNzYWdlPEFwcFVzZXJJbmZvPihwYXJhbSk7XG4gIH1cblxuICAvKipcbiAgICog6YCA5Ye655m75b2VXG4gICAqL1xuICBsb2dvdXQoKSB7XG4gICAgY29uc3QgcGFyYW06IFdlYlZpZXdNZXNzYWdlID0ge1xuICAgICAgYWN0aW9uOiAnbG9nb3V0JyxcbiAgICAgIGNhbGxiYWNrSWQ6ICcnLFxuICAgICAgcGFyYW1zOiB7fVxuICAgIH07XG4gICAgdGhpcy5wb3N0TWVzc2FnZShwYXJhbSk7XG4gIH1cblxuICAvKipcbiAgICog572R6aG16Lez6L2sXG4gICAqIEBwYXJhbSB1cmxcbiAgICovXG4gIG5hdmlnYXRlVG8odXJsOiBzdHJpbmcpIHtcbiAgICB1bmkubmF2aWdhdGVUbyh7XG4gICAgICB1cmw6ICcvcGFnZXMvcHVibGljLXdlYi12aWV3L3B1YmxpYy13ZWItdmlldz91cmw9JyArIGVuY29kZVVSSUNvbXBvbmVudCh1cmwpXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==