matrix-react-sdk
Version:
SDK for matrix.org using React
55 lines (52 loc) • 8.65 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireDefault(require("react"));
var _languageHandler = require("../../../languageHandler");
var _SlashCommands = require("../../../SlashCommands");
var _InfoDialog = _interopRequireDefault(require("./InfoDialog"));
var _MatrixClientPeg = require("../../../MatrixClientPeg");
/*
Copyright 2024 New Vector Ltd.
Copyright 2019 Michael Telatynski <7t3chguy@gmail.com>
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
Please see LICENSE files in the repository root for full details.
*/
const SlashCommandHelpDialog = ({
onFinished
}) => {
const categories = {};
_SlashCommands.Commands.forEach(cmd => {
if (!cmd.isEnabled(_MatrixClientPeg.MatrixClientPeg.get())) return;
if (!categories[cmd.category]) {
categories[cmd.category] = [];
}
categories[cmd.category].push(cmd);
});
const body = Object.values(_SlashCommands.CommandCategories).filter(c => categories[c]).map(category => {
const rows = [/*#__PURE__*/_react.default.createElement("tr", {
key: "_category_" + category,
className: "mx_SlashCommandHelpDialog_headerRow"
}, /*#__PURE__*/_react.default.createElement("td", {
colSpan: 3
}, /*#__PURE__*/_react.default.createElement("h2", null, (0, _languageHandler._t)(category))))];
categories[category].forEach(cmd => {
rows.push( /*#__PURE__*/_react.default.createElement("tr", {
key: cmd.command
}, /*#__PURE__*/_react.default.createElement("td", null, /*#__PURE__*/_react.default.createElement("strong", null, cmd.getCommand())), /*#__PURE__*/_react.default.createElement("td", null, cmd.args), /*#__PURE__*/_react.default.createElement("td", null, (0, _languageHandler._t)(cmd.description))));
});
return rows;
});
return /*#__PURE__*/_react.default.createElement(_InfoDialog.default, {
className: "mx_SlashCommandHelpDialog",
title: (0, _languageHandler._t)("slash_command|help_dialog_title"),
description: /*#__PURE__*/_react.default.createElement("table", null, /*#__PURE__*/_react.default.createElement("tbody", null, body)),
hasCloseButton: true,
onFinished: onFinished
});
};
var _default = exports.default = SlashCommandHelpDialog;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9sYW5ndWFnZUhhbmRsZXIiLCJfU2xhc2hDb21tYW5kcyIsIl9JbmZvRGlhbG9nIiwiX01hdHJpeENsaWVudFBlZyIsIlNsYXNoQ29tbWFuZEhlbHBEaWFsb2ciLCJvbkZpbmlzaGVkIiwiY2F0ZWdvcmllcyIsIkNvbW1hbmRzIiwiZm9yRWFjaCIsImNtZCIsImlzRW5hYmxlZCIsIk1hdHJpeENsaWVudFBlZyIsImdldCIsImNhdGVnb3J5IiwicHVzaCIsImJvZHkiLCJPYmplY3QiLCJ2YWx1ZXMiLCJDb21tYW5kQ2F0ZWdvcmllcyIsImZpbHRlciIsImMiLCJtYXAiLCJyb3dzIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJrZXkiLCJjbGFzc05hbWUiLCJjb2xTcGFuIiwiX3QiLCJjb21tYW5kIiwiZ2V0Q29tbWFuZCIsImFyZ3MiLCJkZXNjcmlwdGlvbiIsInRpdGxlIiwiaGFzQ2xvc2VCdXR0b24iLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3cy9kaWFsb2dzL1NsYXNoQ29tbWFuZEhlbHBEaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDE5IE1pY2hhZWwgVGVsYXR5bnNraSA8N3QzY2hndXlAZ21haWwuY29tPlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB7IF90IH0gZnJvbSBcIi4uLy4uLy4uL2xhbmd1YWdlSGFuZGxlclwiO1xuaW1wb3J0IHsgQ29tbWFuZCwgQ29tbWFuZENhdGVnb3JpZXMsIENvbW1hbmRzIH0gZnJvbSBcIi4uLy4uLy4uL1NsYXNoQ29tbWFuZHNcIjtcbmltcG9ydCBJbmZvRGlhbG9nIGZyb20gXCIuL0luZm9EaWFsb2dcIjtcbmltcG9ydCB7IE1hdHJpeENsaWVudFBlZyB9IGZyb20gXCIuLi8uLi8uLi9NYXRyaXhDbGllbnRQZWdcIjtcblxuaW50ZXJmYWNlIElQcm9wcyB7XG4gICAgb25GaW5pc2hlZCgpOiB2b2lkO1xufVxuXG5jb25zdCBTbGFzaENvbW1hbmRIZWxwRGlhbG9nOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHsgb25GaW5pc2hlZCB9KSA9PiB7XG4gICAgY29uc3QgY2F0ZWdvcmllczogUmVjb3JkPHN0cmluZywgQ29tbWFuZFtdPiA9IHt9O1xuICAgIENvbW1hbmRzLmZvckVhY2goKGNtZCkgPT4ge1xuICAgICAgICBpZiAoIWNtZC5pc0VuYWJsZWQoTWF0cml4Q2xpZW50UGVnLmdldCgpKSkgcmV0dXJuO1xuICAgICAgICBpZiAoIWNhdGVnb3JpZXNbY21kLmNhdGVnb3J5XSkge1xuICAgICAgICAgICAgY2F0ZWdvcmllc1tjbWQuY2F0ZWdvcnldID0gW107XG4gICAgICAgIH1cbiAgICAgICAgY2F0ZWdvcmllc1tjbWQuY2F0ZWdvcnldLnB1c2goY21kKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGJvZHkgPSBPYmplY3QudmFsdWVzKENvbW1hbmRDYXRlZ29yaWVzKVxuICAgICAgICAuZmlsdGVyKChjKSA9PiBjYXRlZ29yaWVzW2NdKVxuICAgICAgICAubWFwKChjYXRlZ29yeSkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgcm93cyA9IFtcbiAgICAgICAgICAgICAgICA8dHIga2V5PXtcIl9jYXRlZ29yeV9cIiArIGNhdGVnb3J5fSBjbGFzc05hbWU9XCJteF9TbGFzaENvbW1hbmRIZWxwRGlhbG9nX2hlYWRlclJvd1wiPlxuICAgICAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17M30+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aDI+e190KGNhdGVnb3J5KX08L2gyPlxuICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDwvdHI+LFxuICAgICAgICAgICAgXTtcblxuICAgICAgICAgICAgY2F0ZWdvcmllc1tjYXRlZ29yeV0uZm9yRWFjaCgoY21kKSA9PiB7XG4gICAgICAgICAgICAgICAgcm93cy5wdXNoKFxuICAgICAgICAgICAgICAgICAgICA8dHIga2V5PXtjbWQuY29tbWFuZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz57Y21kLmdldENvbW1hbmQoKX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e2NtZC5hcmdzfTwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e190KGNtZC5kZXNjcmlwdGlvbil9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPC90cj4sXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICByZXR1cm4gcm93cztcbiAgICAgICAgfSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8SW5mb0RpYWxvZ1xuICAgICAgICAgICAgY2xhc3NOYW1lPVwibXhfU2xhc2hDb21tYW5kSGVscERpYWxvZ1wiXG4gICAgICAgICAgICB0aXRsZT17X3QoXCJzbGFzaF9jb21tYW5kfGhlbHBfZGlhbG9nX3RpdGxlXCIpfVxuICAgICAgICAgICAgZGVzY3JpcHRpb249e1xuICAgICAgICAgICAgICAgIDx0YWJsZT5cbiAgICAgICAgICAgICAgICAgICAgPHRib2R5Pntib2R5fTwvdGJvZHk+XG4gICAgICAgICAgICAgICAgPC90YWJsZT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGhhc0Nsb3NlQnV0dG9uPXt0cnVlfVxuICAgICAgICAgICAgb25GaW5pc2hlZD17b25GaW5pc2hlZH1cbiAgICAgICAgLz5cbiAgICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgU2xhc2hDb21tYW5kSGVscERpYWxvZztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLGdCQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxjQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFKLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSSxnQkFBQSxHQUFBSixPQUFBO0FBYkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBYUEsTUFBTUssc0JBQXdDLEdBQUdBLENBQUM7RUFBRUM7QUFBVyxDQUFDLEtBQUs7RUFDakUsTUFBTUMsVUFBcUMsR0FBRyxDQUFDLENBQUM7RUFDaERDLHVCQUFRLENBQUNDLE9BQU8sQ0FBRUMsR0FBRyxJQUFLO0lBQ3RCLElBQUksQ0FBQ0EsR0FBRyxDQUFDQyxTQUFTLENBQUNDLGdDQUFlLENBQUNDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtJQUMzQyxJQUFJLENBQUNOLFVBQVUsQ0FBQ0csR0FBRyxDQUFDSSxRQUFRLENBQUMsRUFBRTtNQUMzQlAsVUFBVSxDQUFDRyxHQUFHLENBQUNJLFFBQVEsQ0FBQyxHQUFHLEVBQUU7SUFDakM7SUFDQVAsVUFBVSxDQUFDRyxHQUFHLENBQUNJLFFBQVEsQ0FBQyxDQUFDQyxJQUFJLENBQUNMLEdBQUcsQ0FBQztFQUN0QyxDQUFDLENBQUM7RUFFRixNQUFNTSxJQUFJLEdBQUdDLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDQyxnQ0FBaUIsQ0FBQyxDQUN4Q0MsTUFBTSxDQUFFQyxDQUFDLElBQUtkLFVBQVUsQ0FBQ2MsQ0FBQyxDQUFDLENBQUMsQ0FDNUJDLEdBQUcsQ0FBRVIsUUFBUSxJQUFLO0lBQ2YsTUFBTVMsSUFBSSxHQUFHLGNBQ1R6QixNQUFBLENBQUEwQixPQUFBLENBQUFDLGFBQUE7TUFBSUMsR0FBRyxFQUFFLFlBQVksR0FBR1osUUFBUztNQUFDYSxTQUFTLEVBQUM7SUFBcUMsZ0JBQzdFN0IsTUFBQSxDQUFBMEIsT0FBQSxDQUFBQyxhQUFBO01BQUlHLE9BQU8sRUFBRTtJQUFFLGdCQUNYOUIsTUFBQSxDQUFBMEIsT0FBQSxDQUFBQyxhQUFBLGFBQUssSUFBQUksbUJBQUUsRUFBQ2YsUUFBUSxDQUFNLENBQ3RCLENBQ0osQ0FBQyxDQUNSO0lBRURQLFVBQVUsQ0FBQ08sUUFBUSxDQUFDLENBQUNMLE9BQU8sQ0FBRUMsR0FBRyxJQUFLO01BQ2xDYSxJQUFJLENBQUNSLElBQUksZUFDTGpCLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQUMsYUFBQTtRQUFJQyxHQUFHLEVBQUVoQixHQUFHLENBQUNvQjtNQUFRLGdCQUNqQmhDLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQUMsYUFBQSwwQkFDSTNCLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQUMsYUFBQSxpQkFBU2YsR0FBRyxDQUFDcUIsVUFBVSxDQUFDLENBQVUsQ0FDbEMsQ0FBQyxlQUNMakMsTUFBQSxDQUFBMEIsT0FBQSxDQUFBQyxhQUFBLGFBQUtmLEdBQUcsQ0FBQ3NCLElBQVMsQ0FBQyxlQUNuQmxDLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQUMsYUFBQSxhQUFLLElBQUFJLG1CQUFFLEVBQUNuQixHQUFHLENBQUN1QixXQUFXLENBQU0sQ0FDN0IsQ0FDUixDQUFDO0lBQ0wsQ0FBQyxDQUFDO0lBRUYsT0FBT1YsSUFBSTtFQUNmLENBQUMsQ0FBQztFQUVOLG9CQUNJekIsTUFBQSxDQUFBMEIsT0FBQSxDQUFBQyxhQUFBLENBQUN0QixXQUFBLENBQUFxQixPQUFVO0lBQ1BHLFNBQVMsRUFBQywyQkFBMkI7SUFDckNPLEtBQUssRUFBRSxJQUFBTCxtQkFBRSxFQUFDLGlDQUFpQyxDQUFFO0lBQzdDSSxXQUFXLGVBQ1BuQyxNQUFBLENBQUEwQixPQUFBLENBQUFDLGFBQUEsNkJBQ0kzQixNQUFBLENBQUEwQixPQUFBLENBQUFDLGFBQUEsZ0JBQVFULElBQVksQ0FDakIsQ0FDVjtJQUNEbUIsY0FBYyxFQUFFLElBQUs7SUFDckI3QixVQUFVLEVBQUVBO0VBQVcsQ0FDMUIsQ0FBQztBQUVWLENBQUM7QUFBQyxJQUFBOEIsUUFBQSxHQUFBQyxPQUFBLENBQUFiLE9BQUEsR0FFYW5CLHNCQUFzQiIsImlnbm9yZUxpc3QiOltdfQ==