ng-yunzai-mobile
Version:
1. 适配yunzai_uni_app_x
285 lines • 20.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: devices/yiban.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/*
* @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";
export class Yiban extends BaseDevice {
/**
* @param {?} tokenService
* @param {?} http
* @param {?} user
* @param {?} title
* @param {?} baseclient
*/
constructor(tokenService, http, user, title, baseclient) {
super();
this.tokenService = tokenService;
this.http = http;
this.user = user;
this.title = title;
this.baseclient = baseclient;
}
/**
* @return {?}
*/
auth() {
return new Promise((/**
* @param {?} resolve
* @param {?} reject
* @return {?}
*/
(resolve, reject) => {
// 查看有无参数
/** @type {?} */
const params = window.location.href.split("?")[1];
if (params) {
// 拿到参数键直对
/** @type {?} */
const kvs = params.split("&");
/** @type {?} */
const tokenInfo = {};
// 查看有无token信息
kvs.forEach((/**
* @param {?} k
* @return {?}
*/
(k) => {
if (k.includes("_token")) {
tokenInfo["accessToken"] = k.split("=")[1];
tokenInfo["tokenType"] = "bearer";
}
}));
// 如果有token信息
if (tokenInfo.accessToken) {
// 设置token信息
this.tokenService.set(tokenInfo);
// 请求user
this.http
.get(`${this.baseclient.gateway}/auth/user`)
.subscribe((/**
* @param {?} response
* @return {?}
*/
(response) => {
// 设置user
this.user.set(Object.assign({}, response.principal, { tenantId: response.tenantId }));
// 加载结束
preloaderFinished();
resolve(true);
}));
}
else {
alert("无法获取到易班用户信息参数");
}
}
else {
alert("无法获取到易班参数");
}
}));
}
/**
* @param {?} iwindow
* @return {?}
*/
openWindow(iwindow) {
window.open(iwindow.url);
}
/**
* @param {?} ititle
* @return {?}
*/
setTitle(ititle) {
this.title.setTitle(ititle.title);
}
/**
* @param {?} navigationBar
* @return {?}
*/
setNavigationBar(navigationBar) {
alert("易班暂不支持放置按钮,请在APP中使用此功能!");
}
/**
* @param {?} ishare
* @return {?}
*/
share(ishare) {
alert("易班暂不支持分享,请在APP中使用此功能!");
}
/**
* @return {?}
*/
getToken() {
return this.tokenService.get();
}
/**
* @return {?}
*/
scanCode() {
alert("易班暂不支持扫码,请在APP中使用此功能!");
return undefined;
}
/**
* @return {?}
*/
userLocation() {
alert("易班暂不支持定位,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} bssids
* @return {?}
*/
validateInWifi(bssids) {
alert("易班暂不支持WIFI验证,请在APP中使用此功能!");
return undefined;
}
/**
* @return {?}
*/
getWifiMac() {
alert("易班暂不支持获取MAC地址,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} count
* @return {?}
*/
chooseContacts(count) {
alert("易班暂不支持获取联系人,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} targetUserId
* @return {?}
*/
contactDetails(targetUserId) {
alert("易班暂不支持查询联系人详细信息,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} count
* @param {?} sourceType
* @return {?}
*/
uploadImage(count, sourceType) {
alert("易班暂不支持图片上传,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} url
* @param {?} openType
* @param {?} title
* @param {?} id
* @param {?} type
* @return {?}
*/
openReadWithTimer(url, openType, title, id, type) {
alert("易班暂不支持读物时间统计,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} limitMinute
* @return {?}
*/
uploadMovie(limitMinute) {
alert("易班暂不支持视频上传,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} url
* @param {?} title
* @return {?}
*/
fileBrowser(url, title) {
alert("易班暂不支持此功能,请在APP中使用此功能!");
return undefined;
}
/**
* @param {?} ticket
* @param {?} callback
* @return {?}
*/
startSearchBeacons(ticket, callback) {
throw new Error("Method not implemented.");
}
/**
* @param {?} callback
* @return {?}
*/
stopSearchBeacons(callback) {
throw new Error("Method not implemented.");
}
/**
* @param {?} callback
* @return {?}
*/
onSearchBeacons(callback) {
throw new Error("Method not implemented.");
}
}
Yiban.decorators = [
{ type: Injectable, args: [{
providedIn: "root",
},] }
];
/** @nocollapse */
Yiban.ctorParameters = () => [
{ 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" });
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWliYW4uanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy15dW56YWktbW9iaWxlLyIsInNvdXJjZXMiOlsiZGV2aWNlcy95aWJhbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFXQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUl0RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7QUFLbEQsTUFBTSxPQUFPLEtBQU0sU0FBUSxVQUFVOzs7Ozs7OztJQUNuQyxZQUNVLFlBQTBCLEVBQzFCLElBQWdCLEVBQ2hCLElBQWlCLEVBQ2pCLEtBQVksRUFDUyxVQUFzQjtRQUVuRCxLQUFLLEVBQUUsQ0FBQztRQU5BLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1MsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUdyRCxDQUFDOzs7O0lBRUQsSUFBSTtRQUNGLE9BQU8sSUFBSSxPQUFPOzs7OztRQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFOzs7a0JBRXBDLE1BQU0sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENB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bnQiOlsiLypcclxuICogQEF1dGhvcjogY3VpaGFvbmFuXHJcbiAqIEBFbWFpbDogZGV2Y3VpQG91dGxvb2suY29tXHJcbiAqIEBEYXRlOiAyMDIxLTA0LTA3IDEzOjU5OjE4XHJcbiAqIEBMYXN0RWRpdFRpbWU6IDIwMjEtMDYtMDggMTU6MTA6MDFcclxuICogQExhc3RFZGl0b3JzOiBjdWloYW9uYW5cclxuICogQERlc2NyaXB0aW9uOiBCYXNpYyBkZXNjcmlwdGlvblxyXG4gKiBARmlsZVBhdGg6IC9hbmd1bGFyLW1vYmlsZS1ucG0tcGFja2FnZS9wcm9qZWN0cy9uZy15dW56YWktbW9iaWxlL2RldmljZXMveWliYW4udHNcclxuICogQExJQ0VOU0U6IE5PTkVcclxuICovXHJcblxyXG5pbXBvcnQgeyBCYXNlRGV2aWNlIH0gZnJvbSBcIi4vYmFzZS5kZXZpY2VcIjtcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgVG9rZW5TZXJ2aWNlIH0gZnJvbSBcIi4uL3Rva2VuL3Rva2VuLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gXCIuLi91c2VyL3VzZXIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBCYXNlQ2xpZW50LCBCQVNFX0NMSUVOVCB9IGZyb20gXCIuLi9jbGllbnQvYmFzZS5jbGllbnRcIjtcclxuaW1wb3J0IHsgcHJlbG9hZGVyRmluaXNoZWQgfSBmcm9tIFwiLi4vYXV0aC9wcmVsb2FkZXJcIjtcclxuaW1wb3J0IHsgSXRva2VuIH0gZnJvbSBcIi4uL2F1dGgvaXRva2VuXCI7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBJU2hhcmUsIElUaXRsZSwgSVdpbmRvdywgTmF2aWdhdGlvbkJhciwgVXNlckxvY2F0aW9uIH0gZnJvbSBcIi4vbW9kZWxcIjtcclxuaW1wb3J0IHsgVGl0bGUgfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWWliYW4gZXh0ZW5kcyBCYXNlRGV2aWNlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdG9rZW5TZXJ2aWNlOiBUb2tlblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIHVzZXI6IFVzZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0aXRsZTogVGl0bGUsXHJcbiAgICBASW5qZWN0KEJBU0VfQ0xJRU5UKSBwcml2YXRlIGJhc2VjbGllbnQ6IEJhc2VDbGllbnRcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBhdXRoKCk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIC8vIOafpeeci+acieaXoOWPguaVsFxyXG4gICAgICBjb25zdCBwYXJhbXMgPSB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdChcIj9cIilbMV07XHJcbiAgICAgIGlmIChwYXJhbXMpIHtcclxuICAgICAgICAvLyDmi7/liLDlj4LmlbDplK7nm7Tlr7lcclxuICAgICAgICBjb25zdCBrdnMgPSBwYXJhbXMuc3BsaXQoXCImXCIpO1xyXG4gICAgICAgIGNvbnN0IHRva2VuSW5mbzogYW55ID0ge307XHJcbiAgICAgICAgLy8g5p+l55yL5pyJ5pegdG9rZW7kv6Hmga9cclxuICAgICAgICBrdnMuZm9yRWFjaCgoaykgPT4ge1xyXG4gICAgICAgICAgaWYgKGsuaW5jbHVkZXMoXCJfdG9rZW5cIikpIHtcclxuICAgICAgICAgICAgdG9rZW5JbmZvW1wiYWNjZXNzVG9rZW5cIl0gPSBrLnNwbGl0KFwiPVwiKVsxXTtcclxuICAgICAgICAgICAgdG9rZW5JbmZvW1widG9rZW5UeXBlXCJdID0gXCJiZWFyZXJcIjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICAvLyDlpoLmnpzmnIl0b2tlbuS/oeaBr1xyXG4gICAgICAgIGlmICh0b2tlbkluZm8uYWNjZXNzVG9rZW4pIHtcclxuICAgICAgICAgIC8vIOiuvue9rnRva2Vu5L+h5oGvXHJcbiAgICAgICAgICB0aGlzLnRva2VuU2VydmljZS5zZXQodG9rZW5JbmZvKTtcclxuICAgICAgICAgIC8vIOivt+axgnVzZXJcclxuICAgICAgICAgIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAuZ2V0KGAke3RoaXMuYmFzZWNsaWVudC5nYXRld2F5fS9hdXRoL3VzZXJgKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXNwb25zZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgLy8g6K6+572udXNlclxyXG4gICAgICAgICAgICAgIHRoaXMudXNlci5zZXQoeyAuLi5yZXNwb25zZS5wcmluY2lwYWwsIHRlbmFudElkOiByZXNwb25zZS50ZW5hbnRJZCB9KTtcclxuICAgICAgICAgICAgICAvLyDliqDovb3nu5PmnZ9cclxuICAgICAgICAgICAgICBwcmVsb2FkZXJGaW5pc2hlZCgpO1xyXG4gICAgICAgICAgICAgIHJlc29sdmUodHJ1ZSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBhbGVydChcIuaXoOazleiOt+WPluWIsOaYk+ePreeUqOaIt+S/oeaBr+WPguaVsFwiKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgYWxlcnQoXCLml6Dms5Xojrflj5bliLDmmJPnj63lj4LmlbBcIik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3BlbldpbmRvdyhpd2luZG93OiBJV2luZG93KTogdm9pZCB7XHJcbiAgICB3aW5kb3cub3Blbihpd2luZG93LnVybCk7XHJcbiAgfVxyXG5cclxuICBzZXRUaXRsZShpdGl0bGU6IElUaXRsZSk6IHZvaWQge1xyXG4gICAgdGhpcy50aXRsZS5zZXRUaXRsZShpdGl0bGUudGl0bGUpO1xyXG4gIH1cclxuXHJcbiAgc2V0TmF2aWdhdGlvbkJhcihuYXZpZ2F0aW9uQmFyOiBOYXZpZ2F0aW9uQmFyKTogdm9pZCB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeaUvue9ruaMiemSrizor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gIH1cclxuXHJcbiAgc2hhcmUoaXNoYXJlOiBJU2hhcmUpOiB2b2lkIHtcclxuICAgIGFsZXJ0KFwi5piT54+t5pqC5LiN5pSv5oyB5YiG5LqrLOivt+WcqEFQUOS4reS9v+eUqOatpOWKn+iDvSFcIik7XHJcbiAgfVxyXG5cclxuICBnZXRUb2tlbigpOiBJdG9rZW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudG9rZW5TZXJ2aWNlLmdldCgpO1xyXG4gIH1cclxuXHJcbiAgc2NhbkNvZGUoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIGFsZXJ0KFwi5piT54+t5pqC5LiN5pSv5oyB5omr56CBLOivt+WcqEFQUOS4reS9v+eUqOatpOWKn+iDvSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgdXNlckxvY2F0aW9uKCk6IE9ic2VydmFibGU8VXNlckxvY2F0aW9uPiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeWumuS9jSzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlSW5XaWZpKGJzc2lkczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIGFsZXJ0KFwi5piT54+t5pqC5LiN5pSv5oyBV0lGSemqjOivgSzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIGdldFdpZmlNYWMoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIGFsZXJ0KFwi5piT54+t5pqC5LiN5pSv5oyB6I635Y+WTUFD5Zyw5Z2ALOivt+WcqEFQUOS4reS9v+eUqOatpOWKn+iDvSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgY2hvb3NlQ29udGFjdHMoY291bnQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeiOt+WPluiBlOezu+S6uizor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIGNvbnRhY3REZXRhaWxzKHRhcmdldFVzZXJJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGFsZXJ0KFwi5piT54+t5pqC5LiN5pSv5oyB5p+l6K+i6IGU57O75Lq66K+m57uG5L+h5oGvLOivt+WcqEFQUOS4reS9v+eUqOatpOWKn+iDvSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgdXBsb2FkSW1hZ2UoY291bnQ6IG51bWJlciwgc291cmNlVHlwZTogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGFsZXJ0KFwi5piT54+t5pqC5LiN5pSv5oyB5Zu+54mH5LiK5LygLOivt+WcqEFQUOS4reS9v+eUqOatpOWKn+iDvSFcIik7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgb3BlblJlYWRXaXRoVGltZXIoXHJcbiAgICB1cmw6IGFueSxcclxuICAgIG9wZW5UeXBlOiBhbnksXHJcbiAgICB0aXRsZTogYW55LFxyXG4gICAgaWQ6IGFueSxcclxuICAgIHR5cGU6IGFueVxyXG4gICk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeivu+eJqeaXtumXtOe7n+iuoSzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHVwbG9hZE1vdmllKGxpbWl0TWludXRlOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgYWxlcnQoXCLmmJPnj63mmoLkuI3mlK/mjIHop4bpopHkuIrkvKAs6K+35ZyoQVBQ5Lit5L2/55So5q2k5Yqf6IO9IVwiKTtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBmaWxlQnJvd3Nlcih1cmw6IHN0cmluZywgdGl0bGU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBhbGVydChcIuaYk+ePreaaguS4jeaUr+aMgeatpOWKn+iDvSzor7flnKhBUFDkuK3kvb/nlKjmraTlip/og70hXCIpO1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHN0YXJ0U2VhcmNoQmVhY29ucyh0aWNrZXQ6IHN0cmluZywgY2FsbGJhY2s6IChhcmd2OiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihcIk1ldGhvZCBub3QgaW1wbGVtZW50ZWQuXCIpO1xyXG4gIH1cclxuICBzdG9wU2VhcmNoQmVhY29ucyhjYWxsYmFjazogKGFyZ3Y6IGFueSkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgfVxyXG4gIG9uU2VhcmNoQmVhY29ucyhjYWxsYmFjazogKGFyZ3Y6IGFueSkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC5cIik7XHJcbiAgfVxyXG59XHJcbiJdfQ==