@agilemotion/oui-react-js 2.0.16 → 2.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/components/Calender.css +1 -1
  2. package/dist/components/TableCellContent.js +9 -18
  3. package/dist/components/dashboard/FoldingSideTabDashboard.css +1 -1
  4. package/dist/components/dashboard/FoldingSideTabDashboard.js +10 -7
  5. package/dist/components/form/LookupField.js +27 -3
  6. package/dist/components/layout/Layout.js +15 -3
  7. package/dist/components/layout/ViewPort.js +2 -2
  8. package/dist/components/layout/Window.css +4 -1
  9. package/dist/components/layout/Window.js +147 -29
  10. package/dist/components/layout/WindowDialog.js +8 -5
  11. package/dist/components/layout/WindowViewPort.js +8 -2
  12. package/dist/components/media/Chat.js +4 -2
  13. package/dist/components/media/ClosablePanel.js +55 -27
  14. package/dist/components/media/MediaSoupHelper.js +13 -1
  15. package/dist/components/media/SideBarContent.js +22 -8
  16. package/dist/components/media/TrainingRoom.js +141 -46
  17. package/dist/components/media/VCEventType.js +3 -1
  18. package/dist/components/media/VCParticipantList.js +53 -27
  19. package/dist/components/media/VCRoom.css +22 -0
  20. package/dist/components/media/VCRoom.js +34 -15
  21. package/dist/components/media/VCRoomParticipant.css +3 -2
  22. package/dist/components/media/VCRoomParticipant.js +140 -48
  23. package/dist/components/media/VCRoomRecorder.js +117 -40
  24. package/dist/components/media/VCRoomWorkspace.css +0 -1
  25. package/dist/components/media/VCRoomWorkspace.js +158 -23
  26. package/dist/components/media/VCSettings.js +462 -0
  27. package/dist/components/media/VideoPlayer.js +4 -1
  28. package/dist/components/media/audioLevelMeter.js +96 -0
  29. package/dist/components/media/chat/ChatRoom.js +13 -9
  30. package/dist/components/media/chat/ChatRoomItem.js +3 -2
  31. package/dist/components/media/chat/ChatRoomWrapper.js +4 -1
  32. package/dist/components/media/chat/ChatRooms.scss +5 -3
  33. package/dist/hooks/useContainerWidth.js +44 -0
  34. package/dist/js/Media.js +11 -2
  35. package/dist/view/security/RegisterInteractionPortal.js +101 -3
  36. package/package.json +2 -2
@@ -14,6 +14,7 @@ var _SocketManager = _interopRequireDefault(require("../../SocketManager"));
14
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
15
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
16
  const ChatRoomItem = props => {
17
+ var _event$participants$f;
17
18
  const {
18
19
  event,
19
20
  selectedChat
@@ -47,7 +48,7 @@ const ChatRoomItem = props => {
47
48
  max: 9
48
49
  }, /*#__PURE__*/_react.default.createElement(_material.Avatar, null, event.type === 'CALENDAR_MEETING' || event.participants.length > 2 ? /*#__PURE__*/_react.default.createElement(_reactFeather.Calendar, {
49
50
  color: _ApplicationManager.default.getApplicationPrimaryColor()
50
- }) : _Utils.default.getInitials(event.participants.find(p => p.userId !== currentUser.userId).name))), /*#__PURE__*/_react.default.createElement("div", {
51
+ }) : _Utils.default.getInitials(((_event$participants$f = event.participants.find(p => p.userId !== currentUser.userId)) === null || _event$participants$f === void 0 ? void 0 : _event$participants$f.name) || event.name || ''))), /*#__PURE__*/_react.default.createElement("div", {
51
52
  className: "chatroom__info"
52
53
  }, /*#__PURE__*/_react.default.createElement("div", {
53
54
  className: "chatRoom__title"
@@ -60,4 +61,4 @@ const ChatRoomItem = props => {
60
61
  }, event.messages && event.messages.length > 0 && currentUser ? [event.messages[event.messages.length - 1].participant.userId === currentUser.userId ? [event.messages[event.messages.length - 1].type === 'FILE' ? /*#__PURE__*/_react.default.createElement("span", null, 'You: ', event.messages[event.messages.length - 1].content ? event.messages[event.messages.length - 1].content : /*#__PURE__*/_react.default.createElement("span", null, "document")) : [event.messages[event.messages.length - 1].content.length > 42 ? /*#__PURE__*/_react.default.createElement("span", null, 'You: ', event.messages[event.messages.length - 1].content.slice(0, 42), '...') : /*#__PURE__*/_react.default.createElement("span", null, 'You: ', event.messages[event.messages.length - 1].content)]] : [event.messages[event.messages.length - 1].type === 'FILE' ? /*#__PURE__*/_react.default.createElement("span", null, event.messages[event.messages.length - 1].participant.name, ': ', event.messages[event.messages.length - 1].content ? event.messages[event.messages.length - 1].content : /*#__PURE__*/_react.default.createElement("span", null, "document")) : [event.messages[event.messages.length - 1].content.length > 42 ? /*#__PURE__*/_react.default.createElement("span", null, event.messages[event.messages.length - 1].participant.name, ': ', event.messages[event.messages.length - 1].content.slice(0, 42), '...') : /*#__PURE__*/_react.default.createElement("span", null, event.messages[event.messages.length - 1].participant.name, ': ', event.messages[event.messages.length - 1].content)]]] : null)));
61
62
  };
62
63
  var _default = exports.default = ChatRoomItem;
