matrix-react-sdk
Version:
SDK for matrix.org using React
83 lines (65 loc) • 10.2 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var sdk = _interopRequireWildcard(require("../../../index"));
var _EventTile = require("./EventTile");
var _SettingsStore = _interopRequireDefault(require("../../../settings/SettingsStore"));
var _UIFeature = require("../../../settings/UIFeature");
var _replaceableComponent = require("../../../utils/replaceableComponent");
var _dec, _class, _class2, _temp;
let SearchResultTile = (_dec = (0, _replaceableComponent.replaceableComponent)("views.rooms.SearchResultTile"), _dec(_class = (_temp = _class2 = class SearchResultTile extends _react.default.Component {
render() {
const DateSeparator = sdk.getComponent('messages.DateSeparator');
const EventTile = sdk.getComponent('rooms.EventTile');
const result = this.props.searchResult;
const mxEv = result.context.getEvent();
const eventId = mxEv.getId();
const ts1 = mxEv.getTs();
const ret = [/*#__PURE__*/_react.default.createElement(DateSeparator, {
key: ts1 + "-search",
ts: ts1
})];
const timeline = result.context.getTimeline();
for (let j = 0; j < timeline.length; j++) {
const ev = timeline[j];
let highlights;
const contextual = j != result.context.getOurEventIndex();
if (!contextual) {
highlights = this.props.searchHighlights;
}
if ((0, _EventTile.haveTileForEvent)(ev)) {
ret.push( /*#__PURE__*/_react.default.createElement(EventTile, {
key: `${eventId}+${j}`,
mxEvent: ev,
contextual: contextual,
highlights: highlights,
permalinkCreator: this.props.permalinkCreator,
highlightLink: this.props.resultLink,
onHeightChanged: this.props.onHeightChanged,
isTwelveHour: _SettingsStore.default.getValue("showTwelveHourTimestamps"),
enableFlair: _SettingsStore.default.getValue(_UIFeature.UIFeature.Flair)
}));
}
}
return /*#__PURE__*/_react.default.createElement("li", {
"data-scroll-tokens": eventId
}, ret);
}
}, (0, _defineProperty2.default)(_class2, "propTypes", {
// a matrix-js-sdk SearchResult containing the details of this result
searchResult: _propTypes.default.object.isRequired,
// a list of strings to be highlighted in the results
searchHighlights: _propTypes.default.array,
// href for the highlights in this result
resultLink: _propTypes.default.string,
onHeightChanged: _propTypes.default.func
}), _temp)) || _class);
exports.default = SearchResultTile;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL3Jvb21zL1NlYXJjaFJlc3VsdFRpbGUuanMiXSwibmFtZXMiOlsiU2VhcmNoUmVzdWx0VGlsZSIsIlJlYWN0IiwiQ29tcG9uZW50IiwicmVuZGVyIiwiRGF0ZVNlcGFyYXRvciIsInNkayIsImdldENvbXBvbmVudCIsIkV2ZW50VGlsZSIsInJlc3VsdCIsInByb3BzIiwic2VhcmNoUmVzdWx0IiwibXhFdiIsImNvbnRleHQiLCJnZXRFdmVudCIsImV2ZW50SWQiLCJnZXRJZCIsInRzMSIsImdldFRzIiwicmV0IiwidGltZWxpbmUiLCJnZXRUaW1lbGluZSIsImoiLCJsZW5ndGgiLCJldiIsImhpZ2hsaWdodHMiLCJjb250ZXh0dWFsIiwiZ2V0T3VyRXZlbnRJbmRleCIsInNlYXJjaEhpZ2hsaWdodHMiLCJwdXNoIiwicGVybWFsaW5rQ3JlYXRvciIsInJlc3VsdExpbmsiLCJvbkhlaWdodENoYW5nZWQiLCJTZXR0aW5nc1N0b3JlIiwiZ2V0VmFsdWUiLCJVSUZlYXR1cmUiLCJGbGFpciIsIlByb3BUeXBlcyIsIm9iamVjdCIsImlzUmVxdWlyZWQiLCJhcnJheSIsInN0cmluZyIsImZ1bmMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFpQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7SUFHcUJBLGdCLFdBRHBCLGdEQUFxQiw4QkFBckIsQyxtQ0FBRCxNQUNxQkEsZ0JBRHJCLFNBQzhDQyxlQUFNQyxTQURwRCxDQUM4RDtBQWMxREMsRUFBQUEsTUFBTSxHQUFHO0FBQ0wsVUFBTUMsYUFBYSxHQUFHQyxHQUFHLENBQUNDLFlBQUosQ0FBaUIsd0JBQWpCLENBQXRCO0FBQ0EsVUFBTUMsU0FBUyxHQUFHRixHQUFHLENBQUNDLFlBQUosQ0FBaUIsaUJBQWpCLENBQWxCO0FBQ0EsVUFBTUUsTUFBTSxHQUFHLEtBQUtDLEtBQUwsQ0FBV0MsWUFBMUI7QUFDQSxVQUFNQyxJQUFJLEdBQUdILE1BQU0sQ0FBQ0ksT0FBUCxDQUFlQyxRQUFmLEVBQWI7QUFDQSxVQUFNQyxPQUFPLEdBQUdILElBQUksQ0FBQ0ksS0FBTCxFQUFoQjtBQUVBLFVBQU1DLEdBQUcsR0FBR0wsSUFBSSxDQUFDTSxLQUFMLEVBQVo7QUFDQSxVQUFNQyxHQUFHLEdBQUcsY0FBQyw2QkFBQyxhQUFEO0FBQWUsTUFBQSxHQUFHLEVBQUVGLEdBQUcsR0FBRyxTQUExQjtBQUFxQyxNQUFBLEVBQUUsRUFBRUE7QUFBekMsTUFBRCxDQUFaO0FBRUEsVUFBTUcsUUFBUSxHQUFHWCxNQUFNLENBQUNJLE9BQVAsQ0FBZVEsV0FBZixFQUFqQjs7QUFDQSxTQUFLLElBQUlDLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdGLFFBQVEsQ0FBQ0csTUFBN0IsRUFBcUNELENBQUMsRUFBdEMsRUFBMEM7QUFDdEMsWUFBTUUsRUFBRSxHQUFHSixRQUFRLENBQUNFLENBQUQsQ0FBbkI7QUFDQSxVQUFJRyxVQUFKO0FBQ0EsWUFBTUMsVUFBVSxHQUFJSixDQUFDLElBQUliLE1BQU0sQ0FBQ0ksT0FBUCxDQUFlYyxnQkFBZixFQUF6Qjs7QUFDQSxVQUFJLENBQUNELFVBQUwsRUFBaUI7QUFDYkQsUUFBQUEsVUFBVSxHQUFHLEtBQUtmLEtBQUwsQ0FBV2tCLGdCQUF4QjtBQUNIOztBQUNELFVBQUksaUNBQWlCSixFQUFqQixDQUFKLEVBQTBCO0FBQ3RCTCxRQUFBQSxHQUFHLENBQUNVLElBQUosZUFDSSw2QkFBQyxTQUFEO0FBQ0ksVUFBQSxHQUFHLEVBQUcsR0FBRWQsT0FBUSxJQUFHTyxDQUFFLEVBRHpCO0FBRUksVUFBQSxPQUFPLEVBQUVFLEVBRmI7QUFHSSxVQUFBLFVBQVUsRUFBRUUsVUFIaEI7QUFJSSxVQUFBLFVBQVUsRUFBRUQsVUFKaEI7QUFLSSxVQUFBLGdCQUFnQixFQUFFLEtBQUtmLEtBQUwsQ0FBV29CLGdCQUxqQztBQU1JLFVBQUEsYUFBYSxFQUFFLEtBQUtwQixLQUFMLENBQVdxQixVQU45QjtBQU9JLFVBQUEsZUFBZSxFQUFFLEtBQUtyQixLQUFMLENBQVdzQixlQVBoQztBQVFJLFVBQUEsWUFBWSxFQUFFQyx1QkFBY0MsUUFBZCxDQUF1QiwwQkFBdkIsQ0FSbEI7QUFTSSxVQUFBLFdBQVcsRUFBRUQsdUJBQWNDLFFBQWQsQ0FBdUJDLHFCQUFVQyxLQUFqQztBQVRqQixVQURKO0FBYUg7QUFDSjs7QUFDRCx3QkFDSTtBQUFJLDRCQUFvQnJCO0FBQXhCLE9BQ01JLEdBRE4sQ0FESjtBQUlIOztBQXBEeUQsQyxzREFDdkM7QUFDZjtBQUNBUixFQUFBQSxZQUFZLEVBQUUwQixtQkFBVUMsTUFBVixDQUFpQkMsVUFGaEI7QUFJZjtBQUNBWCxFQUFBQSxnQkFBZ0IsRUFBRVMsbUJBQVVHLEtBTGI7QUFPZjtBQUNBVCxFQUFBQSxVQUFVLEVBQUVNLG1CQUFVSSxNQVJQO0FBVWZULEVBQUFBLGVBQWUsRUFBRUssbUJBQVVLO0FBVlosQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAxNSBPcGVuTWFya2V0IEx0ZFxuQ29weXJpZ2h0IDIwMTkgVGhlIE1hdHJpeC5vcmcgRm91bmRhdGlvbiBDLkkuQy5cblxuTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbnlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbllvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cblVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbmRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbldJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxubGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCAqIGFzIHNkayBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbXBvcnQge2hhdmVUaWxlRm9yRXZlbnR9IGZyb20gXCIuL0V2ZW50VGlsZVwiO1xuaW1wb3J0IFNldHRpbmdzU3RvcmUgZnJvbSBcIi4uLy4uLy4uL3NldHRpbmdzL1NldHRpbmdzU3RvcmVcIjtcbmltcG9ydCB7VUlGZWF0dXJlfSBmcm9tIFwiLi4vLi4vLi4vc2V0dGluZ3MvVUlGZWF0dXJlXCI7XG5pbXBvcnQge3JlcGxhY2VhYmxlQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvcmVwbGFjZWFibGVDb21wb25lbnRcIjtcblxuQHJlcGxhY2VhYmxlQ29tcG9uZW50KFwidmlld3Mucm9vbXMuU2VhcmNoUmVzdWx0VGlsZVwiKVxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2VhcmNoUmVzdWx0VGlsZSBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgICAgLy8gYSBtYXRyaXgtanMtc2RrIFNlYXJjaFJlc3VsdCBjb250YWluaW5nIHRoZSBkZXRhaWxzIG9mIHRoaXMgcmVzdWx0XG4gICAgICAgIHNlYXJjaFJlc3VsdDogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuXG4gICAgICAgIC8vIGEgbGlzdCBvZiBzdHJpbmdzIHRvIGJlIGhpZ2hsaWdodGVkIGluIHRoZSByZXN1bHRzXG4gICAgICAgIHNlYXJjaEhpZ2hsaWdodHM6IFByb3BUeXBlcy5hcnJheSxcblxuICAgICAgICAvLyBocmVmIGZvciB0aGUgaGlnaGxpZ2h0cyBpbiB0aGlzIHJlc3VsdFxuICAgICAgICByZXN1bHRMaW5rOiBQcm9wVHlwZXMuc3RyaW5nLFxuXG4gICAgICAgIG9uSGVpZ2h0Q2hhbmdlZDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgICAgY29uc3QgRGF0ZVNlcGFyYXRvciA9IHNkay5nZXRDb21wb25lbnQoJ21lc3NhZ2VzLkRhdGVTZXBhcmF0b3InKTtcbiAgICAgICAgY29uc3QgRXZlbnRUaWxlID0gc2RrLmdldENvbXBvbmVudCgncm9vbXMuRXZlbnRUaWxlJyk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMucHJvcHMuc2VhcmNoUmVzdWx0O1xuICAgICAgICBjb25zdCBteEV2ID0gcmVzdWx0LmNvbnRleHQuZ2V0RXZlbnQoKTtcbiAgICAgICAgY29uc3QgZXZlbnRJZCA9IG14RXYuZ2V0SWQoKTtcblxuICAgICAgICBjb25zdCB0czEgPSBteEV2LmdldFRzKCk7XG4gICAgICAgIGNvbnN0IHJldCA9IFs8RGF0ZVNlcGFyYXRvciBrZXk9e3RzMSArIFwiLXNlYXJjaFwifSB0cz17dHMxfSAvPl07XG5cbiAgICAgICAgY29uc3QgdGltZWxpbmUgPSByZXN1bHQuY29udGV4dC5nZXRUaW1lbGluZSgpO1xuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHRpbWVsaW5lLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICBjb25zdCBldiA9IHRpbWVsaW5lW2pdO1xuICAgICAgICAgICAgbGV0IGhpZ2hsaWdodHM7XG4gICAgICAgICAgICBjb25zdCBjb250ZXh0dWFsID0gKGogIT0gcmVzdWx0LmNvbnRleHQuZ2V0T3VyRXZlbnRJbmRleCgpKTtcbiAgICAgICAgICAgIGlmICghY29udGV4dHVhbCkge1xuICAgICAgICAgICAgICAgIGhpZ2hsaWdodHMgPSB0aGlzLnByb3BzLnNlYXJjaEhpZ2hsaWdodHM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaGF2ZVRpbGVGb3JFdmVudChldikpIHtcbiAgICAgICAgICAgICAgICByZXQucHVzaCgoXG4gICAgICAgICAgICAgICAgICAgIDxFdmVudFRpbGVcbiAgICAgICAgICAgICAgICAgICAgICAgIGtleT17YCR7ZXZlbnRJZH0rJHtqfWB9XG4gICAgICAgICAgICAgICAgICAgICAgICBteEV2ZW50PXtldn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHR1YWw9e2NvbnRleHR1YWx9XG4gICAgICAgICAgICAgICAgICAgICAgICBoaWdobGlnaHRzPXtoaWdobGlnaHRzfVxuICAgICAgICAgICAgICAgICAgICAgICAgcGVybWFsaW5rQ3JlYXRvcj17dGhpcy5wcm9wcy5wZXJtYWxpbmtDcmVhdG9yfVxuICAgICAgICAgICAgICAgICAgICAgICAgaGlnaGxpZ2h0TGluaz17dGhpcy5wcm9wcy5yZXN1bHRMaW5rfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25IZWlnaHRDaGFuZ2VkPXt0aGlzLnByb3BzLm9uSGVpZ2h0Q2hhbmdlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlzVHdlbHZlSG91cj17U2V0dGluZ3NTdG9yZS5nZXRWYWx1ZShcInNob3dUd2VsdmVIb3VyVGltZXN0YW1wc1wiKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZUZsYWlyPXtTZXR0aW5nc1N0b3JlLmdldFZhbHVlKFVJRmVhdHVyZS5GbGFpcil9XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxsaSBkYXRhLXNjcm9sbC10b2tlbnM9e2V2ZW50SWR9PlxuICAgICAgICAgICAgICAgIHsgcmV0IH1cbiAgICAgICAgICAgIDwvbGk+KTtcbiAgICB9XG59XG4iXX0=