aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/components/modals
diff options
context:
space:
mode:
Diffstat (limited to 'ui/app/components/modals')
-rw-r--r--ui/app/components/modals/force-injection/force-injection.component.js39
-rw-r--r--ui/app/components/modals/force-injection/force-injection.container.js16
-rw-r--r--ui/app/components/modals/force-injection/index.js1
-rw-r--r--ui/app/components/modals/modal.js14
4 files changed, 70 insertions, 0 deletions
diff --git a/ui/app/components/modals/force-injection/force-injection.component.js b/ui/app/components/modals/force-injection/force-injection.component.js
new file mode 100644
index 000000000..1ea08b5ee
--- /dev/null
+++ b/ui/app/components/modals/force-injection/force-injection.component.js
@@ -0,0 +1,39 @@
+import React, { PureComponent } from 'react'
+import PropTypes from 'prop-types'
+import Modal, { ModalContent } from '../../modal'
+
+export default class ForceInjection extends PureComponent {
+ static propTypes = {
+ hideModal: PropTypes.func.isRequired,
+ forceInjection: PropTypes.func.isRequired,
+ }
+
+ static contextTypes = {
+ t: PropTypes.func,
+ }
+
+ handleForce = () => {
+ const { forceInjection, hideModal } = this.props
+ forceInjection()
+ hideModal()
+ }
+
+ render () {
+ const { t } = this.context
+
+ return (
+ <Modal
+ onSubmit={this.handleForce}
+ onCancel={() => this.props.hideModal()}
+ submitText={t('ok')}
+ cancelText={t('nevermind')}
+ submitType="secondary"
+ >
+ <ModalContent
+ title={t('exposeAccounts')}
+ description={t('confirmExpose')}
+ />
+ </Modal>
+ )
+ }
+}
diff --git a/ui/app/components/modals/force-injection/force-injection.container.js b/ui/app/components/modals/force-injection/force-injection.container.js
new file mode 100644
index 000000000..fa0a325c3
--- /dev/null
+++ b/ui/app/components/modals/force-injection/force-injection.container.js
@@ -0,0 +1,16 @@
+import { connect } from 'react-redux'
+import { compose } from 'recompose'
+import withModalProps from '../../../higher-order-components/with-modal-props'
+import ForceInjectionComponent from './force-injection.component'
+import { forceInjection } from '../../../actions'
+
+const mapDispatchToProps = dispatch => {
+ return {
+ forceInjection: () => dispatch(forceInjection()),
+ }
+}
+
+export default compose(
+ withModalProps,
+ connect(null, mapDispatchToProps)
+)(ForceInjectionComponent)
diff --git a/ui/app/components/modals/force-injection/index.js b/ui/app/components/modals/force-injection/index.js
new file mode 100644
index 000000000..4ea4dc695
--- /dev/null
+++ b/ui/app/components/modals/force-injection/index.js
@@ -0,0 +1 @@
+export { default } from './force-injection.container'
diff --git a/ui/app/components/modals/modal.js b/ui/app/components/modals/modal.js
index 5aff4f5e1..bdf8e4b9e 100644
--- a/ui/app/components/modals/modal.js
+++ b/ui/app/components/modals/modal.js
@@ -29,6 +29,7 @@ import CancelTransaction from './cancel-transaction'
import WelcomeBeta from './welcome-beta'
import RejectTransactions from './reject-transactions'
import ClearApprovedOrigins from './clear-approved-origins'
+import ForceInjection from './force-injection'
const modalContainerBaseStyle = {
transform: 'translate3d(-50%, 0, 0px)',
@@ -226,6 +227,19 @@ const MODALS = {
},
},
+ FORCE_INJECTION: {
+ contents: h(ForceInjection),
+ mobileModalStyle: {
+ ...modalContainerMobileStyle,
+ },
+ laptopModalStyle: {
+ ...modalContainerLaptopStyle,
+ },
+ contentStyle: {
+ borderRadius: '8px',
+ },
+ },
+
OLD_UI_NOTIFICATION_MODAL: {
contents: [
h(NotifcationModal, {