63
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbWF0ZXJpYWwiLCJfbW9tZW50IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9yZWFjdEZlYXRoZXIiLCJfVXRpbHMiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiX1NvY2tldE1hbmFnZXIiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJ0IiwiV2Vha01hcCIsInIiLCJuIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiaGFzIiwiZ2V0Iiwic2V0IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJDaGF0Um9vbUl0ZW0iLCJwcm9wcyIsImV2ZW50Iiwic2VsZWN0ZWRDaGF0IiwiY3VycmVudFVzZXIiLCJzZXRDdXJyZW50VXNlciIsInVzZVN0YXRlIiwiYXBwbGljYXRpb25NYW5hZ2VyIiwiZ2V0VXNlckRldGFpbHMiLCJ1c2VFZmZlY3QiLCJnb1RvUm9vbSIsImlkIiwic2VsZWN0aW9uSGFuZGxlciIsImdldFVucmVhZE1lc3NhZ2VzQ291bnQiLCJ1bnJlYWQiLCJzb2NrZXRNYW5hZ2VyIiwidW5yZWFkTWVzc2FnZXMiLCJmaW5kIiwidSIsIm51bWJlck9mVW5yZWFkIiwiY3JlYXRlRWxlbWVudCIsInN0eWxlIiwicGFkZGluZ0xlZnQiLCJwYWRkaW5nUmlnaHQiLCJjbGFzc05hbWUiLCJjb25jYXQiLCJvbkNsaWNrIiwiQmFkZ2UiLCJjb2xvciIsImJhZGdlQ29udGVudCIsIm1heCIsIkF2YXRhciIsInR5cGUiLCJwYXJ0aWNpcGFudHMiLCJsZW5ndGgiLCJDYWxlbmRhciIsImdldEFwcGxpY2F0aW9uUHJpbWFyeUNvbG9yIiwiVXRpbHMiLCJnZXRJbml0aWFscyIsInAiLCJ1c2VySWQiLCJuYW1lIiwiZm9udFNpemUiLCJ0aXRsZSIsImdldENoYXRNZWV0aW5nVGl0bGUiLCJpc1RvZGF5IiwidXBkYXRlZEF0IiwibW9tZW50IiwiZm9ybWF0IiwibWVzc2FnZXMiLCJwYXJ0aWNpcGFudCIsImNvbnRlbnQiLCJzbGljZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tZWRpYS9jaGF0L0NoYXRSb29tSXRlbS5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBdmF0YXIsIEJhZGdlIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBDYWxlbmRhciB9IGZyb20gJ3JlYWN0LWZlYXRoZXInO1xuaW1wb3J0IFV0aWxzIGZyb20gJy4uLy4uLy4uL1V0aWxzJztcbmltcG9ydCBhcHBsaWNhdGlvbk1hbmFnZXIgZnJvbSBcIi4uLy4uLy4uL0FwcGxpY2F0aW9uTWFuYWdlclwiO1xuaW1wb3J0IHNvY2tldE1hbmFnZXIgZnJvbSBcIi4uLy4uL1NvY2tldE1hbmFnZXJcIjtcblxuY29uc3QgQ2hhdFJvb21JdGVtID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZXZlbnQsIHNlbGVjdGVkQ2hhdCB9ID0gcHJvcHM7XG4gIGNvbnN0IFtjdXJyZW50VXNlciwgc2V0Q3VycmVudFVzZXJdID0gdXNlU3RhdGUoXG4gICAgYXBwbGljYXRpb25NYW5hZ2VyLmdldFVzZXJEZXRhaWxzKClcbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldEN1cnJlbnRVc2VyKGFwcGxpY2F0aW9uTWFuYWdlci5nZXRVc2VyRGV0YWlscygpKTtcbiAgfSwgW10pO1xuXG4gIGNvbnN0IGdvVG9Sb29tID0gKGlkKSA9PiB7XG4gICAgcHJvcHMuc2VsZWN0aW9uSGFuZGxlcihldmVudCk7XG4gIH07XG5cbiAgY29uc3QgZ2V0VW5yZWFkTWVzc2FnZXNDb3VudCA9ICgpID0+IHtcbiAgICBsZXQgdW5yZWFkID0gc29ja2V0TWFuYWdlci51bnJlYWRNZXNzYWdlcy5maW5kKHUgPT4gdS5pZCA9PT0gZXZlbnQuaWQpO1xuICAgIGlmICh1bnJlYWQpIHtcbiAgICAgIHJldHVybiB1bnJlYWQubnVtYmVyT2ZVbnJlYWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHN0eWxlPXt7cGFkZGluZ0xlZnQ6ICcxNnB4JywgcGFkZGluZ1JpZ2h0OiAnMTZweCd9fVxuICAgICAgY2xhc3NOYW1lPXtgY2hhdHJvb21fX2l0ZW0gJHtzZWxlY3RlZENoYXQgJiYgZXZlbnQuaWQgPT09IHNlbGVjdGVkQ2hhdC5pZCA/ICdhY3RpdmUtdGFiJyA6ICcnfWB9XG4gICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgIGdvVG9Sb29tKGV2ZW50LmlkKTtcbiAgICAgIH19XG4gICAgPlxuICAgICAgPEJhZGdlIGNvbG9yPVwiZXJyb3JcIiBiYWRnZUNvbnRlbnQ9eyBnZXRVbnJlYWRNZXNzYWdlc0NvdW50KCkgfSBtYXg9ezl9PlxuICAgICAgICA8QXZhdGFyPlxuICAgICAgICAgIHtldmVudC50eXBlID09PSAnQ0FMRU5EQVJfTUVFVElORycgfHwgZXZlbnQucGFydGljaXBhbnRzLmxlbmd0aCA+IDIgPyAoXG4gICAgICAgICAgICA8Q2FsZW5kYXIgY29sb3I9e2FwcGxpY2F0aW9uTWFuYWdlci5nZXRBcHBsaWNhdGlvblByaW1hcnlDb2xvcigpfSAvPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICBVdGlscy5nZXRJbml0aWFscyhldmVudC5wYXJ0aWNpcGFudHMuZmluZChwID0+IHAudXNlcklkICE9PSBjdXJyZW50VXNlci51c2VySWQpLm5hbWUpXG4gICAgICAgICAgKX1cbiAgICAgICAgPC9BdmF0YXI+XG4gICAgICA8L0JhZGdlPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjaGF0cm9vbV9faW5mb1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNoYXRSb29tX190aXRsZVwiPlxuICAgICAgICAgIDxwIHN0eWxlPXt7IGZvbnRTaXplOiAnMTZweCcgfX0+XG4gICAgICAgICAgICB7ZXZlbnQudHlwZSA9PT0gJ0NBTEVOREFSX01FRVRJTkcnIHx8IGV2ZW50LnRpdGxlXG4gICAgICAgICAgICAgID8gZXZlbnQudGl0bGVcbiAgICAgICAgICAgICAgOiBVdGlscy5nZXRDaGF0TWVldGluZ1RpdGxlKGV2ZW50LnBhcnRpY2lwYW50cywgY3VycmVudFVzZXIudXNlcklkLCAyMilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICB7VXRpbHMuaXNUb2RheShldmVudC51cGRhdGVkQXQpXG4gICAgICAgICAgICAgID8gbW9tZW50KGV2ZW50LnVwZGF0ZWRBdCkuZm9ybWF0KCdISDptbScpXG4gICAgICAgICAgICAgIDogbW9tZW50KGV2ZW50LnVwZGF0ZWRBdCkuZm9ybWF0KCdERC9NTScpfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2hhdHJvb21fX21lc3NhZ2VcIj5cbiAgICAgICAgICB7ZXZlbnQubWVzc2FnZXMgJiYgZXZlbnQubWVzc2FnZXMubGVuZ3RoID4gMCAmJiBjdXJyZW50VXNlclxuICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0ucGFydGljaXBhbnQudXNlcklkID09PSBjdXJyZW50VXNlci51c2VySWRcbiAgICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLnR5cGUgPT09XG4gICAgICAgICAgICAgICAgICAgICAgJ0ZJTEUnID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsnWW91OiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7ZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0uY29udGVudCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5jb250ZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+ZG9jdW1lbnQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0uY29udGVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZW5ndGggPiA0MiA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnWW91OiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50Lm1lc3NhZ2VzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLmNvbnRlbnQuc2xpY2UoMCwgNDIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeycuLi4nfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnWW91OiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5jb250ZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLnR5cGUgPT09XG4gICAgICAgICAgICAgICAgICAgICAgJ0ZJTEUnID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5wYXJ0aWNpcGFudC5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7JzogJ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnQgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0uY29udGVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPmRvY3VtZW50PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnQubGVuZ3RoID4gNDIgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0ucGFydGljaXBhbnQubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnOiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnQuc2xpY2UoMCwgNDIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeycuLi4nfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5wYXJ0aWNpcGFudC5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyc6ICd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQ2hhdFJvb21JdGVtO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxTQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxPQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxhQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxNQUFBLEdBQUFGLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBTSxtQkFBQSxHQUFBSCxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQU8sY0FBQSxHQUFBSixzQkFBQSxDQUFBSCxPQUFBO0FBQWdELFNBQUFHLHVCQUFBSyxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBQUEsU0FBQVQsd0JBQUFTLENBQUEsRUFBQUcsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFiLHVCQUFBLFlBQUFBLENBQUFTLENBQUEsRUFBQUcsQ0FBQSxTQUFBQSxDQUFBLElBQUFILENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLFNBQUFELENBQUEsTUFBQU8sQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsS0FBQUMsU0FBQSxRQUFBUixPQUFBLEVBQUFGLENBQUEsaUJBQUFBLENBQUEsdUJBQUFBLENBQUEseUJBQUFBLENBQUEsU0FBQVMsQ0FBQSxN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
64
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbWF0ZXJpYWwiLCJfbW9tZW50IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9yZWFjdEZlYXRoZXIiLCJfVXRpbHMiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiX1NvY2tldE1hbmFnZXIiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJ0IiwiV2Vha01hcCIsInIiLCJuIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiaGFzIiwiZ2V0Iiwic2V0IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJDaGF0Um9vbUl0ZW0iLCJwcm9wcyIsIl9ldmVudCRwYXJ0aWNpcGFudHMkZiIsImV2ZW50Iiwic2VsZWN0ZWRDaGF0IiwiY3VycmVudFVzZXIiLCJzZXRDdXJyZW50VXNlciIsInVzZVN0YXRlIiwiYXBwbGljYXRpb25NYW5hZ2VyIiwiZ2V0VXNlckRldGFpbHMiLCJ1c2VFZmZlY3QiLCJnb1RvUm9vbSIsImlkIiwic2VsZWN0aW9uSGFuZGxlciIsImdldFVucmVhZE1lc3NhZ2VzQ291bnQiLCJ1bnJlYWQiLCJzb2NrZXRNYW5hZ2VyIiwidW5yZWFkTWVzc2FnZXMiLCJmaW5kIiwidSIsIm51bWJlck9mVW5yZWFkIiwiY3JlYXRlRWxlbWVudCIsInN0eWxlIiwicGFkZGluZ0xlZnQiLCJwYWRkaW5nUmlnaHQiLCJjbGFzc05hbWUiLCJjb25jYXQiLCJvbkNsaWNrIiwiQmFkZ2UiLCJjb2xvciIsImJhZGdlQ29udGVudCIsIm1heCIsIkF2YXRhciIsInR5cGUiLCJwYXJ0aWNpcGFudHMiLCJsZW5ndGgiLCJDYWxlbmRhciIsImdldEFwcGxpY2F0aW9uUHJpbWFyeUNvbG9yIiwiVXRpbHMiLCJnZXRJbml0aWFscyIsInAiLCJ1c2VySWQiLCJuYW1lIiwiZm9udFNpemUiLCJ0aXRsZSIsImdldENoYXRNZWV0aW5nVGl0bGUiLCJpc1RvZGF5IiwidXBkYXRlZEF0IiwibW9tZW50IiwiZm9ybWF0IiwibWVzc2FnZXMiLCJwYXJ0aWNpcGFudCIsImNvbnRlbnQiLCJzbGljZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tZWRpYS9jaGF0L0NoYXRSb29tSXRlbS5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBdmF0YXIsIEJhZGdlIH0gZnJvbSAnQG11aS9tYXRlcmlhbCc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBDYWxlbmRhciB9IGZyb20gJ3JlYWN0LWZlYXRoZXInO1xuaW1wb3J0IFV0aWxzIGZyb20gJy4uLy4uLy4uL1V0aWxzJztcbmltcG9ydCBhcHBsaWNhdGlvbk1hbmFnZXIgZnJvbSBcIi4uLy4uLy4uL0FwcGxpY2F0aW9uTWFuYWdlclwiO1xuaW1wb3J0IHNvY2tldE1hbmFnZXIgZnJvbSBcIi4uLy4uL1NvY2tldE1hbmFnZXJcIjtcblxuY29uc3QgQ2hhdFJvb21JdGVtID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZXZlbnQsIHNlbGVjdGVkQ2hhdCB9ID0gcHJvcHM7XG4gIGNvbnN0IFtjdXJyZW50VXNlciwgc2V0Q3VycmVudFVzZXJdID0gdXNlU3RhdGUoXG4gICAgYXBwbGljYXRpb25NYW5hZ2VyLmdldFVzZXJEZXRhaWxzKClcbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldEN1cnJlbnRVc2VyKGFwcGxpY2F0aW9uTWFuYWdlci5nZXRVc2VyRGV0YWlscygpKTtcbiAgfSwgW10pO1xuXG4gIGNvbnN0IGdvVG9Sb29tID0gKGlkKSA9PiB7XG4gICAgcHJvcHMuc2VsZWN0aW9uSGFuZGxlcihldmVudCk7XG4gIH07XG5cbiAgY29uc3QgZ2V0VW5yZWFkTWVzc2FnZXNDb3VudCA9ICgpID0+IHtcbiAgICBsZXQgdW5yZWFkID0gc29ja2V0TWFuYWdlci51bnJlYWRNZXNzYWdlcy5maW5kKHUgPT4gdS5pZCA9PT0gZXZlbnQuaWQpO1xuICAgIGlmICh1bnJlYWQpIHtcbiAgICAgIHJldHVybiB1bnJlYWQubnVtYmVyT2ZVbnJlYWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHN0eWxlPXt7cGFkZGluZ0xlZnQ6ICcxNnB4JywgcGFkZGluZ1JpZ2h0OiAnMTZweCd9fVxuICAgICAgY2xhc3NOYW1lPXtgY2hhdHJvb21fX2l0ZW0gJHtzZWxlY3RlZENoYXQgJiYgZXZlbnQuaWQgPT09IHNlbGVjdGVkQ2hhdC5pZCA/ICdhY3RpdmUtdGFiJyA6ICcnfWB9XG4gICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgIGdvVG9Sb29tKGV2ZW50LmlkKTtcbiAgICAgIH19XG4gICAgPlxuICAgICAgPEJhZGdlIGNvbG9yPVwiZXJyb3JcIiBiYWRnZUNvbnRlbnQ9eyBnZXRVbnJlYWRNZXNzYWdlc0NvdW50KCkgfSBtYXg9ezl9PlxuICAgICAgICA8QXZhdGFyPlxuICAgICAgICAgIHtldmVudC50eXBlID09PSAnQ0FMRU5EQVJfTUVFVElORycgfHwgZXZlbnQucGFydGljaXBhbnRzLmxlbmd0aCA+IDIgPyAoXG4gICAgICAgICAgICA8Q2FsZW5kYXIgY29sb3I9e2FwcGxpY2F0aW9uTWFuYWdlci5nZXRBcHBsaWNhdGlvblByaW1hcnlDb2xvcigpfSAvPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICBVdGlscy5nZXRJbml0aWFscyhldmVudC5wYXJ0aWNpcGFudHMuZmluZChwID0+IHAudXNlcklkICE9PSBjdXJyZW50VXNlci51c2VySWQpPy5uYW1lIHx8IGV2ZW50Lm5hbWUgfHwgJycpXG4gICAgICAgICAgKX1cbiAgICAgICAgPC9BdmF0YXI+XG4gICAgICA8L0JhZGdlPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjaGF0cm9vbV9faW5mb1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNoYXRSb29tX190aXRsZVwiPlxuICAgICAgICAgIDxwIHN0eWxlPXt7IGZvbnRTaXplOiAnMTZweCcgfX0+XG4gICAgICAgICAgICB7ZXZlbnQudHlwZSA9PT0gJ0NBTEVOREFSX01FRVRJTkcnIHx8IGV2ZW50LnRpdGxlXG4gICAgICAgICAgICAgID8gZXZlbnQudGl0bGVcbiAgICAgICAgICAgICAgOiBVdGlscy5nZXRDaGF0TWVldGluZ1RpdGxlKGV2ZW50LnBhcnRpY2lwYW50cywgY3VycmVudFVzZXIudXNlcklkLCAyMilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3A+XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICB7VXRpbHMuaXNUb2RheShldmVudC51cGRhdGVkQXQpXG4gICAgICAgICAgICAgID8gbW9tZW50KGV2ZW50LnVwZGF0ZWRBdCkuZm9ybWF0KCdISDptbScpXG4gICAgICAgICAgICAgIDogbW9tZW50KGV2ZW50LnVwZGF0ZWRBdCkuZm9ybWF0KCdERC9NTScpfVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY2hhdHJvb21fX21lc3NhZ2VcIj5cbiAgICAgICAgICB7ZXZlbnQubWVzc2FnZXMgJiYgZXZlbnQubWVzc2FnZXMubGVuZ3RoID4gMCAmJiBjdXJyZW50VXNlclxuICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0ucGFydGljaXBhbnQudXNlcklkID09PSBjdXJyZW50VXNlci51c2VySWRcbiAgICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLnR5cGUgPT09XG4gICAgICAgICAgICAgICAgICAgICAgJ0ZJTEUnID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHsnWW91OiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7ZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0uY29udGVudCA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5jb250ZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+ZG9jdW1lbnQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0uY29udGVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sZW5ndGggPiA0MiA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnWW91OiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50Lm1lc3NhZ2VzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLmNvbnRlbnQuc2xpY2UoMCwgNDIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeycuLi4nfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnWW91OiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5jb250ZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLnR5cGUgPT09XG4gICAgICAgICAgICAgICAgICAgICAgJ0ZJTEUnID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5wYXJ0aWNpcGFudC5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7JzogJ31cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnQgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0uY29udGVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPmRvY3VtZW50PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnQubGVuZ3RoID4gNDIgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ZXZlbnQubWVzc2FnZXNbZXZlbnQubWVzc2FnZXMubGVuZ3RoIC0gMV0ucGFydGljaXBhbnQubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnOiAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnQuc2xpY2UoMCwgNDIpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeycuLi4nfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtldmVudC5tZXNzYWdlc1tldmVudC5tZXNzYWdlcy5sZW5ndGggLSAxXS5wYXJ0aWNpcGFudC5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyc6ICd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50Lm1lc3NhZ2VzW2V2ZW50Lm1lc3NhZ2VzLmxlbmd0aCAtIDFdLmNvbnRlbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQ2hhdFJvb21JdGVtO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxTQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxPQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxhQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxNQUFBLEdBQUFGLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBTSxtQkFBQSxHQUFBSCxzQkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQU8sY0FBQSxHQUFBSixzQkFBQSxDQUFBSCxPQUFBO0FBQWdELFNBQUFHLHVCQUFBSyxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBQUEsU0FBQVQsd0JBQUFTLENBQUEsRUFBQUcsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFiLHVCQUFBLFlBQUFBLENBQUFTLENBQUEsRUFBQUcsQ0FBQSxTQUFBQSxDQUFBLElBQUFILENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLFNBQUFELENBQUEsTUFBQU8sQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsS0FBQUMsU0FBQSxRQUFBUixPQUFBLEVBQUFGLENBQUEsaUJB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
@@ -27,6 +27,9 @@ const ChatRoomWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.def
27
27
  _Observable.default.addSystemSubscriptions(props.viewId, parsedConfig);
