UNPKG

ng-yunzai-mobile

Version:

1. 适配yunzai_uni_app_x

243 lines 13.5 kB
/** * @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==