Commit f021c9775f551ada0ef5cf319bdeb3e0616587fd

Authored by yangzhi
1 parent 199ca8b9

超哥睡了

uniapp-wuduhuajiao/App.vue
... ... @@ -108,7 +108,7 @@
108 108 socketTask.onMessage((msg) => {
109 109 console.log('socketTask.onMessage', msg);
110 110 handleOnMessage(msg);
111   - uni.$emit('socketMessage', msg)
  111 + uni.$emit('socketMessage', JSON.parse(msg.data))
112 112 });
113 113 uni.$on('sendSocketMessage', (data) => {
114 114 uni.send({
... ...
uniapp-wuduhuajiao/pages/meeting/meeting.nvue
... ... @@ -27,13 +27,16 @@
27 27 </view>
28 28 </view>
29 29 <view style="flex-direction: row;justify-content: space-around;">
30   - <text class="btn" v-if="meetingUsers[0] && meetingUsers[0].starting" @click="handleEndtMeeting"
31   - style="margin-right: 20px;">
32   - 挂断
33   - </text>
34   - <text class="btn" v-else @click="handleStartMeeting" v-if="myUserInfo&&myUserInfo.type==4">
35   - 开始视频
36   - </text>
  30 + <block v-if="myUserInfo&&myUserInfo.type==3">
  31 + <text class="btn" v-if="meetingUsers[0] && meetingUsers[0].starting" @click="handleEndtMeeting"
  32 + style="margin-right: 20px;">
  33 + 挂断
  34 + </text>
  35 + <text class="btn" v-else @click="handleStartMeeting" style="margin-right: 20rpx;">
  36 + 开始视频
  37 + </text>
  38 + </block>
  39 +
37 40 <text class="btn" @click="handleInviteCustomerUser" v-if="!hasInvite" style="margin-right: 20rpx;">
38 41 邀请客服
39 42 </text>
... ... @@ -77,7 +80,7 @@
77 80 const TrtcEvent = uni.requireNativePlugin('globalEvent');
78 81 import API from '@/apis/index.js'
79 82 import config from '@/common/config/config.js'
80   - let socketTask = {};
  83 + let socketTask = getApp().globalData.socketTask;
81 84 export default {
82 85 components: {
83 86 TrtcLocalView: TrtcLocalView,
... ... @@ -148,17 +151,28 @@
148 151 id:e.roomId
149 152 };
150 153 }
  154 +
  155 + uni.$on('socketMessage',(data)=>{
  156 + console.log('socketMessage',data);
  157 + if(data.messageType == 'send_to_room'){
  158 + this.messageList.push({
  159 + author:data.realName,
  160 + content:data.toMessage
  161 + })
  162 + }
  163 + })
  164 +
151 165 },
152 166 onShow() {
153 167 //关闭全局的socket
154   - uni.$emit('closeSocket')
155   - socketTask = uni.connectSocket({
156   - url: config.socketurl,
157   - complete(){},
158   - });
159   - socketTask.onMessage((msg)=>{
160   - console.log('onMessage',msg);
161   - });
  168 + // uni.$emit('closeSocket')
  169 + // socketTask = uni.connectSocket({
  170 + // url: config.socketurl,
  171 + // complete(){},
  172 + // });
  173 + // socketTask.onMessage((msg)=>{
  174 + // console.log('onMessage',msg);
  175 + // });
162 176 console.log('this.user',this.user);
163 177 API.message.getUserTypeInfo(this.user.id).then(res=>{
164 178 console.log('getUserTypeInfo',res)
... ... @@ -166,8 +180,8 @@
166 180 })
167 181 },
168 182 onHide() {
169   - socketTask.closeSocket();
170   - uni.$emit('openSocket')
  183 + // socketTask.closeSocket();
  184 + // uni.$emit('openSocket')
171 185 },
172 186 mounted() {
173 187 if (uni.getSystemInfoSync().platform === 'android') {
... ... @@ -201,9 +215,10 @@
201 215 },
202 216 handleInviteCustomerUser(){
203 217 uni.showLoading();
204   - this.API.message.inviteUserJoinRoom({
205   - roomid:this.room.id
206   - }).then(res=>{
  218 + API.message.getInviteCustomerJoin(this.room.ShopId,this.room.RoomNo).then(res=>{
  219 + uni.showToast({
  220 + title:'邀请成功'
  221 + })
207 222 this.hasInvite = true;
208 223 }).finally(()=>{
209 224 uni.hideLoading();
... ... @@ -215,6 +230,7 @@
215 230 });
216 231 API.message.postAddRoom(data).then(res => {
217 232 this.room = res.data;
  233 + this.roomId = res.data.RoomNo;
218 234 API.message.getInviteUserJoin(this.sellerUserId,res.data.RoomNo);
219 235 }).finally(() => {
220 236 uni.hideLoading();
... ... @@ -285,22 +301,16 @@
285 301 if (this.trtcCloud) {
286 302 TrtcCloud.destroyInstance();
287 303 this.trtcCloud = null;
288   - uni.showToast({
289   - title: '销毁实例',
290   - icon: 'none'
291   - });
292 304 }
293 305 },
294 306 createTrtcCloud() {
295   - uni.showToast({
296   - title: '创建实例 ',
297   - icon: 'none',
298   - });
  307 + console.log('createTrtcCloud',this.sdkAppId);
299 308 this.trtcCloud = TrtcCloud.createInstance();
300 309 this.handleEvents();
301 310 this.sdkAppId && uni.$createTrtcCloudUpload(this.sdkAppId);
302 311 },
303 312 enterRoom() {
  313 + console.log('enterRoom',param);
304 314 try {
305 315 const {
306 316 sdkAppId,
... ... @@ -308,11 +318,12 @@
308 318 userSig
309 319 } = this;
310 320 let param = {
311   - roomId: this.room.id,
  321 + roomId: this.room.RoomNo,
312 322 userId:this.userId,
313 323 sdkAppId,
314 324 userSig
315 325 };
  326 + console.log('enterRoom',param);
316 327 this.trtcCloud.enterRoom(param, appScene);
317 328 this.sdkAppId && uni.$enterRoomSuccessUpload(this.sdkAppId);
318 329 } catch (error) {
... ...
uniapp-wuduhuajiao/unpackage/dist/dev/app-plus/app-service.js
... ... @@ -84986,7 +84986,7 @@ eval(&quot;__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _D_P
84986 84986 /***/ (function(module, exports, __webpack_require__) {
84987 84987  
84988 84988 "use strict";
84989   -eval("/* WEBPACK VAR INJECTION */(function(__f__) {Object.defineProperty(exports, \"__esModule\", { value: true });exports.default = void 0;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 261));\nvar _aegisWeexSdk = _interopRequireDefault(__webpack_require__(/*! aegis-weex-sdk */ 909));\nvar _config = _interopRequireDefault(__webpack_require__(/*! @/common/config/config.js */ 252));\nvar _service = _interopRequireDefault(__webpack_require__(/*! @/service/service.js */ 260));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} //\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = { onLaunch: function onLaunch() {var _this = this; // 检测客户端更新\n this.$store.dispatch('update/update'); // 仅首次打开一次性加载数据\n this.$store.dispatch('common/init'); // 同步购物车 本地 & 网络\n this.$store.dispatch('cart/get'); // 同步 动态数据\n this.$store.dispatch('statistics/get');var projectName = 'uniappApiExampleExt';uni.$aegis = new _aegisWeexSdk.default({ id: 'iHWefAYqWuCkDjhucc', spa: true, reportApiSpeed: true, reportAssetSpeed: true, pagePerformance: true, hostUrl: 'https://tamaegis.com' });\n\n uni.$uploadToTAM = function (eventString, sdkAppId) {\n uni.$aegis.reportEvent({\n name: eventString.split('#')[0] || '',\n ext1: eventString,\n ext2: projectName,\n ext3: sdkAppId });\n\n };\n uni.$createTrtcCloudUpload = function (sdkAppId) {return uni.$uploadToTAM('createTrtcCloud', sdkAppId);};\n uni.$enterRoomSuccessUpload = function (sdkAppId) {return uni.$uploadToTAM('enterRoom-success', sdkAppId);};\n uni.$enterRoomFailedUpload = function (sdkAppId, errorMsg) {return uni.$uploadToTAM(\"enterRoom-failed#error: \".concat(errorMsg),\n sdkAppId);};\n uni.$onErrorUpload = function (sdkAppId, errorMsg) {return uni.$uploadToTAM(\"onError-failed#error: \".concat(errorMsg), sdkAppId);};\n uni.$startLocalPreviewUpload = function (sdkAppId) {return uni.$uploadToTAM('startLocalPreview', sdkAppId);};\n uni.$startRemoteViewSuccessUpload = function (sdkAppId) {return uni.$uploadToTAM('startRemoteView-success', sdkAppId);};\n uni.$startRemoteViewFailedUpload = function (sdkAppId, errorMsg) {return uni.$uploadToTAM(\"startRemoteView-failed#error: \".concat(\n errorMsg), sdkAppId);};\n\n var handleOnMessage = function handleOnMessage(msg) {\n __f__(\"log\", 'handleOnMessage', msg, \" at App.vue:60\");\n var user = _this.$store.state.user;\n msg = JSON.parse(msg.data);\n if (msg.messageType == 'joinRoom') {\n uni.showModal({\n content: \"\\u7528\\u6237\\u3010\".concat(msg.realName, \"\\u3011\\u9080\\u8BF7\\u4F60\\u89C6\\u9891\\u8FDE\\u7EBF\\uFF0C\\u662F\\u5426\\u52A0\\u5165\\u623F\\u95F4\\uFF1F\"),\n confirmText: '加入房间',\n cancelText: '放弃',\n confirmColor: '#D669BE',\n success: function success(_ref)\n\n {var confirm = _ref.confirm;\n if (confirm) {\n uni.navigateTo({\n url: \"/pages/meeting/meeting?roomId=\".concat(msg.roomNo) });\n\n }\n } });\n\n }\n };\n var socketTask = uni.connectSocket({\n url: _config.default.socketurl,\n complete: function complete() {} });\n\n uni.onSocketOpen(function (res) {\n __f__(\"log\", 'WebSocket连接已打开!', \" at App.vue:86\");\n });\n uni.onSocketError(function (res) {\n __f__(\"log\", 'WebSocket连接打开失败,请检查!', \" at App.vue:89\");\n });\n this.globalData.socketTask = socketTask;\n socketTask.onOpen(function (data) {\n __f__(\"log\", 'socketTask.onOpen', data, \" at App.vue:93\");\n socketTask.send({\n data: JSON.stringify({\n method: 'OnConnection',\n token: _service.default.getToken(),\n mobileDevice: true }) });\n\n\n });\n socketTask.onError(function (error) {\n __f__(\"log\", 'socketTask.onError', error, \" at App.vue:103\");\n });\n uni.onSocketMessage(function (res) {\n __f__(\"log\", 'socketTask.onMessage', res, \" at App.vue:106\");\n });\n socketTask.onMessage(function (msg) {\n __f__(\"log\", 'socketTask.onMessage', msg, \" at App.vue:109\");\n handleOnMessage(msg);\n uni.$emit('socketMessage', msg);\n });\n uni.$on('sendSocketMessage', function (data) {\n uni.send({\n data: data,\n success: function success(res) {\n __f__(\"log\", 'sendSocketMessage success', res, \" at App.vue:117\");\n },\n fail: function fail(e) {\n __f__(\"log\", 'sendSocketMessage fail', e, \" at App.vue:120\");\n },\n complete: function complete() {} });\n\n });\n uni.$on('closeSocket', function () {\n _this.globalData.socketTask.close();\n });\n uni.$on('openSocket', function () {\n _this.globalData.socketTask = uni.connectSocket({\n url: _config.default.socketurl,\n complete: function complete() {} });\n\n _this.globalData.socketTask.onMessage(function (msg) {\n handleOnMessage(msg);\n uni.$emit('socketMessage', msg);\n });\n });\n },\n onShow: function onShow() {\n // 启动或重启即时通讯\n // this.$store.dispatch('chat/start');\n },\n onHide: function onHide() {\n // 断开即时通讯\n // this.$store.dispatch('chat/close');\n },\n globalData: {\n typeNum: 1,\n socketTask: {} } };exports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 1)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vQXBwLnZ1ZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBZ0JBO0FBQ0E7QUFDQTtBQUNBLDRGOzs7Ozs7Ozs7Ozs7Ozs7ZUFDQSxFQUNBLFFBREEsc0JBQ0EsbUJBQ0E7QUFDQSwwQ0FGQSxDQUdBO0FBQ0Esd0NBSkEsQ0FLQTtBQUNBLHFDQU5BLENBT0E7QUFDQSwyQ0FFQSx3Q0FDQSx5Q0FDQSx3QkFEQSxFQUVBLFNBRkEsRUFHQSxvQkFIQSxFQUlBLHNCQUpBLEVBS0EscUJBTEEsRUFNQSwrQkFOQTs7QUFRQTtBQUNBO0FBQ0EsNkNBREE7QUFFQSx5QkFGQTtBQUdBLHlCQUhBO0FBSUEsc0JBSkE7O0FBTUEsS0FQQTtBQVFBO0FBQ0E7QUFDQTtBQUNBLGNBREE7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBREEsR0FDQSxRQURBOztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdLQURBO0FBRUEsNkJBRkE7QUFHQSwwQkFIQTtBQUlBLGlDQUpBO0FBS0EsaUJBTEE7O0FBT0EsZUFEQSxPQUNBLFFBREEsT0FDQTtBQUNBO0FBQ0E7QUFDQSx3RUFEQTs7QUFHQTtBQUNBLFdBYkE7O0FBZUE7QUFDQSxLQXJCQTtBQXNCQTtBQUNBLG9DQURBO0FBRUEsY0FGQSxzQkFFQSxFQUZBOztBQUlBO0FBQ0E7QUFDQSxLQUZBO0FBR0E7QUFDQTtBQUNBLEtBRkE7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBREE7QUFFQSw0Q0FGQTtBQUdBLDRCQUhBLEdBREE7OztBQU9BLEtBVEE7QUFVQTtBQUNBO0FBQ0EsS0FGQTtBQUdBO0FBQ0E7QUFDQSxLQUZBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUpBO0FBS0E7QUFDQTtBQUNBLGtCQURBO0FBRUEsZUFGQSxtQkFFQSxHQUZBLEVBRUE7QUFDQTtBQUNBLFNBSkE7QUFLQSxZQUxBLGdCQUtBLENBTEEsRUFLQTtBQUNBO0FBQ0EsU0FQQTtBQVFBLGdCQVJBLHNCQVFBLEVBUkE7O0FBVUEsS0FYQTtBQVlBO0FBQ0E7QUFDQSxLQUZBO0FBR0E7QUFDQTtBQUNBLHNDQURBO0FBRUEsZ0JBRkEsc0JBRUEsRUFGQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQSxPQUhBO0FBSUEsS0FUQTtBQVVBLEdBckhBO0FBc0hBLFFBdEhBLG9CQXNIQTtBQUNBO0FBQ0E7QUFDQSxHQXpIQTtBQTBIQSxRQTFIQSxvQkEwSEE7QUFDQTtBQUNBO0FBQ0EsR0E3SEE7QUE4SEE7QUFDQSxjQURBO0FBRUEsa0JBRkEsRUE5SEEsRSIsImZpbGUiOiI5MDguanMiLCJzb3VyY2VzQ29udGVudCI6WyI8IS0tICogV2FubFNob3AgLSBBcHDlhajlsYDmqKHmnb/phY3nva5cclxuICogQGF1dGhvciDmt7HlnLPliY3mtbfkuIfogZTnp5HmioDmnInpmZDlhazlj7ggPHdhbmxzaG9wQGkzNmsuY29tPiBcclxuICogQGxpbmsgaHR0cDovL3d3dy53YW5sc2hvcC5jb21cclxuICogXHJcbiAqIEDmnKznqIvluo/lj5fms5Xlvovkv53miqTvvIzokZfkvZzmnYPCqei9r+iRl+eZu+iusOWPtzIwMjBTUjAyNTU3MTEgPCDmnKrnu4/niYjmnYPmiYDmnInmnYPkurrkuabpnaLorrjlj6/vvIzkuI3og73nlKjkuo7llYbkuJrnlKjpgJTvvIE+XHJcbiAqIFxyXG4gKiBA6I635Y+W6K645Y+vXHJcbiAqIOWQjuWPsOS4i+i9ve+8mmh0dHBzOi8vd3d3LmZhc3RhZG1pbi5uZXQvc3RvcmUvd2FubHNob3AuaHRtbFxyXG4gKiDluK7liqnmlofmoaPvvJpodHRwczovL2RvYy5mYXN0YWRtaW4ubmV0L3dhbmxzaG9wXHJcbiAqIFxyXG4gKiBAc3RyZXNzIOacrOeoi+W6j+S7heeUqOS9nEZhc3RBZG1pbuS7mOi0ueaPkuS7tu+8iFdhbmxTaG9wIEIyQjJD5ZWG5Z+O77yJQVBJ5L2/55So77yM5pyq57uP54mI5p2D5omA5pyJ5p2D5Lq65Lmm6Z2i6K645Y+v77yM5LiN6IO96Ieq6KGM55So5LqO5ZWG5Lia55So6YCUXHJcbiAqIEBjcmVhdGlvbnRpbWUgIDIwMTnlubQ55pyIMTDml6UxMjo1MjoyMFxyXG4gKiBAbGFzdHRpbWUgMjAyMOW5tDbmnIg55pelMDk6MjY6MDdcclxuICogQHZlcnNpb24gMS4wLjBcclxuIC0tPlxyXG48c2NyaXB0PlxyXG5cdGltcG9ydCBWdWUgZnJvbSAndnVlJztcclxuXHRpbXBvcnQgQWVnaXMgZnJvbSAnYWVnaXMtd2VleC1zZGsnO1xyXG5cdGltcG9ydCBjb25maWcgZnJvbSAnQC9jb21tb24vY29uZmlnL2NvbmZpZy5qcydcclxuXHRpbXBvcnQgc2VydmljZSBmcm9tICdAL3NlcnZpY2Uvc2VydmljZS5qcydcclxuXHRleHBvcnQgZGVmYXVsdCB7XHJcblx0XHRvbkxhdW5jaCgpIHtcclxuXHRcdFx0Ly8g5qOA5rWL5a6i5oi356uv5pu05pawXHJcblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCd1cGRhdGUvdXBkYXRlJyk7XHJcblx0XHRcdC8vIOS7hemmluasoeaJk+W8gOS4gOasoeaAp+WKoOi9veaVsOaNrlxyXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnY29tbW9uL2luaXQnKTtcclxuXHRcdFx0Ly8g5ZCM5q2l6LSt54mp6L2mIOacrOWcsCAmIOe9kee7nFxyXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnY2FydC9nZXQnKTtcclxuXHRcdFx0Ly8g5ZCM5q2lIOWKqOaAgeaVsOaNrlxyXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc3RhdGlzdGljcy9nZXQnKTtcclxuXHJcblx0XHRcdGNvbnN0IHByb2plY3ROYW1lID0gJ3VuaWFwcEFwaUV4YW1wbGVFeHQnO1xyXG5cdFx0XHR1bmkuJGFlZ2lzID0gbmV3IEFlZ2lzKHtcclxuXHRcdFx0XHRpZDogJ2lIV2VmQVlxV3VDa0RqaHVjYycsXHJcblx0XHRcdFx0c3BhOiB0cnVlLFxyXG5cdFx0XHRcdHJlcG9ydEFwaVNwZWVkOiB0cnVlLFxyXG5cdFx0XHRcdHJlcG9ydEFzc2V0U3BlZWQ6IHRydWUsXHJcblx0XHRcdFx0cGFnZVBlcmZvcm1hbmNlOiB0cnVlLFxyXG5cdFx0XHRcdGhvc3RVcmw6ICdodHRwczovL3RhbWFlZ2lzLmNvbScsXHJcblx0XHRcdH0pO1xyXG5cdFx0XHR1bmkuJHVwbG9hZFRvVEFNID0gKGV2ZW50U3RyaW5nLCBzZGtBcHBJZCkgPT4ge1xyXG5cdFx0XHRcdHVuaS4kYWVnaXMucmVwb3J0RXZlbnQoe1xyXG5cdFx0XHRcdFx0bmFtZTogZXZlbnRTdHJpbmcuc3BsaXQoJyMnKVswXSB8fCAnJyxcclxuXHRcdFx0XHRcdGV4dDE6IGV2ZW50U3RyaW5nLFxyXG5cdFx0XHRcdFx0ZXh0MjogcHJvamVjdE5hbWUsXHJcblx0XHRcdFx0XHRleHQzOiBzZGtBcHBJZCxcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fTtcclxuXHRcdFx0dW5pLiRjcmVhdGVUcnRjQ2xvdWRVcGxvYWQgPSBzZGtBcHBJZCA9PiB1bmkuJHVwbG9hZFRvVEFNKCdjcmVhdGVUcnRjQ2xvdWQnLCBzZGtBcHBJZCk7XHJcblx0XHRcdHVuaS4kZW50ZXJSb29tU3VjY2Vzc1VwbG9hZCA9IHNka0FwcElkID0+IHVuaS4kdXBsb2FkVG9UQU0oJ2VudGVyUm9vbS1zdWNjZXNzJywgc2RrQXBwSWQpO1xyXG5cdFx0XHR1bmkuJGVudGVyUm9vbUZhaWxlZFVwbG9hZCA9IChzZGtBcHBJZCwgZXJyb3JNc2cpID0+IHVuaS4kdXBsb2FkVG9UQU0oYGVudGVyUm9vbS1mYWlsZWQjZXJyb3I6ICR7ZXJyb3JNc2d9YCxcclxuXHRcdFx0XHRzZGtBcHBJZCk7XHJcblx0XHRcdHVuaS4kb25FcnJvclVwbG9hZCA9IChzZGtBcHBJZCwgZXJyb3JNc2cpID0+IHVuaS4kdXBsb2FkVG9UQU0oYG9uRXJyb3ItZmFpbGVkI2Vycm9yOiAke2Vycm9yTXNnfWAsIHNka0FwcElkKTtcclxuXHRcdFx0dW5pLiRzdGFydExvY2FsUHJldmlld1VwbG9hZCA9IHNka0FwcElkID0+IHVuaS4kdXBsb2FkVG9UQU0oJ3N0YXJ0TG9jYWxQcmV2aWV3Jywgc2RrQXBwSWQpO1xyXG5cdFx0XHR1bmkuJHN0YXJ0UmVtb3RlVmlld1N1Y2Nlc3NVcGxvYWQgPSBzZGtBcHBJZCA9PiB1bmkuJHVwbG9hZFRvVEFNKCdzdGFydFJlbW90ZVZpZXctc3VjY2VzcycsIHNka0FwcElkKTtcclxuXHRcdFx0dW5pLiRzdGFydFJlbW90ZVZpZXdGYWlsZWRVcGxvYWQgPSAoc2RrQXBwSWQsIGVycm9yTXNnKSA9PiB1bmkuJHVwbG9hZFRvVEFNKFxyXG5cdFx0XHRcdGBzdGFydFJlbW90ZVZpZXctZmFpbGVkI2Vycm9yOiAke2Vycm9yTXNnfWAsIHNka0FwcElkKTtcclxuXHJcblx0XHRcdGNvbnN0IGhhbmRsZU9uTWVzc2FnZSA9IChtc2cpID0+IHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnaGFuZGxlT25NZXNzYWdlJywgbXNnKTtcclxuXHRcdFx0XHRsZXQgdXNlciA9IHRoaXMuJHN0b3JlLnN0YXRlLnVzZXI7XHJcblx0XHRcdFx0bXNnID0gSlNPTi5wYXJzZShtc2cuZGF0YSk7XHJcblx0XHRcdFx0aWYgKG1zZy5tZXNzYWdlVHlwZSA9PSAnam9pblJvb20nKSB7XHJcblx0XHRcdFx0XHR1bmkuc2hvd01vZGFsKHtcclxuXHRcdFx0XHRcdFx0Y29udGVudDogYOeUqOaIt+OAkCR7bXNnLnJlYWxOYW1lfeOAkemCgOivt+S9oOinhumikei/nue6v++8jOaYr+WQpuWKoOWFpeaIv+mXtO+8n2AsXHJcblx0XHRcdFx0XHRcdGNvbmZpcm1UZXh0OiAn5Yqg5YWl5oi/6Ze0JyxcclxuXHRcdFx0XHRcdFx0Y2FuY2VsVGV4dDogJ+aUvuW8gycsXHJcblx0XHRcdFx0XHRcdGNvbmZpcm1Db2xvcjogJyNENjY5QkUnLFxyXG5cdFx0XHRcdFx0XHRzdWNjZXNzKHtcclxuXHRcdFx0XHRcdFx0XHRjb25maXJtXHJcblx0XHRcdFx0XHRcdH0pIHtcclxuXHRcdFx0XHRcdFx0XHRpZiAoY29uZmlybSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR1cmw6IGAvcGFnZXMvbWVldGluZy9tZWV0aW5nP3Jvb21JZD0ke21zZy5yb29tTm99YFxyXG5cdFx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdGxldCBzb2NrZXRUYXNrID0gdW5pLmNvbm5lY3RTb2NrZXQoe1xyXG5cdFx0XHRcdHVybDogY29uZmlnLnNvY2tldHVybCxcclxuXHRcdFx0XHRjb21wbGV0ZSgpIHt9LFxyXG5cdFx0XHR9KTtcclxuXHRcdFx0dW5pLm9uU29ja2V0T3BlbihmdW5jdGlvbihyZXMpIHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnV2ViU29ja2V06L+e5o6l5bey5omT5byA77yBJyk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHR1bmkub25Tb2NrZXRFcnJvcihmdW5jdGlvbihyZXMpIHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnV2ViU29ja2V06L+e5o6l5omT5byA5aSx6LSl77yM6K+35qOA5p+l77yBJyk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHR0aGlzLmdsb2JhbERhdGEuc29ja2V0VGFzayA9IHNvY2tldFRhc2s7XHJcblx0XHRcdHNvY2tldFRhc2sub25PcGVuKChkYXRhKSA9PiB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ3NvY2tldFRhc2sub25PcGVuJywgZGF0YSk7XHJcblx0XHRcdFx0c29ja2V0VGFzay5zZW5kKHtcclxuXHRcdFx0XHRcdGRhdGE6IEpTT04uc3RyaW5naWZ5KHtcclxuXHRcdFx0XHRcdFx0bWV0aG9kOiAnT25Db25uZWN0aW9uJyxcclxuXHRcdFx0XHRcdFx0dG9rZW46IHNlcnZpY2UuZ2V0VG9rZW4oKSxcclxuXHRcdFx0XHRcdFx0bW9iaWxlRGV2aWNlOiB0cnVlXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH0pO1xyXG5cdFx0XHRzb2NrZXRUYXNrLm9uRXJyb3IoKGVycm9yKSA9PiB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ3NvY2tldFRhc2sub25FcnJvcicsIGVycm9yKVxyXG5cdFx0XHR9KTtcclxuXHRcdFx0dW5pLm9uU29ja2V0TWVzc2FnZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ3NvY2tldFRhc2sub25NZXNzYWdlJywgcmVzKTtcclxuXHRcdFx0fSlcclxuXHRcdFx0c29ja2V0VGFzay5vbk1lc3NhZ2UoKG1zZykgPT4ge1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKCdzb2NrZXRUYXNrLm9uTWVzc2FnZScsIG1zZyk7XHJcblx0XHRcdFx0aGFuZGxlT25NZXNzYWdlKG1zZyk7XHJcblx0XHRcdFx0dW5pLiRlbWl0KCdzb2NrZXRNZXNzYWdlJywgbXNnKVxyXG5cdFx0XHR9KTtcclxuXHRcdFx0dW5pLiRvbignc2VuZFNvY2tldE1lc3NhZ2UnLCAoZGF0YSkgPT4ge1xyXG5cdFx0XHRcdHVuaS5zZW5kKHtcclxuXHRcdFx0XHRcdGRhdGE6IGRhdGEsXHJcblx0XHRcdFx0XHRzdWNjZXNzKHJlcykge1xyXG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZygnc2VuZFNvY2tldE1lc3NhZ2Ugc3VjY2VzcycsIHJlcyk7XHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0ZmFpbChlKSB7XHJcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCdzZW5kU29ja2V0TWVzc2FnZSBmYWlsJywgZSk7XHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0Y29tcGxldGUoKSB7fVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9KTtcclxuXHRcdFx0dW5pLiRvbignY2xvc2VTb2NrZXQnLCAoKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5nbG9iYWxEYXRhLnNvY2tldFRhc2suY2xvc2UoKTtcclxuXHRcdFx0fSlcclxuXHRcdFx0dW5pLiRvbignb3BlblNvY2tldCcsICgpID0+IHtcclxuXHRcdFx0XHR0aGlzLmdsb2JhbERhdGEuc29ja2V0VGFzayA9IHVuaS5jb25uZWN0U29ja2V0KHtcclxuXHRcdFx0XHRcdHVybDogY29uZmlnLnNvY2tldHVybCxcclxuXHRcdFx0XHRcdGNvbXBsZXRlKCkge30sXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy5nbG9iYWxEYXRhLnNvY2tldFRhc2sub25NZXNzYWdlKChtc2cpID0+IHtcclxuXHRcdFx0XHRcdGhhbmRsZU9uTWVzc2FnZShtc2cpO1xyXG5cdFx0XHRcdFx0dW5pLiRlbWl0KCdzb2NrZXRNZXNzYWdlJywgbXNnKVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9KVxyXG5cdFx0fSxcclxuXHRcdG9uU2hvdygpIHtcclxuXHRcdFx0Ly8g5ZCv5Yqo5oiW6YeN5ZCv5Y2z5pe26YCa6K6vXHJcblx0XHRcdC8vIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCdjaGF0L3N0YXJ0Jyk7XHJcblx0XHR9LFxyXG5cdFx0b25IaWRlKCkge1xyXG5cdFx0XHQvLyDmlq3lvIDljbPml7bpgJrorq9cclxuXHRcdFx0Ly8gdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2NoYXQvY2xvc2UnKTtcclxuXHRcdH0sXHJcblx0XHRnbG9iYWxEYXRhOiB7XHJcblx0XHRcdHR5cGVOdW06IDEsXHJcblx0XHRcdHNvY2tldFRhc2s6IHt9XHJcblx0XHR9XHJcblx0fTtcclxuPC9zY3JpcHQ+XHJcblxyXG48c3R5bGU+XHJcblx0LyogI2lmbmRlZiBBUFAtTlZVRSAqL1xyXG5cdEBpbXBvcnQgJ3N0YXRpYy9zdHlsZS9jb2xvcnVpLmNzcyc7XHJcblx0QGltcG9ydCAnc3RhdGljL3N0eWxlL3dhbmxzaG9wLmNzcyc7XHJcblx0QGltcG9ydCAnc3RhdGljL3N0eWxlL2ljb25mb250LmNzcyc7XHJcblx0QGltcG9ydCB1cmwoXCIuL3N0eWxlcy9pbmRleC5zY3NzXCIpO1xyXG5cdC8qICNlbmRpZiAqL1xyXG48L3N0eWxlPlxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///908\n");
  84989 +eval("/* WEBPACK VAR INJECTION */(function(__f__) {Object.defineProperty(exports, \"__esModule\", { value: true });exports.default = void 0;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 261));\nvar _aegisWeexSdk = _interopRequireDefault(__webpack_require__(/*! aegis-weex-sdk */ 909));\nvar _config = _interopRequireDefault(__webpack_require__(/*! @/common/config/config.js */ 252));\nvar _service = _interopRequireDefault(__webpack_require__(/*! @/service/service.js */ 260));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };} //\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = { onLaunch: function onLaunch() {var _this = this; // 检测客户端更新\n this.$store.dispatch('update/update'); // 仅首次打开一次性加载数据\n this.$store.dispatch('common/init'); // 同步购物车 本地 & 网络\n this.$store.dispatch('cart/get'); // 同步 动态数据\n this.$store.dispatch('statistics/get');var projectName = 'uniappApiExampleExt';uni.$aegis = new _aegisWeexSdk.default({ id: 'iHWefAYqWuCkDjhucc', spa: true, reportApiSpeed: true, reportAssetSpeed: true, pagePerformance: true, hostUrl: 'https://tamaegis.com' });\n\n uni.$uploadToTAM = function (eventString, sdkAppId) {\n uni.$aegis.reportEvent({\n name: eventString.split('#')[0] || '',\n ext1: eventString,\n ext2: projectName,\n ext3: sdkAppId });\n\n };\n uni.$createTrtcCloudUpload = function (sdkAppId) {return uni.$uploadToTAM('createTrtcCloud', sdkAppId);};\n uni.$enterRoomSuccessUpload = function (sdkAppId) {return uni.$uploadToTAM('enterRoom-success', sdkAppId);};\n uni.$enterRoomFailedUpload = function (sdkAppId, errorMsg) {return uni.$uploadToTAM(\"enterRoom-failed#error: \".concat(errorMsg),\n sdkAppId);};\n uni.$onErrorUpload = function (sdkAppId, errorMsg) {return uni.$uploadToTAM(\"onError-failed#error: \".concat(errorMsg), sdkAppId);};\n uni.$startLocalPreviewUpload = function (sdkAppId) {return uni.$uploadToTAM('startLocalPreview', sdkAppId);};\n uni.$startRemoteViewSuccessUpload = function (sdkAppId) {return uni.$uploadToTAM('startRemoteView-success', sdkAppId);};\n uni.$startRemoteViewFailedUpload = function (sdkAppId, errorMsg) {return uni.$uploadToTAM(\"startRemoteView-failed#error: \".concat(\n errorMsg), sdkAppId);};\n\n var handleOnMessage = function handleOnMessage(msg) {\n __f__(\"log\", 'handleOnMessage', msg, \" at App.vue:60\");\n var user = _this.$store.state.user;\n msg = JSON.parse(msg.data);\n if (msg.messageType == 'joinRoom') {\n uni.showModal({\n content: \"\\u7528\\u6237\\u3010\".concat(msg.realName, \"\\u3011\\u9080\\u8BF7\\u4F60\\u89C6\\u9891\\u8FDE\\u7EBF\\uFF0C\\u662F\\u5426\\u52A0\\u5165\\u623F\\u95F4\\uFF1F\"),\n confirmText: '加入房间',\n cancelText: '放弃',\n confirmColor: '#D669BE',\n success: function success(_ref)\n\n {var confirm = _ref.confirm;\n if (confirm) {\n uni.navigateTo({\n url: \"/pages/meeting/meeting?roomId=\".concat(msg.roomNo) });\n\n }\n } });\n\n }\n };\n var socketTask = uni.connectSocket({\n url: _config.default.socketurl,\n complete: function complete() {} });\n\n uni.onSocketOpen(function (res) {\n __f__(\"log\", 'WebSocket连接已打开!', \" at App.vue:86\");\n });\n uni.onSocketError(function (res) {\n __f__(\"log\", 'WebSocket连接打开失败,请检查!', \" at App.vue:89\");\n });\n this.globalData.socketTask = socketTask;\n socketTask.onOpen(function (data) {\n __f__(\"log\", 'socketTask.onOpen', data, \" at App.vue:93\");\n socketTask.send({\n data: JSON.stringify({\n method: 'OnConnection',\n token: _service.default.getToken(),\n mobileDevice: true }) });\n\n\n });\n socketTask.onError(function (error) {\n __f__(\"log\", 'socketTask.onError', error, \" at App.vue:103\");\n });\n uni.onSocketMessage(function (res) {\n __f__(\"log\", 'socketTask.onMessage', res, \" at App.vue:106\");\n });\n socketTask.onMessage(function (msg) {\n __f__(\"log\", 'socketTask.onMessage', msg, \" at App.vue:109\");\n handleOnMessage(msg);\n uni.$emit('socketMessage', JSON.parse(msg.data));\n });\n uni.$on('sendSocketMessage', function (data) {\n uni.send({\n data: data,\n success: function success(res) {\n __f__(\"log\", 'sendSocketMessage success', res, \" at App.vue:117\");\n },\n fail: function fail(e) {\n __f__(\"log\", 'sendSocketMessage fail', e, \" at App.vue:120\");\n },\n complete: function complete() {} });\n\n });\n uni.$on('closeSocket', function () {\n _this.globalData.socketTask.close();\n });\n uni.$on('openSocket', function () {\n _this.globalData.socketTask = uni.connectSocket({\n url: _config.default.socketurl,\n complete: function complete() {} });\n\n _this.globalData.socketTask.onMessage(function (msg) {\n handleOnMessage(msg);\n uni.$emit('socketMessage', msg);\n });\n });\n },\n onShow: function onShow() {\n // 启动或重启即时通讯\n // this.$store.dispatch('chat/start');\n },\n onHide: function onHide() {\n // 断开即时通讯\n // this.$store.dispatch('chat/close');\n },\n globalData: {\n typeNum: 1,\n socketTask: {} } };exports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 1)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vQXBwLnZ1ZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBZ0JBO0FBQ0E7QUFDQTtBQUNBLDRGOzs7Ozs7Ozs7Ozs7Ozs7ZUFDQSxFQUNBLFFBREEsc0JBQ0EsbUJBQ0E7QUFDQSwwQ0FGQSxDQUdBO0FBQ0Esd0NBSkEsQ0FLQTtBQUNBLHFDQU5BLENBT0E7QUFDQSwyQ0FFQSx3Q0FDQSx5Q0FDQSx3QkFEQSxFQUVBLFNBRkEsRUFHQSxvQkFIQSxFQUlBLHNCQUpBLEVBS0EscUJBTEEsRUFNQSwrQkFOQTs7QUFRQTtBQUNBO0FBQ0EsNkNBREE7QUFFQSx5QkFGQTtBQUdBLHlCQUhBO0FBSUEsc0JBSkE7O0FBTUEsS0FQQTtBQVFBO0FBQ0E7QUFDQTtBQUNBLGNBREE7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBREEsR0FDQSxRQURBOztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdLQURBO0FBRUEsNkJBRkE7QUFHQSwwQkFIQTtBQUlBLGlDQUpBO0FBS0EsaUJBTEE7O0FBT0EsZUFEQSxPQUNBLFFBREEsT0FDQTtBQUNBO0FBQ0E7QUFDQSx3RUFEQTs7QUFHQTtBQUNBLFdBYkE7O0FBZUE7QUFDQSxLQXJCQTtBQXNCQTtBQUNBLG9DQURBO0FBRUEsY0FGQSxzQkFFQSxFQUZBOztBQUlBO0FBQ0E7QUFDQSxLQUZBO0FBR0E7QUFDQTtBQUNBLEtBRkE7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBREE7QUFFQSw0Q0FGQTtBQUdBLDRCQUhBLEdBREE7OztBQU9BLEtBVEE7QUFVQTtBQUNBO0FBQ0EsS0FGQTtBQUdBO0FBQ0E7QUFDQSxLQUZBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUpBO0FBS0E7QUFDQTtBQUNBLGtCQURBO0FBRUEsZUFGQSxtQkFFQSxHQUZBLEVBRUE7QUFDQTtBQUNBLFNBSkE7QUFLQSxZQUxBLGdCQUtBLENBTEEsRUFLQTtBQUNBO0FBQ0EsU0FQQTtBQVFBLGdCQVJBLHNCQVFBLEVBUkE7O0FBVUEsS0FYQTtBQVlBO0FBQ0E7QUFDQSxLQUZBO0FBR0E7QUFDQTtBQUNBLHNDQURBO0FBRUEsZ0JBRkEsc0JBRUEsRUFGQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQSxPQUhBO0FBSUEsS0FUQTtBQVVBLEdBckhBO0FBc0hBLFFBdEhBLG9CQXNIQTtBQUNBO0FBQ0E7QUFDQSxHQXpIQTtBQTBIQSxRQTFIQSxvQkEwSEE7QUFDQTtBQUNBO0FBQ0EsR0E3SEE7QUE4SEE7QUFDQSxjQURBO0FBRUEsa0JBRkEsRUE5SEEsRSIsImZpbGUiOiI5MDguanMiLCJzb3VyY2VzQ29udGVudCI6WyI8IS0tICogV2FubFNob3AgLSBBcHDlhajlsYDmqKHmnb/phY3nva5cclxuICogQGF1dGhvciDmt7HlnLPliY3mtbfkuIfogZTnp5HmioDmnInpmZDlhazlj7ggPHdhbmxzaG9wQGkzNmsuY29tPiBcclxuICogQGxpbmsgaHR0cDovL3d3dy53YW5sc2hvcC5jb21cclxuICogXHJcbiAqIEDmnKznqIvluo/lj5fms5Xlvovkv53miqTvvIzokZfkvZzmnYPCqei9r+iRl+eZu+iusOWPtzIwMjBTUjAyNTU3MTEgPCDmnKrnu4/niYjmnYPmiYDmnInmnYPkurrkuabpnaLorrjlj6/vvIzkuI3og73nlKjkuo7llYbkuJrnlKjpgJTvvIE+XHJcbiAqIFxyXG4gKiBA6I635Y+W6K645Y+vXHJcbiAqIOWQjuWPsOS4i+i9ve+8mmh0dHBzOi8vd3d3LmZhc3RhZG1pbi5uZXQvc3RvcmUvd2FubHNob3AuaHRtbFxyXG4gKiDluK7liqnmlofmoaPvvJpodHRwczovL2RvYy5mYXN0YWRtaW4ubmV0L3dhbmxzaG9wXHJcbiAqIFxyXG4gKiBAc3RyZXNzIOacrOeoi+W6j+S7heeUqOS9nEZhc3RBZG1pbuS7mOi0ueaPkuS7tu+8iFdhbmxTaG9wIEIyQjJD5ZWG5Z+O77yJQVBJ5L2/55So77yM5pyq57uP54mI5p2D5omA5pyJ5p2D5Lq65Lmm6Z2i6K645Y+v77yM5LiN6IO96Ieq6KGM55So5LqO5ZWG5Lia55So6YCUXHJcbiAqIEBjcmVhdGlvbnRpbWUgIDIwMTnlubQ55pyIMTDml6UxMjo1MjoyMFxyXG4gKiBAbGFzdHRpbWUgMjAyMOW5tDbmnIg55pelMDk6MjY6MDdcclxuICogQHZlcnNpb24gMS4wLjBcclxuIC0tPlxyXG48c2NyaXB0PlxyXG5cdGltcG9ydCBWdWUgZnJvbSAndnVlJztcclxuXHRpbXBvcnQgQWVnaXMgZnJvbSAnYWVnaXMtd2VleC1zZGsnO1xyXG5cdGltcG9ydCBjb25maWcgZnJvbSAnQC9jb21tb24vY29uZmlnL2NvbmZpZy5qcydcclxuXHRpbXBvcnQgc2VydmljZSBmcm9tICdAL3NlcnZpY2Uvc2VydmljZS5qcydcclxuXHRleHBvcnQgZGVmYXVsdCB7XHJcblx0XHRvbkxhdW5jaCgpIHtcclxuXHRcdFx0Ly8g5qOA5rWL5a6i5oi356uv5pu05pawXHJcblx0XHRcdHRoaXMuJHN0b3JlLmRpc3BhdGNoKCd1cGRhdGUvdXBkYXRlJyk7XHJcblx0XHRcdC8vIOS7hemmluasoeaJk+W8gOS4gOasoeaAp+WKoOi9veaVsOaNrlxyXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnY29tbW9uL2luaXQnKTtcclxuXHRcdFx0Ly8g5ZCM5q2l6LSt54mp6L2mIOacrOWcsCAmIOe9kee7nFxyXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnY2FydC9nZXQnKTtcclxuXHRcdFx0Ly8g5ZCM5q2lIOWKqOaAgeaVsOaNrlxyXG5cdFx0XHR0aGlzLiRzdG9yZS5kaXNwYXRjaCgnc3RhdGlzdGljcy9nZXQnKTtcclxuXHJcblx0XHRcdGNvbnN0IHByb2plY3ROYW1lID0gJ3VuaWFwcEFwaUV4YW1wbGVFeHQnO1xyXG5cdFx0XHR1bmkuJGFlZ2lzID0gbmV3IEFlZ2lzKHtcclxuXHRcdFx0XHRpZDogJ2lIV2VmQVlxV3VDa0RqaHVjYycsXHJcblx0XHRcdFx0c3BhOiB0cnVlLFxyXG5cdFx0XHRcdHJlcG9ydEFwaVNwZWVkOiB0cnVlLFxyXG5cdFx0XHRcdHJlcG9ydEFzc2V0U3BlZWQ6IHRydWUsXHJcblx0XHRcdFx0cGFnZVBlcmZvcm1hbmNlOiB0cnVlLFxyXG5cdFx0XHRcdGhvc3RVcmw6ICdodHRwczovL3RhbWFlZ2lzLmNvbScsXHJcblx0XHRcdH0pO1xyXG5cdFx0XHR1bmkuJHVwbG9hZFRvVEFNID0gKGV2ZW50U3RyaW5nLCBzZGtBcHBJZCkgPT4ge1xyXG5cdFx0XHRcdHVuaS4kYWVnaXMucmVwb3J0RXZlbnQoe1xyXG5cdFx0XHRcdFx0bmFtZTogZXZlbnRTdHJpbmcuc3BsaXQoJyMnKVswXSB8fCAnJyxcclxuXHRcdFx0XHRcdGV4dDE6IGV2ZW50U3RyaW5nLFxyXG5cdFx0XHRcdFx0ZXh0MjogcHJvamVjdE5hbWUsXHJcblx0XHRcdFx0XHRleHQzOiBzZGtBcHBJZCxcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fTtcclxuXHRcdFx0dW5pLiRjcmVhdGVUcnRjQ2xvdWRVcGxvYWQgPSBzZGtBcHBJZCA9PiB1bmkuJHVwbG9hZFRvVEFNKCdjcmVhdGVUcnRjQ2xvdWQnLCBzZGtBcHBJZCk7XHJcblx0XHRcdHVuaS4kZW50ZXJSb29tU3VjY2Vzc1VwbG9hZCA9IHNka0FwcElkID0+IHVuaS4kdXBsb2FkVG9UQU0oJ2VudGVyUm9vbS1zdWNjZXNzJywgc2RrQXBwSWQpO1xyXG5cdFx0XHR1bmkuJGVudGVyUm9vbUZhaWxlZFVwbG9hZCA9IChzZGtBcHBJZCwgZXJyb3JNc2cpID0+IHVuaS4kdXBsb2FkVG9UQU0oYGVudGVyUm9vbS1mYWlsZWQjZXJyb3I6ICR7ZXJyb3JNc2d9YCxcclxuXHRcdFx0XHRzZGtBcHBJZCk7XHJcblx0XHRcdHVuaS4kb25FcnJvclVwbG9hZCA9IChzZGtBcHBJZCwgZXJyb3JNc2cpID0+IHVuaS4kdXBsb2FkVG9UQU0oYG9uRXJyb3ItZmFpbGVkI2Vycm9yOiAke2Vycm9yTXNnfWAsIHNka0FwcElkKTtcclxuXHRcdFx0dW5pLiRzdGFydExvY2FsUHJldmlld1VwbG9hZCA9IHNka0FwcElkID0+IHVuaS4kdXBsb2FkVG9UQU0oJ3N0YXJ0TG9jYWxQcmV2aWV3Jywgc2RrQXBwSWQpO1xyXG5cdFx0XHR1bmkuJHN0YXJ0UmVtb3RlVmlld1N1Y2Nlc3NVcGxvYWQgPSBzZGtBcHBJZCA9PiB1bmkuJHVwbG9hZFRvVEFNKCdzdGFydFJlbW90ZVZpZXctc3VjY2VzcycsIHNka0FwcElkKTtcclxuXHRcdFx0dW5pLiRzdGFydFJlbW90ZVZpZXdGYWlsZWRVcGxvYWQgPSAoc2RrQXBwSWQsIGVycm9yTXNnKSA9PiB1bmkuJHVwbG9hZFRvVEFNKFxyXG5cdFx0XHRcdGBzdGFydFJlbW90ZVZpZXctZmFpbGVkI2Vycm9yOiAke2Vycm9yTXNnfWAsIHNka0FwcElkKTtcclxuXHJcblx0XHRcdGNvbnN0IGhhbmRsZU9uTWVzc2FnZSA9IChtc2cpID0+IHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnaGFuZGxlT25NZXNzYWdlJywgbXNnKTtcclxuXHRcdFx0XHRsZXQgdXNlciA9IHRoaXMuJHN0b3JlLnN0YXRlLnVzZXI7XHJcblx0XHRcdFx0bXNnID0gSlNPTi5wYXJzZShtc2cuZGF0YSk7XHJcblx0XHRcdFx0aWYgKG1zZy5tZXNzYWdlVHlwZSA9PSAnam9pblJvb20nKSB7XHJcblx0XHRcdFx0XHR1bmkuc2hvd01vZGFsKHtcclxuXHRcdFx0XHRcdFx0Y29udGVudDogYOeUqOaIt+OAkCR7bXNnLnJlYWxOYW1lfeOAkemCgOivt+S9oOinhumikei/nue6v++8jOaYr+WQpuWKoOWFpeaIv+mXtO+8n2AsXHJcblx0XHRcdFx0XHRcdGNvbmZpcm1UZXh0OiAn5Yqg5YWl5oi/6Ze0JyxcclxuXHRcdFx0XHRcdFx0Y2FuY2VsVGV4dDogJ+aUvuW8gycsXHJcblx0XHRcdFx0XHRcdGNvbmZpcm1Db2xvcjogJyNENjY5QkUnLFxyXG5cdFx0XHRcdFx0XHRzdWNjZXNzKHtcclxuXHRcdFx0XHRcdFx0XHRjb25maXJtXHJcblx0XHRcdFx0XHRcdH0pIHtcclxuXHRcdFx0XHRcdFx0XHRpZiAoY29uZmlybSkge1xyXG5cdFx0XHRcdFx0XHRcdFx0dW5pLm5hdmlnYXRlVG8oe1xyXG5cdFx0XHRcdFx0XHRcdFx0XHR1cmw6IGAvcGFnZXMvbWVldGluZy9tZWV0aW5nP3Jvb21JZD0ke21zZy5yb29tTm99YFxyXG5cdFx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdGxldCBzb2NrZXRUYXNrID0gdW5pLmNvbm5lY3RTb2NrZXQoe1xyXG5cdFx0XHRcdHVybDogY29uZmlnLnNvY2tldHVybCxcclxuXHRcdFx0XHRjb21wbGV0ZSgpIHt9LFxyXG5cdFx0XHR9KTtcclxuXHRcdFx0dW5pLm9uU29ja2V0T3BlbihmdW5jdGlvbihyZXMpIHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnV2ViU29ja2V06L+e5o6l5bey5omT5byA77yBJyk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHR1bmkub25Tb2NrZXRFcnJvcihmdW5jdGlvbihyZXMpIHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnV2ViU29ja2V06L+e5o6l5omT5byA5aSx6LSl77yM6K+35qOA5p+l77yBJyk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHR0aGlzLmdsb2JhbERhdGEuc29ja2V0VGFzayA9IHNvY2tldFRhc2s7XHJcblx0XHRcdHNvY2tldFRhc2sub25PcGVuKChkYXRhKSA9PiB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ3NvY2tldFRhc2sub25PcGVuJywgZGF0YSk7XHJcblx0XHRcdFx0c29ja2V0VGFzay5zZW5kKHtcclxuXHRcdFx0XHRcdGRhdGE6IEpTT04uc3RyaW5naWZ5KHtcclxuXHRcdFx0XHRcdFx0bWV0aG9kOiAnT25Db25uZWN0aW9uJyxcclxuXHRcdFx0XHRcdFx0dG9rZW46IHNlcnZpY2UuZ2V0VG9rZW4oKSxcclxuXHRcdFx0XHRcdFx0bW9iaWxlRGV2aWNlOiB0cnVlXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH0pO1xyXG5cdFx0XHRzb2NrZXRUYXNrLm9uRXJyb3IoKGVycm9yKSA9PiB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ3NvY2tldFRhc2sub25FcnJvcicsIGVycm9yKVxyXG5cdFx0XHR9KTtcclxuXHRcdFx0dW5pLm9uU29ja2V0TWVzc2FnZSgocmVzKSA9PiB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ3NvY2tldFRhc2sub25NZXNzYWdlJywgcmVzKTtcclxuXHRcdFx0fSlcclxuXHRcdFx0c29ja2V0VGFzay5vbk1lc3NhZ2UoKG1zZykgPT4ge1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKCdzb2NrZXRUYXNrLm9uTWVzc2FnZScsIG1zZyk7XHJcblx0XHRcdFx0aGFuZGxlT25NZXNzYWdlKG1zZyk7XHJcblx0XHRcdFx0dW5pLiRlbWl0KCdzb2NrZXRNZXNzYWdlJywgSlNPTi5wYXJzZShtc2cuZGF0YSkpXHJcblx0XHRcdH0pO1xyXG5cdFx0XHR1bmkuJG9uKCdzZW5kU29ja2V0TWVzc2FnZScsIChkYXRhKSA9PiB7XHJcblx0XHRcdFx0dW5pLnNlbmQoe1xyXG5cdFx0XHRcdFx0ZGF0YTogZGF0YSxcclxuXHRcdFx0XHRcdHN1Y2Nlc3MocmVzKSB7XHJcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKCdzZW5kU29ja2V0TWVzc2FnZSBzdWNjZXNzJywgcmVzKTtcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRmYWlsKGUpIHtcclxuXHRcdFx0XHRcdFx0Y29uc29sZS5sb2coJ3NlbmRTb2NrZXRNZXNzYWdlIGZhaWwnLCBlKTtcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRjb21wbGV0ZSgpIHt9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHR1bmkuJG9uKCdjbG9zZVNvY2tldCcsICgpID0+IHtcclxuXHRcdFx0XHR0aGlzLmdsb2JhbERhdGEuc29ja2V0VGFzay5jbG9zZSgpO1xyXG5cdFx0XHR9KVxyXG5cdFx0XHR1bmkuJG9uKCdvcGVuU29ja2V0JywgKCkgPT4ge1xyXG5cdFx0XHRcdHRoaXMuZ2xvYmFsRGF0YS5zb2NrZXRUYXNrID0gdW5pLmNvbm5lY3RTb2NrZXQoe1xyXG5cdFx0XHRcdFx0dXJsOiBjb25maWcuc29ja2V0dXJsLFxyXG5cdFx0XHRcdFx0Y29tcGxldGUoKSB7fSxcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLmdsb2JhbERhdGEuc29ja2V0VGFzay5vbk1lc3NhZ2UoKG1zZykgPT4ge1xyXG5cdFx0XHRcdFx0aGFuZGxlT25NZXNzYWdlKG1zZyk7XHJcblx0XHRcdFx0XHR1bmkuJGVtaXQoJ3NvY2tldE1lc3NhZ2UnLCBtc2cpXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0pXHJcblx0XHR9LFxyXG5cdFx0b25TaG93KCkge1xyXG5cdFx0XHQvLyDlkK/liqjmiJbph43lkK/ljbPml7bpgJrorq9cclxuXHRcdFx0Ly8gdGhpcy4kc3RvcmUuZGlzcGF0Y2goJ2NoYXQvc3RhcnQnKTtcclxuXHRcdH0sXHJcblx0XHRvbkhpZGUoKSB7XHJcblx0XHRcdC8vIOaWreW8gOWNs+aXtumAmuiur1xyXG5cdFx0XHQvLyB0aGlzLiRzdG9yZS5kaXNwYXRjaCgnY2hhdC9jbG9zZScpO1xyXG5cdFx0fSxcclxuXHRcdGdsb2JhbERhdGE6IHtcclxuXHRcdFx0dHlwZU51bTogMSxcclxuXHRcdFx0c29ja2V0VGFzazoge31cclxuXHRcdH1cclxuXHR9O1xyXG48L3NjcmlwdD5cclxuXHJcbjxzdHlsZT5cclxuXHQvKiAjaWZuZGVmIEFQUC1OVlVFICovXHJcblx0QGltcG9ydCAnc3RhdGljL3N0eWxlL2NvbG9ydWkuY3NzJztcclxuXHRAaW1wb3J0ICdzdGF0aWMvc3R5bGUvd2FubHNob3AuY3NzJztcclxuXHRAaW1wb3J0ICdzdGF0aWMvc3R5bGUvaWNvbmZvbnQuY3NzJztcclxuXHRAaW1wb3J0IHVybChcIi4vc3R5bGVzL2luZGV4LnNjc3NcIik7XHJcblx0LyogI2VuZGlmICovXHJcbjwvc3R5bGU+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///908\n");
84990 84990  
84991 84991 /***/ }),
84992 84992 /* 909 */
... ...
uniapp-wuduhuajiao/unpackage/dist/dev/app-plus/pages/meeting/meeting.js
... ... @@ -364,38 +364,32 @@ var render = function() {
364 364 }
365 365 },
366 366 [
367   - _vm.meetingUsers[0] && _vm.meetingUsers[0].starting
368   - ? _c(
369   - "u-text",
370   - {
371   - staticClass: ["btn"],
372   - staticStyle: { marginRight: "20px" },
373   - appendAsTree: true,
374   - attrs: { append: "tree" },
375   - on: { click: _vm.handleEndtMeeting }
376   - },
377   - [_vm._v("挂断")]
378   - )
379   - : _vm._e(),
380   - _vm.myUserInfo && _vm.myUserInfo.type == 4
381   - ? _c(
382   - "u-text",
383   - {
384   - directives: [
385   - {
386   - name: "else",
387   - rawName: "v-else",
388   - value: true,
389   - expression: true
390   - }
391   - ],
392   - staticClass: ["btn"],
393   - appendAsTree: true,
394   - attrs: { append: "tree" },
395   - on: { click: _vm.handleStartMeeting }
396   - },
397   - [_vm._v("开始视频")]
398   - )
  367 + _vm.myUserInfo && _vm.myUserInfo.type == 3
  368 + ? _c("block", [
  369 + _vm.meetingUsers[0] && _vm.meetingUsers[0].starting
  370 + ? _c(
  371 + "u-text",
  372 + {
  373 + staticClass: ["btn"],
  374 + staticStyle: { marginRight: "20px" },
  375 + appendAsTree: true,
  376 + attrs: { append: "tree" },
  377 + on: { click: _vm.handleEndtMeeting }
  378 + },
  379 + [_vm._v("挂断")]
  380 + )
  381 + : _c(
  382 + "u-text",
  383 + {
  384 + staticClass: ["btn"],
  385 + staticStyle: { marginRight: "20rpx" },
  386 + appendAsTree: true,
  387 + attrs: { append: "tree" },
  388 + on: { click: _vm.handleStartMeeting }
  389 + },
  390 + [_vm._v("开始视频")]
  391 + )
  392 + ])
399 393 : _vm._e(),
400 394 !_vm.hasInvite
401 395 ? _c(
... ... @@ -422,7 +416,8 @@ var render = function() {
422 416 [_vm._v("立即下单")]
423 417 )
424 418 : _vm._e()
425   - ]
  419 + ],
  420 + 1
426 421 ),
427 422 _c(
428 423 "scroll-view",
... ... @@ -537,7 +532,7 @@ eval(&quot;__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _D_P
537 532 /***/ (function(module, exports, __webpack_require__) {
538 533  
539 534 "use strict";
540   -eval("/* WEBPACK VAR INJECTION */(function(__webpack_provided_uni_dot_requireNativePlugin, __f__) {Object.defineProperty(exports, \"__esModule\", { value: true });exports.default = void 0;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar _vuex = __webpack_require__(/*! vuex */ 12);\n\n\nvar _permission = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/permission.js */ 13));\nvar _index = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/lib/index */ 14));\nvar _TrtcDefines = __webpack_require__(/*! @/TrtcCloud/lib/TrtcDefines */ 16);\n\n\n\n\nvar _GenerateTestUserSig = __webpack_require__(/*! @/debug/GenerateTestUserSig */ 17);\n\n\nvar _TrtcLocalView = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/view/TrtcLocalView */ 19));\nvar _TrtcRemoteView = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/view/TrtcRemoteView */ 25));\n\nvar _index2 = _interopRequireDefault(__webpack_require__(/*! @/apis/index.js */ 30));\nvar _config = _interopRequireDefault(__webpack_require__(/*! @/common/config/config.js */ 38));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function ownKeys(object, enumerableOnly) {var keys = Object.keys(object);if (Object.getOwnPropertySymbols) {var symbols = Object.getOwnPropertySymbols(object);if (enumerableOnly) symbols = symbols.filter(function (sym) {return Object.getOwnPropertyDescriptor(object, sym).enumerable;});keys.push.apply(keys, symbols);}return keys;}function _objectSpread(target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i] != null ? arguments[i] : {};if (i % 2) {ownKeys(Object(source), true).forEach(function (key) {_defineProperty(target, key, source[key]);});} else if (Object.getOwnPropertyDescriptors) {Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));} else {ownKeys(Object(source)).forEach(function (key) {Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));});}}return target;}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}var TrtcEvent = __webpack_provided_uni_dot_requireNativePlugin('globalEvent');\nvar socketTask = {};var _default =\n{\n components: {\n TrtcLocalView: _TrtcLocalView.default,\n TrtcRemoteView: _TrtcRemoteView.default },\n\n data: function data() {\n return {\n hasInvite: false,\n //我\n meetingUserMy: {\n userId: 0 },\n\n //客服\n meetingUserService: {\n userId: 0 },\n\n meetingUsers: [{\n type: '供方',\n userId: '' },\n\n {\n type: '需方',\n userId: '' }],\n\n\n num: 10,\n trtcCloud: null,\n sdkAppId: 0,\n userSig: '',\n roomId: 0,\n userId: 'user_' + Math.floor(Math.random() * 100000).toString(),\n starting: false,\n userType: '等待进入',\n appScene: _TrtcDefines.TRTCAppScene.TRTCAppSceneVideoCall, // TRTCAppSceneVideoCall\n isFrontCamera: true,\n streamType: _TrtcDefines.TRTCVideoStreamType.TRTCVideoStreamTypeBig,\n remoteUserId: '',\n audioRoute: _TrtcDefines.TRTCCloudDef.TRTC_AUDIO_ROUTE_SPEAKER,\n messageList: [],\n messageContent: '',\n myUserInfo: '',\n room: {},\n shopId: 0,\n sellerUserId: 0 };\n\n },\n computed: _objectSpread({},\n (0, _vuex.mapState)(['user', 'statistics', 'common'])),\n\n onLoad: function onLoad(e) {\n this.roomId = e.roomId;\n this.sellerUserId = e.userid;\n this.userId = this.user.id.toString();\n this.shopId = e.shop_id;\n __f__(\"log\", 'onload e', e, \" at pages/meeting/meeting.nvue:135\");\n if (!e.roomId) {\n this.createRoom({\n \"name\": \"测试房间\",\n \"bodyText\": \"\",\n \"roomNo\": \"\",\n \"description\": \"\",\n \"clientId\": \"\",\n \"productId\": e.goods_id,\n \"shopId\": e.shop_id });\n\n } else {\n this.room = {\n id: e.roomId };\n\n }\n },\n onShow: function onShow() {var _this = this;\n //关闭全局的socket\n uni.$emit('closeSocket');\n socketTask = uni.connectSocket({\n url: _config.default.socketurl,\n complete: function complete() {} });\n\n socketTask.onMessage(function (msg) {\n __f__(\"log\", 'onMessage', msg, \" at pages/meeting/meeting.nvue:160\");\n });\n __f__(\"log\", 'this.user', this.user, \" at pages/meeting/meeting.nvue:162\");\n _index2.default.message.getUserTypeInfo(this.user.id).then(function (res) {\n __f__(\"log\", 'getUserTypeInfo', res, \" at pages/meeting/meeting.nvue:164\");\n _this.myUserInfo = res.data && res.data.length && res.data[0] || { type: 3 };\n });\n },\n onHide: function onHide() {\n socketTask.closeSocket();\n uni.$emit('openSocket');\n },\n mounted: function mounted() {\n if (uni.getSystemInfoSync().platform === 'android') {\n _permission.default.requestAndroidPermission('android.permission.RECORD_AUDIO');\n _permission.default.requestAndroidPermission('android.permission.CAMERA');\n }\n // 生成 userSig\n var _genTestUserSig =\n\n\n (0, _GenerateTestUserSig.genTestUserSig)(this.userId),sdkAppId = _genTestUserSig.sdkAppId,userSig = _genTestUserSig.userSig;\n this.sdkAppId = sdkAppId;\n this.userSig = userSig;\n if (!sdkAppId || !userSig) {\n uni.showToast({\n title: '请填写 sdkAppId、userSig',\n icon: 'none' });\n\n }\n },\n onUnload: function onUnload() {\n this.destroyInstance();\n __f__(\"log\", '- onUnload', \" at pages/meeting/meeting.nvue:193\");\n },\n onBackPress: function onBackPress() {\n this.destroyInstance();\n },\n methods: {\n handleToSubmitOrder: function handleToSubmitOrder() {\n uni.navigateBack();\n },\n handleInviteCustomerUser: function handleInviteCustomerUser() {var _this2 = this;\n uni.showLoading();\n this.API.message.inviteUserJoinRoom({\n roomid: this.room.id }).\n then(function (res) {\n _this2.hasInvite = true;\n }).finally(function () {\n uni.hideLoading();\n });\n },\n createRoom: function createRoom(data) {var _this3 = this;\n uni.showLoading({\n title: '正在创建房间' });\n\n _index2.default.message.postAddRoom(data).then(function (res) {\n _this3.room = res.data;\n _index2.default.message.getInviteUserJoin(_this3.sellerUserId, res.data.RoomNo);\n }).finally(function () {\n uni.hideLoading();\n });\n },\n\n sendMessage: function sendMessage() {\n var that = this;\n that.messageList.push({\n author: '我',\n content: that.messageContent });\n\n that.messageContent = '';\n socketTask.send({\n data: JSON.stringify({\n formUserId: this.userId,\n contentType: \"\",\n content: this.messageContent,\n sendTime: new Date(),\n method: 'send_to_room',\n RoomNo: this.room.RoomNo,\n RoomName: this.room.Name,\n IsRoom: true }),\n\n success: function success(res) {\n },\n fail: function fail(e) {\n },\n complete: function complete() {\n } });\n\n },\n handleStartMeeting: function handleStartMeeting() {var _this4 = this;\n this.starting = true;\n this.$nextTick(function () {\n _this4.createTrtcCloud();\n _this4.enterRoom();\n _this4.startLocalPreview();\n });\n },\n handleEndtMeeting: function handleEndtMeeting() {\n this.meetingUsers.splice(0, 2, {\n type: '等待进入',\n userId: '' },\n {\n type: '等待进入',\n userId: '' });\n\n this.startLocalPreview();\n this.exitRoom();\n this.destroyInstance();\n },\n\n bindInputChange: function bindInputChange(event, type) {\n var value = event.detail.value;\n switch (type) {\n case 'roomId':{\n this.roomId = value;\n break;\n }\n case 'userId':{\n this.userId = value;\n break;\n }}\n\n },\n destroyInstance: function destroyInstance() {\n if (this.trtcCloud) {\n _index.default.destroyInstance();\n this.trtcCloud = null;\n uni.showToast({\n title: '销毁实例',\n icon: 'none' });\n\n }\n },\n createTrtcCloud: function createTrtcCloud() {\n uni.showToast({\n title: '创建实例 ',\n icon: 'none' });\n\n this.trtcCloud = _index.default.createInstance();\n this.handleEvents();\n this.sdkAppId && uni.$createTrtcCloudUpload(this.sdkAppId);\n },\n enterRoom: function enterRoom() {\n try {var\n\n sdkAppId =\n\n\n this.sdkAppId,appScene = this.appScene,userSig = this.userSig;\n var param = {\n roomId: this.room.id,\n userId: this.userId,\n sdkAppId: sdkAppId,\n userSig: userSig };\n\n this.trtcCloud.enterRoom(param, appScene);\n this.sdkAppId && uni.$enterRoomSuccessUpload(this.sdkAppId);\n } catch (error) {\n this.messageList.unshift({\n content: '`enterRoom error = ${JSON.stringify(error)}`' });\n\n this.sdkAppId && uni.$enterRoomFailedUpload(this.sdkAppId, JSON.stringify(error));\n }\n },\n exitRoom: function exitRoom() {\n try {\n this.starting = false;\n this.stopLocalPreview();\n this.stopRemoteView();\n this.trtcCloud.exitRoom();\n } catch (e) {\n // TODO handle the exception\n }\n },\n startLocalPreview: function startLocalPreview() {\n this.trtcCloud.startLocalPreview(this.isFrontCamera, this.userId);\n this.messageList.unshift({\n content: 'startLocalPreview' });\n\n this.sdkAppId && uni.$startLocalPreviewUpload(this.sdkAppId);\n },\n stopLocalPreview: function stopLocalPreview() {\n this.trtcCloud.stopLocalPreview();\n },\n startRemoteView: function startRemoteView(userId) {var _this5 = this;\n this.messageList.unshift({\n content: 'startRemoteView' });\n\n var item = this.meetingUsers.find(function (t) {return t.userId == userId;});\n if (item) {\n this.$nextTick(function () {\n _this5.trtcCloud.startRemoteView(item.userId, _this5.streamType, item.userId);\n _this5.sdkAppId && uni.$startRemoteViewSuccessUpload(_this5.sdkAppId);\n _this5.messageList.unshift({\n content: \"startRemoteView userId = \".concat(item.userId) });\n\n });\n }\n item.starting = true;\n this.meetingUsers.push(this.meetingUsers.pop());\n },\n stopRemoteView: function stopRemoteView(userId) {\n var index = this.meetingUsers.findIndex(function (t) {return t.userId == userId;});\n if (index > -1) {\n this.meetingUsers[index].starting = false;\n this.meetingUsers.push(this.meetingUsers.pop());\n this.trtcCloud.stopRemoteView(userId, this.streamType);\n }\n },\n // 听筒、免提 切换\n switchAudioRoute: function switchAudioRoute() {\n this.audioRoute = this.audioRoute === _TrtcDefines.TRTCCloudDef.TRTC_AUDIO_ROUTE_SPEAKER ? _TrtcDefines.TRTCCloudDef.\n TRTC_AUDIO_ROUTE_EARPIECE : _TrtcDefines.TRTCCloudDef.TRTC_AUDIO_ROUTE_SPEAKER;\n this.trtcCloud.setAudioRoute(this.audioRoute);\n },\n handleEvents: function handleEvents() {var _this6 = this;\n this.trtcCloud.on('onWarning', function (res) {\n uni.showToast({\n title: \"onWarning: \".concat(JSON.stringify(res)),\n icon: 'none' });\n\n });\n this.trtcCloud.on('onError', function (res) {\n _this6.messageList.unshift({\n content: \"error: \".concat(JSON.stringify(res)) });\n\n _this6.sdkAppId && uni.$onErrorUpload(_this6.sdkAppId, JSON.stringify(res));\n });\n this.trtcCloud.on('onEnterRoom', function (result) {\n __f__(\"log\", \"- onEnterRoom = \".concat(result), \" at pages/meeting/meeting.nvue:390\");\n if (result > 0) {\n _this6.messageList.unshift({\n content: \"\\u8FDB\\u623F\\u6210\\u529F\\uFF0C\\u8017\\u65F6: \".concat(result, \"ms\") });\n\n } else {\n __f__(\"log\", \"enter room failed\\uFF0Cerror code = \".concat(result), \" at pages/meeting/meeting.nvue:396\");\n }\n });\n this.trtcCloud.on('onExitRoom', function (reason) {\n var reasonList = ['主动调用 exitRoom 退房', '被服务器踢出当前房间', '当前房间整个被解散'];\n _this6.messageList.unshift({\n content: \"\\u9000\\u623F \".concat(reasonList[reason]) });\n\n });\n this.trtcCloud.on('onFirstVideoFrame', function (res) {\n __f__(\"log\", \"\\u6E32\\u67D3\\u7684\\u9996\\u5E27\\u753B\\u9762\\u54CD\\u5E94 = \".concat(JSON.stringify(res)), \" at pages/meeting/meeting.nvue:406\");\n });\n this.trtcCloud.on('onRemoteUserEnterRoom', function (userId) {\n if (_this6.meetingUsers.length >= 2) {\n _this6.meetingUsers = _this6.meetingUsers.filter(function (t) {return t.starting;});\n }\n if (_this6.meetingUsers.length < 2 && userId != _this6.userId) {\n _this6.meetingUsers.push({\n userId: userId,\n type: '用户类型' });\n\n if (_this6.meetingUsers.length < 2) {\n _this6.meetingUsers.push({\n type: '等待进入' });\n\n }\n _this6.messageList.unshift({\n content: \"\\u7528\\u6237\\u8FDB\\u623F: userId = \".concat(userId) });\n\n } else {\n _this6.messageList.unshift({\n content: \"\\u7528\\u6237\\u8FDB\\u623F\\u5931\\u8D25\\uFF0C\\u623F\\u95F4\\u5DF2\\u6EE1: userId = \".concat(userId) });\n\n }\n });\n this.trtcCloud.on('onRemoteUserLeaveRoom', function (userId) {\n var index = _this6.meetingUsers.findIndex(function (t) {return t.userId == userId;});\n if (index >= 0) {\n _this6.meetingUsers.splice(index, 1);\n }\n if (_this6.meetingUsers.length < 2) {\n _this6.meetingUsers.push({\n type: '等待进入' });\n\n }\n _this6.messageList.unshift({\n content: \"\\u7528\\u6237\\u79BB\\u5F00\\u623F\\u95F4: userId = \".concat(userId) });\n\n\n\n });\n this.trtcCloud.on('onUserVideoAvailable', function (res) {var\n\n userId =\n\n res.userId,available = res.available;\n _this6.messageList.unshift({\n content: \"onUserVideoAvailable = \".concat(JSON.stringify(res)) });\n\n if (userId && available) {\n _this6.startRemoteView(userId);\n } else {\n _this6.stopRemoteView(userId);\n }\n });\n this.trtcCloud.on('onExitRoom', function (res) {\n __f__(\"log\", \"onExitRoom = \".concat(JSON.stringify(res)), \" at pages/meeting/meeting.nvue:462\");\n });\n } } };exports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-hbuilderx/packages/uni-app-plus-nvue/dist/require-native-plugin.js */ 10)[\"default\"], __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 11)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbWVldGluZy9tZWV0aW5nLm52dWUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZEQTs7O0FBR0E7QUFDQTtBQUNBOzs7OztBQUtBOzs7QUFHQTtBQUNBOztBQUVBO0FBQ0EsK0Ysd25DQUZBO0FBR0Esb0I7QUFDQTtBQUNBO0FBQ0EseUNBREE7QUFFQSwyQ0FGQSxFQURBOztBQUtBLE1BTEEsa0JBS0E7QUFDQTtBQUNBLHNCQURBO0FBRUE7QUFDQTtBQUNBLGlCQURBLEVBSEE7O0FBTUE7QUFDQTtBQUNBLGlCQURBLEVBUEE7O0FBVUE7QUFDQSxrQkFEQTtBQUVBLGtCQUZBOztBQUlBO0FBQ0Esa0JBREE7QUFFQSxrQkFGQSxFQUpBLENBVkE7OztBQW1CQSxhQW5CQTtBQW9CQSxxQkFwQkE7QUFxQkEsaUJBckJBO0FBc0JBLGlCQXRCQTtBQXVCQSxlQXZCQTtBQXdCQSxxRUF4QkE7QUF5QkEscUJBekJBO0FBMEJBLHNCQTFCQTtBQTJCQSwrREEzQkEsRUEyQkE7QUFDQSx5QkE1QkE7QUE2QkEseUVBN0JBO0FBOEJBLHNCQTlCQTtBQStCQSxvRUEvQkE7QUFnQ0EscUJBaENBO0FBaUNBLHdCQWpDQTtBQWtDQSxvQkFsQ0E7QUFtQ0EsY0FuQ0E7QUFvQ0EsZUFwQ0E7QUFxQ0EscUJBckNBOztBQXVDQSxHQTdDQTtBQThDQTtBQUNBLHVEQURBLENBOUNBOztBQWlEQSxRQWpEQSxrQkFpREEsQ0FqREEsRUFpREE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQURBO0FBRUEsc0JBRkE7QUFHQSxvQkFIQTtBQUlBLHlCQUpBO0FBS0Esc0JBTEE7QUFNQSwrQkFOQTtBQU9BLDJCQVBBOztBQVNBLEtBVkEsTUFVQTtBQUNBO0FBQ0Esb0JBREE7O0FBR0E7QUFDQSxHQXRFQTtBQXVFQSxRQXZFQSxvQkF1RUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FEQTtBQUVBLGNBRkEsc0JBRUEsRUFGQTs7QUFJQTtBQUNBO0FBQ0EsS0FGQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FIQTtBQUlBLEdBdEZBO0FBdUZBLFFBdkZBLG9CQXVGQTtBQUNBO0FBQ0E7QUFDQSxHQTFGQTtBQTJGQSxTQTNGQSxxQkEyRkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBTEE7OztBQVNBLHlEQVRBLENBT0EsUUFQQSxtQkFPQSxRQVBBLENBUUEsT0FSQSxtQkFRQSxPQVJBO0FBVUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FEQTtBQUVBLG9CQUZBOztBQUlBO0FBQ0EsR0E3R0E7QUE4R0EsVUE5R0Esc0JBOEdBO0FBQ0E7QUFDQTtBQUNBLEdBakhBO0FBa0hBLGFBbEhBLHlCQWtIQTtBQUNBO0FBQ0EsR0FwSEE7QUFxSEE7QUFDQSx1QkFEQSxpQ0FDQTtBQUNBO0FBQ0EsS0FIQTtBQUlBLDRCQUpBLHNDQUlBO0FBQ0E7QUFDQTtBQUNBLDRCQURBO0FBRUEsVUFGQSxDQUVBO0FBQ0E7QUFDQSxPQUpBLEVBSUEsT0FKQSxDQUlBO0FBQ0E7QUFDQSxPQU5BO0FBT0EsS0FiQTtBQWNBLGNBZEEsc0JBY0EsSUFkQSxFQWNBO0FBQ0E7QUFDQSx1QkFEQTs7QUFHQTtBQUNBO0FBQ0E7QUFDQSxPQUhBLEVBR0EsT0FIQSxDQUdBO0FBQ0E7QUFDQSxPQUxBO0FBTUEsS0F4QkE7O0FBMEJBLGVBMUJBLHlCQTBCQTtBQUNBO0FBQ0E7QUFDQSxtQkFEQTtBQUVBLG9DQUZBOztBQUlBO0FBQ0E7QUFDQTtBQUNBLGlDQURBO0FBRUEseUJBRkE7QUFHQSxzQ0FIQTtBQUlBLDhCQUpBO0FBS0EsZ0NBTEE7QUFNQSxrQ0FOQTtBQU9BLGtDQVBBO0FBUUEsc0JBUkEsR0FEQTs7QUFXQSxlQVhBLG1CQVdBLEdBWEEsRUFXQTtBQUNBLFNBWkE7QUFhQSxZQWJBLGdCQWFBLENBYkEsRUFhQTtBQUNBLFNBZEE7QUFlQSxnQkFmQSxzQkFlQTtBQUNBLFNBaEJBOztBQWtCQSxLQW5EQTtBQW9EQSxzQkFwREEsZ0NBb0RBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BSkE7QUFLQSxLQTNEQTtBQTREQSxxQkE1REEsK0JBNERBO0FBQ0E7QUFDQSxvQkFEQTtBQUVBLGtCQUZBO0FBR0E7QUFDQSxvQkFEQTtBQUVBLGtCQUZBLEVBSEE7O0FBT0E7QUFDQTtBQUNBO0FBQ0EsS0F2RUE7O0FBeUVBLG1CQXpFQSwyQkF5RUEsS0F6RUEsRUF5RUEsSUF6RUEsRUF5RUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQVJBOztBQVVBLEtBckZBO0FBc0ZBLG1CQXRGQSw2QkFzRkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQURBO0FBRUEsc0JBRkE7O0FBSUE7QUFDQSxLQS9GQTtBQWdHQSxtQkFoR0EsNkJBZ0dBO0FBQ0E7QUFDQSxzQkFEQTtBQUVBLG9CQUZBOztBQUlBO0FBQ0E7QUFDQTtBQUNBLEtBeEdBO0FBeUdBLGFBekdBLHVCQXlHQTtBQUNBOztBQUVBLGdCQUZBOzs7QUFLQSxZQUxBLENBRUEsUUFGQSxDQUdBLFFBSEEsR0FLQSxJQUxBLENBR0EsUUFIQSxDQUlBLE9BSkEsR0FLQSxJQUxBLENBSUEsT0FKQTtBQU1BO0FBQ0EsOEJBREE7QUFFQSw2QkFGQTtBQUdBLDRCQUhBO0FBSUEsMEJBSkE7O0FBTUE7QUFDQTtBQUNBLE9BZEEsQ0FjQTtBQUNBO0FBQ0EsaUVBREE7O0FBR0E7QUFDQTtBQUNBLEtBOUhBO0FBK0hBLFlBL0hBLHNCQStIQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUxBLENBS0E7QUFDQTtBQUNBO0FBQ0EsS0F4SUE7QUF5SUEscUJBeklBLCtCQXlJQTtBQUNBO0FBQ0E7QUFDQSxvQ0FEQTs7QUFHQTtBQUNBLEtBL0lBO0FBZ0pBLG9CQWhKQSw4QkFnSkE7QUFDQTtBQUNBLEtBbEpBO0FBbUpBLG1CQW5KQSwyQkFtSkEsTUFuSkEsRUFtSkE7QUFDQTtBQUNBLGtDQURBOztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9FQURBOztBQUdBLFNBTkE7QUFPQTtBQUNBO0FBQ0E7QUFDQSxLQW5LQTtBQW9LQSxrQkFwS0EsMEJBb0tBLE1BcEtBLEVBb0tBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0EzS0E7QUE0S0E7QUFDQSxvQkE3S0EsOEJBNktBO0FBQ0E7QUFDQSwrQkFEQSxHQUNBLGtEQURBO0FBRUE7QUFDQSxLQWpMQTtBQWtMQSxnQkFsTEEsMEJBa0xBO0FBQ0E7QUFDQTtBQUNBLDBEQURBO0FBRUEsc0JBRkE7O0FBSUEsT0FMQTtBQU1BO0FBQ0E7QUFDQSx3REFEQTs7QUFHQTtBQUNBLE9BTEE7QUFNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdGQURBOztBQUdBLFNBSkEsTUFJQTtBQUNBO0FBQ0E7QUFDQSxPQVRBO0FBVUE7QUFDQTtBQUNBO0FBQ0EsNkRBREE7O0FBR0EsT0FMQTtBQU1BO0FBQ0E7QUFDQSxPQUZBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBREE7QUFFQSx3QkFGQTs7QUFJQTtBQUNBO0FBQ0EsMEJBREE7O0FBR0E7QUFDQTtBQUNBLHlFQURBOztBQUdBLFNBYkEsTUFhQTtBQUNBO0FBQ0EsbUhBREE7O0FBR0E7QUFDQSxPQXRCQTtBQXVCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQURBOztBQUdBO0FBQ0E7QUFDQSxtRkFEQTs7OztBQUtBLE9BZkE7QUFnQkE7O0FBRUEsY0FGQTs7QUFJQSxXQUpBLENBRUEsTUFGQSxDQUdBLFNBSEEsR0FJQSxHQUpBLENBR0EsU0FIQTtBQUtBO0FBQ0Esd0VBREE7O0FBR0E7QUFDQTtBQUNBLFNBRkEsTUFFQTtBQUNBO0FBQ0E7QUFDQSxPQWJBO0FBY0E7QUFDQTtBQUNBLE9BRkE7QUFHQSxLQTFRQSxFQXJIQSxFIiwiZmlsZSI6IjkuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcblx0PHZpZXc+XHJcblx0XHQ8aW1hZ2Ugc3JjPVwiLi4vLi4vc3RhdGljL2hvbWUvYmFuY2syLnBuZ1wiIHN0eWxlPVwid2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTtcIiBtb2RlPVwid2lkdGhGaXhcIj48L2ltYWdlPlxyXG5cdFx0PHZpZXcgY2xhc3M9XCJiYWNrXCI+XHJcblx0XHRcdDwhLS0g5bmz5Y+w5a6i5pyNIC0tPlxyXG5cdFx0XHQ8dmlldyBjbGFzcz1cImxpc3QxXCIgc3R5bGU9XCJhbGlnbi1pdGVtczogY2VudGVyO292ZXJmbG93OiBoaWRkZW47XCI+XHJcblx0XHRcdFx0PHRleHQgY2xhc3M9XCJuYW1lXCI+e3sgdXNlclR5cGUgfHwgJ+etieW+hei/m+WFpScgfX08L3RleHQ+XHJcblx0XHRcdFx0PHZpZXcgc3R5bGU9XCJoZWlnaHQ6MzYwcnB4O2ZsZXgtZGlyZWN0aW9uOiByb3c7anVzdGlmeS1jb250ZW50OiBjZW50ZXI7bWFyZ2luOiAwIGF1dG87XCIgaWQ9J3Jvb3QnPlxyXG5cdFx0XHRcdFx0PHRydGMtbG9jYWwtdmlldyB2LWlmPVwibWVldGluZ1VzZXJTZXJ2aWNlLnVzZXJJZCAmJiBzdGFydGluZ1wiIDp2aWV3SWQ9XCJtZWV0aW5nVXNlclNlcnZpY2UudXNlcklkXCJcclxuXHRcdFx0XHRcdFx0c3R5bGU9XCJoZWlnaHQ6IDM4MHJweDt3aWR0aDogMzYwcnB4O1wiPlxyXG5cdFx0XHRcdFx0PC90cnRjLWxvY2FsLXZpZXc+XHJcblx0XHRcdFx0XHQ8aW1hZ2Ugdi1lbHNlIHNyYz1cIi4uLy4uL3N0YXRpYy9ob21lL3JlbiAoMSkud2VicFwiXHJcblx0XHRcdFx0XHRcdHN0eWxlPVwid2lkdGg6IDM4MHJweDtoZWlnaHQ6IDM2MHJweDtib3JkZXItcmFkaXVzOiA0MHJweDtcIiBtb2RlPVwiYXNwZWN0RmlsbFwiPlxyXG5cdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8dmlldyBzdHlsZT1cImZsZXgtZGlyZWN0aW9uOiByb3c7anVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7d2lkdGg6IDEwMHZ3O1wiPlxyXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwibGlzdDFcIiBzdHlsZT1cIndpZHRoOiAzMDBycHg7bWFyZ2luLXJpZ2h0OiAyMHB4O1wiIHYtZm9yPVwiaXRlbSBpbiBtZWV0aW5nVXNlcnNcIj5cclxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwibmFtZVwiPnt7IGl0ZW0udHlwZSB8fCAn562J5b6F6L+b5YWlJyB9fTwvdGV4dD5cclxuXHRcdFx0XHRcdDx2aWV3IHN0eWxlPVwid2lkdGg6IDEwMCU7IGhlaWdodDozNjBycHg7XCI+XHJcblx0XHRcdFx0XHRcdDx0cnRjLXJlbW90ZS12aWV3IHYtaWY9XCJpdGVtICYmIGl0ZW0udXNlcklkICYmIGl0ZW0uc3RhcnRpbmdcIiA6dXNlcklkPVwiaXRlbS51c2VySWRcIlxyXG5cdFx0XHRcdFx0XHRcdDp2aWV3SWQ9XCJpdGVtLnVzZXJJZFwiIHN0eWxlPVwiaGVpZ2h0OiAzNjBycHg7d2lkdGg6IDMwMHJweDtib3JkZXI6IDFweCBzb2xpZCAjZmZmO1wiPlxyXG5cdFx0XHRcdFx0XHQ8L3RydGMtcmVtb3RlLXZpZXc+XHJcblx0XHRcdFx0XHRcdDxpbWFnZSB2LWVsc2Ugc3JjPVwiLi4vLi4vc3RhdGljL2hvbWUvcmVuICgyKS53ZWJwXCJcclxuXHRcdFx0XHRcdFx0XHRzdHlsZT1cIndpZHRoOiAzMDBycHg7aGVpZ2h0OiAzNjBycHg7Ym9yZGVyLXJhZGl1czogNDBycHg7XCIgbW9kZT1cImFzcGVjdEZpbGxcIj5cclxuXHRcdFx0XHRcdFx0PC9pbWFnZT5cclxuXHRcdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdFx0PHZpZXcgc3R5bGU9XCJmbGV4LWRpcmVjdGlvbjogcm93O2p1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1wiPlxyXG5cdFx0XHRcdDx0ZXh0IGNsYXNzPVwiYnRuXCIgdi1pZj1cIm1lZXRpbmdVc2Vyc1swXSAmJiBtZWV0aW5nVXNlcnNbMF0uc3RhcnRpbmdcIiBAY2xpY2s9XCJoYW5kbGVFbmR0TWVldGluZ1wiXHJcblx0XHRcdFx0XHRzdHlsZT1cIm1hcmdpbi1yaWdodDogMjBweDtcIj5cclxuXHRcdFx0XHRcdOaMguaWrVxyXG5cdFx0XHRcdDwvdGV4dD5cclxuXHRcdFx0XHQ8dGV4dCBjbGFzcz1cImJ0blwiIHYtZWxzZSBAY2xpY2s9XCJoYW5kbGVTdGFydE1lZXRpbmdcIiB2LWlmPVwibXlVc2VySW5mbyYmbXlVc2VySW5mby50eXBlPT00XCI+XHJcblx0XHRcdFx0XHTlvIDlp4vop4bpopFcclxuXHRcdFx0XHQ8L3RleHQ+XHJcblx0XHRcdFx0PHRleHQgY2xhc3M9XCJidG5cIiBAY2xpY2s9XCJoYW5kbGVJbnZpdGVDdXN0b21lclVzZXJcIiB2LWlmPVwiIWhhc0ludml0ZVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAyMHJweDtcIj5cclxuXHRcdFx0XHRcdOmCgOivt+WuouacjVxyXG5cdFx0XHRcdDwvdGV4dD5cclxuXHRcdFx0XHQ8dGV4dCAgY2xhc3M9XCJidG5cIiB2LWlmPVwibXlVc2VySW5mbyAmJiBteVVzZXJJbmZvLnR5cGUhPTRcIiBAY2xpY2s9XCJoYW5kbGVUb1N1Ym1pdE9yZGVyXCI+XHJcblx0XHRcdFx0XHTnq4vljbPkuIvljZVcclxuXHRcdFx0XHQ8L3RleHQ+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdFx0PHNjcm9sbC12aWV3IDpzY3JvbGwteT1cInRydWVcIiBjbGFzcz1cIm1lc3NhZ2VcIj5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cIlwiIHN0eWxlPVwid2lkdGg6IDMyMHB4O1wiPlxyXG5cdFx0XHRcdFx0PHZpZXcgY2xhc3M9XCJcIiB2LWZvcj1cIml0ZW0gaW4gbWVzc2FnZUxpc3RcIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7ZmxleC1kaXJlY3Rpb246IHJvdztmbGV4LXdyYXA6IHdyYXA7XCI+XHJcblx0XHRcdFx0XHRcdDx0ZXh0IHN0eWxlPVwiY29sb3I6ICNGRkRBOTcgO1wiPnt7aXRlbS5hdXRob3IgfHwgJ+ezu+e7nyd9fTo8L3RleHQ+XHJcblx0XHRcdFx0XHRcdDx0ZXh0IHN0eWxlPVwiY29sb3I6ICNmZmY7bWFyZ2luLWxlZnQ6IDEwcnB4O1wiPlxyXG5cdFx0XHRcdFx0XHRcdHt7aXRlbS5jb250ZW50fX1cclxuXHRcdFx0XHRcdFx0PC90ZXh0PlxyXG5cdFx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHRcdDwvdmlldz5cclxuXHRcdFx0PC9zY3JvbGwtdmlldz5cclxuXHRcdFx0PHZpZXdcclxuXHRcdFx0XHRzdHlsZT1cInBvc2l0aW9uOiBmaXhlZDtib3R0b206IDA7bGVmdDogMDtyaWdodDogMDtqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjthbGlnbi1pdGVtczogY2VudGVyO2JvdHRvbTogMjBweDtcIj5cclxuXHRcdFx0XHQ8aW5wdXQgY2xhc3M9XCJpbnB1dFwiIHBsYWNlaG9sZGVyPVwi5Zue5aSNXCIgcGxhY2Vob2xkZXItc3R5bGU9XCJjb2xvcjojZmZmXCIgdi1tb2RlbD1cIm1lc3NhZ2VDb250ZW50XCIgQGNvbmZpcm09XCJzZW5kTWVzc2FnZVwiIGNvbmZpcm0tdHlwZT1cInNlbmRcIiAvPlxyXG5cdFx0XHQ8L3ZpZXc+XHJcblx0XHQ8L3ZpZXc+XHJcblx0PC92aWV3PlxyXG48L3RlbXBsYXRlPlxyXG48c2NyaXB0PlxyXG5cdGltcG9ydCB7XHJcblx0XHRtYXBTdGF0ZVxyXG5cdH0gZnJvbSAndnVleCc7XHJcblx0aW1wb3J0IHBlcm1pc2lvbiBmcm9tIFwiQC9UcnRjQ2xvdWQvcGVybWlzc2lvbi5qc1wiO1xyXG5cdGltcG9ydCBUcnRjQ2xvdWQgZnJvbSAnQC9UcnRjQ2xvdWQvbGliL2luZGV4JztcclxuXHRpbXBvcnQge1xyXG5cdFx0VFJUQ0FwcFNjZW5lLFxyXG5cdFx0VFJUQ1ZpZGVvU3RyZWFtVHlwZSxcclxuXHRcdFRSVENDbG91ZERlZlxyXG5cdH0gZnJvbSAnQC9UcnRjQ2xvdWQvbGliL1RydGNEZWZpbmVzJztcclxuXHRpbXBvcnQge1xyXG5cdFx0Z2VuVGVzdFVzZXJTaWdcclxuXHR9IGZyb20gJ0AvZGVidWcvR2VuZXJhdGVUZXN0VXNlclNpZyc7XHJcblx0aW1wb3J0IFRydGNMb2NhbFZpZXcgZnJvbSAnQC9UcnRjQ2xvdWQvdmlldy9UcnRjTG9jYWxWaWV3JztcclxuXHRpbXBvcnQgVHJ0Y1JlbW90ZVZpZXcgZnJvbSAnQC9UcnRjQ2xvdWQvdmlldy9UcnRjUmVtb3RlVmlldyc7XHJcblx0Y29uc3QgVHJ0Y0V2ZW50ID0gdW5pLnJlcXVpcmVOYXRpdmVQbHVnaW4oJ2dsb2JhbEV2ZW50Jyk7XHJcblx0aW1wb3J0IEFQSSBmcm9tICdAL2FwaXMvaW5kZXguanMnXHJcblx0aW1wb3J0IGNvbmZpZyBmcm9tICdAL2NvbW1vbi9jb25maWcvY29uZmlnLmpzJ1xyXG5cdGxldCBzb2NrZXRUYXNrID0ge307XHJcblx0ZXhwb3J0IGRlZmF1bHQge1xyXG5cdFx0Y29tcG9uZW50czoge1xyXG5cdFx0XHRUcnRjTG9jYWxWaWV3OiBUcnRjTG9jYWxWaWV3LFxyXG5cdFx0XHRUcnRjUmVtb3RlVmlldzogVHJ0Y1JlbW90ZVZpZXcsXHJcblx0XHR9LFxyXG5cdFx0ZGF0YSgpIHtcclxuXHRcdFx0cmV0dXJuIHtcclxuXHRcdFx0XHRoYXNJbnZpdGU6ZmFsc2UsXHJcblx0XHRcdFx0Ly/miJFcclxuXHRcdFx0XHRtZWV0aW5nVXNlck15OiB7XHJcblx0XHRcdFx0XHR1c2VySWQ6IDBcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdC8v5a6i5pyNXHJcblx0XHRcdFx0bWVldGluZ1VzZXJTZXJ2aWNlOiB7XHJcblx0XHRcdFx0XHR1c2VySWQ6IDBcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdG1lZXRpbmdVc2VyczogW3tcclxuXHRcdFx0XHRcdFx0dHlwZTogJ+S+m+aWuScsXHJcblx0XHRcdFx0XHRcdHVzZXJJZDogJydcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHR7XHJcblx0XHRcdFx0XHRcdHR5cGU6ICfpnIDmlrknLFxyXG5cdFx0XHRcdFx0XHR1c2VySWQ6ICcnXHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdF0sXHJcblx0XHRcdFx0bnVtOiAxMCxcclxuXHRcdFx0XHR0cnRjQ2xvdWQ6IG51bGwsXHJcblx0XHRcdFx0c2RrQXBwSWQ6IDAsXHJcblx0XHRcdFx0dXNlclNpZzogJycsXHJcblx0XHRcdFx0cm9vbUlkOiAwLFxyXG5cdFx0XHRcdHVzZXJJZDogJ3VzZXJfJyArIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDAwMCkudG9TdHJpbmcoKSxcclxuXHRcdFx0XHRzdGFydGluZzogZmFsc2UsXHJcblx0XHRcdFx0dXNlclR5cGU6ICfnrYnlvoXov5vlhaUnLFxyXG5cdFx0XHRcdGFwcFNjZW5lOiBUUlRDQXBwU2NlbmUuVFJUQ0FwcFNjZW5lVmlkZW9DYWxsLCAvLyBUUlRDQXBwU2NlbmVWaWRlb0NhbGxcclxuXHRcdFx0XHRpc0Zyb250Q2FtZXJhOiB0cnVlLFxyXG5cdFx0XHRcdHN0cmVhbVR5cGU6IFRSVENWaWRlb1N0cmVhbVR5cGUuVFJUQ1ZpZGVvU3RyZWFtVHlwZUJpZyxcclxuXHRcdFx0XHRyZW1vdGVVc2VySWQ6ICcnLFxyXG5cdFx0XHRcdGF1ZGlvUm91dGU6IFRSVENDbG91ZERlZi5UUlRDX0FVRElPX1JPVVRFX1NQRUFLRVIsXHJcblx0XHRcdFx0bWVzc2FnZUxpc3Q6IFtdLFxyXG5cdFx0XHRcdG1lc3NhZ2VDb250ZW50OicnLFxyXG5cdFx0XHRcdG15VXNlckluZm86JycsXHJcblx0XHRcdFx0cm9vbTp7fSxcclxuXHRcdFx0XHRzaG9wSWQ6MCxcclxuXHRcdFx0XHRzZWxsZXJVc2VySWQ6MFxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0Y29tcHV0ZWQ6IHtcclxuXHRcdFx0Li4ubWFwU3RhdGUoWyd1c2VyJywgJ3N0YXRpc3RpY3MnLCAnY29tbW9uJ10pXHJcblx0XHR9LFxyXG5cdFx0b25Mb2FkKGUpIHtcclxuXHRcdFx0dGhpcy5yb29tSWQgPSBlLnJvb21JZDtcclxuXHRcdFx0dGhpcy5zZWxsZXJVc2VySWQgPSBlLnVzZXJpZDtcclxuXHRcdFx0dGhpcy51c2VySWQgPSB0aGlzLnVzZXIuaWQudG9TdHJpbmcoKTtcclxuXHRcdFx0dGhpcy5zaG9wSWQgPSBlLnNob3BfaWQ7XHJcblx0XHRcdGNvbnNvbGUubG9nKCdvbmxvYWQgZScsZSk7XHJcblx0XHRcdGlmICghZS5yb29tSWQpIHtcclxuXHRcdFx0XHR0aGlzLmNyZWF0ZVJvb20oe1xyXG5cdFx0XHRcdFx0XCJuYW1lXCI6IFwi5rWL6K+V5oi/6Ze0XCIsXHJcblx0XHRcdFx0XHRcImJvZHlUZXh0XCI6IFwiXCIsXHJcblx0XHRcdFx0XHRcInJvb21Ob1wiOiBcIlwiLFxyXG5cdFx0XHRcdFx0XCJkZXNjcmlwdGlvblwiOiBcIlwiLFxyXG5cdFx0XHRcdFx0XCJjbGllbnRJZFwiOiBcIlwiLFxyXG5cdFx0XHRcdFx0XCJwcm9kdWN0SWRcIjogZS5nb29kc19pZCxcclxuXHRcdFx0XHRcdFwic2hvcElkXCI6IGUuc2hvcF9pZFxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9ZWxzZXtcclxuXHRcdFx0XHR0aGlzLnJvb20gPSB7XHJcblx0XHRcdFx0XHRpZDplLnJvb21JZFxyXG5cdFx0XHRcdH07XHJcblx0XHRcdH1cclxuXHRcdH0sXHJcblx0XHRvblNob3coKSB7XHJcblx0XHRcdC8v5YWz6Zet5YWo5bGA55qEc29ja2V0XHJcblx0XHRcdHVuaS4kZW1pdCgnY2xvc2VTb2NrZXQnKVxyXG5cdFx0XHRzb2NrZXRUYXNrID0gdW5pLmNvbm5lY3RTb2NrZXQoe1xyXG5cdFx0XHRcdHVybDogY29uZmlnLnNvY2tldHVybCxcclxuXHRcdFx0XHRjb21wbGV0ZSgpe30sXHJcblx0XHRcdH0pO1xyXG5cdFx0XHRzb2NrZXRUYXNrLm9uTWVzc2FnZSgobXNnKT0+e1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKCdvbk1lc3NhZ2UnLG1zZyk7XHJcblx0XHRcdH0pO1xyXG5cdFx0XHRjb25zb2xlLmxvZygndGhpcy51c2VyJyx0aGlzLnVzZXIpO1xyXG5cdFx0XHRBUEkubWVzc2FnZS5nZXRVc2VyVHlwZUluZm8odGhpcy51c2VyLmlkKS50aGVuKHJlcz0+e1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKCdnZXRVc2VyVHlwZUluZm8nLHJlcylcclxuXHRcdFx0XHR0aGlzLm15VXNlckluZm8gPSByZXMuZGF0YSAmJiByZXMuZGF0YS5sZW5ndGggJiYgcmVzLmRhdGFbMF0gfHwge3R5cGU6M307XHJcblx0XHRcdH0pXHJcblx0XHR9LFxyXG5cdFx0b25IaWRlKCkge1xyXG5cdFx0XHRzb2NrZXRUYXNrLmNsb3NlU29ja2V0KCk7XHJcblx0XHRcdHVuaS4kZW1pdCgnb3BlblNvY2tldCcpXHJcblx0XHR9LFxyXG5cdFx0bW91bnRlZCgpIHtcclxuXHRcdFx0aWYgKHVuaS5nZXRTeXN0ZW1JbmZvU3luYygpLnBsYXRmb3JtID09PSAnYW5kcm9pZCcpIHtcclxuXHRcdFx0XHRwZXJtaXNpb24ucmVxdWVzdEFuZHJvaWRQZXJtaXNzaW9uKCdhbmRyb2lkLnBlcm1pc3Npb24uUkVDT1JEX0FVRElPJyk7XHJcblx0XHRcdFx0cGVybWlzaW9uLnJlcXVlc3RBbmRyb2lkUGVybWlzc2lvbignYW5kcm9pZC5wZXJtaXNzaW9uLkNBTUVSQScpO1xyXG5cdFx0XHR9XHJcblx0XHRcdC8vIOeUn+aIkCB1c2VyU2lnXHJcblx0XHRcdGNvbnN0IHtcclxuXHRcdFx0XHRzZGtBcHBJZCxcclxuXHRcdFx0XHR1c2VyU2lnXHJcblx0XHRcdH0gPSBnZW5UZXN0VXNlclNpZyh0aGlzLnVzZXJJZCk7XHJcblx0XHRcdHRoaXMuc2RrQXBwSWQgPSBzZGtBcHBJZDtcclxuXHRcdFx0dGhpcy51c2VyU2lnID0gdXNlclNpZztcclxuXHRcdFx0aWYgKCFzZGtBcHBJZCB8fCAhdXNlclNpZykge1xyXG5cdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0dGl0bGU6ICfor7floavlhpkgc2RrQXBwSWTjgIF1c2VyU2lnJyxcclxuXHRcdFx0XHRcdGljb246ICdub25lJ1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0b25VbmxvYWQoKSB7XHJcblx0XHRcdHRoaXMuZGVzdHJveUluc3RhbmNlKCk7XHJcblx0XHRcdGNvbnNvbGUubG9nKCctIG9uVW5sb2FkJyk7XHJcblx0XHR9LFxyXG5cdFx0b25CYWNrUHJlc3MoKSB7XHJcblx0XHRcdHRoaXMuZGVzdHJveUluc3RhbmNlKCk7XHJcblx0XHR9LFxyXG5cdFx0bWV0aG9kczoge1xyXG5cdFx0XHRoYW5kbGVUb1N1Ym1pdE9yZGVyKCl7XHJcblx0XHRcdFx0dW5pLm5hdmlnYXRlQmFjaygpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRoYW5kbGVJbnZpdGVDdXN0b21lclVzZXIoKXtcclxuXHRcdFx0XHR1bmkuc2hvd0xvYWRpbmcoKTtcclxuXHRcdFx0XHR0aGlzLkFQSS5tZXNzYWdlLmludml0ZVVzZXJKb2luUm9vbSh7XHJcblx0XHRcdFx0XHRyb29taWQ6dGhpcy5yb29tLmlkXHJcblx0XHRcdFx0fSkudGhlbihyZXM9PntcclxuXHRcdFx0XHRcdHRoaXMuaGFzSW52aXRlID0gdHJ1ZTtcclxuXHRcdFx0XHR9KS5maW5hbGx5KCgpPT57XHJcblx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuXHRcdFx0Y3JlYXRlUm9vbShkYXRhKSB7XHJcblx0XHRcdFx0dW5pLnNob3dMb2FkaW5nKHtcclxuXHRcdFx0XHRcdHRpdGxlOiAn5q2j5Zyo5Yib5bu65oi/6Ze0J1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdEFQSS5tZXNzYWdlLnBvc3RBZGRSb29tKGRhdGEpLnRoZW4ocmVzID0+IHtcclxuXHRcdFx0XHRcdHRoaXMucm9vbSA9IHJlcy5kYXRhO1xyXG5cdFx0XHRcdFx0QVBJLm1lc3NhZ2UuZ2V0SW52aXRlVXNlckpvaW4odGhpcy5zZWxsZXJVc2VySWQscmVzLmRhdGEuUm9vbU5vKTtcclxuXHRcdFx0XHR9KS5maW5hbGx5KCgpID0+IHtcclxuXHRcdFx0XHRcdHVuaS5oaWRlTG9hZGluZygpO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRcclxuXHRcdFx0c2VuZE1lc3NhZ2UoKSB7XHJcblx0XHRcdFx0bGV0IHRoYXQ9dGhpcztcclxuXHRcdFx0XHR0aGF0Lm1lc3NhZ2VMaXN0LnB1c2goe1xyXG5cdFx0XHRcdFx0YXV0aG9yOifmiJEnLFxyXG5cdFx0XHRcdFx0Y29udGVudDp0aGF0Lm1lc3NhZ2VDb250ZW50XHJcblx0XHRcdFx0fSlcclxuXHRcdFx0XHR0aGF0Lm1lc3NhZ2VDb250ZW50ID0gJyc7XHJcblx0XHRcdFx0c29ja2V0VGFzay5zZW5kKHtcclxuXHRcdFx0XHRcdGRhdGE6SlNPTi5zdHJpbmdpZnkoe1xyXG5cdFx0XHRcdFx0XHRmb3JtVXNlcklkOiB0aGlzLnVzZXJJZCxcclxuXHRcdFx0XHRcdFx0Y29udGVudFR5cGU6IFwiXCIsXHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IHRoaXMubWVzc2FnZUNvbnRlbnQsXHJcblx0XHRcdFx0XHRcdHNlbmRUaW1lOiBuZXcgRGF0ZSgpLFxyXG5cdFx0XHRcdFx0XHRtZXRob2Q6ICdzZW5kX3RvX3Jvb20nLFxyXG5cdFx0XHRcdFx0XHRSb29tTm86dGhpcy5yb29tLlJvb21ObyxcclxuXHRcdFx0XHRcdFx0Um9vbU5hbWU6dGhpcy5yb29tLk5hbWUsXHJcblx0XHRcdFx0XHRcdElzUm9vbTp0cnVlXHJcblx0XHRcdFx0XHR9KSxcclxuXHRcdFx0XHRcdHN1Y2Nlc3MocmVzKXtcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHRmYWlsKGUpe1xyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdGNvbXBsZXRlKCl7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0sXHJcblx0XHRcdGhhbmRsZVN0YXJ0TWVldGluZygpIHtcclxuXHRcdFx0XHR0aGlzLnN0YXJ0aW5nID0gdHJ1ZTtcclxuXHRcdFx0XHR0aGlzLiRuZXh0VGljaygoKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmNyZWF0ZVRydGNDbG91ZCgpO1xyXG5cdFx0XHRcdFx0dGhpcy5lbnRlclJvb20oKTtcclxuXHRcdFx0XHRcdHRoaXMuc3RhcnRMb2NhbFByZXZpZXcoKTtcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRoYW5kbGVFbmR0TWVldGluZygpIHtcclxuXHRcdFx0XHR0aGlzLm1lZXRpbmdVc2Vycy5zcGxpY2UoMCwgMiwge1xyXG5cdFx0XHRcdFx0dHlwZTogJ+etieW+hei/m+WFpScsXHJcblx0XHRcdFx0XHR1c2VySWQ6ICcnXHJcblx0XHRcdFx0fSwge1xyXG5cdFx0XHRcdFx0dHlwZTogJ+etieW+hei/m+WFpScsXHJcblx0XHRcdFx0XHR1c2VySWQ6ICcnXHJcblx0XHRcdFx0fSwgKVxyXG5cdFx0XHRcdHRoaXMuc3RhcnRMb2NhbFByZXZpZXcoKTtcclxuXHRcdFx0XHR0aGlzLmV4aXRSb29tKCk7XHJcblx0XHRcdFx0dGhpcy5kZXN0cm95SW5zdGFuY2UoKTtcclxuXHRcdFx0fSxcclxuXHRcdFxyXG5cdFx0XHRiaW5kSW5wdXRDaGFuZ2UoZXZlbnQsIHR5cGUpIHtcclxuXHRcdFx0XHRjb25zdCB2YWx1ZSA9IGV2ZW50LmRldGFpbC52YWx1ZTtcclxuXHRcdFx0XHRzd2l0Y2ggKHR5cGUpIHtcclxuXHRcdFx0XHRcdGNhc2UgJ3Jvb21JZCc6IHtcclxuXHRcdFx0XHRcdFx0dGhpcy5yb29tSWQgPSB2YWx1ZTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRjYXNlICd1c2VySWQnOiB7XHJcblx0XHRcdFx0XHRcdHRoaXMudXNlcklkID0gdmFsdWU7XHJcblx0XHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0ZGVzdHJveUluc3RhbmNlKCkge1xyXG5cdFx0XHRcdGlmICh0aGlzLnRydGNDbG91ZCkge1xyXG5cdFx0XHRcdFx0VHJ0Y0Nsb3VkLmRlc3Ryb3lJbnN0YW5jZSgpO1xyXG5cdFx0XHRcdFx0dGhpcy50cnRjQ2xvdWQgPSBudWxsO1xyXG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdHRpdGxlOiAn6ZSA5q+B5a6e5L6LJyxcclxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnXHJcblx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcblx0XHRcdGNyZWF0ZVRydGNDbG91ZCgpIHtcclxuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdHRpdGxlOiAn5Yib5bu65a6e5L6LICcsXHJcblx0XHRcdFx0XHRpY29uOiAnbm9uZScsXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQgPSBUcnRjQ2xvdWQuY3JlYXRlSW5zdGFuY2UoKTtcclxuXHRcdFx0XHR0aGlzLmhhbmRsZUV2ZW50cygpO1xyXG5cdFx0XHRcdHRoaXMuc2RrQXBwSWQgJiYgdW5pLiRjcmVhdGVUcnRjQ2xvdWRVcGxvYWQodGhpcy5zZGtBcHBJZCk7XHJcblx0XHRcdH0sXHJcblx0XHRcdGVudGVyUm9vbSgpIHtcclxuXHRcdFx0XHR0cnkge1xyXG5cdFx0XHRcdFx0Y29uc3Qge1xyXG5cdFx0XHRcdFx0XHRzZGtBcHBJZCxcclxuXHRcdFx0XHRcdFx0YXBwU2NlbmUsXHJcblx0XHRcdFx0XHRcdHVzZXJTaWdcclxuXHRcdFx0XHRcdH0gPSB0aGlzO1xyXG5cdFx0XHRcdFx0bGV0IHBhcmFtID0ge1xyXG5cdFx0XHRcdFx0XHRyb29tSWQ6IHRoaXMucm9vbS5pZCxcclxuXHRcdFx0XHRcdFx0dXNlcklkOnRoaXMudXNlcklkLFxyXG5cdFx0XHRcdFx0XHRzZGtBcHBJZCxcclxuXHRcdFx0XHRcdFx0dXNlclNpZ1xyXG5cdFx0XHRcdFx0fTtcclxuXHRcdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLmVudGVyUm9vbShwYXJhbSwgYXBwU2NlbmUpO1xyXG5cdFx0XHRcdFx0dGhpcy5zZGtBcHBJZCAmJiB1bmkuJGVudGVyUm9vbVN1Y2Nlc3NVcGxvYWQodGhpcy5zZGtBcHBJZCk7XHJcblx0XHRcdFx0fSBjYXRjaCAoZXJyb3IpIHtcclxuXHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6ICdgZW50ZXJSb29tIGVycm9yID0gJHtKU09OLnN0cmluZ2lmeShlcnJvcil9YCdcclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHR0aGlzLnNka0FwcElkICYmIHVuaS4kZW50ZXJSb29tRmFpbGVkVXBsb2FkKHRoaXMuc2RrQXBwSWQsIEpTT04uc3RyaW5naWZ5KGVycm9yKSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRleGl0Um9vbSgpIHtcclxuXHRcdFx0XHR0cnkge1xyXG5cdFx0XHRcdFx0dGhpcy5zdGFydGluZyA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0dGhpcy5zdG9wTG9jYWxQcmV2aWV3KCk7XHJcblx0XHRcdFx0XHR0aGlzLnN0b3BSZW1vdGVWaWV3KCk7XHJcblx0XHRcdFx0XHR0aGlzLnRydGNDbG91ZC5leGl0Um9vbSgpO1xyXG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHtcclxuXHRcdFx0XHRcdC8vIFRPRE8gaGFuZGxlIHRoZSBleGNlcHRpb25cclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcblx0XHRcdHN0YXJ0TG9jYWxQcmV2aWV3KCkge1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLnN0YXJ0TG9jYWxQcmV2aWV3KHRoaXMuaXNGcm9udENhbWVyYSwgdGhpcy51c2VySWQpO1xyXG5cdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRjb250ZW50OiAnc3RhcnRMb2NhbFByZXZpZXcnXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy5zZGtBcHBJZCAmJiB1bmkuJHN0YXJ0TG9jYWxQcmV2aWV3VXBsb2FkKHRoaXMuc2RrQXBwSWQpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRzdG9wTG9jYWxQcmV2aWV3KCkge1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLnN0b3BMb2NhbFByZXZpZXcoKTtcclxuXHRcdFx0fSxcclxuXHRcdFx0c3RhcnRSZW1vdGVWaWV3KHVzZXJJZCkge1xyXG5cdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRjb250ZW50OiAnc3RhcnRSZW1vdGVWaWV3J1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdGxldCBpdGVtID0gdGhpcy5tZWV0aW5nVXNlcnMuZmluZCh0ID0+IHQudXNlcklkID09IHVzZXJJZCk7XHJcblx0XHRcdFx0aWYgKGl0ZW0pIHtcclxuXHRcdFx0XHRcdHRoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuXHRcdFx0XHRcdFx0dGhpcy50cnRjQ2xvdWQuc3RhcnRSZW1vdGVWaWV3KGl0ZW0udXNlcklkLCB0aGlzLnN0cmVhbVR5cGUsIGl0ZW0udXNlcklkKTtcclxuXHRcdFx0XHRcdFx0dGhpcy5zZGtBcHBJZCAmJiB1bmkuJHN0YXJ0UmVtb3RlVmlld1N1Y2Nlc3NVcGxvYWQodGhpcy5zZGtBcHBJZCk7XHJcblx0XHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdFx0Y29udGVudDogYHN0YXJ0UmVtb3RlVmlldyB1c2VySWQgPSAke2l0ZW0udXNlcklkfWBcclxuXHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpdGVtLnN0YXJ0aW5nID0gdHJ1ZTtcclxuXHRcdFx0XHR0aGlzLm1lZXRpbmdVc2Vycy5wdXNoKHRoaXMubWVldGluZ1VzZXJzLnBvcCgpKTtcclxuXHRcdFx0fSxcclxuXHRcdFx0c3RvcFJlbW90ZVZpZXcodXNlcklkKSB7XHJcblx0XHRcdFx0bGV0IGluZGV4ID0gdGhpcy5tZWV0aW5nVXNlcnMuZmluZEluZGV4KHQgPT4gdC51c2VySWQgPT0gdXNlcklkKTtcclxuXHRcdFx0XHRpZiAoaW5kZXggPiAtMSkge1xyXG5cdFx0XHRcdFx0dGhpcy5tZWV0aW5nVXNlcnNbaW5kZXhdLnN0YXJ0aW5nID0gZmFsc2U7XHJcblx0XHRcdFx0XHR0aGlzLm1lZXRpbmdVc2Vycy5wdXNoKHRoaXMubWVldGluZ1VzZXJzLnBvcCgpKTtcclxuXHRcdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLnN0b3BSZW1vdGVWaWV3KHVzZXJJZCwgdGhpcy5zdHJlYW1UeXBlKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcblx0XHRcdC8vIOWQrOetkuOAgeWFjeaPkCDliIfmjaJcclxuXHRcdFx0c3dpdGNoQXVkaW9Sb3V0ZSgpIHtcclxuXHRcdFx0XHR0aGlzLmF1ZGlvUm91dGUgPSB0aGlzLmF1ZGlvUm91dGUgPT09IFRSVENDbG91ZERlZi5UUlRDX0FVRElPX1JPVVRFX1NQRUFLRVIgPyBUUlRDQ2xvdWREZWZcclxuXHRcdFx0XHRcdC5UUlRDX0FVRElPX1JPVVRFX0VBUlBJRUNFIDogVFJUQ0Nsb3VkRGVmLlRSVENfQVVESU9fUk9VVEVfU1BFQUtFUjtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5zZXRBdWRpb1JvdXRlKHRoaXMuYXVkaW9Sb3V0ZSk7XHJcblx0XHRcdH0sXHJcblx0XHRcdGhhbmRsZUV2ZW50cygpIHtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5vbignb25XYXJuaW5nJywgKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0dW5pLnNob3dUb2FzdCh7XHJcblx0XHRcdFx0XHRcdHRpdGxlOiBgb25XYXJuaW5nOiAke0pTT04uc3RyaW5naWZ5KHJlcyl9YCxcclxuXHRcdFx0XHRcdFx0aWNvbjogJ25vbmUnLFxyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQub24oJ29uRXJyb3InLCAocmVzKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VMaXN0LnVuc2hpZnQoe1xyXG5cdFx0XHRcdFx0XHRjb250ZW50OiBgZXJyb3I6ICR7SlNPTi5zdHJpbmdpZnkocmVzKX1gXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0dGhpcy5zZGtBcHBJZCAmJiB1bmkuJG9uRXJyb3JVcGxvYWQodGhpcy5zZGtBcHBJZCwgSlNPTi5zdHJpbmdpZnkocmVzKSk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQub24oJ29uRW50ZXJSb29tJywgKHJlc3VsdCkgPT4ge1xyXG5cdFx0XHRcdFx0Y29uc29sZS5sb2coYC0gb25FbnRlclJvb20gPSAke3Jlc3VsdH1gKTtcclxuXHRcdFx0XHRcdGlmIChyZXN1bHQgPiAwKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdFx0Y29udGVudDogYOi/m+aIv+aIkOWKn++8jOiAl+aXtjogJHtyZXN1bHR9bXNgXHJcblx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0XHRjb25zb2xlLmxvZyhgZW50ZXIgcm9vbSBmYWlsZWTvvIxlcnJvciBjb2RlID0gJHtyZXN1bHR9YCk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQub24oJ29uRXhpdFJvb20nLCAocmVhc29uKSA9PiB7XHJcblx0XHRcdFx0XHRjb25zdCByZWFzb25MaXN0ID0gWyfkuLvliqjosIPnlKggZXhpdFJvb20g6YCA5oi/JywgJ+iiq+acjeWKoeWZqOi4ouWHuuW9k+WJjeaIv+mXtCcsICflvZPliY3miL/pl7TmlbTkuKrooqvop6PmlaMnXTtcclxuXHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IGDpgIDmiL8gJHtyZWFzb25MaXN0W3JlYXNvbl19YFxyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5vbignb25GaXJzdFZpZGVvRnJhbWUnLCAocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRjb25zb2xlLmxvZyhg5riy5p+T55qE6aaW5bin55S76Z2i5ZON5bqUID0gJHtKU09OLnN0cmluZ2lmeShyZXMpfWApO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLm9uKCdvblJlbW90ZVVzZXJFbnRlclJvb20nLCAodXNlcklkKSA9PiB7XHJcblx0XHRcdFx0XHRpZiAodGhpcy5tZWV0aW5nVXNlcnMubGVuZ3RoID49IDIpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5tZWV0aW5nVXNlcnMgPSB0aGlzLm1lZXRpbmdVc2Vycy5maWx0ZXIodCA9PiB0LnN0YXJ0aW5nKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGlmICh0aGlzLm1lZXRpbmdVc2Vycy5sZW5ndGggPCAyICYmIHVzZXJJZCAhPSB0aGlzLnVzZXJJZCkge1xyXG5cdFx0XHRcdFx0XHR0aGlzLm1lZXRpbmdVc2Vycy5wdXNoKHtcclxuXHRcdFx0XHRcdFx0XHR1c2VySWQ6IHVzZXJJZCxcclxuXHRcdFx0XHRcdFx0XHR0eXBlOiAn55So5oi357G75Z6LJ1xyXG5cdFx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHRcdFx0aWYgKHRoaXMubWVldGluZ1VzZXJzLmxlbmd0aCA8IDIpIHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLm1lZXRpbmdVc2Vycy5wdXNoKHtcclxuXHRcdFx0XHRcdFx0XHRcdHR5cGU6ICfnrYnlvoXov5vlhaUnXHJcblx0XHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VMaXN0LnVuc2hpZnQoe1xyXG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IGDnlKjmiLfov5vmiL86IHVzZXJJZCA9ICR7dXNlcklkfWBcclxuXHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdFx0Y29udGVudDogYOeUqOaIt+i/m+aIv+Wksei0pe+8jOaIv+mXtOW3sua7oTogdXNlcklkID0gJHt1c2VySWR9YFxyXG5cdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLm9uKCdvblJlbW90ZVVzZXJMZWF2ZVJvb20nLCAodXNlcklkKSA9PiB7XHJcblx0XHRcdFx0XHRsZXQgaW5kZXggPSB0aGlzLm1lZXRpbmdVc2Vycy5maW5kSW5kZXgodCA9PiB0LnVzZXJJZCA9PSB1c2VySWQpO1xyXG5cdFx0XHRcdFx0aWYgKGluZGV4ID49IDApIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5tZWV0aW5nVXNlcnMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGlmICh0aGlzLm1lZXRpbmdVc2Vycy5sZW5ndGggPCAyKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubWVldGluZ1VzZXJzLnB1c2goe1xyXG5cdFx0XHRcdFx0XHRcdHR5cGU6ICfnrYnlvoXov5vlhaUnXHJcblx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VMaXN0LnVuc2hpZnQoe1xyXG5cdFx0XHRcdFx0XHRjb250ZW50OiBg55So5oi356a75byA5oi/6Ze0OiB1c2VySWQgPSAke3VzZXJJZH1gXHJcblx0XHRcdFx0XHR9KVxyXG5cclxuXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQub24oJ29uVXNlclZpZGVvQXZhaWxhYmxlJywgKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0Y29uc3Qge1xyXG5cdFx0XHRcdFx0XHR1c2VySWQsXHJcblx0XHRcdFx0XHRcdGF2YWlsYWJsZVxyXG5cdFx0XHRcdFx0fSA9IHJlcztcclxuXHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IGBvblVzZXJWaWRlb0F2YWlsYWJsZSA9ICR7SlNPTi5zdHJpbmdpZnkocmVzKX1gXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0aWYgKHVzZXJJZCAmJiBhdmFpbGFibGUpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5zdGFydFJlbW90ZVZpZXcodXNlcklkKTtcclxuXHRcdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRcdHRoaXMuc3RvcFJlbW90ZVZpZXcodXNlcklkKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5vbignb25FeGl0Um9vbScsIChyZXMpID0+IHtcclxuXHRcdFx0XHRcdGNvbnNvbGUubG9nKGBvbkV4aXRSb29tID0gJHtKU09OLnN0cmluZ2lmeShyZXMpfWApO1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9LFxyXG5cdFx0fVxyXG5cdH1cclxuPC9zY3JpcHQ+XHJcbjxzdHlsZSBzcmM9XCJAL3BhZ2VzL21lZXRpbmcvbWVldGluZy5jc3NcIj48L3N0eWxlPlxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///9\n");
  535 +eval("/* WEBPACK VAR INJECTION */(function(__webpack_provided_uni_dot_requireNativePlugin, __f__) {Object.defineProperty(exports, \"__esModule\", { value: true });exports.default = void 0;\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar _vuex = __webpack_require__(/*! vuex */ 12);\n\n\nvar _permission = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/permission.js */ 13));\nvar _index = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/lib/index */ 14));\nvar _TrtcDefines = __webpack_require__(/*! @/TrtcCloud/lib/TrtcDefines */ 16);\n\n\n\n\nvar _GenerateTestUserSig = __webpack_require__(/*! @/debug/GenerateTestUserSig */ 17);\n\n\nvar _TrtcLocalView = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/view/TrtcLocalView */ 19));\nvar _TrtcRemoteView = _interopRequireDefault(__webpack_require__(/*! @/TrtcCloud/view/TrtcRemoteView */ 25));\n\nvar _index2 = _interopRequireDefault(__webpack_require__(/*! @/apis/index.js */ 30));\nvar _config = _interopRequireDefault(__webpack_require__(/*! @/common/config/config.js */ 38));function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { default: obj };}function ownKeys(object, enumerableOnly) {var keys = Object.keys(object);if (Object.getOwnPropertySymbols) {var symbols = Object.getOwnPropertySymbols(object);if (enumerableOnly) symbols = symbols.filter(function (sym) {return Object.getOwnPropertyDescriptor(object, sym).enumerable;});keys.push.apply(keys, symbols);}return keys;}function _objectSpread(target) {for (var i = 1; i < arguments.length; i++) {var source = arguments[i] != null ? arguments[i] : {};if (i % 2) {ownKeys(Object(source), true).forEach(function (key) {_defineProperty(target, key, source[key]);});} else if (Object.getOwnPropertyDescriptors) {Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));} else {ownKeys(Object(source)).forEach(function (key) {Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));});}}return target;}function _defineProperty(obj, key, value) {if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}var TrtcEvent = __webpack_provided_uni_dot_requireNativePlugin('globalEvent');\nvar socketTask = getApp().globalData.socketTask;var _default =\n{\n components: {\n TrtcLocalView: _TrtcLocalView.default,\n TrtcRemoteView: _TrtcRemoteView.default },\n\n data: function data() {\n return {\n hasInvite: false,\n //我\n meetingUserMy: {\n userId: 0 },\n\n //客服\n meetingUserService: {\n userId: 0 },\n\n meetingUsers: [{\n type: '供方',\n userId: '' },\n\n {\n type: '需方',\n userId: '' }],\n\n\n num: 10,\n trtcCloud: null,\n sdkAppId: 0,\n userSig: '',\n roomId: 0,\n userId: 'user_' + Math.floor(Math.random() * 100000).toString(),\n starting: false,\n userType: '等待进入',\n appScene: _TrtcDefines.TRTCAppScene.TRTCAppSceneVideoCall, // TRTCAppSceneVideoCall\n isFrontCamera: true,\n streamType: _TrtcDefines.TRTCVideoStreamType.TRTCVideoStreamTypeBig,\n remoteUserId: '',\n audioRoute: _TrtcDefines.TRTCCloudDef.TRTC_AUDIO_ROUTE_SPEAKER,\n messageList: [],\n messageContent: '',\n myUserInfo: '',\n room: {},\n shopId: 0,\n sellerUserId: 0 };\n\n },\n computed: _objectSpread({},\n (0, _vuex.mapState)(['user', 'statistics', 'common'])),\n\n onLoad: function onLoad(e) {var _this = this;\n this.roomId = e.roomId;\n this.sellerUserId = e.userid;\n this.userId = this.user.id.toString();\n this.shopId = e.shop_id;\n __f__(\"log\", 'onload e', e, \" at pages/meeting/meeting.nvue:138\");\n if (!e.roomId) {\n this.createRoom({\n \"name\": \"测试房间\",\n \"bodyText\": \"\",\n \"roomNo\": \"\",\n \"description\": \"\",\n \"clientId\": \"\",\n \"productId\": e.goods_id,\n \"shopId\": e.shop_id });\n\n } else {\n this.room = {\n id: e.roomId };\n\n }\n\n uni.$on('socketMessage', function (data) {\n __f__(\"log\", 'socketMessage', data, \" at pages/meeting/meeting.nvue:156\");\n if (data.messageType == 'send_to_room') {\n _this.messageList.push({\n author: data.realName,\n content: data.toMessage });\n\n }\n });\n\n },\n onShow: function onShow() {var _this2 = this;\n //关闭全局的socket\n // uni.$emit('closeSocket')\n // socketTask = uni.connectSocket({\n // \turl: config.socketurl,\n // \tcomplete(){},\n // });\n // socketTask.onMessage((msg)=>{\n // \tconsole.log('onMessage',msg);\n // });\n __f__(\"log\", 'this.user', this.user, \" at pages/meeting/meeting.nvue:176\");\n _index2.default.message.getUserTypeInfo(this.user.id).then(function (res) {\n __f__(\"log\", 'getUserTypeInfo', res, \" at pages/meeting/meeting.nvue:178\");\n _this2.myUserInfo = res.data && res.data.length && res.data[0] || { type: 3 };\n });\n },\n onHide: function onHide() {\n // socketTask.closeSocket();\n // uni.$emit('openSocket')\n },\n mounted: function mounted() {\n if (uni.getSystemInfoSync().platform === 'android') {\n _permission.default.requestAndroidPermission('android.permission.RECORD_AUDIO');\n _permission.default.requestAndroidPermission('android.permission.CAMERA');\n }\n // 生成 userSig\n var _genTestUserSig =\n\n\n (0, _GenerateTestUserSig.genTestUserSig)(this.userId),sdkAppId = _genTestUserSig.sdkAppId,userSig = _genTestUserSig.userSig;\n this.sdkAppId = sdkAppId;\n this.userSig = userSig;\n if (!sdkAppId || !userSig) {\n uni.showToast({\n title: '请填写 sdkAppId、userSig',\n icon: 'none' });\n\n }\n },\n onUnload: function onUnload() {\n this.destroyInstance();\n __f__(\"log\", '- onUnload', \" at pages/meeting/meeting.nvue:207\");\n },\n onBackPress: function onBackPress() {\n this.destroyInstance();\n },\n methods: {\n handleToSubmitOrder: function handleToSubmitOrder() {\n uni.navigateBack();\n },\n handleInviteCustomerUser: function handleInviteCustomerUser() {var _this3 = this;\n uni.showLoading();\n _index2.default.message.getInviteCustomerJoin(this.room.ShopId, this.room.RoomNo).then(function (res) {\n uni.showToast({\n title: '邀请成功' });\n\n _this3.hasInvite = true;\n }).finally(function () {\n uni.hideLoading();\n });\n },\n createRoom: function createRoom(data) {var _this4 = this;\n uni.showLoading({\n title: '正在创建房间' });\n\n _index2.default.message.postAddRoom(data).then(function (res) {\n _this4.room = res.data;\n _this4.roomId = res.data.RoomNo;\n _index2.default.message.getInviteUserJoin(_this4.sellerUserId, res.data.RoomNo);\n }).finally(function () {\n uni.hideLoading();\n });\n },\n\n sendMessage: function sendMessage() {\n var that = this;\n that.messageList.push({\n author: '我',\n content: that.messageContent });\n\n that.messageContent = '';\n socketTask.send({\n data: JSON.stringify({\n formUserId: this.userId,\n contentType: \"\",\n content: this.messageContent,\n sendTime: new Date(),\n method: 'send_to_room',\n RoomNo: this.room.RoomNo,\n RoomName: this.room.Name,\n IsRoom: true }),\n\n success: function success(res) {\n },\n fail: function fail(e) {\n },\n complete: function complete() {\n } });\n\n },\n handleStartMeeting: function handleStartMeeting() {var _this5 = this;\n this.starting = true;\n this.$nextTick(function () {\n _this5.createTrtcCloud();\n _this5.enterRoom();\n _this5.startLocalPreview();\n });\n },\n handleEndtMeeting: function handleEndtMeeting() {\n this.meetingUsers.splice(0, 2, {\n type: '等待进入',\n userId: '' },\n {\n type: '等待进入',\n userId: '' });\n\n this.startLocalPreview();\n this.exitRoom();\n this.destroyInstance();\n },\n\n bindInputChange: function bindInputChange(event, type) {\n var value = event.detail.value;\n switch (type) {\n case 'roomId':{\n this.roomId = value;\n break;\n }\n case 'userId':{\n this.userId = value;\n break;\n }}\n\n },\n destroyInstance: function destroyInstance() {\n if (this.trtcCloud) {\n _index.default.destroyInstance();\n this.trtcCloud = null;\n }\n },\n createTrtcCloud: function createTrtcCloud() {\n __f__(\"log\", 'createTrtcCloud', this.sdkAppId, \" at pages/meeting/meeting.nvue:307\");\n this.trtcCloud = _index.default.createInstance();\n this.handleEvents();\n this.sdkAppId && uni.$createTrtcCloudUpload(this.sdkAppId);\n },\n enterRoom: function enterRoom() {\n __f__(\"log\", 'enterRoom', param, \" at pages/meeting/meeting.nvue:313\");\n try {var\n\n sdkAppId =\n\n\n this.sdkAppId,appScene = this.appScene,userSig = this.userSig;\n var _param = {\n roomId: this.room.RoomNo,\n userId: this.userId,\n sdkAppId: sdkAppId,\n userSig: userSig };\n\n __f__(\"log\", 'enterRoom', _param, \" at pages/meeting/meeting.nvue:326\");\n this.trtcCloud.enterRoom(_param, appScene);\n this.sdkAppId && uni.$enterRoomSuccessUpload(this.sdkAppId);\n } catch (error) {\n this.messageList.unshift({\n content: '`enterRoom error = ${JSON.stringify(error)}`' });\n\n this.sdkAppId && uni.$enterRoomFailedUpload(this.sdkAppId, JSON.stringify(error));\n }\n },\n exitRoom: function exitRoom() {\n try {\n this.starting = false;\n this.stopLocalPreview();\n this.stopRemoteView();\n this.trtcCloud.exitRoom();\n } catch (e) {\n // TODO handle the exception\n }\n },\n startLocalPreview: function startLocalPreview() {\n this.trtcCloud.startLocalPreview(this.isFrontCamera, this.userId);\n this.messageList.unshift({\n content: 'startLocalPreview' });\n\n this.sdkAppId && uni.$startLocalPreviewUpload(this.sdkAppId);\n },\n stopLocalPreview: function stopLocalPreview() {\n this.trtcCloud.stopLocalPreview();\n },\n startRemoteView: function startRemoteView(userId) {var _this6 = this;\n this.messageList.unshift({\n content: 'startRemoteView' });\n\n var item = this.meetingUsers.find(function (t) {return t.userId == userId;});\n if (item) {\n this.$nextTick(function () {\n _this6.trtcCloud.startRemoteView(item.userId, _this6.streamType, item.userId);\n _this6.sdkAppId && uni.$startRemoteViewSuccessUpload(_this6.sdkAppId);\n _this6.messageList.unshift({\n content: \"startRemoteView userId = \".concat(item.userId) });\n\n });\n }\n item.starting = true;\n this.meetingUsers.push(this.meetingUsers.pop());\n },\n stopRemoteView: function stopRemoteView(userId) {\n var index = this.meetingUsers.findIndex(function (t) {return t.userId == userId;});\n if (index > -1) {\n this.meetingUsers[index].starting = false;\n this.meetingUsers.push(this.meetingUsers.pop());\n this.trtcCloud.stopRemoteView(userId, this.streamType);\n }\n },\n // 听筒、免提 切换\n switchAudioRoute: function switchAudioRoute() {\n this.audioRoute = this.audioRoute === _TrtcDefines.TRTCCloudDef.TRTC_AUDIO_ROUTE_SPEAKER ? _TrtcDefines.TRTCCloudDef.\n TRTC_AUDIO_ROUTE_EARPIECE : _TrtcDefines.TRTCCloudDef.TRTC_AUDIO_ROUTE_SPEAKER;\n this.trtcCloud.setAudioRoute(this.audioRoute);\n },\n handleEvents: function handleEvents() {var _this7 = this;\n this.trtcCloud.on('onWarning', function (res) {\n uni.showToast({\n title: \"onWarning: \".concat(JSON.stringify(res)),\n icon: 'none' });\n\n });\n this.trtcCloud.on('onError', function (res) {\n _this7.messageList.unshift({\n content: \"error: \".concat(JSON.stringify(res)) });\n\n _this7.sdkAppId && uni.$onErrorUpload(_this7.sdkAppId, JSON.stringify(res));\n });\n this.trtcCloud.on('onEnterRoom', function (result) {\n __f__(\"log\", \"- onEnterRoom = \".concat(result), \" at pages/meeting/meeting.nvue:401\");\n if (result > 0) {\n _this7.messageList.unshift({\n content: \"\\u8FDB\\u623F\\u6210\\u529F\\uFF0C\\u8017\\u65F6: \".concat(result, \"ms\") });\n\n } else {\n __f__(\"log\", \"enter room failed\\uFF0Cerror code = \".concat(result), \" at pages/meeting/meeting.nvue:407\");\n }\n });\n this.trtcCloud.on('onExitRoom', function (reason) {\n var reasonList = ['主动调用 exitRoom 退房', '被服务器踢出当前房间', '当前房间整个被解散'];\n _this7.messageList.unshift({\n content: \"\\u9000\\u623F \".concat(reasonList[reason]) });\n\n });\n this.trtcCloud.on('onFirstVideoFrame', function (res) {\n __f__(\"log\", \"\\u6E32\\u67D3\\u7684\\u9996\\u5E27\\u753B\\u9762\\u54CD\\u5E94 = \".concat(JSON.stringify(res)), \" at pages/meeting/meeting.nvue:417\");\n });\n this.trtcCloud.on('onRemoteUserEnterRoom', function (userId) {\n if (_this7.meetingUsers.length >= 2) {\n _this7.meetingUsers = _this7.meetingUsers.filter(function (t) {return t.starting;});\n }\n if (_this7.meetingUsers.length < 2 && userId != _this7.userId) {\n _this7.meetingUsers.push({\n userId: userId,\n type: '用户类型' });\n\n if (_this7.meetingUsers.length < 2) {\n _this7.meetingUsers.push({\n type: '等待进入' });\n\n }\n _this7.messageList.unshift({\n content: \"\\u7528\\u6237\\u8FDB\\u623F: userId = \".concat(userId) });\n\n } else {\n _this7.messageList.unshift({\n content: \"\\u7528\\u6237\\u8FDB\\u623F\\u5931\\u8D25\\uFF0C\\u623F\\u95F4\\u5DF2\\u6EE1: userId = \".concat(userId) });\n\n }\n });\n this.trtcCloud.on('onRemoteUserLeaveRoom', function (userId) {\n var index = _this7.meetingUsers.findIndex(function (t) {return t.userId == userId;});\n if (index >= 0) {\n _this7.meetingUsers.splice(index, 1);\n }\n if (_this7.meetingUsers.length < 2) {\n _this7.meetingUsers.push({\n type: '等待进入' });\n\n }\n _this7.messageList.unshift({\n content: \"\\u7528\\u6237\\u79BB\\u5F00\\u623F\\u95F4: userId = \".concat(userId) });\n\n\n\n });\n this.trtcCloud.on('onUserVideoAvailable', function (res) {var\n\n userId =\n\n res.userId,available = res.available;\n _this7.messageList.unshift({\n content: \"onUserVideoAvailable = \".concat(JSON.stringify(res)) });\n\n if (userId && available) {\n _this7.startRemoteView(userId);\n } else {\n _this7.stopRemoteView(userId);\n }\n });\n this.trtcCloud.on('onExitRoom', function (res) {\n __f__(\"log\", \"onExitRoom = \".concat(JSON.stringify(res)), \" at pages/meeting/meeting.nvue:473\");\n });\n } } };exports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-hbuilderx/packages/uni-app-plus-nvue/dist/require-native-plugin.js */ 10)[\"default\"], __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 11)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvbWVldGluZy9tZWV0aW5nLm52dWUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdFQTs7O0FBR0E7QUFDQTtBQUNBOzs7OztBQUtBOzs7QUFHQTtBQUNBOztBQUVBO0FBQ0EsK0Ysd25DQUZBO0FBR0EsZ0Q7QUFDQTtBQUNBO0FBQ0EseUNBREE7QUFFQSwyQ0FGQSxFQURBOztBQUtBLE1BTEEsa0JBS0E7QUFDQTtBQUNBLHNCQURBO0FBRUE7QUFDQTtBQUNBLGlCQURBLEVBSEE7O0FBTUE7QUFDQTtBQUNBLGlCQURBLEVBUEE7O0FBVUE7QUFDQSxrQkFEQTtBQUVBLGtCQUZBOztBQUlBO0FBQ0Esa0JBREE7QUFFQSxrQkFGQSxFQUpBLENBVkE7OztBQW1CQSxhQW5CQTtBQW9CQSxxQkFwQkE7QUFxQkEsaUJBckJBO0FBc0JBLGlCQXRCQTtBQXVCQSxlQXZCQTtBQXdCQSxxRUF4QkE7QUF5QkEscUJBekJBO0FBMEJBLHNCQTFCQTtBQTJCQSwrREEzQkEsRUEyQkE7QUFDQSx5QkE1QkE7QUE2QkEseUVBN0JBO0FBOEJBLHNCQTlCQTtBQStCQSxvRUEvQkE7QUFnQ0EscUJBaENBO0FBaUNBLHdCQWpDQTtBQWtDQSxvQkFsQ0E7QUFtQ0EsY0FuQ0E7QUFvQ0EsZUFwQ0E7QUFxQ0EscUJBckNBOztBQXVDQSxHQTdDQTtBQThDQTtBQUNBLHVEQURBLENBOUNBOztBQWlEQSxRQWpEQSxrQkFpREEsQ0FqREEsRUFpREE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQURBO0FBRUEsc0JBRkE7QUFHQSxvQkFIQTtBQUlBLHlCQUpBO0FBS0Esc0JBTEE7QUFNQSwrQkFOQTtBQU9BLDJCQVBBOztBQVNBLEtBVkEsTUFVQTtBQUNBO0FBQ0Esb0JBREE7O0FBR0E7O0FBRUE7QUFDQTtBQUNBO0FB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dDx2aWV3PlxyXG5cdFx0PGltYWdlIHNyYz1cIi4uLy4uL3N0YXRpYy9ob21lL2JhbmNrMi5wbmdcIiBzdHlsZT1cIndpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XCIgbW9kZT1cIndpZHRoRml4XCI+PC9pbWFnZT5cclxuXHRcdDx2aWV3IGNsYXNzPVwiYmFja1wiPlxyXG5cdFx0XHQ8IS0tIOW5s+WPsOWuouacjSAtLT5cclxuXHRcdFx0PHZpZXcgY2xhc3M9XCJsaXN0MVwiIHN0eWxlPVwiYWxpZ24taXRlbXM6IGNlbnRlcjtvdmVyZmxvdzogaGlkZGVuO1wiPlxyXG5cdFx0XHRcdDx0ZXh0IGNsYXNzPVwibmFtZVwiPnt7IHVzZXJUeXBlIHx8ICfnrYnlvoXov5vlhaUnIH19PC90ZXh0PlxyXG5cdFx0XHRcdDx2aWV3IHN0eWxlPVwiaGVpZ2h0OjM2MHJweDtmbGV4LWRpcmVjdGlvbjogcm93O2p1c3RpZnktY29udGVudDogY2VudGVyO21hcmdpbjogMCBhdXRvO1wiIGlkPSdyb290Jz5cclxuXHRcdFx0XHRcdDx0cnRjLWxvY2FsLXZpZXcgdi1pZj1cIm1lZXRpbmdVc2VyU2VydmljZS51c2VySWQgJiYgc3RhcnRpbmdcIiA6dmlld0lkPVwibWVldGluZ1VzZXJTZXJ2aWNlLnVzZXJJZFwiXHJcblx0XHRcdFx0XHRcdHN0eWxlPVwiaGVpZ2h0OiAzODBycHg7d2lkdGg6IDM2MHJweDtcIj5cclxuXHRcdFx0XHRcdDwvdHJ0Yy1sb2NhbC12aWV3PlxyXG5cdFx0XHRcdFx0PGltYWdlIHYtZWxzZSBzcmM9XCIuLi8uLi9zdGF0aWMvaG9tZS9yZW4gKDEpLndlYnBcIlxyXG5cdFx0XHRcdFx0XHRzdHlsZT1cIndpZHRoOiAzODBycHg7aGVpZ2h0OiAzNjBycHg7Ym9yZGVyLXJhZGl1czogNDBycHg7XCIgbW9kZT1cImFzcGVjdEZpbGxcIj5cclxuXHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdFx0PHZpZXcgc3R5bGU9XCJmbGV4LWRpcmVjdGlvbjogcm93O2p1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO3dpZHRoOiAxMDB2dztcIj5cclxuXHRcdFx0XHQ8dmlldyBjbGFzcz1cImxpc3QxXCIgc3R5bGU9XCJ3aWR0aDogMzAwcnB4O21hcmdpbi1yaWdodDogMjBweDtcIiB2LWZvcj1cIml0ZW0gaW4gbWVldGluZ1VzZXJzXCI+XHJcblx0XHRcdFx0XHQ8dGV4dCBjbGFzcz1cIm5hbWVcIj57eyBpdGVtLnR5cGUgfHwgJ+etieW+hei/m+WFpScgfX08L3RleHQ+XHJcblx0XHRcdFx0XHQ8dmlldyBzdHlsZT1cIndpZHRoOiAxMDAlOyBoZWlnaHQ6MzYwcnB4O1wiPlxyXG5cdFx0XHRcdFx0XHQ8dHJ0Yy1yZW1vdGUtdmlldyB2LWlmPVwiaXRlbSAmJiBpdGVtLnVzZXJJZCAmJiBpdGVtLnN0YXJ0aW5nXCIgOnVzZXJJZD1cIml0ZW0udXNlcklkXCJcclxuXHRcdFx0XHRcdFx0XHQ6dmlld0lkPVwiaXRlbS51c2VySWRcIiBzdHlsZT1cImhlaWdodDogMzYwcnB4O3dpZHRoOiAzMDBycHg7Ym9yZGVyOiAxcHggc29saWQgI2ZmZjtcIj5cclxuXHRcdFx0XHRcdFx0PC90cnRjLXJlbW90ZS12aWV3PlxyXG5cdFx0XHRcdFx0XHQ8aW1hZ2Ugdi1lbHNlIHNyYz1cIi4uLy4uL3N0YXRpYy9ob21lL3JlbiAoMikud2VicFwiXHJcblx0XHRcdFx0XHRcdFx0c3R5bGU9XCJ3aWR0aDogMzAwcnB4O2hlaWdodDogMzYwcnB4O2JvcmRlci1yYWRpdXM6IDQwcnB4O1wiIG1vZGU9XCJhc3BlY3RGaWxsXCI+XHJcblx0XHRcdFx0XHRcdDwvaW1hZ2U+XHJcblx0XHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdDx2aWV3IHN0eWxlPVwiZmxleC1kaXJlY3Rpb246IHJvdztqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcIj5cclxuXHRcdFx0XHQ8YmxvY2sgIHYtaWY9XCJteVVzZXJJbmZvJiZteVVzZXJJbmZvLnR5cGU9PTNcIj5cclxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiYnRuXCIgdi1pZj1cIm1lZXRpbmdVc2Vyc1swXSAmJiBtZWV0aW5nVXNlcnNbMF0uc3RhcnRpbmdcIiBAY2xpY2s9XCJoYW5kbGVFbmR0TWVldGluZ1wiXHJcblx0XHRcdFx0XHRcdHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAyMHB4O1wiPlxyXG5cdFx0XHRcdFx0XHTmjILmlq1cclxuXHRcdFx0XHRcdDwvdGV4dD5cclxuXHRcdFx0XHRcdDx0ZXh0IGNsYXNzPVwiYnRuXCIgdi1lbHNlIEBjbGljaz1cImhhbmRsZVN0YXJ0TWVldGluZ1wiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAyMHJweDtcIj5cclxuXHRcdFx0XHRcdFx05byA5aeL6KeG6aKRXHJcblx0XHRcdFx0XHQ8L3RleHQ+XHJcblx0XHRcdFx0PC9ibG9jaz5cclxuXHRcdFx0XHRcclxuXHRcdFx0XHQ8dGV4dCBjbGFzcz1cImJ0blwiIEBjbGljaz1cImhhbmRsZUludml0ZUN1c3RvbWVyVXNlclwiIHYtaWY9XCIhaGFzSW52aXRlXCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDIwcnB4O1wiPlxyXG5cdFx0XHRcdFx06YKA6K+35a6i5pyNXHJcblx0XHRcdFx0PC90ZXh0PlxyXG5cdFx0XHRcdDx0ZXh0ICBjbGFzcz1cImJ0blwiIHYtaWY9XCJteVVzZXJJbmZvICYmIG15VXNlckluZm8udHlwZSE9NFwiIEBjbGljaz1cImhhbmRsZVRvU3VibWl0T3JkZXJcIj5cclxuXHRcdFx0XHRcdOeri+WNs+S4i+WNlVxyXG5cdFx0XHRcdDwvdGV4dD5cclxuXHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8c2Nyb2xsLXZpZXcgOnNjcm9sbC15PVwidHJ1ZVwiIGNsYXNzPVwibWVzc2FnZVwiPlxyXG5cdFx0XHRcdDx2aWV3IGNsYXNzPVwiXCIgc3R5bGU9XCJ3aWR0aDogMzIwcHg7XCI+XHJcblx0XHRcdFx0XHQ8dmlldyBjbGFzcz1cIlwiIHYtZm9yPVwiaXRlbSBpbiBtZXNzYWdlTGlzdFwiIHN0eWxlPVwiZGlzcGxheTogZmxleDtmbGV4LWRpcmVjdGlvbjogcm93O2ZsZXgtd3JhcDogd3JhcDtcIj5cclxuXHRcdFx0XHRcdFx0PHRleHQgc3R5bGU9XCJjb2xvcjogI0ZGREE5NyA7XCI+e3tpdGVtLmF1dGhvciB8fCAn57O757ufJ319OjwvdGV4dD5cclxuXHRcdFx0XHRcdFx0PHRleHQgc3R5bGU9XCJjb2xvcjogI2ZmZjttYXJnaW4tbGVmdDogMTBycHg7XCI+XHJcblx0XHRcdFx0XHRcdFx0e3tpdGVtLmNvbnRlbnR9fVxyXG5cdFx0XHRcdFx0XHQ8L3RleHQ+XHJcblx0XHRcdFx0XHQ8L3ZpZXc+XHJcblx0XHRcdFx0PC92aWV3PlxyXG5cdFx0XHQ8L3Njcm9sbC12aWV3PlxyXG5cdFx0XHQ8dmlld1xyXG5cdFx0XHRcdHN0eWxlPVwicG9zaXRpb246IGZpeGVkO2JvdHRvbTogMDtsZWZ0OiAwO3JpZ2h0OiAwO2p1c3RpZnktY29udGVudDogY2VudGVyO2FsaWduLWl0ZW1zOiBjZW50ZXI7Ym90dG9tOiAyMHB4O1wiPlxyXG5cdFx0XHRcdDxpbnB1dCBjbGFzcz1cImlucHV0XCIgcGxhY2Vob2xkZXI9XCLlm57lpI1cIiBwbGFjZWhvbGRlci1zdHlsZT1cImNvbG9yOiNmZmZcIiB2LW1vZGVsPVwibWVzc2FnZUNvbnRlbnRcIiBAY29uZmlybT1cInNlbmRNZXNzYWdlXCIgY29uZmlybS10eXBlPVwic2VuZFwiIC8+XHJcblx0XHRcdDwvdmlldz5cclxuXHRcdDwvdmlldz5cclxuXHQ8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcbjxzY3JpcHQ+XHJcblx0aW1wb3J0IHtcclxuXHRcdG1hcFN0YXRlXHJcblx0fSBmcm9tICd2dWV4JztcclxuXHRpbXBvcnQgcGVybWlzaW9uIGZyb20gXCJAL1RydGNDbG91ZC9wZXJtaXNzaW9uLmpzXCI7XHJcblx0aW1wb3J0IFRydGNDbG91ZCBmcm9tICdAL1RydGNDbG91ZC9saWIvaW5kZXgnO1xyXG5cdGltcG9ydCB7XHJcblx0XHRUUlRDQXBwU2NlbmUsXHJcblx0XHRUUlRDVmlkZW9TdHJlYW1UeXBlLFxyXG5cdFx0VFJUQ0Nsb3VkRGVmXHJcblx0fSBmcm9tICdAL1RydGNDbG91ZC9saWIvVHJ0Y0RlZmluZXMnO1xyXG5cdGltcG9ydCB7XHJcblx0XHRnZW5UZXN0VXNlclNpZ1xyXG5cdH0gZnJvbSAnQC9kZWJ1Zy9HZW5lcmF0ZVRlc3RVc2VyU2lnJztcclxuXHRpbXBvcnQgVHJ0Y0xvY2FsVmlldyBmcm9tICdAL1RydGNDbG91ZC92aWV3L1RydGNMb2NhbFZpZXcnO1xyXG5cdGltcG9ydCBUcnRjUmVtb3RlVmlldyBmcm9tICdAL1RydGNDbG91ZC92aWV3L1RydGNSZW1vdGVWaWV3JztcclxuXHRjb25zdCBUcnRjRXZlbnQgPSB1bmkucmVxdWlyZU5hdGl2ZVBsdWdpbignZ2xvYmFsRXZlbnQnKTtcclxuXHRpbXBvcnQgQVBJIGZyb20gJ0AvYXBpcy9pbmRleC5qcydcclxuXHRpbXBvcnQgY29uZmlnIGZyb20gJ0AvY29tbW9uL2NvbmZpZy9jb25maWcuanMnXHJcblx0bGV0IHNvY2tldFRhc2sgPSBnZXRBcHAoKS5nbG9iYWxEYXRhLnNvY2tldFRhc2s7XHJcblx0ZXhwb3J0IGRlZmF1bHQge1xyXG5cdFx0Y29tcG9uZW50czoge1xyXG5cdFx0XHRUcnRjTG9jYWxWaWV3OiBUcnRjTG9jYWxWaWV3LFxyXG5cdFx0XHRUcnRjUmVtb3RlVmlldzogVHJ0Y1JlbW90ZVZpZXcsXHJcblx0XHR9LFxyXG5cdFx0ZGF0YSgpIHtcclxuXHRcdFx0cmV0dXJuIHtcclxuXHRcdFx0XHRoYXNJbnZpdGU6ZmFsc2UsXHJcblx0XHRcdFx0Ly/miJFcclxuXHRcdFx0XHRtZWV0aW5nVXNlck15OiB7XHJcblx0XHRcdFx0XHR1c2VySWQ6IDBcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdC8v5a6i5pyNXHJcblx0XHRcdFx0bWVldGluZ1VzZXJTZXJ2aWNlOiB7XHJcblx0XHRcdFx0XHR1c2VySWQ6IDBcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdG1lZXRpbmdVc2VyczogW3tcclxuXHRcdFx0XHRcdFx0dHlwZTogJ+S+m+aWuScsXHJcblx0XHRcdFx0XHRcdHVzZXJJZDogJydcclxuXHRcdFx0XHRcdH0sXHJcblx0XHRcdFx0XHR7XHJcblx0XHRcdFx0XHRcdHR5cGU6ICfpnIDmlrknLFxyXG5cdFx0XHRcdFx0XHR1c2VySWQ6ICcnXHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdF0sXHJcblx0XHRcdFx0bnVtOiAxMCxcclxuXHRcdFx0XHR0cnRjQ2xvdWQ6IG51bGwsXHJcblx0XHRcdFx0c2RrQXBwSWQ6IDAsXHJcblx0XHRcdFx0dXNlclNpZzogJycsXHJcblx0XHRcdFx0cm9vbUlkOiAwLFxyXG5cdFx0XHRcdHVzZXJJZDogJ3VzZXJfJyArIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDAwMCkudG9TdHJpbmcoKSxcclxuXHRcdFx0XHRzdGFydGluZzogZmFsc2UsXHJcblx0XHRcdFx0dXNlclR5cGU6ICfnrYnlvoXov5vlhaUnLFxyXG5cdFx0XHRcdGFwcFNjZW5lOiBUUlRDQXBwU2NlbmUuVFJUQ0FwcFNjZW5lVmlkZW9DYWxsLCAvLyBUUlRDQXBwU2NlbmVWaWRlb0NhbGxcclxuXHRcdFx0XHRpc0Zyb250Q2FtZXJhOiB0cnVlLFxyXG5cdFx0XHRcdHN0cmVhbVR5cGU6IFRSVENWaWRlb1N0cmVhbVR5cGUuVFJUQ1ZpZGVvU3RyZWFtVHlwZUJpZyxcclxuXHRcdFx0XHRyZW1vdGVVc2VySWQ6ICcnLFxyXG5cdFx0XHRcdGF1ZGlvUm91dGU6IFRSVENDbG91ZERlZi5UUlRDX0FVRElPX1JPVVRFX1NQRUFLRVIsXHJcblx0XHRcdFx0bWVzc2FnZUxpc3Q6IFtdLFxyXG5cdFx0XHRcdG1lc3NhZ2VDb250ZW50OicnLFxyXG5cdFx0XHRcdG15VXNlckluZm86JycsXHJcblx0XHRcdFx0cm9vbTp7fSxcclxuXHRcdFx0XHRzaG9wSWQ6MCxcclxuXHRcdFx0XHRzZWxsZXJVc2VySWQ6MFxyXG5cdFx0XHR9XHJcblx0XHR9LFxyXG5cdFx0Y29tcHV0ZWQ6IHtcclxuXHRcdFx0Li4ubWFwU3RhdGUoWyd1c2VyJywgJ3N0YXRpc3RpY3MnLCAnY29tbW9uJ10pXHJcblx0XHR9LFxyXG5cdFx0b25Mb2FkKGUpIHtcclxuXHRcdFx0dGhpcy5yb29tSWQgPSBlLnJvb21JZDtcclxuXHRcdFx0dGhpcy5zZWxsZXJVc2VySWQgPSBlLnVzZXJpZDtcclxuXHRcdFx0dGhpcy51c2VySWQgPSB0aGlzLnVzZXIuaWQudG9TdHJpbmcoKTtcclxuXHRcdFx0dGhpcy5zaG9wSWQgPSBlLnNob3BfaWQ7XHJcblx0XHRcdGNvbnNvbGUubG9nKCdvbmxvYWQgZScsZSk7XHJcblx0XHRcdGlmICghZS5yb29tSWQpIHtcclxuXHRcdFx0XHR0aGlzLmNyZWF0ZVJvb20oe1xyXG5cdFx0XHRcdFx0XCJuYW1lXCI6IFwi5rWL6K+V5oi/6Ze0XCIsXHJcblx0XHRcdFx0XHRcImJvZHlUZXh0XCI6IFwiXCIsXHJcblx0XHRcdFx0XHRcInJvb21Ob1wiOiBcIlwiLFxyXG5cdFx0XHRcdFx0XCJkZXNjcmlwdGlvblwiOiBcIlwiLFxyXG5cdFx0XHRcdFx0XCJjbGllbnRJZFwiOiBcIlwiLFxyXG5cdFx0XHRcdFx0XCJwcm9kdWN0SWRcIjogZS5nb29kc19pZCxcclxuXHRcdFx0XHRcdFwic2hvcElkXCI6IGUuc2hvcF9pZFxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHR9ZWxzZXtcclxuXHRcdFx0XHR0aGlzLnJvb20gPSB7XHJcblx0XHRcdFx0XHRpZDplLnJvb21JZFxyXG5cdFx0XHRcdH07XHJcblx0XHRcdH1cclxuXHRcdFx0XHJcblx0XHRcdHVuaS4kb24oJ3NvY2tldE1lc3NhZ2UnLChkYXRhKT0+e1xyXG5cdFx0XHRcdGNvbnNvbGUubG9nKCdzb2NrZXRNZXNzYWdlJyxkYXRhKTtcclxuXHRcdFx0XHRpZihkYXRhLm1lc3NhZ2VUeXBlID09ICdzZW5kX3RvX3Jvb20nKXtcclxuXHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QucHVzaCh7XHJcblx0XHRcdFx0XHRcdGF1dGhvcjpkYXRhLnJlYWxOYW1lLFxyXG5cdFx0XHRcdFx0XHRjb250ZW50OmRhdGEudG9NZXNzYWdlXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSlcclxuXHRcdFx0XHJcblx0XHR9LFxyXG5cdFx0b25TaG93KCkge1xyXG5cdFx0XHQvL+WFs+mXreWFqOWxgOeahHNvY2tldFxyXG5cdFx0XHQvLyB1bmkuJGVtaXQoJ2Nsb3NlU29ja2V0JylcclxuXHRcdFx0Ly8gc29ja2V0VGFzayA9IHVuaS5jb25uZWN0U29ja2V0KHtcclxuXHRcdFx0Ly8gXHR1cmw6IGNvbmZpZy5zb2NrZXR1cmwsXHJcblx0XHRcdC8vIFx0Y29tcGxldGUoKXt9LFxyXG5cdFx0XHQvLyB9KTtcclxuXHRcdFx0Ly8gc29ja2V0VGFzay5vbk1lc3NhZ2UoKG1zZyk9PntcclxuXHRcdFx0Ly8gXHRjb25zb2xlLmxvZygnb25NZXNzYWdlJyxtc2cpO1xyXG5cdFx0XHQvLyB9KTtcclxuXHRcdFx0Y29uc29sZS5sb2coJ3RoaXMudXNlcicsdGhpcy51c2VyKTtcclxuXHRcdFx0QVBJLm1lc3NhZ2UuZ2V0VXNlclR5cGVJbmZvKHRoaXMudXNlci5pZCkudGhlbihyZXM9PntcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnZ2V0VXNlclR5cGVJbmZvJyxyZXMpXHJcblx0XHRcdFx0dGhpcy5teVVzZXJJbmZvID0gcmVzLmRhdGEgJiYgcmVzLmRhdGEubGVuZ3RoICYmIHJlcy5kYXRhWzBdIHx8IHt0eXBlOjN9O1xyXG5cdFx0XHR9KVxyXG5cdFx0fSxcclxuXHRcdG9uSGlkZSgpIHtcclxuXHRcdFx0Ly8gc29ja2V0VGFzay5jbG9zZVNvY2tldCgpO1xyXG5cdFx0XHQvLyB1bmkuJGVtaXQoJ29wZW5Tb2NrZXQnKVxyXG5cdFx0fSxcclxuXHRcdG1vdW50ZWQoKSB7XHJcblx0XHRcdGlmICh1bmkuZ2V0U3lzdGVtSW5mb1N5bmMoKS5wbGF0Zm9ybSA9PT0gJ2FuZHJvaWQnKSB7XHJcblx0XHRcdFx0cGVybWlzaW9uLnJlcXVlc3RBbmRyb2lkUGVybWlzc2lvbignYW5kcm9pZC5wZXJtaXNzaW9uLlJFQ09SRF9BVURJTycpO1xyXG5cdFx0XHRcdHBlcm1pc2lvbi5yZXF1ZXN0QW5kcm9pZFBlcm1pc3Npb24oJ2FuZHJvaWQucGVybWlzc2lvbi5DQU1FUkEnKTtcclxuXHRcdFx0fVxyXG5cdFx0XHQvLyDnlJ/miJAgdXNlclNpZ1xyXG5cdFx0XHRjb25zdCB7XHJcblx0XHRcdFx0c2RrQXBwSWQsXHJcblx0XHRcdFx0dXNlclNpZ1xyXG5cdFx0XHR9ID0gZ2VuVGVzdFVzZXJTaWcodGhpcy51c2VySWQpO1xyXG5cdFx0XHR0aGlzLnNka0FwcElkID0gc2RrQXBwSWQ7XHJcblx0XHRcdHRoaXMudXNlclNpZyA9IHVzZXJTaWc7XHJcblx0XHRcdGlmICghc2RrQXBwSWQgfHwgIXVzZXJTaWcpIHtcclxuXHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdHRpdGxlOiAn6K+35aGr5YaZIHNka0FwcElk44CBdXNlclNpZycsXHJcblx0XHRcdFx0XHRpY29uOiAnbm9uZSdcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fVxyXG5cdFx0fSxcclxuXHRcdG9uVW5sb2FkKCkge1xyXG5cdFx0XHR0aGlzLmRlc3Ryb3lJbnN0YW5jZSgpO1xyXG5cdFx0XHRjb25zb2xlLmxvZygnLSBvblVubG9hZCcpO1xyXG5cdFx0fSxcclxuXHRcdG9uQmFja1ByZXNzKCkge1xyXG5cdFx0XHR0aGlzLmRlc3Ryb3lJbnN0YW5jZSgpO1xyXG5cdFx0fSxcclxuXHRcdG1ldGhvZHM6IHtcclxuXHRcdFx0aGFuZGxlVG9TdWJtaXRPcmRlcigpe1xyXG5cdFx0XHRcdHVuaS5uYXZpZ2F0ZUJhY2soKTtcclxuXHRcdFx0fSxcclxuXHRcdFx0aGFuZGxlSW52aXRlQ3VzdG9tZXJVc2VyKCl7XHJcblx0XHRcdFx0dW5pLnNob3dMb2FkaW5nKCk7XHJcblx0XHRcdFx0QVBJLm1lc3NhZ2UuZ2V0SW52aXRlQ3VzdG9tZXJKb2luKHRoaXMucm9vbS5TaG9wSWQsdGhpcy5yb29tLlJvb21ObykudGhlbihyZXM9PntcclxuXHRcdFx0XHRcdHVuaS5zaG93VG9hc3Qoe1xyXG5cdFx0XHRcdFx0XHR0aXRsZTon6YKA6K+35oiQ5YqfJ1xyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdHRoaXMuaGFzSW52aXRlID0gdHJ1ZTtcclxuXHRcdFx0XHR9KS5maW5hbGx5KCgpPT57XHJcblx0XHRcdFx0XHR1bmkuaGlkZUxvYWRpbmcoKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuXHRcdFx0Y3JlYXRlUm9vbShkYXRhKSB7XHJcblx0XHRcdFx0dW5pLnNob3dMb2FkaW5nKHtcclxuXHRcdFx0XHRcdHRpdGxlOiAn5q2j5Zyo5Yib5bu65oi/6Ze0J1xyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdEFQSS5tZXNzYWdlLnBvc3RBZGRSb29tKGRhdGEpLnRoZW4ocmVzID0+IHtcclxuXHRcdFx0XHRcdHRoaXMucm9vbSA9IHJlcy5kYXRhO1xyXG5cdFx0XHRcdFx0dGhpcy5yb29tSWQgPSByZXMuZGF0YS5Sb29tTm87XHJcblx0XHRcdFx0XHRBUEkubWVzc2FnZS5nZXRJbnZpdGVVc2VySm9pbih0aGlzLnNlbGxlclVzZXJJZCxyZXMuZGF0YS5Sb29tTm8pO1xyXG5cdFx0XHRcdH0pLmZpbmFsbHkoKCkgPT4ge1xyXG5cdFx0XHRcdFx0dW5pLmhpZGVMb2FkaW5nKCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0sXHJcblx0XHRcdFxyXG5cdFx0XHRzZW5kTWVzc2FnZSgpIHtcclxuXHRcdFx0XHRsZXQgdGhhdD10aGlzO1xyXG5cdFx0XHRcdHRoYXQubWVzc2FnZUxpc3QucHVzaCh7XHJcblx0XHRcdFx0XHRhdXRob3I6J+aIkScsXHJcblx0XHRcdFx0XHRjb250ZW50OnRoYXQubWVzc2FnZUNvbnRlbnRcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHRcdHRoYXQubWVzc2FnZUNvbnRlbnQgPSAnJztcclxuXHRcdFx0XHRzb2NrZXRUYXNrLnNlbmQoe1xyXG5cdFx0XHRcdFx0ZGF0YTpKU09OLnN0cmluZ2lmeSh7XHJcblx0XHRcdFx0XHRcdGZvcm1Vc2VySWQ6IHRoaXMudXNlcklkLFxyXG5cdFx0XHRcdFx0XHRjb250ZW50VHlwZTogXCJcIixcclxuXHRcdFx0XHRcdFx0Y29udGVudDogdGhpcy5tZXNzYWdlQ29udGVudCxcclxuXHRcdFx0XHRcdFx0c2VuZFRpbWU6IG5ldyBEYXRlKCksXHJcblx0XHRcdFx0XHRcdG1ldGhvZDogJ3NlbmRfdG9fcm9vbScsXHJcblx0XHRcdFx0XHRcdFJvb21Obzp0aGlzLnJvb20uUm9vbU5vLFxyXG5cdFx0XHRcdFx0XHRSb29tTmFtZTp0aGlzLnJvb20uTmFtZSxcclxuXHRcdFx0XHRcdFx0SXNSb29tOnRydWVcclxuXHRcdFx0XHRcdH0pLFxyXG5cdFx0XHRcdFx0c3VjY2VzcyhyZXMpe1xyXG5cdFx0XHRcdFx0fSxcclxuXHRcdFx0XHRcdGZhaWwoZSl7XHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0Y29tcGxldGUoKXtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSxcclxuXHRcdFx0aGFuZGxlU3RhcnRNZWV0aW5nKCkge1xyXG5cdFx0XHRcdHRoaXMuc3RhcnRpbmcgPSB0cnVlO1xyXG5cdFx0XHRcdHRoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMuY3JlYXRlVHJ0Y0Nsb3VkKCk7XHJcblx0XHRcdFx0XHR0aGlzLmVudGVyUm9vbSgpO1xyXG5cdFx0XHRcdFx0dGhpcy5zdGFydExvY2FsUHJldmlldygpO1xyXG5cdFx0XHRcdH0pXHJcblx0XHRcdH0sXHJcblx0XHRcdGhhbmRsZUVuZHRNZWV0aW5nKCkge1xyXG5cdFx0XHRcdHRoaXMubWVldGluZ1VzZXJzLnNwbGljZSgwLCAyLCB7XHJcblx0XHRcdFx0XHR0eXBlOiAn562J5b6F6L+b5YWlJyxcclxuXHRcdFx0XHRcdHVzZXJJZDogJydcclxuXHRcdFx0XHR9LCB7XHJcblx0XHRcdFx0XHR0eXBlOiAn562J5b6F6L+b5YWlJyxcclxuXHRcdFx0XHRcdHVzZXJJZDogJydcclxuXHRcdFx0XHR9LCApXHJcblx0XHRcdFx0dGhpcy5zdGFydExvY2FsUHJldmlldygpO1xyXG5cdFx0XHRcdHRoaXMuZXhpdFJvb20oKTtcclxuXHRcdFx0XHR0aGlzLmRlc3Ryb3lJbnN0YW5jZSgpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHJcblx0XHRcdGJpbmRJbnB1dENoYW5nZShldmVudCwgdHlwZSkge1xyXG5cdFx0XHRcdGNvbnN0IHZhbHVlID0gZXZlbnQuZGV0YWlsLnZhbHVlO1xyXG5cdFx0XHRcdHN3aXRjaCAodHlwZSkge1xyXG5cdFx0XHRcdFx0Y2FzZSAncm9vbUlkJzoge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnJvb21JZCA9IHZhbHVlO1xyXG5cdFx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGNhc2UgJ3VzZXJJZCc6IHtcclxuXHRcdFx0XHRcdFx0dGhpcy51c2VySWQgPSB2YWx1ZTtcclxuXHRcdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRkZXN0cm95SW5zdGFuY2UoKSB7XHJcblx0XHRcdFx0aWYgKHRoaXMudHJ0Y0Nsb3VkKSB7XHJcblx0XHRcdFx0XHRUcnRjQ2xvdWQuZGVzdHJveUluc3RhbmNlKCk7XHJcblx0XHRcdFx0XHR0aGlzLnRydGNDbG91ZCA9IG51bGw7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9LFxyXG5cdFx0XHRjcmVhdGVUcnRjQ2xvdWQoKSB7XHJcblx0XHRcdFx0Y29uc29sZS5sb2coJ2NyZWF0ZVRydGNDbG91ZCcsdGhpcy5zZGtBcHBJZCk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQgPSBUcnRjQ2xvdWQuY3JlYXRlSW5zdGFuY2UoKTtcclxuXHRcdFx0XHR0aGlzLmhhbmRsZUV2ZW50cygpO1xyXG5cdFx0XHRcdHRoaXMuc2RrQXBwSWQgJiYgdW5pLiRjcmVhdGVUcnRjQ2xvdWRVcGxvYWQodGhpcy5zZGtBcHBJZCk7XHJcblx0XHRcdH0sXHJcblx0XHRcdGVudGVyUm9vbSgpIHtcclxuXHRcdFx0XHRjb25zb2xlLmxvZygnZW50ZXJSb29tJyxwYXJhbSk7XHJcblx0XHRcdFx0dHJ5IHtcclxuXHRcdFx0XHRcdGNvbnN0IHtcclxuXHRcdFx0XHRcdFx0c2RrQXBwSWQsXHJcblx0XHRcdFx0XHRcdGFwcFNjZW5lLFxyXG5cdFx0XHRcdFx0XHR1c2VyU2lnXHJcblx0XHRcdFx0XHR9ID0gdGhpcztcclxuXHRcdFx0XHRcdGxldCBwYXJhbSA9IHtcclxuXHRcdFx0XHRcdFx0cm9vbUlkOiB0aGlzLnJvb20uUm9vbU5vLFxyXG5cdFx0XHRcdFx0XHR1c2VySWQ6dGhpcy51c2VySWQsXHJcblx0XHRcdFx0XHRcdHNka0FwcElkLFxyXG5cdFx0XHRcdFx0XHR1c2VyU2lnXHJcblx0XHRcdFx0XHR9O1xyXG5cdFx0XHRcdFx0Y29uc29sZS5sb2coJ2VudGVyUm9vbScscGFyYW0pO1xyXG5cdFx0XHRcdFx0dGhpcy50cnRjQ2xvdWQuZW50ZXJSb29tKHBhcmFtLCBhcHBTY2VuZSk7XHJcblx0XHRcdFx0XHR0aGlzLnNka0FwcElkICYmIHVuaS4kZW50ZXJSb29tU3VjY2Vzc1VwbG9hZCh0aGlzLnNka0FwcElkKTtcclxuXHRcdFx0XHR9IGNhdGNoIChlcnJvcikge1xyXG5cdFx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdFx0Y29udGVudDogJ2BlbnRlclJvb20gZXJyb3IgPSAke0pTT04uc3RyaW5naWZ5KGVycm9yKX1gJ1xyXG5cdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdHRoaXMuc2RrQXBwSWQgJiYgdW5pLiRlbnRlclJvb21GYWlsZWRVcGxvYWQodGhpcy5zZGtBcHBJZCwgSlNPTi5zdHJpbmdpZnkoZXJyb3IpKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcblx0XHRcdGV4aXRSb29tKCkge1xyXG5cdFx0XHRcdHRyeSB7XHJcblx0XHRcdFx0XHR0aGlzLnN0YXJ0aW5nID0gZmFsc2U7XHJcblx0XHRcdFx0XHR0aGlzLnN0b3BMb2NhbFByZXZpZXcoKTtcclxuXHRcdFx0XHRcdHRoaXMuc3RvcFJlbW90ZVZpZXcoKTtcclxuXHRcdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLmV4aXRSb29tKCk7XHJcblx0XHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdFx0Ly8gVE9ETyBoYW5kbGUgdGhlIGV4Y2VwdGlvblxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0c3RhcnRMb2NhbFByZXZpZXcoKSB7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQuc3RhcnRMb2NhbFByZXZpZXcodGhpcy5pc0Zyb250Q2FtZXJhLCB0aGlzLnVzZXJJZCk7XHJcblx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdGNvbnRlbnQ6ICdzdGFydExvY2FsUHJldmlldydcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLnNka0FwcElkICYmIHVuaS4kc3RhcnRMb2NhbFByZXZpZXdVcGxvYWQodGhpcy5zZGtBcHBJZCk7XHJcblx0XHRcdH0sXHJcblx0XHRcdHN0b3BMb2NhbFByZXZpZXcoKSB7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQuc3RvcExvY2FsUHJldmlldygpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRzdGFydFJlbW90ZVZpZXcodXNlcklkKSB7XHJcblx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdGNvbnRlbnQ6ICdzdGFydFJlbW90ZVZpZXcnXHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0bGV0IGl0ZW0gPSB0aGlzLm1lZXRpbmdVc2Vycy5maW5kKHQgPT4gdC51c2VySWQgPT0gdXNlcklkKTtcclxuXHRcdFx0XHRpZiAoaXRlbSkge1xyXG5cdFx0XHRcdFx0dGhpcy4kbmV4dFRpY2soKCkgPT4ge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnRydGNDbG91ZC5zdGFydFJlbW90ZVZpZXcoaXRlbS51c2VySWQsIHRoaXMuc3RyZWFtVHlwZSwgaXRlbS51c2VySWQpO1xyXG5cdFx0XHRcdFx0XHR0aGlzLnNka0FwcElkICYmIHVuaS4kc3RhcnRSZW1vdGVWaWV3U3VjY2Vzc1VwbG9hZCh0aGlzLnNka0FwcElkKTtcclxuXHRcdFx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdFx0XHRjb250ZW50OiBgc3RhcnRSZW1vdGVWaWV3IHVzZXJJZCA9ICR7aXRlbS51c2VySWR9YFxyXG5cdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGl0ZW0uc3RhcnRpbmcgPSB0cnVlO1xyXG5cdFx0XHRcdHRoaXMubWVldGluZ1VzZXJzLnB1c2godGhpcy5tZWV0aW5nVXNlcnMucG9wKCkpO1xyXG5cdFx0XHR9LFxyXG5cdFx0XHRzdG9wUmVtb3RlVmlldyh1c2VySWQpIHtcclxuXHRcdFx0XHRsZXQgaW5kZXggPSB0aGlzLm1lZXRpbmdVc2Vycy5maW5kSW5kZXgodCA9PiB0LnVzZXJJZCA9PSB1c2VySWQpO1xyXG5cdFx0XHRcdGlmIChpbmRleCA+IC0xKSB7XHJcblx0XHRcdFx0XHR0aGlzLm1lZXRpbmdVc2Vyc1tpbmRleF0uc3RhcnRpbmcgPSBmYWxzZTtcclxuXHRcdFx0XHRcdHRoaXMubWVldGluZ1VzZXJzLnB1c2godGhpcy5tZWV0aW5nVXNlcnMucG9wKCkpO1xyXG5cdFx0XHRcdFx0dGhpcy50cnRjQ2xvdWQuc3RvcFJlbW90ZVZpZXcodXNlcklkLCB0aGlzLnN0cmVhbVR5cGUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0Ly8g5ZCs562S44CB5YWN5o+QIOWIh+aNolxyXG5cdFx0XHRzd2l0Y2hBdWRpb1JvdXRlKCkge1xyXG5cdFx0XHRcdHRoaXMuYXVkaW9Sb3V0ZSA9IHRoaXMuYXVkaW9Sb3V0ZSA9PT0gVFJUQ0Nsb3VkRGVmLlRSVENfQVVESU9fUk9VVEVfU1BFQUtFUiA/IFRSVENDbG91ZERlZlxyXG5cdFx0XHRcdFx0LlRSVENfQVVESU9fUk9VVEVfRUFSUElFQ0UgOiBUUlRDQ2xvdWREZWYuVFJUQ19BVURJT19ST1VURV9TUEVBS0VSO1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLnNldEF1ZGlvUm91dGUodGhpcy5hdWRpb1JvdXRlKTtcclxuXHRcdFx0fSxcclxuXHRcdFx0aGFuZGxlRXZlbnRzKCkge1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLm9uKCdvbldhcm5pbmcnLCAocmVzKSA9PiB7XHJcblx0XHRcdFx0XHR1bmkuc2hvd1RvYXN0KHtcclxuXHRcdFx0XHRcdFx0dGl0bGU6IGBvbldhcm5pbmc6ICR7SlNPTi5zdHJpbmdpZnkocmVzKX1gLFxyXG5cdFx0XHRcdFx0XHRpY29uOiAnbm9uZScsXHJcblx0XHRcdFx0XHR9KTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5vbignb25FcnJvcicsIChyZXMpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IGBlcnJvcjogJHtKU09OLnN0cmluZ2lmeShyZXMpfWBcclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHR0aGlzLnNka0FwcElkICYmIHVuaS4kb25FcnJvclVwbG9hZCh0aGlzLnNka0FwcElkLCBKU09OLnN0cmluZ2lmeShyZXMpKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5vbignb25FbnRlclJvb20nLCAocmVzdWx0KSA9PiB7XHJcblx0XHRcdFx0XHRjb25zb2xlLmxvZyhgLSBvbkVudGVyUm9vbSA9ICR7cmVzdWx0fWApO1xyXG5cdFx0XHRcdFx0aWYgKHJlc3VsdCA+IDApIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdFx0XHRjb250ZW50OiBg6L+b5oi/5oiQ5Yqf77yM6ICX5pe2OiAke3Jlc3VsdH1tc2BcclxuXHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRcdGNvbnNvbGUubG9nKGBlbnRlciByb29tIGZhaWxlZO+8jGVycm9yIGNvZGUgPSAke3Jlc3VsdH1gKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5vbignb25FeGl0Um9vbScsIChyZWFzb24pID0+IHtcclxuXHRcdFx0XHRcdGNvbnN0IHJlYXNvbkxpc3QgPSBbJ+S4u+WKqOiwg+eUqCBleGl0Um9vbSDpgIDmiL8nLCAn6KKr5pyN5Yqh5Zmo6Lii5Ye65b2T5YmN5oi/6Ze0JywgJ+W9k+WJjeaIv+mXtOaVtOS4quiiq+ino+aVoyddO1xyXG5cdFx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdFx0Y29udGVudDogYOmAgOaIvyAke3JlYXNvbkxpc3RbcmVhc29uXX1gXHJcblx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLm9uKCdvbkZpcnN0VmlkZW9GcmFtZScsIChyZXMpID0+IHtcclxuXHRcdFx0XHRcdGNvbnNvbGUubG9nKGDmuLLmn5PnmoTpppbluKfnlLvpnaLlk43lupQgPSAke0pTT04uc3RyaW5naWZ5KHJlcyl9YCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQub24oJ29uUmVtb3RlVXNlckVudGVyUm9vbScsICh1c2VySWQpID0+IHtcclxuXHRcdFx0XHRcdGlmICh0aGlzLm1lZXRpbmdVc2Vycy5sZW5ndGggPj0gMikge1xyXG5cdFx0XHRcdFx0XHR0aGlzLm1lZXRpbmdVc2VycyA9IHRoaXMubWVldGluZ1VzZXJzLmZpbHRlcih0ID0+IHQuc3RhcnRpbmcpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aWYgKHRoaXMubWVldGluZ1VzZXJzLmxlbmd0aCA8IDIgJiYgdXNlcklkICE9IHRoaXMudXNlcklkKSB7XHJcblx0XHRcdFx0XHRcdHRoaXMubWVldGluZ1VzZXJzLnB1c2goe1xyXG5cdFx0XHRcdFx0XHRcdHVzZXJJZDogdXNlcklkLFxyXG5cdFx0XHRcdFx0XHRcdHR5cGU6ICfnlKjmiLfnsbvlnosnXHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0XHRpZiAodGhpcy5tZWV0aW5nVXNlcnMubGVuZ3RoIDwgMikge1xyXG5cdFx0XHRcdFx0XHRcdHRoaXMubWVldGluZ1VzZXJzLnB1c2goe1xyXG5cdFx0XHRcdFx0XHRcdFx0dHlwZTogJ+etieW+hei/m+WFpSdcclxuXHRcdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdFx0Y29udGVudDogYOeUqOaIt+i/m+aIvzogdXNlcklkID0gJHt1c2VySWR9YFxyXG5cdFx0XHRcdFx0XHR9KVxyXG5cdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdFx0XHRjb250ZW50OiBg55So5oi36L+b5oi/5aSx6LSl77yM5oi/6Ze05bey5ruhOiB1c2VySWQgPSAke3VzZXJJZH1gXHJcblx0XHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdFx0dGhpcy50cnRjQ2xvdWQub24oJ29uUmVtb3RlVXNlckxlYXZlUm9vbScsICh1c2VySWQpID0+IHtcclxuXHRcdFx0XHRcdGxldCBpbmRleCA9IHRoaXMubWVldGluZ1VzZXJzLmZpbmRJbmRleCh0ID0+IHQudXNlcklkID09IHVzZXJJZCk7XHJcblx0XHRcdFx0XHRpZiAoaW5kZXggPj0gMCkge1xyXG5cdFx0XHRcdFx0XHR0aGlzLm1lZXRpbmdVc2Vycy5zcGxpY2UoaW5kZXgsIDEpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aWYgKHRoaXMubWVldGluZ1VzZXJzLmxlbmd0aCA8IDIpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5tZWV0aW5nVXNlcnMucHVzaCh7XHJcblx0XHRcdFx0XHRcdFx0dHlwZTogJ+etieW+hei/m+WFpSdcclxuXHRcdFx0XHRcdFx0fSlcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHRoaXMubWVzc2FnZUxpc3QudW5zaGlmdCh7XHJcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IGDnlKjmiLfnprvlvIDmiL/pl7Q6IHVzZXJJZCA9ICR7dXNlcklkfWBcclxuXHRcdFx0XHRcdH0pXHJcblxyXG5cclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0XHR0aGlzLnRydGNDbG91ZC5vbignb25Vc2VyVmlkZW9BdmFpbGFibGUnLCAocmVzKSA9PiB7XHJcblx0XHRcdFx0XHRjb25zdCB7XHJcblx0XHRcdFx0XHRcdHVzZXJJZCxcclxuXHRcdFx0XHRcdFx0YXZhaWxhYmxlXHJcblx0XHRcdFx0XHR9ID0gcmVzO1xyXG5cdFx0XHRcdFx0dGhpcy5tZXNzYWdlTGlzdC51bnNoaWZ0KHtcclxuXHRcdFx0XHRcdFx0Y29udGVudDogYG9uVXNlclZpZGVvQXZhaWxhYmxlID0gJHtKU09OLnN0cmluZ2lmeShyZXMpfWBcclxuXHRcdFx0XHRcdH0pXHJcblx0XHRcdFx0XHRpZiAodXNlcklkICYmIGF2YWlsYWJsZSkge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnN0YXJ0UmVtb3RlVmlldyh1c2VySWQpO1xyXG5cdFx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5zdG9wUmVtb3RlVmlldyh1c2VySWQpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH0pO1xyXG5cdFx0XHRcdHRoaXMudHJ0Y0Nsb3VkLm9uKCdvbkV4aXRSb29tJywgKHJlcykgPT4ge1xyXG5cdFx0XHRcdFx0Y29uc29sZS5sb2coYG9uRXhpdFJvb20gPSAke0pTT04uc3RyaW5naWZ5KHJlcyl9YCk7XHJcblx0XHRcdFx0fSk7XHJcblx0XHRcdH0sXHJcblx0XHR9XHJcblx0fVxyXG48L3NjcmlwdD5cclxuPHN0eWxlIHNyYz1cIkAvcGFnZXMvbWVldGluZy9tZWV0aW5nLmNzc1wiPjwvc3R5bGU+XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///9\n");
541 536  
542 537 /***/ }),
543 538 /* 10 */
... ...