@@ -2,7 +2,7 @@ import React from 'react'
2import Maybe from 'folktale/maybe'
2import Maybe from 'folktale/maybe'
3import * as azimuth from 'azimuth-js'
3import * as azimuth from 'azimuth-js'
4import * as ob from 'urbit-ob'
4import * as ob from 'urbit-ob'
5−import { Row, Col, H1, P, Warning } from '../components/Base'
5+import { Row, Col, H1, P, Warning, CheckboxButton } from '../components/Base'
7import StatelessTransaction from '../components/StatelessTransaction'
7import StatelessTransaction from '../components/StatelessTransaction'
8import { BRIDGE_ERROR } from '../lib/error'
8import { BRIDGE_ERROR } from '../lib/error'
@@ -33,15 +33,19 @@ class SetKeys extends React.Component {
33 nondeterministicSeed: false,
33 nondeterministicSeed: false,
34 point: point,
34 point: point,
35 cryptoSuiteVersion: 1,
35 cryptoSuiteVersion: 1,
36− continuity: false,
36+ discontinuity: false,
37 isManagementSeed: false,
37 isManagementSeed: false,
40− this.handleNetworkSeedInput = this.handleNetworkSeedInput.bind(this)
40+ this.toggleDiscontinuity = this.toggleDiscontinuity.bind(this);
41 // Transaction
41 // Transaction
42 this.createUnsignedTxn = this.createUnsignedTxn.bind(this)
42 this.createUnsignedTxn = this.createUnsignedTxn.bind(this)
45+ toggleDiscontinuity() {
46+ this.setState({ discontinuity: !this.state.discontinuity });
45 componentDidMount() {
49 componentDidMount() {
46 const { props } = this
50 const { props } = this
@@ -94,10 +98,6 @@ class SetKeys extends React.Component {
97− handleNetworkSeedInput(networkSeed) {
98− this.setState({ networkSeed })
101 createUnsignedTxn() {
101 createUnsignedTxn() {
102 const { state, props } = this
102 const { state, props } = this
@@ -130,7 +130,7 @@ class SetKeys extends React.Component {
133− false
133+ state.discontinuity
136 return Maybe.Just(txn)
136 return Maybe.Just(txn)
@@ -185,6 +185,15 @@ class SetKeys extends React.Component {
185 </Warning>
185 </Warning>
186 : <div /> }
186 : <div /> }
190+ onToggle={ this.toggleDiscontinuity }
191+ state={ state.discontinuity }
192+ label={`I have lost important off-chain data relating to this point
193+ and need to do a hard reset.
194+ (For example, rebooting an Arvo ship.)`}
188 <StatelessTransaction
197 <StatelessTransaction
189 // Upper scope
198 // Upper scope
190 web3={props.web3}
199 web3={props.web3}
@@ -201,6 +210,7 @@ class SetKeys extends React.Component {
201 canGenerate={ canGenerate }
210 canGenerate={ canGenerate }
202 createUnsignedTxn={this.createUnsignedTxn}
211 createUnsignedTxn={this.createUnsignedTxn}
203 networkSeed={ state.networkSeed }
212 networkSeed={ state.networkSeed }
213+ newRevision={ (parseInt(pointDetails.keyRevisionNumber) + 1) }
204 setNetworkSeedCache={ props.setNetworkSeedCache } />
214 setNetworkSeedCache={ props.setNetworkSeedCache } />