ng-yunzai-mobile
Version:
1. 适配yunzai_uni_app_x
361 lines • 21.7 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: devices/yunzai.oa-uni-app-x.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { BaseDevice } from "./base.device";
import { Inject, Injectable } from "@angular/core";
import { TokenService } from "../token/token.service";
import { HttpClient } from "@angular/common/http";
import { UserService } from "../user/user.service";
import { BASE_CLIENT } from "../client/base.client";
import { preloaderFinished } from "../auth/preloader";
import { Title } from "@angular/platform-browser";
import { WebViewAppCommService } from "./webview-uniappx.service";
import * as i0 from "@angular/core";
import * as i1 from "../token/token.service";
import * as i2 from "@angular/common/http";
import * as i3 from "../user/user.service";
import * as i4 from "@angular/platform-browser";
import * as i5 from "./webview-uniappx.service";
import * as i6 from "../client/base.client";
var YunzaiOaUniAppX = /** @class */ (function (_super) {
tslib_1.__extends(YunzaiOaUniAppX, _super);
function YunzaiOaUniAppX(tokenService, http, user, title, webViewAppCommService, baseclient) {
var _this = _super.call(this) || this;
_this.tokenService = tokenService;
_this.http = http;
_this.user = user;
_this.title = title;
_this.webViewAppCommService = webViewAppCommService;
_this.baseclient = baseclient;
return _this;
}
/**
* @return {?}
*/
YunzaiOaUniAppX.prototype.auth = /**
* @return {?}
*/
function () {
var _this = this;
console.log('yunzaiOaUniAppX auth...');
if (this.baseclient.yunzaiOaUniAppX && this.baseclient.yunzaiOaUniAppX.auth === false) {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
preloaderFinished();
resolve(true);
}));
}
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
function (resolve, reject) {
_this.webViewAppCommService.getUserInfo().then((/**
* @param {?} res
* @return {?}
*/
function (res) {
/** @type {?} */
var tokenInfo = {};
tokenInfo.tokenType = 'bearer';
tokenInfo.accessToken = res.token;
// 设置token
_this.tokenService.set((/** @type {?} */ (tokenInfo)));
// 发送/user请求
_this.http
.get(_this.baseclient.gateway + "/auth/user")
.subscribe((/**
* @param {?} response
* @return {?}
*/
function (response) {
// 设置user
_this.user.set(tslib_1.__assign({}, response.principal, { tenantId: response.tenantId }));
// 加载结束
preloaderFinished();
resolve(true);
}));
})).catch((/**
* @param {?} err
* @return {?}
*/
function (err) {
console.log(err);
reject(err);
}));
}));
};
/**
* @param {?} iwindow
* @return {?}
*/
YunzaiOaUniAppX.prototype.openWindow = /**
* @param {?} iwindow
* @return {?}
*/
function (iwindow) {
// window.open(iwindow.url, '_self');
this.webViewAppCommService.navigateTo(iwindow.url);
};
/**
* @param {?} ititle
* @return {?}
*/
YunzaiOaUniAppX.prototype.setTitle = /**
* @param {?} ititle
* @return {?}
*/
function (ititle) {
this.title.setTitle(ititle.title);
};
/**
* @param {?} navigationBar
* @return {?}
*/
YunzaiOaUniAppX.prototype.setNavigationBar = /**
* @param {?} navigationBar
* @return {?}
*/
function (navigationBar) {
alert("暂不支持放置按钮!");
};
/**
* @param {?} ishare
* @return {?}
*/
YunzaiOaUniAppX.prototype.share = /**
* @param {?} ishare
* @return {?}
*/
function (ishare) {
alert("暂不支持分享!");
};
/**
* @return {?}
*/
YunzaiOaUniAppX.prototype.getToken = /**
* @return {?}
*/
function () {
return this.tokenService.get();
};
/**
* @return {?}
*/
YunzaiOaUniAppX.prototype.scanCode = /**
* @return {?}
*/
function () {
alert("暂不支持扫码!");
return undefined;
};
/**
* @return {?}
*/
YunzaiOaUniAppX.prototype.userLocation = /**
* @return {?}
*/
function () {
alert("暂不支持获取定位!");
return undefined;
};
/**
* @param {?} bssids
* @return {?}
*/
YunzaiOaUniAppX.prototype.validateInWifi = /**
* @param {?} bssids
* @return {?}
*/
function (bssids) {
alert("暂不支持WIFI验证!");
return undefined;
};
/**
* @return {?}
*/
YunzaiOaUniAppX.prototype.getWifiMac = /**
* @return {?}
*/
function () {
alert("暂不支持获取MAC地址!");
return undefined;
};
/**
* @param {?} count
* @return {?}
*/
YunzaiOaUniAppX.prototype.chooseContacts = /**
* @param {?} count
* @return {?}
*/
function (count) {
alert("暂不支持获取联系人!");
return undefined;
};
/**
* @param {?} targetUserId
* @return {?}
*/
YunzaiOaUniAppX.prototype.contactDetails = /**
* @param {?} targetUserId
* @return {?}
*/
function (targetUserId) {
alert("暂不支持查询联系人详细信息!");
return undefined;
};
/**
* @param {?} count
* @param {?} sourceType
* @return {?}
*/
YunzaiOaUniAppX.prototype.uploadImage = /**
* @param {?} count
* @param {?} sourceType
* @return {?}
*/
function (count, sourceType) {
alert("暂不支持图片上传!");
return undefined;
};
/**
* @param {?} url
* @param {?} openType
* @param {?} title
* @param {?} id
* @param {?} type
* @return {?}
*/
YunzaiOaUniAppX.prototype.openReadWithTimer = /**
* @param {?} url
* @param {?} openType
* @param {?} title
* @param {?} id
* @param {?} type
* @return {?}
*/
function (url, openType, title, id, type) {
alert("暂不支持读物时间统计!");
return undefined;
};
/**
* @param {?} limitMinute
* @return {?}
*/
YunzaiOaUniAppX.prototype.uploadMovie = /**
* @param {?} limitMinute
* @return {?}
*/
function (limitMinute) {
alert("暂不支持视频上传!");
return undefined;
};
/**
* @param {?} url
* @param {?} title
* @return {?}
*/
YunzaiOaUniAppX.prototype.fileBrowser = /**
* @param {?} url
* @param {?} title
* @return {?}
*/
function (url, title) {
alert("暂不支持此功能!");
return undefined;
};
/**
* @param {?} ticket
* @param {?} callback
* @return {?}
*/
YunzaiOaUniAppX.prototype.startSearchBeacons = /**
* @param {?} ticket
* @param {?} callback
* @return {?}
*/
function (ticket, callback) {
throw new Error("Method not implemented.");
};
/**
* @param {?} callback
* @return {?}
*/
YunzaiOaUniAppX.prototype.stopSearchBeacons = /**
* @param {?} callback
* @return {?}
*/
function (callback) {
throw new Error("Method not implemented.");
};
/**
* @param {?} callback
* @return {?}
*/
YunzaiOaUniAppX.prototype.onSearchBeacons = /**
* @param {?} callback
* @return {?}
*/
function (callback) {
throw new Error("Method not implemented.");
};
YunzaiOaUniAppX.decorators = [
{ type: Injectable, args: [{
providedIn: "root",
},] }
];
/** @nocollapse */
YunzaiOaUniAppX.ctorParameters = function () { return [
{ type: TokenService },
{ type: HttpClient },
{ type: UserService },
{ type: Title },
{ type: WebViewAppCommService },
{ type: undefined, decorators: [{ type: Inject, args: [BASE_CLIENT,] }] }
]; };
/** @nocollapse */ YunzaiOaUniAppX.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function YunzaiOaUniAppX_Factory() { return new YunzaiOaUniAppX(i0.ɵɵinject(i1.TokenService), i0.ɵɵinject(i2.HttpClient), i0.ɵɵinject(i3.UserService), i0.ɵɵinject(i4.Title), i0.ɵɵinject(i5.WebViewAppCommService), i0.ɵɵinject(i6.BASE_CLIENT)); }, token: YunzaiOaUniAppX, providedIn: "root" });
return YunzaiOaUniAppX;
}(BaseDevice));
export { YunzaiOaUniAppX };
if (false) {
/**
* @type {?}
* @private
*/
YunzaiOaUniAppX.prototype.tokenService;
/**
* @type {?}
* @private
*/
YunzaiOaUniAppX.prototype.http;
/**
* @type {?}
* @private
*/
YunzaiOaUniAppX.prototype.user;
/**
* @type {?}
* @private
*/
YunzaiOaUniAppX.prototype.title;
/**
* @type {?}
* @private
*/
YunzaiOaUniAppX.prototype.webViewAppCommService;
/**
* @type {?}
* @private
*/
YunzaiOaUniAppX.prototype.baseclient;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieXVuemFpLm9hLXVuaS1hcHAteC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLXl1bnphaS1tb2JpbGUvIiwic291cmNlcyI6WyJkZXZpY2VzL3l1bnphaS5vYS11bmktYXBwLXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDcEQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsV0FBVyxFQUFhLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFJcEQsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7OztBQUVoRTtJQUdxQywyQ0FBVTtJQUM3Qyx5QkFDVSxZQUEwQixFQUMxQixJQUFnQixFQUNoQixJQUFpQixFQUNqQixLQUFZLEVBQ1oscUJBQTRDLEVBQ3ZCLFVBQXNCO1FBTnJELFlBUUUsaUJBQU8sU0FDUjtRQVJTLGtCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFVBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsVUFBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixXQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osMkJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUN2QixnQkFBVSxHQUFWLFVBQVUsQ0FBWTs7SUFHckQsQ0FBQzs7OztJQUVELDhCQUFJOzs7SUFBSjtRQUFBLGlCQThCQztRQTdCQyxPQUFPLENBQUMs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QUE2QjtRQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQzs7Z0JBdElGLFVBQVUsU0FBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7Ozs7Z0JBYk8sWUFBWTtnQkFDWixVQUFVO2dCQUNWLFdBQVc7Z0JBTVgsS0FBSztnQkFDTCxxQkFBcUI7Z0RBWXhCLE1BQU0sU0FBQyxXQUFXOzs7MEJBdkJ2QjtDQW9KQyxBQXZJRCxDQUdxQyxVQUFVLEdBb0k5QztTQXBJWSxlQUFlOzs7Ozs7SUFFeEIsdUNBQWtDOzs7OztJQUNsQywrQkFBd0I7Ozs7O0lBQ3hCLCtCQUF5Qjs7Ozs7SUFDekIsZ0NBQW9COzs7OztJQUNwQixnREFBb0Q7Ozs7O0lBQ3BELHFDQUFtRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QmFzZURldmljZX0gZnJvbSBcIi4vYmFzZS5kZXZpY2VcIjtcclxuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7VG9rZW5TZXJ2aWNlfSBmcm9tIFwiLi4vdG9rZW4vdG9rZW4uc2VydmljZVwiO1xyXG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQge1VzZXJTZXJ2aWNlfSBmcm9tIFwiLi4vdXNlci91c2VyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtCQVNFX0NMSUVOVCwgQmFzZUNsaWVudH0gZnJvbSBcIi4uL2NsaWVudC9iYXNlLmNsaWVudFwiO1xyXG5pbXBvcnQge3ByZWxvYWRlckZpbmlzaGVkfSBmcm9tIFwiLi4vYXV0aC9wcmVsb2FkZXJcIjtcclxuaW1wb3J0IHtJdG9rZW59IGZyb20gXCIuLi9hdXRoL2l0b2tlblwiO1xyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7SVNoYXJlLCBJVGl0bGUsIElXaW5kb3csIE5hdmlnYXRpb25CYXIsIFVzZXJMb2NhdGlvbn0gZnJvbSBcIi4vbW9kZWxcIjtcclxuaW1wb3J0IHtUaXRsZX0gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcclxuaW1wb3J0IHtXZWJWaWV3QXBwQ29tbVNlcnZpY2V9IGZyb20gXCIuL3dlYnZpZXctdW5pYXBweC5zZXJ2aWNlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBZdW56YWlPYVVuaUFwcFggZXh0ZW5kcyBCYXNlRGV2aWNlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdG9rZW5TZXJ2aWNlOiBUb2tlblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIHVzZXI6IFVzZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0aXRsZTogVGl0bGUsXHJcbiAgICBwcml2YXRlIHdlYlZpZXdBcHBDb21tU2VydmljZTogV2ViVmlld0FwcENvbW1TZXJ2aWNlLFxyXG4gICAgQEluamVjdChCQVNFX0NMSUVOVCkgcHJpdmF0ZSBiYXNlY2xpZW50OiBCYXNlQ2xpZW50XHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgYXV0aCgpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgY29uc29sZS5sb2coJ3l1bnphaU9hVW5pQXBwWCBhdXRoLi4uJylcclxuICAgIGlmICh0aGlzLmJhc2VjbGllbnQueXVuemFpT2FVbmlBcHBYICYmIHRoaXMuYmFzZWNsaWVudC55dW56YWlPYVVuaUFwcFguYXV0aCA9PT0gZmFsc2UpIHtcclxuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIHByZWxvYWRlckZpbmlzaGVkKCk7XHJcbiAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRoaXMud2ViVmlld0FwcENvbW1TZXJ2aWNlLmdldFVzZXJJbmZvKCkudGhlbihyZXMgPT4ge1xyXG4gICAgICAgIGNvbnN0IHRva2VuSW5mbzogYW55ID0ge307XHJcbiAgICAgICAgdG9rZW5JbmZvLnRva2VuVHlwZSA9ICdiZWFyZXInO1xyXG4gICAgICAgIHRva2VuSW5mby5hY2Nlc3NUb2tlbiA9IHJlcy50b2tlbjtcclxuICAgICAgICAvLyDorr7nva50b2tlblxyXG4gICAgICAgIHRoaXMudG9rZW5TZXJ2aWNlLnNldCh0b2tlbkluZm8gYXMgYW55KTtcclxuICAgICAgICAvLyDlj5HpgIEvdXNlcuivt+axglxyXG4gICAgICAgIHRoaXMuaHR0cFxyXG4gICAgICAgICAgLmdldChgJHt0aGlzLmJhc2VjbGllbnQuZ2F0ZXdheX0vYXV0aC91c2VyYClcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgLy8g6K6+572udXNlclxyXG4gICAgICAgICAgICB0aGlzLnVzZXIuc2V0KHsuLi5yZXNwb25zZS5wcmluY2lwYWwsIHRlbmFudElkOiByZXNwb25zZS50ZW5hbnRJZH0pO1xyXG4gICAgICAgICAgICAvLyDliqDovb3nu5PmnZ9cclxuICAgICAgICAgICAgcHJlbG9hZGVyRmluaXNoZWQoKTtcclxuICAgICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9KS5jYXRjaChlcnIgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycik7XHJcbiAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgIH0pXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9wZW5XaW5kb3coaXdpbmRvdzogSVdpbmRvdyk6IHZvaWQge1xyXG4gICAgLy8gd2luZG93Lm9wZW4oaXdpbmRvdy51cmwsICdfc2VsZicpO1xyXG4gICAgdGhpcy53ZWJWaWV3QXBwQ29tbVNlcnZpY2UubmF2aWdhdGVUbyhpd2luZG93LnVybCk7XHJcbiAgfVxyXG5cclxuICBzZXRUaXRsZShpdGl0bGU6IElUaXRsZSk6IHZvaWQge1xyXG4gICAgdGhpcy50aXRsZS5zZXRUaXRsZShpdGl0bGUudGl0bGUpO1xyXG4gIH1cclxuXHJcbiAgc2V0TmF2aWdhdGlvbkJhcihuYXZpZ2F0aW9uQmFyOiBOYXZpZ2F0aW9uQmFyKTogdm9pZCB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeaUvue9ruaMiemSriFcIik7XHJcbiAgfVxyXG5cclxuICBzaGFyZShpc2hhcmU6IElTaGFyZSk6IHZvaWQge1xyXG4gICAgYWxlcnQoXCLmmoLkuI3mlK/mjIHliIbkuqshXCIpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VG9rZW4oKTogSXRva2VuIHtcclxuICAgIHJldHVybiB0aGlzLnRva2VuU2VydmljZS5nZXQoKTtcclxuICB9XHJcblxyXG4gIHNjYW5Db2RlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeaJq+eggSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgdXNlckxvY2F0aW9uKCk6IE9ic2VydmFibGU8VXNlckxvY2F0aW9uPiB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeiOt+WPluWumuS9jSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGVJbldpZmkoYnNzaWRzOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgYWxlcnQoXCLmmoLkuI3mlK/mjIFXSUZJ6aqM6K+BIVwiKTtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBnZXRXaWZpTWFjKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeiOt+WPlk1BQ+WcsOWdgCFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgY2hvb3NlQ29udGFjdHMoY291bnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeiOt+WPluiBlOezu+S6uiFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgY29udGFjdERldGFpbHModGFyZ2V0VXNlcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgYWxlcnQoXCLmmoLkuI3mlK/mjIHmn6Xor6LogZTns7vkurror6bnu4bkv6Hmga8hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHVwbG9hZEltYWdlKGNvdW50OiBudW1iZXIsIHNvdXJjZVR5cGU6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeWbvueJh+S4iuS8oCFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgb3BlblJlYWRXaXRoVGltZXIoXHJcbiAgICB1cmw6IGFueSxcclxuICAgIG9wZW5UeXBlOiBhbnksXHJcbiAgICB0aXRsZTogYW55LFxyXG4gICAgaWQ6IGFueSxcclxuICAgIHR5cGU6IGFueVxyXG4gICk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeivu+eJqeaXtumXtOe7n+iuoSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgdXBsb2FkTW92aWUobGltaXRNaW51dGU6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaaguS4jeaUr+aMgeinhumikeS4iuS8oCFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgZmlsZUJyb3dzZXIodXJsOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgYWxlcnQoXCLmmoLkuI3mlK/mjIHmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHN0YXJ0U2VhcmNoQmVhY29ucyh0aWNrZXQ6IHN0cmluZywgY2FsbGJhY2s6IChhcmd2OiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xyXG4gIH1cclxuXHJcbiAgc3RvcFNlYXJjaEJlYWNvbnMoY2FsbGJhY2s6IChhcmd2OiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xyXG4gIH1cclxuXHJcbiAgb25TZWFyY2hCZWFjb25zKGNhbGxiYWNrOiAoYXJndjogYW55KSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcclxuICB9XHJcbn1cclxuIl19