matrix-react-sdk
Version:
SDK for matrix.org using React
126 lines (101 loc) • 13.5 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireDefault(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
var _languageHandler = require("../../../languageHandler");
var _Keyboard = require("../../../Keyboard");
var _replaceableComponent = require("../../../utils/replaceableComponent");
var _dec, _class, _temp;
let Header = (_dec = (0, _replaceableComponent.replaceableComponent)("views.emojipicker.Header"), _dec(_class = (_temp = class Header extends _react.default.PureComponent
/*:: <IProps>*/
{
constructor(...args) {
super(...args);
(0, _defineProperty2.default)(this, "onKeyDown", (ev
/*: React.KeyboardEvent*/
) => {
let handled = true;
switch (ev.key) {
case _Keyboard.Key.ARROW_LEFT:
this.changeCategoryRelative(-1);
break;
case _Keyboard.Key.ARROW_RIGHT:
this.changeCategoryRelative(1);
break;
case _Keyboard.Key.HOME:
this.changeCategoryAbsolute(0);
break;
case _Keyboard.Key.END:
this.changeCategoryAbsolute(this.props.categories.length - 1, -1);
break;
default:
handled = false;
}
if (handled) {
ev.preventDefault();
ev.stopPropagation();
}
});
}
findNearestEnabled(index
/*: number*/
, delta
/*: number*/
) {
index += this.props.categories.length;
const cats = [...this.props.categories, ...this.props.categories, ...this.props.categories];
while (index < cats.length && index >= 0) {
if (cats[index].enabled) return index % this.props.categories.length;
index += delta > 0 ? 1 : -1;
}
}
changeCategoryRelative(delta
/*: number*/
) {
const current = this.props.categories.findIndex(c => c.visible);
this.changeCategoryAbsolute(current + delta, delta);
}
changeCategoryAbsolute(index
/*: number*/
, delta = 1) {
const category = this.props.categories[this.findNearestEnabled(index, delta)];
if (category) {
this.props.onAnchorClick(category.id);
category.ref.current.focus();
}
} // Implements ARIA Tabs with Automatic Activation pattern
// https://www.w3.org/TR/wai-aria-practices/examples/tabs/tabs-1/tabs.html
render() {
return /*#__PURE__*/_react.default.createElement("nav", {
className: "mx_EmojiPicker_header",
role: "tablist",
"aria-label": (0, _languageHandler._t)("Categories"),
onKeyDown: this.onKeyDown
}, this.props.categories.map(category => {
const classes = (0, _classnames.default)(`mx_EmojiPicker_anchor mx_EmojiPicker_anchor_${category.id}`, {
mx_EmojiPicker_anchor_visible: category.visible
}); // Properties of this button are also modified by EmojiPicker's updateVisibility in DOM.
return /*#__PURE__*/_react.default.createElement("button", {
disabled: !category.enabled,
key: category.id,
ref: category.ref,
className: classes,
onClick: () => this.props.onAnchorClick(category.id),
title: category.name,
role: "tab",
tabIndex: category.visible ? 0 : -1 // roving
,
"aria-selected": category.visible,
"aria-controls": `mx_EmojiPicker_category_${category.id}`
});
}));
}
}, _temp)) || _class);
var _default = Header;
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL2Vtb2ppcGlja2VyL0hlYWRlci50c3giXSwibmFtZXMiOlsiSGVhZGVyIiwiUmVhY3QiLCJQdXJlQ29tcG9uZW50IiwiZXYiLCJoYW5kbGVkIiwia2V5IiwiS2V5IiwiQVJST1dfTEVGVCIsImNoYW5nZUNhdGVnb3J5UmVsYXRpdmUiLCJBUlJPV19SSUdIVCIsIkhPTUUiLCJjaGFuZ2VDYXRlZ29yeUFic29sdXRlIiwiRU5EIiwicHJvcHMiLCJjYXRlZ29yaWVzIiwibGVuZ3RoIiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJmaW5kTmVhcmVzdEVuYWJsZWQiLCJpbmRleCIsImRlbHRhIiwiY2F0cyIsImVuYWJsZWQiLCJjdXJyZW50IiwiZmluZEluZGV4IiwiYyIsInZpc2libGUiLCJjYXRlZ29yeSIsIm9uQW5jaG9yQ2xpY2siLCJpZCIsInJlZiIsImZvY3VzIiwicmVuZGVyIiwib25LZXlEb3duIiwibWFwIiwiY2xhc3NlcyIsIm14X0Vtb2ppUGlja2VyX2FuY2hvcl92aXNpYmxlIiwibmFtZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFpQkE7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBRUE7Ozs7SUFRTUEsTSxXQURMLGdEQUFxQiwwQkFBckIsQyx5QkFBRCxNQUNNQSxNQUROLFNBQ3FCQyxlQUFNQztBQUQzQjtBQUNpRDtBQUFBO0FBQUE7QUFBQSxxREEwQnpCLENBQUNDO0FBQUQ7QUFBQSxTQUE2QjtBQUM3QyxVQUFJQyxPQUFPLEdBQUcsSUFBZDs7QUFDQSxjQUFRRCxFQUFFLENBQUNFLEdBQVg7QUFDSSxhQUFLQyxjQUFJQyxVQUFUO0FBQ0ksZUFBS0Msc0JBQUwsQ0FBNEIsQ0FBQyxDQUE3QjtBQUNBOztBQUNKLGFBQUtGLGNBQUlHLFdBQVQ7QUFDSSxlQUFLRCxzQkFBTCxDQUE0QixDQUE1QjtBQUNBOztBQUVKLGFBQUtGLGNBQUlJLElBQVQ7QUFDSSxlQUFLQyxzQkFBTCxDQUE0QixDQUE1QjtBQUNBOztBQUNKLGFBQUtMLGNBQUlNLEdBQVQ7QUFDSSxlQUFLRCxzQkFBTCxDQUE0QixLQUFLRSxLQUFMLENBQVdDLFVBQVgsQ0FBc0JDLE1BQXRCLEdBQStCLENBQTNELEVBQThELENBQUMsQ0FBL0Q7QUFDQTs7QUFDSjtBQUNJWCxVQUFBQSxPQUFPLEdBQUcsS0FBVjtBQWZSOztBQWtCQSxVQUFJQSxPQUFKLEVBQWE7QUFDVEQsUUFBQUEsRUFBRSxDQUFDYSxjQUFIO0FBQ0FiLFFBQUFBLEVBQUUsQ0FBQ2MsZUFBSDtBQUNIO0FBQ0osS0FsRDRDO0FBQUE7O0FBQ3JDQyxFQUFBQSxrQkFBUixDQUEyQkM7QUFBM0I7QUFBQSxJQUEwQ0M7QUFBMUM7QUFBQSxJQUF5RDtBQUNyREQsSUFBQUEsS0FBSyxJQUFJLEtBQUtOLEtBQUwsQ0FBV0MsVUFBWCxDQUFzQkMsTUFBL0I7QUFDQSxVQUFNTSxJQUFJLEdBQUcsQ0FBQyxHQUFHLEtBQUtSLEtBQUwsQ0FBV0MsVUFBZixFQUEyQixHQUFHLEtBQUtELEtBQUwsQ0FBV0MsVUFBekMsRUFBcUQsR0FBRyxLQUFLRCxLQUFMLENBQVdDLFVBQW5FLENBQWI7O0FBRUEsV0FBT0ssS0FBSyxHQUFHRSxJQUFJLENBQUNOLE1BQWIsSUFBdUJJLEtBQUssSUFBSSxDQUF2QyxFQUEwQztBQUN0QyxVQUFJRSxJQUFJLENBQUNGLEtBQUQsQ0FBSixDQUFZRyxPQUFoQixFQUF5QixPQUFPSCxLQUFLLEdBQUcsS0FBS04sS0FBTCxDQUFXQyxVQUFYLENBQXNCQyxNQUFyQztBQUN6QkksTUFBQUEsS0FBSyxJQUFJQyxLQUFLLEdBQUcsQ0FBUixHQUFZLENBQVosR0FBZ0IsQ0FBQyxDQUExQjtBQUNIO0FBQ0o7O0FBRU9aLEVBQUFBLHNCQUFSLENBQStCWTtBQUEvQjtBQUFBLElBQThDO0FBQzFDLFVBQU1HLE9BQU8sR0FBRyxLQUFLVixLQUFMLENBQVdDLFVBQVgsQ0FBc0JVLFNBQXRCLENBQWdDQyxDQUFDLElBQUlBLENBQUMsQ0FBQ0MsT0FBdkMsQ0FBaEI7QUFDQSxTQUFLZixzQkFBTCxDQUE0QlksT0FBTyxHQUFHSCxLQUF0QyxFQUE2Q0EsS0FBN0M7QUFDSDs7QUFFT1QsRUFBQUEsc0JBQVIsQ0FBK0JRO0FBQS9CO0FBQUEsSUFBOENDLEtBQUssR0FBQyxDQUFwRCxFQUF1RDtBQUNuRCxVQUFNTyxRQUFRLEdBQUcsS0FBS2QsS0FBTCxDQUFXQyxVQUFYLENBQXNCLEtBQUtJLGtCQUFMLENBQXdCQyxLQUF4QixFQUErQkMsS0FBL0IsQ0FBdEIsQ0FBakI7O0FBQ0EsUUFBSU8sUUFBSixFQUFjO0FBQ1YsV0FBS2QsS0FBTCxDQUFXZSxhQUFYLENBQXlCRCxRQUFRLENBQUNFLEVBQWxDO0FBQ0FGLE1BQUFBLFFBQVEsQ0FBQ0csR0FBVCxDQUFhUCxPQUFiLENBQXFCUSxLQUFyQjtBQUNIO0FBQ0osR0F0QjRDLENBd0I3QztBQUNBOzs7QUEyQkFDLEVBQUFBLE1BQU0sR0FBRztBQUNMLHdCQUNJO0FBQ0ksTUFBQSxTQUFTLEVBQUMsdUJBRGQ7QUFFSSxNQUFBLElBQUksRUFBQyxTQUZUO0FBR0ksb0JBQVkseUJBQUcsWUFBSCxDQUhoQjtBQUlJLE1BQUEsU0FBUyxFQUFFLEtBQUtDO0FBSnBCLE9BTUssS0FBS3BCLEtBQUwsQ0FBV0MsVUFBWCxDQUFzQm9CLEdBQXRCLENBQTBCUCxRQUFRLElBQUk7QUFDbkMsWUFBTVEsT0FBTyxHQUFHLHlCQUFZLCtDQUE4Q1IsUUFBUSxDQUFDRSxFQUFHLEVBQXRFLEVBQXlFO0FBQ3JGTyxRQUFBQSw2QkFBNkIsRUFBRVQsUUFBUSxDQUFDRDtBQUQ2QyxPQUF6RSxDQUFoQixDQURtQyxDQUluQzs7QUFDQSwwQkFBTztBQUNILFFBQUEsUUFBUSxFQUFFLENBQUNDLFFBQVEsQ0FBQ0wsT0FEakI7QUFFSCxRQUFBLEdBQUcsRUFBRUssUUFBUSxDQUFDRSxFQUZYO0FBR0gsUUFBQSxHQUFHLEVBQUVGLFFBQVEsQ0FBQ0csR0FIWDtBQUlILFFBQUEsU0FBUyxFQUFFSyxPQUpSO0FBS0gsUUFBQSxPQUFPLEVBQUUsTUFBTSxLQUFLdEIsS0FBTCxDQUFXZSxhQUFYLENBQXlCRCxRQUFRLENBQUNFLEVBQWxDLENBTFo7QUFNSCxRQUFBLEtBQUssRUFBRUYsUUFBUSxDQUFDVSxJQU5iO0FBT0gsUUFBQSxJQUFJLEVBQUMsS0FQRjtBQVFILFFBQUEsUUFBUSxFQUFFVixRQUFRLENBQUNELE9BQVQsR0FBbUIsQ0FBbkIsR0FBdUIsQ0FBQyxDQVIvQixDQVFrQztBQVJsQztBQVNILHlCQUFlQyxRQUFRLENBQUNELE9BVHJCO0FBVUgseUJBQWdCLDJCQUEwQkMsUUFBUSxDQUFDRSxFQUFHO0FBVm5ELFFBQVA7QUFZSCxLQWpCQSxDQU5MLENBREo7QUEyQkg7O0FBaEY0QyxDO2VBbUZsQzdCLE0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMTkgVHVsaXIgQXNva2FuIDx0dWxpckBtYXVuaXVtLm5ldD5cbkNvcHlyaWdodCAyMDIwIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cbkxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG55b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG5Zb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG5Vbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG5kaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG5XSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cblNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbmxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gXCJjbGFzc25hbWVzXCI7XG5cbmltcG9ydCB7X3R9IGZyb20gXCIuLi8uLi8uLi9sYW5ndWFnZUhhbmRsZXJcIjtcbmltcG9ydCB7S2V5fSBmcm9tIFwiLi4vLi4vLi4vS2V5Ym9hcmRcIjtcbmltcG9ydCB7Q2F0ZWdvcnlLZXksIElDYXRlZ29yeX0gZnJvbSBcIi4vQ2F0ZWdvcnlcIjtcbmltcG9ydCB7cmVwbGFjZWFibGVDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi91dGlscy9yZXBsYWNlYWJsZUNvbXBvbmVudFwiO1xuXG5pbnRlcmZhY2UgSVByb3BzIHtcbiAgICBjYXRlZ29yaWVzOiBJQ2F0ZWdvcnlbXTtcbiAgICBvbkFuY2hvckNsaWNrKGlkOiBDYXRlZ29yeUtleSk6IHZvaWRcbn1cblxuQHJlcGxhY2VhYmxlQ29tcG9uZW50KFwidmlld3MuZW1vamlwaWNrZXIuSGVhZGVyXCIpXG5jbGFzcyBIZWFkZXIgZXh0ZW5kcyBSZWFjdC5QdXJlQ29tcG9uZW50PElQcm9wcz4ge1xuICAgIHByaXZhdGUgZmluZE5lYXJlc3RFbmFibGVkKGluZGV4OiBudW1iZXIsIGRlbHRhOiBudW1iZXIpIHtcbiAgICAgICAgaW5kZXggKz0gdGhpcy5wcm9wcy5jYXRlZ29yaWVzLmxlbmd0aDtcbiAgICAgICAgY29uc3QgY2F0cyA9IFsuLi50aGlzLnByb3BzLmNhdGVnb3JpZXMsIC4uLnRoaXMucHJvcHMuY2F0ZWdvcmllcywgLi4udGhpcy5wcm9wcy5jYXRlZ29yaWVzXTtcblxuICAgICAgICB3aGlsZSAoaW5kZXggPCBjYXRzLmxlbmd0aCAmJiBpbmRleCA+PSAwKSB7XG4gICAgICAgICAgICBpZiAoY2F0c1tpbmRleF0uZW5hYmxlZCkgcmV0dXJuIGluZGV4ICUgdGhpcy5wcm9wcy5jYXRlZ29yaWVzLmxlbmd0aDtcbiAgICAgICAgICAgIGluZGV4ICs9IGRlbHRhID4gMCA/IDEgOiAtMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2hhbmdlQ2F0ZWdvcnlSZWxhdGl2ZShkZWx0YTogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLnByb3BzLmNhdGVnb3JpZXMuZmluZEluZGV4KGMgPT4gYy52aXNpYmxlKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VDYXRlZ29yeUFic29sdXRlKGN1cnJlbnQgKyBkZWx0YSwgZGVsdGEpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2hhbmdlQ2F0ZWdvcnlBYnNvbHV0ZShpbmRleDogbnVtYmVyLCBkZWx0YT0xKSB7XG4gICAgICAgIGNvbnN0IGNhdGVnb3J5ID0gdGhpcy5wcm9wcy5jYXRlZ29yaWVzW3RoaXMuZmluZE5lYXJlc3RFbmFibGVkKGluZGV4LCBkZWx0YSldO1xuICAgICAgICBpZiAoY2F0ZWdvcnkpIHtcbiAgICAgICAgICAgIHRoaXMucHJvcHMub25BbmNob3JDbGljayhjYXRlZ29yeS5pZCk7XG4gICAgICAgICAgICBjYXRlZ29yeS5yZWYuY3VycmVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW1wbGVtZW50cyBBUklBIFRhYnMgd2l0aCBBdXRvbWF0aWMgQWN0aXZhdGlvbiBwYXR0ZXJuXG4gICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL3dhaS1hcmlhLXByYWN0aWNlcy9leGFtcGxlcy90YWJzL3RhYnMtMS90YWJzLmh0bWxcbiAgICBwcml2YXRlIG9uS2V5RG93biA9IChldjogUmVhY3QuS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICBsZXQgaGFuZGxlZCA9IHRydWU7XG4gICAgICAgIHN3aXRjaCAoZXYua2V5KSB7XG4gICAgICAgICAgICBjYXNlIEtleS5BUlJPV19MRUZUOlxuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlQ2F0ZWdvcnlSZWxhdGl2ZSgtMSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEtleS5BUlJPV19SSUdIVDpcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZUNhdGVnb3J5UmVsYXRpdmUoMSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgS2V5LkhPTUU6XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VDYXRlZ29yeUFic29sdXRlKDApO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBLZXkuRU5EOlxuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlQ2F0ZWdvcnlBYnNvbHV0ZSh0aGlzLnByb3BzLmNhdGVnb3JpZXMubGVuZ3RoIC0gMSwgLTEpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBoYW5kbGVkID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaGFuZGxlZCkge1xuICAgICAgICAgICAgZXYucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxuYXZcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJteF9FbW9qaVBpY2tlcl9oZWFkZXJcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJ0YWJsaXN0XCJcbiAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPXtfdChcIkNhdGVnb3JpZXNcIil9XG4gICAgICAgICAgICAgICAgb25LZXlEb3duPXt0aGlzLm9uS2V5RG93bn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7dGhpcy5wcm9wcy5jYXRlZ29yaWVzLm1hcChjYXRlZ29yeSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNsYXNzZXMgPSBjbGFzc05hbWVzKGBteF9FbW9qaVBpY2tlcl9hbmNob3IgbXhfRW1vamlQaWNrZXJfYW5jaG9yXyR7Y2F0ZWdvcnkuaWR9YCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbXhfRW1vamlQaWNrZXJfYW5jaG9yX3Zpc2libGU6IGNhdGVnb3J5LnZpc2libGUsXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAvLyBQcm9wZXJ0aWVzIG9mIHRoaXMgYnV0dG9uIGFyZSBhbHNvIG1vZGlmaWVkIGJ5IEVtb2ppUGlja2VyJ3MgdXBkYXRlVmlzaWJpbGl0eSBpbiBET00uXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17IWNhdGVnb3J5LmVuYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2NhdGVnb3J5LmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtjYXRlZ29yeS5yZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzZXN9XG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB0aGlzLnByb3BzLm9uQW5jaG9yQ2xpY2soY2F0ZWdvcnkuaWQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9e2NhdGVnb3J5Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwidGFiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhYkluZGV4PXtjYXRlZ29yeS52aXNpYmxlID8gMCA6IC0xfSAvLyByb3ZpbmdcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2NhdGVnb3J5LnZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtgbXhfRW1vamlQaWNrZXJfY2F0ZWdvcnlfJHtjYXRlZ29yeS5pZH1gfVxuICAgICAgICAgICAgICAgICAgICAvPjtcbiAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIDwvbmF2PlxuICAgICAgICApO1xuICAgIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgSGVhZGVyO1xuIl19