Files
mattermost/webapp/components/admin_console/save_button.jsx
Harrison Healey fb6f2a123c PLT-5860 Updated copyright date (#6058)
* PLT-5860 Updated copyright date in about modal

* PLT-5860 Updated copyright notice in JSX files

* PLT-5860 Updated copyright notice in go files

* Fixed misc copyright dates

* Fixed component snapshots
2017-04-12 08:27:57 -04:00

62 lines
1.5 KiB
JavaScript

// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
import React from 'react';
import {FormattedMessage} from 'react-intl';
export default class SaveButton extends React.Component {
static get propTypes() {
return {
saving: React.PropTypes.bool.isRequired,
disabled: React.PropTypes.bool
};
}
static get defaultProps() {
return {
disabled: false
};
}
render() {
const {saving, disabled, ...props} = this.props; // eslint-disable-line no-use-before-define
let contents;
if (saving) {
contents = (
<span>
<span className='icon fa fa-refresh icon--rotate'/>
<FormattedMessage
id='admin.saving'
defaultMessage='Saving Config...'
/>
</span>
);
} else {
contents = (
<FormattedMessage
id='admin.save'
defaultMessage='Save'
/>
);
}
let className = 'save-button btn';
if (!disabled) {
className += ' btn-primary';
}
return (
<button
type='submit'
className={className}
disabled={disabled}
{...props}
>
{contents}
</button>
);
}
}