matrix-react-sdk
Version:
SDK for matrix.org using React
73 lines (70 loc) • 11.2 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireDefault(require("react"));
var _languageHandler = require("../../../languageHandler");
/*
Copyright 2024 New Vector Ltd.
Copyright 2019 The Matrix.org Foundation C.I.C.
Copyright 2018 New Vector Ltd.
Copyright 2017 Aidan Gauland
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
Please see LICENSE files in the repository root for full details.
*/
/**
* Basic container for buttons in modal dialogs.
*/
class DialogButtons extends _react.default.Component {
constructor(...args) {
super(...args);
(0, _defineProperty2.default)(this, "onCancelClick", event => {
this.props.onCancel?.(event);
});
}
render() {
let primaryButtonClassName = "mx_Dialog_primary";
if (this.props.primaryButtonClass) {
primaryButtonClassName += " " + this.props.primaryButtonClass;
}
let cancelButton;
if (this.props.hasCancel) {
cancelButton = /*#__PURE__*/_react.default.createElement("button", {
// important: the default type is 'submit' and this button comes before the
// primary in the DOM so will get form submissions unless we make it not a submit.
"data-testid": "dialog-cancel-button",
type: "button",
onClick: this.onCancelClick,
className: this.props.cancelButtonClass,
disabled: this.props.disabled
}, this.props.cancelButton || (0, _languageHandler._t)("action|cancel"));
}
let additive;
if (this.props.additive) {
additive = /*#__PURE__*/_react.default.createElement("div", {
className: "mx_Dialog_buttons_additive"
}, this.props.additive);
}
return /*#__PURE__*/_react.default.createElement("div", {
className: "mx_Dialog_buttons"
}, additive, /*#__PURE__*/_react.default.createElement("span", {
className: "mx_Dialog_buttons_row"
}, cancelButton, this.props.children, /*#__PURE__*/_react.default.createElement("button", {
type: this.props.primaryIsSubmit ? "submit" : "button",
"data-testid": "dialog-primary-button",
className: primaryButtonClassName,
onClick: this.props.onPrimaryButtonClick,
autoFocus: this.props.focus,
disabled: this.props.disabled || this.props.primaryDisabled
}, this.props.primaryButton)));
}
}
exports.default = DialogButtons;
(0, _defineProperty2.default)(DialogButtons, "defaultProps", {
hasCancel: true,
disabled: false
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9sYW5ndWFnZUhhbmRsZXIiLCJEaWFsb2dCdXR0b25zIiwiUmVhY3QiLCJDb21wb25lbnQiLCJjb25zdHJ1Y3RvciIsImFyZ3MiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsImV2ZW50IiwicHJvcHMiLCJvbkNhbmNlbCIsInJlbmRlciIsInByaW1hcnlCdXR0b25DbGFzc05hbWUiLCJwcmltYXJ5QnV0dG9uQ2xhc3MiLCJjYW5jZWxCdXR0b24iLCJoYXNDYW5jZWwiLCJjcmVhdGVFbGVtZW50IiwidHlwZSIsIm9uQ2xpY2siLCJvbkNhbmNlbENsaWNrIiwiY2xhc3NOYW1lIiwiY2FuY2VsQnV0dG9uQ2xhc3MiLCJkaXNhYmxlZCIsIl90IiwiYWRkaXRpdmUiLCJjaGlsZHJlbiIsInByaW1hcnlJc1N1Ym1pdCIsIm9uUHJpbWFyeUJ1dHRvbkNsaWNrIiwiYXV0b0ZvY3VzIiwiZm9jdXMiLCJwcmltYXJ5RGlzYWJsZWQiLCJwcmltYXJ5QnV0dG9uIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL2VsZW1lbnRzL0RpYWxvZ0J1dHRvbnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDE5IFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5Db3B5cmlnaHQgMjAxOCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDE3IEFpZGFuIEdhdWxhbmRcblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IFJlYWN0LCB7IFJlYWN0Tm9kZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyBfdCB9IGZyb20gXCIuLi8uLi8uLi9sYW5ndWFnZUhhbmRsZXJcIjtcblxuaW50ZXJmYWNlIElQcm9wcyB7XG4gICAgLy8gVGhlIHByaW1hcnkgYnV0dG9uIHdoaWNoIGlzIHN0eWxlZCBkaWZmZXJlbnRseSBhbmQgaGFzIGRlZmF1bHQgZm9jdXMuXG4gICAgcHJpbWFyeUJ1dHRvbjogUmVhY3QuUmVhY3ROb2RlO1xuXG4gICAgLy8gQSBub2RlIHRvIGluc2VydCBpbnRvIHRoZSBjYW5jZWwgYnV0dG9uIGluc3RlYWQgb2YgZGVmYXVsdCBcIkNhbmNlbFwiXG4gICAgY2FuY2VsQnV0dG9uPzogUmVhY3QuUmVhY3ROb2RlO1xuXG4gICAgLy8gSWYgdHJ1ZSwgbWFrZSB0aGUgcHJpbWFyeSBidXR0b24gYSBmb3JtIHN1Ym1pdCBidXR0b24gKGlucHV0IHR5cGU9XCJzdWJtaXRcIilcbiAgICBwcmltYXJ5SXNTdWJtaXQ/OiBib29sZWFuO1xuXG4gICAgLy8gb25DbGljayBoYW5kbGVyIGZvciB0aGUgcHJpbWFyeSBidXR0b24uIE5vdGUgdGhhdCB0aGUgcmV0dXJuZWQgcHJvbWlzZSwgaWZcbiAgICAvLyByZXR1cm5pbmcgYSBwcm9taXNlLCBpcyBub3QgdXNlZC5cbiAgICBvblByaW1hcnlCdXR0b25DbGljaz86IChldjogUmVhY3QuTW91c2VFdmVudCkgPT4gdm9pZCB8IFByb21pc2U8dm9pZD47XG5cbiAgICAvLyBzaG91bGQgdGhlcmUgYmUgYSBjYW5jZWwgYnV0dG9uPyBkZWZhdWx0OiB0cnVlXG4gICAgaGFzQ2FuY2VsPzogYm9vbGVhbjtcblxuICAgIC8vIFRoZSBjbGFzcyBvZiB0aGUgY2FuY2VsIGJ1dHRvbiwgb25seSB1c2VkIGlmIGEgY2FuY2VsIGJ1dHRvbiBpc1xuICAgIC8vIGVuYWJsZWRcbiAgICBjYW5jZWxCdXR0b25DbGFzcz86IHN0cmluZztcblxuICAgIC8vIG9uQ2xpY2sgaGFuZGxlciBmb3IgdGhlIGNhbmNlbCBidXR0b24uXG4gICAgb25DYW5jZWw/OiAoLi4uYXJnczogYW55W10pID0+IHZvaWQ7XG5cbiAgICBmb2N1cz86IGJvb2xlYW47XG5cbiAgICAvLyBkaXNhYmxlcyB0aGUgcHJpbWFyeSBhbmQgY2FuY2VsIGJ1dHRvbnNcbiAgICBkaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgICAvLyBkaXNhYmxlcyBvbmx5IHRoZSBwcmltYXJ5IGJ1dHRvblxuICAgIHByaW1hcnlEaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgICAvLyBzb21ldGhpbmcgdG8gc3RpY2sgbmV4dCB0byB0aGUgYnV0dG9ucywgb3B0aW9uYWxseVxuICAgIGFkZGl0aXZlPzogUmVhY3ROb2RlO1xuXG4gICAgcHJpbWFyeUJ1dHRvbkNsYXNzPzogc3RyaW5nO1xuICAgIGNoaWxkcmVuPzogUmVhY3ROb2RlO1xufVxuXG4vKipcbiAqIEJhc2ljIGNvbnRhaW5lciBmb3IgYnV0dG9ucyBpbiBtb2RhbCBkaWFsb2dzLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEaWFsb2dCdXR0b25zIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PElQcm9wcz4ge1xuICAgIHB1YmxpYyBzdGF0aWMgZGVmYXVsdFByb3BzOiBQYXJ0aWFsPElQcm9wcz4gPSB7XG4gICAgICAgIGhhc0NhbmNlbDogdHJ1ZSxcbiAgICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgIH07XG5cbiAgICBwcml2YXRlIG9uQ2FuY2VsQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5wcm9wcy5vbkNhbmNlbD8uKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgcHVibGljIHJlbmRlcigpOiBSZWFjdC5SZWFjdE5vZGUge1xuICAgICAgICBsZXQgcHJpbWFyeUJ1dHRvbkNsYXNzTmFtZSA9IFwibXhfRGlhbG9nX3ByaW1hcnlcIjtcbiAgICAgICAgaWYgKHRoaXMucHJvcHMucHJpbWFyeUJ1dHRvbkNsYXNzKSB7XG4gICAgICAgICAgICBwcmltYXJ5QnV0dG9uQ2xhc3NOYW1lICs9IFwiIFwiICsgdGhpcy5wcm9wcy5wcmltYXJ5QnV0dG9uQ2xhc3M7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgY2FuY2VsQnV0dG9uOiBKU1guRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKHRoaXMucHJvcHMuaGFzQ2FuY2VsKSB7XG4gICAgICAgICAgICBjYW5jZWxCdXR0b24gPSAoXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAvLyBpbXBvcnRhbnQ6IHRoZSBkZWZhdWx0IHR5cGUgaXMgJ3N1Ym1pdCcgYW5kIHRoaXMgYnV0dG9uIGNvbWVzIGJlZm9yZSB0aGVcbiAgICAgICAgICAgICAgICAgICAgLy8gcHJpbWFyeSBpbiB0aGUgRE9NIHNvIHdpbGwgZ2V0IGZvcm0gc3VibWlzc2lvbnMgdW5sZXNzIHdlIG1ha2UgaXQgbm90IGEgc3VibWl0LlxuICAgICAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cImRpYWxvZy1jYW5jZWwtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMub25DYW5jZWxDbGlja31cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXt0aGlzLnByb3BzLmNhbmNlbEJ1dHRvbkNsYXNzfVxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17dGhpcy5wcm9wcy5kaXNhYmxlZH1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHt0aGlzLnByb3BzLmNhbmNlbEJ1dHRvbiB8fCBfdChcImFjdGlvbnxjYW5jZWxcIil9XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGFkZGl0aXZlOiBKU1guRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKHRoaXMucHJvcHMuYWRkaXRpdmUpIHtcbiAgICAgICAgICAgIGFkZGl0aXZlID0gPGRpdiBjbGFzc05hbWU9XCJteF9EaWFsb2dfYnV0dG9uc19hZGRpdGl2ZVwiPnt0aGlzLnByb3BzLmFkZGl0aXZlfTwvZGl2PjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm14X0RpYWxvZ19idXR0b25zXCI+XG4gICAgICAgICAgICAgICAge2FkZGl0aXZlfVxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm14X0RpYWxvZ19idXR0b25zX3Jvd1wiPlxuICAgICAgICAgICAgICAgICAgICB7Y2FuY2VsQnV0dG9ufVxuICAgICAgICAgICAgICAgICAgICB7dGhpcy5wcm9wcy5jaGlsZHJlbn1cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT17dGhpcy5wcm9wcy5wcmltYXJ5SXNTdWJtaXQgPyBcInN1Ym1pdFwiIDogXCJidXR0b25cIn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwiZGlhbG9nLXByaW1hcnktYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17cHJpbWFyeUJ1dHRvbkNsYXNzTmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMucHJvcHMub25QcmltYXJ5QnV0dG9uQ2xpY2t9XG4gICAgICAgICAgICAgICAgICAgICAgICBhdXRvRm9jdXM9e3RoaXMucHJvcHMuZm9jdXN9XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17dGhpcy5wcm9wcy5kaXNhYmxlZCB8fCB0aGlzLnByb3BzLnByaW1hcnlEaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge3RoaXMucHJvcHMucHJpbWFyeUJ1dHRvbn1cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQVVBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLGdCQUFBLEdBQUFELE9BQUE7QUFaQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBNkNBO0FBQ0E7QUFDQTtBQUNlLE1BQU1FLGFBQWEsU0FBU0MsY0FBSyxDQUFDQyxTQUFTLENBQVM7RUFBQUMsWUFBQSxHQUFBQyxJQUFBO0lBQUEsU0FBQUEsSUFBQTtJQUFBLElBQUFDLGdCQUFBLENBQUFDLE9BQUEseUJBTXRDQyxLQUF1QixJQUFXO01BQ3ZELElBQUksQ0FBQ0MsS0FBSyxDQUFDQyxRQUFRLEdBQUdGLEtBQUssQ0FBQztJQUNoQyxDQUFDO0VBQUE7RUFFTUcsTUFBTUEsQ0FBQSxFQUFvQjtJQUM3QixJQUFJQyxzQkFBc0IsR0FBRyxtQkFBbUI7SUFDaEQsSUFBSSxJQUFJLENBQUNILEtBQUssQ0FBQ0ksa0JBQWtCLEVBQUU7TUFDL0JELHNCQUFzQixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUNILEtBQUssQ0FBQ0ksa0JBQWtCO0lBQ2pFO0lBRUEsSUFBSUMsWUFBcUM7SUFDekMsSUFBSSxJQUFJLENBQUNMLEtBQUssQ0FBQ00sU0FBUyxFQUFFO01BQ3RCRCxZQUFZLGdCQUNSakIsTUFBQSxDQUFBVSxPQUFBLENBQUFTLGFBQUE7UUFDSTtRQUNBO1FBQ0EsZUFBWSxzQkFBc0I7UUFDbENDLElBQUksRUFBQyxRQUFRO1FBQ2JDLE9BQU8sRUFBRSxJQUFJLENBQUNDLGFBQWM7UUFDNUJDLFNBQVMsRUFBRSxJQUFJLENBQUNYLEtBQUssQ0FBQ1ksaUJBQWtCO1FBQ3hDQyxRQUFRLEVBQUUsSUFBSSxDQUFDYixLQUFLLENBQUNhO01BQVMsR0FFN0IsSUFBSSxDQUFDYixLQUFLLENBQUNLLFlBQVksSUFBSSxJQUFBUyxtQkFBRSxFQUFDLGVBQWUsQ0FDMUMsQ0FDWDtJQUNMO0lBRUEsSUFBSUMsUUFBaUM7SUFDckMsSUFBSSxJQUFJLENBQUNmLEtBQUssQ0FBQ2UsUUFBUSxFQUFFO01BQ3JCQSxRQUFRLGdCQUFHM0IsTUFBQSxDQUFBVSxPQUFBLENBQUFTLGFBQUE7UUFBS0ksU0FBUyxFQUFDO01BQTRCLEdBQUUsSUFBSSxDQUFDWCxLQUFLLENBQUNlLFFBQWMsQ0FBQztJQUN0RjtJQUVBLG9CQUNJM0IsTUFBQSxDQUFBVSxPQUFBLENBQUFTLGFBQUE7TUFBS0ksU0FBUyxFQUFDO0lBQW1CLEdBQzdCSSxRQUFRLGVBQ1QzQixNQUFBLENBQUFVLE9BQUEsQ0FBQVMsYUFBQTtNQUFNSSxTQUFTLEVBQUM7SUFBdUIsR0FDbENOLFlBQVksRUFDWixJQUFJLENBQUNMLEtBQUssQ0FBQ2dCLFFBQVEsZUFDcEI1QixNQUFBLENBQUFVLE9BQUEsQ0FBQVMsYUFBQTtNQUNJQyxJQUFJLEVBQUUsSUFBSSxDQUFDUixLQUFLLENBQUNpQixlQUFlLEdBQUcsUUFBUSxHQUFHLFFBQVM7TUFDdkQsZUFBWSx1QkFBdUI7TUFDbkNOLFNBQVMsRUFBRVIsc0JBQXVCO01BQ2xDTSxPQUFPLEVBQUUsSUFBSSxDQUFDVCxLQUFLLENBQUNrQixvQkFBcUI7TUFDekNDLFNBQVMsRUFBRSxJQUFJLENBQUNuQixLQUFLLENBQUNvQixLQUFNO01BQzVCUCxRQUFRLEVBQUUsSUFBSSxDQUFDYixLQUFLLENBQUNhLFFBQVEsSUFBSSxJQUFJLENBQUNiLEtBQUssQ0FBQ3FCO0lBQWdCLEdBRTNELElBQUksQ0FBQ3JCLEtBQUssQ0FBQ3NCLGFBQ1IsQ0FDTixDQUNMLENBQUM7RUFFZDtBQUNKO0FBQUNDLE9BQUEsQ0FBQXpCLE9BQUEsR0FBQU4sYUFBQTtBQUFBLElBQUFLLGdCQUFBLENBQUFDLE9BQUEsRUExRG9CTixhQUFhLGtCQUNnQjtFQUMxQ2MsU0FBUyxFQUFFLElBQUk7RUFDZk8sUUFBUSxFQUFFO0FBQ2QsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==