aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/components/page-container/page-container.component.js
diff options
context:
space:
mode:
authorJenny Pollack <jennypollack3@gmail.com>2018-06-08 05:10:56 +0800
committerJenny Pollack <jennypollack3@gmail.com>2018-06-08 05:10:56 +0800
commite7c2710a55a49b8a266fa61cfed1caecc2623de7 (patch)
treec8553c02b63b10626ef561ca0bfe26c560b295d6 /ui/app/components/page-container/page-container.component.js
parentfd8bcc9cb1b9f9c1cc5ef48eda4952182b23e499 (diff)
parentc0d2dab28b4083ee3ef65b6b561e28c811c6773d (diff)
downloadtangerine-wallet-browser-e7c2710a55a49b8a266fa61cfed1caecc2623de7.tar
tangerine-wallet-browser-e7c2710a55a49b8a266fa61cfed1caecc2623de7.tar.gz
tangerine-wallet-browser-e7c2710a55a49b8a266fa61cfed1caecc2623de7.tar.bz2
tangerine-wallet-browser-e7c2710a55a49b8a266fa61cfed1caecc2623de7.tar.lz
tangerine-wallet-browser-e7c2710a55a49b8a266fa61cfed1caecc2623de7.tar.xz
tangerine-wallet-browser-e7c2710a55a49b8a266fa61cfed1caecc2623de7.tar.zst
tangerine-wallet-browser-e7c2710a55a49b8a266fa61cfed1caecc2623de7.zip
Merge branch 'develop' into save-brave
Diffstat (limited to 'ui/app/components/page-container/page-container.component.js')
-rw-r--r--ui/app/components/page-container/page-container.component.js72
1 files changed, 72 insertions, 0 deletions
diff --git a/ui/app/components/page-container/page-container.component.js b/ui/app/components/page-container/page-container.component.js
new file mode 100644
index 000000000..9bfb99ade
--- /dev/null
+++ b/ui/app/components/page-container/page-container.component.js
@@ -0,0 +1,72 @@
+import React, { Component } from 'react'
+import PropTypes from 'prop-types'
+
+import PageContainerHeader from './page-container-header'
+import PageContainerFooter from './page-container-footer'
+
+export default class PageContainer extends Component {
+
+ static propTypes = {
+ // PageContainerHeader props
+ title: PropTypes.string.isRequired,
+ subtitle: PropTypes.string,
+ onClose: PropTypes.func,
+ showBackButton: PropTypes.bool,
+ onBackButtonClick: PropTypes.func,
+ backButtonStyles: PropTypes.object,
+ backButtonString: PropTypes.string,
+ // Content props
+ ContentComponent: PropTypes.func,
+ contentComponentProps: PropTypes.object,
+ // PageContainerFooter props
+ onCancel: PropTypes.func,
+ cancelText: PropTypes.string,
+ onSubmit: PropTypes.func,
+ submitText: PropTypes.string,
+ disabled: PropTypes.bool,
+ };
+
+ render () {
+ const {
+ title,
+ subtitle,
+ onClose,
+ showBackButton,
+ onBackButtonClick,
+ backButtonStyles,
+ backButtonString,
+ ContentComponent,
+ contentComponentProps,
+ onCancel,
+ cancelText,
+ onSubmit,
+ submitText,
+ disabled,
+ } = this.props
+
+ return (
+ <div className="page-container">
+ <PageContainerHeader
+ title={title}
+ subtitle={subtitle}
+ onClose={onClose}
+ showBackButton={showBackButton}
+ onBackButtonClick={onBackButtonClick}
+ backButtonStyles={backButtonStyles}
+ backButtonString={backButtonString}
+ />
+ <div className="page-container__content">
+ <ContentComponent { ...contentComponentProps } />
+ </div>
+ <PageContainerFooter
+ onCancel={onCancel}
+ cancelText={cancelText}
+ onSubmit={onSubmit}
+ submitText={submitText}
+ disabled={disabled}
+ />
+ </div>
+ )
+ }
+
+}