Merge in DNS/adguard-home from feature/hmr to master
Squashed commit of the following:
commit 952ed1955c2a7a32446d99489f137f02eb47c99e
Merge: 83484931 de92c852
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Thu Aug 13 11:02:10 2020 +0300
Merge branch 'master' into feature/hmr
commit 8348493105d7d63d8b0836a5c272df2b17a6b142
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Wed Aug 5 15:07:31 2020 +0300
Remove empty prop types, remove Services empty container
commit b2fe4a30b79d91e482318ee5deea8e49c7038f7e
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Wed Aug 5 13:56:35 2020 +0300
Move constants
commit f8be4c18c35193ad77bf5e25f311ad834c1d6870
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Wed Aug 5 13:19:02 2020 +0300
Fix Setup bug, update webpack.dev
commit 1d9cc4ddf8af2c979eb707a7f0fc06744eec186c
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Wed Aug 5 12:10:38 2020 +0300
Review changes
commit a1edb21358def21ed1808b081ffc2f0b6755e3da
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Wed Aug 5 11:46:58 2020 +0300
Remove lazy loading, fix updated components
commit 0aa2cf55f8d4206ac9e2f99fc1b990ed8a9c7825
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Tue Aug 4 20:32:19 2020 +0300
Refactor App component, add lazy loading
commit 3c2ba4772a91ff7b06641dba6c6bf3fdcd2fdf7f
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Tue Aug 4 17:12:41 2020 +0300
Simplify App hot loading boilerplate, setup lazy loading, update Header
commit 8df3221f315372b066f2ac0c9a1687f1677b8415
Author: ArtemBaskal <a.baskal@adguard.com>
Date: Tue Aug 4 15:16:06 2020 +0300
+ client: Add Hot Module Replacement
47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
import React from 'react';
|
|
import { Trans } from 'react-i18next';
|
|
import { shallowEqual, useDispatch, useSelector } from 'react-redux';
|
|
import Topline from './Topline';
|
|
import { getUpdate } from '../../actions';
|
|
|
|
const UpdateTopline = () => {
|
|
const {
|
|
announcementUrl,
|
|
newVersion,
|
|
canAutoUpdate,
|
|
processingUpdate,
|
|
} = useSelector((state) => state.dashboard, shallowEqual);
|
|
const dispatch = useDispatch();
|
|
|
|
const handleUpdate = () => {
|
|
dispatch(getUpdate());
|
|
};
|
|
|
|
return <Topline type="info">
|
|
<>
|
|
<Trans
|
|
values={{ version: newVersion }}
|
|
components={[
|
|
<a href={announcementUrl} target="_blank" rel="noopener noreferrer" key="0">
|
|
Click here
|
|
</a>,
|
|
]}
|
|
>
|
|
update_announcement
|
|
</Trans>
|
|
{canAutoUpdate
|
|
&& <button
|
|
type="button"
|
|
className="btn btn-sm btn-primary ml-3"
|
|
onClick={handleUpdate}
|
|
disabled={processingUpdate}
|
|
>
|
|
<Trans>update_now</Trans>
|
|
</button>
|
|
}
|
|
</>
|
|
</Topline>;
|
|
};
|
|
|
|
export default UpdateTopline;
|