UNPKG

matrix-react-sdk

Version:
62 lines (59 loc) 10.7 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.LocationButton = void 0; var _react = _interopRequireWildcard(require("react")); var _classnames = _interopRequireDefault(require("classnames")); var _languageHandler = require("../../../languageHandler"); var _CollapsibleButton = require("../rooms/CollapsibleButton"); var _ContextMenu = require("../../structures/ContextMenu"); var _MessageComposerButtons = require("../rooms/MessageComposerButtons"); var _LocationShareMenu = _interopRequireDefault(require("./LocationShareMenu")); function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } /* Copyright 2024 New Vector Ltd. Copyright 2021 The Matrix.org Foundation C.I.C. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ const LocationButton = ({ roomId, sender, menuPosition, relation }) => { const overflowMenuCloser = (0, _react.useContext)(_MessageComposerButtons.OverflowMenuContext); const [menuDisplayed, button, openMenu, closeMenu] = (0, _ContextMenu.useContextMenu)(); const _onFinished = ev => { closeMenu(ev); overflowMenuCloser?.(); }; let contextMenu = null; if (menuDisplayed) { const position = menuPosition ?? (button.current && (0, _ContextMenu.aboveLeftOf)(button.current.getBoundingClientRect())) ?? {}; contextMenu = /*#__PURE__*/_react.default.createElement(_LocationShareMenu.default, { menuPosition: position, onFinished: _onFinished, sender: sender, roomId: roomId, openMenu: openMenu, relation: relation }); } const className = (0, _classnames.default)("mx_MessageComposer_button", { mx_MessageComposer_button_highlight: menuDisplayed }); return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CollapsibleButton.CollapsibleButton, { className: className, iconClassName: "mx_MessageComposer_location", onClick: openMenu, title: (0, _languageHandler._t)("common|location"), inputRef: button }), contextMenu); }; exports.LocationButton = LocationButton; var _default = exports.default = LocationButton; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfbGFuZ3VhZ2VIYW5kbGVyIiwiX0NvbGxhcHNpYmxlQnV0dG9uIiwiX0NvbnRleHRNZW51IiwiX01lc3NhZ2VDb21wb3NlckJ1dHRvbnMiLCJfTG9jYXRpb25TaGFyZU1lbnUiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJMb2NhdGlvbkJ1dHRvbiIsInJvb21JZCIsInNlbmRlciIsIm1lbnVQb3NpdGlvbiIsInJlbGF0aW9uIiwib3ZlcmZsb3dNZW51Q2xvc2VyIiwidXNlQ29udGV4dCIsIk92ZXJmbG93TWVudUNvbnRleHQiLCJtZW51RGlzcGxheWVkIiwiYnV0dG9uIiwib3Blbk1lbnUiLCJjbG9zZU1lbnUiLCJ1c2VDb250ZXh0TWVudSIsIl9vbkZpbmlzaGVkIiwiZXYiLCJjb250ZXh0TWVudSIsInBvc2l0aW9uIiwiY3VycmVudCIsImFib3ZlTGVmdE9mIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwiY3JlYXRlRWxlbWVudCIsIm9uRmluaXNoZWQiLCJjbGFzc05hbWUiLCJjbGFzc05hbWVzIiwibXhfTWVzc2FnZUNvbXBvc2VyX2J1dHRvbl9oaWdobGlnaHQiLCJGcmFnbWVudCIsIkNvbGxhcHNpYmxlQnV0dG9uIiwiaWNvbkNsYXNzTmFtZSIsIm9uQ2xpY2siLCJ0aXRsZSIsIl90IiwiaW5wdXRSZWYiLCJleHBvcnRzIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3cy9sb2NhdGlvbi9Mb2NhdGlvbkJ1dHRvbi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMjEgVGhlIE1hdHJpeC5vcmcgRm91bmRhdGlvbiBDLkkuQy5cblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IFJlYWN0LCB7IFJlYWN0Tm9kZSwgU3ludGhldGljRXZlbnQsIHVzZUNvbnRleHQgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gXCJjbGFzc25hbWVzXCI7XG5pbXBvcnQgeyBSb29tTWVtYmVyLCBJRXZlbnRSZWxhdGlvbiB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcblxuaW1wb3J0IHsgX3QgfSBmcm9tIFwiLi4vLi4vLi4vbGFuZ3VhZ2VIYW5kbGVyXCI7XG5pbXBvcnQgeyBDb2xsYXBzaWJsZUJ1dHRvbiB9IGZyb20gXCIuLi9yb29tcy9Db2xsYXBzaWJsZUJ1dHRvblwiO1xuaW1wb3J0IHsgYWJvdmVMZWZ0T2YsIHVzZUNvbnRleHRNZW51LCBNZW51UHJvcHMgfSBmcm9tIFwiLi4vLi4vc3RydWN0dXJlcy9Db250ZXh0TWVudVwiO1xuaW1wb3J0IHsgT3ZlcmZsb3dNZW51Q29udGV4dCB9IGZyb20gXCIuLi9yb29tcy9NZXNzYWdlQ29tcG9zZXJCdXR0b25zXCI7XG5pbXBvcnQgTG9jYXRpb25TaGFyZU1lbnUgZnJvbSBcIi4vTG9jYXRpb25TaGFyZU1lbnVcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJUHJvcHMge1xuICAgIHJvb21JZDogc3RyaW5nO1xuICAgIHNlbmRlcjogUm9vbU1lbWJlcjtcbiAgICBtZW51UG9zaXRpb24/OiBNZW51UHJvcHM7XG4gICAgcmVsYXRpb24/OiBJRXZlbnRSZWxhdGlvbjtcbn1cblxuZXhwb3J0IGNvbnN0IExvY2F0aW9uQnV0dG9uOiBSZWFjdC5GQzxJUHJvcHM+ID0gKHsgcm9vbUlkLCBzZW5kZXIsIG1lbnVQb3NpdGlvbiwgcmVsYXRpb24gfSkgPT4ge1xuICAgIGNvbnN0IG92ZXJmbG93TWVudUNsb3NlciA9IHVzZUNvbnRleHQoT3ZlcmZsb3dNZW51Q29udGV4dCk7XG4gICAgY29uc3QgW21lbnVEaXNwbGF5ZWQsIGJ1dHRvbiwgb3Blbk1lbnUsIGNsb3NlTWVudV0gPSB1c2VDb250ZXh0TWVudSgpO1xuXG4gICAgY29uc3QgX29uRmluaXNoZWQgPSAoZXY/OiBTeW50aGV0aWNFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgICBjbG9zZU1lbnUoZXYpO1xuICAgICAgICBvdmVyZmxvd01lbnVDbG9zZXI/LigpO1xuICAgIH07XG5cbiAgICBsZXQgY29udGV4dE1lbnU6IFJlYWN0Tm9kZSA9IG51bGw7XG4gICAgaWYgKG1lbnVEaXNwbGF5ZWQpIHtcbiAgICAgICAgY29uc3QgcG9zaXRpb24gPSBtZW51UG9zaXRpb24gPz8gKGJ1dHRvbi5jdXJyZW50ICYmIGFib3ZlTGVmdE9mKGJ1dHRvbi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpKSkgPz8ge307XG5cbiAgICAgICAgY29udGV4dE1lbnUgPSAoXG4gICAgICAgICAgICA8TG9jYXRpb25TaGFyZU1lbnVcbiAgICAgICAgICAgICAgICBtZW51UG9zaXRpb249e3Bvc2l0aW9ufVxuICAgICAgICAgICAgICAgIG9uRmluaXNoZWQ9e19vbkZpbmlzaGVkfVxuICAgICAgICAgICAgICAgIHNlbmRlcj17c2VuZGVyfVxuICAgICAgICAgICAgICAgIHJvb21JZD17cm9vbUlkfVxuICAgICAgICAgICAgICAgIG9wZW5NZW51PXtvcGVuTWVudX1cbiAgICAgICAgICAgICAgICByZWxhdGlvbj17cmVsYXRpb259XG4gICAgICAgICAgICAvPlxuICAgICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGNsYXNzTmFtZSA9IGNsYXNzTmFtZXMoXCJteF9NZXNzYWdlQ29tcG9zZXJfYnV0dG9uXCIsIHtcbiAgICAgICAgbXhfTWVzc2FnZUNvbXBvc2VyX2J1dHRvbl9oaWdobGlnaHQ6IG1lbnVEaXNwbGF5ZWQsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICAgICAgICA8Q29sbGFwc2libGVCdXR0b25cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgICAgICAgICAgICBpY29uQ2xhc3NOYW1lPVwibXhfTWVzc2FnZUNvbXBvc2VyX2xvY2F0aW9uXCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtvcGVuTWVudX1cbiAgICAgICAgICAgICAgICB0aXRsZT17X3QoXCJjb21tb258bG9jYXRpb25cIil9XG4gICAgICAgICAgICAgICAgaW5wdXRSZWY9e2J1dHRvbn1cbiAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgIHtjb250ZXh0TWVudX1cbiAgICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9jYXRpb25CdXR0b247XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFRQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFHQSxJQUFBRyxnQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksa0JBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFlBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLHVCQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxrQkFBQSxHQUFBTCxzQkFBQSxDQUFBRixPQUFBO0FBQW9ELFNBQUFRLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFB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