UNPKG

ng-yunzai-mobile

Version:

1. 修改wechat.micro.ts

362 lines 22.4 kB
/** * @fileoverview added by tsickle * Generated from: devices/yiban.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; /* * @Author: cuihaonan * @Email: devcui@outlook.com * @Date: 2021-04-07 13:59:18 * @LastEditTime: 2021-06-08 15:10:01 * @LastEditors: cuihaonan * @Description: Basic description * @FilePath: /angular-mobile-npm-package/projects/ng-yunzai-mobile/devices/yiban.ts * @LICENSE: NONE */ 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 * 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 "../client/base.client"; var Yiban = /** @class */ (function (_super) { tslib_1.__extends(Yiban, _super); function Yiban(tokenService, http, user, title, baseclient) { var _this = _super.call(this) || this; _this.tokenService = tokenService; _this.http = http; _this.user = user; _this.title = title; _this.baseclient = baseclient; return _this; } /** * @return {?} */ Yiban.prototype.auth = /** * @return {?} */ function () { var _this = this; return new Promise((/** * @param {?} resolve * @param {?} reject * @return {?} */ function (resolve, reject) { // 查看有无参数 /** @type {?} */ var params = window.location.href.split("?")[1]; if (params) { // 拿到参数键直对 /** @type {?} */ var kvs = params.split("&"); /** @type {?} */ var tokenInfo_1 = {}; // 查看有无token信息 kvs.forEach((/** * @param {?} k * @return {?} */ function (k) { if (k.includes("_token")) { tokenInfo_1["accessToken"] = k.split("=")[1]; tokenInfo_1["tokenType"] = "bearer"; } })); // 如果有token信息 if (tokenInfo_1.accessToken) { // 设置token信息 _this.tokenService.set(tokenInfo_1); // 请求user _this.http .get(_this.baseclient.gateway + "/auth/user") .subscribe((/** * @param {?} response * @return {?} */ function (response) { // 设置user _this.user.set(response.principal); // 加载结束 preloaderFinished(); resolve(true); })); } else { alert("无法获取到易班用户信息参数"); } } else { alert("无法获取到易班参数"); } })); }; /** * @param {?} iwindow * @return {?} */ Yiban.prototype.openWindow = /** * @param {?} iwindow * @return {?} */ function (iwindow) { window.open(iwindow.url); }; /** * @param {?} ititle * @return {?} */ Yiban.prototype.setTitle = /** * @param {?} ititle * @return {?} */ function (ititle) { this.title.setTitle(ititle.title); }; /** * @param {?} navigationBar * @return {?} */ Yiban.prototype.setNavigationBar = /** * @param {?} navigationBar * @return {?} */ function (navigationBar) { alert("易班暂不支持放置按钮,请在APP中使用此功能!"); }; /** * @param {?} ishare * @return {?} */ Yiban.prototype.share = /** * @param {?} ishare * @return {?} */ function (ishare) { alert("易班暂不支持分享,请在APP中使用此功能!"); }; /** * @return {?} */ Yiban.prototype.getToken = /** * @return {?} */ function () { return this.tokenService.get(); }; /** * @return {?} */ Yiban.prototype.scanCode = /** * @return {?} */ function () { alert("易班暂不支持扫码,请在APP中使用此功能!"); return undefined; }; /** * @return {?} */ Yiban.prototype.userLocation = /** * @return {?} */ function () { alert("易班暂不支持定位,请在APP中使用此功能!"); return undefined; }; /** * @param {?} bssids * @return {?} */ Yiban.prototype.validateInWifi = /** * @param {?} bssids * @return {?} */ function (bssids) { alert("易班暂不支持WIFI验证,请在APP中使用此功能!"); return undefined; }; /** * @return {?} */ Yiban.prototype.getWifiMac = /** * @return {?} */ function () { alert("易班暂不支持获取MAC地址,请在APP中使用此功能!"); return undefined; }; /** * @param {?} count * @return {?} */ Yiban.prototype.chooseContacts = /** * @param {?} count * @return {?} */ function (count) { alert("易班暂不支持获取联系人,请在APP中使用此功能!"); return undefined; }; /** * @param {?} targetUserId * @return {?} */ Yiban.prototype.contactDetails = /** * @param {?} targetUserId * @return {?} */ function (targetUserId) { alert("易班暂不支持查询联系人详细信息,请在APP中使用此功能!"); return undefined; }; /** * @param {?} count * @param {?} sourceType * @return {?} */ Yiban.prototype.uploadImage = /** * @param {?} count * @param {?} sourceType * @return {?} */ function (count, sourceType) { alert("易班暂不支持图片上传,请在APP中使用此功能!"); return undefined; }; /** * @param {?} url * @param {?} openType * @param {?} title * @param {?} id * @param {?} type * @return {?} */ Yiban.prototype.openReadWithTimer = /** * @param {?} url * @param {?} openType * @param {?} title * @param {?} id * @param {?} type * @return {?} */ function (url, openType, title, id, type) { alert("易班暂不支持读物时间统计,请在APP中使用此功能!"); return undefined; }; /** * @param {?} limitMinute * @return {?} */ Yiban.prototype.uploadMovie = /** * @param {?} limitMinute * @return {?} */ function (limitMinute) { alert("易班暂不支持视频上传,请在APP中使用此功能!"); return undefined; }; /** * @param {?} url * @param {?} title * @return {?} */ Yiban.prototype.fileBrowser = /** * @param {?} url * @param {?} title * @return {?} */ function (url, title) { alert("易班暂不支持此功能,请在APP中使用此功能!"); return undefined; }; /** * @param {?} ticket * @param {?} callback * @return {?} */ Yiban.prototype.startSearchBeacons = /** * @param {?} ticket * @param {?} callback * @return {?} */ function (ticket, callback) { throw new Error("Method not implemented."); }; /** * @param {?} callback * @return {?} */ Yiban.prototype.stopSearchBeacons = /** * @param {?} callback * @return {?} */ function (callback) { throw new Error("Method not implemented."); }; /** * @param {?} callback * @return {?} */ Yiban.prototype.onSearchBeacons = /** * @param {?} callback * @return {?} */ function (callback) { throw new Error("Method not implemented."); }; Yiban.decorators = [ { type: Injectable, args: [{ providedIn: "root", },] } ]; /** @nocollapse */ Yiban.ctorParameters = function () { return [ { type: TokenService }, { type: HttpClient }, { type: UserService }, { type: Title }, { type: undefined, decorators: [{ type: Inject, args: [BASE_CLIENT,] }] } ]; }; /** @nocollapse */ Yiban.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function Yiban_Factory() { return new Yiban(i0.ɵɵinject(i1.TokenService), i0.ɵɵinject(i2.HttpClient), i0.ɵɵinject(i3.UserService), i0.ɵɵinject(i4.Title), i0.ɵɵinject(i5.BASE_CLIENT)); }, token: Yiban, providedIn: "root" }); return Yiban; }(BaseDevice)); export { Yiban }; if (false) { /** * @type {?} * @private */ Yiban.prototype.tokenService; /** * @type {?} * @private */ Yiban.prototype.http; /** * @type {?} * @private */ Yiban.prototype.user; /** * @type {?} * @private */ Yiban.prototype.title; /** * @type {?} * @private */ Yiban.prototype.baseclient; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWliYW4uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy15dW56YWktbW9iaWxlLyIsInNvdXJjZXMiOlsiZGV2aWNlcy95aWJhbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBV0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFJdEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7Ozs7O0FBRWxEO0lBRzJCLGlDQUFVO0lBQ25DLGVBQ1UsWUFBMEIsRUFDMUIsSUFBZ0IsRUFDaEIsSUFBaUIsRUFDakIsS0FBWSxFQUNTLFVBQXNCO1FBTHJELFlBT0UsaUJBQU8sU0FDUjtRQVBTLGtCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFVBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsVUFBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixXQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1MsZ0JBQVUsR0FBVixVQUFVLENBQVk7O0lBR3JELENBQUM7Ozs7SUFFRCxvQkFBSTs7O0lBQUo7UUFBQSxpQkFvQ0M7UUFuQ0MsT0FBTyxJQUFJLE9BQU87Ozs7O1FBQU0sVUFBQyxPQUFPLEVBQUUsTUFBTTs7O2dCQUVoQyxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENB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U0FBQyxXQUFXOzs7Z0JBaEN2QjtDQWdLQyxBQXpJRCxDQUcyQixVQUFVLEdBc0lwQztTQXRJWSxLQUFLOzs7Ozs7SUFFZCw2QkFBa0M7Ozs7O0lBQ2xDLHFCQUF3Qjs7Ozs7SUFDeEIscUJBQXlCOzs7OztJQUN6QixzQkFBb0I7Ozs7O0lBQ3BCLDJCQUFtRCIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIEBBdXRob3I6IGN1aWhhb25hblxyXG4gKiBARW1haWw6IGRldmN1aUBvdXRsb29rLmNvbVxyXG4gKiBARGF0ZTogMjAyMS0wNC0wNyAxMzo1OToxOFxyXG4gKiBATGFzdEVkaXRUaW1lOiAyMDIxLTA2LTA4IDE1OjEwOjAxXHJcbiAqIEBMYXN0RWRpdG9yczogY3VpaGFvbmFuXHJcbiAqIEBEZXNjcmlwdGlvbjogQmFzaWMgZGVzY3JpcHRpb25cclxuICogQEZpbGVQYXRoOiAvYW5ndWxhci1tb2JpbGUtbnBtLXBhY2thZ2UvcHJvamVjdHMvbmcteXVuemFpLW1vYmlsZS9kZXZpY2VzL3lpYmFuLnRzXHJcbiAqIEBMSUNFTlNFOiBOT05FXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgQmFzZURldmljZSB9IGZyb20gXCIuL2Jhc2UuZGV2aWNlXCI7XHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFRva2VuU2VydmljZSB9IGZyb20gXCIuLi90b2tlbi90b2tlbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuaW1wb3J0IHsgVXNlclNlcnZpY2UgfSBmcm9tIFwiLi4vdXNlci91c2VyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQmFzZUNsaWVudCwgQkFTRV9DTElFTlQgfSBmcm9tIFwiLi4vY2xpZW50L2Jhc2UuY2xpZW50XCI7XHJcbmltcG9ydCB7IHByZWxvYWRlckZpbmlzaGVkIH0gZnJvbSBcIi4uL2F1dGgvcHJlbG9hZGVyXCI7XHJcbmltcG9ydCB7IEl0b2tlbiB9IGZyb20gXCIuLi9hdXRoL2l0b2tlblwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgSVNoYXJlLCBJVGl0bGUsIElXaW5kb3csIE5hdmlnYXRpb25CYXIsIFVzZXJMb2NhdGlvbiB9IGZyb20gXCIuL21vZGVsXCI7XHJcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSBcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIFlpYmFuIGV4dGVuZHMgQmFzZURldmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHRva2VuU2VydmljZTogVG9rZW5TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSB1c2VyOiBVc2VyU2VydmljZSxcclxuICAgIHByaXZhdGUgdGl0bGU6IFRpdGxlLFxyXG4gICAgQEluamVjdChCQVNFX0NMSUVOVCkgcHJpdmF0ZSBiYXNlY2xpZW50OiBCYXNlQ2xpZW50XHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgYXV0aCgpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAvLyDmn6XnnIvmnInml6Dlj4LmlbBcclxuICAgICAgY29uc3QgcGFyYW1zID0gd2luZG93LmxvY2F0aW9uLmhyZWYuc3BsaXQoXCI/XCIpWzFdO1xyXG4gICAgICBpZiAocGFyYW1zKSB7XHJcbiAgICAgICAgLy8g5ou/5Yiw5Y+C5pWw6ZSu55u05a+5XHJcbiAgICAgICAgY29uc3Qga3ZzID0gcGFyYW1zLnNwbGl0KFwiJlwiKTtcclxuICAgICAgICBjb25zdCB0b2tlbkluZm86IGFueSA9IHt9O1xyXG4gICAgICAgIC8vIOafpeeci+acieaXoHRva2Vu5L+h5oGvXHJcbiAgICAgICAga3ZzLmZvckVhY2goKGspID0+IHtcclxuICAgICAgICAgIGlmIChrLmluY2x1ZGVzKFwiX3Rva2VuXCIpKSB7XHJcbiAgICAgICAgICAgIHRva2VuSW5mb1tcImFjY2Vzc1Rva2VuXCJdID0gay5zcGxpdChcIj1cIilbMV07XHJcbiAgICAgICAgICAgIHRva2VuSW5mb1tcInRva2VuVHlwZVwiXSA9IFwiYmVhcmVyXCI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgLy8g5aaC5p6c5pyJdG9rZW7kv6Hmga9cclxuICAgICAgICBpZiAodG9rZW5JbmZvLmFjY2Vzc1Rva2VuKSB7XHJcbiAgICAgICAgICAvLyDorr7nva50b2tlbuS/oeaBr1xyXG4gICAgICAgICAgdGhpcy50b2tlblNlcnZpY2Uuc2V0KHRva2VuSW5mbyk7XHJcbiAgICAgICAgICAvLyDor7fmsYJ1c2VyXHJcbiAgICAgICAgICB0aGlzLmh0dHBcclxuICAgICAgICAgICAgLmdldChgJHt0aGlzLmJhc2VjbGllbnQuZ2F0ZXdheX0vYXV0aC91c2VyYClcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIC8vIOiuvue9rnVzZXJcclxuICAgICAgICAgICAgICB0aGlzLnVzZXIuc2V0KHJlc3BvbnNlLnByaW5jaXBhbCk7XHJcbiAgICAgICAgICAgICAgLy8g5Yqg6L2957uT5p2fXHJcbiAgICAgICAgICAgICAgcHJlbG9hZGVyRmluaXNoZWQoKTtcclxuICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgYWxlcnQoXCLml6Dms5Xojrflj5bliLDmmJPnj63nlKjmiLfkv6Hmga/lj4LmlbBcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGFsZXJ0KFwi5peg5rOV6I635Y+W5Yiw5piT54+t5Y+C5pWwXCIpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9wZW5XaW5kb3coaXdpbmRvdzogSVdpbmRvdyk6IHZvaWQge1xyXG4gICAgd2luZG93Lm9wZW4oaXdpbmRvdy51cmwpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGl0bGUoaXRpdGxlOiBJVGl0bGUpOiB2b2lkIHtcclxuICAgIHRoaXMudGl0bGUuc2V0VGl0bGUoaXRpdGxlLnRpdGxlKTtcclxuICB9XHJcblxyXG4gIHNldE5hdmlnYXRpb25CYXIobmF2aWdhdGlvbkJhcjogTmF2aWdhdGlvbkJhcik6IHZvaWQge1xyXG4gICAgYWxlcnQoXCLmmJPnj63mmoLkuI3mlK/mjIHmlL7nva7mjInpkq4s6K+35ZyoQVBQ5Lit5L2/55So5q2k5Yqf6IO9IVwiKTtcclxuICB9XHJcblxyXG4gIHNoYXJlKGlzaGFyZTogSVNoYXJlKTogdm9pZCB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeWIhuS6qyzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VG9rZW4oKTogSXRva2VuIHtcclxuICAgIHJldHVybiB0aGlzLnRva2VuU2VydmljZS5nZXQoKTtcclxuICB9XHJcblxyXG4gIHNjYW5Db2RlKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeaJq+eggSzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHVzZXJMb2NhdGlvbigpOiBPYnNlcnZhYmxlPFVzZXJMb2NhdGlvbj4ge1xyXG4gICAgYWxlcnQoXCLmmJPnj63mmoLkuI3mlK/mjIHlrprkvY0s6K+35ZyoQVBQ5Lit5L2/55So5q2k5Yqf6IO9IVwiKTtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZUluV2lmaShic3NpZHM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgVdJRknpqozor4Es6K+35ZyoQVBQ5Lit5L2/55So5q2k5Yqf6IO9IVwiKTtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBnZXRXaWZpTWFjKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeiOt+WPlk1BQ+WcsOWdgCzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIGNob29zZUNvbnRhY3RzKGNvdW50OiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgYWxlcnQoXCLmmJPnj63mmoLkuI3mlK/mjIHojrflj5bogZTns7vkuros6K+35ZyoQVBQ5Lit5L2/55So5q2k5Yqf6IO9IVwiKTtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBjb250YWN0RGV0YWlscyh0YXJnZXRVc2VySWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeafpeivouiBlOezu+S6uuivpue7huS/oeaBryzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHVwbG9hZEltYWdlKGNvdW50OiBudW1iZXIsIHNvdXJjZVR5cGU6IGFueSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeWbvueJh+S4iuS8oCzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIG9wZW5SZWFkV2l0aFRpbWVyKFxyXG4gICAgdXJsOiBhbnksXHJcbiAgICBvcGVuVHlwZTogYW55LFxyXG4gICAgdGl0bGU6IGFueSxcclxuICAgIGlkOiBhbnksXHJcbiAgICB0eXBlOiBhbnlcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgYWxlcnQoXCLmmJPnj63mmoLkuI3mlK/mjIHor7vnianml7bpl7Tnu5/orqEs6K+35ZyoQVBQ5Lit5L2/55So5q2k5Yqf6IO9IVwiKTtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICB1cGxvYWRNb3ZpZShsaW1pdE1pbnV0ZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGFsZXJ0KFwi5piT54+t5pqC5LiN5pSv5oyB6KeG6aKR5LiK5LygLOivt+WcqEFQUOS4reS9v+eUqOatpOWKn+iDvSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgZmlsZUJyb3dzZXIodXJsOiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgYWxlcnQoXCLmmJPnj63mmoLkuI3mlK/mjIHmraTlip/og70s6K+35ZyoQVBQ5Lit5L2/55So5q2k5Yqf6IO9IVwiKTtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBzdGFydFNlYXJjaEJlYWNvbnModGlja2V0OiBzdHJpbmcsIGNhbGxiYWNrOiAoYXJndjogYW55KSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJNZXRob2Qgbm90IGltcGxlbWVudGVkLlwiKTtcclxuICB9XHJcbiAgc3RvcFNlYXJjaEJlYWNvbnMoY2FsbGJhY2s6IChhcmd2OiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xyXG4gIH1cclxuICBvblNlYXJjaEJlYWNvbnMoY2FsbGJhY2s6IChhcmd2OiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xyXG4gIH1cclxufVxyXG4iXX0=