Squashed commit of the following: commit e47fae25f7bac950bfb452fc8f18b9c0865b08ba Merge: a23285ece2ddc82dAuthor: Simon Zolin <s.zolin@adguard.com> Date: Wed Apr 22 19:16:01 2020 +0300 Merge remote-tracking branch 'origin/master' into 715 commit a23285ec3ace78fe4ce19122a51ecf3e6cdd942c Author: ArtemBaskal <a.baskal@adguard.com> Date: Wed Apr 22 18:30:30 2020 +0300 Review changes commit f80d62a0d2038ff9d070ae9e9c77c33b92232d9c Author: ArtemBaskal <a.baskal@adguard.com> Date: Tue Apr 21 16:37:42 2020 +0300 + client: Add fastest addr option commit 9e713df80c5bf113c98794c0a20915c756a76938 Merge: e3bf40379b7c1181Author: Simon Zolin <s.zolin@adguard.com> Date: Tue Apr 21 16:02:03 2020 +0300 Merge remote-tracking branch 'origin/master' into 715-fastest-addr commit e3bf4037f49198e42bde55305d6f9077341b556a Author: Simon Zolin <s.zolin@adguard.com> Date: Tue Apr 21 15:40:49 2020 +0300 minor commit d6e6a823c5e51acc061b2850d362772efcb827e1 Author: Simon Zolin <s.zolin@adguard.com> Date: Fri Apr 17 17:56:24 2020 +0300 * API changes . removed POST /set_upstreams_config . removed fields from GET /status: bootstrap_dns, upstream_dns, all_servers . added new fields to /dns_config and /dns_info commit 237a452d09cc48ff8f00e81c7fd35e7828bea835 Author: Simon Zolin <s.zolin@adguard.com> Date: Fri Apr 17 16:43:13 2020 +0300 * API: /dns_info, /dns_config: add "parallel_requests" instead of "all_servers" from /set_upstreams_config commit 9976723b9725ed19e0cce152d1d1198b13c4acc1 Author: Simon Zolin <s.zolin@adguard.com> Date: Mon Mar 23 10:28:25 2020 +0300 openapi commit 6f8ea16c6332606f29095b0094d71e8a91798f82 Merge: 36e4d4e8c8285c41Author: Simon Zolin <s.zolin@adguard.com> Date: Fri Mar 20 19:18:48 2020 +0300 Merge remote-tracking branch 'origin/master' into 715-fastest-addr commit 36e4d4e82cadeaba5a11313f0d69d66a0924c342 Author: Simon Zolin <s.zolin@adguard.com> Date: Fri Mar 20 18:13:43 2020 +0300 + DNS: add fastest_addr setting
57 lines
1.9 KiB
JavaScript
57 lines
1.9 KiB
JavaScript
import { handleActions } from 'redux-actions';
|
|
|
|
import * as actions from '../actions/dnsConfig';
|
|
import { BLOCKING_MODES } from '../helpers/constants';
|
|
|
|
const DEFAULT_BLOCKING_IPV4 = '0.0.0.0';
|
|
const DEFAULT_BLOCKING_IPV6 = '::';
|
|
|
|
const dnsConfig = handleActions(
|
|
{
|
|
[actions.getDnsConfigRequest]: state => ({ ...state, processingGetConfig: true }),
|
|
[actions.getDnsConfigFailure]: state =>
|
|
({ ...state, processingGetConfig: false }),
|
|
[actions.getDnsConfigSuccess]: (state, { payload }) => {
|
|
const {
|
|
blocking_ipv4,
|
|
blocking_ipv6,
|
|
upstream_dns,
|
|
bootstrap_dns,
|
|
...values
|
|
} = payload;
|
|
|
|
return {
|
|
...state,
|
|
...values,
|
|
blocking_ipv4: blocking_ipv4 || DEFAULT_BLOCKING_IPV4,
|
|
blocking_ipv6: blocking_ipv6 || DEFAULT_BLOCKING_IPV6,
|
|
upstream_dns: (upstream_dns && upstream_dns.join('\n')) || '',
|
|
bootstrap_dns: (bootstrap_dns && bootstrap_dns.join('\n')) || '',
|
|
processingGetConfig: false,
|
|
};
|
|
},
|
|
|
|
[actions.setDnsConfigRequest]: state => ({ ...state, processingSetConfig: true }),
|
|
[actions.setDnsConfigFailure]: state =>
|
|
({ ...state, processingSetConfig: false }),
|
|
[actions.setDnsConfigSuccess]: (state, { payload }) => ({
|
|
...state,
|
|
...payload,
|
|
processingSetConfig: false,
|
|
}),
|
|
},
|
|
{
|
|
processingGetConfig: false,
|
|
processingSetConfig: false,
|
|
blocking_mode: BLOCKING_MODES.default,
|
|
ratelimit: 20,
|
|
blocking_ipv4: DEFAULT_BLOCKING_IPV4,
|
|
blocking_ipv6: DEFAULT_BLOCKING_IPV6,
|
|
edns_cs_enabled: false,
|
|
disable_ipv6: false,
|
|
dnssec_enabled: false,
|
|
},
|
|
);
|
|
|
|
export default dnsConfig;
|