UNPKG

matrix-react-sdk

Version:
71 lines (68 loc) 8.46 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.KeyboardShortcut = exports.KeyboardKey = void 0; var _react = _interopRequireDefault(require("react")); var _KeyboardShortcuts = require("../../../accessibility/KeyboardShortcuts"); var _Keyboard = require("../../../Keyboard"); var _languageHandler = require("../../../languageHandler"); /* Copyright 2024 New Vector Ltd. Copyright 2022 Šimon Brandner <simon.bra.ag@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 KeyboardKey = ({ name, last }) => { const icon = _KeyboardShortcuts.KEY_ICON[name]; const alternateName = _KeyboardShortcuts.ALTERNATE_KEY_NAME[name]; return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("kbd", null, " ", icon || alternateName && (0, _languageHandler._t)(alternateName) || name, " "), !last && "+"); }; exports.KeyboardKey = KeyboardKey; const KeyboardShortcut = ({ value, className = "mx_KeyboardShortcut" }) => { if (!value) return null; const modifiersElement = []; if (value.ctrlOrCmdKey) { modifiersElement.push( /*#__PURE__*/_react.default.createElement(KeyboardKey, { key: "ctrlOrCmdKey", name: _Keyboard.IS_MAC ? _Keyboard.Key.META : _Keyboard.Key.CONTROL })); } else if (value.ctrlKey) { modifiersElement.push( /*#__PURE__*/_react.default.createElement(KeyboardKey, { key: "ctrlKey", name: _Keyboard.Key.CONTROL })); } else if (value.metaKey) { modifiersElement.push( /*#__PURE__*/_react.default.createElement(KeyboardKey, { key: "metaKey", name: _Keyboard.Key.META })); } if (value.altKey) { modifiersElement.push( /*#__PURE__*/_react.default.createElement(KeyboardKey, { key: "altKey", name: _Keyboard.Key.ALT })); } if (value.shiftKey) { modifiersElement.push( /*#__PURE__*/_react.default.createElement(KeyboardKey, { key: "shiftKey", name: _Keyboard.Key.SHIFT })); } return /*#__PURE__*/_react.default.createElement("div", { className: className }, modifiersElement, /*#__PURE__*/_react.default.createElement(KeyboardKey, { name: value.key, last: true })); }; exports.KeyboardShortcut = KeyboardShortcut; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9LZXlib2FyZFNob3J0Y3V0cyIsIl9LZXlib2FyZCIsIl9sYW5ndWFnZUhhbmRsZXIiLCJLZXlib2FyZEtleSIsIm5hbWUiLCJsYXN0IiwiaWNvbiIsIktFWV9JQ09OIiwiYWx0ZXJuYXRlTmFtZSIsIkFMVEVSTkFURV9LRVlfTkFNRSIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJfdCIsImV4cG9ydHMiLCJLZXlib2FyZFNob3J0Y3V0IiwidmFsdWUiLCJjbGFzc05hbWUiLCJtb2RpZmllcnNFbGVtZW50IiwiY3RybE9yQ21kS2V5IiwicHVzaCIsImtleSIsIklTX01BQyIsIktleSIsIk1FVEEiLCJDT05UUk9MIiwiY3RybEtleSIsIm1ldGFLZXkiLCJhbHRLZXkiLCJBTFQiLCJzaGlmdEtleSIsIlNISUZUIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvdmlld3Mvc2V0dGluZ3MvS2V5Ym9hcmRTaG9ydGN1dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMjIgxaBpbW9uIEJyYW5kbmVyIDxzaW1vbi5icmEuYWdAZ21haWwuY29tPlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5cbmltcG9ydCB7IEFMVEVSTkFURV9LRVlfTkFNRSwgS0VZX0lDT04gfSBmcm9tIFwiLi4vLi4vLi4vYWNjZXNzaWJpbGl0eS9LZXlib2FyZFNob3J0Y3V0c1wiO1xuaW1wb3J0IHsgS2V5Q29tYm8gfSBmcm9tIFwiLi4vLi4vLi4vS2V5QmluZGluZ3NNYW5hZ2VyXCI7XG5pbXBvcnQgeyBJU19NQUMsIEtleSB9IGZyb20gXCIuLi8uLi8uLi9LZXlib2FyZFwiO1xuaW1wb3J0IHsgX3QgfSBmcm9tIFwiLi4vLi4vLi4vbGFuZ3VhZ2VIYW5kbGVyXCI7XG5cbmludGVyZmFjZSBJS2V5Ym9hcmRLZXlQcm9wcyB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGxhc3Q/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgS2V5Ym9hcmRLZXk6IFJlYWN0LkZDPElLZXlib2FyZEtleVByb3BzPiA9ICh7IG5hbWUsIGxhc3QgfSkgPT4ge1xuICAgIGNvbnN0IGljb24gPSBLRVlfSUNPTltuYW1lXTtcbiAgICBjb25zdCBhbHRlcm5hdGVOYW1lID0gQUxURVJOQVRFX0tFWV9OQU1FW25hbWVdO1xuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgICAgICAgPGtiZD4ge2ljb24gfHwgKGFsdGVybmF0ZU5hbWUgJiYgX3QoYWx0ZXJuYXRlTmFtZSkpIHx8IG5hbWV9IDwva2JkPlxuICAgICAgICAgICAgeyFsYXN0ICYmIFwiK1wifVxuICAgICAgICA8L1JlYWN0LkZyYWdtZW50PlxuICAgICk7XG59O1xuXG5pbnRlcmZhY2UgSUtleWJvYXJkU2hvcnRjdXRQcm9wcyB7XG4gICAgdmFsdWU6IEtleUNvbWJvO1xuICAgIGNsYXNzTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IEtleWJvYXJkU2hvcnRjdXQ6IFJlYWN0LkZDPElLZXlib2FyZFNob3J0Y3V0UHJvcHM+ID0gKHsgdmFsdWUsIGNsYXNzTmFtZSA9IFwibXhfS2V5Ym9hcmRTaG9ydGN1dFwiIH0pID0+IHtcbiAgICBpZiAoIXZhbHVlKSByZXR1cm4gbnVsbDtcblxuICAgIGNvbnN0IG1vZGlmaWVyc0VsZW1lbnQ6IEpTWC5FbGVtZW50W10gPSBbXTtcbiAgICBpZiAodmFsdWUuY3RybE9yQ21kS2V5KSB7XG4gICAgICAgIG1vZGlmaWVyc0VsZW1lbnQucHVzaCg8S2V5Ym9hcmRLZXkga2V5PVwiY3RybE9yQ21kS2V5XCIgbmFtZT17SVNfTUFDID8gS2V5Lk1FVEEgOiBLZXkuQ09OVFJPTH0gLz4pO1xuICAgIH0gZWxzZSBpZiAodmFsdWUuY3RybEtleSkge1xuICAgICAgICBtb2RpZmllcnNFbGVtZW50LnB1c2goPEtleWJvYXJkS2V5IGtleT1cImN0cmxLZXlcIiBuYW1lPXtLZXkuQ09OVFJPTH0gLz4pO1xuICAgIH0gZWxzZSBpZiAodmFsdWUubWV0YUtleSkge1xuICAgICAgICBtb2RpZmllcnNFbGVtZW50LnB1c2goPEtleWJvYXJkS2V5IGtleT1cIm1ldGFLZXlcIiBuYW1lPXtLZXkuTUVUQX0gLz4pO1xuICAgIH1cbiAgICBpZiAodmFsdWUuYWx0S2V5KSB7XG4gICAgICAgIG1vZGlmaWVyc0VsZW1lbnQucHVzaCg8S2V5Ym9hcmRLZXkga2V5PVwiYWx0S2V5XCIgbmFtZT17S2V5LkFMVH0gLz4pO1xuICAgIH1cbiAgICBpZiAodmFsdWUuc2hpZnRLZXkpIHtcbiAgICAgICAgbW9kaWZpZXJzRWxlbWVudC5wdXNoKDxLZXlib2FyZEtleSBrZXk9XCJzaGlmdEtleVwiIG5hbWU9e0tleS5TSElGVH0gLz4pO1xuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWV9PlxuICAgICAgICAgICAge21vZGlmaWVyc0VsZW1lbnR9XG4gICAgICAgICAgICA8S2V5Ym9hcmRLZXkgbmFtZT17dmFsdWUua2V5fSBsYXN0IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBUUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsa0JBQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLFNBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLGdCQUFBLEdBQUFILE9BQUE7QUFiQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FB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