UNPKG

matrix-react-sdk

Version:
54 lines (51 loc) 6.21 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.VoiceBroadcastPreRecordingStore = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _matrix = require("matrix-js-sdk/src/matrix"); /* 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. */ class VoiceBroadcastPreRecordingStore extends _matrix.TypedEventEmitter { constructor(...args) { super(...args); (0, _defineProperty2.default)(this, "current", null); (0, _defineProperty2.default)(this, "onCancel", voiceBroadcastPreRecording => { if (this.current === voiceBroadcastPreRecording) { this.clearCurrent(); } }); } setCurrent(current) { if (this.current === current) return; if (this.current) { this.current.off("dismiss", this.onCancel); } this.current = current; current.on("dismiss", this.onCancel); this.emit("changed", current); } clearCurrent() { if (this.current === null) return; this.current.off("dismiss", this.onCancel); this.current = null; this.emit("changed", null); } getCurrent() { return this.current; } destroy() { this.removeAllListeners(); if (this.current) { this.current.off("dismiss", this.onCancel); } } } exports.VoiceBroadcastPreRecordingStore = VoiceBroadcastPreRecordingStore; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWF0cml4IiwicmVxdWlyZSIsIlZvaWNlQnJvYWRjYXN0UHJlUmVjb3JkaW5nU3RvcmUiLCJUeXBlZEV2ZW50RW1pdHRlciIsImNvbnN0cnVjdG9yIiwiYXJncyIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJkZWZhdWx0Iiwidm9pY2VCcm9hZGNhc3RQcmVSZWNvcmRpbmciLCJjdXJyZW50IiwiY2xlYXJDdXJyZW50Iiwic2V0Q3VycmVudCIsIm9mZiIsIm9uQ2FuY2VsIiwib24iLCJlbWl0IiwiZ2V0Q3VycmVudCIsImRlc3Ryb3kiLCJyZW1vdmVBbGxMaXN0ZW5lcnMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3ZvaWNlLWJyb2FkY2FzdC9zdG9yZXMvVm9pY2VCcm9hZGNhc3RQcmVSZWNvcmRpbmdTdG9yZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAyMiBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgeyBUeXBlZEV2ZW50RW1pdHRlciB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcblxuaW1wb3J0IHsgVm9pY2VCcm9hZGNhc3RQcmVSZWNvcmRpbmcgfSBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IElEZXN0cm95YWJsZSB9IGZyb20gXCIuLi8uLi91dGlscy9JRGVzdHJveWFibGVcIjtcblxuZXhwb3J0IHR5cGUgVm9pY2VCcm9hZGNhc3RQcmVSZWNvcmRpbmdFdmVudCA9IFwiY2hhbmdlZFwiO1xuXG5pbnRlcmZhY2UgRXZlbnRNYXAge1xuICAgIGNoYW5nZWQ6IChwcmVSZWNvcmRpbmc6IFZvaWNlQnJvYWRjYXN0UHJlUmVjb3JkaW5nIHwgbnVsbCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNsYXNzIFZvaWNlQnJvYWRjYXN0UHJlUmVjb3JkaW5nU3RvcmVcbiAgICBleHRlbmRzIFR5cGVkRXZlbnRFbWl0dGVyPFZvaWNlQnJvYWRjYXN0UHJlUmVjb3JkaW5nRXZlbnQsIEV2ZW50TWFwPlxuICAgIGltcGxlbWVudHMgSURlc3Ryb3lhYmxlXG57XG4gICAgcHJpdmF0ZSBjdXJyZW50OiBWb2ljZUJyb2FkY2FzdFByZVJlY29yZGluZyB8IG51bGwgPSBudWxsO1xuXG4gICAgcHVibGljIHNldEN1cnJlbnQoY3VycmVudDogVm9pY2VCcm9hZGNhc3RQcmVSZWNvcmRpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudCA9PT0gY3VycmVudCkgcmV0dXJuO1xuXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudC5vZmYoXCJkaXNtaXNzXCIsIHRoaXMub25DYW5jZWwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jdXJyZW50ID0gY3VycmVudDtcbiAgICAgICAgY3VycmVudC5vbihcImRpc21pc3NcIiwgdGhpcy5vbkNhbmNlbCk7XG4gICAgICAgIHRoaXMuZW1pdChcImNoYW5nZWRcIiwgY3VycmVudCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsZWFyQ3VycmVudCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY3VycmVudCA9PT0gbnVsbCkgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMuY3VycmVudC5vZmYoXCJkaXNtaXNzXCIsIHRoaXMub25DYW5jZWwpO1xuICAgICAgICB0aGlzLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICB0aGlzLmVtaXQoXCJjaGFuZ2VkXCIsIG51bGwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDdXJyZW50KCk6IFZvaWNlQnJvYWRjYXN0UHJlUmVjb3JkaW5nIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVtb3ZlQWxsTGlzdGVuZXJzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuY3VycmVudCkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Lm9mZihcImRpc21pc3NcIiwgdGhpcy5vbkNhbmNlbCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG9uQ2FuY2VsID0gKHZvaWNlQnJvYWRjYXN0UHJlUmVjb3JkaW5nOiBWb2ljZUJyb2FkY2FzdFByZVJlY29yZGluZyk6IHZvaWQgPT4ge1xuICAgICAgICBpZiAodGhpcy5jdXJyZW50ID09PSB2b2ljZUJyb2FkY2FzdFByZVJlY29yZGluZykge1xuICAgICAgICAgICAgdGhpcy5jbGVhckN1cnJlbnQoKTtcbiAgICAgICAgfVxuICAgIH07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBUUEsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBUkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBYU8sTUFBTUMsK0JBQStCLFNBQ2hDQyx5QkFBaUIsQ0FFN0I7RUFBQUMsWUFBQSxHQUFBQyxJQUFBO0lBQUEsU0FBQUEsSUFBQTtJQUFBLElBQUFDLGdCQUFBLENBQUFDLE9BQUEsbUJBQ3lELElBQUk7SUFBQSxJQUFBRCxnQkFBQSxDQUFBQyxPQUFBLG9CQWtDckNDLDBCQUFzRCxJQUFXO01BQ2pGLElBQUksSUFBSSxDQUFDQyxPQUFPLEtBQUtELDBCQUEwQixFQUFFO1FBQzdDLElBQUksQ0FBQ0UsWUFBWSxDQUFDLENBQUM7TUFDdkI7SUFDSixDQUFDO0VBQUE7RUFwQ01DLFVBQVVBLENBQUNGLE9BQW1DLEVBQVE7SUFDekQsSUFBSSxJQUFJLENBQUNBLE9BQU8sS0FBS0EsT0FBTyxFQUFFO0lBRTlCLElBQUksSUFBSSxDQUFDQSxPQUFPLEVBQUU7TUFDZCxJQUFJLENBQUNBLE9BQU8sQ0FBQ0csR0FBRyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUNDLFFBQVEsQ0FBQztJQUM5QztJQUVBLElBQUksQ0FBQ0osT0FBTyxHQUFHQSxPQUFPO0lBQ3RCQSxPQUFPLENBQUNLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDRCxRQUFRLENBQUM7SUFDcEMsSUFBSSxDQUFDRSxJQUFJLENBQUMsU0FBUyxFQUFFTixPQUFPLENBQUM7RUFDakM7RUFFT0MsWUFBWUEsQ0FBQSxFQUFTO0lBQ3hCLElBQUksSUFBSSxDQUFDRCxPQUFPLEtBQUssSUFBSSxFQUFFO0lBRTNCLElBQUksQ0FBQ0EsT0FBTyxDQUFDRyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQ0MsUUFBUSxDQUFDO0lBQzFDLElBQUksQ0FBQ0osT0FBTyxHQUFHLElBQUk7SUFDbkIsSUFBSSxDQUFDTSxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQztFQUM5QjtFQUVPQyxVQUFVQSxDQUFBLEVBQXNDO0lBQ25ELE9BQU8sSUFBSSxDQUFDUCxPQUFPO0VBQ3ZCO0VBRU9RLE9BQU9BLENBQUEsRUFBUztJQUNuQixJQUFJLENBQUNDLGtCQUFrQixDQUFDLENBQUM7SUFFekIsSUFBSSxJQUFJLENBQUNULE9BQU8sRUFBRTtNQUNkLElBQUksQ0FBQ0EsT0FBTyxDQUFDRyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQ0MsUUFBUSxDQUFDO0lBQzlDO0VBQ0o7QUFPSjtBQUFDTSxPQUFBLENBQUFqQiwrQkFBQSxHQUFBQSwrQkFBQSIsImlnbm9yZUxpc3QiOltdfQ==