forked from decred/decrediton
-
Notifications
You must be signed in to change notification settings - Fork 0
/
MiscSettings.jsx
77 lines (73 loc) · 2.22 KB
/
MiscSettings.jsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import { FormattedMessage as T } from "react-intl";
import { SettingsInput } from "inputs";
import styles from "./MiscSettings.module.css";
import { DiscoverUsageModal } from "modals";
import { KeyBlueButton } from "buttons";
import { useSettings } from "hooks";
import { Label, Box } from "../../helpers";
const MiscSettings = ({ tempSettings, currencies, onChangeTempSettings }) => {
const {
onDiscoverUsage,
gapLimit,
setGapLimit,
isValid,
clicked,
isDiscoverModalVisible,
showDiscoverModal,
hideDiscoverModal,
discoverUsageAttempt,
rescanRunning
} = useSettings();
return (
<Box className={styles.box}>
<div>
<Label id="displayed-units-input">
<T id="settings.displayedUnits" m="Displayed Units" />
</Label>
<SettingsInput
selectWithBigFont
className={styles.input}
value={tempSettings.currencyDisplay}
onChange={(newCurrency) =>
onChangeTempSettings({ currencyDisplay: newCurrency.name })
}
ariaLabelledBy="displayed-units-input"
valueKey="name"
labelKey="name"
options={currencies}
/>
</div>
<div className="justify-space-between">
<div>
<Label id="address-usage">
<T id="settings.addressUsage" m="Address Usage" />
</Label>
<KeyBlueButton
className={styles.discoverUsageButton}
onClick={showDiscoverModal}
loading={discoverUsageAttempt || rescanRunning}
disabled={discoverUsageAttempt || rescanRunning}>
<T id="settings.DiscoverAddressBtn" m="Discover Address Usage" />
</KeyBlueButton>
<DiscoverUsageModal
{...{
show: isDiscoverModalVisible,
onSubmit: onDiscoverUsage,
onCancelModal: hideDiscoverModal,
gapLimit,
setGapLimit,
isValid,
clicked
}}
/>
</div>
</div>
</Box>
);
};
MiscSettings.propTypes = {
tempSettings: PropTypes.object.isRequired,
currencies: PropTypes.array.isRequired,
onChangeTempSettings: PropTypes.func.isRequired
};
export default MiscSettings;