28
28
  let event = new _Event.default(props.handle, props.viewId, null);
29
29
  _Observable.default.fireEvent(_EventType.default.COMPONENT_LOAD, event);
30
+ return () => {
31
+ _Observable.default.clearComponentEventListeners(props.handle);
32
+ };
30
33
  }, []);
31
34
  const api = () => {
32
35
  return {
@@ -62,4 +65,4 @@ const ChatRoomWrapper = /*#__PURE__*/_react.default.memo(/*#__PURE__*/_react.def
62
65
  }) : null);
63
66
  }));
64
67
  var _default = exports.default = ChatRoomWrapper;
65
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9DaGF0Um9vbSIsIl9VdGlscyIsIl9PYnNlcnZhYmxlIiwiX0V2ZW50IiwiX0V2ZW50VHlwZSIsIl9SZXN0VXRpbHMiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwibG9jYXRpb24iLCJ3aW5kb3ciLCJwcm90b2NvbCIsImhvc3RuYW1lIiwiQ2hhdFJvb21XcmFwcGVyIiwiUmVhY3QiLCJtZW1vIiwiZm9yd2FyZFJlZiIsInByb3BzIiwicmVmIiwidmlzaWJsZSIsInNldFZpc2libGUiLCJ1c2VTdGF0ZSIsImNoYXQiLCJzZXRDaGF0IiwidXNlRWZmZWN0IiwiaGFuZGxlIiwiYXBpIiwicGFyc2VkQ29uZmlnIiwiVXRpbHMiLCJwYXJzZUNvbmZpZyIsImNvbmZpZyIsInZpZXdJZCIsImV2ZW50TWFuYWdlciIsImFkZFN1YnNjcmlwdGlvbnMiLCJldmVudEhhbmRsaW5nQ29uZmlnIiwiYWRkU3lzdGVtU3Vic2NyaXB0aW9ucyIsImV2ZW50IiwiRXZlbnQiLCJmaXJlRXZlbnQiLCJFdmVudFR5cGUiLCJDT01QT05FTlRfTE9BRCIsImlkIiwibG9hZERhdGEiLCJhY3Rpb25Db25maWciLCJyZWZyZXNoIiwiZ2V0Q2hpbGRyZW4iLCJ2YWx1ZSIsInNlbmRSZXF1ZXN0IiwiY29uY2F0IiwiYXBwbGljYXRpb25NYW5hZ2VyIiwiZ2V0Q29udGV4dFJvb3QiLCJyZXNwb25zZSIsImNvbnNvbGUiLCJlcnJvciIsImNyZWF0ZUVsZW1lbnQiLCJzdHlsZSIsImRpc3BsYXkiLCJpc051bGwiLCJzZWxlY3RlZENoYXQiLCJyZWFkT25seSIsImdldENvbXBvbmVudEF0dHJpYnV0ZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9tZWRpYS9jaGF0L0NoYXRSb29tV3JhcHBlci5qc3giXSwic291cmNlc0NvbnRlbnQiOlsi77u/aW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBDaGF0Um9vbSBmcm9tIFwiLi9DaGF0Um9vbVwiO1xuaW1wb3J0IFV0aWxzIGZyb20gXCIuLi8uLi8uLi9VdGlsc1wiO1xuaW1wb3J0IGV2ZW50TWFuYWdlciBmcm9tIFwiLi4vLi4vLi4vZXZlbnQvT2JzZXJ2YWJsZVwiO1xuaW1wb3J0IEV2ZW50IGZyb20gXCIuLi8uLi8uLi9ldmVudC9FdmVudFwiO1xuaW1wb3J0IEV2ZW50VHlwZSBmcm9tIFwiLi4vLi4vLi4vZXZlbnQvRXZlbnRUeXBlXCI7XG5pbXBvcnQge3NlbmRSZXF1ZXN0fSBmcm9tIFwiLi4vLi4vLi4vUmVzdFV0aWxzXCI7XG5pbXBvcnQgYXBwbGljYXRpb25NYW5hZ2VyIGZyb20gXCIuLi8uLi8uLi9BcHBsaWNhdGlvbk1hbmFnZXJcIjtcblxuY29uc3QgbG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgKyAnLy8nICsgd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lO1xuY29uc3QgQ2hhdFJvb21XcmFwcGVyID0gUmVhY3QubWVtbyhSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XG4gICAgY29uc3QgW3Zpc2libGUsIHNldFZpc2libGVdID0gUmVhY3QudXNlU3RhdGUodHJ1ZSk7XG4gICAgY29uc3QgW2NoYXQsIHNldENoYXRdID0gUmVhY3QudXNlU3RhdGUobnVsbCk7XG5cbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBwcm9wcy5oYW5kbGUuYXBpID0gYXBpKCk7XG4gICAgfSk7XG5cbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBwcm9wcy5oYW5kbGUuYXBpID0gYXBpKCk7XG5cbiAgICAgICAgbGV0IHBhcnNlZENvbmZpZyA9IFV0aWxzLnBhcnNlQ29uZmlnKHByb3BzLmNvbmZpZywgcHJvcHMudmlld0lkKTtcbiAgICAgICAgZXZlbnRNYW5hZ2VyLmFkZFN1YnNjcmlwdGlvbnMocGFyc2VkQ29uZmlnLmV2ZW50SGFuZGxpbmdDb25maWcsIHByb3BzLmhhbmRsZSwgcHJvcHMudmlld0lkKTtcbiAgICAgICAgZXZlbnRNYW5hZ2VyLmFkZFN5c3RlbVN1YnNjcmlwdGlvbnMocHJvcHMudmlld0lkLCBwYXJzZWRDb25maWcpO1xuXG4gICAgICAgIGxldCBldmVudCA9IG5ldyBFdmVudChwcm9wcy5oYW5kbGUsIHByb3BzLnZpZXdJZCwgbnVsbCk7XG4gICAgICAgIGV2ZW50TWFuYWdlci5maXJlRXZlbnQoRXZlbnRUeXBlLkNPTVBPTkVOVF9MT0FELCBldmVudCk7XG4gICAgfSwgW10pO1xuXG4gICAgY29uc3QgYXBpID0gKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZ2V0IGlkKCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBwcm9wcy5jb25maWcuaWQ7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbG9hZERhdGE6IChhY3Rpb25Db25maWcpID0+IHtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZWZyZXNoKCkge1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGdldENoaWxkcmVuOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNldCB2aXNpYmxlKHZpc2libGUpIHtcbiAgICAgICAgICAgICAgICBzZXRWaXNpYmxlKHZpc2libGUpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNldCB2YWx1ZSh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHNlbmRSZXF1ZXN0KGAke2xvY2F0aW9uICsgJy8nICsgYXBwbGljYXRpb25NYW5hZ2VyLmdldENvbnRleHRSb290KCl9L2NhbGVuZGFyL2FwaS92MS9jaGF0L2ZldGNoTWVldGluZ0NoYXQvJHt2YWx1ZS5pZH1gLFxuICAgICAgICAgICAgICAgICAgICAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlICYmIHJlc3BvbnNlLmlkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRDaGF0KHJlc3BvbnNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sIChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgICAgICAgfSwgdHJ1ZSwgZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH07XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IHN0eWxlPXt7XG4gICAgICAgICAgICBkaXNwbGF5OiB2aXNpYmxlID8gJ2Jsb2NrJyA6ICdub25lJ1xuICAgICAgICB9fT5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAhVXRpbHMuaXNOdWxsKHByb3BzLmNvbmZpZykgJiYgY2hhdCA/XG4gICAgICAgICAgICAgICAgICAgIDxDaGF0Um9vbSBzZWxlY3RlZENoYXQ9e2NoYXR9IHJlYWRPbmx5PXtVdGlscy5nZXRDb21wb25lbnRBdHRyaWJ1dGUocHJvcHMuY29uZmlnLCAncmVhZE9ubHknLCBmYWxzZSl9Lz4gOiBudWxsXG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICk7XG59KSk7XG5cbmV4cG9ydCBkZWZhdWx0IENoYXRSb29tV3JhcHBlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUMsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0QsSUFBQUMsU0FBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssVUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0Es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
68
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9DaGF0Um9vbSIsIl9VdGlscyIsIl9PYnNlcnZhYmxlIiwiX0V2ZW50IiwiX0V2ZW50VHlwZSIsIl9SZXN0VXRpbHMiLCJfQXBwbGljYXRpb25NYW5hZ2VyIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwibG9jYXRpb24iLCJ3aW5kb3ciLCJwcm90b2NvbCIsImhvc3RuYW1lIiwiQ2hhdFJvb21XcmFwcGVyIiwiUmVhY3QiLCJtZW1vIiwiZm9yd2FyZFJlZiIsInByb3BzIiwicmVmIiwidmlzaWJsZSIsInNldFZpc2libGUiLCJ1c2VTdGF0ZSIsImNoYXQiLCJzZXRDaGF0IiwidXNlRWZmZWN0IiwiaGFuZGxlIiwiYXBpIiwicGFyc2VkQ29uZmlnIiwiVXRpbHMiLCJwYXJzZUNvbmZpZyIsImNvbmZpZyIsInZpZXdJZCIsImV2ZW50TWFuYWdlciIsImFkZFN1YnNjcmlwdGlvbnMiLCJldmVudEhhbmRsaW5nQ29uZmlnIiwiYWRkU3lzdGVtU3Vic2NyaXB0aW9ucyIsImV2ZW50IiwiRXZlbnQiLCJmaXJlRXZlbnQiLCJFdmVudFR5cGUiLCJDT01QT05FTlRfTE9BRCIsImNsZWFyQ29tcG9uZW50RXZlbnRMaXN0ZW5lcnMiLCJpZCIsImxvYWREYXRhIiwiYWN0aW9uQ29uZmlnIiwicmVmcmVzaCIsImdldENoaWxkcmVuIiwidmFsdWUiLCJzZW5kUmVxdWVzdCIsImNvbmNhdCIsImFwcGxpY2F0aW9uTWFuYWdlciIsImdldENvbnRleHRSb290IiwicmVzcG9uc2UiLCJjb25zb2xlIiwiZXJyb3IiLCJjcmVhdGVFbGVtZW50Iiwic3R5bGUiLCJkaXNwbGF5IiwiaXNOdWxsIiwic2VsZWN0ZWRDaGF0IiwicmVhZE9ubHkiLCJnZXRDb21wb25lbnRBdHRyaWJ1dGUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbWVkaWEvY2hhdC9DaGF0Um9vbVdyYXBwZXIuanN4Il0sInNvdXJjZXNDb250ZW50IjpbIu+7v2ltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgQ2hhdFJvb20gZnJvbSBcIi4vQ2hhdFJvb21cIjtcbmltcG9ydCBVdGlscyBmcm9tIFwiLi4vLi4vLi4vVXRpbHNcIjtcbmltcG9ydCBldmVudE1hbmFnZXIgZnJvbSBcIi4uLy4uLy4uL2V2ZW50L09ic2VydmFibGVcIjtcbmltcG9ydCBFdmVudCBmcm9tIFwiLi4vLi4vLi4vZXZlbnQvRXZlbnRcIjtcbmltcG9ydCBFdmVudFR5cGUgZnJvbSBcIi4uLy4uLy4uL2V2ZW50L0V2ZW50VHlwZVwiO1xuaW1wb3J0IHtzZW5kUmVxdWVzdH0gZnJvbSBcIi4uLy4uLy4uL1Jlc3RVdGlsc1wiO1xuaW1wb3J0IGFwcGxpY2F0aW9uTWFuYWdlciBmcm9tIFwiLi4vLi4vLi4vQXBwbGljYXRpb25NYW5hZ2VyXCI7XG5cbmNvbnN0IGxvY2F0aW9uID0gd2luZG93LmxvY2F0aW9uLnByb3RvY29sICsgJy8vJyArIHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZTtcbmNvbnN0IENoYXRSb29tV3JhcHBlciA9IFJlYWN0Lm1lbW8oUmVhY3QuZm9yd2FyZFJlZigocHJvcHMsIHJlZikgPT4ge1xuICAgIGNvbnN0IFt2aXNpYmxlLCBzZXRWaXNpYmxlXSA9IFJlYWN0LnVzZVN0YXRlKHRydWUpO1xuICAgIGNvbnN0IFtjaGF0LCBzZXRDaGF0XSA9IFJlYWN0LnVzZVN0YXRlKG51bGwpO1xuXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgcHJvcHMuaGFuZGxlLmFwaSA9IGFwaSgpO1xuICAgIH0pO1xuXG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgcHJvcHMuaGFuZGxlLmFwaSA9IGFwaSgpO1xuXG4gICAgICAgIGxldCBwYXJzZWRDb25maWcgPSBVdGlscy5wYXJzZUNvbmZpZyhwcm9wcy5jb25maWcsIHByb3BzLnZpZXdJZCk7XG4gICAgICAgIGV2ZW50TWFuYWdlci5hZGRTdWJzY3JpcHRpb25zKHBhcnNlZENvbmZpZy5ldmVudEhhbmRsaW5nQ29uZmlnLCBwcm9wcy5oYW5kbGUsIHByb3BzLnZpZXdJZCk7XG4gICAgICAgIGV2ZW50TWFuYWdlci5hZGRTeXN0ZW1TdWJzY3JpcHRpb25zKHByb3BzLnZpZXdJZCwgcGFyc2VkQ29uZmlnKTtcblxuICAgICAgICBsZXQgZXZlbnQgPSBuZXcgRXZlbnQocHJvcHMuaGFuZGxlLCBwcm9wcy52aWV3SWQsIG51bGwpO1xuICAgICAgICBldmVudE1hbmFnZXIuZmlyZUV2ZW50KEV2ZW50VHlwZS5DT01QT05FTlRfTE9BRCwgZXZlbnQpO1xuXG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBldmVudE1hbmFnZXIuY2xlYXJDb21wb25lbnRFdmVudExpc3RlbmVycyhwcm9wcy5oYW5kbGUpO1xuICAgICAgICB9O1xuICAgIH0sIFtdKTtcblxuICAgIGNvbnN0IGFwaSA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGdldCBpZCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcHMuY29uZmlnLmlkO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGxvYWREYXRhOiAoYWN0aW9uQ29uZmlnKSA9PiB7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVmcmVzaCgpIHtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBnZXRDaGlsZHJlbjogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzZXQgdmlzaWJsZSh2aXNpYmxlKSB7XG4gICAgICAgICAgICAgICAgc2V0VmlzaWJsZSh2aXNpYmxlKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzZXQgdmFsdWUodmFsdWUpIHtcbiAgICAgICAgICAgICAgICBzZW5kUmVxdWVzdChgJHtsb2NhdGlvbiArICcvJyArIGFwcGxpY2F0aW9uTWFuYWdlci5nZXRDb250ZXh0Um9vdCgpfS9jYWxlbmRhci9hcGkvdjEvY2hhdC9mZXRjaE1lZXRpbmdDaGF0LyR7dmFsdWUuaWR9YCxcbiAgICAgICAgICAgICAgICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZSAmJiByZXNwb25zZS5pZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V0Q2hhdChyZXNwb25zZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LCAoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgICAgICAgIH0sIHRydWUsIGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBzdHlsZT17e1xuICAgICAgICAgICAgZGlzcGxheTogdmlzaWJsZSA/ICdibG9jaycgOiAnbm9uZSdcbiAgICAgICAgfX0+XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgIVV0aWxzLmlzTnVsbChwcm9wcy5jb25maWcpICYmIGNoYXQgP1xuICAgICAgICAgICAgICAgICAgICA8Q2hhdFJvb20gc2VsZWN0ZWRDaGF0PXtjaGF0fSByZWFkT25seT17VXRpbHMuZ2V0Q29tcG9uZW50QXR0cmlidXRlKHByb3BzLmNvbmZpZywgJ3JlYWRPbmx5JywgZmFsc2UpfS8+IDogbnVsbFxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICApO1xufSkpO1xuXG5leHBvcnQgZGVmYXVsdCBDaGF0Um9vbVdyYXBwZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFDLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNELElBQUFDLFNBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUgs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
@@ -192,17 +192,19 @@
192
192
  }
