diff --git a/frontend/src/Settings/General/GeneralSettings.js b/frontend/src/Settings/General/GeneralSettings.js index 485d8a1be..dc969c136 100644 --- a/frontend/src/Settings/General/GeneralSettings.js +++ b/frontend/src/Settings/General/GeneralSettings.js @@ -99,6 +99,7 @@ class GeneralSettings extends Component { isMono, isWindows, mode, + packageUpdateMechanism, onInputChange, onConfirmResetApiKey, ...otherProps @@ -161,6 +162,7 @@ class GeneralSettings extends Component { advancedSettings={advancedSettings} settings={settings} isMono={isMono} + packageUpdateMechanism={packageUpdateMechanism} onInputChange={onInputChange} /> @@ -202,6 +204,7 @@ GeneralSettings.propTypes = { isMono: PropTypes.bool.isRequired, isWindows: PropTypes.bool.isRequired, mode: PropTypes.string.isRequired, + packageUpdateMechanism: PropTypes.string.isRequired, onInputChange: PropTypes.func.isRequired, onConfirmResetApiKey: PropTypes.func.isRequired, onConfirmRestart: PropTypes.func.isRequired diff --git a/frontend/src/Settings/General/GeneralSettingsConnector.js b/frontend/src/Settings/General/GeneralSettingsConnector.js index 804fdfde7..46bd08bc1 100644 --- a/frontend/src/Settings/General/GeneralSettingsConnector.js +++ b/frontend/src/Settings/General/GeneralSettingsConnector.js @@ -27,6 +27,7 @@ function createMapStateToProps() { isMono: systemStatus.isMono, isWindows: systemStatus.isWindows, mode: systemStatus.mode, + packageUpdateMechanism: systemStatus.packageUpdateMechanism, ...sectionSettings }; } diff --git a/frontend/src/Settings/General/UpdateSettings.js b/frontend/src/Settings/General/UpdateSettings.js index 8a4a549f8..8ccf679c9 100644 --- a/frontend/src/Settings/General/UpdateSettings.js +++ b/frontend/src/Settings/General/UpdateSettings.js @@ -1,5 +1,6 @@ import PropTypes from 'prop-types'; import React from 'react'; +import titleCase from 'Utilities/String/titleCase'; import { inputTypes, sizes } from 'Helpers/Props'; import FieldSet from 'Components/FieldSet'; import FormGroup from 'Components/Form/FormGroup'; @@ -11,6 +12,7 @@ function UpdateSettings(props) { advancedSettings, settings, isMono, + packageUpdateMechanism, onInputChange } = props; @@ -30,6 +32,13 @@ function UpdateSettings(props) { { key: 'script', value: 'Script' } ]; + if (packageUpdateMechanism !== 'builtIn') { + updateOptions.push({ + key: packageUpdateMechanism, + value: titleCase(packageUpdateMechanism) + }); + } + return (
); @@ -111,6 +120,7 @@ UpdateSettings.propTypes = { advancedSettings: PropTypes.bool.isRequired, settings: PropTypes.object.isRequired, isMono: PropTypes.bool.isRequired, + packageUpdateMechanism: PropTypes.string.isRequired, onInputChange: PropTypes.func.isRequired }; diff --git a/frontend/src/System/Updates/Updates.css b/frontend/src/System/Updates/Updates.css index 3502f6d1f..6abf82513 100644 --- a/frontend/src/System/Updates/Updates.css +++ b/frontend/src/System/Updates/Updates.css @@ -1,8 +1,4 @@ -.updateAvailable { - display: flex; -} - -.upToDate { +.messageContainer { display: flex; margin-bottom: 20px; } @@ -12,7 +8,7 @@ font-size: 30px; } -.upToDateMessage { +.message { padding-left: 5px; font-size: 18px; line-height: 30px; diff --git a/frontend/src/System/Updates/Updates.js b/frontend/src/System/Updates/Updates.js index 1ee7af090..758cd8599 100644 --- a/frontend/src/System/Updates/Updates.js +++ b/frontend/src/System/Updates/Updates.js @@ -1,6 +1,6 @@ import _ from 'lodash'; import PropTypes from 'prop-types'; -import React, { Component } from 'react'; +import React, { Component, Fragment } from 'react'; import { icons, kinds } from 'Helpers/Props'; import formatDate from 'Utilities/Date/formatDate'; import LoadingIndicator from 'Components/Loading/LoadingIndicator'; @@ -21,15 +21,18 @@ class Updates extends Component { const { isFetching, isPopulated, - error, + updatesError, + generalSettingsError, items, isInstallingUpdate, + updateMechanism, shortDateFormat, onInstallLatestPress } = this.props; - const hasUpdates = isPopulated && !error && items.length > 0; - const noUpdates = isPopulated && !error && !items.length; + const hasError = !!(updatesError || generalSettingsError); + const hasUpdates = isPopulated && !hasError && items.length > 0; + const noUpdates = isPopulated && !hasError && !items.length; const hasUpdateToInstall = hasUpdates && _.some(items, { installable: true, latest: true }); const noUpdateToInstall = hasUpdates && !hasUpdateToInstall; @@ -37,7 +40,7 @@ class Updates extends Component {