Sanakey
2021-07-09 3fc241d02fb8b671289de3d9d80bf848349c04d4
提交 | 用户 | age
234b22 1 "use strict";
701f60 2 var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
S 3     return new (P || (P = Promise))(function (resolve, reject) {
4         function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5         function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6         function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7         step((generator = generator.apply(thisArg, _arguments || [])).next());
8     });
9 };
10 var __generator = (this && this.__generator) || function (thisArg, body) {
11     var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12     return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13     function verb(n) { return function (v) { return step([n, v]); }; }
14     function step(op) {
15         if (f) throw new TypeError("Generator is already executing.");
16         while (_) try {
17             if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18             if (y = 0, t) op = [op[0] & 2, t.value];
19             switch (op[0]) {
20                 case 0: case 1: t = op; break;
21                 case 4: _.label++; return { value: op[1], done: false };
22                 case 5: _.label++; y = op[1]; op = [0]; continue;
23                 case 7: op = _.ops.pop(); _.trys.pop(); continue;
24                 default:
25                     if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26                     if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27                     if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28                     if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29                     if (t[2]) _.ops.pop();
30                     _.trys.pop(); continue;
31             }
32             op = body.call(thisArg, _);
33         } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34         if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35     }
36 };
234b22 37 Object.defineProperty(exports, "__esModule", { value: true });
S 38 var myValidator_1 = require("../../utils/myValidator");
39 var validatorInstance;
40 Page({
aa6d80 41     data: {
S 42         region: [],
701f60 43         checked: false,
S 44         telephone: '',
7a3e75 45         actualName: '',
S 46         goto: ''
aa6d80 47     },
7a3e75 48     onLoad: function (options) {
S 49         var goto = options.goto ? "../" + options.goto + "/" + options.goto : '';
50         console.log('签约完后前往 ', goto);
51         this.setData({
52             goto: goto
53         });
234b22 54     },
S 55     onReady: function () {
56         this.initValidator();
aa6d80 57     },
S 58     bindRegionChange: function (e) {
59         console.log('picker发送选择改变,携带值为', e.detail.value);
60         this.setData({
61             region: e.detail.value
62         });
63     },
64     onAgreeChange: function (event) {
65         console.log(event);
66         this.setData({
67             checked: event.detail,
68         });
234b22 69     },
S 70     checkActualName: function (e) {
71         var value = e.detail.value;
72         console.log(e);
73         validatorInstance.checkField('actualName', value);
74     },
a38dad 75     getPhoneNumber: function (e) {
701f60 76         return __awaiter(this, void 0, void 0, function () {
S 77             var _a, error, result;
78             return __generator(this, function (_b) {
79                 switch (_b.label) {
80                     case 0:
81                         console.log('getPhoneNumber', e);
82                         if (!(e.detail.errMsg == 'getPhoneNumber:ok')) return [3, 2];
83                         return [4, wx.$utils.to(wx.$http.request({
84                                 url: "/shopping/account.do?m=telRegByAutoReg",
85                                 data: {
86                                     ReferralsCode: '',
87                                     ReferralsName: '',
88                                     encryptedData: e.detail.encryptedData,
89                                     iv: e.detail.iv,
90                                 }
91                             }))];
92                     case 1:
93                         _a = _b.sent(), error = _a[0], result = _a[1];
94                         if (error) {
95                             console.log(error);
96                             return [2];
97                         }
98                         console.log(result);
99                         this.setData({
100                             telephone: result.Telephone,
101                             phoneError: ''
102                         });
103                         return [3, 3];
104                     case 2:
105                         console.log('取消授权');
106                         wx.showToast({
107                             title: '取消授权',
108                             icon: 'none',
109                             duration: 1000
110                         });
111                         _b.label = 3;
112                     case 3: return [2];
113                 }
a38dad 114             });
701f60 115         });
aa6d80 116     },
3fc241 117     onSubmit: wx.$utils.debounce(function () {
S 118         this.submitHandler();
119         return;
120     }),
121     submitHandler: function () {
701f60 122         var _a = this.data, checked = _a.checked, region = _a.region, telephone = _a.telephone;
aa6d80 123         var checkRegion = region.length < 1;
S 124         console.log(checked, region);
125         if (checkRegion) {
701f60 126             wx.showToast({
S 127                 title: '请选择地区',
128                 icon: 'none',
129             });
aa6d80 130             return;
S 131         }
132         var checkAllData = validatorInstance.checkAllData();
133         if (!checkAllData) {
701f60 134             return;
S 135         }
136         if (!telephone) {
137             this.setData({
138                 phoneError: '请输入手机号'
139             });
140             return;
141         }
142         if (!checked) {
143             console.log('请同意商家条款');
144             wx.showToast({
145                 title: '请同意商家条款',
146                 icon: 'none',
147             });
aa6d80 148             return;
S 149         }
150         console.log('....提交成功');
701f60 151         this.postFormData();
S 152     },
153     postFormData: function () {
154         return __awaiter(this, void 0, void 0, function () {
7a3e75 155             var _a, region, actualName, telephone, provinceName, cityName, countyName, data, _b, error, result, goto;
701f60 156             return __generator(this, function (_c) {
S 157                 switch (_c.label) {
158                     case 0:
159                         _a = this.data, region = _a.region, actualName = _a.actualName, telephone = _a.telephone;
160                         provinceName = region[0], cityName = region[1], countyName = region[2];
161                         data = {
162                             countryName: '中国',
163                             provinceName: provinceName,
164                             cityName: cityName,
165                             countyName: countyName,
166                             actualName: actualName,
167                             telephone: telephone
168                         };
169                         console.log(data);
170                         return [4, wx.$utils.to(wx.$http.request({
171                                 url: "/shopping/customerSignup.do?m=saveCustomerSignup",
172                                 data: data,
173                                 method: 'POST'
174                             }))];
175                     case 1:
176                         _b = _c.sent(), error = _b[0], result = _b[1];
177                         if (error) {
178                             console.log(error);
179                             return [2];
180                         }
181                         console.log(result);
282d69 182                         if (!(result.status == 'success')) return [3, 3];
S 183                         return [4, wx.$commonRequest.getUserInfo()];
184                     case 2:
185                         _c.sent();
7a3e75 186                         goto = this.data.goto;
S 187                         if (goto) {
188                             wx.redirectTo({
189                                 url: goto
190                             });
191                         }
192                         else {
193                             wx.navigateBack();
194                         }
282d69 195                         _c.label = 3;
S 196                     case 3: return [2];
701f60 197                 }
S 198             });
199         });
234b22 200     },
S 201     initValidator: function () {
202         validatorInstance = new myValidator_1.default({
203             rules: {
204                 actualName: {
205                     required: true,
701f60 206                     minlength: 2
a38dad 207                 }
234b22 208             },
S 209             messages: {
210                 actualName: {
211                     required: '请输入用户名',
a38dad 212                 }
234b22 213             },
S 214             multiCheck: true
215         }, this);
216     },
217 });
3fc241 218 //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyY2hhbnRTaWduaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibWVyY2hhbnRTaWduaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1REFBa0Q7QUFDbEQsSUFBSSxpQkFBNkIsQ0FBQztBQUNsQyxJQUFJLENBQUM7SUFDSCxJQUFJLEVBQUU7UUFDSixNQUFNLEVBQUUsRUFBRTtRQUNWLE9BQU8sRUFBQyxLQUFLO1FBQ2IsU0FBUyxFQUFDLEVBQUU7UUFDWixVQUFVLEVBQUMsRUFBRTtRQUNiLElBQUksRUFBQyxFQUFFO0tBRVI7SUFDRCxNQUFNLFlBQUMsT0FBTztRQUlaLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUEsQ0FBQyxDQUFBLFFBQU0sT0FBTyxDQUFDLElBQUksU0FBSSxPQUFPLENBQUMsSUFBTSxDQUFBLENBQUMsQ0FBQSxFQUFFLENBQUM7UUFDaEUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUNYLElBQUksTUFBQTtTQUNMLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFDRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQ3RCLENBQUM7SUFDRCxnQkFBZ0IsWUFBQyxDQUFLO1FBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNoRCxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ1gsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSztTQUN2QixDQUFDLENBQUE7SUFDSixDQUFDO0lBQ0QsYUFBYSxZQUFDLEtBQVM7UUFDckIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDO1lB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Q0FBQzt3QkFDMUIsSUFBSSxJQUFJLEVBQUM7NEJBQ1AsRUFBRSxDQUFDLFVBQVUsQ0FBQztnQ0FDWixHQUFHLEVBQUMsSUFBSTs2QkFDVCxDQUFDLENBQUE7eUJBQ0g7NkJBQU07NEJBQ0wsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO3lCQUNuQjs7Ozs7O0tBR0o7SUFDRCxhQUFhO1FBRVgsaUJBQWlCLEdBQUcsSUFBSSxxQkFBVyxDQUFDO1lBQ2xDLEtBQUssRUFBRTtnQkFDTCxVQUFVLEVBQUU7b0JBQ1YsUUFBUSxFQUFFLElBQUk7b0JBQ2QsU0FBUyxFQUFFLENBQUM7aUJBQ2I7YUFDRjtZQUNELFFBQVEsRUFBRTtnQkFDUixVQUFVLEVBQUU7b0JBQ1YsUUFBUSxFQUFFLFFBQVE7aUJBQ25CO2FBQ0Y7WUFDRCxVQUFVLEVBQUMsSUFBSTtTQUNoQixFQUFDLElBQUksQ0FBQyxDQUFBO0lBQ1QsQ0FBQztDQUNGLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNeVZhbGlkYXRvciBmcm9tIFwiLi4vLi4vdXRpbHMvbXlWYWxpZGF0b3JcIjtcclxubGV0IHZhbGlkYXRvckluc3RhbmNlOk15VmFsaWRhdG9yO1xyXG5QYWdlKHtcclxuICBkYXRhOiB7XHJcbiAgICByZWdpb246IFtdLFxyXG4gICAgY2hlY2tlZDpmYWxzZSxcclxuICAgIHRlbGVwaG9uZTonJyxcclxuICAgIGFjdHVhbE5hbWU6JycsXHJcbiAgICBnb3RvOicnIC8v562+57qm5a6M5ZCO5YmN5b6AXHJcbiAgICAvLyBjdXN0b21JdGVtOiAn5YWo6YOoJyxcclxuICB9LFxyXG4gIG9uTG9hZChvcHRpb25zKSB7XHJcbiAgICAvLyBjb25zb2xlLmxvZyhhcHAsb3B0aW9ucyk7XHJcbiAgICAvLyBjb25zb2xlLmxvZyh3eC4kdXRpbHMpO1xyXG4gICAgLy8gY29uc29sZS5sb2cod3guJHV0aWxzLmZvcm1hdFRpbWUobmV3IERhdGUoKSkpO1xyXG4gICAgbGV0IGdvdG8gPSBvcHRpb25zLmdvdG8/YC4uLyR7b3B0aW9ucy5nb3RvfS8ke29wdGlvbnMuZ290b31gOicnO1xyXG4gICAgY29uc29sZS5sb2coJ+etvue6puWujOWQjuWJjeW+gCAnLGdvdG8pO1xyXG4gICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgZ290b1xyXG4gICAgfSlcclxuICB9LFxyXG4gIG9uUmVhZHkoKSB7XHJcbiAgICB0aGlzLmluaXRWYWxpZGF0b3IoKVxyXG4gIH0sXHJcbiAgYmluZFJlZ2lvbkNoYW5nZShlOmFueSkge1xyXG4gICAgY29uc29sZS5sb2coJ3BpY2tlcuWPkemAgemAieaLqeaUueWPmO+8jOaQuuW4puWAvOS4uicsIGUuZGV0YWlsLnZhbHVlKVxyXG4gICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgcmVnaW9uOiBlLmRldGFpbC52YWx1ZVxyXG4gICAgfSlcclxuICB9LFxyXG4gIG9uQWdyZWVDaGFuZ2UoZXZlbnQ6YW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhldmVudCk7XHJcbiAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICBjaGVja2VkOiBldmVudC5kZXRhaWwsXHJcbiAgICB9KTtcclxuICB9LFxyXG4gIGNoZWNrQWN0dWFsTmFtZShlOmFueSl7XHJcbiAgICBsZXQgeyB2YWx1ZSB9ID0gZS5kZXRhaWxcclxuICAgIGNvbnNvbGUubG9nKGUpO1xyXG4gICAgdmFsaWRhdG9ySW5zdGFuY2UuY2hlY2tGaWVsZCgnYWN0dWFsTmFtZScsdmFsdWUpO1xyXG4gIH0sXHJcbiAgYXN5bmMgZ2V0UGhvbmVOdW1iZXIoZTphbnkpe1xyXG4gICAgY29uc29sZS5sb2coJ2dldFBob25lTnVtYmVyJywgZSk7XHJcbiAgICBpZiAoZS5kZXRhaWwuZXJyTXNnID09ICdnZXRQaG9uZU51bWJlcjpvaycpIHtcclxuICAgICAgbGV0IFtlcnJvciwgcmVzdWx0XSA9IGF3YWl0IHd4LiR1dGlscy50byhcclxuICAgICAgICB3eC4kaHR0cC5yZXF1ZXN0KHtcclxuICAgICAgICAgIHVybDpgL3Nob3BwaW5nL2FjY291bnQuZG8/bT10ZWxSZWdCeUF1dG9SZWdgLFxyXG4gICAgICAgICAgZGF0YTp7XHJcbiAgICAgICAgICAgIFJlZmVycmFsc0NvZGU6ICcnLFxyXG4gICAgICAgICAgICBSZWZlcnJhbHNOYW1lOiAnJyxcclxuICAgICAgICAgICAgZW5jcnlwdGVkRGF0YTogZS5kZXRhaWwuZW5jcnlwdGVkRGF0YSxcclxuICAgICAgICAgICAgaXY6IGUuZGV0YWlsLml2LFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICAgaWYgKGVycm9yKXtcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgdGVsZXBob25lOnJlc3VsdC5UZWxlcGhvbmUsXHJcbiAgICAgICAgcGhvbmVFcnJvcjonJ1xyXG4gICAgICB9KVxyXG4gICAgfSBlbHNle1xyXG4gICAgICBjb25zb2xlLmxvZygn5Y+W5raI5o6I5p2DJyk7XHJcbiAgICAgIHd4LnNob3dUb2FzdCh7XHJcbiAgICAgICAgdGl0bGU6ICflj5bmtojmjojmnYMnLFxyXG4gICAgICAgIGljb246ICdub25lJyxcclxuICAgICAgICBkdXJhdGlvbjogMTAwMFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9LFxyXG4gIC8vIGNoZWNrUGhvbmUoZTphbnkpe1xyXG4gIC8vICAgbGV0IHsgdmFsdWUgfSA9IGUuZGV0YWlsXHJcbiAgLy8gICBjb25zb2xlLmxvZyh2YWx1ZSk7XHJcbiAgLy8gICB2YWxpZGF0b3JJbnN0YW5jZS5jaGVja0ZpZWxkKCdwaG9uZScsdmFsdWUpO1xyXG4gIC8vIH0sXHJcbiAgb25TdWJtaXQ6d3guJHV0aWxzLmRlYm91bmNlKGZ1bmN0aW9uKHRoaXM6YW55KXtcclxuICAgIHRoaXMuc3VibWl0SGFuZGxlcigpO1xyXG4gICAgcmV0dXJuO1xyXG4gIH0pLFxyXG4gIHN1Ym1pdEhhbmRsZXIoKSB7XHJcbiAgICBsZXQge2NoZWNrZWQscmVnaW9uLHRlbGVwaG9uZX0gPSB0aGlzLmRhdGE7XHJcbiAgICBsZXQgY2hlY2tSZWdpb24gPSByZWdpb24ubGVuZ3RoIDwgMTtcclxuICAgIGNvbnNvbGUubG9nKGNoZWNrZWQscmVnaW9uKTtcclxuICAgIGlmIChjaGVja1JlZ2lvbikge1xyXG4gICAgICB3eC5zaG93VG9hc3Qoe1xyXG4gICAgICAgIHRpdGxlOiAn6K+36YCJ5oup5Zyw5Yy6JyxcclxuICAgICAgICBpY29uOiAnbm9uZScsXHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgY2hlY2tBbGxEYXRhID0gdmFsaWRhdG9ySW5zdGFuY2UuY2hlY2tBbGxEYXRhKCk7XHJcbiAgICAvLyBsZXQgY2hlY2tBcnIgPSBbY2hlY2tSZWdpb24sY2hlY2tDaGVja2VkLGNoZWNrQWxsRGF0YV07XHJcbiAgICBpZiAoIWNoZWNrQWxsRGF0YSl7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmICghdGVsZXBob25lKSB7XHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgcGhvbmVFcnJvcjon6K+36L6T5YWl5omL5py65Y+3J1xyXG4gICAgICB9KVxyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAoIWNoZWNrZWQpe1xyXG4gICAgICBjb25zb2xlLmxvZygn6K+35ZCM5oSP5ZWG5a625p2h5qy+Jyk7XHJcbiAgICAgIHd4LnNob3dUb2FzdCh7XHJcbiAgICAgICAgdGl0bGU6ICfor7flkIzmhI/llYblrrbmnaHmrL4nLFxyXG4gICAgICAgIGljb246ICdub25lJyxcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnNvbGUubG9nKCcuLi4u5o+Q5Lqk5oiQ5YqfJyk7XHJcbiAgICB0aGlzLnBvc3RGb3JtRGF0YSgpO1xyXG4gIH0sXHJcbiAgYXN5bmMgcG9zdEZvcm1EYXRhKCl7XHJcbiAgICBsZXQge3JlZ2lvbixhY3R1YWxOYW1lLHRlbGVwaG9uZX0gPSB0aGlzLmRhdGE7XHJcbiAgICBsZXQgW3Byb3ZpbmNlTmFtZSxjaXR5TmFtZSxjb3VudHlOYW1lXSA9IHJlZ2lvbjtcclxuICAgIGxldCBkYXRhID0ge1xyXG4gICAgICBjb3VudHJ5TmFtZTon5Lit5Zu9JyxcclxuICAgICAgcHJvdmluY2VOYW1lLFxyXG4gICAgICBjaXR5TmFtZSxcclxuICAgICAgY291bnR5TmFtZSxcclxuICAgICAgYWN0dWFsTmFtZSxcclxuICAgICAgdGVsZXBob25lXHJcbiAgICB9XHJcbiAgICBjb25zb2xlLmxvZyhkYXRhKTtcclxuICAgIGxldCBbZXJyb3IsIHJlc3VsdF0gPSBhd2FpdCB3eC4kdXRpbHMudG8oXHJcbiAgICAgIHd4LiRodHRwLnJlcXVlc3Qoe1xyXG4gICAgICAgIHVybDpgL3Nob3BwaW5nL2N1c3RvbWVyU2lnbnVwLmRvP209c2F2ZUN1c3RvbWVyU2lnbnVwYCxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIG1ldGhvZDonUE9TVCdcclxuICAgICAgfSlcclxuICAgIClcclxuICAgIGlmIChlcnJvcil7XHJcbiAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc29sZS5sb2cocmVzdWx0KTtcclxuICAgIGlmIChyZXN1bHQuc3RhdHVzPT0nc3VjY2Vzcycpe1xyXG4gICAgICBhd2FpdCB3eC4kY29tbW9uUmVxdWVzdC5nZXRVc2VySW5mbygpO1xyXG4gICAgICBsZXQgZ290byA9IHRoaXMuZGF0YS5nb3RvO1xyXG4gICAgICBpZiAoZ290byl7XHJcbiAgICAgICAgd3gucmVkaXJlY3RUbyh7XHJcbiAgICAgICAgICB1cmw6Z290b1xyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgd3gubmF2aWdhdGVCYWNrKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfSxcclxuICBpbml0VmFsaWRhdG9yKCl7XHJcbiAgICAvLyDlrp7kvovljJZcclxuICAgIHZhbGlkYXRvckluc3RhbmNlID0gbmV3IE15VmFsaWRhdG9yKHtcclxuICAgICAgcnVsZXM6IHtcclxuICAgICAgICBhY3R1YWxOYW1lOiB7XHJcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcclxuICAgICAgICAgIG1pbmxlbmd0aDogMlxyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgbWVzc2FnZXM6IHtcclxuICAgICAgICBhY3R1YWxOYW1lOiB7XHJcbiAgICAgICAgICByZXF1aXJlZDogJ+ivt+i+k+WFpeeUqOaIt+WQjScsXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICBtdWx0aUNoZWNrOnRydWVcclxuICAgIH0sdGhpcylcclxuICB9LFxyXG59KVxyXG5leHBvcnQge31cclxuIl19