UNPKG

matrix-react-sdk

Version:
71 lines (69 loc) 12.4 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _classnames = _interopRequireDefault(require("classnames")); var _StyledLiveBeaconIcon = _interopRequireDefault(require("./StyledLiveBeaconIcon")); var _languageHandler = require("../../../languageHandler"); var _LiveTimeRemaining = _interopRequireDefault(require("./LiveTimeRemaining")); var _displayStatus = require("./displayStatus"); var _beacon = require("../../../utils/beacon"); var _DateUtils = require("../../../DateUtils"); const _excluded = ["beacon", "displayStatus", "displayLiveTimeRemaining", "label", "className", "children", "withIcon"]; /* Copyright 2024 New Vector Ltd. Copyright 2022 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 BeaconExpiryTime = ({ beacon }) => { const expiryTime = (0, _DateUtils.formatTime)(new Date((0, _beacon.getBeaconExpiryTimestamp)(beacon))); return /*#__PURE__*/_react.default.createElement("span", { className: "mx_BeaconStatus_expiryTime" }, (0, _languageHandler._t)("location_sharing|live_until", { expiryTime })); }; const BeaconStatus = _ref => { let { beacon, displayStatus, displayLiveTimeRemaining, label, className, children, withIcon } = _ref, rest = (0, _objectWithoutProperties2.default)(_ref, _excluded); const isIdle = displayStatus === _displayStatus.BeaconDisplayStatus.Loading || displayStatus === _displayStatus.BeaconDisplayStatus.Stopped; return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, rest, { className: (0, _classnames.default)("mx_BeaconStatus", `mx_BeaconStatus_${displayStatus}`, className) }), withIcon && /*#__PURE__*/_react.default.createElement(_StyledLiveBeaconIcon.default, { className: "mx_BeaconStatus_icon", withError: displayStatus === _displayStatus.BeaconDisplayStatus.Error, isIdle: isIdle }), /*#__PURE__*/_react.default.createElement("div", { className: "mx_BeaconStatus_description" }, displayStatus === _displayStatus.BeaconDisplayStatus.Loading && /*#__PURE__*/_react.default.createElement("span", { className: "mx_BeaconStatus_description_status" }, (0, _languageHandler._t)("location_sharing|loading_live_location")), displayStatus === _displayStatus.BeaconDisplayStatus.Stopped && /*#__PURE__*/_react.default.createElement("span", { className: "mx_BeaconStatus_description_status" }, (0, _languageHandler._t)("location_sharing|live_location_ended")), displayStatus === _displayStatus.BeaconDisplayStatus.Error && /*#__PURE__*/_react.default.createElement("span", { className: "mx_BeaconStatus_description_status" }, (0, _languageHandler._t)("location_sharing|live_location_error")), displayStatus === _displayStatus.BeaconDisplayStatus.Active && beacon && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", { className: "mx_BeaconStatus_label" }, label), displayLiveTimeRemaining ? /*#__PURE__*/_react.default.createElement(_LiveTimeRemaining.default, { beacon: beacon }) : /*#__PURE__*/_react.default.createElement(BeaconExpiryTime, { beacon: beacon })))), children); }; var _default = exports.default = BeaconStatus; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9jbGFzc25hbWVzIiwiX1N0eWxlZExpdmVCZWFjb25JY29uIiwiX2xhbmd1YWdlSGFuZGxlciIsIl9MaXZlVGltZVJlbWFpbmluZyIsIl9kaXNwbGF5U3RhdHVzIiwiX2JlYWNvbiIsIl9EYXRlVXRpbHMiLCJfZXhjbHVkZWQiLCJCZWFjb25FeHBpcnlUaW1lIiwiYmVhY29uIiwiZXhwaXJ5VGltZSIsImZvcm1hdFRpbWUiLCJEYXRlIiwiZ2V0QmVhY29uRXhwaXJ5VGltZXN0YW1wIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJfdCIsIkJlYWNvblN0YXR1cyIsIl9yZWYiLCJkaXNwbGF5U3RhdHVzIiwiZGlzcGxheUxpdmVUaW1lUmVtYWluaW5nIiwibGFiZWwiLCJjaGlsZHJlbiIsIndpdGhJY29uIiwicmVzdCIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJpc0lkbGUiLCJCZWFjb25EaXNwbGF5U3RhdHVzIiwiTG9hZGluZyIsIlN0b3BwZWQiLCJfZXh0ZW5kczIiLCJjbGFzc05hbWVzIiwid2l0aEVycm9yIiwiRXJyb3IiLCJBY3RpdmUiLCJGcmFnbWVudCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL2JlYWNvbi9CZWFjb25TdGF0dXMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIyIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCBSZWFjdCwgeyBIVE1MUHJvcHMgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gXCJjbGFzc25hbWVzXCI7XG5pbXBvcnQgeyBCZWFjb24gfSBmcm9tIFwibWF0cml4LWpzLXNkay9zcmMvbWF0cml4XCI7XG5cbmltcG9ydCBTdHlsZWRMaXZlQmVhY29uSWNvbiBmcm9tIFwiLi9TdHlsZWRMaXZlQmVhY29uSWNvblwiO1xuaW1wb3J0IHsgX3QgfSBmcm9tIFwiLi4vLi4vLi4vbGFuZ3VhZ2VIYW5kbGVyXCI7XG5pbXBvcnQgTGl2ZVRpbWVSZW1haW5pbmcgZnJvbSBcIi4vTGl2ZVRpbWVSZW1haW5pbmdcIjtcbmltcG9ydCB7IEJlYWNvbkRpc3BsYXlTdGF0dXMgfSBmcm9tIFwiLi9kaXNwbGF5U3RhdHVzXCI7XG5pbXBvcnQgeyBnZXRCZWFjb25FeHBpcnlUaW1lc3RhbXAgfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvYmVhY29uXCI7XG5pbXBvcnQgeyBmb3JtYXRUaW1lIH0gZnJvbSBcIi4uLy4uLy4uL0RhdGVVdGlsc1wiO1xuXG5pbnRlcmZhY2UgUHJvcHMge1xuICAgIGRpc3BsYXlTdGF0dXM6IEJlYWNvbkRpc3BsYXlTdGF0dXM7XG4gICAgZGlzcGxheUxpdmVUaW1lUmVtYWluaW5nPzogYm9vbGVhbjtcbiAgICB3aXRoSWNvbj86IGJvb2xlYW47XG4gICAgYmVhY29uPzogQmVhY29uO1xuICAgIGxhYmVsPzogc3RyaW5nO1xufVxuXG5jb25zdCBCZWFjb25FeHBpcnlUaW1lOiBSZWFjdC5GQzx7IGJlYWNvbjogQmVhY29uIH0+ID0gKHsgYmVhY29uIH0pID0+IHtcbiAgICBjb25zdCBleHBpcnlUaW1lID0gZm9ybWF0VGltZShuZXcgRGF0ZShnZXRCZWFjb25FeHBpcnlUaW1lc3RhbXAoYmVhY29uKSkpO1xuICAgIHJldHVybiA8c3BhbiBjbGFzc05hbWU9XCJteF9CZWFjb25TdGF0dXNfZXhwaXJ5VGltZVwiPntfdChcImxvY2F0aW9uX3NoYXJpbmd8bGl2ZV91bnRpbFwiLCB7IGV4cGlyeVRpbWUgfSl9PC9zcGFuPjtcbn07XG5cbmNvbnN0IEJlYWNvblN0YXR1czogUmVhY3QuRkM8UHJvcHMgJiBIVE1MUHJvcHM8SFRNTERpdkVsZW1lbnQ+PiA9ICh7XG4gICAgYmVhY29uLFxuICAgIGRpc3BsYXlTdGF0dXMsXG4gICAgZGlzcGxheUxpdmVUaW1lUmVtYWluaW5nLFxuICAgIGxhYmVsLFxuICAgIGNsYXNzTmFtZSxcbiAgICBjaGlsZHJlbixcbiAgICB3aXRoSWNvbixcbiAgICAuLi5yZXN0XG59KSA9PiB7XG4gICAgY29uc3QgaXNJZGxlID0gZGlzcGxheVN0YXR1cyA9PT0gQmVhY29uRGlzcGxheVN0YXR1cy5Mb2FkaW5nIHx8IGRpc3BsYXlTdGF0dXMgPT09IEJlYWNvbkRpc3BsYXlTdGF0dXMuU3RvcHBlZDtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgey4uLnJlc3R9IGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhcIm14X0JlYWNvblN0YXR1c1wiLCBgbXhfQmVhY29uU3RhdHVzXyR7ZGlzcGxheVN0YXR1c31gLCBjbGFzc05hbWUpfT5cbiAgICAgICAgICAgIHt3aXRoSWNvbiAmJiAoXG4gICAgICAgICAgICAgICAgPFN0eWxlZExpdmVCZWFjb25JY29uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm14X0JlYWNvblN0YXR1c19pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgd2l0aEVycm9yPXtkaXNwbGF5U3RhdHVzID09PSBCZWFjb25EaXNwbGF5U3RhdHVzLkVycm9yfVxuICAgICAgICAgICAgICAgICAgICBpc0lkbGU9e2lzSWRsZX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXhfQmVhY29uU3RhdHVzX2Rlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAge2Rpc3BsYXlTdGF0dXMgPT09IEJlYWNvbkRpc3BsYXlTdGF0dXMuTG9hZGluZyAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm14X0JlYWNvblN0YXR1c19kZXNjcmlwdGlvbl9zdGF0dXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtfdChcImxvY2F0aW9uX3NoYXJpbmd8bG9hZGluZ19saXZlX2xvY2F0aW9uXCIpfVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB7ZGlzcGxheVN0YXR1cyA9PT0gQmVhY29uRGlzcGxheVN0YXR1cy5TdG9wcGVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwibXhfQmVhY29uU3RhdHVzX2Rlc2NyaXB0aW9uX3N0YXR1c1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge190KFwibG9jYXRpb25fc2hhcmluZ3xsaXZlX2xvY2F0aW9uX2VuZGVkXCIpfVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICB7ZGlzcGxheVN0YXR1cyA9PT0gQmVhY29uRGlzcGxheVN0YXR1cy5FcnJvciAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm14X0JlYWNvblN0YXR1c19kZXNjcmlwdGlvbl9zdGF0dXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtfdChcImxvY2F0aW9uX3NoYXJpbmd8bGl2ZV9sb2NhdGlvbl9lcnJvclwiKX1cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAge2Rpc3BsYXlTdGF0dXMgPT09IEJlYWNvbkRpc3BsYXlTdGF0dXMuQWN0aXZlICYmIGJlYWNvbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm14X0JlYWNvblN0YXR1c19sYWJlbFwiPntsYWJlbH08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2Rpc3BsYXlMaXZlVGltZVJlbWFpbmluZyA/IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpdmVUaW1lUmVtYWluaW5nIGJlYWNvbj17YmVhY29ufSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCZWFjb25FeHBpcnlUaW1lIGJlYWNvbj17YmVhY29ufSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L2Rpdj5cbiAgICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQmVhY29uU3RhdHVzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFRQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFHQSxJQUFBRSxxQkFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsZ0JBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLGtCQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxjQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxPQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxVQUFBLEdBQUFQLE9BQUE7QUFBZ0QsTUFBQVEsU0FBQTtBQWpCaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFxQkEsTUFBTUMsZ0JBQThDLEdBQUdBLENBQUM7RUFBRUM7QUFBTyxDQUFDLEtBQUs7RUFDbkUsTUFBTUMsVUFBVSxHQUFHLElBQUFDLHFCQUFVLEVBQUMsSUFBSUMsSUFBSSxDQUFDLElBQUFDLGdDQUF3QixFQUFDSixNQUFNLENBQUMsQ0FBQyxDQUFDO0VBQ3pFLG9CQUFPWixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUE7SUFBTUMsU0FBUyxFQUFDO0VBQTRCLEdBQUUsSUFBQUMsbUJBQUUsRUFBQyw2QkFBNkIsRUFBRTtJQUFFUDtFQUFXLENBQUMsQ0FBUSxDQUFDO0FBQ2xILENBQUM7QUFFRCxNQUFNUSxZQUF5RCxHQUFHQyxJQUFBLElBUzVEO0VBQUEsSUFUNkQ7TUFDL0RWLE1BQU07TUFDTlcsYUFBYTtNQUNiQyx3QkFBd0I7TUFDeEJDLEtBQUs7TUFDTE4sU0FBUztNQUNUTyxRQUFRO01BQ1JDO0lBRUosQ0FBQyxHQUFBTCxJQUFBO0lBRE1NLElBQUksT0FBQUMseUJBQUEsQ0FBQVosT0FBQSxFQUFBSyxJQUFBLEVBQUFaLFNBQUE7RUFFUCxNQUFNb0IsTUFBTSxHQUFHUCxhQUFhLEtBQUtRLGtDQUFtQixDQUFDQyxPQUFPLElBQUlULGFBQWEsS0FBS1Esa0NBQW1CLENBQUNFLE9BQU87RUFFN0csb0JBQ0lqQyxNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUEsWUFBQWdCLFNBQUEsQ0FBQWpCLE9BQUEsTUFBU1csSUFBSTtJQUFFVCxTQUFTLEVBQUUsSUFBQWdCLG1CQUFVLEVBQUMsaUJBQWlCLEVBQUUsbUJBQW1CWixhQUFhLEVBQUUsRUFBRUosU0FBUztFQUFFLElBQ2xHUSxRQUFRLGlCQUNMM0IsTUFBQSxDQUFBaUIsT0FBQSxDQUFBQyxhQUFBLENBQUNkLHFCQUFBLENBQUFhLE9BQW9CO0lBQ2pCRSxTQUFTLEVBQUMsc0JBQXNCO0lBQ2hDaUIsU0FBUyxFQUFFYixhQUFhLEtBQUtRLGtDQUFtQixDQUFDTSxLQUFNO0lBQ3ZEUCxNQUFNLEVBQUVBO0VBQU8sQ0FDbEIsQ0FDSixlQUNEOUIsTUFBQSxDQUFBaUIsT0FBQSxDQUFBQyxhQUFBO0lBQUtDLFNBQVMsRUFBQztFQUE2QixHQUN2Q0ksYUFBYSxLQUFLUSxrQ0FBbUIsQ0FBQ0MsT0FBTyxpQkFDMUNoQyxNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUE7SUFBTUMsU0FBUyxFQUFDO0VBQW9DLEdBQy9DLElBQUFDLG1CQUFFLEVBQUMsd0NBQXdDLENBQzFDLENBQ1QsRUFDQUcsYUFBYSxLQUFLUSxrQ0FBbUIsQ0FBQ0UsT0FBTyxpQkFDMUNqQyxNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUE7SUFBTUMsU0FBUyxFQUFDO0VBQW9DLEdBQy9DLElBQUFDLG1CQUFFLEVBQUMsc0NBQXNDLENBQ3hDLENBQ1QsRUFDQUcsYUFBYSxLQUFLUSxrQ0FBbUIsQ0FBQ00sS0FBSyxpQkFDeENyQyxNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUE7SUFBTUMsU0FBUyxFQUFDO0VBQW9DLEdBQy9DLElBQUFDLG1CQUFFLEVBQUMsc0NBQXNDLENBQ3hDLENBQ1QsRUFDQUcsYUFBYSxLQUFLUSxrQ0FBbUIsQ0FBQ08sTUFBTSxJQUFJMUIsTUFBTSxpQkFDbkRaLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQUMsYUFBQSxDQUFBbEIsTUFBQSxDQUFBaUIsT0FBQSxDQUFBc0IsUUFBQSxxQkFDSXZDLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQUMsYUFBQSxDQUFBbEIsTUFBQSxDQUFBaUIsT0FBQSxDQUFBc0IsUUFBQSxxQkFDSXZDLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQUMsYUFBQTtJQUFNQyxTQUFTLEVBQUM7RUFBdUIsR0FBRU0sS0FBWSxDQUFDLEVBQ3JERCx3QkFBd0IsZ0JBQ3JCeEIsTUFBQSxDQUFBaUIsT0FBQSxDQUFBQyxhQUFBLENBQUNaLGtCQUFBLENBQUFXLE9BQWlCO0lBQUNMLE1BQU0sRUFBRUE7RUFBTyxDQUFFLENBQUMsZ0JBRXJDWixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUEsQ0FBQ1AsZ0JBQWdCO0lBQUNDLE1BQU0sRUFBRUE7RUFBTyxDQUFFLENBRXpDLENBQ0osQ0FFTCxDQUFDLEVBQ0xjLFFBQ0EsQ0FBQztBQUVkLENBQUM7QUFBQyxJQUFBYyxRQUFBLEdBQUFDLE9BQUEsQ0FBQXhCLE9BQUEsR0FFYUksWUFBWSIsImlnbm9yZUxpc3QiOltdfQ==