193
193
 
194
194
  .chatroom__body {
195
- height: 95%;
195
+ flex: 1 1 auto;
196
+ min-height: 0;
196
197
  overflow-y: auto;
197
198
  overflow-x: hidden;
198
- padding: 0 15px;
199
+ padding: 0 12px;
199
200
  }
200
201
 
201
202
  .chatroom__sendMessage {
202
203
  display: flex;
203
204
  flex-direction: row;
204
205
  align-items: center;
205
- margin: 0 9% 0 3%;
206
+ flex: 0 0 auto;
207
+ margin: 4px 8px 8px;
206
208
 
207
209
  .message__imageSelector {
208
210
  width: 48px;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useContainerWidth;
7
+ var _react = require("react");
8
+ /**
9
+ * Tracks the width of the element the returned ref is attached to, so layout can
10
+ * respond to the COMPONENT's own container (e.g. the pinned VC window) rather
11
+ * than the browser viewport. The VC room and its panels render inside
12
+ * WindowViewPort, so viewport media queries are wrong here — use this instead.
13
+ *
14
+ * @returns {[React.RefObject, number, number]} [ref, width, height] — attach ref
15
+ * to the element whose size you want to branch on; width/height are 0 until
16
+ * first measured. Callers that only need width can destructure `[ref, width]`.
17
+ */
18
+ function useContainerWidth() {
19
+ const ref = (0, _react.useRef)(null);
20
+ const [size, setSize] = (0, _react.useState)({
21
+ width: 0,
22
+ height: 0
23
+ });
24
+ (0, _react.useLayoutEffect)(() => {
25
+ const el = ref.current;
26
+ if (!el) return;
27
+ const measure = () => {
28
+ const rect = el.getBoundingClientRect();
29
+ setSize(prev => prev.width === rect.width && prev.height === rect.height ? prev : {
30
+ width: rect.width,
31
+ height: rect.height
32
+ });
33
+ };
34
+ measure();
35
+ let ro;
36
+ if (typeof ResizeObserver !== 'undefined') {
37
+ ro = new ResizeObserver(measure);
38
+ ro.observe(el);
39
+ }
40
+ return () => ro && ro.disconnect();
41
+ }, []);
42
+ return [ref, size.width, size.height];
43
+ }
44
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwidXNlQ29udGFpbmVyV2lkdGgiLCJyZWYiLCJ1c2VSZWYiLCJzaXplIiwic2V0U2l6ZSIsInVzZVN0YXRlIiwid2lkdGgiLCJoZWlnaHQiLCJ1c2VMYXlvdXRFZmZlY3QiLCJlbCIsImN1cnJlbnQiLCJtZWFzdXJlIiwicmVjdCIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsInByZXYiLCJybyIsIlJlc2l6ZU9ic2VydmVyIiwib2JzZXJ2ZSIsImRpc2Nvbm5lY3QiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2hvb2tzL3VzZUNvbnRhaW5lcldpZHRoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlTGF5b3V0RWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlfSBmcm9tICdyZWFjdCc7XG5cbi8qKlxuICogVHJhY2tzIHRoZSB3aWR0aCBvZiB0aGUgZWxlbWVudCB0aGUgcmV0dXJuZWQgcmVmIGlzIGF0dGFjaGVkIHRvLCBzbyBsYXlvdXQgY2FuXG4gKiByZXNwb25kIHRvIHRoZSBDT01QT05FTlQncyBvd24gY29udGFpbmVyIChlLmcuIHRoZSBwaW5uZWQgVkMgd2luZG93KSByYXRoZXJcbiAqIHRoYW4gdGhlIGJyb3dzZXIgdmlld3BvcnQuIFRoZSBWQyByb29tIGFuZCBpdHMgcGFuZWxzIHJlbmRlciBpbnNpZGVcbiAqIFdpbmRvd1ZpZXdQb3J0LCBzbyB2aWV3cG9ydCBtZWRpYSBxdWVyaWVzIGFyZSB3cm9uZyBoZXJlIOKAlCB1c2UgdGhpcyBpbnN0ZWFkLlxuICpcbiAqIEByZXR1cm5zIHtbUmVhY3QuUmVmT2JqZWN0LCBudW1iZXIsIG51bWJlcl19IFtyZWYsIHdpZHRoLCBoZWlnaHRdIOKAlCBhdHRhY2ggcmVmXG4gKiAgIHRvIHRoZSBlbGVtZW50IHdob3NlIHNpemUgeW91IHdhbnQgdG8gYnJhbmNoIG9uOyB3aWR0aC9oZWlnaHQgYXJlIDAgdW50aWxcbiAqICAgZmlyc3QgbWVhc3VyZWQuIENhbGxlcnMgdGhhdCBvbmx5IG5lZWQgd2lkdGggY2FuIGRlc3RydWN0dXJlIGBbcmVmLCB3aWR0aF1gLlxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VDb250YWluZXJXaWR0aCgpIHtcbiAgICBjb25zdCByZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgW3NpemUsIHNldFNpemVdID0gdXNlU3RhdGUoe3dpZHRoOiAwLCBoZWlnaHQ6IDB9KTtcblxuICAgIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGVsID0gcmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmICghZWwpIHJldHVybjtcbiAgICAgICAgY29uc3QgbWVhc3VyZSA9ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlY3QgPSBlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgIHNldFNpemUocHJldiA9PiAocHJldi53aWR0aCA9PT0gcmVjdC53aWR0aCAmJiBwcmV2LmhlaWdodCA9PT0gcmVjdC5oZWlnaHQpXG4gICAgICAgICAgICAgICAgPyBwcmV2XG4gICAgICAgICAgICAgICAgOiB7d2lkdGg6IHJlY3Qud2lkdGgsIGhlaWdodDogcmVjdC5oZWlnaHR9KTtcbiAgICAgICAgfTtcbiAgICAgICAgbWVhc3VyZSgpO1xuICAgICAgICBsZXQgcm87XG4gICAgICAgIGlmICh0eXBlb2YgUmVzaXplT2JzZXJ2ZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBybyA9IG5ldyBSZXNpemVPYnNlcnZlcihtZWFzdXJlKTtcbiAgICAgICAgICAgIHJvLm9ic2VydmUoZWwpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAoKSA9PiBybyAmJiByby5kaXNjb25uZWN0KCk7XG4gICAgfSwgW10pO1xuXG4gICAgcmV0dXJuIFtyZWYsIHNpemUud2lkdGgsIHNpemUuaGVpZ2h0XTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDZSxTQUFTQyxpQkFBaUJBLENBQUEsRUFBRztFQUN4QyxNQUFNQyxHQUFHLEdBQUcsSUFBQUMsYUFBTSxFQUFDLElBQUksQ0FBQztFQUN4QixNQUFNLENBQUNDLElBQUksRUFBRUMsT0FBTyxDQUFDLEdBQUcsSUFBQUMsZUFBUSxFQUFDO0lBQUNDLEtBQUssRUFBRSxDQUFDO0lBQUVDLE1BQU0sRUFBRTtFQUFDLENBQUMsQ0FBQztFQUV2RCxJQUFBQyxzQkFBZSxFQUFDLE1BQU07SUFDbEIsTUFBTUMsRUFBRSxHQUFHUixHQUFHLENBQUNTLE9BQU87SUFDdEIsSUFBSSxDQUFDRCxFQUFFLEVBQUU7SUFDVCxNQUFNRSxPQUFPLEdBQUdBLENBQUEsS0FBTTtNQUNsQixNQUFNQyxJQUFJLEdBQUdILEVBQUUsQ0FBQ0kscUJBQXFCLENBQUMsQ0FBQztNQUN2Q1QsT0FBTyxDQUFDVSxJQUFJLElBQUtBLElBQUksQ0FBQ1IsS0FBSyxLQUFLTSxJQUFJLENBQUNOLEtBQUssSUFBSVEsSUFBSSxDQUFDUCxNQUFNLEtBQUtLLElBQUksQ0FBQ0wsTUFBTSxHQUNuRU8sSUFBSSxHQUNKO1FBQUNSLEtBQUssRUFBRU0sSUFBSSxDQUFDTixLQUFLO1FBQUVDLE1BQU0sRUFBRUssSUFBSSxDQUFDTDtNQUFNLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBQ0RJLE9BQU8sQ0FBQyxDQUFDO0lBQ1QsSUFBSUksRUFBRTtJQUNOLElBQUksT0FBT0MsY0FBYyxLQUFLLFdBQVcsRUFBRTtNQUN2Q0QsRUFBRSxHQUFHLElBQUlDLGNBQWMsQ0FBQ0wsT0FBTyxDQUFDO01BQ2hDSSxFQUFFLENBQUNFLE9BQU8sQ0FBQ1IsRUFBRSxDQUFDO0lBQ2xCO0lBQ0EsT0FBTyxNQUFNTSxFQUFFLElBQUlBLEVBQUUsQ0FBQ0csVUFBVSxDQUFDLENBQUM7RUFDdEMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztFQUVOLE9BQU8sQ0FBQ2pCLEdBQUcsRUFBRUUsSUFBSSxDQUFDRyxLQUFLLEVBQUVILElBQUksQ0FBQ0ksTUFBTSxDQUFDO0FBQ3pDIiwiaWdub3JlTGlzdCI6W119
package/dist/js/Media.js CHANGED
@@ -24,7 +24,16 @@ class Media {
24
24
  };
25
25
  let event = new _Event.default(component, 'vcSettings', null);
26
26
  try {
27
- if (calendarEvent.host.username === calendarEvent.host.username) {
27
+ // Ask-to-join / lobby host-approval is NOT implemented server-side yet: the signalling
28
+ // REQUEST_TO_JOIN_MEETING handler's "publish request to host" is a TODO, and its
29
+ // returned outcome ("PERMIT") doesn't even match SocketResponse.JOIN_MEETING_PERMIT —
30
+ // so routing through it would hang the joiner. Until that feature lands, permit
31
+ // directly. The host is always permitted. (This replaces a misleading always-true
32
+ // tautology `host.username === host.username`.) Flip `lobbyApprovalImplemented` when
33
+ // the server-side approval flow exists; the request branch below is then live.
34
+ const lobbyApprovalImplemented = false;
35
+ const isHost = _ApplicationManager.default.getUserDetails().username === calendarEvent.host.username;
36
+ if (!lobbyApprovalImplemented || isHost || !calendarEvent.askToJoin) {
28
37
  resolve(_SocketResponse.default.JOIN_MEETING_PERMIT);
29
38
  _Observable.default.fireEvent(_VCEventType.VCEventType.JOIN_MEETING_PERMIT, event);
30
39
  } else {
@@ -170,4 +179,4 @@ class Media {
170
179
  exports.Media = Media;
171
180
  const instance = new Media();
172
181
  var _default = exports.default = instance;
173
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfU29ja2V0UmVzcG9uc2UiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9Tb2NrZXRNYW5hZ2VyIiwiX1NvY2tldFJlcXVlc3QiLCJfRXZlbnQiLCJfT2JzZXJ2YWJsZSIsIl9BcHBsaWNhdGlvbk1hbmFnZXIiLCJfVkNFdmVudFR5cGUiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZGVmaW5lUHJvcGVydHkiLCJyIiwidCIsIl90b1Byb3BlcnR5S2V5IiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImkiLCJfdG9QcmltaXRpdmUiLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsImNhbGwiLCJUeXBlRXJyb3IiLCJTdHJpbmciLCJOdW1iZXIiLCJNZWRpYSIsImNvbnN0cnVjdG9yIiwicmVzb2x2ZXIiLCJjYWxlbmRhckV2ZW50IiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJjb21wb25lbnQiLCJhcGkiLCJhcHBsaWNhdGlvbk1hbmFnZXIiLCJyZXNvbHZlQ29tcG9uZW50QXBpIiwiZXZlbnQiLCJFdmVudCIsImhvc3QiLCJ1c2VybmFtZSIsIlNvY2tldFJlc3BvbnNlIiwiSk9JTl9NRUVUSU5HX1BFUk1JVCIsImV2ZW50TWFuYWdlciIsImZpcmVFdmVudCIsIlZDRXZlbnRUeXBlIiwic29ja2V0TWFuYWdlciIsImVtaXRFdmVudCIsIlNvY2tldFJlcXVlc3QiLCJSRVFVRVNUX1RPX0pPSU5fTUVFVElORyIsInVzZXJJZCIsImdldFVzZXJEZXRhaWxzIiwiaG9zdElkIiwiYXNrVG9Kb2luIiwibWVldGluZ0lkIiwiaWQiLCJ0aGVuIiwicmVzdWx0IiwiY29uc29sZSIsImxvZyIsIm91dGNvbWUiLCJjYXRjaCIsInNldHRpbmdzIiwidXNlckZ1bGxOYW1lIiwicHJvZmlsZSIsIkVycm9yIiwiZ2V0QWN0aXZlVGVuYW50IiwiSk9JTl9NRUVUSU5HIiwiYXZhdGFySWQiLCJzZXNzaW9uU3RvcmFnZSIsImdldEl0ZW0iLCJpc0hvc3QiLCJyZXNwb25zZSIsInN0YXR1cyIsInJ0cENhcGFiaWxpdGllcyIsImRhdGEiLCJzaGFyZVNjcmVlblByb2R1Y2VyRGF0YSIsInBhcnRpY2lwYW50cyIsInVzZXJzSW5Sb29tIiwiR0VUX0xPQkJZIiwiZ2V0TG9iYnlSZXNwb25zZSIsImxvYmJ5IiwicGVvcGxlIiwicGVyc29uIiwicHVzaCIsImVycm9yIiwibmF2aWdhdG9yIiwibWVkaWFEZXZpY2VzIiwiZW51bWVyYXRlRGV2aWNlcyIsImRldmljZXMiLCJhdWRpb0Nvbm5lY3RlZCIsInZpZGVvQ29ubmVjdGVkIiwiZm9yRWFjaCIsImRldmljZSIsImtpbmQiLCJsYWJlbCIsInN0cmVhbSIsImdldFVzZXJNZWRpYSIsImF1ZGlvIiwidmlkZW8iLCJnZXRWaWRlb1RyYWNrcyIsImxlbmd0aCIsInN0b3AiLCJnZXRBdWRpb1RyYWNrcyIsImF2U3RhdHVzIiwiZXJyb3JNZXNzYWdlIiwiZXhwb3J0cyIsImluc3RhbmNlIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2pzL01lZGlhLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTb2NrZXRSZXNwb25zZSBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhL1NvY2tldFJlc3BvbnNlJztcbmltcG9ydCBzb2NrZXRNYW5hZ2VyIGZyb20gJy4uL2NvbXBvbmVudHMvU29ja2V0TWFuYWdlcic7XG5pbXBvcnQgU29ja2V0UmVxdWVzdCBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhL1NvY2tldFJlcXVlc3QnO1xuaW1wb3J0IEV2ZW50IGZyb20gJy4uL2V2ZW50L0V2ZW50JztcbmltcG9ydCBldmVudE1hbmFnZXIgZnJvbSAnLi4vZXZlbnQvT2JzZXJ2YWJsZSc7XG5pbXBvcnQgYXBwbGljYXRpb25NYW5hZ2VyIGZyb20gJy4uL0FwcGxpY2F0aW9uTWFuYWdlcic7XG5pbXBvcnQge1ZDRXZlbnRUeXBlfSBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhL1ZDRXZlbnRUeXBlJztcblxuZXhwb3J0IGNsYXNzIE1lZGlhIHtcbiAgICBjb25zdHJ1Y3RvcihyZXNvbHZlcikge1xuICAgICAgICB0aGlzLnJlc29sdmVyID0gcmVzb2x2ZXI7XG4gICAgfVxuXG4gICAgcmVxdWVzdFRvSm9pbk1lZXRpbmcgPSAoY2FsZW5kYXJFdmVudCkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgbGV0IGNvbXBvbmVudCA9IHtcbiAgICAgICAgICAgICAgICBhcGk6IGFwcGxpY2F0aW9uTWFuYWdlci5yZXNvbHZlQ29tcG9uZW50QXBpKCdzZXR0aW5nc05leHQnKVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgbGV0IGV2ZW50ID0gbmV3IEV2ZW50KGNvbXBvbmVudCwgJ3ZjU2V0dGluZ3MnLCBudWxsKTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgaWYgKGNhbGVuZGFyRXZlbnQuaG9zdC51c2VybmFtZSA9PT0gY2FsZW5kYXJFdmVudC5ob3N0LnVzZXJuYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoU29ja2V0UmVzcG9uc2UuSk9JTl9NRUVUSU5HX1BFUk1JVCk7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50TWFuYWdlci5maXJlRXZlbnQoVkNFdmVudFR5cGUuSk9JTl9NRUVUSU5HX1BFUk1JVCwgZXZlbnQpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHNvY2tldE1hbmFnZXIuZW1pdEV2ZW50KFNvY2tldFJlcXVlc3QuUkVRVUVTVF9UT19KT0lOX01FRVRJTkcsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlcklkOiBhcHBsaWNhdGlvbk1hbmFnZXIuZ2V0VXNlckRldGFpbHMoKS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBob3N0SWQ6IGNhbGVuZGFyRXZlbnQuaG9zdC51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc2tUb0pvaW46IGNhbGVuZGFyRXZlbnQuYXNrVG9Kb2luLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lZXRpbmdJZDogY2FsZW5kYXJFdmVudC5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcIioqKioqIEpPSU4gTUVFVElORyBSRVNQT05TRSAqKioqKlwiLCByZXN1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBvdXRjb21lID0gcmVzdWx0Lm91dGNvbWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShvdXRjb21lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAob3V0Y29tZSA9PT0gU29ja2V0UmVzcG9uc2UuSk9JTl9NRUVUSU5HX1BFUk1JVCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudE1hbmFnZXIuZmlyZUV2ZW50KFZDRXZlbnRUeXBlLkpPSU5fTUVFVElOR19QRVJNSVQsIGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KS5jYXRjaCgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCIqKioqKiBKT0lOIE1FRVRJTkcgRVJST1IgKioqKipcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCIqKioqKiBSRVFVRVNUIFRPIEpPSU4gTUVFVElORyBFUlJPUiAqKioqKlwiKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcbiAgICAgICAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICBqb2luTWVldGluZyA9IChjYWxlbmRhckV2ZW50LCBzZXR0aW5ncywgdXNlckZ1bGxOYW1lKSA9PiB7XG4gICAgICAgIGxldCByZXN1bHQgPSB7fTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIGlmICghYXBwbGljYXRpb25NYW5hZ2VyLmdldFVzZXJEZXRhaWxzKCkucHJvZmlsZSkge1xuICAgICAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3IoJ05vIHVzZXIgcHJvZmlsZScpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gVE9ETyA6IFJlbW92ZSBoYXJkY29kaW5nIGFuZCByZXBsYWNlIHdpdGggYWN0aXZlIHRlbmFudHMgd2hlbiBpbXBsZW1lbnRlZFxuICAgICAgICAgICAgICAgICAgICBsZXQgcHJvZmlsZSA9IGFwcGxpY2F0aW9uTWFuYWdlci5nZXRBY3RpdmVUZW5hbnQoKSB8fCBhcHBsaWNhdGlvbk1hbmFnZXIuZ2V0VXNlckRldGFpbHMoKS5wcm9maWxlO1xuICAgICAgICAgICAgICAgICAgICBzb2NrZXRNYW5hZ2VyLmVtaXRFdmVudChTb2NrZXRSZXF1ZXN0LkpPSU5fTUVFVElORywge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWVldGluZ0lkOiBjYWxlbmRhckV2ZW50LmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXNlckZ1bGxOYW1lOiB1c2VyRnVsbE5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2VySWQ6IGFwcGxpY2F0aW9uTWFuYWdlci5nZXRVc2VyRGV0YWlscygpLnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXZhdGFySWQ6IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oJ3VzZXJBdmF0YUlkJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0hvc3Q6IGFwcGxpY2F0aW9uTWFuYWdlci5nZXRVc2VyRGV0YWlscygpLnVzZXJuYW1lID09PSBjYWxlbmRhckV2ZW50Lmhvc3QudXNlcm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXR0aW5nczogc2V0dGluZ3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9maWxlOiBwcm9maWxlXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQuc3RhdHVzID0gcmVzcG9uc2Uuc3RhdHVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09ICdTVUNDRVNTJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQucnRwQ2FwYWJpbGl0aWVzID0gcmVzcG9uc2UuZGF0YS5ydHBDYXBhYmlsaXRpZXM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5zaGFyZVNjcmVlblByb2R1Y2VyRGF0YSA9IHJlc3BvbnNlLmRhdGEuc2hhcmVTY3JlZW5Qcm9kdWNlckRhdGE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wYXJ0aWNpcGFudHMgPSByZXNwb25zZS5kYXRhLnVzZXJzSW5Sb29tO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChhcHBsaWNhdGlvbk1hbmFnZXIuZ2V0VXNlckRldGFpbHMoKS51c2VybmFtZSA9PT0gY2FsZW5kYXJFdmVudC5ob3N0LnVzZXJuYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXRNYW5hZ2VyLmVtaXRFdmVudChTb2NrZXRSZXF1ZXN0LkdFVF9MT0JCWSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lZXRpbmdJZDogY2FsZW5kYXJFdmVudC5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoZ2V0TG9iYnlSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZ2V0TG9iYnlSZXNwb25zZS5zdGF0dXMgPT09ICdTVUNDRVNTJyAmJiBnZXRMb2JieVJlc3BvbnNlLmxvYmJ5ICYmIGdldExvYmJ5UmVzcG9uc2UubG9iYnkucGVvcGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQubG9iYnkgPSBbXTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoY29uc3QgcGVyc29uIG9mIGdldExvYmJ5UmVzcG9uc2UubG9iYnkucGVvcGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmxvYmJ5LnB1c2gocGVyc29uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChyZXN1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhc0Nvbm5lY3RlZE1lZGlhRGV2aWNlcyA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmVudW1lcmF0ZURldmljZXMoKVxuICAgICAgICAgICAgICAgIC50aGVuKGFzeW5jIChkZXZpY2VzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBhdWRpb0Nvbm5lY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2aWRlb0Nvbm5lY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldmljZXMuZm9yRWFjaCgoZGV2aWNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgnYXVkaW9pbnB1dCcgPT09IGRldmljZS5raW5kICYmIGRldmljZS5sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXVkaW9Db25uZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCd2aWRlb2lucHV0JyA9PT0gZGV2aWNlLmtpbmQgJiYgZGV2aWNlLmxhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWRlb0Nvbm5lY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzdHJlYW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW0gPSBhd2FpdCBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7YXVkaW86IGZhbHNlLCB2aWRlbzogdHJ1ZX0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKS5sZW5ndGggPT09IDAgfHwgIXN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWRlb0Nvbm5lY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtLmdldFZpZGVvVHJhY2tzKClbMF0uc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWRlb0Nvbm5lY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbSA9IGF3YWl0IG5hdmlnYXRvci5tZWRpYURldmljZXMuZ2V0VXNlck1lZGlhKHthdWRpbzogdHJ1ZSwgdmlkZW86IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKHN0cmVhbS5nZXRBdWRpb1RyYWNrcygpLmxlbmd0aCA9PT0gMCB8fCAhc3RyZWFtLmdldEF1ZGlvVHJhY2tzKClbMF0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1ZGlvQ29ubmVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW0uZ2V0QXVkaW9UcmFja3MoKVswXS5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1ZGlvQ29ubmVjdGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1ZGlvQ29ubmVjdGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWRlb0Nvbm5lY3RlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdWRpb0Nvbm5lY3RlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZGVvQ29ubmVjdGVkOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfTtcblxuICAgIGdldEF2U3RhdHVzTWVzc2FnZSA9IChhdlN0YXR1cykgPT4ge1xuICAgICAgICBsZXQgZXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICAgIGlmICghYXZTdGF0dXMuYXVkaW9Db25uZWN0ZWQgfHwgIWF2U3RhdHVzLnZpZGVvQ29ubmVjdGVkKSB7XG4gICAgICAgICAgICBlcnJvck1lc3NhZ2UgPSAnTm8gJyArICghYXZTdGF0dXMuYXVkaW9Db25uZWN0ZWQgPyAnYXVkaW8gJyA6ICcnKTtcbiAgICAgICAgICAgIGVycm9yTWVzc2FnZSArPSAoIWF2U3RhdHVzLnZpZGVvQ29ubmVjdGVkID8gKCghYXZTdGF0dXMuYXVkaW9Db25uZWN0ZWQgPyAnYW5kIHZpZGVvJyA6ICd2aWRlbyAnKSkgOiAnJyk7XG4gICAgICAgICAgICBlcnJvck1lc3NhZ2UgKz0gJyBkZXZpY2UnICsgKCFhdlN0YXR1cy5hdWRpb0Nvbm5lY3RlZCAmJiAhYXZTdGF0dXMudmlkZW9Db25uZWN0ZWQgPyAncycgOiAnJykgKyAnIGNvbm5lY3RlZCc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZXJyb3JNZXNzYWdlO1xuICAgIH07XG59XG5cbmNvbnN0IGluc3RhbmNlID0gbmV3IE1lZGlhKCk7XG5leHBvcnQgZGVmYXVsdCBpbnN0YW5jZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsZUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFB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
182
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfU29ja2V0UmVzcG9uc2UiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9Tb2NrZXRNYW5hZ2VyIiwiX1NvY2tldFJlcXVlc3QiLCJfRXZlbnQiLCJfT2JzZXJ2YWJsZSIsIl9BcHBsaWNhdGlvbk1hbmFnZXIiLCJfVkNFdmVudFR5cGUiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZGVmaW5lUHJvcGVydHkiLCJyIiwidCIsIl90b1Byb3BlcnR5S2V5IiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImkiLCJfdG9QcmltaXRpdmUiLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsImNhbGwiLCJUeXBlRXJyb3IiLCJTdHJpbmciLCJOdW1iZXIiLCJNZWRpYSIsImNvbnN0cnVjdG9yIiwicmVzb2x2ZXIiLCJjYWxlbmRhckV2ZW50IiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJjb21wb25lbnQiLCJhcGkiLCJhcHBsaWNhdGlvbk1hbmFnZXIiLCJyZXNvbHZlQ29tcG9uZW50QXBpIiwiZXZlbnQiLCJFdmVudCIsImxvYmJ5QXBwcm92YWxJbXBsZW1lbnRlZCIsImlzSG9zdCIsImdldFVzZXJEZXRhaWxzIiwidXNlcm5hbWUiLCJob3N0IiwiYXNrVG9Kb2luIiwiU29ja2V0UmVzcG9uc2UiLCJKT0lOX01FRVRJTkdfUEVSTUlUIiwiZXZlbnRNYW5hZ2VyIiwiZmlyZUV2ZW50IiwiVkNFdmVudFR5cGUiLCJzb2NrZXRNYW5hZ2VyIiwiZW1pdEV2ZW50IiwiU29ja2V0UmVxdWVzdCIsIlJFUVVFU1RfVE9fSk9JTl9NRUVUSU5HIiwidXNlcklkIiwiaG9zdElkIiwibWVldGluZ0lkIiwiaWQiLCJ0aGVuIiwicmVzdWx0IiwiY29uc29sZSIsImxvZyIsIm91dGNvbWUiLCJjYXRjaCIsInNldHRpbmdzIiwidXNlckZ1bGxOYW1lIiwicHJvZmlsZSIsIkVycm9yIiwiZ2V0QWN0aXZlVGVuYW50IiwiSk9JTl9NRUVUSU5HIiwiYXZhdGFySWQiLCJzZXNzaW9uU3RvcmFnZSIsImdldEl0ZW0iLCJyZXNwb25zZSIsInN0YXR1cyIsInJ0cENhcGFiaWxpdGllcyIsImRhdGEiLCJzaGFyZVNjcmVlblByb2R1Y2VyRGF0YSIsInBhcnRpY2lwYW50cyIsInVzZXJzSW5Sb29tIiwiR0VUX0xPQkJZIiwiZ2V0TG9iYnlSZXNwb25zZSIsImxvYmJ5IiwicGVvcGxlIiwicGVyc29uIiwicHVzaCIsImVycm9yIiwibmF2aWdhdG9yIiwibWVkaWFEZXZpY2VzIiwiZW51bWVyYXRlRGV2aWNlcyIsImRldmljZXMiLCJhdWRpb0Nvbm5lY3RlZCIsInZpZGVvQ29ubmVjdGVkIiwiZm9yRWFjaCIsImRldmljZSIsImtpbmQiLCJsYWJlbCIsInN0cmVhbSIsImdldFVzZXJNZWRpYSIsImF1ZGlvIiwidmlkZW8iLCJnZXRWaWRlb1RyYWNrcyIsImxlbmd0aCIsInN0b3AiLCJnZXRBdWRpb1RyYWNrcyIsImF2U3RhdHVzIiwiZXJyb3JNZXNzYWdlIiwiZXhwb3J0cyIsImluc3RhbmNlIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2pzL01lZGlhLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTb2NrZXRSZXNwb25zZSBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhL1NvY2tldFJlc3BvbnNlJztcbmltcG9ydCBzb2NrZXRNYW5hZ2VyIGZyb20gJy4uL2NvbXBvbmVudHMvU29ja2V0TWFuYWdlcic7XG5pbXBvcnQgU29ja2V0UmVxdWVzdCBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhL1NvY2tldFJlcXVlc3QnO1xuaW1wb3J0IEV2ZW50IGZyb20gJy4uL2V2ZW50L0V2ZW50JztcbmltcG9ydCBldmVudE1hbmFnZXIgZnJvbSAnLi4vZXZlbnQvT2JzZXJ2YWJsZSc7XG5pbXBvcnQgYXBwbGljYXRpb25NYW5hZ2VyIGZyb20gJy4uL0FwcGxpY2F0aW9uTWFuYWdlcic7XG5pbXBvcnQge1ZDRXZlbnRUeXBlfSBmcm9tICcuLi9jb21wb25lbnRzL21lZGlhL1ZDRXZlbnRUeXBlJztcblxuZXhwb3J0IGNsYXNzIE1lZGlhIHtcbiAgICBjb25zdHJ1Y3RvcihyZXNvbHZlcikge1xuICAgICAgICB0aGlzLnJlc29sdmVyID0gcmVzb2x2ZXI7XG4gICAgfVxuXG4gICAgcmVxdWVzdFRvSm9pbk1lZXRpbmcgPSAoY2FsZW5kYXJFdmVudCkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgbGV0IGNvbXBvbmVudCA9IHtcbiAgICAgICAgICAgICAgICBhcGk6IGFwcGxpY2F0aW9uTWFuYWdlci5yZXNvbHZlQ29tcG9uZW50QXBpKCdzZXR0aW5nc05leHQnKVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgbGV0IGV2ZW50ID0gbmV3IEV2ZW50KGNvbXBvbmVudCwgJ3ZjU2V0dGluZ3MnLCBudWxsKTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgLy8gQXNrLXRvLWpvaW4gLyBsb2JieSBob3N0LWFwcHJvdmFsIGlzIE5PVCBpbXBsZW1lbnRlZCBzZXJ2ZXItc2lkZSB5ZXQ6IHRoZSBzaWduYWxsaW5nXG4gICAgICAgICAgICAgICAgLy8gUkVRVUVTVF9UT19KT0lOX01FRVRJTkcgaGFuZGxlcidzIFwicHVibGlzaCByZXF1ZXN0IHRvIGhvc3RcIiBpcyBhIFRPRE8sIGFuZCBpdHNcbiAgICAgICAgICAgICAgICAvLyByZXR1cm5lZCBvdXRjb21lIChcIlBFUk1JVFwiKSBkb2Vzbid0IGV2ZW4gbWF0Y2ggU29ja2V0UmVzcG9uc2UuSk9JTl9NRUVUSU5HX1BFUk1JVCDigJRcbiAgICAgICAgICAgICAgICAvLyBzbyByb3V0aW5nIHRocm91Z2ggaXQgd291bGQgaGFuZyB0aGUgam9pbmVyLiBVbnRpbCB0aGF0IGZlYXR1cmUgbGFuZHMsIHBlcm1pdFxuICAgICAgICAgICAgICAgIC8vIGRpcmVjdGx5LiBUaGUgaG9zdCBpcyBhbHdheXMgcGVybWl0dGVkLiAoVGhpcyByZXBsYWNlcyBhIG1pc2xlYWRpbmcgYWx3YXlzLXRydWVcbiAgICAgICAgICAgICAgICAvLyB0YXV0b2xvZ3kgYGhvc3QudXNlcm5hbWUgPT09IGhvc3QudXNlcm5hbWVgLikgRmxpcCBgbG9iYnlBcHByb3ZhbEltcGxlbWVudGVkYCB3aGVuXG4gICAgICAgICAgICAgICAgLy8gdGhlIHNlcnZlci1zaWRlIGFwcHJvdmFsIGZsb3cgZXhpc3RzOyB0aGUgcmVxdWVzdCBicmFuY2ggYmVsb3cgaXMgdGhlbiBsaXZlLlxuICAgICAgICAgICAgICAgIGNvbnN0IGxvYmJ5QXBwcm92YWxJbXBsZW1lbnRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzSG9zdCA9IGFwcGxpY2F0aW9uTWFuYWdlci5nZXRVc2VyRGV0YWlscygpLnVzZXJuYW1lID09PSBjYWxlbmRhckV2ZW50Lmhvc3QudXNlcm5hbWU7XG4gICAgICAgICAgICAgICAgaWYgKCFsb2JieUFwcHJvdmFsSW1wbGVtZW50ZWQgfHwgaXNIb3N0IHx8ICFjYWxlbmRhckV2ZW50LmFza1RvSm9pbikge1xuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKFNvY2tldFJlc3BvbnNlLkpPSU5fTUVFVElOR19QRVJNSVQpO1xuICAgICAgICAgICAgICAgICAgICBldmVudE1hbmFnZXIuZmlyZUV2ZW50KFZDRXZlbnRUeXBlLkpPSU5fTUVFVElOR19QRVJNSVQsIGV2ZW50KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzb2NrZXRNYW5hZ2VyLmVtaXRFdmVudChTb2NrZXRSZXF1ZXN0LlJFUVVFU1RfVE9fSk9JTl9NRUVUSU5HLFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJJZDogYXBwbGljYXRpb25NYW5hZ2VyLmdldFVzZXJEZXRhaWxzKCkudXNlcm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9zdElkOiBjYWxlbmRhckV2ZW50Lmhvc3QudXNlcm5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNrVG9Kb2luOiBjYWxlbmRhckV2ZW50LmFza1RvSm9pbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWV0aW5nSWQ6IGNhbGVuZGFyRXZlbnQuaWRcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coXCIqKioqKiBKT0lOIE1FRVRJTkcgUkVTUE9OU0UgKioqKipcIiwgcmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgb3V0Y29tZSA9IHJlc3VsdC5vdXRjb21lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUob3V0Y29tZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG91dGNvbWUgPT09IFNvY2tldFJlc3BvbnNlLkpPSU5fTUVFVElOR19QRVJNSVQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRNYW5hZ2VyLmZpcmVFdmVudChWQ0V2ZW50VHlwZS5KT0lOX01FRVRJTkdfUEVSTUlULCBldmVudCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSkuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiKioqKiogSk9JTiBNRUVUSU5HIEVSUk9SICoqKioqXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coZSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiKioqKiogUkVRVUVTVCBUTyBKT0lOIE1FRVRJTkcgRVJST1IgKioqKipcIik7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgICAgICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9O1xuXG4gICAgam9pbk1lZXRpbmcgPSAoY2FsZW5kYXJFdmVudCwgc2V0dGluZ3MsIHVzZXJGdWxsTmFtZSkgPT4ge1xuICAgICAgICBsZXQgcmVzdWx0ID0ge307XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWFwcGxpY2F0aW9uTWFuYWdlci5nZXRVc2VyRGV0YWlscygpLnByb2ZpbGUpIHtcbiAgICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKCdObyB1c2VyIHByb2ZpbGUnKSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFRPRE8gOiBSZW1vdmUgaGFyZGNvZGluZyBhbmQgcmVwbGFjZSB3aXRoIGFjdGl2ZSB0ZW5hbnRzIHdoZW4gaW1wbGVtZW50ZWRcbiAgICAgICAgICAgICAgICAgICAgbGV0IHByb2ZpbGUgPSBhcHBsaWNhdGlvbk1hbmFnZXIuZ2V0QWN0aXZlVGVuYW50KCkgfHwgYXBwbGljYXRpb25NYW5hZ2VyLmdldFVzZXJEZXRhaWxzKCkucHJvZmlsZTtcbiAgICAgICAgICAgICAgICAgICAgc29ja2V0TWFuYWdlci5lbWl0RXZlbnQoU29ja2V0UmVxdWVzdC5KT0lOX01FRVRJTkcsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1lZXRpbmdJZDogY2FsZW5kYXJFdmVudC5pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJGdWxsTmFtZTogdXNlckZ1bGxOYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgdXNlcklkOiBhcHBsaWNhdGlvbk1hbmFnZXIuZ2V0VXNlckRldGFpbHMoKS51c2VybmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGF2YXRhcklkOiBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCd1c2VyQXZhdGFJZCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNIb3N0OiBhcHBsaWNhdGlvbk1hbmFnZXIuZ2V0VXNlckRldGFpbHMoKS51c2VybmFtZSA9PT0gY2FsZW5kYXJFdmVudC5ob3N0LnVzZXJuYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2V0dGluZ3M6IHNldHRpbmdzLFxuICAgICAgICAgICAgICAgICAgICAgICAgcHJvZmlsZTogcHJvZmlsZVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnN0YXR1cyA9IHJlc3BvbnNlLnN0YXR1cztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAnU1VDQ0VTUycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnJ0cENhcGFiaWxpdGllcyA9IHJlc3BvbnNlLmRhdGEucnRwQ2FwYWJpbGl0aWVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQuc2hhcmVTY3JlZW5Qcm9kdWNlckRhdGEgPSByZXNwb25zZS5kYXRhLnNoYXJlU2NyZWVuUHJvZHVjZXJEYXRhO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQucGFydGljaXBhbnRzID0gcmVzcG9uc2UuZGF0YS51c2Vyc0luUm9vbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYXBwbGljYXRpb25NYW5hZ2VyLmdldFVzZXJEZXRhaWxzKCkudXNlcm5hbWUgPT09IGNhbGVuZGFyRXZlbnQuaG9zdC51c2VybmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0TWFuYWdlci5lbWl0RXZlbnQoU29ja2V0UmVxdWVzdC5HRVRfTE9CQlksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWV0aW5nSWQ6IGNhbGVuZGFyRXZlbnQuaWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKGdldExvYmJ5UmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGdldExvYmJ5UmVzcG9uc2Uuc3RhdHVzID09PSAnU1VDQ0VTUycgJiYgZ2V0TG9iYnlSZXNwb25zZS5sb2JieSAmJiBnZXRMb2JieVJlc3BvbnNlLmxvYmJ5LnBlb3BsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmxvYmJ5ID0gW107XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHBlcnNvbiBvZiBnZXRMb2JieVJlc3BvbnNlLmxvYmJ5LnBlb3BsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC5sb2JieS5wdXNoKHBlcnNvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWplY3QocmVzdWx0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYXNDb25uZWN0ZWRNZWRpYURldmljZXMgPSAoKSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5lbnVtZXJhdGVEZXZpY2VzKClcbiAgICAgICAgICAgICAgICAudGhlbihhc3luYyAoZGV2aWNlcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgYXVkaW9Db25uZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdmlkZW9Db25uZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXZpY2VzLmZvckVhY2goKGRldmljZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJ2F1ZGlvaW5wdXQnID09PSBkZXZpY2Uua2luZCAmJiBkZXZpY2UubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1ZGlvQ29ubmVjdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgndmlkZW9pbnB1dCcgPT09IGRldmljZS5raW5kICYmIGRldmljZS5sYWJlbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlkZW9Db25uZWN0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgc3RyZWFtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtID0gYXdhaXQgbmF2aWdhdG9yLm1lZGlhRGV2aWNlcy5nZXRVc2VyTWVkaWEoe2F1ZGlvOiBmYWxzZSwgdmlkZW86IHRydWV9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoc3RyZWFtLmdldFZpZGVvVHJhY2tzKCkubGVuZ3RoID09PSAwIHx8ICFzdHJlYW0uZ2V0VmlkZW9UcmFja3MoKVswXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlkZW9Db25uZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbS5nZXRWaWRlb1RyYWNrcygpWzBdLnN0b3AoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlkZW9Db25uZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW0gPSBhd2FpdCBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7YXVkaW86IHRydWUsIHZpZGVvOiBmYWxzZX0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihzdHJlYW0uZ2V0QXVkaW9UcmFja3MoKS5sZW5ndGggPT09IDAgfHwgIXN0cmVhbS5nZXRBdWRpb1RyYWNrcygpWzBdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdWRpb0Nvbm5lY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtLmdldEF1ZGlvVHJhY2tzKClbMF0uc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdWRpb0Nvbm5lY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdWRpb0Nvbm5lY3RlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlkZW9Db25uZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXVkaW9Db25uZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWRlb0Nvbm5lY3RlZDogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRBdlN0YXR1c01lc3NhZ2UgPSAoYXZTdGF0dXMpID0+IHtcbiAgICAgICAgbGV0IGVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgICBpZiAoIWF2U3RhdHVzLmF1ZGlvQ29ubmVjdGVkIHx8ICFhdlN0YXR1cy52aWRlb0Nvbm5lY3RlZCkge1xuICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gJ05vICcgKyAoIWF2U3RhdHVzLmF1ZGlvQ29ubmVjdGVkID8gJ2F1ZGlvICcgOiAnJyk7XG4gICAgICAgICAgICBlcnJvck1lc3NhZ2UgKz0gKCFhdlN0YXR1cy52aWRlb0Nvbm5lY3RlZCA/ICgoIWF2U3RhdHVzLmF1ZGlvQ29ubmVjdGVkID8gJ2FuZCB2aWRlbycgOiAndmlkZW8gJykpIDogJycpO1xuICAgICAgICAgICAgZXJyb3JNZXNzYWdlICs9ICcgZGV2aWNlJyArICghYXZTdGF0dXMuYXVkaW9Db25uZWN0ZWQgJiYgIWF2U3RhdHVzLnZpZGVvQ29ubmVjdGVkID8gJ3MnIDogJycpICsgJyBjb25uZWN0ZWQnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGVycm9yTWVzc2FnZTtcbiAgICB9O1xufVxuXG5jb25zdCBpbnN0YW5jZSA9IG5ldyBNZWRpYSgpO1xuZXhwb3J0IGRlZmF1bHQgaW5zdGFuY2U7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLGVBQUEsR0FBQUMsc0JBQUEs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