From 6a7ea00cd34f83b257f6b4280a5f4e20aa5d34ee Mon Sep 17 00:00:00 2001 From: kumavis Date: Thu, 6 Apr 2017 14:30:14 -0700 Subject: [PATCH 0001/1128] mascara deploy - improve deploy instructions --- Dockerfile | 5 ++++- mascara/README.md | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index d06f5377b..d79584c15 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,7 +7,10 @@ WORKDIR /www/ # install dependencies COPY ./package.json /www/package.json -RUN npm install +# RUN npm install -g node-gyp +RUN npm install >> npm_log 2>> npm_err || true + +RUN cat npm_log && cat npm_err # copy over app dir COPY ./ /www/ diff --git a/mascara/README.md b/mascara/README.md index cdeb4795c..d79f04ae2 100644 --- a/mascara/README.md +++ b/mascara/README.md @@ -18,3 +18,9 @@ node server.js Standing problems: - [ ] IndexDb + +### deploy + +``` +docker-compose build && docker-compose stop && docker-compose up -d && docker-compose logs -f --tail 10 +``` \ No newline at end of file From 8e1713e1e00be89988824c0666837187f96d073c Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 12:07:46 -0700 Subject: [PATCH 0002/1128] [WIP] Propose more scaleable color management --- ui/app/css/colors.css | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 ui/app/css/colors.css diff --git a/ui/app/css/colors.css b/ui/app/css/colors.css new file mode 100644 index 000000000..ec2287192 --- /dev/null +++ b/ui/app/css/colors.css @@ -0,0 +1,2 @@ +$gallery: #EFEFEF; +$alabaster: #F7F7F7; From 4d7295b05fd3b4189bb2e4c604e53b349d5618a0 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 12:20:19 -0700 Subject: [PATCH 0003/1128] Add for use in main header --- ui/app/css/colors.css | 1 + ui/app/css/index.css | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/ui/app/css/colors.css b/ui/app/css/colors.css index ec2287192..7ac93595f 100644 --- a/ui/app/css/colors.css +++ b/ui/app/css/colors.css @@ -1,2 +1,3 @@ $gallery: #EFEFEF; $alabaster: #F7F7F7; +$shark: #22232C; \ No newline at end of file diff --git a/ui/app/css/index.css b/ui/app/css/index.css index 05bdb33af..3cedb1d8e 100644 --- a/ui/app/css/index.css +++ b/ui/app/css/index.css @@ -151,12 +151,13 @@ button.btn-thin { .app-header { padding: 6px 8px; + // background: #EFEFEF; // $gallery } .app-header h1 { font-family: 'Montserrat Regular'; text-transform: uppercase; - color: #AEAEAE; + color: #22232C; // $shark } h2.page-subtitle { From 8c5be547228c9801ab616beb5054b888509463f9 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 12:21:10 -0700 Subject: [PATCH 0004/1128] Rearrange header components: closer to redesigned UI --- ui/app/app.js | 57 ++++++++++++++++++++------------------------------- 1 file changed, 22 insertions(+), 35 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 8fad0f7d6..6537e2f56 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -82,7 +82,7 @@ App.prototype.render = function () { // app bar this.renderAppBar(), this.renderNetworkDropdown(), - this.renderDropdown(), + // this.renderDropdown(), h(Loading, { isLoading: isLoading || isLoadingNetwork, @@ -120,7 +120,7 @@ App.prototype.renderAppBar = function () { style: { alignItems: 'center', visibility: props.isUnlocked ? 'visible' : 'none', - background: props.isUnlocked ? 'white' : 'none', + background: '#EFEFEF', // $gallery height: '38px', position: 'relative', zIndex: 12, @@ -134,7 +134,6 @@ App.prototype.renderAppBar = function () { alignItems: 'center', }, }, [ - // mini logo h('img', { height: 24, @@ -142,6 +141,24 @@ App.prototype.renderAppBar = function () { src: '/images/icon-128.png', }), + // metamask name + h('h1', { + style: { + position: 'relative', + left: '9px', + }, + }, 'MetaMask'), + + ]), + + h('div', { + style: { + display: 'flex', + flexDirection: 'row', + alignItems: 'center', + }, + }, [ + // Network Indicator h(NetworkIndicator, { network: this.props.network, provider: this.props.provider, @@ -151,37 +168,7 @@ App.prototype.renderAppBar = function () { this.setState({ isNetworkMenuOpen: !isNetworkMenuOpen }) }, }), - ]), - // metamask name - props.isUnlocked && h('h1', { - style: { - position: 'relative', - left: '9px', - }, - }, 'MetaMask'), - - props.isUnlocked && h('div', { - style: { - display: 'flex', - flexDirection: 'row', - alignItems: 'center', - }, - }, [ - - // hamburger - props.isUnlocked && h(SandwichExpando, { - width: 16, - barHeight: 2, - padding: 0, - isOpen: state.isMainMenuOpen, - color: 'rgb(247,146,30)', - onClick: (event) => { - event.preventDefault() - event.stopPropagation() - this.setState({ isMainMenuOpen: !state.isMainMenuOpen }) - }, - }), ]), ]), ]) @@ -213,8 +200,8 @@ App.prototype.renderNetworkDropdown = function () { zIndex: 11, style: { position: 'absolute', - left: '2px', - top: '36px', + right: '2px', + top: '38px', }, innerStyle: { padding: '2px 16px 2px 0px', From c0483fc230ec1893f15c6f8994f63e318474846e Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 13:31:53 -0700 Subject: [PATCH 0005/1128] Add token logo to send screen --- ui/app/app.js | 10 ++++++++++ ui/app/send.js | 24 ++++++++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 6537e2f56..2eb037460 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -171,6 +171,16 @@ App.prototype.renderAppBar = function () { ]), ]), + + h('.app-header', { + style: { + visibility: props.isUnlocked ? 'visible' : 'none', + background: '#EFEFEF', // $gallery + height: '38px', + position: 'relative', + zIndex: 12, + }, + }) ]) ) } diff --git a/ui/app/send.js b/ui/app/send.js index a21a219eb..1235da223 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -11,6 +11,9 @@ const isHex = require('./util').isHex const EthBalance = require('./components/eth-balance') const EnsInput = require('./components/ens-input') const ethUtil = require('ethereumjs-util') + +const ARAGON = '960b236A07cf122663c4303350609A66A7B288C0' + module.exports = connect(mapStateToProps)(SendTransactionScreen) function mapStateToProps (state) { @@ -58,16 +61,33 @@ SendTransactionScreen.prototype.render = function () { h('.send-screen.flex-column.flex-grow', [ + h('div', { + style: { + position: 'fixed', + zIndex: 15, // token-icon-z-index + marginTop: '-55px', + marginLeft: '20%', + } + }, [ + h(Identicon, { + address: ARAGON, + diameter: 76, + }), + ]), + // // Sender Profile // - h('.account-data-subsection.flex-row.flex-grow', { style: { margin: '0 20px', + width: '335px', + background: 'white', // $white + marginTop: '-15px', + zIndex: 13, // $send-screen-z-index + display: 'flex', }, }, [ - // header - identicon + nav h('.flex-row.flex-space-between', { style: { From 2a5f2c7f4041006daf5bda4d51117b4fe9544e98 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 17:38:29 -0700 Subject: [PATCH 0006/1128] Add responsive container; add send token copy --- ui/app/components/ens-input.js | 7 ++ ui/app/send.js | 149 +++++++++++---------------------- 2 files changed, 58 insertions(+), 98 deletions(-) diff --git a/ui/app/components/ens-input.js b/ui/app/components/ens-input.js index 3a33ebf74..93c07599d 100644 --- a/ui/app/components/ens-input.js +++ b/ui/app/components/ens-input.js @@ -44,6 +44,13 @@ EnsInput.prototype.render = function () { return h('div', { style: { width: '100%' }, }, [ + h('span', { + style: { + textAlign: 'left', + } + }, [ + 'To:' + ]), h('input.large-input', opts), // The address book functionality. h('datalist#addresses', diff --git a/ui/app/send.js b/ui/app/send.js index 1235da223..66ba21e3e 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -59,14 +59,17 @@ SendTransactionScreen.prototype.render = function () { return ( - h('.send-screen.flex-column.flex-grow', [ - - h('div', { + h('.send-screen.flex-column.flex-grow', { + style: { + background: '#FFFFFF', // $background-white + marginLeft: '3.5%', + marginRight: '3.5%', + } + }, [ + h('section.flex-center.flex-row', { style: { - position: 'fixed', - zIndex: 15, // token-icon-z-index - marginTop: '-55px', - marginLeft: '20%', + zIndex: 15, // $token-icon-z-index + marginTop: '-35px', } }, [ h(Identicon, { @@ -75,103 +78,53 @@ SendTransactionScreen.prototype.render = function () { }), ]), - // - // Sender Profile - // - h('.account-data-subsection.flex-row.flex-grow', { - style: { - margin: '0 20px', - width: '335px', - background: 'white', // $white - marginTop: '-15px', - zIndex: 13, // $send-screen-z-index - display: 'flex', - }, - }, [ - // header - identicon + nav - h('.flex-row.flex-space-between', { - style: { - marginTop: '15px', - }, - }, [ - // back button - h('i.fa.fa-arrow-left.fa-lg.cursor-pointer.color-orange', { - onClick: this.back.bind(this), - }), - - // large identicon - h('.identicon-wrapper.flex-column.flex-center.select-none', [ - h(Identicon, { - diameter: 62, - address: address, - }), - ]), - - // invisible place holder - h('i.fa.fa-users.fa-lg.invisible', { - style: { - marginTop: '28px', - }, - }), - - ]), - - // account label - - h('.flex-column', { - style: { - marginTop: '10px', - alignItems: 'flex-start', - }, - }, [ - h('h2.font-medium.color-forest.flex-center', { - style: { - paddingTop: '8px', - marginBottom: '8px', - }, - }, identity && identity.name), - - // address and getter actions - h('.flex-row.flex-center', { - style: { - marginBottom: '8px', - }, - }, [ - - h('div', { - style: { - lineHeight: '16px', - }, - }, addressSummary(address)), - - ]), - - // balance - h('.flex-row.flex-center', [ - - h(EthBalance, { - value: account && account.balance, - conversionRate, - currentCurrency, - }), - - ]), - ]), - ]), - // // Required Fields // - h('h3.flex-center.text-transform-uppercase', { + h('h3.flex-center', { style: { - background: '#EBEBEB', - color: '#AEAEAE', - marginTop: '15px', - marginBottom: '16px', + marginTop: '-15px', + fontSize: '20px', }, }, [ - 'Send Transaction', + 'Send Tokens', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '16px', + }, + }, [ + 'Send Tokens to anyone with an Ethereum account', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '16px', + }, + }, [ + 'Your Aragon Token Balance is:', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '43px', + }, + }, [ + '2.34', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '16px', + }, + }, [ + 'ANT', ]), // error message @@ -194,7 +147,7 @@ SendTransactionScreen.prototype.render = function () { h('input.large-input', { name: 'amount', - placeholder: 'Amount', + placeholder: '0', type: 'number', style: { marginRight: '6px', From fec3e64d630d17d035df43203bbfbf061930cd61 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 18:07:58 -0700 Subject: [PATCH 0007/1128] Add high-level css layout for Send Token --- ui/app/send.js | 101 ++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 78 insertions(+), 23 deletions(-) diff --git a/ui/app/send.js b/ui/app/send.js index 66ba21e3e..bd4cf4ee1 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -143,7 +143,17 @@ SendTransactionScreen.prototype.render = function () { ]), // 'amount' and send button - h('section.flex-row.flex-center', [ + h('section.flex-column.flex-center', [ + + h('div.flex-row.flex-center', { + style: { + width: '100%', + justifyContent: 'space-between', + } + },[ + h('span', { style: {} }, ['Amount']), + h('span', { style: {} }, ['Token <> USD']), + ]), h('input.large-input', { name: 'amount', @@ -157,43 +167,88 @@ SendTransactionScreen.prototype.render = function () { }, }), - h('button.primary', { - onClick: this.onSubmit.bind(this), + ]), + + h('section.flex-column.flex-center', [ + + h('div.flex-row.flex-center', { style: { - textTransform: 'uppercase', + width: '100%', + justifyContent: 'space-between', + } + },[ + h('span', { style: {} }, ['Gas Fee:']), + h('span', { style: {} }, ['What\'s this?']), + ]), + + h('input.large-input', { + name: 'Gas Fee', + placeholder: '0', + type: 'number', + style: { + marginRight: '6px', }, - }, 'Next'), + // dataset: { + // persistentFormId: 'tx-amount', + // }, + }), ]), // // Optional Fields // - h('h3.flex-center.text-transform-uppercase', { - style: { - background: '#EBEBEB', - color: '#AEAEAE', - marginTop: '16px', - marginBottom: '16px', - }, - }, [ - 'Transaction Data (optional)', - ]), - // 'data' field h('section.flex-column.flex-center', [ - h('input.large-input', { - name: 'txData', - placeholder: '0x01234', + + h('div.flex-row.flex-center', { style: { width: '100%', - resize: 'none', - }, - dataset: { - persistentFormId: 'tx-data', + justifyContent: 'flex-start', + } + },[ + h('span', { style: {} }, ['Transaction Memo (optional)']), + h('span', { style: {} }, ['What\'s this?']), + ]), + + h('input.large-input', { + name: 'memo', + placeholder: '', + type: 'string', + style: { + marginRight: '6px', }, }), + ]), + + + + // h('h3.flex-center.text-transform-uppercase', { + // style: { + // background: '#EBEBEB', + // color: '#AEAEAE', + // marginTop: '16px', + // marginBottom: '16px', + // }, + // }, [ + // 'Transaction Data (optional)', + // ]), + + // // 'data' field + // h('section.flex-column.flex-center', [ + // h('input.large-input', { + // name: 'txData', + // placeholder: '0x01234', + // style: { + // width: '100%', + // resize: 'none', + // }, + // dataset: { + // persistentFormId: 'tx-data', + // }, + // }), + // ]), ]) ) } From 970988167982a79c131331a7585512b5e53c9a95 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 18:54:21 -0700 Subject: [PATCH 0008/1128] Center send token content; hook up 'Next' and 'Cancel' buttons --- ui/app/app.js | 20 +-- ui/app/css/index.css | 6 +- ui/app/send.js | 364 +++++++++++++++++++++++-------------------- 3 files changed, 210 insertions(+), 180 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 2eb037460..0f26f8add 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -172,15 +172,17 @@ App.prototype.renderAppBar = function () { ]), ]), - h('.app-header', { - style: { - visibility: props.isUnlocked ? 'visible' : 'none', - background: '#EFEFEF', // $gallery - height: '38px', - position: 'relative', - zIndex: 12, - }, - }) + // extra app-header space + + // h('.app-header', { + // style: { + // visibility: props.isUnlocked ? 'visible' : 'none', + // background: '#EFEFEF', // $gallery + // height: '38px', + // position: 'relative', + // zIndex: 12, + // }, + // }) ]) ) } diff --git a/ui/app/css/index.css b/ui/app/css/index.css index 3cedb1d8e..d45966fc0 100644 --- a/ui/app/css/index.css +++ b/ui/app/css/index.css @@ -489,12 +489,8 @@ input.large-input { /* Send Screen */ -.send-screen { - -} - .send-screen section { - margin: 8px 16px; + margin: 4px 16px; } .send-screen input { diff --git a/ui/app/send.js b/ui/app/send.js index bd4cf4ee1..513c2462f 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -59,197 +59,229 @@ SendTransactionScreen.prototype.render = function () { return ( - h('.send-screen.flex-column.flex-grow', { + h('div.flex-column.flex-grow', { style: { - background: '#FFFFFF', // $background-white - marginLeft: '3.5%', - marginRight: '3.5%', - } + // overflow: 'scroll', + minWidth: '355px', // TODO: maxWidth TBD, use home.html + }, }, [ - h('section.flex-center.flex-row', { + + // Main Send token Card + h('div.send-screen.flex-column.flex-grow', { style: { - zIndex: 15, // $token-icon-z-index - marginTop: '-35px', + marginLeft: '3.5%', + marginRight: '3.5%', + background: '#FFFFFF', // $background-white } }, [ - h(Identicon, { - address: ARAGON, - diameter: 76, - }), - ]), - - // - // Required Fields - // - - h('h3.flex-center', { - style: { - marginTop: '-15px', - fontSize: '20px', - }, - }, [ - 'Send Tokens', - ]), - - h('h3.flex-center', { - style: { - textAlign: 'center', - fontSize: '16px', - }, - }, [ - 'Send Tokens to anyone with an Ethereum account', - ]), - - h('h3.flex-center', { - style: { - textAlign: 'center', - fontSize: '16px', - }, - }, [ - 'Your Aragon Token Balance is:', - ]), - - h('h3.flex-center', { - style: { - textAlign: 'center', - fontSize: '43px', - }, - }, [ - '2.34', - ]), - - h('h3.flex-center', { - style: { - textAlign: 'center', - fontSize: '16px', - }, - }, [ - 'ANT', - ]), - - // error message - props.error && h('span.error.flex-center', props.error), - - // 'to' field - h('section.flex-row.flex-center', [ - h(EnsInput, { - name: 'address', - placeholder: 'Recipient Address', - onChange: this.recipientDidChange.bind(this), - network, - identities, - addressBook, - }), - ]), - - // 'amount' and send button - h('section.flex-column.flex-center', [ - - h('div.flex-row.flex-center', { + h('section.flex-center.flex-row', { style: { - width: '100%', - justifyContent: 'space-between', + zIndex: 15, // $token-icon-z-index + marginTop: '-35px', } - },[ - h('span', { style: {} }, ['Amount']), - h('span', { style: {} }, ['Token <> USD']), + }, [ + h(Identicon, { + address: ARAGON, + diameter: 76, + }), ]), - h('input.large-input', { - name: 'amount', - placeholder: '0', - type: 'number', + // + // Required Fields + // + + h('h3.flex-center', { style: { - marginRight: '6px', + marginTop: '-15px', + fontSize: '16px', }, - dataset: { - persistentFormId: 'tx-amount', - }, - }), - - ]), - - h('section.flex-column.flex-center', [ - - h('div.flex-row.flex-center', { - style: { - width: '100%', - justifyContent: 'space-between', - } - },[ - h('span', { style: {} }, ['Gas Fee:']), - h('span', { style: {} }, ['What\'s this?']), + }, [ + 'Send Tokens', ]), - h('input.large-input', { - name: 'Gas Fee', - placeholder: '0', - type: 'number', + h('h3.flex-center', { style: { - marginRight: '6px', + textAlign: 'center', + fontSize: '12px', }, - // dataset: { - // persistentFormId: 'tx-amount', - // }, - }), - - ]), - - // - // Optional Fields - // - - h('section.flex-column.flex-center', [ - - h('div.flex-row.flex-center', { - style: { - width: '100%', - justifyContent: 'flex-start', - } - },[ - h('span', { style: {} }, ['Transaction Memo (optional)']), - h('span', { style: {} }, ['What\'s this?']), + }, [ + 'Send Tokens to anyone with an Ethereum account', ]), - h('input.large-input', { - name: 'memo', - placeholder: '', - type: 'string', + h('h3.flex-center', { style: { - marginRight: '6px', + textAlign: 'center', + fontSize: '12px', }, - }), + }, [ + 'Your Aragon Token Balance is:', + ]), + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '36px', + }, + }, [ + '2.34', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '12px', + }, + }, [ + 'ANT', + ]), + + // error message + props.error && h('span.error.flex-center', props.error), + + // 'to' field + h('section.flex-row.flex-center', { + style: { + fontSize: '12px', + }, + }, [ + h(EnsInput, { + name: 'address', + placeholder: 'Recipient Address', + onChange: this.recipientDidChange.bind(this), + network, + identities, + addressBook, + }), + ]), + + // 'amount' and send button + h('section.flex-column.flex-center', [ + + h('div.flex-row.flex-center', { + style: { + fontSize: '12px', + width: '100%', + justifyContent: 'space-between', + } + },[ + h('span', { style: {} }, ['Amount']), + h('span', { style: {} }, ['Token <> USD']), + ]), + + h('input.large-input', { + name: 'amount', + placeholder: '0', + type: 'number', + style: { + marginRight: '6px', + fontSize: '12px', + }, + dataset: { + persistentFormId: 'tx-amount', + }, + }), + + ]), + + h('section.flex-column.flex-center', [ + + h('div.flex-row.flex-center', { + style: { + fontSize: '12px', + width: '100%', + justifyContent: 'space-between', + } + },[ + h('span', { style: {} }, ['Gas Fee:']), + h('span', { style: { fontSize: '8px' } }, ['What\'s this?']), + ]), + + h('input.large-input', { + name: 'Gas Fee', + placeholder: '0', + type: 'number', + style: { + fontSize: '12px', + marginRight: '6px', + }, + // dataset: { + // persistentFormId: 'tx-amount', + // }, + }), + + ]), + + // + // Optional Fields + // + + h('section.flex-column.flex-center', [ + + h('div.flex-row.flex-center', { + style: { + fontSize: '12px', + width: '100%', + justifyContent: 'flex-start', + } + },[ + h('span', { style: {} }, ['Transaction Memo (optional)']), + h('span', { style: { fontSize: '8px' } }, ['What\'s this?']), + ]), + + h('input.large-input', { + name: 'memo', + placeholder: '', + type: 'string', + style: { + marginRight: '6px', + }, + }), + ]), + + // h('h3.flex-center.text-transform-uppercase', { + // style: { + // background: '#EBEBEB', + // color: '#AEAEAE', + // marginTop: '16px', + // marginBottom: '16px', + // }, + // }, [ + // 'Transaction Data (optional)', + // ]), + + // // 'data' field + // h('section.flex-column.flex-center', [ + // h('input.large-input', { + // name: 'txData', + // placeholder: '0x01234', + // style: { + // width: '100%', + // resize: 'none', + // }, + // dataset: { + // persistentFormId: 'tx-data', + // }, + // }), + // ]), ]), + // Buttons underneath card + h('button.primary', { + onClick: this.onSubmit.bind(this), + style: { + textTransform: 'uppercase', + }, + }, 'Next'), - // h('h3.flex-center.text-transform-uppercase', { - // style: { - // background: '#EBEBEB', - // color: '#AEAEAE', - // marginTop: '16px', - // marginBottom: '16px', - // }, - // }, [ - // 'Transaction Data (optional)', - // ]), - - // // 'data' field - // h('section.flex-column.flex-center', [ - // h('input.large-input', { - // name: 'txData', - // placeholder: '0x01234', - // style: { - // width: '100%', - // resize: 'none', - // }, - // dataset: { - // persistentFormId: 'tx-data', - // }, - // }), - // ]), + h('button.primary', { + onClick: this.back.bind(this), + style: { + textTransform: 'uppercase', + }, + }, 'Cancel'), ]) + ) } From 25259cc2cdadce71514d2e37cc9e0ea4bce21f40 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 19:37:08 -0700 Subject: [PATCH 0009/1128] Center action buttons, add minor style adjustments --- ui/app/css/index.css | 88 ++++++++++++++++++++++++++------------------ ui/app/send.js | 48 +++++++++++++++--------- 2 files changed, 83 insertions(+), 53 deletions(-) diff --git a/ui/app/css/index.css b/ui/app/css/index.css index d45966fc0..f4783a446 100644 --- a/ui/app/css/index.css +++ b/ui/app/css/index.css @@ -69,46 +69,48 @@ input:focus, textarea:focus { flex-direction: column; } -button, input[type="submit"] { - font-family: 'Montserrat Bold'; - outline: none; - cursor: pointer; - padding: 8px 12px; - border: none; - color: white; - transform-origin: center center; - transition: transform 50ms ease-in; - /* default orange */ - background: rgba(247, 134, 28, 1); - box-shadow: 0px 3px 6px rgba(247, 134, 28, 0.36); -} +// TODO: remove/refactor for new design -.btn-green, input[type="submit"].btn-green { - background: rgba(106, 195, 96, 1); - box-shadow: 0px 3px 6px rgba(106, 195, 96, 0.36); -} +// button, input[type="submit"] { +// font-family: 'Montserrat Bold'; +// outline: none; +// cursor: pointer; +// padding: 8px 12px; +// border: none; +// color: white; +// transform-origin: center center; +// transition: transform 50ms ease-in; +// /* default orange */ +// background: rgba(247, 134, 28, 1); +// box-shadow: 0px 3px 6px rgba(247, 134, 28, 0.36); +// } -.btn-red { - background: rgba(254, 35, 17, 1); - box-shadow: 0px 3px 6px rgba(254, 35, 17, 0.36); -} +// .btn-green, input[type="submit"].btn-green { +// background: rgba(106, 195, 96, 1); +// box-shadow: 0px 3px 6px rgba(106, 195, 96, 0.36); +// } -button[disabled], input[type="submit"][disabled] { - cursor: not-allowed; - background: rgba(197, 197, 197, 1); - box-shadow: 0px 3px 6px rgba(197, 197, 197, 0.36); -} +// .btn-red { +// background: rgba(254, 35, 17, 1); +// box-shadow: 0px 3px 6px rgba(254, 35, 17, 0.36); +// } -button.spaced { - margin: 2px; -} +// button[disabled], input[type="submit"][disabled] { +// cursor: not-allowed; +// background: rgba(197, 197, 197, 1); +// box-shadow: 0px 3px 6px rgba(197, 197, 197, 0.36); +// } -button:not([disabled]):hover, input[type="submit"]:not([disabled]):hover { - transform: scale(1.1); -} -button:not([disabled]):active, input[type="submit"]:not([disabled]):active { - transform: scale(0.95); -} +// button.spaced { +// margin: 2px; +// } + +// button:not([disabled]):hover, input[type="submit"]:not([disabled]):hover { +// transform: scale(1.1); +// } +// button:not([disabled]):active, input[type="submit"]:not([disabled]):active { +// transform: scale(0.95); +// } a { text-decoration: none; @@ -137,6 +139,22 @@ button.primary { text-transform: uppercase; } +button.light { + padding: 8px 12px; + // background: #FFFFFF; // $bg-white + box-shadow: 0px 3px 6px rgba(247, 134, 28, 0.36); + color: #585D67; // TODO: make reusable light button color + font-size: 1.1em; + font-family: 'Montserrat Regular'; + text-transform: uppercase; + text-align: center; + line-height: 20px; + border-radius: 2px; + border: 1px solid #979797; // #TODO: make reusable light border color + opacity: 0.5; +} + +// TODO: cleanup: not used anywhere button.btn-thin { border: 1px solid; border-color: #4D4D4D; diff --git a/ui/app/send.js b/ui/app/send.js index 513c2462f..a24989e56 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -72,6 +72,7 @@ SendTransactionScreen.prototype.render = function () { marginLeft: '3.5%', marginRight: '3.5%', background: '#FFFFFF', // $background-white + boxShadow: '0 2px 4px 0 rgba(0,0,0,0.08)', } }, [ h('section.flex-center.flex-row', { @@ -92,7 +93,7 @@ SendTransactionScreen.prototype.render = function () { h('h3.flex-center', { style: { - marginTop: '-15px', + marginTop: '-18px', fontSize: '16px', }, }, [ @@ -111,6 +112,7 @@ SendTransactionScreen.prototype.render = function () { h('h3.flex-center', { style: { textAlign: 'center', + marginTop: '2px', fontSize: '12px', }, }, [ @@ -121,6 +123,7 @@ SendTransactionScreen.prototype.render = function () { style: { textAlign: 'center', fontSize: '36px', + marginTop: '8px', }, }, [ '2.34', @@ -130,6 +133,7 @@ SendTransactionScreen.prototype.render = function () { style: { textAlign: 'center', fontSize: '12px', + marginTop: '4px', }, }, [ 'ANT', @@ -156,7 +160,6 @@ SendTransactionScreen.prototype.render = function () { // 'amount' and send button h('section.flex-column.flex-center', [ - h('div.flex-row.flex-center', { style: { fontSize: '12px', @@ -184,7 +187,6 @@ SendTransactionScreen.prototype.render = function () { ]), h('section.flex-column.flex-center', [ - h('div.flex-row.flex-center', { style: { fontSize: '12px', @@ -215,8 +217,11 @@ SendTransactionScreen.prototype.render = function () { // Optional Fields // - h('section.flex-column.flex-center', [ - + h('section.flex-column.flex-center', { + style: { + marginBottom: '10px', + }, + }, [ h('div.flex-row.flex-center', { style: { fontSize: '12px', @@ -225,7 +230,6 @@ SendTransactionScreen.prototype.render = function () { } },[ h('span', { style: {} }, ['Transaction Memo (optional)']), - h('span', { style: { fontSize: '8px' } }, ['What\'s this?']), ]), h('input.large-input', { @@ -266,20 +270,28 @@ SendTransactionScreen.prototype.render = function () { ]), // Buttons underneath card + h('section.flex-column.flex-center', [ - h('button.primary', { - onClick: this.onSubmit.bind(this), - style: { - textTransform: 'uppercase', - }, - }, 'Next'), + h('button.light', { + onClick: this.onSubmit.bind(this), + style: { + marginTop: '8px', + width: '8em', + background: '#FFFFFF' + }, + }, 'Next'), - h('button.primary', { - onClick: this.back.bind(this), - style: { - textTransform: 'uppercase', - }, - }, 'Cancel'), + h('button.light', { + onClick: this.back.bind(this), + style: { + background: '#F7F7F7', // $alabaster + border: 'none', + opacity: 1, + width: '8em', + }, + }, 'Cancel'), + + ]), ]) ) From 8ace4710ffa1ca56e59e5888fd076fecfae8a911 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 19:46:59 -0700 Subject: [PATCH 0010/1128] Clean up send screen --- ui/app/send.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ui/app/send.js b/ui/app/send.js index a24989e56..873db8473 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -320,7 +320,11 @@ SendTransactionScreen.prototype.onSubmit = function () { const nickname = state.nickname || ' ' const input = document.querySelector('input[name="amount"]').value const value = util.normalizeEthStringToWei(input) - const txData = document.querySelector('input[name="txData"]').value + // TODO: check with team on whether txData is removed completely. + const txData = false; + // Must replace with memo data. + // const txData = document.querySelector('input[name="txData"]').value + const balance = this.props.balance let message @@ -339,7 +343,7 @@ SendTransactionScreen.prototype.onSubmit = function () { return this.props.dispatch(actions.displayWarning(message)) } - if (!isHex(ethUtil.stripHexPrefix(txData)) && txData) { + if (txData && !isHex(ethUtil.stripHexPrefix(txData))) { message = 'Transaction data must be hex string.' return this.props.dispatch(actions.displayWarning(message)) } From 35ff4c195c4ff91a90b7572f07060b0213898f22 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 20:55:55 -0700 Subject: [PATCH 0011/1128] [WIP] Isolate form logic from rest of confirmation UI --- ui/app/components/pending-tx.js | 45 ++++++++++++++++++--------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index 5324ccd64..2414a9759 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -75,11 +75,8 @@ PendingTx.prototype.render = function () { key: txMeta.id, }, [ - h('form#pending-tx-form', { - onSubmit: this.onSubmit.bind(this), - + h('div', { }, [ - // tx info h('div', [ @@ -305,24 +302,32 @@ PendingTx.prototype.render = function () { }, 'Buy Ether') : null, - h('button', { - onClick: (event) => { - this.resetGasFields() - event.preventDefault() - }, - }, 'Reset'), - // Accept Button - h('input.confirm.btn-green', { - type: 'submit', - value: 'SUBMIT', - style: { marginLeft: '10px' }, - disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, - }), + h('form#pending-tx-form', { + onSubmit: this.onSubmit.bind(this), + }, [ + // Reset Button + h('button', { + onClick: (event) => { + this.resetGasFields() + event.preventDefault() + }, + }, 'Reset'), + + // Accept Button + h('input.confirm.btn-green', { + type: 'submit', + value: 'SUBMIT', + style: { marginLeft: '10px' }, + disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, + }), + + // Cancel Button + h('button.cancel.btn-red', { + onClick: props.cancelTransaction, + }, 'Reject'), + ]), - h('button.cancel.btn-red', { - onClick: props.cancelTransaction, - }, 'Reject'), ]), ]), ]) From 65327dd11f5c56ae8a60a4a8f399d1b4832285c1 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 22:17:56 -0700 Subject: [PATCH 0012/1128] Cleanup unnecessary pending tx-switching logic --- ui/app/conf-tx.js | 79 ++++++++++++----------------------------------- 1 file changed, 19 insertions(+), 60 deletions(-) diff --git a/ui/app/conf-tx.js b/ui/app/conf-tx.js index 34727ff78..4a8c616e2 100644 --- a/ui/app/conf-tx.js +++ b/ui/app/conf-tx.js @@ -52,66 +52,25 @@ ConfirmTxScreen.prototype.render = function () { log.info(`rendering a combined ${unconfTxList.length} unconf msg & txs`) if (unconfTxList.length === 0) return h(Loading, { isLoading: true }) - return ( - - h('.flex-column.flex-grow', [ - - // subtitle and nav - h('.section-title.flex-row.flex-center', [ - !isNotification ? h('i.fa.fa-arrow-left.fa-lg.cursor-pointer', { - onClick: this.goHome.bind(this), - }) : null, - h('h2.page-subtitle', 'Confirm Transaction'), - isNotification ? h(NetworkIndicator, { - network: network, - provider: provider, - }) : null, - ]), - - h('h3', { - style: { - alignSelf: 'center', - display: unconfTxList.length > 1 ? 'block' : 'none', - }, - }, [ - h('i.fa.fa-arrow-left.fa-lg.cursor-pointer', { - style: { - display: props.index === 0 ? 'none' : 'inline-block', - }, - onClick: () => props.dispatch(actions.previousTx()), - }), - ` ${props.index + 1} of ${unconfTxList.length} `, - h('i.fa.fa-arrow-right.fa-lg.cursor-pointer', { - style: { - display: props.index + 1 === unconfTxList.length ? 'none' : 'inline-block', - }, - onClick: () => props.dispatch(actions.nextTx()), - }), - ]), - - warningIfExists(props.warning), - - currentTxView({ - // Properties - txData: txData, - key: txData.id, - selectedAddress: props.selectedAddress, - accounts: props.accounts, - identities: props.identities, - conversionRate, - currentCurrency, - blockGasLimit, - // Actions - buyEth: this.buyEth.bind(this, txParams.from || props.selectedAddress), - sendTransaction: this.sendTransaction.bind(this), - cancelTransaction: this.cancelTransaction.bind(this, txData), - signMessage: this.signMessage.bind(this, txData), - signPersonalMessage: this.signPersonalMessage.bind(this, txData), - cancelMessage: this.cancelMessage.bind(this, txData), - cancelPersonalMessage: this.cancelPersonalMessage.bind(this, txData), - }), - ]) - ) + return currentTxView({ + // Properties + txData: txData, + key: txData.id, + selectedAddress: props.selectedAddress, + accounts: props.accounts, + identities: props.identities, + conversionRate, + currentCurrency, + blockGasLimit, + // Actions + buyEth: this.buyEth.bind(this, txParams.from || props.selectedAddress), + sendTransaction: this.sendTransaction.bind(this), + cancelTransaction: this.cancelTransaction.bind(this, txData), + signMessage: this.signMessage.bind(this, txData), + signPersonalMessage: this.signPersonalMessage.bind(this, txData), + cancelMessage: this.cancelMessage.bind(this, txData), + cancelPersonalMessage: this.cancelPersonalMessage.bind(this, txData), + }) } function currentTxView (opts) { From abc78a1bf9b83d35bf1ac4453d8886f11675d41d Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 22:18:26 -0700 Subject: [PATCH 0013/1128] Add content boxes to pendingTx, prep for reusability --- ui/app/components/pending-tx.js | 511 +++++++++++--------------------- 1 file changed, 180 insertions(+), 331 deletions(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index 2414a9759..8031547d4 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -20,6 +20,11 @@ const GWEI_FACTOR = new BN(1e9) const MIN_GAS_PRICE_BN = MIN_GAS_PRICE_GWEI_BN.mul(GWEI_FACTOR) const MIN_GAS_LIMIT_BN = new BN(21000) + +// Faked, for Icon +const Identicon = require('./identicon') +const ARAGON = '960b236A07cf122663c4303350609A66A7B288C0' + module.exports = PendingTx inherits(PendingTx, Component) function PendingTx () { @@ -31,6 +36,24 @@ function PendingTx () { } } +const sectionDivider = h('div', { + style: { + height:'1px', + background:'#E7E7E7', + }, +}), + +// Next: create separate react components +const contentDivider = h('div', { + style: { + marginLeft: '16px', + marginRight: '16px', + height:'1px', + background:'#E7E7E7', + }, +}) + + PendingTx.prototype.render = function () { const props = this.props const { currentCurrency, blockGasLimit } = props @@ -70,349 +93,187 @@ PendingTx.prototype.render = function () { this.inputs = [] return ( - - h('div', { - key: txMeta.id, + h('div.flex-column.flex-grow', { + style: { + // overflow: 'scroll', + minWidth: '355px', // TODO: maxWidth TBD, use home.html + }, }, [ - h('div', { + // Main Send token Card + h('div.send-screen.flex-column.flex-grow', { + style: { + marginLeft: '3.5%', + marginRight: '3.5%', + background: '#FFFFFF', // $background-white + boxShadow: '0 2px 4px 0 rgba(0,0,0,0.08)', + } }, [ - // tx info - h('div', [ - - h('.flex-row.flex-center', { - style: { - maxWidth: '100%', - }, - }, [ - - h(MiniAccountPanel, { - imageSeed: address, - picOrder: 'right', - }, [ - h('span.font-small', { - style: { - fontFamily: 'Montserrat Bold, Montserrat, sans-serif', - }, - }, identity.name), - - h(Copyable, { - value: ethUtil.toChecksumAddress(address), - }, [ - h('span.font-small', { - style: { - fontFamily: 'Montserrat Light, Montserrat, sans-serif', - }, - }, addressSummary(address, 6, 4, false)), - ]), - - h('span.font-small', { - style: { - fontFamily: 'Montserrat Light, Montserrat, sans-serif', - }, - }, [ - h(EthBalance, { - value: balance, - conversionRate, - currentCurrency, - inline: true, - labelColor: '#F7861C', - }), - ]), - ]), - - forwardCarrat(), - - this.miniAccountPanelForRecipient(), - ]), - - h('style', ` - .table-box { - margin: 7px 0px 0px 0px; - width: 100%; - } - .table-box .row { - margin: 0px; - background: rgb(236,236,236); - display: flex; - justify-content: space-between; - font-family: Montserrat Light, sans-serif; - font-size: 13px; - padding: 5px 25px; - } - .table-box .row .value { - font-family: Montserrat Regular; - } - `), - - h('.table-box', [ - - // Ether Value - // Currently not customizable, but easily modified - // in the way that gas and gasLimit currently are. - h('.row', [ - h('.cell.label', 'Amount'), - h(EthBalance, { value: txParams.value, currentCurrency, conversionRate }), - ]), - - // Gas Limit (customizable) - h('.cell.row', [ - h('.cell.label', 'Gas Limit'), - h('.cell.value', { - }, [ - h(BNInput, { - name: 'Gas Limit', - value: gasBn, - precision: 0, - scale: 0, - // The hard lower limit for gas. - min: MIN_GAS_LIMIT_BN.toString(10), - max: safeGasLimit, - suffix: 'UNITS', - style: { - position: 'relative', - top: '5px', - }, - onChange: this.gasLimitChanged.bind(this), - - ref: (hexInput) => { this.inputs.push(hexInput) }, - }), - ]), - ]), - - // Gas Price (customizable) - h('.cell.row', [ - h('.cell.label', 'Gas Price'), - h('.cell.value', { - }, [ - h(BNInput, { - name: 'Gas Price', - value: gasPriceBn, - precision: 9, - scale: 9, - suffix: 'GWEI', - min: MIN_GAS_PRICE_GWEI_BN.toString(10), - style: { - position: 'relative', - top: '5px', - }, - onChange: this.gasPriceChanged.bind(this), - ref: (hexInput) => { this.inputs.push(hexInput) }, - }), - ]), - ]), - - // Max Transaction Fee (calculated) - h('.cell.row', [ - h('.cell.label', 'Max Transaction Fee'), - h(EthBalance, { value: txFeeBn.toString(16), currentCurrency, conversionRate }), - ]), - - h('.cell.row', { - style: { - fontFamily: 'Montserrat Regular', - background: 'white', - padding: '10px 25px', - }, - }, [ - h('.cell.label', 'Max Total'), - h('.cell.value', { - style: { - display: 'flex', - alignItems: 'center', - }, - }, [ - h(EthBalance, { - value: maxCost.toString(16), - currentCurrency, - conversionRate, - inline: true, - labelColor: 'black', - fontSize: '16px', - }), - ]), - ]), - - // Data size row: - h('.cell.row', { - style: { - background: '#f7f7f7', - paddingBottom: '0px', - }, - }, [ - h('.cell.label'), - h('.cell.value', { - style: { - fontFamily: 'Montserrat Light', - fontSize: '11px', - }, - }, `Data included: ${dataLength} bytes`), - ]), - ]), // End of Table - + h('section.flex-center.flex-row', { + style: { + zIndex: 15, // $token-icon-z-index + marginTop: '-35px', + } + }, [ + h(Identicon, { + address: ARAGON, + diameter: 76, + }), ]), - h('style', ` - .conf-buttons button { - margin-left: 10px; - text-transform: uppercase; - } - `), + // + // Required Fields + // - txMeta.simulationFails ? - h('.error', { - style: { - marginLeft: 50, - fontSize: '0.9em', - }, - }, 'Transaction Error. Exception thrown in contract code.') - : null, - - !isValidAddress ? - h('.error', { - style: { - marginLeft: 50, - fontSize: '0.9em', - }, - }, 'Recipient address is invalid. Sending this transaction will result in a loss of ETH.') - : null, - - insufficientBalance ? - h('span.error', { - style: { - marginLeft: 50, - fontSize: '0.9em', - }, - }, 'Insufficient balance for transaction') - : null, - - // send + cancel - h('.flex-row.flex-space-around.conf-buttons', { + h('h3.flex-center', { style: { - display: 'flex', - justifyContent: 'flex-end', - margin: '14px 25px', + marginTop: '-18px', + fontSize: '16px', }, }, [ + 'Confirm Transaction', + ]), + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '12px', + }, + }, [ + 'You\'re sending to Recipient ...5924', + ]), - insufficientBalance ? - h('button.btn-green', { - onClick: props.buyEth, - }, 'Buy Ether') - : null, + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '36px', + marginTop: '8px', + }, + }, [ + '0.24', + ]), + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '12px', + marginTop: '4px', + }, + }, [ + 'ANT', + ]), - h('form#pending-tx-form', { - onSubmit: this.onSubmit.bind(this), + // error message + props.error && h('span.error.flex-center', props.error), + + sectionDivider, + + h('section.flex-row.flex-center', { + + }, [ + h('div', { + style: { + width: '50%', + } }, [ - // Reset Button - h('button', { - onClick: (event) => { - this.resetGasFields() - event.preventDefault() - }, - }, 'Reset'), - - // Accept Button - h('input.confirm.btn-green', { - type: 'submit', - value: 'SUBMIT', - style: { marginLeft: '10px' }, - disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, - }), - - // Cancel Button - h('button.cancel.btn-red', { - onClick: props.cancelTransaction, - }, 'Reject'), + h('span', { + style: { + textAlign: 'left', + fontSize: '12px', + } + }, [ + 'From' + ]) ]), + h('div', { + style: { + width: '50%', + } + },[ + h('div', { + style: { + textAlign: 'left', + fontSize: '10px', + marginBottom: '-10px', + }, + }, 'Aragon Token'), + + h('div', { + style: { + textAlign: 'left', + fontSize: '8px', + }, + }, 'Your Balance 2.34 ANT') + ]) ]), - ]), - ]) + + contentDivider, + + h('form#pending-tx-form', { + onSubmit: this.onSubmit.bind(this), + }, [ + // Reset Button + h('button', { + onClick: (event) => { + this.resetGasFields() + event.preventDefault() + }, + }, 'Reset'), + + // Accept Button + h('input.confirm.btn-green', { + type: 'submit', + value: 'SUBMIT', + style: { marginLeft: '10px' }, + disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, + }), + + // Cancel Button + h('button.cancel.btn-red', { + onClick: props.cancelTransaction, + }, 'Reject'), + ]), + + ]) // end of main container + ]) // end of minwidth wrapper ) } -PendingTx.prototype.miniAccountPanelForRecipient = function () { - const props = this.props - const txData = props.txData - const txParams = txData.txParams || {} - const isContractDeploy = !('to' in txParams) +// PendingTx.prototype.gasPriceChanged = function (newBN, valid) { +// log.info(`Gas price changed to: ${newBN.toString(10)}`) +// const txMeta = this.gatherTxMeta() +// txMeta.txParams.gasPrice = '0x' + newBN.toString('hex') +// this.setState({ +// txData: clone(txMeta), +// valid, +// }) +// } - // If it's not a contract deploy, send to the account - if (!isContractDeploy) { - return h(MiniAccountPanel, { - imageSeed: txParams.to, - picOrder: 'left', - }, [ +// PendingTx.prototype.gasLimitChanged = function (newBN, valid) { +// log.info(`Gas limit changed to ${newBN.toString(10)}`) +// const txMeta = this.gatherTxMeta() +// txMeta.txParams.gas = '0x' + newBN.toString('hex') +// this.setState({ +// txData: clone(txMeta), +// valid, +// }) +// } - h('span.font-small', { - style: { - fontFamily: 'Montserrat Bold, Montserrat, sans-serif', - }, - }, nameForAddress(txParams.to, props.identities)), +// PendingTx.prototype.resetGasFields = function () { +// log.debug(`pending-tx resetGasFields`) - h(Copyable, { - value: ethUtil.toChecksumAddress(txParams.to), - }, [ - h('span.font-small', { - style: { - fontFamily: 'Montserrat Light, Montserrat, sans-serif', - }, - }, addressSummary(txParams.to, 6, 4, false)), - ]), +// this.inputs.forEach((hexInput) => { +// if (hexInput) { +// hexInput.setValid() +// } +// }) - ]) - } else { - return h(MiniAccountPanel, { - picOrder: 'left', - }, [ - - h('span.font-small', { - style: { - fontFamily: 'Montserrat Bold, Montserrat, sans-serif', - }, - }, 'New Contract'), - - ]) - } -} - -PendingTx.prototype.gasPriceChanged = function (newBN, valid) { - log.info(`Gas price changed to: ${newBN.toString(10)}`) - const txMeta = this.gatherTxMeta() - txMeta.txParams.gasPrice = '0x' + newBN.toString('hex') - this.setState({ - txData: clone(txMeta), - valid, - }) -} - -PendingTx.prototype.gasLimitChanged = function (newBN, valid) { - log.info(`Gas limit changed to ${newBN.toString(10)}`) - const txMeta = this.gatherTxMeta() - txMeta.txParams.gas = '0x' + newBN.toString('hex') - this.setState({ - txData: clone(txMeta), - valid, - }) -} - -PendingTx.prototype.resetGasFields = function () { - log.debug(`pending-tx resetGasFields`) - - this.inputs.forEach((hexInput) => { - if (hexInput) { - hexInput.setValid() - } - }) - - this.setState({ - txData: null, - valid: true, - }) -} +// this.setState({ +// txData: null, +// valid: true, +// }) +// } PendingTx.prototype.onSubmit = function (event) { event.preventDefault() @@ -471,15 +332,3 @@ PendingTx.prototype.bnMultiplyByFraction = function (targetBN, numerator, denomi const denomBN = new BN(denominator) return targetBN.mul(numBN).div(denomBN) } - -function forwardCarrat () { - return ( - h('img', { - src: 'images/forward-carrat.svg', - style: { - padding: '5px 6px 0px 10px', - height: '37px', - }, - }) - ) -} From 4880ee26d589ea7bbb1f0d532646fa818d4eaae4 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 22:20:29 -0700 Subject: [PATCH 0014/1128] Add note to self, for future code cleanup --- ui/app/components/pending-tx.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index 8031547d4..f77374ef8 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -36,6 +36,13 @@ function PendingTx () { } } +// Next: create separate react components +// roughly 5 components: +// heroIcon +// numericDisplay (contains symbol + currency) +// divider +// contentBox +// actionButtons const sectionDivider = h('div', { style: { height:'1px', @@ -43,7 +50,6 @@ const sectionDivider = h('div', { }, }), -// Next: create separate react components const contentDivider = h('div', { style: { marginLeft: '16px', From 689f60d1ce811f542e70da523bcb89b12242440d Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 22:44:39 -0700 Subject: [PATCH 0015/1128] Add rounded background to total token, with minor styling tweaks --- ui/app/components/pending-tx.js | 192 ++++++++++++++++++++++++++++---- ui/app/css/colors.css | 3 +- ui/app/css/index.css | 10 +- ui/app/send.js | 4 +- 4 files changed, 180 insertions(+), 29 deletions(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index f77374ef8..4b06f71b0 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -25,17 +25,6 @@ const MIN_GAS_LIMIT_BN = new BN(21000) const Identicon = require('./identicon') const ARAGON = '960b236A07cf122663c4303350609A66A7B288C0' -module.exports = PendingTx -inherits(PendingTx, Component) -function PendingTx () { - Component.call(this) - this.state = { - valid: true, - txData: null, - submitting: false, - } -} - // Next: create separate react components // roughly 5 components: // heroIcon @@ -48,7 +37,7 @@ const sectionDivider = h('div', { height:'1px', background:'#E7E7E7', }, -}), +}) const contentDivider = h('div', { style: { @@ -59,6 +48,16 @@ const contentDivider = h('div', { }, }) +module.exports = PendingTx +inherits(PendingTx, Component) +function PendingTx () { + Component.call(this) + this.state = { + valid: true, + txData: null, + submitting: false, + } +} PendingTx.prototype.render = function () { const props = this.props @@ -175,7 +174,6 @@ PendingTx.prototype.render = function () { sectionDivider, h('section.flex-row.flex-center', { - }, [ h('div', { style: { @@ -216,27 +214,179 @@ PendingTx.prototype.render = function () { contentDivider, + h('section.flex-row.flex-center', { + }, [ + h('div', { + style: { + width: '50%', + } + }, [ + h('span', { + style: { + textAlign: 'left', + fontSize: '12px', + } + }, [ + 'To' + ]) + ]), + + h('div', { + style: { + width: '50%', + } + },[ + h('div', { + style: { + textAlign: 'left', + fontSize: '10px', + marginBottom: '-10px', + }, + }, 'Ethereum Address'), + + h('div', { + style: { + textAlign: 'left', + fontSize: '8px', + }, + }, '...5924') + ]) + ]), + + contentDivider, + + h('section.flex-row.flex-center', { + }, [ + h('div', { + style: { + width: '50%', + } + }, [ + h('span', { + style: { + textAlign: 'left', + fontSize: '12px', + } + }, [ + 'Gas Fee' + ]) + ]), + + h('div', { + style: { + width: '50%', + } + },[ + h('div', { + style: { + textAlign: 'left', + fontSize: '10px', + marginBottom: '-10px', + }, + }, '$0.04 USD'), + + h('div', { + style: { + textAlign: 'left', + fontSize: '8px', + }, + }, '0.001575 ETH') + ]) + ]), + + contentDivider, + + h('section.flex-row.flex-center', { + style: { + backgroundColor: '#F6F6F6', // $wild-sand + borderRadius: '8px', + marginLeft: '10px', + marginRight: '10px', + paddingLeft: '6px', + paddingRight: '6px', + } + }, [ + h('div', { + style: { + width: '50%', + } + }, [ + h('div', { + style: { + textAlign: 'left', + fontSize: '12px', + } + }, [ + 'Total Tokens' + ]), + + h('div', { + style: { + textAlign: 'left', + fontSize: '8px', + } + }, [ + 'Total Gas' + ]) + + ]), + + h('div', { + style: { + width: '50%', + } + },[ + h('div', { + style: { + textAlign: 'left', + fontSize: '10px', + marginBottom: '-10px', + }, + }, '0.24 ANT (127.00 USD)'), + + h('div', { + style: { + textAlign: 'left', + fontSize: '8px', + }, + }, '0.249 ETH') + ]) + ]), + + sectionDivider, + h('form#pending-tx-form', { onSubmit: this.onSubmit.bind(this), }, [ // Reset Button - h('button', { - onClick: (event) => { - this.resetGasFields() - event.preventDefault() - }, - }, 'Reset'), + // h('button', { + // onClick: (event) => { + // this.resetGasFields() + // event.preventDefault() + // }, + // }, 'Reset'), // Accept Button h('input.confirm.btn-green', { type: 'submit', value: 'SUBMIT', - style: { marginLeft: '10px' }, + style: { + color: '#FFFFFF', + fontSize: '12px', + lineHeight: '20px', + textAlign: 'center', + }, disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, }), // Cancel Button - h('button.cancel.btn-red', { + h('button.cancel.btn-light', { + style: { + background: '#F7F7F7', // $alabaster + border: 'none', + opacity: 1, + width: '8em', + }, onClick: props.cancelTransaction, }, 'Reject'), ]), diff --git a/ui/app/css/colors.css b/ui/app/css/colors.css index 7ac93595f..650c81120 100644 --- a/ui/app/css/colors.css +++ b/ui/app/css/colors.css @@ -1,3 +1,4 @@ $gallery: #EFEFEF; $alabaster: #F7F7F7; -$shark: #22232C; \ No newline at end of file +$shark: #22232C; +$wild-sand: #F6F6F6; \ No newline at end of file diff --git a/ui/app/css/index.css b/ui/app/css/index.css index f4783a446..dc8cea695 100644 --- a/ui/app/css/index.css +++ b/ui/app/css/index.css @@ -85,10 +85,10 @@ input:focus, textarea:focus { // box-shadow: 0px 3px 6px rgba(247, 134, 28, 0.36); // } -// .btn-green, input[type="submit"].btn-green { -// background: rgba(106, 195, 96, 1); -// box-shadow: 0px 3px 6px rgba(106, 195, 96, 0.36); -// } +.btn-green, input[type="submit"].btn-green { + border-radius: 2px; + background-color: #02C9B1; +} // .btn-red { // background: rgba(254, 35, 17, 1); @@ -139,7 +139,7 @@ button.primary { text-transform: uppercase; } -button.light { +.btn-light { padding: 8px 12px; // background: #FFFFFF; // $bg-white box-shadow: 0px 3px 6px rgba(247, 134, 28, 0.36); diff --git a/ui/app/send.js b/ui/app/send.js index 873db8473..de9e64ad1 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -272,7 +272,7 @@ SendTransactionScreen.prototype.render = function () { // Buttons underneath card h('section.flex-column.flex-center', [ - h('button.light', { + h('button.btn-light', { onClick: this.onSubmit.bind(this), style: { marginTop: '8px', @@ -281,7 +281,7 @@ SendTransactionScreen.prototype.render = function () { }, }, 'Next'), - h('button.light', { + h('button.btn-light', { onClick: this.back.bind(this), style: { background: '#F7F7F7', // $alabaster From 6a5e73e67386b063786eb36efe1ee6544f8017bb Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 23:00:44 -0700 Subject: [PATCH 0016/1128] Enhance button and input css reset to protect from user agent stylesheet --- ui/app/css/reset.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ui/app/css/reset.css b/ui/app/css/reset.css index 9ce89e8bc..da94e6212 100644 --- a/ui/app/css/reset.css +++ b/ui/app/css/reset.css @@ -45,4 +45,8 @@ q:before, q:after { table { border-collapse: collapse; border-spacing: 0; +} + +input, button { + border-style: none; } \ No newline at end of file From f368f371c29699f277b8c91ad8a6284a3b451223 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 23:02:04 -0700 Subject: [PATCH 0017/1128] Simplify btn-green colors --- ui/app/components/pending-tx.js | 1 + ui/app/css/index.css | 5 ++--- ui/app/css/reset.css | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index 4b06f71b0..eae9046a8 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -372,6 +372,7 @@ PendingTx.prototype.render = function () { value: 'SUBMIT', style: { color: '#FFFFFF', + borderRadius: '2px'; fontSize: '12px', lineHeight: '20px', textAlign: 'center', diff --git a/ui/app/css/index.css b/ui/app/css/index.css index dc8cea695..3c397dcff 100644 --- a/ui/app/css/index.css +++ b/ui/app/css/index.css @@ -85,9 +85,8 @@ input:focus, textarea:focus { // box-shadow: 0px 3px 6px rgba(247, 134, 28, 0.36); // } -.btn-green, input[type="submit"].btn-green { - border-radius: 2px; - background-color: #02C9B1; +.btn-green { + background-color: #02C9B1; // TODO: reusable color in colors.css } // .btn-red { diff --git a/ui/app/css/reset.css b/ui/app/css/reset.css index da94e6212..146be1e15 100644 --- a/ui/app/css/reset.css +++ b/ui/app/css/reset.css @@ -49,4 +49,4 @@ table { input, button { border-style: none; -} \ No newline at end of file +} From 9373ba9f381f390be7e8d88057c0c6f1a97a27f8 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 23:09:49 -0700 Subject: [PATCH 0018/1128] Move action buttons out of send token container, tweak styles --- ui/app/components/pending-tx.js | 76 +++++++++++++++++---------------- 1 file changed, 39 insertions(+), 37 deletions(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index eae9046a8..ede561bd2 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -304,6 +304,7 @@ PendingTx.prototype.render = function () { marginRight: '10px', paddingLeft: '6px', paddingRight: '6px', + marginBottom: '10px', } }, [ h('div', { @@ -315,6 +316,7 @@ PendingTx.prototype.render = function () { style: { textAlign: 'left', fontSize: '12px', + marginBottom: '-10px', } }, [ 'Total Tokens' @@ -353,46 +355,46 @@ PendingTx.prototype.render = function () { ]) ]), - sectionDivider, + ]), // end of container - h('form#pending-tx-form', { - onSubmit: this.onSubmit.bind(this), - }, [ - // Reset Button - // h('button', { - // onClick: (event) => { - // this.resetGasFields() - // event.preventDefault() - // }, - // }, 'Reset'), + h('form#pending-tx-form.flex-column.flex-center', { + onSubmit: this.onSubmit.bind(this), + }, [ + // Reset Button + // h('button', { + // onClick: (event) => { + // this.resetGasFields() + // event.preventDefault() + // }, + // }, 'Reset'), - // Accept Button - h('input.confirm.btn-green', { - type: 'submit', - value: 'SUBMIT', - style: { - color: '#FFFFFF', - borderRadius: '2px'; - fontSize: '12px', - lineHeight: '20px', - textAlign: 'center', - }, - disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, - }), + // Accept Button + h('input.confirm.btn-green', { + type: 'submit', + value: 'SUBMIT', + style: { + marginTop: '8px', + width: '8em', + color: '#FFFFFF', + borderRadius: '2px', + fontSize: '12px', + lineHeight: '20px', + textAlign: 'center', + }, + disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, + }), - // Cancel Button - h('button.cancel.btn-light', { - style: { - background: '#F7F7F7', // $alabaster - border: 'none', - opacity: 1, - width: '8em', - }, - onClick: props.cancelTransaction, - }, 'Reject'), - ]), - - ]) // end of main container + // Cancel Button + h('button.cancel.btn-light', { + style: { + background: '#F7F7F7', // $alabaster + border: 'none', + opacity: 1, + width: '8em', + }, + onClick: props.cancelTransaction, + }, 'Reject'), + ]), ]) // end of minwidth wrapper ) } From 97cb25c9f17b5cbf66f4e9a769bcdbdd39b4c9b5 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sat, 29 Jul 2017 23:11:11 -0700 Subject: [PATCH 0019/1128] Adjust copy in send token confirmation screen --- ui/app/components/pending-tx.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index ede561bd2..1fa9db4ef 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -371,7 +371,7 @@ PendingTx.prototype.render = function () { // Accept Button h('input.confirm.btn-green', { type: 'submit', - value: 'SUBMIT', + value: 'CONFIRM', style: { marginTop: '8px', width: '8em', @@ -393,7 +393,7 @@ PendingTx.prototype.render = function () { width: '8em', }, onClick: props.cancelTransaction, - }, 'Reject'), + }, 'CANCEL'), ]), ]) // end of minwidth wrapper ) From a7ab69b940e91aea4362c3c0bf9e9f3efb7c76c9 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 16:47:47 -0700 Subject: [PATCH 0020/1128] Adjust button styles for Send Token screen --- ui/app/components/pending-tx.js | 1 + ui/app/css/reset.css | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ui/app/components/pending-tx.js b/ui/app/components/pending-tx.js index 1fa9db4ef..1c47440f2 100644 --- a/ui/app/components/pending-tx.js +++ b/ui/app/components/pending-tx.js @@ -380,6 +380,7 @@ PendingTx.prototype.render = function () { fontSize: '12px', lineHeight: '20px', textAlign: 'center', + borderStyle: 'none', }, disabled: insufficientBalance || !this.state.valid || !isValidAddress || this.state.submitting, }), diff --git a/ui/app/css/reset.css b/ui/app/css/reset.css index 146be1e15..fef74825d 100644 --- a/ui/app/css/reset.css +++ b/ui/app/css/reset.css @@ -47,6 +47,6 @@ table { border-spacing: 0; } -input, button { +button { border-style: none; } From dd3766242dcdfd334f79367793d2b27bfcc36eb6 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 19:52:27 -0700 Subject: [PATCH 0021/1128] Adjust dimensions of popup.html and app bar to match --- app/notification.html | 2 +- app/popup.html | 2 +- ui/app/app.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/notification.html b/app/notification.html index cc485da7f..be38f4aa3 100644 --- a/app/notification.html +++ b/app/notification.html @@ -9,7 +9,7 @@ } - +
diff --git a/app/popup.html b/app/popup.html index d09b09315..471468b13 100644 --- a/app/popup.html +++ b/app/popup.html @@ -5,7 +5,7 @@ MetaMask Plugin - +
diff --git a/ui/app/app.js b/ui/app/app.js index 0f26f8add..7f844560c 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -121,7 +121,7 @@ App.prototype.renderAppBar = function () { alignItems: 'center', visibility: props.isUnlocked ? 'visible' : 'none', background: '#EFEFEF', // $gallery - height: '38px', + height: '11%', position: 'relative', zIndex: 12, }, From 7ea38523ea8231fa75916f48803abb0eb593f9a2 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 19:56:11 -0700 Subject: [PATCH 0022/1128] Set font-size on body of popup.html, for responsiveness --- app/popup.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/popup.html b/app/popup.html index 471468b13..a742686c5 100644 --- a/app/popup.html +++ b/app/popup.html @@ -5,7 +5,7 @@ MetaMask Plugin - +
From b15575b4530d4c1830af0471e9fb5bc1ee689ee3 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 20:02:42 -0700 Subject: [PATCH 0023/1128] Remove old header space --- ui/app/app.js | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 7f844560c..4d70f9df9 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -172,17 +172,6 @@ App.prototype.renderAppBar = function () { ]), ]), - // extra app-header space - - // h('.app-header', { - // style: { - // visibility: props.isUnlocked ? 'visible' : 'none', - // background: '#EFEFEF', // $gallery - // height: '38px', - // position: 'relative', - // zIndex: 12, - // }, - // }) ]) ) } From ca1a4b309676c3d10473acf4869b398d4ed50fb7 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 20:42:12 -0700 Subject: [PATCH 0024/1128] Add layout for main container elements --- ui/app/app.js | 20 ++++++++------------ ui/app/main-container.js | 41 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 12 deletions(-) create mode 100644 ui/app/main-container.js diff --git a/ui/app/app.js b/ui/app/app.js index 4d70f9df9..4f877bc51 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -9,7 +9,7 @@ const NewKeyChainScreen = require('./new-keychain') // unlock const UnlockScreen = require('./unlock') // accounts -const AccountDetailScreen = require('./account-detail') +const MainContainer = require('./main-container') const SendTransactionScreen = require('./send') const ConfirmTxScreen = require('./conf-tx') // notice @@ -90,13 +90,7 @@ App.prototype.render = function () { }), // panel content - h('.app-primary' + (transForward ? '.from-right' : '.from-left'), { - style: { - maxWidth: '850px', - }, - }, [ - this.renderPrimary(), - ]), + this.renderPrimary(), ]) ) } @@ -121,7 +115,7 @@ App.prototype.renderAppBar = function () { alignItems: 'center', visibility: props.isUnlocked ? 'visible' : 'none', background: '#EFEFEF', // $gallery - height: '11%', + height: '11vh', position: 'relative', zIndex: 12, }, @@ -132,6 +126,7 @@ App.prototype.renderAppBar = function () { display: 'flex', flexDirection: 'row', alignItems: 'center', + marginBottom: '1.8em', }, }, [ // mini logo @@ -156,6 +151,7 @@ App.prototype.renderAppBar = function () { display: 'flex', flexDirection: 'row', alignItems: 'center', + marginBottom: '1.8em', }, }, [ // Network Indicator @@ -419,8 +415,8 @@ App.prototype.renderPrimary = function () { switch (props.currentView.name) { case 'accountDetail': - log.debug('rendering account detail screen') - return h(AccountDetailScreen, {key: 'account-detail'}) + log.debug('rendering main container') + return h(MainContainer, {key: 'account-detail'}) case 'sendTransaction': log.debug('rendering send tx screen') @@ -488,7 +484,7 @@ App.prototype.renderPrimary = function () { default: log.debug('rendering default, account detail screen') - return h(AccountDetailScreen, {key: 'account-detail'}) + return h(MainContainer, {key: 'account-detail'}) } } diff --git a/ui/app/main-container.js b/ui/app/main-container.js new file mode 100644 index 000000000..ca68ba6b0 --- /dev/null +++ b/ui/app/main-container.js @@ -0,0 +1,41 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits + +module.exports = MainContainer + +inherits(MainContainer, Component) +function MainContainer () { + Component.call(this) +} + +MainContainer.prototype.render = function () { + console.log("rendering MainContainer..."); + return h('div.flex-row', { + style: { + position: 'absolute', + marginTop: '6vh', + width: '98%', + zIndex: 20, + } + }, [ + h('div.wallet-view', { + style: { + flexGrow: 1, + height: '82vh', + background: 'blue', + } + }, [ + ]), + + h('div.tx-view', { + style: { + flexGrow: 2, + height: '82vh', + background: 'green', + } + }, [ + ]), + ]) +} + From cbd53d4601f1af5aa4337e86ea8875606406e803 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 21:25:32 -0700 Subject: [PATCH 0025/1128] Add containers for wallet view and dropdown UI --- ui/app/components/wallet-view.js | 81 ++++++++++++++++++++++++++++++++ ui/app/main-container.js | 6 +-- 2 files changed, 84 insertions(+), 3 deletions(-) create mode 100644 ui/app/components/wallet-view.js diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js new file mode 100644 index 000000000..fed227d6b --- /dev/null +++ b/ui/app/components/wallet-view.js @@ -0,0 +1,81 @@ +const Component = require('react').Component +const connect = require('react-redux').connect +const h = require('react-hyperscript') +const inherits = require('util').inherits +const Identicon = require('./identicon') +const AccountDropdowns = require('./account-dropdowns').AccountDropdowns + +module.exports = connect(mapStateToProps)(WalletView) + +function mapStateToProps (state) { + return { + network: state.metamask.network, + } +} + + +inherits(WalletView, Component) +function WalletView () { + Component.call(this) +} + +const noop = () => {} + +WalletView.prototype.render = function () { + const selected = '0x82df11beb942BEeeD58d466fCb0F0791365C7684' + const { network } = this.props + + return h('div.wallet-view.flex-column', { + style: { + flexGrow: 1, + height: '82vh', + background: '#FAFAFA', + } + }, [ + + h('div.flex-row.flex-center', { + style: { + // marginLeft: '5px', + // marginRight: '5px', + // marginTop: '10px', + // alignItems: 'center', + } + }, [ + + h('.identicon-wrapper.select-none', [ + h(Identicon, { + diameter: 24, + address: selected, + }), + ]), + + h('span', { + style: { + fontSize: '1.5em', + marginLeft: '5px', + } + }, [ + 'Account 1' + ]), + + h( + AccountDropdowns, + { + style: { + marginRight: '8px', + marginLeft: 'auto', + cursor: 'pointer', + }, + selected, + network, + identities: {}, + }, + ), + + ]) + + // wallet display 1 + // token display 1 + + ]) +} diff --git a/ui/app/main-container.js b/ui/app/main-container.js index ca68ba6b0..c1f7db0d8 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -1,6 +1,7 @@ const Component = require('react').Component const h = require('react-hyperscript') const inherits = require('util').inherits +const WalletView = require('./components/wallet-view') module.exports = MainContainer @@ -19,11 +20,10 @@ MainContainer.prototype.render = function () { zIndex: 20, } }, [ - h('div.wallet-view', { + h(WalletView, { style: { flexGrow: 1, height: '82vh', - background: 'blue', } }, [ ]), @@ -32,7 +32,7 @@ MainContainer.prototype.render = function () { style: { flexGrow: 2, height: '82vh', - background: 'green', + background: '#FFFFFF', } }, [ ]), From 4cdfd00f58082a26b8835a7c17ed4c964ec24c9e Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 21:35:27 -0700 Subject: [PATCH 0026/1128] Add box shadow to main container --- ui/app/main-container.js | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/app/main-container.js b/ui/app/main-container.js index c1f7db0d8..f64009539 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -18,6 +18,7 @@ MainContainer.prototype.render = function () { marginTop: '6vh', width: '98%', zIndex: 20, + boxShadow: '0 0 7px 0 rgba(0,0,0,0.08)', } }, [ h(WalletView, { From ddbf5613b3b7cf7b7b637f33cac87f5bbe69e7a7 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 21:35:41 -0700 Subject: [PATCH 0027/1128] Add note for later on isolating components --- ui/app/components/wallet-view.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index fed227d6b..3a08705be 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -67,7 +67,7 @@ WalletView.prototype.render = function () { cursor: 'pointer', }, selected, - network, + network, // TODO: this prop could be in the account dropdown container identities: {}, }, ), From 0ca50dfb1b990dadc702b178fad7e6434b71167a Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 21:53:13 -0700 Subject: [PATCH 0028/1128] Center account name and dropdowns --- ui/app/components/wallet-view.js | 9 ++++----- ui/app/main-container.js | 6 +++--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index 3a08705be..f425ec3d1 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -35,10 +35,9 @@ WalletView.prototype.render = function () { h('div.flex-row.flex-center', { style: { - // marginLeft: '5px', - // marginRight: '5px', - // marginTop: '10px', - // alignItems: 'center', + marginLeft: '35px', + marginRight: '35px', + marginTop: '35px', } }, [ @@ -52,7 +51,7 @@ WalletView.prototype.render = function () { h('span', { style: { fontSize: '1.5em', - marginLeft: '5px', + marginLeft: '10px', // TODO: switch all units for this component to em } }, [ 'Account 1' diff --git a/ui/app/main-container.js b/ui/app/main-container.js index f64009539..f891402ac 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -23,15 +23,15 @@ MainContainer.prototype.render = function () { }, [ h(WalletView, { style: { - flexGrow: 1, - height: '82vh', + // width: '33.33%', + // height: '82vh', } }, [ ]), h('div.tx-view', { style: { - flexGrow: 2, + width: '66.66%', height: '82vh', background: '#FFFFFF', } From 610d6da8aee2c32bb142b1ff93f6a0a685adf46c Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 22:10:59 -0700 Subject: [PATCH 0029/1128] Add hyperscript for wallet display component --- ui/app/components/wallet-view.js | 52 +++++++++++++++++++++++++++++--- 1 file changed, 48 insertions(+), 4 deletions(-) diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index f425ec3d1..c06c4133b 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -29,10 +29,11 @@ WalletView.prototype.render = function () { style: { flexGrow: 1, height: '82vh', - background: '#FAFAFA', + background: '#FAFAFA', // TODO: add to reusable colors } }, [ + // TODO: Separate component: wallet account details h('div.flex-row.flex-center', { style: { marginLeft: '35px', @@ -71,10 +72,53 @@ WalletView.prototype.render = function () { }, ), - ]) + ]), - // wallet display 1 - // token display 1 + // TODO: Separate component: wallet contents + h('div.flex-column', { + style: { + marginLeft: '35px', + marginTop: '15px', + alignItems: 'flex-start', + } + }, [ + + h('span', { + style: { + fontSize: '1.1em', + }, + }, 'Wallet'), + + h('span', { + style: { + fontSize: '1.8em', + margin: '10px 0px', + }, + }, '1001.124 ETH'), + + h('span', { + style: { + fontSize: '1.3em', + }, + }, '$300,000.00 USD'), + + h('div', { + style: { + position: 'absolute', + marginLeft: '-35px', + height: '6em', + width: '4px', + background: '#D8D8D8', // TODO: add to resuable colors + } + }, [ + ]) + ]), + + // Buy Buttons + + + + // Wallet contents ]) } From 7d4927c975554b091d72f6c24e7dd9e824f32548 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 22:25:20 -0700 Subject: [PATCH 0030/1128] Add layout for Buy and Send buttons --- ui/app/components/wallet-view.js | 43 ++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index c06c4133b..b61b53447 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -115,7 +115,50 @@ WalletView.prototype.render = function () { ]), // Buy Buttons + // for index.css + // + // TODO: move into a class + // div.wallet-btn { + // border: 1px solid rgb(91, 93, 103); + // border-radius: 2px; + // height: 30px; + // width: 75px; + // font-size: 0.8em; + // text-align: center; + // line-height: 25px; + // } + h('div.flex-row', { + style: { + marginLeft: '35px', + marginTop: '10px', + } + }, [ + h('div', { + style: { + border: '1px solid rgb(91, 93, 103)', + borderRadius: '2px', + height: '30px', + width: '75px', + fontSize: '0.8em', + textAlign: 'center', + lineHeight: '25px', + } + }, 'BUY'), + h('div.wallet-btn', { + style: { + border: '1px solid rgb(91, 93, 103)', + borderRadius: '2px', + height: '30px', + width: '75px', + fontSize: '0.8em', + textAlign: 'center', + lineHeight: '25px', + // spacing... + marginLeft: '15px', + } + }, 'SEND'), + ]), // Wallet contents From 0c1aea97c74e6ac0c263a654510faca73a2dc949 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Sun, 30 Jul 2017 22:30:55 -0700 Subject: [PATCH 0031/1128] Isolate wallet-content-display component --- ui/app/components/wallet-content-display.js | 54 +++++++++++++++++++++ ui/app/components/wallet-view.js | 10 +++- 2 files changed, 62 insertions(+), 2 deletions(-) create mode 100644 ui/app/components/wallet-content-display.js diff --git a/ui/app/components/wallet-content-display.js b/ui/app/components/wallet-content-display.js new file mode 100644 index 000000000..f1db09ec8 --- /dev/null +++ b/ui/app/components/wallet-content-display.js @@ -0,0 +1,54 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits + +module.exports = WalletContentDisplay + +inherits(WalletContentDisplay, Component) +function WalletContentDisplay () { + Component.call(this) +} + +WalletContentDisplay.prototype.render = function () { + const { title, amount, fiatValue, active } = this.props + + return h('div.flex-column', { + style: { + marginLeft: '35px', + marginTop: '15px', + alignItems: 'flex-start', + } + }, [ + + h('span', { + style: { + fontSize: '1.1em', + }, + }, title), + + h('span', { + style: { + fontSize: '1.8em', + margin: '10px 0px', + }, + }, amount), + + h('span', { + style: { + fontSize: '1.3em', + }, + }, fiatValue), + + active && h('div', { + style: { + position: 'absolute', + marginLeft: '-35px', + height: '6em', + width: '4px', + background: '#D8D8D8', // TODO: add to resuable colors + } + }, [ + ]) + ]) +} + diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index b61b53447..1c3f3b7f9 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -4,6 +4,7 @@ const h = require('react-hyperscript') const inherits = require('util').inherits const Identicon = require('./identicon') const AccountDropdowns = require('./account-dropdowns').AccountDropdowns +const Content = require('./wallet-content-display') module.exports = connect(mapStateToProps)(WalletView) @@ -74,7 +75,7 @@ WalletView.prototype.render = function () { ]), - // TODO: Separate component: wallet contents + // TODO: Separate component: wallet-content-account h('div.flex-column', { style: { marginLeft: '35px', @@ -160,8 +161,13 @@ WalletView.prototype.render = function () { }, 'SEND'), ]), - // Wallet contents + h(Content, { + title: "Total Token Balance", + amount: "45.439 ETH", + fiatValue: "$13,000.00 USD", + active: false, + }) ]) } From 3797b9921fc227c1bcf9681cffa73588cc7afb44 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 20:22:15 -0700 Subject: [PATCH 0032/1128] Adjust popup size to 545x450; refactor wallet view to fit --- app/popup.html | 2 +- ui/app/components/wallet-content-display.js | 14 ++-- ui/app/components/wallet-view.js | 74 ++++++--------------- 3 files changed, 29 insertions(+), 61 deletions(-) diff --git a/app/popup.html b/app/popup.html index a742686c5..de0e100a5 100644 --- a/app/popup.html +++ b/app/popup.html @@ -5,7 +5,7 @@ MetaMask Plugin - +
diff --git a/ui/app/components/wallet-content-display.js b/ui/app/components/wallet-content-display.js index f1db09ec8..3baffad69 100644 --- a/ui/app/components/wallet-content-display.js +++ b/ui/app/components/wallet-content-display.js @@ -10,13 +10,14 @@ function WalletContentDisplay () { } WalletContentDisplay.prototype.render = function () { - const { title, amount, fiatValue, active } = this.props + const { title, amount, fiatValue, active, style } = this.props + // TODO: Separate component: wallet-content-account return h('div.flex-column', { style: { - marginLeft: '35px', - marginTop: '15px', + marginLeft: '1.3em', alignItems: 'flex-start', + ...style, } }, [ @@ -29,7 +30,7 @@ WalletContentDisplay.prototype.render = function () { h('span', { style: { fontSize: '1.8em', - margin: '10px 0px', + margin: '0.4em 0em', }, }, amount), @@ -42,13 +43,14 @@ WalletContentDisplay.prototype.render = function () { active && h('div', { style: { position: 'absolute', - marginLeft: '-35px', + marginLeft: '-1.3em', height: '6em', - width: '4px', + width: '0.3em', background: '#D8D8D8', // TODO: add to resuable colors } }, [ ]) ]) + } diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index 1c3f3b7f9..0c5bd5c4f 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -37,9 +37,7 @@ WalletView.prototype.render = function () { // TODO: Separate component: wallet account details h('div.flex-row.flex-center', { style: { - marginLeft: '35px', - marginRight: '35px', - marginTop: '35px', + margin: '1.8em 1.3em', } }, [ @@ -52,8 +50,8 @@ WalletView.prototype.render = function () { h('span', { style: { - fontSize: '1.5em', - marginLeft: '10px', // TODO: switch all units for this component to em + fontSize: '1.2em', + marginLeft: '0.6em', // TODO: switch all units for this component to em } }, [ 'Account 1' @@ -63,7 +61,6 @@ WalletView.prototype.render = function () { AccountDropdowns, { style: { - marginRight: '8px', marginLeft: 'auto', cursor: 'pointer', }, @@ -75,49 +72,15 @@ WalletView.prototype.render = function () { ]), - // TODO: Separate component: wallet-content-account - h('div.flex-column', { - style: { - marginLeft: '35px', - marginTop: '15px', - alignItems: 'flex-start', - } - }, [ - - h('span', { - style: { - fontSize: '1.1em', - }, - }, 'Wallet'), - - h('span', { - style: { - fontSize: '1.8em', - margin: '10px 0px', - }, - }, '1001.124 ETH'), - - h('span', { - style: { - fontSize: '1.3em', - }, - }, '$300,000.00 USD'), - - h('div', { - style: { - position: 'absolute', - marginLeft: '-35px', - height: '6em', - width: '4px', - background: '#D8D8D8', // TODO: add to resuable colors - } - }, [ - ]) - ]), + h(Content, { + title: 'Wallet', + amount: '1001.124 ETH', + fiatValue: '$300,000.00 USD', + active: true, + }), // Buy Buttons // for index.css - // // TODO: move into a class // div.wallet-btn { // border: 1px solid rgb(91, 93, 103); @@ -131,32 +94,32 @@ WalletView.prototype.render = function () { h('div.flex-row', { style: { - marginLeft: '35px', - marginTop: '10px', + marginLeft: '1.3em', + marginTop: '0.8em', } }, [ h('div', { style: { border: '1px solid rgb(91, 93, 103)', borderRadius: '2px', - height: '30px', - width: '75px', + height: '28px', + width: '70px', fontSize: '0.8em', textAlign: 'center', lineHeight: '25px', + marginLeft: '.6em', } }, 'BUY'), h('div.wallet-btn', { style: { border: '1px solid rgb(91, 93, 103)', borderRadius: '2px', - height: '30px', - width: '75px', + height: '28px', + width: '70px', fontSize: '0.8em', textAlign: 'center', lineHeight: '25px', - // spacing... - marginLeft: '15px', + marginLeft: '.6em', } }, 'SEND'), ]), @@ -167,6 +130,9 @@ WalletView.prototype.render = function () { amount: "45.439 ETH", fiatValue: "$13,000.00 USD", active: false, + style: { + marginTop: '1.3em', + } }) ]) From fce6041dbeb3384badef50467912ab47e51053ff Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 20:44:32 -0700 Subject: [PATCH 0033/1128] Add new fonts from @cjeria: DIN Next and DIN OT --- app/fonts/DIN Next/DIN Next W01 Bold.otf | Bin 0 -> 106032 bytes app/fonts/DIN Next/DIN Next W01 Regular.otf | Bin 0 -> 106580 bytes app/fonts/DIN Next/DIN Next W10 Black.otf | Bin 0 -> 105972 bytes app/fonts/DIN Next/DIN Next W10 Italic.otf | Bin 0 -> 115984 bytes app/fonts/DIN Next/DIN Next W10 Light.otf | Bin 0 -> 108672 bytes app/fonts/DIN Next/DIN Next W10 Medium.otf | Bin 0 -> 105684 bytes app/fonts/DIN_OT/DINOT-2.otf | Bin 0 -> 44144 bytes app/fonts/DIN_OT/DINOT-Bold 2.otf | Bin 0 -> 45564 bytes app/fonts/DIN_OT/DINOT-BoldItalic.otf | Bin 0 -> 49684 bytes app/fonts/DIN_OT/DINOT-Italic 2.otf | Bin 0 -> 47956 bytes app/fonts/DIN_OT/DINOT-Medium 2.otf | Bin 0 -> 44652 bytes app/fonts/DIN_OT/DINOT-MediumItalic 2.otf | Bin 0 -> 47732 bytes 12 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 app/fonts/DIN Next/DIN Next W01 Bold.otf create mode 100644 app/fonts/DIN Next/DIN Next W01 Regular.otf create mode 100644 app/fonts/DIN Next/DIN Next W10 Black.otf create mode 100644 app/fonts/DIN Next/DIN Next W10 Italic.otf create mode 100644 app/fonts/DIN Next/DIN Next W10 Light.otf create mode 100644 app/fonts/DIN Next/DIN Next W10 Medium.otf create mode 100644 app/fonts/DIN_OT/DINOT-2.otf create mode 100644 app/fonts/DIN_OT/DINOT-Bold 2.otf create mode 100644 app/fonts/DIN_OT/DINOT-BoldItalic.otf create mode 100644 app/fonts/DIN_OT/DINOT-Italic 2.otf create mode 100644 app/fonts/DIN_OT/DINOT-Medium 2.otf create mode 100644 app/fonts/DIN_OT/DINOT-MediumItalic 2.otf diff --git a/app/fonts/DIN Next/DIN Next W01 Bold.otf b/app/fonts/DIN Next/DIN Next W01 Bold.otf new file mode 100644 index 0000000000000000000000000000000000000000..2b78d1ff4bf09480a675b41fd13bad26ed7a6dfb GIT binary patch literal 106032 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 literal 0 HcmV?d00001 diff --git a/app/fonts/DIN Next/DIN Next W10 Black.otf b/app/fonts/DIN Next/DIN Next W10 Black.otf new file mode 100644 index 0000000000000000000000000000000000000000..08eb73373337d34e9e7bbb84a633fa013c31e543 GIT binary patch literal 105972 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 literal 0 HcmV?d00001 diff --git a/app/fonts/DIN Next/DIN Next W10 Light.otf b/app/fonts/DIN Next/DIN Next W10 Light.otf new file mode 100644 index 0000000000000000000000000000000000000000..700450e49094d7a7eb1e1c19ee63334f6dffe393 GIT binary patch literal 108672 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
From a7fc5126502a9c69aaa727178997ea4ed703c2d6 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 23:07:58 -0700 Subject: [PATCH 0041/1128] Implement mobile-friendly responsive layout with flex wrap --- ui/app/app.js | 4 +++- ui/app/components/tx-view.js | 6 +++++- ui/app/components/wallet-view.js | 5 ++++- ui/app/main-container.js | 5 ++++- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 4f877bc51..021ef5f27 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -73,7 +73,9 @@ App.prototype.render = function () { h('.flex-column.full-height', { style: { // Windows was showing a vertical scroll bar: - overflow: 'hidden', + overflowX: 'hidden', + // TODO: check with dev who committed L75, see if this still happens, and whether auto is enough + // overflowY: 'auto', position: 'relative', alignItems: 'center', }, diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js index c32e9edcb..bcd30e6d8 100644 --- a/ui/app/components/tx-view.js +++ b/ui/app/components/tx-view.js @@ -31,7 +31,11 @@ function TxView () { TxView.prototype.render = function () { return h('div.tx-view.flex-column', { style: { - width: '66.666%', + // width: '66.666%', + flexGrow: 2, + flexShrink: 0, + flexBasis: '230px', // .666*345 + // flexBasis: '400px', height: '82vh', background: '#FFFFFF', } diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index b8ea633db..60c2cb5c6 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -28,7 +28,10 @@ WalletView.prototype.render = function () { return h('div.wallet-view.flex-column', { style: { - width: '33.333%', + // width: '33.333%', + flexGrow: 1, + flexShrink: 0, + flexBasis: '230px', // .333*345 height: '82vh', background: '#FAFAFA', // TODO: add to reusable colors } diff --git a/ui/app/main-container.js b/ui/app/main-container.js index 88028f8eb..ae62a0e0c 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -13,7 +13,7 @@ function MainContainer () { MainContainer.prototype.render = function () { - return h('div.flex-row', { + return h('div', { style: { position: 'absolute', marginTop: '6vh', @@ -22,6 +22,9 @@ MainContainer.prototype.render = function () { boxShadow: '0 0 7px 0 rgba(0,0,0,0.08)', fontFamily: 'DIN OT', display: 'flex', + flexWrap: 'wrap', + alignItems: 'stretch', + overflowY: 'scroll', } }, [ h(WalletView, { From 6f4bee45997862b3ca52785b9d62489969f070f5 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 23:21:11 -0700 Subject: [PATCH 0042/1128] Hook up send button to Send Token screen --- ui/app/components/wallet-view.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index 60c2cb5c6..091a5cd7c 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -5,8 +5,9 @@ const inherits = require('util').inherits const Identicon = require('./identicon') const AccountDropdowns = require('./account-dropdowns').AccountDropdowns const Content = require('./wallet-content-display') +const actions = require('../actions') -module.exports = connect(mapStateToProps)(WalletView) +module.exports = connect(mapStateToProps, mapDispatchToProps)(WalletView) function mapStateToProps (state) { return { @@ -14,6 +15,12 @@ function mapStateToProps (state) { } } +function mapDispatchToProps (dispatch) { + return { + showSendPage: () => {dispatch(actions.showSendPage())}, + } +} + inherits(WalletView, Component) function WalletView () { @@ -112,6 +119,10 @@ WalletView.prototype.render = function () { } }, 'BUY'), h('div.wallet-btn', { + onClick: () => { + console.log("SHOW"); + this.props.showSendPage(); + }, style: { border: '1px solid rgb(91, 93, 103)', borderRadius: '2px', From 41c585c796a9049c2413036e7b23bf07330daa82 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 12:18:29 -0700 Subject: [PATCH 0043/1128] Make wallet view visible iff vw above 575px --- ui/app/components/wallet-view.js | 2 +- ui/app/css/index.css | 24 +++++++++++++++++++++++- ui/app/css/lib.css | 1 - ui/app/main-container.js | 3 +-- 4 files changed, 25 insertions(+), 5 deletions(-) diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index 091a5cd7c..97c881483 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -33,7 +33,7 @@ WalletView.prototype.render = function () { const selected = '0x82df11beb942BEeeD58d466fCb0F0791365C7684' const { network } = this.props - return h('div.wallet-view.flex-column', { + return h('div.wallet-view.flex-column.lap-visible', { style: { // width: '33.333%', flexGrow: 1, diff --git a/ui/app/css/index.css b/ui/app/css/index.css index 3c397dcff..b027792fb 100644 --- a/ui/app/css/index.css +++ b/ui/app/css/index.css @@ -718,5 +718,27 @@ div.message-container > div:first-child { } .pop-hover:hover { - transform: scale(1.1); + transform: scale(1.1); +} + +@media screen and (min-width: 576px) { + .lap-visible { + display: none; + } + + .phone-visible { + display: flex; + } + +} + +@media screen and (max-width: 575px) { + .lap-visible { + display: flex; + } + + .phone-visible { + display: none; + } + } diff --git a/ui/app/css/lib.css b/ui/app/css/lib.css index 98570859a..b0ca958a2 100644 --- a/ui/app/css/lib.css +++ b/ui/app/css/lib.css @@ -270,4 +270,3 @@ hr.horizontal-line { margin-top: 20px; color: red; } - diff --git a/ui/app/main-container.js b/ui/app/main-container.js index ae62a0e0c..592f331b5 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -27,10 +27,9 @@ MainContainer.prototype.render = function () { overflowY: 'scroll', } }, [ + h(WalletView, { style: { - // width: '33.33%', - // height: '82vh', } }, [ ]), From 22b03c62e650182951dce25a5ce9de982782a7fa Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 12:29:07 -0700 Subject: [PATCH 0044/1128] Add burger icon and phone-visible media queries --- ui/app/components/tx-view.js | 5 +++++ ui/app/css/index.css | 12 ++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js index bcd30e6d8..c5c6484cc 100644 --- a/ui/app/components/tx-view.js +++ b/ui/app/components/tx-view.js @@ -40,6 +40,11 @@ TxView.prototype.render = function () { background: '#FFFFFF', } }, [ + + h('div.phone-visible.fa.fa-bars', { + + }, []), + h('div.flex-row', { style: { margin: '1.8em 1.3em 0.8em 1.3em', diff --git a/ui/app/css/index.css b/ui/app/css/index.css index b027792fb..9e63c9e55 100644 --- a/ui/app/css/index.css +++ b/ui/app/css/index.css @@ -723,22 +723,22 @@ div.message-container > div:first-child { @media screen and (min-width: 576px) { .lap-visible { - display: none; + display: flex; } .phone-visible { - display: flex; + display: none; } } @media screen and (max-width: 575px) { .lap-visible { - display: flex; - } - - .phone-visible { display: none; } + .phone-visible { + display: flex; + } + } From 96d3b2f35ff9cd4bb45ad04feaf30d2fb4fc2740 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 13:03:30 -0700 Subject: [PATCH 0045/1128] Add dependejncy: react-burger-menu --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 29db4dace..c1b228272 100644 --- a/package.json +++ b/package.json @@ -108,6 +108,7 @@ "pumpify": "^1.3.4", "qrcode-npm": "0.0.3", "react": "^15.0.2", + "react-burger-menu": "^2.1.4", "react-dom": "^15.5.4", "react-hyperscript": "^2.2.2", "react-markdown": "^2.3.0", From 7767f9f7ad7321d88a0b738d2c272961cc1ce286 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 13:03:36 -0700 Subject: [PATCH 0046/1128] Hook up responsive sidebar --- ui/app/actions.js | 3 +++ ui/app/components/wallet-view.js | 4 ++-- ui/app/main-container.js | 12 +++++++++++- ui/app/reducers/app.js | 11 +++++++++++ 4 files changed, 27 insertions(+), 3 deletions(-) diff --git a/ui/app/actions.js b/ui/app/actions.js index 0a9d347aa..0083543b4 100644 --- a/ui/app/actions.js +++ b/ui/app/actions.js @@ -5,6 +5,9 @@ var actions = { GO_HOME: 'GO_HOME', goHome: goHome, + // sidebar state + SIDEBAR_OPEN: 'UI_SIDEBAR_OPEN', + SIDEBAR_CLOSE: 'UI_SIDEBAR_CLOSE', // menu state getNetworkStatus: 'getNetworkStatus', // transition state diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index 97c881483..63335dd93 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -31,9 +31,9 @@ const noop = () => {} WalletView.prototype.render = function () { const selected = '0x82df11beb942BEeeD58d466fCb0F0791365C7684' - const { network } = this.props + const { network, responsiveDisplayClassname } = this.props - return h('div.wallet-view.flex-column.lap-visible', { + return h('div.wallet-view.flex-column' + (responsiveDisplayClassname || ''), { style: { // width: '33.333%', flexGrow: 1, diff --git a/ui/app/main-container.js b/ui/app/main-container.js index 592f331b5..fb768c386 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -3,6 +3,7 @@ const h = require('react-hyperscript') const inherits = require('util').inherits const WalletView = require('./components/wallet-view') const TxView = require('./components/tx-view') +const SlideoutMenu = require('react-burger-menu').slide module.exports = MainContainer @@ -28,9 +29,18 @@ MainContainer.prototype.render = function () { } }, [ + h(SlideoutMenu, { + isOpen: true, + }, [ + h(WalletView, { + responsiveDisplayClassname: '.phone-visible' + }), + ]), + h(WalletView, { style: { - } + }, + responsiveDisplayClassname: '.lap-visible', }, [ ]), diff --git a/ui/app/reducers/app.js b/ui/app/reducers/app.js index 2fcc9bfe0..bf1de4577 100644 --- a/ui/app/reducers/app.js +++ b/ui/app/reducers/app.js @@ -36,6 +36,7 @@ function reduceApp (state, action) { var appState = extend({ shouldClose: false, menuOpen: false, + sidebarOpen: false, currentView: seedWords ? seedConfView : defaultView, accountDetail: { subview: 'transactions', @@ -46,6 +47,16 @@ function reduceApp (state, action) { }, state.appState) switch (action.type) { + // sidebar methods + case actions.SIDEBAR_OPEN: + return extend(appState, { + sidebarOpen: true, + }) + + case actions.SIDEBAR_CLOSE: + return extend(appState, { + sidebarOpen: false, + }) // transition methods From dfa10763e36f745d82fb62adc4ac42773d266da4 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 13:32:02 -0700 Subject: [PATCH 0047/1128] Integrate slideout menu with tx view --- ui/app/actions.js | 15 +++++++++++++++ ui/app/app.js | 1 + ui/app/components/tx-view.js | 36 +++++++++++++++++++++++++++++------- ui/app/main-container.js | 10 +--------- 4 files changed, 46 insertions(+), 16 deletions(-) diff --git a/ui/app/actions.js b/ui/app/actions.js index 0083543b4..d3d6c165e 100644 --- a/ui/app/actions.js +++ b/ui/app/actions.js @@ -8,6 +8,8 @@ var actions = { // sidebar state SIDEBAR_OPEN: 'UI_SIDEBAR_OPEN', SIDEBAR_CLOSE: 'UI_SIDEBAR_CLOSE', + showSidebar: showSidebar, + hideSidebar: hideSidebar, // menu state getNetworkStatus: 'getNetworkStatus', // transition state @@ -763,6 +765,19 @@ function useEtherscanProvider () { } } +function showSidebar () { + return { + type: actions.SIDEBAR_OPEN, + } +} + +function hideSidebar () { + return { + type: actions.SIDEBAR_CLOSE, + } +} + + function showLoadingIndication (message) { return { type: actions.SHOW_LOADING, diff --git a/ui/app/app.js b/ui/app/app.js index 021ef5f27..2a07b57d3 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -39,6 +39,7 @@ function App () { Component.call(this) } function mapStateToProps (state) { return { // state from plugin + sidebarOpen: state.appState.sidebarOpen, isLoading: state.appState.isLoading, loadingMessage: state.appState.loadingMessage, noActiveNotices: state.metamask.noActiveNotices, diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js index c5c6484cc..b72abb084 100644 --- a/ui/app/components/tx-view.js +++ b/ui/app/components/tx-view.js @@ -2,17 +2,29 @@ const Component = require('react').Component const connect = require('react-redux').connect const h = require('react-hyperscript') const inherits = require('util').inherits +const actions = require('../actions') +// slideout menu +const SlideoutMenu = require('react-burger-menu').slide +const WalletView = require('./wallet-view') + // const Identicon = require('./identicon') // const AccountDropdowns = require('./account-dropdowns').AccountDropdowns // const Content = require('./wallet-content-display') -module.exports = connect()(TxView) +module.exports = connect(mapStateToProps, mapDispatchToProps)(TxView) -// function mapStateToProps (state) { -// return { -// network: state.metamask.network, -// } -// } +function mapStateToProps (state) { + return { + sidebarOpen: state.appState.sidebarOpen, + } +} + +function mapDispatchToProps (dispatch) { + return { + showSidebar: () => {dispatch(actions.showSidebar())}, + hideSidebar: () => {dispatch(actions.hideSidebar())}, + } +} const contentDivider = h('div', { style: { @@ -40,9 +52,19 @@ TxView.prototype.render = function () { background: '#FFFFFF', } }, [ + // slideout - move to separate render func + h(SlideoutMenu, { + isOpen: this.props.sidebarOpen, + }, [ + h(WalletView, { + responsiveDisplayClassname: '.phone-visible' + }), + ]), h('div.phone-visible.fa.fa-bars', { - + onClick: () => { + this.props.sidebarOpen ? this.props.hideSidebar() : this.props.showSidebar() + } }, []), h('div.flex-row', { diff --git a/ui/app/main-container.js b/ui/app/main-container.js index fb768c386..870b3e7f0 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -1,8 +1,8 @@ const Component = require('react').Component const h = require('react-hyperscript') const inherits = require('util').inherits -const WalletView = require('./components/wallet-view') const TxView = require('./components/tx-view') +const WalletView = require('./components/wallet-view') const SlideoutMenu = require('react-burger-menu').slide module.exports = MainContainer @@ -29,14 +29,6 @@ MainContainer.prototype.render = function () { } }, [ - h(SlideoutMenu, { - isOpen: true, - }, [ - h(WalletView, { - responsiveDisplayClassname: '.phone-visible' - }), - ]), - h(WalletView, { style: { }, From 9ebdc343aa32c36bdff9debcecc3c75485939e2a Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 14:17:58 -0700 Subject: [PATCH 0048/1128] Implement custom sidebar, with close button --- ui/app/app.js | 68 +++++++++++++++++++++++++++++++- ui/app/components/tx-view.js | 13 ++---- ui/app/components/wallet-view.js | 14 ++++++- 3 files changed, 82 insertions(+), 13 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 2a07b57d3..7cf000d76 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -15,6 +15,11 @@ const ConfirmTxScreen = require('./conf-tx') // notice const NoticeScreen = require('./components/notice') const generateLostAccountsNotice = require('../lib/lost-accounts-notice') + +// slideout menu +const WalletView = require('./components/wallet-view') +const SlideoutMenu = require('react-burger-menu').slide + // other views const ConfigScreen = require('./config') const AddTokenScreen = require('./add-token') @@ -63,7 +68,7 @@ function mapStateToProps (state) { App.prototype.render = function () { var props = this.props - const { isLoading, loadingMessage, transForward, network } = props + const { isLoading, loadingMessage, transForward, network, sidebarOpen } = props const isLoadingNetwork = network === 'loading' && props.currentView.name !== 'config' const loadMessage = loadingMessage || isLoadingNetwork ? `Connecting to ${this.getNetworkName()}` : null @@ -82,8 +87,23 @@ App.prototype.render = function () { }, }, [ + // app bar this.renderAppBar(), + + // slideout - move to separate render func + this.renderSidebar(), + // h('div.phone-visible', {} ,[ + // h(SlideoutMenu, { + // isOpen: false, + // }, [ + // h(WalletView, { + // responsiveDisplayClassname: '.phone-visible', + // }), + // ]), + // ]) + + // network dropdown this.renderNetworkDropdown(), // this.renderDropdown(), @@ -98,6 +118,52 @@ App.prototype.render = function () { ) } +App.prototype.renderSidebar = function() { + if (!this.props.sidebarOpen) { + return null; + } + + return h('div.phone-visible', {}, [ + // content + h(WalletView, { + responsiveDisplayClassname: '.phone-visible', + style: { + zIndex: 26, + position: 'fixed', + top: '6%', + left: '0px', + right: '0px', + bottom: '0px', + opacity: '1', + visibility: 'visible', + transition: 'transform 0.3s ease-out', + willChange: 'transform', + transform: 'translateX(0%)', + overflowY: 'auto', + boxShadow: 'rgba(0, 0, 0, 0.15) 2px 2px 4px', + width: '85%', + height: '100%', + }, + }), + + // overlay + h('div', { + style: { + zIndex: 25, + position: 'fixed', + top: '6%', + left: '0px', + right: '0px', + bottom: '0px', + opacity: '1', + visibility: 'visible', + transition: 'opacity 0.3s ease-out, visibility 0.3s ease-out', + backgroundColor: 'rgba(0, 0, 0, 0.3)', + } + }, []) + ]) +} + App.prototype.renderAppBar = function () { if (window.METAMASK_UI_TYPE === 'notification') { return null diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js index b72abb084..2aaa32395 100644 --- a/ui/app/components/tx-view.js +++ b/ui/app/components/tx-view.js @@ -52,20 +52,13 @@ TxView.prototype.render = function () { background: '#FFFFFF', } }, [ - // slideout - move to separate render func - h(SlideoutMenu, { - isOpen: this.props.sidebarOpen, - }, [ - h(WalletView, { - responsiveDisplayClassname: '.phone-visible' - }), - ]), - h('div.phone-visible.fa.fa-bars', { onClick: () => { + console.log("click received") this.props.sidebarOpen ? this.props.hideSidebar() : this.props.showSidebar() } - }, []), + }, [ + ]), h('div.flex-row', { style: { diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index 63335dd93..2a626a930 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -12,16 +12,17 @@ module.exports = connect(mapStateToProps, mapDispatchToProps)(WalletView) function mapStateToProps (state) { return { network: state.metamask.network, + sidebarOpen: state.appState.sidebarOpen, } } function mapDispatchToProps (dispatch) { return { showSendPage: () => {dispatch(actions.showSendPage())}, + hideSidebar: () => {dispatch(actions.hideSidebar())}, } } - inherits(WalletView, Component) function WalletView () { Component.call(this) @@ -31,7 +32,7 @@ const noop = () => {} WalletView.prototype.render = function () { const selected = '0x82df11beb942BEeeD58d466fCb0F0791365C7684' - const { network, responsiveDisplayClassname } = this.props + const { network, responsiveDisplayClassname, style } = this.props return h('div.wallet-view.flex-column' + (responsiveDisplayClassname || ''), { style: { @@ -41,9 +42,18 @@ WalletView.prototype.render = function () { flexBasis: '230px', // .333*345 height: '82vh', background: '#FAFAFA', // TODO: add to reusable colors + ...style, } }, [ + h('div.phone-visible.fa.fa-bars', { + onClick: () => { + console.log("click received-inwalletview") + this.props.hideSidebar() + } + }, [ + ]), + // TODO: Separate component: wallet account details h('div.flex-row.flex-center', { style: { From 84aba21ae9f00d5d82d8087de6938fa9526bd3d4 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 14:19:13 -0700 Subject: [PATCH 0049/1128] Add notes for overlay click action --- ui/app/app.js | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/app/app.js b/ui/app/app.js index 7cf000d76..3279e0333 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -147,6 +147,7 @@ App.prototype.renderSidebar = function() { }), // overlay + // TODO: add onClick for overlay to close sidebar h('div', { style: { zIndex: 25, From 8a39ef03c298f846171173c38912d3386d688af2 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 17:49:04 -0700 Subject: [PATCH 0050/1128] Hook up css animation --- package.json | 2 + ui/app/app.js | 109 +++++++++++++++++++++++-------------- ui/app/css/transitions.css | 5 ++ 3 files changed, 75 insertions(+), 41 deletions(-) diff --git a/package.json b/package.json index c1b228272..98d0708a4 100644 --- a/package.json +++ b/package.json @@ -108,6 +108,7 @@ "pumpify": "^1.3.4", "qrcode-npm": "0.0.3", "react": "^15.0.2", + "react-addons-css-transition-group": "^15.6.0", "react-burger-menu": "^2.1.4", "react-dom": "^15.5.4", "react-hyperscript": "^2.2.2", @@ -116,6 +117,7 @@ "react-select": "^1.0.0-rc.2", "react-simple-file-input": "^1.0.0", "react-tooltip-component": "^0.3.0", + "react-transition-group": "^2.2.0", "readable-stream": "^2.1.2", "redux": "^3.0.5", "redux-logger": "^2.10.2", diff --git a/ui/app/app.js b/ui/app/app.js index 3279e0333..9bda4966d 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -35,6 +35,7 @@ const QrView = require('./components/qr-code') const HDCreateVaultComplete = require('./keychains/hd/create-vault-complete') const HDRestoreVaultScreen = require('./keychains/hd/restore-vault') const RevealSeedConfirmation = require('./keychains/hd/recover-seed/confirmation') +const ReactCSSTransitionGroup = require('react-addons-css-transition-group') module.exports = connect(mapStateToProps)(App) @@ -119,49 +120,75 @@ App.prototype.render = function () { } App.prototype.renderSidebar = function() { - if (!this.props.sidebarOpen) { - return null; - } + // if (!this.props.sidebarOpen) { + // return null; + // } - return h('div.phone-visible', {}, [ - // content - h(WalletView, { - responsiveDisplayClassname: '.phone-visible', - style: { - zIndex: 26, - position: 'fixed', - top: '6%', - left: '0px', - right: '0px', - bottom: '0px', - opacity: '1', - visibility: 'visible', - transition: 'transform 0.3s ease-out', - willChange: 'transform', - transform: 'translateX(0%)', - overflowY: 'auto', - boxShadow: 'rgba(0, 0, 0, 0.15) 2px 2px 4px', - width: '85%', - height: '100%', - }, - }), - - // overlay - // TODO: add onClick for overlay to close sidebar - h('div', { - style: { - zIndex: 25, - position: 'fixed', - top: '6%', - left: '0px', - right: '0px', - bottom: '0px', - opacity: '1', - visibility: 'visible', - transition: 'opacity 0.3s ease-out, visibility 0.3s ease-out', - backgroundColor: 'rgba(0, 0, 0, 0.3)', + return h('div', { + }, [ + h('style', ` + .sidebar-enter { + transition: transform 500ms ease-in-out; + transform: translateX(-100%); } - }, []) + .sidebar-enter.sidebar-enter-active { + transition: transform 500ms ease-in-out; + transform: translateX(0%); + } + .sidebar-leave { + transition: transform 500ms ease-in-out; + transform: translateX(0%); + } + .sidebar-leave.sidebar-leave-active { + transition: transform 500ms ease-in-out; + transform: translateX(-100%); + } + `), + + h(ReactCSSTransitionGroup, { + transitionName: 'sidebar', + transitionEnterTimeout: 500, + transitionLeaveTimeout: 500, + }, [ + // content + this.props.sidebarOpen ? h(WalletView, { + responsiveDisplayClassname: '.sidebar', + style: { + zIndex: 26, + position: 'fixed', + top: '6%', + left: '0px', + right: '0px', + bottom: '0px', + opacity: '1', + visibility: 'visible', + // transition: 'transform 1s ease-in', + willChange: 'transform', + // transform: 'translateX(300px)', + overflowY: 'auto', + boxShadow: 'rgba(0, 0, 0, 0.15) 2px 2px 4px', + width: '85%', + height: '100%', + }, + }) : undefined, + + // overlay + // TODO: add onClick for overlay to close sidebar + this.props.sidebarOpen ? h('div', { + style: { + zIndex: 25, + position: 'fixed', + top: '6%', + left: '0px', + right: '0px', + bottom: '0px', + opacity: '1', + visibility: 'visible', + // transition: 'opacity 0.3s ease-out, visibility 0.3s ease-out', + backgroundColor: 'rgba(0, 0, 0, 0.3)', + } + }, []) : undefined, + ]) ]) } diff --git a/ui/app/css/transitions.css b/ui/app/css/transitions.css index 393a944f9..5f9f31ed7 100644 --- a/ui/app/css/transitions.css +++ b/ui/app/css/transitions.css @@ -22,6 +22,11 @@ transition: transform 300ms ease-in; } +.sidebar.from-left { + transform: translateX(-320px); + transition: transform 300ms ease-in; +} + /* loader transitions */ .loader-enter, .loader-leave-active { opacity: 0.0; From c312f341199b8d05e7e78c4203d7953bdf5a184e Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 17:50:27 -0700 Subject: [PATCH 0051/1128] Move overlay out of transition area --- ui/app/app.js | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 9bda4966d..8552282ad 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -172,23 +172,24 @@ App.prototype.renderSidebar = function() { }, }) : undefined, - // overlay - // TODO: add onClick for overlay to close sidebar - this.props.sidebarOpen ? h('div', { - style: { - zIndex: 25, - position: 'fixed', - top: '6%', - left: '0px', - right: '0px', - bottom: '0px', - opacity: '1', - visibility: 'visible', - // transition: 'opacity 0.3s ease-out, visibility 0.3s ease-out', - backgroundColor: 'rgba(0, 0, 0, 0.3)', - } - }, []) : undefined, - ]) + ]), + + // overlay + // TODO: add onClick for overlay to close sidebar + this.props.sidebarOpen ? h('div', { + style: { + zIndex: 25, + position: 'fixed', + top: '6%', + left: '0px', + right: '0px', + bottom: '0px', + opacity: '1', + visibility: 'visible', + // transition: 'opacity 0.3s ease-out, visibility 0.3s ease-out', + backgroundColor: 'rgba(0, 0, 0, 0.3)', + } + }, []) : undefined, ]) } From 46da924d485cf10be2965f4126609aa55707bfb5 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 18:24:30 -0700 Subject: [PATCH 0052/1128] Add Ethereum Logo --- app/images/eth_logo.svg | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 app/images/eth_logo.svg diff --git a/app/images/eth_logo.svg b/app/images/eth_logo.svg new file mode 100644 index 000000000..894bd70dd --- /dev/null +++ b/app/images/eth_logo.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file From 49e37137042ba2f23dd48db92365f468f9d59e13 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 18:24:48 -0700 Subject: [PATCH 0053/1128] Cleanup send, move send token into separate func to make room for send ETH --- ui/app/app.js | 1 + ui/app/send.js | 254 ++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 220 insertions(+), 35 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 8552282ad..53801ed52 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -202,6 +202,7 @@ App.prototype.renderAppBar = function () { const state = this.state || {} const isNetworkMenuOpen = state.isNetworkMenuOpen || false + console.log("___rendering app header;;;") return ( h('.full-width', { diff --git a/ui/app/send.js b/ui/app/send.js index de9e64ad1..ab527019f 100644 --- a/ui/app/send.js +++ b/ui/app/send.js @@ -61,7 +61,6 @@ SendTransactionScreen.prototype.render = function () { h('div.flex-column.flex-grow', { style: { - // overflow: 'scroll', minWidth: '355px', // TODO: maxWidth TBD, use home.html }, }, [ @@ -87,10 +86,6 @@ SendTransactionScreen.prototype.render = function () { }), ]), - // - // Required Fields - // - h('h3.flex-center', { style: { marginTop: '-18px', @@ -213,9 +208,225 @@ SendTransactionScreen.prototype.render = function () { ]), - // - // Optional Fields - // + h('section.flex-column.flex-center', { + style: { + marginBottom: '10px', + }, + }, [ + h('div.flex-row.flex-center', { + style: { + fontSize: '12px', + width: '100%', + justifyContent: 'flex-start', + } + },[ + h('span', { style: {} }, ['Transaction Memo (optional)']), + ]), + + h('input.large-input', { + name: 'memo', + placeholder: '', + type: 'string', + style: { + marginRight: '6px', + }, + }), + ]), + ]), + + // Buttons underneath card + h('section.flex-column.flex-center', [ + + h('button.btn-light', { + onClick: this.onSubmit.bind(this), + style: { + marginTop: '8px', + width: '8em', + background: '#FFFFFF' + }, + }, 'Next'), + + h('button.btn-light', { + onClick: this.back.bind(this), + style: { + background: '#F7F7F7', // $alabaster + border: 'none', + opacity: 1, + width: '8em', + }, + }, 'Cancel'), + ]), + ]) + + ) +} + +// WIP - hyperscript for renderSendToken - hook up later +SendTransactionScreen.prototype.renderSendToken = function () { + this.persistentFormParentId = 'send-tx-form' + + const props = this.props + const { + address, + account, + identity, + network, + identities, + addressBook, + conversionRate, + currentCurrency, + } = props + + return ( + + h('div.flex-column.flex-grow', { + style: { + minWidth: '355px', // TODO: maxWidth TBD, use home.html + }, + }, [ + + // Main Send token Card + h('div.send-screen.flex-column.flex-grow', { + style: { + marginLeft: '3.5%', + marginRight: '3.5%', + background: '#FFFFFF', // $background-white + boxShadow: '0 2px 4px 0 rgba(0,0,0,0.08)', + } + }, [ + h('section.flex-center.flex-row', { + style: { + zIndex: 15, // $token-icon-z-index + marginTop: '-35px', + } + }, [ + h(Identicon, { + address: ARAGON, + diameter: 76, + }), + ]), + + h('h3.flex-center', { + style: { + marginTop: '-18px', + fontSize: '16px', + }, + }, [ + 'Send Tokens', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '12px', + }, + }, [ + 'Send Tokens to anyone with an Ethereum account', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + marginTop: '2px', + fontSize: '12px', + }, + }, [ + 'Your Aragon Token Balance is:', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '36px', + marginTop: '8px', + }, + }, [ + '2.34', + ]), + + h('h3.flex-center', { + style: { + textAlign: 'center', + fontSize: '12px', + marginTop: '4px', + }, + }, [ + 'ANT', + ]), + + // error message + props.error && h('span.error.flex-center', props.error), + + // 'to' field + h('section.flex-row.flex-center', { + style: { + fontSize: '12px', + }, + }, [ + h(EnsInput, { + name: 'address', + placeholder: 'Recipient Address', + onChange: this.recipientDidChange.bind(this), + network, + identities, + addressBook, + }), + ]), + + // 'amount' and send button + h('section.flex-column.flex-center', [ + h('div.flex-row.flex-center', { + style: { + fontSize: '12px', + width: '100%', + justifyContent: 'space-between', + } + },[ + h('span', { style: {} }, ['Amount']), + h('span', { style: {} }, ['Token <> USD']), + ]), + + h('input.large-input', { + name: 'amount', + placeholder: '0', + type: 'number', + style: { + marginRight: '6px', + fontSize: '12px', + }, + dataset: { + persistentFormId: 'tx-amount', + }, + }), + + ]), + + h('section.flex-column.flex-center', [ + h('div.flex-row.flex-center', { + style: { + fontSize: '12px', + width: '100%', + justifyContent: 'space-between', + } + },[ + h('span', { style: {} }, ['Gas Fee:']), + h('span', { style: { fontSize: '8px' } }, ['What\'s this?']), + ]), + + h('input.large-input', { + name: 'Gas Fee', + placeholder: '0', + type: 'number', + style: { + fontSize: '12px', + marginRight: '6px', + }, + // dataset: { + // persistentFormId: 'tx-amount', + // }, + }), + + ]), h('section.flex-column.flex-center', { style: { @@ -241,32 +452,6 @@ SendTransactionScreen.prototype.render = function () { }, }), ]), - - // h('h3.flex-center.text-transform-uppercase', { - // style: { - // background: '#EBEBEB', - // color: '#AEAEAE', - // marginTop: '16px', - // marginBottom: '16px', - // }, - // }, [ - // 'Transaction Data (optional)', - // ]), - - // // 'data' field - // h('section.flex-column.flex-center', [ - // h('input.large-input', { - // name: 'txData', - // placeholder: '0x01234', - // style: { - // width: '100%', - // resize: 'none', - // }, - // dataset: { - // persistentFormId: 'tx-data', - // }, - // }), - // ]), ]), // Buttons underneath card @@ -290,7 +475,6 @@ SendTransactionScreen.prototype.render = function () { width: '8em', }, }, 'Cancel'), - ]), ]) From 61b4b1f947230a8d5157fab27ee8ec82e0826e02 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 19:13:17 -0700 Subject: [PATCH 0054/1128] Ensure app-header is rendered in responsive layout --- app/scripts/lib/is-popup-or-notification.js | 2 +- ui/app/app.js | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app/scripts/lib/is-popup-or-notification.js b/app/scripts/lib/is-popup-or-notification.js index 693fa8751..73a812d5f 100644 --- a/app/scripts/lib/is-popup-or-notification.js +++ b/app/scripts/lib/is-popup-or-notification.js @@ -1,6 +1,6 @@ module.exports = function isPopupOrNotification () { const url = window.location.href - if (url.match(/popup.html$/)) { + if (url.match(/popup.html$/) || url.match(/home.html$/)) { return 'popup' } else { return 'notification' diff --git a/ui/app/app.js b/ui/app/app.js index 53801ed52..7a855813f 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -214,7 +214,8 @@ App.prototype.renderAppBar = function () { alignItems: 'center', visibility: props.isUnlocked ? 'visible' : 'none', background: '#EFEFEF', // $gallery - height: '11vh', + height: '12vh', + maxHeight: '60px', position: 'relative', zIndex: 12, }, From dd4586ee84ea0e6a74ad4cd6b6f058169ddd9129 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 19:26:46 -0700 Subject: [PATCH 0055/1128] Adjust sidebar transition using @cjeria\'s feedback --- app/scripts/lib/environment-type.js | 10 ++++++++++ ui/app/app.js | 16 ++++++---------- 2 files changed, 16 insertions(+), 10 deletions(-) create mode 100644 app/scripts/lib/environment-type.js diff --git a/app/scripts/lib/environment-type.js b/app/scripts/lib/environment-type.js new file mode 100644 index 000000000..7966926eb --- /dev/null +++ b/app/scripts/lib/environment-type.js @@ -0,0 +1,10 @@ +module.exports = function environmentType () { + const url = window.location.href + if (url.match(/popup.html$/)) { + return 'popup' + } else if (url.match(/home.html$/)) { + return 'responsive' + } else { + return 'notification' + } +} diff --git a/ui/app/app.js b/ui/app/app.js index 7a855813f..21eb44b8b 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -128,27 +128,27 @@ App.prototype.renderSidebar = function() { }, [ h('style', ` .sidebar-enter { - transition: transform 500ms ease-in-out; + transition: transform 300ms ease-in-out; transform: translateX(-100%); } .sidebar-enter.sidebar-enter-active { - transition: transform 500ms ease-in-out; + transition: transform 300ms ease-in-out; transform: translateX(0%); } .sidebar-leave { - transition: transform 500ms ease-in-out; + transition: transform 200ms ease-out; transform: translateX(0%); } .sidebar-leave.sidebar-leave-active { - transition: transform 500ms ease-in-out; + transition: transform 200ms ease-out; transform: translateX(-100%); } `), h(ReactCSSTransitionGroup, { transitionName: 'sidebar', - transitionEnterTimeout: 500, - transitionLeaveTimeout: 500, + transitionEnterTimeout: 300, + transitionLeaveTimeout: 200, }, [ // content this.props.sidebarOpen ? h(WalletView, { @@ -162,9 +162,7 @@ App.prototype.renderSidebar = function() { bottom: '0px', opacity: '1', visibility: 'visible', - // transition: 'transform 1s ease-in', willChange: 'transform', - // transform: 'translateX(300px)', overflowY: 'auto', boxShadow: 'rgba(0, 0, 0, 0.15) 2px 2px 4px', width: '85%', @@ -186,7 +184,6 @@ App.prototype.renderSidebar = function() { bottom: '0px', opacity: '1', visibility: 'visible', - // transition: 'opacity 0.3s ease-out, visibility 0.3s ease-out', backgroundColor: 'rgba(0, 0, 0, 0.3)', } }, []) : undefined, @@ -202,7 +199,6 @@ App.prototype.renderAppBar = function () { const state = this.state || {} const isNetworkMenuOpen = state.isNetworkMenuOpen || false - console.log("___rendering app header;;;") return ( h('.full-width', { From 41250f9769d3224e0b42821058cd6445fa7efaca Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 19:48:33 -0700 Subject: [PATCH 0056/1128] Adjust header spacing for 500px and 900px heights --- ui/app/app.js | 17 ++++------------- ui/app/main-container.js | 2 +- 2 files changed, 5 insertions(+), 14 deletions(-) diff --git a/ui/app/app.js b/ui/app/app.js index 21eb44b8b..19d80a728 100644 --- a/ui/app/app.js +++ b/ui/app/app.js @@ -88,21 +88,11 @@ App.prototype.render = function () { }, }, [ - // app bar this.renderAppBar(), - // slideout - move to separate render func + // sidebar this.renderSidebar(), - // h('div.phone-visible', {} ,[ - // h(SlideoutMenu, { - // isOpen: false, - // }, [ - // h(WalletView, { - // responsiveDisplayClassname: '.phone-visible', - // }), - // ]), - // ]) // network dropdown this.renderNetworkDropdown(), @@ -113,7 +103,7 @@ App.prototype.render = function () { loadingMessage: loadMessage, }), - // panel content + // content this.renderPrimary(), ]) ) @@ -202,7 +192,7 @@ App.prototype.renderAppBar = function () { return ( h('.full-width', { - height: '38px', + style: {} }, [ h('.app-header.flex-row.flex-space-between', { @@ -210,6 +200,7 @@ App.prototype.renderAppBar = function () { alignItems: 'center', visibility: props.isUnlocked ? 'visible' : 'none', background: '#EFEFEF', // $gallery + paddingTop: '1.5vh', height: '12vh', maxHeight: '60px', position: 'relative', diff --git a/ui/app/main-container.js b/ui/app/main-container.js index 870b3e7f0..62a8bdb7b 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -17,7 +17,7 @@ MainContainer.prototype.render = function () { return h('div', { style: { position: 'absolute', - marginTop: '6vh', + marginTop: '35px', width: '98%', zIndex: 20, boxShadow: '0 0 7px 0 rgba(0,0,0,0.08)', From b70a399faa30c478ffffb5607cfe36001745adc7 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 21:53:40 -0700 Subject: [PATCH 0057/1128] Isolate container component, add refactor notes --- ui/app/account-and-transaction-details.js | 39 +++++++++++++++++++++++ ui/app/main-container.js | 37 +++++++++++---------- 2 files changed, 57 insertions(+), 19 deletions(-) create mode 100644 ui/app/account-and-transaction-details.js diff --git a/ui/app/account-and-transaction-details.js b/ui/app/account-and-transaction-details.js new file mode 100644 index 000000000..9386b2314 --- /dev/null +++ b/ui/app/account-and-transaction-details.js @@ -0,0 +1,39 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits +// Main Views +const TxView = require('./components/tx-view') +const WalletView = require('./components/wallet-view') + +module.exports = AccountAndTransactionDetails + +inherits(AccountAndTransactionDetails, Component) +function AccountAndTransactionDetails () { + Component.call(this) +} + +AccountAndTransactionDetails.prototype.render = function () { + console.log('atdR') + return h('div', { + style: { + display: 'flex', + flex: '1 0 auto', + }, + }, [ + // wallet + h(WalletView, { + style: { + }, + responsiveDisplayClassname: '.lap-visible', + }, [ + ]), + + // transaction + h(TxView, { + style: { + } + }, [ + ]), + ]) +} + diff --git a/ui/app/main-container.js b/ui/app/main-container.js index 62a8bdb7b..5194c2343 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -4,6 +4,7 @@ const inherits = require('util').inherits const TxView = require('./components/tx-view') const WalletView = require('./components/wallet-view') const SlideoutMenu = require('react-burger-menu').slide +const AccountAndTransactionDetails = require('./account-and-transaction-details') module.exports = MainContainer @@ -14,6 +15,22 @@ function MainContainer () { MainContainer.prototype.render = function () { + // 1. Fixing Mobile View: flush container + // media query for mobile view: + // position: absolute; + // margin-top: 35px; + // width: 100%; + // + // 2. Fix responsive sizing - smaller + // https://puu.sh/x0gDA/5ff3b734eb.png + // + // 3. summarize: + // switch statement goes inside MainContainer, + // or a method in renderPrimary + // - pass resulting h() to MainContainer + // - error checking in separate func + // - router in separate func + return h('div', { style: { position: 'absolute', @@ -27,24 +44,6 @@ MainContainer.prototype.render = function () { alignItems: 'stretch', overflowY: 'scroll', } - }, [ - - h(WalletView, { - style: { - }, - responsiveDisplayClassname: '.lap-visible', - }, [ - ]), - - h(TxView, { - style: { - // flexGrow: 2 - // width: '66.66%', - // height: '82vh', - // background: '#FFFFFF', - } - }, [ - ]), - ]) + }, [h(AccountAndTransactionDetails, {}, [])]) } From ff7ba83a6c62abb42c0141d4cd5a53a7870a9199 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Wed, 2 Aug 2017 22:09:12 -0700 Subject: [PATCH 0058/1128] Add note for styling buttons --- ui/app/main-container.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ui/app/main-container.js b/ui/app/main-container.js index 5194c2343..84d8c5435 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -30,6 +30,8 @@ MainContainer.prototype.render = function () { // - pass resulting h() to MainContainer // - error checking in separate func // - router in separate func + // + // 4. style all buttons as + e.preventDefault()} + > + Import an account + +
) } diff --git a/mascara/src/app/first-time/index.css b/mascara/src/app/first-time/index.css new file mode 100644 index 000000000..3d4f17dbb --- /dev/null +++ b/mascara/src/app/first-time/index.css @@ -0,0 +1,65 @@ +.first-time-flow { + height: 100vh; + width: 100vw; + background-color: #FFF; +} + +.create-password { + display: flex; + flex-flow: column nowrap; + margin: 67px 0 0 146px; + max-width: 350px; +} + +.create-password__title { + height: 102px; + width: 280px; + color: #1B344D; + font-size: 40px; + font-weight: 500; + line-height: 51px; + margin-bottom: 24px; +} + +.create-password__confirm-input { + margin-top: 15px; +} + +.first-time-flow__input { + width: 350px; + font-size: 18px; + line-height: 24px; + padding: 15px 28px; + border: 1px solid #CDCDCD; + background-color: #FFFFFF; +} + +.first-time-flow__input::placeholder { + color: #9B9B9B; + font-weight: 200; +} + +.first-time-flow__button { + height: 54px; + width: 198px; + box-shadow: 0 2px 4px 0 rgba(0,0,0,0.14); + color: #FFFFFF; + font-size: 20px; + font-weight: 500; + line-height: 26px; + text-align: center; + text-transform: uppercase; + margin: 35px 0 14px; + transition: 200ms ease-in-out; +} + +button.first-time-flow__button:hover { + transform: scale(1); + background-color: rgba(247, 134, 28, 0.9); +} + +.first-time-flow__link { + color: #1B344D; + font-size: 18px; + line-height: 23px; +} \ No newline at end of file diff --git a/mascara/src/app/first-time/index.js b/mascara/src/app/first-time/index.js index a2cb8d71c..1a9a00eec 100644 --- a/mascara/src/app/first-time/index.js +++ b/mascara/src/app/first-time/index.js @@ -48,7 +48,11 @@ export default class FirstTimeFlow extends Component { } render() { - return
{this.renderScreen()}
+ return ( +
+ {this.renderScreen()} +
+ ) } } diff --git a/ui/css.js b/ui/css.js index 043363cd7..21b311c28 100644 --- a/ui/css.js +++ b/ui/css.js @@ -9,6 +9,7 @@ var cssFiles = { 'lib.css': fs.readFileSync(path.join(__dirname, '/app/css/lib.css'), 'utf8'), 'index.css': fs.readFileSync(path.join(__dirname, '/app/css/index.css'), 'utf8'), 'transitions.css': fs.readFileSync(path.join(__dirname, '/app/css/transitions.css'), 'utf8'), + 'first-time.css': fs.readFileSync(path.join(__dirname, '../mascara/src/app/first-time/index.css'), 'utf8'), 'react-tooltip-component.css': fs.readFileSync(path.join(__dirname, '..', 'node_modules', 'react-tooltip-component', 'dist', 'react-tooltip-component.css'), 'utf8'), 'react-css': fs.readFileSync(path.join(__dirname, '..', 'node_modules', 'react-select', 'dist', 'react-select.css'), 'utf8'), } From 4e446410eb76c1bd5d27b6dd4f413bfbf3df0e2d Mon Sep 17 00:00:00 2001 From: Jacky Chan Date: Fri, 18 Aug 2017 05:08:36 -0700 Subject: [PATCH 0436/1128] Add Breadcrumbs --- mascara/src/app/first-time/breadcrumbs.js | 24 +++++++++++++++++++ .../app/first-time/create-password-screen.js | 5 ++-- mascara/src/app/first-time/index.css | 20 ++++++++++++++++ 3 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 mascara/src/app/first-time/breadcrumbs.js diff --git a/mascara/src/app/first-time/breadcrumbs.js b/mascara/src/app/first-time/breadcrumbs.js new file mode 100644 index 000000000..cbd0da1a1 --- /dev/null +++ b/mascara/src/app/first-time/breadcrumbs.js @@ -0,0 +1,24 @@ +import React, {Component, PropTypes} from 'react' + +export default class Breadcrumbs extends Component { + + static propTypes = { + total: PropTypes.number, + currentIndex: PropTypes.number + }; + + render() { + const {total, currentIndex} = this.props + return ( +
+ {Array(total).fill().map((_, i) => ( +
+ ))} +
+ ); + } + +} diff --git a/mascara/src/app/first-time/create-password-screen.js b/mascara/src/app/first-time/create-password-screen.js index 1313de561..4b4cea51d 100644 --- a/mascara/src/app/first-time/create-password-screen.js +++ b/mascara/src/app/first-time/create-password-screen.js @@ -1,4 +1,5 @@ import React, {Component, PropTypes} from 'react' +import Breadcrumbs from './breadcrumbs' export default class CreatePasswordScreen extends Component { @@ -32,12 +33,12 @@ export default class CreatePasswordScreen extends Component { e.preventDefault()} > Import an account -
+
) } diff --git a/mascara/src/app/first-time/index.css b/mascara/src/app/first-time/index.css index 3d4f17dbb..dbcde5004 100644 --- a/mascara/src/app/first-time/index.css +++ b/mascara/src/app/first-time/index.css @@ -25,6 +25,10 @@ margin-top: 15px; } +.create-password__import-link { + margin-bottom: 54px; +} + .first-time-flow__input { width: 350px; font-size: 18px; @@ -62,4 +66,20 @@ button.first-time-flow__button:hover { color: #1B344D; font-size: 18px; line-height: 23px; +} + +.breadcrumbs { + display: flex; + flex-flow: row nowrap; +} + +.breadcrumb { + height: 10px; + width: 10px; + border: 1px solid #979797; + border-radius: 50%; +} + +.breadcrumb + .breadcrumb { + margin-left: 10px; } \ No newline at end of file From e1497fafa64b5f8e25407611709920dc5e0eaf77 Mon Sep 17 00:00:00 2001 From: Jacky Chan Date: Mon, 21 Aug 2017 04:56:09 -0700 Subject: [PATCH 0437/1128] Add UniqueImageScreen --- mascara/src/app/first-time/breadcrumbs.js | 1 + .../app/first-time/create-password-screen.js | 116 ++++++++++++------ mascara/src/app/first-time/index.css | 56 ++++++++- mascara/src/app/first-time/index.js | 51 +++++++- mascara/src/app/first-time/loading-screen.js | 11 ++ mascara/src/app/first-time/spinner.js | 70 +++++++++++ .../src/app/first-time/unique-image-screen.js | 40 ++++++ package.json | 1 + ui/app/actions.js | 27 ++-- ui/app/app.js | 24 ++-- 10 files changed, 331 insertions(+), 66 deletions(-) create mode 100644 mascara/src/app/first-time/loading-screen.js create mode 100644 mascara/src/app/first-time/spinner.js create mode 100644 mascara/src/app/first-time/unique-image-screen.js diff --git a/mascara/src/app/first-time/breadcrumbs.js b/mascara/src/app/first-time/breadcrumbs.js index cbd0da1a1..f8460d200 100644 --- a/mascara/src/app/first-time/breadcrumbs.js +++ b/mascara/src/app/first-time/breadcrumbs.js @@ -13,6 +13,7 @@ export default class Breadcrumbs extends Component {
{Array(total).fill().map((_, i) => (
diff --git a/mascara/src/app/first-time/create-password-screen.js b/mascara/src/app/first-time/create-password-screen.js index 4b4cea51d..e4b0425ce 100644 --- a/mascara/src/app/first-time/create-password-screen.js +++ b/mascara/src/app/first-time/create-password-screen.js @@ -1,46 +1,92 @@ import React, {Component, PropTypes} from 'react' +import {connect} from 'react-redux'; +import {createNewVaultAndKeychain} from '../../../../ui/app/actions' +import LoadingScreen from './loading-screen' import Breadcrumbs from './breadcrumbs' -export default class CreatePasswordScreen extends Component { +class CreatePasswordScreen extends Component { + static propTypes = { + isLoading: PropTypes.bool.isRequired, + createAccount: PropTypes.func.isRequired, + next: PropTypes.func.isRequired + } state = { password: '', confirmPassword: '' } - render() { - return ( -
-
- Create Password -
- this.setState({password: e.target.value})} - /> - this.setState({confirmPassword: e.target.value})} - /> - - e.preventDefault()} - > - Import an account - - -
- ) + isValid() { + const {password, confirmPassword} = this.state; + + if (!password || !confirmPassword) { + return false; + } + + if (password.length < 8) { + return false; + } + + return password === confirmPassword; } -} \ No newline at end of file + createAccount = () => { + if (!this.isValid()) { + return; + } + + const {password} = this.state; + const {createAccount, next} = this.props; + + createAccount(password) + .then(next); + } + + render() { + const { isLoading } = this.props + + return isLoading + ? + : ( +
+
+ Create Password +
+ this.setState({password: e.target.value})} + /> + this.setState({confirmPassword: e.target.value})} + /> + + e.preventDefault()} + > + Import an account + + +
+ ) + } +} + +export default connect( + ({ appState: { isLoading } }) => ({ isLoading }), + dispatch => ({ + createAccount: password => dispatch(createNewVaultAndKeychain(password)) + }) +)(CreatePasswordScreen) diff --git a/mascara/src/app/first-time/index.css b/mascara/src/app/first-time/index.css index dbcde5004..5193b412f 100644 --- a/mascara/src/app/first-time/index.css +++ b/mascara/src/app/first-time/index.css @@ -1,18 +1,21 @@ +$primary + .first-time-flow { height: 100vh; width: 100vw; background-color: #FFF; } -.create-password { +.create-password, +.unique-image { display: flex; flex-flow: column nowrap; margin: 67px 0 0 146px; - max-width: 350px; + max-width: 35rem; } -.create-password__title { - height: 102px; +.create-password__title, +.unique-image__title { width: 280px; color: #1B344D; font-size: 40px; @@ -29,6 +32,23 @@ margin-bottom: 54px; } +.unique-image__title { + margin-top: 24px; +} + +.unique-image__body-text { + width: 335px; + color: #1B344D; + font-size: 16px; + line-height: 23px; + font-family: Montserrat UltraLight; +} + +.unique-image__body-text + +.unique-image__body-text { + margin-top: 24px; +} + .first-time-flow__input { width: 350px; font-size: 18px; @@ -57,6 +77,11 @@ transition: 200ms ease-in-out; } +button.first-time-flow__button[disabled] { + background-color: rgba(247, 134, 28, 0.9); + opacity: .6; +} + button.first-time-flow__button:hover { transform: scale(1); background-color: rgba(247, 134, 28, 0.9); @@ -82,4 +107,27 @@ button.first-time-flow__button:hover { .breadcrumb + .breadcrumb { margin-left: 10px; +} + +.loading-screen { + width: 100vw; + height: 100vh; + display: flex; + flex-flow: column nowrap; + align-items: center; + margin-top: 143px; +} + +.loading-screen .spinner { + margin-bottom: 25px; + width: 100px; + height: 100px; +} + +.loading-screen__message { + color: #1B344D; + font-size: 20px; + line-height: 26px; + text-align: center; + font-family: Montserrat UltraLight; } \ No newline at end of file diff --git a/mascara/src/app/first-time/index.js b/mascara/src/app/first-time/index.js index 1a9a00eec..4bc03c09c 100644 --- a/mascara/src/app/first-time/index.js +++ b/mascara/src/app/first-time/index.js @@ -1,14 +1,20 @@ import React, {Component, PropTypes} from 'react' +import {connect} from 'react-redux'; import CreatePasswordScreen from './create-password-screen' +import UniqueImageScreen from './unique-image-screen' -export default class FirstTimeFlow extends Component { +class FirstTimeFlow extends Component { static propTypes = { - screenType: PropTypes.string + isInitialized: PropTypes.bool, + seedWords: PropTypes.string, + noActiveNotices: PropTypes.bool }; static defaultProps = { - screenType: FirstTimeFlow.CREATE_PASSWORD + isInitialized: false, + seedWords: '', + noActiveNotices: false }; static SCREEN_TYPE = { @@ -20,9 +26,23 @@ export default class FirstTimeFlow extends Component { BUY_ETHER: 'buy_ether' }; - static getScreenType = ({isInitialized, noActiveNotices, seedWords}) => { + constructor(props) { + super(props); + this.state = { + screenType: this.getScreenType() + } + } + + setScreenType(screenType) { + this.setState({ screenType }) + } + + getScreenType() { + const {isInitialized, seedWords, noActiveNotices} = this.props; const {SCREEN_TYPE} = FirstTimeFlow + return SCREEN_TYPE.UNIQUE_IMAGE + if (!isInitialized) { return SCREEN_TYPE.CREATE_PASSWORD } @@ -39,9 +59,19 @@ export default class FirstTimeFlow extends Component { renderScreen() { const {SCREEN_TYPE} = FirstTimeFlow - switch (this.props.screenType) { + switch (this.state.screenType) { case SCREEN_TYPE.CREATE_PASSWORD: - return + return ( + this.setScreenType(SCREEN_TYPE.UNIQUE_IMAGE)} + /> + ) + case SCREEN_TYPE.UNIQUE_IMAGE: + return ( + this.setScreenType(SCREEN_TYPE.TERM_OF_USE)} + /> + ) default: return

)QU zmQoa<0BD3JvnWEe^if2^7doyk& zwoSTh0j8NB-)pToKZq$!*gMv}7hSqMvu{QR@$@+X%Ho+v-g+M+8@4NAVrb^GTTgpQ zGM|X62WFNn$<=JK z6{+ameOE%t0uj*CcT2^s#NMqZf|!-H8`zv^W=RLriuI%m!9KB7U2pX0O7E zSZVhCUX0vsX5`QgbDS!T%9)mWPYqgujpG5C(078WV10jTG9>Vrf}Y27n=j z;QWqS6q*zRI!mqZQ>2`p-bB? z@XiUO#-byfoV<`t0p0UGxho&4=OcCLp~dG`Wqa2W9?kT2oM*KWi%qynHX%q!xs1!? z0Ubdi0=MB|&vrCFOO&6(|Bz^w%Y6_JK){AGO2GJ@nG<%iVA)%wgR=~knl*FR%oU1= z_xr*?YAkh&F6Bg&=^d=KDLgw>$xEkcA>yo5Wi)eo=Jb*-117odBRz8*neZ)>EOeJG z)TSnSt`?vq(HvP?gv#5#BkdB)$^0>jK5^vEDgk{pqm`@jJ(bfm`U(Z_GEC|S%#rVLgDp?nwX_2g`QC>T zu1>MweVO#^UfJ);`dTcZ6hQb~dflb?GP!U!P?v}lDKPt%6G&uD@iY%`ZppW6;ZmAd z?S|A^=C;OADcYEk zHHXuqG3tDg%aMd)A$`j>IX1FInaX^@%4LNdz7;`rGS32F3yOo@?OF=f52P|DdvK?< z$g{w5JDLfAZj{$P&OBa{-8YN-Br|PQDBqq~x}5)GXydKR%;?ED>s)Z52v}f^nDB*dsY90%KoW>Bm9` z-BuzG-3pZQ*j8)+0(i$=!BQFYEQ1om5TIj3RUkJ3+Ce1^6QDsRKtt01K!ApDAj1pL zP%|0B(r*Bu>IasAqlh}-!pTD4ni^8mkz8Vu*s}<_<)ck7Rlxx4!Mfc~M$h+jO(g-q z#zc|3v4*yt?mSl}Ib9#NM%@=}U*jpO={=SH9ds2AFG4875paE-b7WyJJ)7L9or}-N zdK710f1_jPlD+z0kbS~---4eP^ON1V=Q2Mo=@^t9k8BeHpbVBi5qba(7ovCeOOYpA zTp_Jc9RLQQ5ZNa)gHtOqw0@|ria@&0rd?{4hT0s#aD_7(zBJlt>)BL3KGpQ{tCXeZ z_DkU+EH1HJ0~jp-hyv-yK-!~Pz+ybn+s7ubyh?>24wJ_$G+zCxuOYbyNA#*`A#{*m* zWn9@VaR5Q2G{w%eSsdCg(G*0a{Sw0nG%@>tuV?zE-&4yZm?WbL8nRP6cPQgtAGTI$7#^2vmZhYMt<=K}lbNy#=unmmdgTv$ zFNzbVbV(WaW3}aX<0J?R<_VilYZ;+KJgzX_Ha8U|Vaz>;_HmAoNnaC{ux{S8`QH1v z+)VRDxg0uX9zy&APlTHE7Q*RbTl9`aUs>7&Z|e7!0_~#BFsz!k&2+Yn9S(RQGtP<4 zgq`l*HI8h538HQo^dcDJseEsH-F+iY*arAtB%Z-z`RBQ8n^RxrF2wNDC5#}TVJcZT zYAx7s-)_*=FEmQImJdMkJ?g*M5sfkTj8l%5ABwPH8Hp?vu=zTI^w1x{40;bDi|r7R zI0ewwCytC>l-;ZQyF=Z@@IQHXC>ZZ`MG9M-dG_JV+LF|Xq9Ew}k>%wva=E_(T({l` zsFZtFtlwQwza;SudJuP?M55s#MOAIq+Qx38;k z)3yt>tgik!_s`TR(Duo8AW&3c_xuhfUXupWxjuq#a10_1&e%X#(P{(DX3szYR%kAhbF$Yl}fq`$C zZlSvda&QtWnptXDdzyd%C$p%uw(p`P5)#0d$j{)m<$j*)Y|C6tT+G&mZ^___NM7wN zj@My^@zn2Lh|k@6mQB0`$CZ0jFAhQnOD{fw)j50->h4=RmPuV2Jl}#E_6PPyv;fr= z^8(~}_yStXe?HMm9uSD9fUO$TB)?h?@nDn*UC@L3I*jSXZx5}F`Qju)x&e~N7@D1B z+*{H!lWm4rLatf88O6|B;V!zoFB)3@I8Lj$y_{{kp^0~hobVR3!{coi-^QdRgiULy zmkdd_aYEI%gEYZ_h3@J#SFgFk@?dU}1N(MmE5r7LJ*nS9emy!x$YU~cZh}A#dkr!t z{C-K#>`oK(%6}agAk{H2PmJ3!@qSm2Yk%a19KngH6H`op)&AaD-(v&WHgn#T49je3 zI>hlMz4eB9Xz;VLJlgSB9p)Dx^Z-tkNoJ*io+m~#ca1CYg5>&}T8MT7goWG&(Qj+_ zo}7vsZ2p%-3FL>eW9%HW=_0D1O5P!)158I*D zX3_uC#8F*6uIW@m?law0feQ}`eLhz2NfAJ7102hm{-{zdL%Aws&7yvszDy?alxXoC znHx4tEXiKDX-v1%YBp=D32Z9*^B`#i4U4tRB@i-1f1mk!=Hb-uvtK7frf?_4MylDH z_0B+Hl16J99jz`9;h15m%^S@w+@K|OlMn<_ElNdau}g&tgV9n8P@0kWw zcL8z}=Ry1$7PhJc$!N~x@miic%$PAr7_upISKD1}R0j5KSK4uqG2W`&c1*!)L%d(W zCXR2vl%%~Gq&~P+-%reNUt5NisIZ=m_b1GEX6heGw-^y zh7!&F)O6an+|t$EaLMs*fW*27`e~xREc=)oWvff`b{XpG)MAXdsHxPl;EUB?x z8#|c`vcD|Zr+@b7?4L_AtAdK=QIKVVdH&JujQFg*;$~&eX>0MaSP701iA1^QavM@r zhU%Qgrbf=-lY5qaTIb<5=?E zpn`xIyx!g#q1`0`Dx-uuq0N0FRoY(u(sTrLb|L!1Yl$y5s=z5(Q`Us!N}@a0{ce#Y zoZtUcvtB3>1(VB?mHRfAdo|9jjG7k!y%Nk`j*A(>^sPh!j?-c)bDOX*0%ccjd;7j; z;#4o0OIP!kV~tV&M@q*KdxHT;t`xc`t0ZRUbgSga+TGf@ z503Y-`d+sBC{ZU9Z-dnzCdz%Qk_CjZ%t7W1Ix-KcM22QcYeyP5x?$QFZG#g&TIBG- z^57BnTZsJLPrr4a%DG@De&+s>Zn$1;`g#r>S|Q?ZP$H4~zRAR_##yk(^7t1d$SMFK zKZv>Q-q@KWvu5E76Bc>k95$tYNw;+`C@wC2Cg?Zo^~jIY6O0RiJeXVmpuJ+*yk+y? zhw+-&o#SaxJovSI-tu|ST2p)=YMH&#R#f+%pwlXr4Ql@c8?MCAwo<$e7mSizsEdRY z|Mn~G68rV8(fDz6qT;{Sy$xYcj9t!n7Sh36dZ$5IxiN1Y>A~{>24K34^Rf5{wej0A zX1w!;76q+@!EXVKGNH4$nAg*8kw9{<1W}@U+RfI5T3T|5QSij*HT+JLUxR!PkeqCi z9GHO%dSVUHp+5tQjk&z`?Og8ubo#$?xfQGy&GtNqzyMjH$2-3)>3BS_K4bgdk2sDN z`7&Bu3ZWOCyZ3YwifVlMm9vbf1eZo`O8f+&UrHy`iVTdk*N}{F-hFB;z2yqBnIGLk zGP&5jr)SBN6H`{sGma~X8=s~F$?fLeKGg&mZIhq|Cn%A$ArH-A=k3x$+0Aa=v z+t51d4vVtUj!tIvHk0tWH2X$ylH?}=H}2~(oH=lv!Em4rh6AzbwG zmMItxPQh>}s^OggtB$|U%|Jei7k(9rciS4Mf<+nD2*b=n|KCtp@qZSD2VcqTQKCc* zqWxJatip$!pmJ$?+Gq}YTpPy?Y)b2I(1rcX6pTw$T=lbCes;^P*y==r!sVY zE68MoOtC)>*yofQv+$w_*Rb_w5J)rd*>^*Z)#ip!!aE|Z6C=Nl1{V`vLNz(Q|- z_4X3I6J}V)7}ItW)+G3tSB#Bsv8-ucTJ-VIs~T&5L0g+Jk>~NJt5!r?)KaQ zo$bH&)zg-nvMpGjIvHyJ4MHM*=-=Os=-5=q?p$M|eu#W`rpA-1iuX4(PvBM{0 z{JcNbIPZ^r51yOB?BS2wm2?xh`4&!@U*=%Pyr?;54fc*%isc=1(8CFA;gka>VXuE$ zUe&`Vzy6;Xna8@UguULAeay54Q82ygN;SNVf{mt;T{f!wN%i2S>Eg^Dsu;u7p zz0gWOV5)3(6v5Zr3{RByGQ2qZxBmde?lArZ<2eCK~a>{RBY%&5#knab>jqLqt&vSd{%`T*_? z&O(@ic-!*jE0!bIid8WSGJeQXH2b5DJu`DMmt!!@R#>CrfMU;Ow25-xqKCSwZ+pnQ zrlO}KXcYLsY$FE`7A=ZqpYI%*>e!W;WZ!tG^r*<9&x~8wT>t7_f;Vi)Fl)ZmUVgv2_h;CN?QKV^srNx{-s<7HO4a`yTLva701%mIiUj9Y?fU`L1-kdNbkEX&fw*Sb+GT441>ea+ zh+RznXub1O332(_<@rE`5QlU#k{H?*sen7O$+-Xwn0gS;_u}GJzC5rq{zAdaV?p3j zjzxF{Sts5Uj&N&dVSA5#5^F<+%!!rrE!X;T9rt}t>qXEH+euSie69ghLB*M1>g?t7 zmlJrH0to0EW+N>h)F0#0&CB!<-vd%B@nW&T?c7tMOnchJv}SaD%6#IO zFlA1#YJVO_bIUJRJ5*>vMM5g-7jN<N31a$O}r_{$OP70J8j-pzK+IMDeG zM|Jp^fc6?Eilc0^-J=bV*65!PhvRk@5a;?6?%U>~WFh;b=Sq54!T)&;jBcrdBFO*$ z8VK2XQ$gdVe7e&AI za?xVbXK6Ovw%CavWO1~yxyWDR#svUq0aaiE;?b8TaTjT%%KUdCvokov^Xra9!~W}E zh>yl(9xb{*uoSz;k>{bPs0yrfhbPKu2gFg_z2g$W@n&!jl4|ln8){daGP3VUsmHM0 zgxsHX&GuivvcBHi)DmF2SF z=|dsG1XG_q0T45+Oq18Ue0$XoA!WNFNF9ATkJ5H~#oXq(&3YLU^|$@@zk;*&bbfI` z$-e!IXJ(cR8`qz=8%Jl(E9p4;-wMP!k5VY!COc^FE<7fZ?IWRhj!;~^Dw5^)#QeWO z>OG9qquTk>m`==N(S18yJQ^5p#mjMm*;;0?6P;|0Tw#0e*0w?yc5RqyAL8JSqw=7# zevl89_nI{vEl}Z~vK1)tB&)K~UQrXa5Y49oa{JV!A)`Es;NZE0J&j2#%@L4U>N(!_ zjSf!V6)j$xxpvqc?115hh=r_Pz;Vgu4WnUcpVK%_XSQC7;_X}J#4*~(vgn3|R1NUq zjcFAzPBdHI`Sj9M_OyW=4!wFO^)HPV@h2RH(mXlBZWz4dtseIw9x+YaYx6U>9G4$H9{=0TPh zWF0`>sq=9_p49Pp&mB9q^|#!y%a+-rBX|^}6kw-Gkpv(5i8zXC1p>hoTXJB-(tx)~ z;0ZHgQ?Mdy(zim260i(VVOcj8OzwDeMJh9?^U-d^0Nj8Wd~>Y$?2gJ|%DO-|1=gCt z@Ztiw){M-Dnd380h>e2MXrhf)PZMI(RP_5mifJ>Nq?arvs~VrZd|8Swe2}6s)dO}4 zrj_@YHu9#cJ^D)6eoz)m9IZbohJd7O<3N z)-UUu-PFk{1}t&_JHgY}7!pxmbln=CY-^@q|B}r1hLV?SKec8Zb*sT9!4Lt&Q4yu| zaPKZQO!w~MsUCw($=ia#p(X^jGf|plt!*K;iQ1E04>2>grc3o5o5wCF$$zRw0g7Pp zAsO$D@~Il@vs9?vHdFWtvGm3Q42Wo24U_dz9IxRf!vTiij4WqcAMKqa8+s{`1!&2R zm?nk%YRL1;?is&YOP}(^?oHEu0q$_4Nq#UShtQ+^;6TWj*hs?LtsURW+*u-vq(oU3 zC6p6!Et);Jqqv)5nCZ|nI@r+UU%wS6O{5H1)2Tx`HOK;Z781$4S|EYiZu0TD^-N=P zag$bzQ@Z=H3?3xDFqw>I_Rc(oW!x+Kls6Xvd#xnR5;7a3vjYn|&b+tt%)Z6h-7?EN z9xJ&StUyO5LMu>oS}xDGOvq9J8wQfPnh(uf+hyi z_1ClD%m?9K_0*u^0$mL6g2bPMH=?X`*Z1`9Ope1aD*^nwnICsdEx9SRcImZ?uLS^0 z#_TK_2PZGY8L#`27H;@>$n|Oc0kJc$hA4t=ho&TDK=wZD`fgBz-2oZ+tvpQbX)Qz; zRnuJ49K;L%U?2H=-1-~P@Mb>K{sUNj)=03e9$<3NhSVD}-@mvf^S}iqId>9j@aWI1Xz|=CJ1pXDg&TT46&e%s5|J<8GY2<3 zuAqN}Bu_`Jy-qp3!s3H0Hfy@~%w!FgJ@#xO0; z0mbgUQF?~J;+|A=;Ugsz`WKJ?edaGfs4iSR;Yv0|KXL zO{n_`ruWjV6l;8|guo5cRnpvbfe7!Q*RoB0irI3Mx}2$6ALRQO7O!VzTOPbPie=&rs6AOR07pDC3N6XfhY!ND3!2=UXfwIE_> zycIe3FJ_g9q_!)f*HKgh4D4>cXK!Y5lra!PgbRuw_ z8I%0nE<@z1dP6(B@SJCVf3| zIR6}peMIxr9&t3!K#)=O`P4$PC}Lp+N`K{p@Xj*34T{EW%XK9C#Z{S$vL}`N9_bv{ z4#oA26&;st3)?}uTGp;$^-$uFj_+@q9X*Xo0Mvf zjCvq$*{{A|;+?YTx566fH?ftbGpo<^e7we&Ep-G`hiz_^`3+hqqpOtY^?j(lWXJfd zB~-#}@O~O5!?*HcOgTidW?>p6h%P^}Z|W3~`FlIj0VhdXtp$je1Q2A{knc*6=urK1zOD!M9jQOWVC8MiI?jcK;R!V|n`a<)))q4A0DrEWr5C z2>61OxO9lt**{Ui$>&{k>+1}^jR|x<*T2t#qu1Nv`eW`BgR{_Gjy4vq`&7^|$leOU zw!pjA8F(ZNB&|%RB4>#7mN}8PgpSNCR}p=TFG}ZIdzVeG?0WqI`wMCVN6Tuko`1Fi z|EfQ@AlCHXwuu(c>lojgU*(J(h#aJc`Lg>1b+WS+zU9RVK|4_Q{s?Tm767BBv&dfTuUQw1IRo{Gh%Jyid~0 zU5~-d-r0+($Ugsm$Hyg;`v0W!7&!`|iwc7eNpfp_|X*de_r%;Q015E6kQ zqFXOMr}K<$%Wp5~-v5}s^b(eb>j``GQ`rv<%vKMATCbFC0llXnJ!QY(mHT?pPlz12 z^0w0dQJeMuCJTxyGM8RZvS0s43iqet@k#dRk^}l@j>60AY*6EY(zb(UV#fBh#(nLOe(nO?B_9_V` z0C6LIGRyxTq)^!ld&{Aq>YNlgFi{XESBQeFWo@gP{NGEOpvx{&F3Sx8gN;$rB;Vd* zacArQtt2UX&?mhmMVU4IQiPEOaX3b>rECR6c9ccP_lWP;TxRI_7Ly?{;M8@1ZdA`3 z;`FZ5P-gO3C^;oQ#@@ce*Ankiqf^_8Cz9dGZHzNkaVy`ne4a?5uP%0`&tlivX<7xE zlx1FyuDuN}=mS*Sg509iWEF+W&s}Y?KO#s;c+~>-@F)sfE%XiZ7>SB`7L{2`t-&HT z9`SiLQB!kt*&qIoIDz7WGK(%KIgsdOWoE&W;2#hTvFUPu-5j;uL&21Dp4C?su=m9i zwn;%vJn1i`40=X3?vmoC*a3dfC$?_}kb9CD-5_RfiEUYMPGRJ~<@vKCeR3EUxXmrl z0MS<@hrjg6VfL2_8=eFamC2Qh(6jQ7cwn)-$}Zq(UtQamSUy_Z(6L8v5po9}IFy%w zwno2R95yGkSzhmidw@TXOaQg=7S;@U=?f_@s5}L+xs~tPXD946M4}7~sc%1urH4-Ocuj(Lqjop?JL$hdhx6UE#pO5YsLYioUY&d#usIyU~bD`9)A-*Ng47cq<{vD%3 zI<+38&mRsb&K%mYVwg6<&~`M%z(L6O=?e{zE~i6&kx?vCr06tlJ8HfMCC$RklKS zOh@s*oY5S>Kf*F5Q%lwn8~}jG4#BaUrssz>tAY(mq{+Btd?RO%X1B{83|*p`gF#kT zyXF0qDqz`kSVqJrWb+$-@mAr^)4>Km4BR_go83QqG1FKz#P~~P!DzJAm&)$(yPKLp zA%wS6Sh#3r=S&5}8J^X@LT7xn{YMq!B{E8Q#=b-pbx{A}v40(wd98<`Ln&}kqtd2z zz-SoB$cnS2*>x-WX721L@>3&JR{z9Bp+Bq;^+uSLf?-h0hCO4N!!IM7HC*rh&FtWw z)TK0Y9ft<)>g;C(<Mah?aTl)>%vI?zVt^{ zxA{zD#8F>lr)YhPj1v{5)PzA^2kN~8j`p^xMR@kMX}2DBMTc!~=RyAYfM`}Y z+s;95V>=A6>Wkhg^49zdeHz~E`loSF*CsP*>+O1IByj^BRpzdNlhz&H8s>vz-Ny zpr;^88%N!HJ3&JTPyzk;H`X(e{Y!2$1>kXsgei=POK;~X>U&5sgx2wwO}(BHS@Nhv zvK8sk+Wu=h7TygKM){uYh>U1g#cofju`nWgCxsWTP9F(0{E76Ch5m`J`7Dl z9h_(gOc@#+^a7;xRt*A)e)^8M!XsgA!auAcYS0r$ZBqYcw*{Btd=O@8NdRIl$_s&R z?3qvYj$ z_br8BzU;+6$e2ZQk}DflpR@WL4w4gXuziRe@?p~;DD7-L78oV1@~C_Ol(jde`*-!Y zhNNGN#mQKSmX-<@U(i~5-qQ1yAxvVA!Yb2^`8@YYx|K5lRA+q4{-7qd4`mTHr=mUo z`Fa+_I`n#gCi7XQro?vk^)DD}PfNvCGeYV$s)s~ak=j0WFhKvHq}3oW_5Pm<77`l6 zh3HvVVnd~hvd)*N=Irh4BI=s&^HG=FXYE}0L@*oRU+SUH(tr1*WZOIQRoD;HKLYbl z)0=7SWkd5UpQTSV3#Kto2EEVYtj$iN7;p&;vZ}C!sL%@bOE^BZ9`NP6R9gjfA)|Be zVct|IZcQ~`Y(XYbB;{UOy~wUSgax&N%29G^iEwSz`q#fX*qz;=lPy; zH#-A?1#iM-SpDAi8H<@HrwG?qmNUSl?uA?wI77IT%WB1;>1WIq6?aVkqGaujMJrdb zDtG|B-1&EOKu;;1P7VO2eF;hS(tpE0=pihIU`bp`GAwGzR1-t!f}voCjv2Ib zqHc7)-%??0{)QI>9*O?xJ4NSnHo_+31(2?#7;G-ezHMNDyk|S~Y@RduQ~Jmn!ZE{_ z`grquTJ+ds4GLT5`v!pIMFPj`kb_g$~l3Omh z#mSW7Y#1RcVUcp<+Fqp?$Fut#2B?&NNg3B&7^Zo@T`Wa`J4dzv4m={ zwNIVEV{uiER89aBuOG*i%7UW zUi=vnhZEuBAe&G4^ZEFlyG=Aq{lxWA9t_O3kd85T`Yl9;pAKtHO&Q zdxRI79V3Ajl$k)uUWjqX!f1#dI2c<8|WPy4Hmd zrpMuI^Carw=?BHFh@a}G2r5M~`Y?W|c~2-t1s|((%r%gs!=o zV3W{RYQpp}o^41sUJNK2+b7Iq0V~b2J+25W;X8+f?bWblX;AV7E{6{vr@dNN+g{_B znr9gYuuz1dr|;6woT50^)}>(<2yGTZkeaB6Q5#bb;p%j}_3|l~BWnt9^U`#dHS|8j zn6>d?kUn=x8w!J}7=Wyge?z9E+ZBWSoZXfea@a_?;bxk?jXAf+p%ht$t5swJuo*TN zKSlx$=wb^5P^{AqQLGgwd5*X+mb}xJ>nx-aJ2+&GD%lgT!^zPLH9scbl5`w=;kp2( zT=-Es&dmr~br!5ay^v8)f}9p6 zPBQ^~nCAP&kuE&9$uS9DSA-7z|Lc%`srJFt9= zpHYkwDK_!_Fu^WTu{?fS8+oC!frCD`7`On|dX8tXvWZdkBH_=j{xRfOE%~OCTX?6I z)Z>Zp!JhJad{u3$pd)Ov9Fi*Fnm%og5pSx!QbF+n1d74R?PKJSVIUZ)w`NqeV}7vc z`eS}Fv_&S@#KQ@;CRU_*zKa4C%t1f|s*D&M-n3kmL=`|eIDQ;5#NhZ53h0HQdT42O zj57r6mWUlyk;QgVSrzF9>PhI{D=;PJE!1hCU8Vdx#(Vpiu1|Gv4;EW^TivfJT+CYf z=9rDHVC}*zj!}h9-bf}+2@|KdI^01Vs>7WlQ;3<-#ManVhat`CAOOBMWiPQL7+eGz zkp4w4gh=ZXnvgmr5&q1sFlG?YvO#Jm^E7KsxXrr|$H~69KuItI2t>d-*= z*cx8KIXe>Bu@NIEw@jE|j2PM2W&-gH@o%v*sxHJ#+v4gaxye1R`BH~3&c5_9SW@ae zFY}urQ}SJICzdh40#rj@B(E_LE?TZ?Het>KL~aB#OPx^Tdd%np*4 z$J~O860`b9Q{XJ5Bi|7mCd)CFX!b%27X!FtnBkWUM?5r*!mfK|PCL`4bHl1J?J=0c z(SGrq=IbvlrnpkhQd6auCZCvOPw0*hlh;~E!>|~Sad6r!De2`*#=0t{n%ghA9Z2iI zfD@y{ki+UTquJ4nnrQ#*fn}|DX_xA?;of#61)xP1ZIAepSh5vVg5;1T9HujNCh$|e z@AJ_6K31*L()>2Tv`74=Fxw;Q2^HDOL}{{xg5-^t51tPrd++c}6|6VdQGQ)uaL@=O zyu}hz1c+}lXIFp;BPZo4jtK?8)!ZCr)lw0$s6it_^lW;T{SLDy*M7aSI6K*WxNGoaB;!PnlH17O|uJ-RC<* zmqbt1h{b3$3^Z_QkaHZ77E=^64`VL7q1&mgYhW*M!S_-*hh!ATbWw*KhN#3W0i#@rC)APAk@0oX$;#npIf8_;Mye+%*;D;W9l`t(fncR2O{eJuX>xv88%z z7m>W3ictkvqy09O6Z z`^pf=jFbrH_7os$qjS`VC2^TR<#C}eQEHKKP*atPVp;&z{-!H$x$>3?w;E5|%I^Q= z!q=;Bxfh{5mMzMY)dE5d+1OGHjfxkg7Ol4T9{cOqiJIdYKP+Dx_uQ zJb@(J=0dAok{NStHO)ixR#hD_gB)4Ds7!LcE2fjn0kD`-BD@jHF@qL#*aTxP{L11Mt~z3l3$pna zjwjZ5+M8w9vAQJ{0V}MG94tb(kOX?#dkm&fdPbXu`#1cSIhM2OVBJ;mw=D!dbP1*x z(eL{LWgiZBpE#~Qdwj*X$rGp5y%zPZIj+39CC`^x4tvg8t&N3fi>KO?Rf)D?Tw`3Vh@V7=Sr1K*obwX%U_Q2= zk!*}n7jDfBb=ufbZ5`#5K>;X}io`Mxj>Rg|v@^pcYGOwXp}rcgLht@a2S{*b^DYYG zSpIFhI(IAq(dvfZCe9%tqRB-+y@(NpVl!6TI-qz6r}_1V4rmQrfd1OH0Wg}ry{y1srVbO1zM^hH0- zQk!K1J}Vn=5rgZp2V{d9ZtfYC+2PfiNr_fY39}YJ0Fo79)GJhEcNLGomIqtWYb&hG>mB8I)(zlwXpLj~AJxT!_pf_JB&8xGv1pI{ZvD zfX3D7+=@-KJNsaT^krL%;mi_I7tnPH-0m~I{j145ud-1Hvj>=f=K$C;Z6<>AE5@_h zV>qJ@IU)15=^nXMFWwJ%Jju!5{q)-T&^ zG(fm=wn2nRENo@Tlnb3)AqG1Wj3rYpoNlA%XER{8y>yaFS&V+x(t;yPmcqm8t22k; z!l1jgi;0#h)obe(T2sZYz$3Zf9ALdJ`^|FMLKX>I8fFq!L=?RCvCM^xBmI`uJh!6Z z0mW!Odweb%X}vDCOHNx(uowa;*~KT>?;}~1kQoyi(DkX)ts5;|;0HK!0m_DzYMUwg zT2*>DAO<)nUbCBKH_ZWL4wB@uEKa4_R7Z5z_PgDHUgn0(hHm!-EL(*0=RTDv4-YIv zcZiUvwNjx#V!fg!VH0~EiJSM$lFZXIu0t}HJnm$47ejh)1_NL{Jh>t1NPQdX$bpPR*zd#yI*B=+qyY5?hXbIj1dfk)K*{Q$Zzi;4AIe#x{PAzK`sEt zSVw8fu~tJSBF?((iM9JzR!3jusG)liZuHvIY4oi09`sMwXg6>36Rin*xu^NTvE0bPWI_@MhdNrYziG<9Xp=+C<38AqVfXR@Al|Yh-3nkLHQ$H(`Z5JV2>WlKy zH10i^mW>6%--#?G9p+w56MIXe!nOqzVmdib3ik;e2U@s3Fm555tv}n*E?o`NnNl~8 z@jBEX-Uf(enwVqb-i54T_Ri&QHu=MaOqS^e>>D~g&RIQtEG4uxsOj4qi#b4t-mjnu zoD~h-{#EI>`b^1lEYEbaTRIC9AX4#mKd9u ziekc%W&#b;3HcClggENI3@W(3G)ujv7sKc>Kew{^PyOczqd;BmTozE+nM<{wX5;cIHYQ5o&FZYqwmT3SZsW*CTu z7$lQALLpDmgeYrDxa=djF1q7Y1-Uy~!^zf!&65mj&H(^cW<>6=qecKVZV0sD*S0q^ zfrk`(t zdOX>E>%;<*j9`OevE!F|B zHT0E^kc`colh*7cF%s58nM%QEGNTN2LHe{}DW`Q&Y$0VG;FoT*PEE;M_;PJSaFHb)DpwJ4$ z^+NN)REj-SI?BsE|Novf%_1qQaZtvGosZk*>h;F!Cf3XY@oS{5n&bhiKO6snP~&grOA{$7(eGFyS*Ip%NFe4;O)X#_Soh zr_N!I%e?V(#?Br)`!aiav84;$7gh!6T(i29NlipH>D0yEN?O$rBnw(File;BHoJoH z2D1iQ7D=80=1N)83D^NX?@f-HNtN9T8U?#{Z}r-f_|1pK5J`?RJh6f|}jal^t4 zn*qEC%i=ha8-(Jt>uu~5Bo_`&H%`8T%ip1C(aT09ViZhN*g(kPlT0Ihl5JPy!%BvW zj5JppiG}v{3sx}Rk0A*%d0Zc6N4gHqkHmXT^72@7#32O{$&6}|M8_LD#^zJ2TT>N^ zju}-3680kIdKa4YSW2kQc0j%p$c30$o;em>Q0Rn61Pnsc*v#nKE>mY;U;1q9U6pX%csTqW_;_`HBWrTK9 ztyecs9oHIOI2CCY)ejDYK-t`kAjvPY3&7*Zh91#ow0XG;VS45dztjj}spjY0@-)mJ zA@cHTFNdtm&1Z{r12oRPlt^_bG!t4W7?~*?KEBMwn#WV69G!;&SuBMB1ofDAhWYLj zJ4k~8Xa`ezF4Eg=aj*=l--w>cez|784FJX`vDP9azOE4?orYiJQCEF*7h4t-BTPUsD^6 zEtl=qNXA@*5iO=mtQbyM0|hz>qMy96S%-HFL`%xzT?7M^#4dl{N}c6nq|?%wzo%@7 zNpXY_ndom2d5pO7t5KxXa-Yq#EZBho1jrlV9{Pd}rW>FuB;@J&(Bx^r#R{A~%uoN9 zdJ1^AGiBW4q=KYL1uTRPDe6+B0=m*;p6)cv`!2oY>6+}febG1gqQ71KSYkfL>UiTF zFv(=ng~0Z@jf0mh{8K!B`I#5!eagbNGc3mmj9Tves=g1LUj&HXlE5E)NjSu7>L0na zQds;*Nbe)aKT=5+!}ZMRm=2#69hj|1O0H4A$nvNO2iBWv45xItwGw;F?Kj^}XR08M zm-!doR@vPw9E}Fu{u z53;GTcg?vew(Xr-1h6A{RZ*Wk&aK~Neh>|-$-YA(GA3HgT#{nV5P9AUKUGb^9UAKl z^C2QTALC~TVaar5jOxLB$RhR=lYcY$H|Um4!7GWyP@FRrO!s=mGmZ^A!)0~!`VA9n z<}gOKH5=GK6<3iakjCkJs`|y*3v1q0xYz>K7*+@S#E&;yLHJVil`??R3p5Tmm||O` zl{elv(}l9ri@f1viEyd!|IJ?gL_uN^Mh9ZU^^w0hYAKL%j(h?gPJO23(k6w65%yN^ zuM$#v$#ax-oA9NqpzEUx%@zqdlEW;Nv0r0fY4g<4FTR6ffIU!eGf)A@n3xEK6?yIe z1;e;QA8;18Pf+S;`VcD~^vH$Yldf#Nk~tR&CZnjw7UbB8(Gi1-WMgw#jbj^rqy=Jjlg*egBaBBJGY*Z#p{Lcc)NPkscgb~zn4b+xgqL*TGr%mNs~dZ- zdVu+hNs(@8p^MBUs1U$xiw3&Mcy*>i`2$H3opR+Ab|+!SK+C}#F($l!M;(KN)q1MU ziPOeRV}*d>>SsvXCc;}07nDy7ZA+aZs|Y2z(6(Qw6QD72YLR9FasocpzDHKXc#Ncr zRE$x;g&GXJUoOa4Gang#FS}jYIH=`hdng}^Y3s)NzG6zp7Sk86((P zSlEFk6~+4N?H=Z4wYN!ayQ<0NFSMOCPVZ%hvb}09_Lj=oGTm^xk%rjP9jJyD}pdqsF2TTg#1N$hr$Dh{nE#NuV=RG^9wGN)aB0d;6>Ra z)tiFQ)^iH6C3?0T6P3Gscqy8PVRr&K&81GPM+`8WeSz_ho9vg75O@*;>ZvpSZQ&Px zqXv96?Jz={i)^3jK>6-ktd7cpGC*PCJBjw}VMM&6VEb5n(9mTjtwO9i1|ckpwOL!z z0!C7s&fOb6BGfJ1ug8+iX@8=q@BoZTke$%)mnCVsQ>lf7jcr2+^cKm2gzfY84u2vU z#P~x=j3l;jUn-n%S{Z}C5Yt=qOpH!1mCI|L9ud@FTN(j|IFc7)=G*Z`ESaF0T8y7? z5nCW|Xt9utoS;1#8#IEY3wfz_!dqK-!c0bD==m4oB_!WQX_k;Ds8{7|Fu(*21TxkZ$6_&n#-51NdG*>gwcoCEVRYHL z={5g1v~o2=eCS`Vm4gqjm4j}tmCFoa7L)2_|2ej53Gt4G#02Xx2>gFy9j=bz-P(o! zhu((RomN@>R=1eS3-3|hg1%YV-^+dlfxGxP>tez1??_=Cmva{hamMKwOibwAU31iJ z`~01WPxt)ad(yS6|-(M~v9m&ER7CO{DF*BJS+7B^7kY+R2Z^oF_`Krco z(G#D|86jEZi~vs29rDfy=vF3cnq2Fh5uP2V=@G1G-uzU~2$JXCUC*OlcX1nFdr4M%YJvbjF zV_`Dc$@d_hIN7An9}oZWa4#>vrtz~<-S@m?b2B2DrYb?w4E&Dnu`1XQcpRBAwG$Xu zFX1;O++!7WmxHSqqX#YZF|&yu5KGbFjgl>cW8;k@ zIJ-RFZ~`gfjTY{i%RK^o5FqWk4frT^bU2~8bxQp&IvcNxmm?VN{vI1;x?3!Ou6l&l z;$J(LBfB+rUQV`QcYZnfC>q7%Cfv@|u5A08r#fw8$m7B^S_>(KtUcmKTkK_1W5^9L zf7>C+Owh?Zn z4qBCNKv~4w#zMgCLoyr;sR7f{`T4M?o-R(qXr$D+Q0;P0)lSk9E+=GR_Cj#c@DyH) z^2oi&*#l)z5gN&2ZV7KCf2$ayRY=aQS644^ARo?^clX+jcPO?X4O5s2zm1!_Lhk2G zE?C&)t7Y~;vvOk<`47DyuX<%>VUg|r(;4S~EG*4r?Ojih+Dn^a7e)j7{vu`DVEL0U|^_}n_M@fUO2EyUQx2Qp&h7;N@^ zHh}>ZUJ;Ybh737kLsqCHaPu1`hc|#}Z1)f+?92fQt(Rx7L$n55`*g#JKdGSp)P=29bLo%F$P}z?51}? zCe~1oOzN~)O`1CY89zJA4nRxQ3^<2kR!tXVP6wI!*p2;T2A^9rXwA%jh1$Yz|0 zVj-kASbQBN59MnoNsCNbTFYgTm+h&xq70|sIexr_I_-CNRwtgOHxQ!HHk6x7=_cC6 z4K9Rvr^z{xK#u&kB3hYk08tL2OE=CQE%_18X@$&XO02^+w6JlF3rA_Of+v5Y4pYO6 zV&)5W`aK{9Ubf=A1Yxhuh0Zw5#ysAGJUb&~d$Agp6utF+x$+KH`NVF4 zPwEX8@zbZ_a%(O}wi(_OCR!_fN(ETMQM}Hlfvi=dlQd7L%TDx8u3DdylC7|9P>TsT zBy69zPxxb7e@LyIWDn)uI`1b6r9Mj^XT2es=$LQf6iWlXgd`**1Y#Fzr8@UF$-r8c zl*V9Q4L=?U&XpFS+m+O^K;ci!6{6$IJ{jj9Ez1Wofz;JUZ3X z-B1YbA4Vv`2g7uJ&HgvrY!IGB_qY`TRACxw>IoYV#+eFonh7$lm*x8a*(iL#QG-z` zY<*JZ#<4X|La|!p3VO#x`s|!_A#|!9**?uwDSrUd#-z}*m~DGkdZ`ueBoSJcj~&85 zFb8j4)JjGm@iEdsKQ~XZ6)X!;nrv^(V3W3nCZEu;B}297YZtuoxJ8Mdu@DU5tw-zG z)8fdlBZjr5cbbl|qrfyc^D#YB(|XYo5jE?os|3~_aj1SNS!iCvPt@q!EhPOb4i#<3 zCc()2#6cTOa$@>Cnp46EiOU4MCs0vFEsj1Z; z2oomVqYQV%Fb|ZdAspz>xLF%N(n9Nhp4xeHHcsUXWK6;xn?Eo{eG5fl+G=Yd?`?5) zO*;N$B7CanzM%UL@kZX^#`cmosA&-`-aNf|xWGG)?2G94>pLgb%tg*%@}pgxv#Q~3h7W}^!2rsa zykzVkzfgqID;>wN1*4}65m@N6pwAfWQ5dU?D8k=GJ2AWT$}RR7Gtej$ zlqbjKD49kHQaYG`lonUKZag_M2SwSM?9t?Tg?V1|&i-;{KplSPLb%6WiANHTKm*C- zT{h?6s_=V+OiDAgWu9x7qochJH`6=b9UqO7h_61ex&PcpG^*^YI!k*ZyI2v-?#qXQk1e3kJ~DW=y6Evng>(CrY{%mg$Y#7_A{29T)GjSxvVAGZn0UqC> z5|t~PlLRBR5w?T1FA@I4F5fVtpvz`oXY(S(a8!2iIa`K5}v!k!f3ougeE>ZCCUXYgAQB!zHT6m`hmOBU`zOg=jj zrX~0~-MbJo3GA&jxe@G*NIJ!oev{eB!f$ks@v#q3`N978iWa%3*Dxqtf*szTJ{(&yhEfcinD`X<-8eO(q ztrm$cjpWddQi$)6u0&GZ$cr=%3l>?`#ZrlT68F$i?w5L;G%mDB*K!)sS!uuw{kejz zbf>n$Et#|x-ZWXNf{w5nz%Z0rLA#B}hB`~R}AMMnI=1XfUq2$GGMRXLkxrq)XXRSq`{CGaw>?w&5mzuwt}>KJbb-=p&) zW%j`$nFfq!`^XsZsxTlsO>SYDO^_Ws&>3=4xZOqvmb6Bi07Zy04?SYJK@{|%!@OFl zRR&loMP}nC8u1h8${IAiBP@&)vYU27=L|K1y|3wg`^al)6uaBoerK1-|^<-qdcl}UhwL2 zHFp+|lTA;o{3>nNUM$9un>O#Q9PB3jI{~AC^LW&9JE->Sg zoEQxJ%Cx07C89#@F-@XOmEiqMP4=vFtTbkC3AD;<1g{wN27;?X9OLJ{X{R^@8~GNE zux>85j81Ww(P|_E5p-3g>DOE`HC^)vH$xC&k`DEBgOF~ct-axI`IxrF;U+G^p<$?f z+gV6Tn{mbLWWBpAoVy=KrOGHl_+eTe5+CI@PHVyhvQ{XO`0qmSsM%0LyykM>hB^kX!HUkNvKz#?(X{clWd~Qvn&RRh8m_&^YI<(d)s%#Y?Wm7PI z>iDS;Bhx@o4%S@>Ah-~l;Nde*W|qIgb6&wdC36Tf3N@`&-s)tk>6#`inRWmq{fq}K zaKLM4Ko{)Oqwi?tjC_cWZLHQ4&27JhXk`6_F@pu>AFbwt74?~gLE_859su_D;IQ+Z5eQ0ywL3>Ul zoQ}SH^yP58G>^>m_a5ZKHFCD9A2oF5O2wyvi3>Ei@uwvKWm7RC7%`~TLCLkF>128H z+qNMQhDm$j@D~8&&30v?#QD=-l_zRC0`z!2(v?0q4GA$36_99hH;)rTN~`KbO} z8zrPS;?QFeOr7w@#KJHTV$m6eY?TcUERNA32nRM4uq=hQ9pOluG#b*HAk?wi72!j? zv}cS%2Zo*6ByXpY;5qswnb1Ov1tsL*kNE;z|Z`NN*(wBiaytl4s|VP zEX3Z|TlT$OkRL^N2>UIpSD!U0=+z|jLZ`f;{_qG7RAg- zkrGDF96b{Wfn-6bw1{BF-iu>@Q-17yBNE{-2o|kt!ueO8&uoa_)a4_P+YOgCE6Qk> z+o1F?Y1pF+ab&Yu6P5$Lg*R*K1LeU^SOQ2)n{vx_GzVfMgcG~a49IFT@C-Boc6+1F zA+Q1`UpDSs5jt5e5gy{VW|LFn;~d5Z zbR$^=vA*uP@)S57m?obn)Qvn7@U>;d31q$W79V|F%48u*Lf4Fq5tojD=Fwom)B+po zWFrCIgpLq2FMm-kfMcXZP6`(kjak5;;hKrFjPCEbS^!@%`PU!>hA6=I%ZCGHuda7MT1{#*p9dR1Nj}hSisdh=U#O#BSgr0Ujc|v_YxFhABp&w zvmKukffUC~XEs+vPC!hAW8IqnFbAmUNwRJA^WEQeymoR$RF}P<(ShDBpytPrd#N`T=>36G;M6ny$OaJ!;!g!ZOkroDy*G^VfF#rgXH)x3&btr z)eyglrjS;6-c8~qsWbclw0YRLfBU>u<1QNs=VK0o<1%6L`6yNrFMrq;`hgmZbE?FniTy~0_ud%8D78XJ1-c8e6C$FDmYzXbO zZ&EvLZ8`>Cgh(42Fdp&F!{%AbT~$oQr|`Ze{yoA$qGW-E0)ArRPN}}M8J|lUg3qVE zZm_mpH`1Cu&LhT_t3Z@J4DSRxuyOYbkPLUmq4m%VUxr_|(XBS#!1RvFdnO-{8pB&z8>yC9O&S0ekIC^H04=06d?EyP>S3mh z>@LyK-CgkBF(_jG?7p-&JUH_Mn1jnD98T?~O}dgk$7U+_=$NF1EOl~rUwcVsHt%?^ z^@2D(Kudh9i+26w5VZHS$7H|!b-r&!zu{2auI7j@x`B+D4)KPm3Jgf(HXjf_m2IP+ zm3ljn4hpsylbZ!y+R2NAkYx;pJCFf|{7z7(XFdk@bi#SCeJqu@pQaxvR4>z$eMp5p zqv3wDY7jmXZHhKNL7TU6=+iI~IAdnq_Lo;v`-KePbkFif_NN&$W=YBeFp% zP(iSba%&3B$0%ngh2>DZ?x7l~hVt*uezEgJIXW6ylgmA+jHan*0Telc!j>dcSmKbg z2sJ^=ikQr}-7fGLEQltGAUgfYy}^to)v2nvPMuM+XXL|e z#!#De>h`JuQu99CRSt)L@IKt$lBGp1I>(s6HllqRr=pVRK?*UvnxtB-R5E)~Io#Cl zgs6lTbSDJUE%!lKn4CO3A(Ng)=d)_E+2mgqPFa9F(;9y!_NNtkA{5cdsjzyNhim_d zOROJ2f@64r$x>F%C$&yOLd~UVMyYDCrokSXjoR2}W>yYlo!ibP5snW9! zkn>47!o8DtQO}I-9F@j;17%TmsLyBbELRj~Ke_WEPEpniJzcD$)u&{(^!yY$QmHmT z#JTFbN(o&hp0mt9N)%;2Dv~ITEz-R_6FHieBc+L^ijd#6VKpi1I#Y z49EnNhZ!*-NlX|bOr1S!(>SwpS}PDc;1LmZG1_(o@M{$boKG}M=Ux~0U^tIbh+~`9 zk>Mmw!NZv1F~aM0kC+yVS)8+QXNEX{2WBE=Iwcmr3N->Y-P)3{IWWu~vT4PkIy!!J zZRRP)K;EjxK|P?eg8*Q_z6Tq;WXJ$E-l}<}GXWg?NdoX)^$9t&m;mzhvx)5g0R2=) zKU#O_KSb;Q&owpk=Wd3|rO_8_qeeP)H&ab_5Y3pGW{9Xmla!s3;9}LHo$YKE`5b)k zVR*LEZ`Tx@fBX5jJ6SB~-4t*-cXoTPGJMx*NqLnayU(V46t8N5_RIp%KKEsJT{|>0 ziHH6mPJ|u}NHJVH6CtYHynqrN^+e4fmDOulDU)0Hzq)Y)H{G}{W3@YtBRc4bnrw|P zVjr*c)Rd)*b5yoo=F3-d$rAuE6oNC#7x7gHYfE(pqwoL<#A!ls8V$R zyHRS-L%3OSVm<&!&NGLjT<+J(i=cyal{%NvBc0RP%G&3>7v6cXSGjCLGmT4d8`qw8 z9VT0I!jQCTQluHTi(+QsE#vY}+F9=;Nm>rEQbLU?UZvU!F&1IW%4e3ibEaL4?GAfB zBN(Ekv5apdY{oQx%Lf-JB}MFBhDJ|hRHSxk3a^U}abq7|plVm(T{iNuhhF0oO$9_0zS}N6Zco=+U3{Y$!{50z29;&JdeJRwyz`)wfLSgDPG47xrzMO z6dwGSYGAPEf`j3>cq?y{IkK3D9r?zMl+_cp$jZ2Q(i4582hsZtH!#8574EpkU{iFV z`LJ&tOC``ctTTtG)pC-=(hj6}!yu9?oZtzSZA>@Nqz{vAC{|)Osz#(Kt=sjxBhX~> z6sMW1MCmo=^XJgISU*AVNdJ)K;vY^J0~S;#D}Pj}T&opuB%WfZH5+66T&2KEVdI@+ z@a~?6`W2=89P=r;f@6hXR(LN+i1}sDcRiJv4hxNFlnbmCF|r`%v&d7Lj1ijpzZ%$s zo~hl0AVWS)SrC-4%&=HF)gy+1e2g-76fQ7oV*-$`45)#?oY99fs?7XiA*tZ$l;n3w zP?8pZHf8kbu=&)`vv<(9DA$va`O@;+Wr4$mHsWO}q7U;nAN*u&`9);Fx=iv`_yJtW zg);h3AvPCl3FX$C8ied=3;@^|IWAQ0HsH2(TFp;X(I%|CqH19YtC_%MAG*TA7hqG! z(zJYOa$=acpanF^ghc|DM-*y^PypG~ZVF&|K)B$UO@FK64I?2Z0I-mEsD&NFmUYMK z(|)aU+O0i+&bXi_#Y$1p@d>DkA5PdSO)r^WTPV&BpJBa6%ZCS?OAxWR*?H1^c80H^kda#6BJ3qi%xA?tfx-raEaOvmcln%v$wK8pE1pq(vUq#P&|tRYAmz_eeD$a( zjRkLJx#S|GAISJ%;@o=hXy>c2wn-B6 z`z*v(Xe?!8ypRPfyrN5wGd>`MdcUsbsImaP_d8pW`6cd5?sgv96^O5tit^2&wzT2R zd`y6AB@G-sub?4(E2=JB)uT69n_F62;O86C+Mz+exwS2P3}}!neLQP}H9+U#e%We< zy)glPlF85xSA7R@A}>jR+` zQiK!fr;mXz2opfl@vf^c)XB6>#X8J3A0xZTy7IsAt1#`!=iIblvZi%(Zi9B$pi3h( zZ6Kwo)h4LA0V3g5!wj>j1_K8MiMSm6Zlpts-QI?HFoVGfB&2PuXL1>0d+#AR-L_M_ zfTKcLz_H0mvG4iVAfeXgbhnUW^eQYETr^EM0>XR@`N1&w&#db#cKsvMtLRr4kNh)y7O zXl3?<+CwW>x38+%OAoJs?S8p((Yo7}CTjZ6@euF|ypFdoHU}{n2MT-gFUgyO;Frvn zB>XJqAlvW%ALDM2`6IjF>$@0Z>dR9!%DEP+%^V`FF%KUo#5hw1J;*p*Cu0mLy)lOO z2=0s-r8MP~&69{mW{jzh#&)|B9{s=@h4QQVKiKp{)U~IyEztFk&h*H~7-!WndTLu+ zC@k(Nj=kbo9MW3II5!2ZD&1IYz&mR5?s`XglYZVsz$gEVx>#mBCb4`ke95=IqZh6+ zyt6?E>=PR1-xu9=HiLm%R7=A*J6^y#AsD}E7&A-vZU@{_`cF>VcW=6PoR|Riy;Mlw zh@(f3{ZE&loKsZPuSfy`OI`wD@^KOfBge1>0!n1#`1mYLAqdnGLA@{9O(Nq=) z?%wp=ocGd?xVfTZ?(VWE;=3Qor?YpBNl7NC|I1g!278^b>#7*HGP*sYu!hbikB-9* z7vwJp#QB+NQdWbKBY%PzgM~Z{oVYE*L=Tgb^M!3-odK=rOO7=5@ef!*Jo$Mze zkcUk{3(4ex;6v>9+{6`T%PVv>d0qCEBHI%bL>g7M zf#jd1l57<9UAJ$|VMr>`8<`tx4!6ixYfNE~=q4{VswTjM6yEhDHV=cLr)D1893hc@ zM);!Po+epWDuclI#D%uL&Do*GOR>w4J_$mzXGb>x#{_7}oC$Tffx{EFpzzFN^Qwd$ zvSg-!jBP{K=JM}YSuhWeK=2_1c60M?MAf|S@D0h<*Q)hrN5g5pYc?&j&4|9CZTV&! z5-45vLF_vX9nCgai%HJi<6G!z5{Tq{vpE`$wzW;Gqi!Lbx{oQY+S39UPj#x=Fm6?M z!MIgz7|&lJT&TJ;#@QVsv|80geQY&a^Ezte(Z8gRJ8G=XRzyEU7;ZCyrY(kE3q;VF z2fR42O_xyxSQ_0$1Yg|T>^5Ge8&eqkR<;fPc%2*k1$5+lVvHaC)YkoYp=wW4R4JN@ zw(%x|2MV%)FWcV#oi;{4>ZXk#yUU>7WE-F9Ci|yE5#lA)_<=>s{tk+M@K2#A>#vld zgEoU7n`0fUMO(q;@RSO>l(;FwiyE8(2Vrm0_yD@ z^+Psw+4FqyK-O8-Eh^r>Q#p06c$#S?Z>o5EXT@`y`FXWm8lSm3+Hb7gJ%sar!t)>o zA&Xm#kT6rXZXcV1VE4d;ZN$i!tyhWgd|Jc&0Ge(6pkRt>uiHQ-qcM$jgczHo%ocTb z^j^)jl@IjXu5#UO?OQ-rgW>D9QMd$A{Px+tqEKHk+6LEm_7jOsz*G_gpFMFCBeXRb zo#o_Y+%n0toO!BDdRB<3=w9ky?zzy`d>5)D%ulpg)*|M`q&T10pK~#*ran;#1EE<#};M-6=@1PNE~CRRA@!zkxubKwF=G1EF}d*3k#F9 z#xTo5-m4>XSsJ5`o!~lJ=0c%EPay&!i4b>Sp}`0x%>JtOe@W)klT2d~$v}>tWRgZQ zP{<}ohE$$pjLuRbo{m@%$&k)g{&OPpkK#r$q}vq9kie4+YZZ(>3yVmG_nu@dW+X#V zn;;q9dy--2vkmjkB%@2YK0z|kuO6t;93w_$m(o<*F2Nz1RBT}$-pY8@$p{`^W6-$vTNnR zk(X1lh9>g_gR(t&7ROaNM$O~#u38h-T!wY=;XD(PqI_#|AIHDOGk_qb7SdKK;%th< z#b85)vy^3cY3c}F2_BC*cK7o}CAe6uP3KFoL>am-UaC;rT4~9EcC25aR%hBgZk=na zq1$eT<8n|Yq^W*2pMGfDxMBy^oS z7x~F|b5h;hcB6n49+d`g3*AgP{AL#8ln=LtYBHC+y6NiUn7sZ+b#-;N>BVS9&DYW8 zniemt*%w3qFSWqM%nB-MVnSa`3#~W`xKK7up4u5YhBbOf9hUE)-p~>!kAQr(gW_S} zLYLh27`gF6uztW*-i`^B>>>C`5VIK8_X-Lc#=-f6K7U-H)V+?@h5<%U7DHn)*>;PhF zPDNV#l6u9@WbkOcStE-Rupn4o%KNl9mX6<$FfTj5P_{qY_zUC3QPcfkfzNXh5|&%6ywB&J;12O zprkDwhSXn+aC;})9u)on_Z!K3Y2&uesV3dPk>G5C;aC6{_N7Ji2kFf1d#RWw%^xR; zP1}4}4{Z(S(5pfDocGms-kT|c*Yxh)XVWXz`{t5ohZEX~JLo8=3LmGoCN#A|#08_; zPkg~RBv4z-6cdQ-BK0Sy;45U3N{h_I_L#5j=CRk(a`jlOEB4$Mi9}3`RNRN^Sa#IN77MpVlLn# zoU^YvmSy6n^9-EId4|E6;XE07{3zRd1h;^)Jx*nPRFtYJH=8>kD%ve zdVbigh4+{2oL$haqa!p@Y>m`xS#Cf=O^NW4O{<7q@8|Nz=eIvSu_F6g245!?0k|x? zPU29PQw;x90gg9g&&|w_K3@}IgrOUZoS|-;Q|J|M(t%pcH9(J{--f#ES>7TWlWQ2< z#f2@@ZAvuCTX?QqD2RaRyzjX5IuaA&7R33sYnRpFdC{yE=d2yswGz zOn%rwRSd{>g1nwgJPGwFEx)wr$8+=4_A$o7BIuZsAmKlo0OvwI#WuiurPN|nM~rgp zw2ar%jfrDJ9hs==xB!KU1%mA+AqL66E9U}%Dl-G1b2uD-i^GTT8kGJe4o&SQ;C)CH z+OnnLmXCour;C`+A~loDd{Tq0TLfB_eJ>;hX?xTm!u>Y0^WwRkQz25vu~ zdeY!_n+R{F4T>;ZX+Cm{8DHXjuo+{vc6g@LR@eS??QCm)%8v=F)@sZj zR#a;53lPzP^k@C70(R^jsFl4X%h{zwjPdzV#m|QNQPy1Y+7PqBCZ-sb`W2*i3g{?i zn$_*kR%hl8$UIv!c1Grc8Bu&jdG@=BibU_qA;F;j!S1C&NpNcE$euIHhLl}ewxImW z<=kktNrp;mk&C0@Vp_{4~e#U zukP9U?dy|6dkr16{a!nqyknmoC+_r>ohx>|KekJ3Tx{Lv&b(vOZO_~9eZP6qXso+n z(|w&cxx4;!oCXxvRcWZii!41Uv-Bj3EIsru0-W)Bx;97??b+GVGill+q#Wrhg!{Nz zA#d3sbyaE*&s0PeXTzb6&{>#r7+_l_-*Xlo$jP=AZlMt;-Ib(zR){G(u6ZreFLf)g zLc0zu*~YJ)mRbdy5WswCRvmtCWp|NmsX>YVliP|`WYtL}LODUn(LHa~iJMi&tLTuF zlwcB20PBAfS~Ri*8UW?88sSB;SaKZineJWa-+5~erPz59Y80`Byaku2<~r7QMZ=5E znnN>%AU$?SBdMOLIu}#+wQ)PONxF#Jl0dhNBbDAU@Cz~CXQ@Tg;AT|w)a62y=AEYC z&O}&+pQyAK^l})mq;Xi*F;2tjm_b2@*faV$_(y3|IPVoTnWtrHg2}h#sVnla*#O4(Dh<23S)t^QxJ6WmJI4oL!~c zQ_!*r7l2H_FlJJsMw1wvv*AVIv9o+na0$1-B>TE!dgo)DFwZk6C~|F7;SCx-O2?5Q z#8e_z3gR&_5K@QmTbDJ3D;yhsEM?fLLk|1YHuowq7yatl6B(zjYXWFP8R3CZ$Vir zJj3G}gqwSJsk){phE*F>W9JV4Yz*B1Q9lU=t)8CRg{P5#Hq}=})4T9SYLGycEEEGE zz8K~OlB+zmli_ZSRXJxH-#2pb?^H@%RgwK)SQ6A?nQm>t;PZK`(jw!3G3?zK|Es!| z!Wh+*_s0V0pQ4n53Nw~LNNbI$XZmg$G4rf+-*ynA5zmC#PI5&&P7FKX$&Nk}z8nfW z5Kxt!nTQ5NnaPQ=s*W2~#(DMffbvHYxUhmq?<#l?!%IHK&xLvm^WzxJs$B3DC=K82Sn}HWcg(*7SuNdouh|hE_cDhK=u$BT z+vb3lF@Si~Vy|7O>45h2 z6Kt3rSby61{j0PJm8QVndb;7LUBs$rzy|g}JJk|tZH9gikR^bziX!*885{0Bx>J|xWJN}Zppu|UTTvkE&(fZsEhKqHHMLo$^T?cjE5+g ztikzEsaD3c8nMhc0HHNYXA3OBvf#d~@x$R>yta`3Hy*cAyc5-Jv?jFN0RLx_yVHl?O{Un%V)%rDHGA8PDINGhT}yN4Q)-y`=HRVBnw=7|-`Pwdd8O@V8hqWl*noM0Fn&sN}qV zuE(UanVcKLK{bE&3xp+UvlM87_HemLSBG_!2{JMNK_Ka>p6e`L?D8A}B*ve@`G&-k^f%EwfR z05e;gomXfJM?MCa1Ja;$eN21i*w54vZb-*(?cfGrPmF_rf;EeGxal2NZqr)FdjOO6 zcb83O^pI(i9STtUX*Tew(B?7Yl^Xc&Dg*L%(f*F}t}On>5Y| z#9>1Nxb`uSqHSJ5ZMuZTF1$FmJHKz7c%hmlx=X2vBRp|)p&qxH*a!TtA@t~ z!$qZYEu=|rr0Hp)*e;b2Zo?`aCddhkKO1%3C@h$)=*=QYGNpk>Ld+Vz$-2R?*|>=d zTg;fo{>VEf-P(FnD~n%-Vr^T3B7hh(D+2(-^qpcnsadnGn}w-;AXU+z1d~!G-FS;h zo)#|joP&Lg##dzRxWp6pD%(si#;QXtYvlUno`H?S)jp_^E)KYhjA1GLw!EgRFE|lJQ$Ry$c@2 zobN((LX6S^-;6(Kx3C`@rly{VCuwj@2``+*z;JdB8!Ygo3HAU-7+Hffol>{j%VAee zLCeR0`5nDj9|LAaG7WuGtULEM4|Jl~h1Xw*xS+QssmXCxvBXks#00T z#e`g2M!}4hwEfP!sr$r!XL`=bGp|^4UV-_aA;E)|FBVAeQ;hLY#YXz5_B;c);m@=R z>r-2F*^o@q(`w(m%!m;wk~Y96ZA_No*dAgJ8uq9D;_CX=p>-~pMGZP3bG#|)H3IvxRfSJ?=%RI*i zbU59u*WU_l4N}Gaq_{W(XAYFeyV18IFln&m{-zEk`#E%&$w;DPngl=oI8C8c*OU)U zlShOD86eHs`l}u`Mo29-fK7Q7Bm7l?5!yS-Lu#)pHcgAJU@PK--E6$9>Smi?rs${) zE1eEd>0LJ<(mv@@?L|jrkg}jNe1R3F%+NC`PO;BN7e~ z%o{}n{tyBVL6t$Z=n#UWJA_~}gHl9QSvZ7%R(y&9X-w==c-cy^D5}&rw2K$CVwro- z2=6Tj&oE2BONGz9%lM%!3|F=2B1~+`uJ*EcXM?YsGXN;^eT|MCRSE-;GXSb=lvBJ; zozToUQXEL@J6g`w{vpH!rZ5tH)+l(Dgu&Ve70Jxno2HT?#H>O|x5dgG>B|BDQKHCuh6hJo5Hf<@< zraijEM8(Y?0npu8j;@%*$g)HGkPL5xlhPlYt4{YA|18An)lr;ptU2^(nElge*aPE@ zuTIlqEaInBOLf2Zc=*^66ObhuaEmc7r-if@g zDkK5F8oxJ}y9?z)@-Ez5Ab}GdP9d&Xh#~IdhbI}FG&C)2`L&lBKOGC%(67PykP8#DMQ5y@f==6Q&|v zyegm0+*>M5ZVfsD;@W%|rRg60EvW$+g;3-tK}`}hg>0#VQhhjBuWa_&!B9?bk-^a2 z9^=(k!W@)a9OKd%FSOg3gTg`-FB@RMH_1d2%t;1!i#~@-xExg z>BjS?pFbUjtXg}jhBpOD?)UK%2&H&BYtNGSkD(Bwq$!v^ zDx5t^dcLxOJZnDtrwy=O9IQS3(Hg+NM&6N z&f-E?n_z?~CB`JqBSIsz&(UO5>8t!iTJ^C-dK+WcIJX3Vf-)rdnHS7-Iq7E7 zuOO%6WgP-!V#0)QH82xpzJs5KIt);ePG_!Zc$ z@nUnK#(;3IOp#KlZuO{-*?}BzD$dim*z`!=YCsqtQH{m&fxQFSfL>P>?VmlctQBOJ z#wgaT7o|d(Bsr5{U5pio)`X!ZWG5y=R^ZS=240>N!fcPIr=f-HrO6gj8E-Yad1>;+xt9Kx^u$3XPfFL|l}Fh?J%4f<$p4XZK(yI46qI-QjR0E{h5@Yf)y%f9Wcl~cX7 zlFN>4h>Va8Lo7*Dbm=uDVTV(A%fd zT)NpdR;0Or1yw47tE=jA^KFOS=u>R(yhlT@$B}(o)IoNJ^zk>+Svc?#;?}D(r27=L zbu%tL-5IruZzMGYKtb@4I(O;&r$=G-FyCeQyX$q*;}`I^Kt?imHhfl?M(Gs9gnUfC zF1npFe|J64`GwG}=StfVJKdF%djZ>M_Xhg>rNX_b8_Pig8{>M-7RV1x`Ow_zR*AHk z%$PhGC@*Ed!Zy=>{#dP^}cHZ4u3I;be2U$$& zq>jxRcU}0sXgio864I?r=xA7DX}Jr{D~N3@BLxJfLL*_T-TL7Q3=li6=Ff{~y;Pmd z`Yxnx!UF=!v}>kagTFELA!?z~h4-&^91ssm z2phPbSt0}iT%SfRS)JMifu9`PhCrjshPq42hk-mSF;`u3*(KPym|8Eiwhjy9*+FF! z#)7+aBO!BYM~I=r8|E;VGoN-2*2a=oH3|84cCc`~hE}+#_d}>C+{Kgj&q1D6?-|_x z%uvx4UPDa^9wgk_D&PP*-R{!C%hY0!Vc)c(fG{ojpegt2mui*xbyK_ z-!=-Ym?U7H?;GbXVs;T3ZY$IIVw&QzcwM)(Ufn!(Tx&Q=iYL=ItPy6{+zheUWNtb%u0@yHc$WzS zx`fMF3=0wFL(|LY%cUA#{;o3H62?r!g0Rgu_&eP&PRfV&CE^h{p_K|)EDtXnUpB6} zd3@`YR}aJD%DBU#1az_tz1)%IA#50a8$*V(}=NPAHNL zxo(`8UEIf;4ZMcUKL<`f-Nk(j>5pS6n<_rz#eJX+j%Tdg(*;c3Vkr1{=-Palzqs!c zgyMWyK#b_ZMwj}Ci~GiacNppAkO@Cef;vng=7+6=h}o|So7};3;w!3a_82IJWWfN{iP^o-nYy37JF#N)qNz9 zVvaL10YXat>OLB5iX@JJiLk*>NB`JCt5qE*`{WP1&Y$cl_!R-; zyvy2vy<#eQy||wA=TR`Cj3;(1 zV&wfofuM7?dj_j0wsO8_SBbQR;OXwOe8Fu>cbA!;ACCExG9tI_Sj<8&( z10C;)HVI{|xoLX{5$@3*kO5Q82E*(;ONa@+7qe`FZQQc#&9!KXGcZb%Fn`+c~1HB_fW8B?ulUUU}t)vU$8Hq{exb?@j(x8dnBp)k>(@Pq=T>JB1(CT zQhrG(?+5$kUZ$iwgA*z3q};mTK@8x$K30|uDK7X@1fx92KkHB`406x7aW}1 z5FC=*7#s#=9L?wWTzhZ=zfa`-Nx2ok@Lq5hSACw7TS#pW1q*X4gECsNkyfk&`gR~+ zOGzIB!QQ;<1twPV{$t*M%#$Ug`H0#wq!X@I1>eZ6rv)dH>Lfm=@TnrtjpTWPJbw%h z%Do6wOMq&1a5$f1fZ+S&J%Mkf7Oo>we@JTK@I7i+M-A(!Au>oxdAru&+Y)@N2OrD8 z$DhH$O7Ok`9B`;*E=vvV)S&j}fai7KQ4R0X-WO=^E5Qi*B~7}8xmSb!l+;E^FHq8A zFxv;LeoToAfnW|LE(D4vfZ}x^m_=!CP}&lM_bgyPhu$3lbn35#{O(2mTH0|TkUj~d zj{*B?a&DmYD}il&kPfyA%7coaH+A)-7kg6v$CR%YuH5+t>UtUaiRh^p>8WR+p$MElL&?uk@^jGg%ar_La4J|j z3k;2*yfo!6%)JRE41kvN{iV9!q3(Xv{Y&0Vr0&JMeUWP=Jc zM*1*K-HWOF4eEW1de`|Dt+5uJ3dV&C(eMarOH=+rU>HPgANbndr?%UvZ4I@(<7@kq zQOiM;d@!v(1Zr@#y-#f!U)x%%?PPuncc+5evq*mqJu(6;x|)`OtN!3%SMYK$^mYjS zd?Ik31YJ6MTS$(#$RS$$tM$Md;Oa%LJAvyK;Q9k_Jx2+v!NQ}!^*-2thSHv)wBG}l zDEarm^%8LX9xS{>4NIxvZ(x4`wJZj<*MRL=YFbWBuK`;xYI~B=tk!9Cok%NA%DqkM zr8Yv>^Q)a-8=<}viJb(!xt4B(uOCEPPv%J};YLeU4$NBsa~7EY3dIbx)~0!;@vc6J zNVkp=+&{O7{Ofri0slH+UkBVD0fjiia;UWr_{Nk;yb!X91wOge>nJ%*D;DtS)6u4>wDW2{`L@jjqU)g82T1)OpGPd$ zd~(eP-YYDnQY@$U+^@CNu$K98ZLoc?CAIb^Evz8x+zhwnT2%q2dL?e{#*E`KTS)S8KWnu$;6<65;GI#sLGqS4^x z3ZNg)w^Fw9?NX`Fme7g?v|R|znky*eBa0S{d_;j_rrW1&z5`Wgs&yOua-lBOQ6aAMHqaLd?ny!Ezj>Fe1MOrKr&pF?+>;9 zQChMV=+^@MT1z>f@B8`unvZZ*5W0X=b=!Jr;BoxTiJJ7isit$94x6!ai%;?3$91_q`}Gp zK0U1E`CmhQ-+ywXx>4%*P+^pQHh$zr>85#-MyUEwIMR67JpP4y_4W(UqPWKk^!N+l zX$kmQ0=FK({JeAS0h`(P%>Bko{#zjVZ-L}r!Mu#k2}!4l6n}#!{|25s8=m|GI@$nu z^1Y;3foAYUWTv;_&wqqJr{T?Sl6Pljsy&ek_U6|<%nJJ=E$qjU5A#80vmtj`C7r;q=wX9tv^pY*se_(EwzP*?hW((V>~ zv-E8HKDl&fzE9(K3t0R(IJx96!S88ef|>8#tp4BA_B(<}r6s`FKRB`E&*bkP>{Eg+TC!KL zYiVWh_0nzV$(6yed`iLJi6!O12|bPuPSo>~4VL~y%QK1Ji-Rwfd?nbqbgQ7D7rn#l0ODJl>8|e%4hGA{h*cqQ*+t7G!O(){Oznc#3o{nK!_ipC`5uJoB>f0Y()G( ztdtNVl0QMLtnD=*h@gc{{sapV?JevqtgS>lm1v{ytw}M=?d;CZ&F}3V+!q@3sy`QxlrP@WNu0Ik3zES2 zl<@{Oe2aTs^Z6FB&(d$vDoFe!cB$<^VBLph$3J3s%$|yf#ha{hBl;(#h{~;yF^-Cc|NAa*d{m^Vcpu~XdyRk=gfPhJ!8gh80#fd)fz&i+KkUjvwwa0 z#iho67#TmpwOYe>2sNZNIftA!^3*AhN33+sRe4Xkc88*qwXkO=SnVle+bv;{rh78w Mudu^&SIH}EPmX%$!ED(#orD;y!_~y(+^tZVps3%oEv?_ zVN(x}ZR3hvEOivW<3}8O%n2v|c*bmgcR07j8AqIu{Q6GU?R*2jYqYY4cP(7W^6}9nung1L6Cvbeu)gc4=6&3aCU(~PF74_r( zU_XI#M@^f4jQg4^8oOiByZHg`Pet#!`?y!E`>~gbZgFw`FNj9RD!SMIOYDlUA9Gt5 zEe`udZeY=xu;0(^*>7OjFLvAZJ2~w42m2*qe}LP%-_OH-;I`=ZYSi6fcKgf;i_fgm%JnXy0`-lA@ zZv2k-h5e!K8#@gQ`&$hB!A>nD!WxbCtI9Pp zUxQmfJIkId2ZCy@#@%d2*BUg9^k&mr=qh(8gx!e0+n99VQ!_v&fun5&u9HK!n) zZ&#|Bqq_UrEL&wJP}La>vv{tKv2oUEVD?(B&gSU`{;zq2XEpcc@>H`yrM_0Ja%b48 z!bNZ|WQ3k<;!Z8UE4k~TT0mb^5H?>%)$z_9T36rFP(5dEQ+#cF;yx4hi62#6Ti4W5 zUll)M{){8X#TPDIIKC#lG=65?{PFQaYHH#(qA}i3)mYWApla6mc=_Dw#`x^I+NOA8 z-R!1?l?_$#`IRkkri#y~;<@^Ux>?OLt7eUh&##+RJ-b@HS=Eg*Yw8-SX2t6o;!O>e zwT-i@8XEYyu)1k(U2{{sX>L`#>Wq3;X^byysBUVis*P9HGu491nt0vpjX?#M!`w7C zo&SqaP3~JJRC~Fj`7I_i!yb3owCU5U&S?79gnjlpx@uN+GnbC%{v7VsK(q#aR?TUy zsid=z>oXvr7mh}Rrf1)a+=1bm@$OaQ;kxmS);%y3^2tnFHA8f29Pe95dLTf>1yvld z;vTF6;RO$SjQ-W^!m9TK&Q$<^1AZ%0RSk{Rb+z#c0!>Ssq=hVheXlkBS&Gk)*;Pti=*^Vs5Y?voK zlr~qw=xW$0z18xKXhn6mcFnNskxof3D|td7%?zKHPB${Mw9D(!5k^Yc0_mBwZH~=c zW!JUF9InseSA<%l*@Fo332w5R0`cQ+sy*AtT61lFSsQ6?t!e(z%IhM9Uk<89kK z?#pJx-8W(C4051gk>!w z7V>vvo<{aDZY#^8iz`ys$gc?M-A(u+KjY{8x^a7^o9Fg0A21b|Mdgi0YhL+=dc$52 ziB{s5_#KC$G8D4#P1ZKL1G#!UzYAE)8%*QAIvs1Y6-7LZ zar5``##P|2>%v-cys1%`%L?L|@bcVj1W$Q0X>lYa(hWT|Gn7a9d~f2!Kiw543sm#c z9nqkmgFWfxHN#tu3GM*5KXHg)6gPEM(kK|jAwRS9O7KeVJjC7==$HJzm-2dg^}y+! ziXSWfOa3*o!DcK#-P3kNIBBMWM0tBAI>`!nZT4Cv$(qIgMFCG`Z?!ho2w_zYy7<|+++jW_YPB)s& z=cJk4owz<9M7Zwpjy0@v#mTU3QOIt;qMf{E^Bx-1! z+~NUllG~Tw=2z}LkC*HD@LISk_7W_zf%+wBmo1d^O5O`vRgga~>(OcjDtkCRUOpa; zFpQqn6SBbKhu1}|FY3w3D#D!8Evxbqv-y9)`phzzYmLr6_Kc`euuU_7-0Ot+s-UMJ zH9ciioQv>~zwmLf#(Mlc?i=$^mtX)&?50s_$c14G46S63fe5L%Hz*4{>m13Tq+F*Wip;qK5y{3 zK!lU$m#l`jwxYnsxkG`*dP^UaC6RoH@MMp`M_ji)qN|QHf z(57}ek}%EZy@Fp~tNU4%9|}?*nR&RRb3J7%!d|pl2)rA|HW8P+K1BNBxgbszJeP;s z%Zey0*hN3_B#Jl{FN$u0R??*CBjUSYoM+E#4pChAMKF8LMS3oeD_VK`qG!Ff&tZ0D zdERDj9C1coBf_XRw}rhmT%+%65dEu+W?Z8I?7VZ}IWE_eS0_$^S`Sy}rsmO0#4KHjOEy z{S7=Z3$ExX@wMmrQO+;lwy_r}54A-jynXgngIeRQ;+PqX5jQ=}C1b)yGUB7|C~AwS z8AWS8t}4iZc;r2%*9LC~eRSsSUKCGgt!TD_-|;%@GZ)F%c%JgmOT#p?hf8=Up73*e zUTiMk@H{QZbtJu;kJ`N@5cdjpHIgb%QBNb!Va24fv3nVf#9dhzX^V7DT&y(s4>!Jf z3Pzq(R29#KqhKm%VsDyw3X6^na3hkjh>MZ6ktdI=aFplFF^+DWKR+r;TiYw)98!V-anjR(&zJ~2=9X2_moJVx%af8;<1O`ON*~p zO8&)d!7RwUjq_6CZ9#7zAL(Z#9nw!{>od6*B3L zxAO9v(yf_X_qIt;N0Rfe;|^i2+(9@Cb8&I=xcS&p&qQ(-c@RHFGstTymXz*@7Sbjk zcg{9!3sIS1jr?b!PNn=-bcwW1xNKh9R5gx@r&O>j<0^g6uAEsFpIte>x~3&wUE5e+ zt)ldd7OO|ktf_2lte(mBShr1_D&ya*n^Dwm6)$BTo z@s!cI7)~@F=$q<5wzg_vgr{om@y4nJl-L(mX+NMbzWY(OFTj&uuc@3lZ;$cusg*P5 zhPUH@S>MP+K-N%I6<<)VjosbA5eHi@>M`*O^eUZa$@P+k7xii`L!j^I*XVBxAw>`|mRz zEN52LHr2F@)59(Cxs?m5n3!@tJ0GHWeOjATydeB^J8ofNLTA3oC1zq(JdTwxhrXg%yLVYmGtGP4R_w%{71!GP$N|PW6nMs&Sy! zP$_MJifn$dxuuoB3!_n2*#0tzTiE!TWjkYNVHJ;w@*+ftNe?V^r*amu(^TD9H6L;F z7}W7JH*~eBdS+z}5>$uw8RYfN4Q$C*f!K5j9Z%LkDwM8jW~K1%=7|W_C`Dj=ypBgh zf-x7$Vbn6f>K4|9mPROrd;x_9uUbqERWv(-Z)#eN&{x&gHP4wV+~-%$t1=B+$aWz6 zUUi0QePs=Tg1Ex=ISrNdNM;Yk&_WT~(hI4$U$Cwr;(GO*Y8ejTw%sh|DPU$Sno}o4 zJTWV0)zuqYnb^bw%UaMwY?!C$%(~`UOgdmen}t<1HSo2rrkefAZacBCuAyeu!s=Pw z++u69xhYhUa@b<>4A!+RSeO~;0+7#UU$Y9!Vdhd`%BD5OjRdkdbKwFah$%z#WF&g9 z3C3b8D{D-2;NL=9V%9941c`#jh)Au$Jjw3cH^$rdZ@QdPm;HId7)o7G0^AxKFw&eB6HMDmDM#kRLp5(eU-?7xzpmC z*bR&ve3Ccsu^PZ(D4?0R%^f@e7P7&DDoxZ}YY_s(1s;o~Dre~Ifk5j)HsVB;d7B7I z4|IF;|9^ED#m#MMsy}e=y?dXZ_)q8A+k$WvKzgQ9K56c2jlC7EblW$_*@R;#^h|Sy z^WUKykx~B`uEuE(r#;H9Pvy!96d!bm<_LE@y{YbK{+rJ8TX2L*|D9-IwJ&g}SfEmz z%3De&R6y}Xh^T0x^g)m-pjR28=fN6n))vwj6?CFHeDS4k3MjQr0@(sTCLg&htmCm-bM5E*1z%HwnSwe=~@F2DT(hJ_Cirb z(h`*oddif_d7@fWyovDglHrS#|H@+T-3x-vLFzXYWFMrHiwuKBXs*`rnxJBgY>}5I zzp*jhN)d}_b+6HQsM26mp3_KKca2ejP4oMrj;JH5>i>NoeC!+YV@-}Vhj=gQX%k{M zgVh&zB;h^fOA_ukCR7slIxgM_CV$UwmB~73CKXv!N|M$VX3{-bA-^RpnG{yyvhWl% zemh3e<7HFcq}gWDT8ntbuclIv%J`lVUJoU?vRtw<>Z!0d!~XuabP_lH+`SK;_Li)O z20A#T)%}J*6H!6I0|?Xcb|`314t^cLQKWr1aI`O58vAh$FwV98`EM`&n?TP^Kc;-z z;nNO1qj)8oe+9zSZ@p;M=yFg1S25ywxRdi2!kSW~IJ*Kb|rQ_qtT4kj1mIxu`tqSkLnv?~3 z#JkaQ@ya`@JqzRO4tlFb;iif_T z8#{2HPhwJEL$N>yWfxRalY=|m4;0WB#mKs=syT7%qjWtNowqfn98pDvMl2h$ijoSm zTP>owQ9*EcZkGf|alF=IDpIH3QR?2|1cgb-hN}>zMOC$nW{@w|&Y`YE8b^{BpWfWG zh+mDsHn)i)0MR#hPN=37Bi4TTivJC{hI)>VLEBgwb8uG(8*t&NGx`v=oMM$evVu1e&p70-u_niQ}=WC z%i^KM#}uDZd}{Hf@nP{%@v``i@m=Hl#1D*jj2%99$9$fV8aoKH7PqlCGq&B`?(Sl2 zthl83xZ>{?UlQLoJ|aFk9=EXvbdLp+{O9@3{QCR@`QPP#o4-GQU;a1wU*_-WYV2z0 zI=!pD>uc-oTlcGVzg+i=bw6Ks>$;oQO?ly=7k(SQ)nH5i=S^&YULpx!C+Wv49lRgX z`+oxl27?9<8M;NumRoJT&9=izhi^Ax_Y${KOfAy!-05z9^~?Sq$D476J^nXO{nHx%S!LHAf8y^?Kbf)a zi!ZEm?%9T?{_(v1?6Z+%@W1>8xSGxUFXoDQmnat7hMIx$>>elKV@1$!O6LWx^TJr? z;-b!r`gLwsyeN0V=U09{wEqsgC6n8d*14@{2mE1c^+)aCV!Kb?#?@%(Ah(s<&Xu`c z2sS4nfrqf`b_{3zzJrsTMBm|{eIr> zPjhNo>gP_JxL_J5}M zKl}PWHudCv_V>SR>dE`q)RXu5y1#g+|1;J9Io$qCu=OTS@C!{a$RrM3QP4w$c^y^LZ>rM3QP4w$c^y_(= zO`ho2o9Ne@=+~R**PH0qo9Ne@=+~R**PGy^iFPPY~8LTLAw*)C)}Rcy}bzh_qO-hCSn8i*2lgC{ri&y9O%B{zUmHg z2fP2_4aBqD*D1vvMtSXUifua(#X{m57NAwab;||`?0$bn|c)~QG+`pc5!S)>=LZwWwFa+D`Tr-SH!Nw zQeGXqCU$M?y4dxxA7C|C$8L<>6#HT9N3kDcLD$4?iLH&LW9_jHtm&<>+hVuJej2+Y z_A@N&U9r1kKabrLyEpa=tn9C1zmEMTc3-Si#>uRek}HQ?1|Wuu}thKtn$;bf5e`NJsW#2_D?MI3$b;v7h^BQUXHzjwO${4 zE%tisjo6#9w@3?@;x__I1s76QsCTE6X0?zI&T}=`^>^IWv3K38I5}brd^|p%S09Hu zm@UzQS#JsN3==x7G1(>u4pt+!*+1Pc6Gz9aw86L zBc5`j*0~*?cV+Lnv2VMb$GDw8cDvWP#1CEK4!7riZqLWuxK(a1YQCqq$^URuE_3_g z+}hk%Gwz^!+`(tMukY&)9pMf=+a1>Crk?4h=G_s)-4U<5BR+OV#@ta&Zu)RHz06JD z#T|2-J9e5o?r3-X!S47E-3fQN@{?ToUtMy(s~GJnc5@Y1yKi6PPCD3~bhtbDRd>ol z_nqflB}I)DZpQU)Mu(gEb2qEa&3@UZ*V3=AG(l?shf5akWES-6~hVmpgrT z*Ko9JNV>+6uIWD4yt7-7c4wUH&N$zlS>n#jxYq04;(gskN4kst>MnZHrJP${;x0bH zT{6U7dYHTPXm|N|clpQeiXGh*kGN}wx@(5HYqodSyyUKZ-~C{@TRqs_w7grLj|aP(w{mNK?biI>tv%bVy}>u!I=-TtQg>95^SfA4-a&fR&4yKAhwYcF@# z8h6*7?%pBp-fi5yBi%3Vb-!Heesz@l^@Hv=-*@-TbN7Gde)~7~yCdBLtK6S2aesZ& zJ^Yq?e5iZkA@{@+E;HU`zUuz*UH4qMd+sFn&k63I`?=@Oa4+2B)~$9g#oSB3bT9qI zz4W+yd6j$ldiUxKxBepc+F9=PPWR@4?yXDQ+i$vePj&Bo)qU_6_woJi)0bTKHuu?Y z-RJwdu6JD5CvHQ`ZTO4Z@Q;`~I2KFA`W+kV_du-px>)~PV*~1A19y!LY>N$iFE+3< z7Q|w~pjfaxHfZbEpp~(~3u8l`j%_h9wnb-bcw21v<+1Hfj*a?NY=pQuX*{!n2mp(Wk?*^pX^R8bq88-YJb5rMO{dJ=wpYQT_%k%lqlF70i z2k38wE~nM-z-P(wF*kMbydKaTc9$s!q|;?J2bIPLm*i@*b34x}{j)8W_RrXZdS*=a zYXiI2vYWP6McL7|R?>q|SS!cl27|$DfCz=M9NEL*l9S%b&MvLbodP&t2t;7II7DJ# zvLY4yWx%B=0O&?JCYTu>+?+in8>Ie?kp?1zVjvogd^Tm|Dxl^k9rJ);W|Ru=3G%YT zQ`csLXL^sZ>C%0V`EmAGRtcBw_`b*pr8?8;RB+UQ#VN4#q=zRV>gB=dxnpxdDjI1} z^%&V+7-?j-k?qD(jXW3#jj0fstHyG`A9LL18SuB%nYrN0#{hr?&E_+vWpDXMDF8wa zh~K~DkAEu7yOH@X^7*$!-5nAv`<^%yPkt+(|H$_kZ@rxo?HB%3xV8u12BJLK-llT# zW-7R2^I~^Dyg49Qarr%YH@wxcL^^$Y)NZBK$7hm=%Kqv0)P4E<`+6jiPS@n!*kpxo z^ZCaUu(ecj_WNYTsv!F<=GwZ^10=iT6RhqYXNM^}dkj1Q8@D~)s_BB163YF;BDXFmTq zl2madGM^L1p9>7drq@NNYa-$K;6(`TRfA?I)rt`L3WOTi1E_X9tybjoEOp8Afp5 zARG<%4VnW)m-=>jn<;53co~u zL?N)tCw&Z2MQKB8aPla62?lLpc3|t|slc*zavErANv?{1+#j5r(cQCaFfss0-My^4 zg-R^n4snZ1mS)N&m{U#;vAHpL zW_2kLoOqQNF2qhZ^2ZI60P?WeL*Hw4*hAxosY8#RxHZr;aS$|4-JZI=Kb#ySfinIM z6cdc+@Moi*amO$dpNs5nj~;w3vRTp{$R10e@jwO7c$&3tOs!&}fc5hmbbTP#&C>Mf z^>1}h#XPwTnh4Zkig=3#2^4~VhjIOaLgdEk~3z5oqwmR7KDO#JFoth28 z^lybg0tU_Uq=Lk2x_crgRWe%5xxonitw*DtT{Ds&|J+j3X0yO7E?7FnPkh=%QJYN& z>Q;ANs+pxfV6+>g(VZd<(jAmM|Cj9ll%`IHX|H7}FsE;%)4s*1YBnsH`AzRtOfAVPleV+dEqdkOi2C&bj8r6TeqI)`?5qJ7KsBRPO!IQBa5w5{1omw48o1^Ri4pG&$qg{tolN-!dh;BDv0pXsX0M*PWHx9Cg(wK@;_y~8)~BG zVyiA(6$)OUAzjHNeuWkm-Eg_&wxF;nF_8?;gLU2a6A8TvfSENh=M-I$eX`c{wG?5v+Y6*0itOwIzsw^3sKm_ zT^iqO-MLv!O1@;8zdjhGEBWvnIyCEE0@gv-aA@0j?!WbW$?%@qhD1+M4;a1?skO!7ux z!DIv_xvs~_Ur8@>H)W4Fq!dwL0Jy_)g%qeSGojF_;8!R*u}TU(*eDa8pLYkQ+ne(4 zYv<NXhXIVdBSfCs~kn zAq+8RE;E91@8(TL{z*akdkMh{ndCPX9lW~^7;E(WApR*2a-vM za7K35&e5fJ!*KI5n%SePqDI?uk5%?ZXN)kG)LG(=Ok5hQ{;5yuxUD!1@+dpxRxtIB z$L?U1!Ec6$dvKIVE)5ni%6ewLEev0*3mw7K%4N?n<7Ub=-!t(5<1m3|E^r^S?7*pa z^|vJX>c*-Bk?L)2iOZi?FN zWLDytQ-r2WFDXS1w-9DL?9N1y@`dkK0X- zLoHxQX}L--S@EOpRtpbHRy2Pgkg zro4^dr2NT1e+(lb^Oi<}QA2mD3om5EyQf8QwNOR_xN0u!t2BT?)AnG2gPhguq-8!3(ir*oqzs4PXHGx08^BJuxN2 zdS!t5)6`D^N;B|F;BtLCVD8!TGwE)+oe@tv!WnZeMF^bmE6 zXhxekC`-Qr_eV*4bCRYJney{*I{&6~Zdi2PqU)4aFmMYognVUH)V`cfUotNh%mb~L zku{;pEg`KcaE~7KQi!ic)o*l(=iU?F>7C7TNqol$$)P12m^erZX%3j)+ zh%`UZ#g5?R76m3>ti1ywu(qW+=Ih;nb}V1NkWje6s&In`SoNYf<3*Yg(wTe0{;g=6$0-G zU9)4lmAf!^9}*Heu)Bd=&*Y?iNXZRB$)B>@m!h{?=rJumB3Uu#r?!Z-V7Qk^Y$by! zvY}=s0GfGRaV9Bj)9tXks@#Y*hRwI13Ti8Q2z_5D>Cpo*Hy~4S-ily3I%Ob` zs{DXu1nN-T2IZc;0s1-0(u&bC+;9nsnw*YIbeNoyT4l<~`zb^F)@1f7lT>kEf@#30 zhuli>I*?r~gHe8c2E@9Ohe2dV1!ldUcI>)l^j#fCIEVp(pk4c>0&Xl9)ZzT_t zDB|g`ktTp9pLcrsT({8VQ#A`Bkn-i15=oZoIXuF3N{`{_P{~%*y8-&>{z&75$9Oov z=d-Qu+C|qcQeDYX*H@6c`R6ybv;-|Jjpxr#1@)T`>%Llu*My}pfROZ-0Y6FIjJhS# zH%QAWto_a^NRp9f{%3MJEvcn9TGX`|Oj(|E-?t*DlKy$AIv!*T$h2 zVILOyWgkfYx|gv;a+JS#V+ksTy#?+v-zSD)^ub6Xk9FT>J>A~h2YddqS6MEP$sHVq z(c>|-HJ!>8iaN$)goqU{2J5xEr-E^QD1fvgOEiGJAeBSt5uX%#@DvWI!~pIPxMy#Ko(6;; zr!Xn_%Ad&=FqT@QB$Q{vUIm`Sf)9e*pW*2#o~<#@m3KQyd)%H#>Kd_^fhuNLxi#83 z1X|leM7zjKEwg18;M~01Me_5euo*2~dQqd<73$f0Mt28gD%h(CD`oOT;>04OR^b1H z&IRqm@Iu7k`k zXr;Q=f)V~u&y3R3AknjjYm)#b{XU%cm;MQeZV|#L5K@oyYl{s0)W(&Z9+VBc{I=l1 z{HldgHYV&Dm`s7Tq@+IWv}2No<1;g;j1QSdq<_)fOP{@3PK8NLMGC#Q^6f*^wu3PvCze$BTd6YZ$ka$Ox)Uf@O$R|ZHFT0^LL)zc<7oe8UkP{-4vGTH2^xhnxDnk*# zDo;YvtU)w-_N24goI?(|fk_Us&7FT%QGmE%nM%(}cztzd6D!iS_2#We?(3VkA}^Ya z0u-74h%f0e{|HM%2Ms9sT{c;oB5t(=lM@hTsfpm(Wv8_x7_oI z^Z*L`c86s0B2V`nTHPf#uey1arIJ@`MEZKkczS<=L`~;PZISjeB4}(Etp$hM6NG6G zdsh)Q3;W&J1U=$fOC!5`=flrZ35(@_CFv(E){~6OCQ=ICT4QkocoyFd)IA^Tj5TvO zvYgF2i}6Mz%e60-e9l^A`NIs)DwtOwLR#lrBS48%#tw^cVxnj7C6oXhxcdUrqc$&K z7;7c$dQ9kiVne%oa=7f}*dmZqi_mIm;ynNYwT+K|yw)QZcwXoUB@R~rD=0Sl77tiZ za+&O)EXWl*o4#s7_2Pe#Ga(pTE zW0;b$CqPBz95cf7NcC*{^;M(C3;EB?UI<~XSSF_D;VC(pjl_^>CeQnM!a~cllpbMG z0TT6?;8Wcll|WapCx6J^TAEAbFqz(-;K5{1G|cSD+ZF>$^*+}Kt)ZMj?K;8GKha(X`no4sp~r02D@mjmc&!cW&u^s6O!lFM zSsCop^i|zGu8q)L0!Ia^7^BoGEO&+}9zkMs9Rq;4~Y75 z7yqq)3cl1qmE?Z^Y__X(m%-=dmRT)2{COci|8?a${VB{GDJiP1P@avG;Nc!vskC(xBv_?6W}DD^3Rp zz{CgI-w;5pt(D5UcwEbbDkc9#=YXU}~}5fVf;-9(3-P4ap7XJl)K;VK#z?A&2)6p7bFG%b}qLX)$kQ zmZla5-7`Z_@qpQVFqgd}SCm?sqxC~{H6n^iN`%n6V~&n5eZ3cXL+o!66k8_uMS0jm zXI~~r|HWDs>7Pii^dL&nf@iW0IlxNYrW7W9N9rzyjx2x3cr0zjCJ?gWSd#0aUiq)i zkt5=cMF?9a-|y~m?d?SR$|fz@;ajOGtSi>@uSm}Ge-gR!PbA>3s ziHJ&)(`dKJa5MqjW~6?Y`T;9s%CEMdz_-*p-c6_g_@)&AWxo_+Q_-}u0v|!OLKkN& z>E(3Dxn~An%|T2{PpIRWOoPiufPU_hbC;f(S{Tf*NO2Q6JNuy0T{eH`z0EWDgU##D zZkt!1lI*L$&8{v@Q47Ss!V8j~lcRQfvEivq@>XMjZ`rjHRv=7!O03OSNJ0=J zm!G^jYR6=ftF7?Ci6qJ&vVg?@iXhBZm^!a$+Wv!hbjA_W_T5aT5%OLVIvGVdw4R%d4|YRF#m^Oi+y9( z-=x#OG=k^dH{jT9AU&EVTz^T5p3o^DdL%LQejFAJwoGtsQ1Uq?ySE3+P+3mXg{rcp zz_w%gvO>_5Il>-Oju3f1PjH0z#uO5SE|5(V23X6wTerHakfyCorf9EJJfB{9^GZao zSS&;GfN^K|%bx>;f|cnf3oUkCK*qPPu#np$Sw2_giw@tS_Q`S-;t?qy2jF`4{&Ft5 zJV+2fVC?bjUxbVnV2octJw(Mec%G7_cr|g$Tv?Ki!2eO%8K|BTqS%g;?O9r^2bVGN z#|7C(zE)}$mJ0Y6VAr;)Z54Nf9<_7uBB`(z(rF)3dDpU4%T{3-nA+PJa{$WB{7%Cz z>RC`u`Qc}&pDE`+_O3L0fZpj`xWX4r0brQ$W#=s;p|)+#4-8{~MLU#6_$^B+v2EwI zp<7?DH(?rZ!MXYTv#MFCR53H9{YVSbsfK7D2MENMlHX=md^WK(clL(e`#Q0pR0G!r zjxvUdK`bO}5AMm1$gWJ?lN&*WLZO2mfNGYcC}a%Yv5{<3X$!(e`XD99E&5E$F)fH% za8Wqx5SG6IS2vg~I_r?#qw6cBxua6+v)5hBYc4;33b;40L+Y2dC@osLEW3oIzmdL# zr4JAtNjCFt_w<8iP}M`GFs;hL0Bj;0e1u0WA=r@M9xfQkPnNTt@OknKZ7O8SG1S@Q zWOjG572l>cNgkX5;ZMq$L;l1JK-A-!wvcqqZ#sDe72)li=++6~+EPaqXcZO=gx9VN zyCA1D=tO!lhWk4twQoZB(? zv(oI;u&TqWXL|L9$wx|AtlX=rhzbq9K0>b@Y=qYvkVV=4%MdT0O{AN6Oc+^RH|#NV zeKZplQ<$FH(Qj{*T=`^npHj09C+ICCo_s2izSAlT*20kq8v0?P{Q<+4pvLW;P!_gZ z`c|yhZs{6Ysz$2#1KzgDm9}TF925UVvYh=1O#AX+-#a-_<@!|&3nfMeh!qh*20M0X zmfDg@JKAaqrlAn_0F3&f5u+MxRjJ`h#$HcJCa*=ytR)sC6Q;Pk#tX4j4N48vP&>0c z(A-$m<)R2lMAK$w*|%t`BykJ=`ePS*NvdZLxpTuTH6Lkg8j(H=z1Kp+L;^dAu~qt+ z?%o1=T8H#@nbuinEl*mwY4N3%8ZkZ?mZ&Sk!a`INQDw7Bl%Llyi*UpNv{NkeE%k`Y zEu={OB!$hASlH$?wYyL@3q5ltRzs%TM(Igb59LJQ%`U()A6f2U-cc2MFI!H8Ku*YnFxAp5|cv&e0@Woe#xW?@3l9#q$nXUU35 z%q!{Nc&_*giMWF0MVP~0`?51VSNv9iZ9aY|VSp9q%0hlefDs8USaqlLDSQucnc#2lnyh@cNq|@&ks@9Xo7eEeSW&+)#$L_~6 zD^d9tf@C-{1c4Z3322X=#-kv}3^l3lf~K8AlHMR*JfJ~6d%~Q}u(sB=R!EewZ5F)- zgqT{Z#|hF1Eh%ph0lX+_<@9!QlTgy}Hp>xT^ypSprGi~U3w_y_iBjjm-g`^-z+I&W zg#lw;EF^c3D=dzbm*pM`ceTG3x|-g5ps-1`l^(+p$Z$9Zh^`HX9~cgQsMqR%K(r7J zhpCp6g;7I!Sr@==j_oB&zYIkmpCH$UTsMZ<8~)c&IOKmX3V(evyH~0CQ8=)J#Om(} zj<~8qZ!K3RiRJiFopNtSw0+(?QHBGPu6(Zo6{aO&K(^ctvax&Ud3%F$if&+!wMdex zA4Pey6*ot%rNY~@4YMYAun+b(_hJBGqA6p(V(}T%hw&LaM+(Za#s0Jfnm`QOhP+ya z^nqoMw9<9N+D>noB4hgGeAm_Ss7PRSnAg(_RNLTbznP&M7-L0iyxeE8674IJ+<_S` z%m4esRAH|j=USSvncLTJW<(}P2TE|_iuQfW{(0M#Z3O4$xQjgzIm05t6Xc?Qt~0JAx%rJA)_kIzzaLjPiWY)x4kB^ zKygPi@;;WclSxFVJ_)q_BcCv8C&`z>-jWU9Qncaxj(m)0^*K%Cn=39|9=ve7{PJ<; zZkWs$K$s%G;lvJTW2G)$LXw|iwr!Zw+sv(XO-66f2= zdF_gMFyr@1mUvOQUGmydY5qI#f3(jIe1A_c1r8jpgbp0T=pDFjdk5}&OhR-mrh&{y z!iboQ3XIw|vw_C6GrC(X%l-urc%Lm{v6!mcXP*IWaM))o^TWj|j5*F)tt90malkuk zNt24^0P#I~&|e-p6!lM%-waCL_;0Mw&7t|Y(yK`B=FO)#VREJA;8nNr>Un0=>@!f| zBc-+D>>vaC|C}<83r$2S@J*eK z^I8?g7u2;bLfoW`B6{%ka*B+&@+A^m=C;F2;;$YFN*?B+_{~*@K)VrjIz+tM9pQ&FK)97zGWJj z9$5={Wn!=a_9YENNFkeH0Pq|^Ta|k%m3@-wEc5^OM6Bh@5dJTtl+NE382|4`U^e+> zK)htJip^u{Z$xb$(>Zy?!0gVsC)r5znYPsftlUAhAQe2oFm<4Yq?#lN-^+y{yL0x* z6{%F$WCX$LDkhjlE$CL}mkX8qUu*s(G(TI>gybrS6^r0l`TnN=LGGxo{g$M1$8_$; zS{qbeHqLx5!LU`c$=y=H#LXLzFSl=fQDrVvNq5Z^RSdcQq2OC4nhMq%G5>AsCT||J zuIeQNb89=R`!Cr9BenxmL0DxHIZW+Bb6E1%?8B|4yAA%Nc=y32x2_w$$KdR;P7aj} zF8OQc-KUoR`Qh*tVR%-|f$$Z!tiC4d4**zF+ zPDENWnB`s3iFZcVj(t1qSt`aWHYnDK_bU}6Lt19(i5yhN54u};>V{`j(iw&5_&)7q?|Ic`PWm}tZ_y7C6{g+4Rlo&;Vc6);r%J4~? zbn2HPJsjRmWaGR+keM1>M2^jhge&TnF9t#T;syCOPlatFecrNjmr*kz)AoC`%C;AYmDWm{dHEyND4xG5 ziO%c6cO?6kYx~!=bi?;FfKp7GHb4sPr-}Bq3)D{tn#k3Pd1l-i1P7UI91ULOYggwvtQ zznZQmqC1=)CStYr{ zyXhut8K|QI=E`;22oC))dsl1eo`Xxy$u1Z^Zg9!7+02`zIx43M@;V8@P)+<=G6@-d zYw5$ziFWw8H>~PBaWQGbB~o;e z4BZ|j$rzgM=x*)(lAR3q-Guw01>BK9i#EO_Q|UTHxIYR+KGl0R1K_XOo0e+laaqVe zZH!r-T|E4se0mArj7Cu2q;eHxYuI(Nz9Jw2Yip9$rhy+EIYr*$ZxpAEf z`r5G4P{kCQ6OizfwjEX;WaqJ|=C{VM8OZ3Rh)njn&fgCIyN_`~@TAoMV;~*~i2Obo zf>}&*%Yy-Hlg-*omI=x)vl^dXt1*L zsNvZdG@zE7f+2Ru!VXgqA_ciqv#({3%{~GhbdXRFVc6_|4vLG4^T7@o6krQ;rtXho zZJC<^6}HUID1?1NFcd95tYBla$#11pE!E`3Y3v=-2H9hCkK|6xy=GP%Jo(6p3cwl; zP^loxs$x+}l``ZWu|l|vXJy$lL3D@QnT3#6$`{7#vJ>^$y5Zigp$y8uG~7myNo7}O zPwX6R_N+J4FW5*f#cE@^al}|TDt8^SIWl`4P=~o3qHXRc#2HrZY9GRhWYaqi&&CtG zMyGPC85<@UCcP#Q94@Q*-SEz@7|xr(+*b|ve%?&_W9Mw?7-7mXBYbK_;2#GtIe>^6 z9H-mI%b2H>M-8mTOc`iW=4oV?Mdq^XT}ub#{)jX!UDC!7<3AGy{&CL{Kb1XRlDqAR z{YtYQ1Cs%J1k$St{jiyy_V9TzLo_Hm!uyTShIzm7h-Z1oEm4%g9pPZZ$0jxvOqS(X zOLD16@fF4@;j`f$5W+$|`2)yNy=4>pCx!dmSn=qdNtdQ)c%*M!t5>h~J+UA+{h_79380M=> zNA%(}z(VdZesHJ_5ls-i&fT-umOc;h<z+7=R%yZM%ePKrD)3YsT;MHJLI0TqtJ-s`$% zhqB*Juch9q3RS+V{rgC{jFiTCo_)UdZ^7+^zxoBjMmTC(6uQ+Vs5r_3eQM)^d0+9^2Y(5VHdMC{FPcXr7IU$`_w^ta$w{!K*yIxt* z_6%Rwm>X)3r)lI?%5p=VE!}HyNlW%`t))6WRgnT*Hgm&6VfL=WXuWaIp+=QNLBTeE zhNfS!aw%NcMi*rt+_nP7jwu0f&mK9Kg>orn3+>jjRm#?*5AZBJ0LeRjpg^xR6o73L zY0%#${Zs(WHOa1`72BM*gzu*aEdQnoy}1IN`%jrBykOS-RmkF9ydB)IQh(GtQyCkw zrpQ$r4nbS?9MghLELR_up1#tL*K8I@U~1H@OSdhKZg?>J`4d z0eGaqyi~%#;pvNL?U0P6)mx<>ZPjzFw4wC?;{oZX4A&LsV)BtKD9D>P1PAB76ABC~ zZY+_VTlyfyzsCmzp*-1a=`nvZKMrTj&zT36I8E^wbqq{_hZAdbj8eOhR=X_pE|!rN zu`LEK^admZN#YjUx>RY?N)Tqj*ccEO36|5n9FqC1KHq;n6{h^v?C#S{jh9BIJ_1Q4Y>;))#GeK69srQHT4qeizKB|1Mp zcS5Po3+h8s`-_{~ih;YN@4iE=-u&7o!?gP*6rfGj#?kc6lef3A2?3kqmGwzEHI(Un zEn#KSw|I5dzohh*Nw4m%*WLa!6d924{NIf<_^I>i7S{2$-dkyIy`)BFbt5H(pZF#2 zaJH!>YQNCcH_Wb50QGfHh(P6#%fhor)G~Kg=oRZO6*E&#o~FD|g<>TuYS%1WvyfxD zI%~6V_zZ90|Y%hzIT0Jew7rZ$W1kvwsUjEIb1g5NqIrNaSGMPF18dtA%w zF5CPmGX%6y25HkAqZqA-Ei901AyY^ggKg6_or&Um2B$ED3LULZh??v3b{*G8?68I2 zvz8ZhgA+OyI3WF`rdLG2<&FGD18lUuVuO>haTxsg{1fE;mqIb={`(W?t$k!A1j?Wxa+avNqlxL{55IA;?l{3OJ;PA82&LRW9F1SNzqjr_loY^ zt-Lv6imqC?D-yxJxcLukA{@qRcY9?I>%W{q{`myZsJxAIssRYG+-07K)~qZoP`}rZp<&+t(6YMa4vge##6VsrnPj+;P;A6%~NNDx`4w)Lwsx5ogJ!Yd*KE`5Mpbef4QMD3S?bZMXjAp z+$y7tgIv_wHd%4h1mlFkmMIyUeyF=A)6aNn*c5&UE(RvQLE@qe*J(*4sqzZ7$t&0* zw0s6%#=Q71TJzN8GuO0U)5<6rFnf!PKx83%9Up2*stM<4IaE)9YLA|r3wgBCMe>%SualwQerVk29g&mCF1 z@8Ilr`5-vyH)%J&`_Q$|hW|IAJox?pdAHvQ`FHZ}Tuqp<^~$|+MR17BI~RYxuRJ$< zwc;xkk9gOH1i;q{ZJW`mhSu8-sUi0_2}Pb6FjU`bMV|F<3`8yFP999ZO^y(3yKluv zgc4=oLU4a{O3oFpeMkWip3_Q~b`r0+y)6`Iaw23f!`(rWM&5|hyV=$%Ja#$|Bx8(x zzi1JXzW?EUsL8wZ+e<#ZGtcr~UJf*9yYqjGqbvDFc13IHevtQ~>}iWje;H0{JfK0< zNsoK}`w7rE41+4l8sHdq2;j{Qsr;&K&M^2X^z0i)Lsa`wavNkX_GO8`_F4?G4`Ab^ zkFvx!!wvfp|4|H;8}YwT4#-`m0PIm=WC7T7>RH%DMx!3QQlZ=JC^mj9YV89#f|4^j z`}dXVbP{n0O^btj(6WyJCD$$xUerpR2`aTdf}+sX-D4)cx)^4|ij(yCiL@3PDhMD{ zJ>D0i=mF!l)YLtnMyhT=VsdIgIMEFj2z5ugeSt;7b~=wqs9%TeJ}Y@snq&D1y(_%U zMHh8q$G5yYfMQ7Sp&exn-%2y{xmKsosFbOm;lE2`#qVu>%|lR&@h%U+n>GuzPLhX#K4!Aai8HrtlBF^bB>GBA@*->q<_7$ohY=ftGk z@V3~O!Y#+}cl21Z(Oj)8jE5amEuxW6W$+#pKYnFgdI$nKeI$nBTAkQ$Ozv#q$D z&mhv!XW7zaI1|3!)+WrD^j(v>c2Ml^`N5K^Ntxumm)&hy>b=}^^x>6YE%hp?< ztr(1({kY!W#P_$;^{t)H*xm$i7jbstz%>>%aEf*`<={Sw)BZ?+S3co^)fKGA4XAk$cpk&ec5qO6av(V3U2Ou$^(4*o60W%dpMdCOhTDo896JBbC zU8o{r+L*rf{6pJfQlJK$we@7@86b^kwxMFugD7yY;1Bk0rPemLYVep_?a?zszk?+! zItZ492=)q_FPGT|+4j-|n@UvKGd!xxe%a7~A{<6vbBZHHg-LMEi`8yPytlnfyFz~9MmnPjQ8rIm8MB`~j;sd~oj-?+3ohPp^z5lnp-#<8(L&@6O;7LwQ-^xGS5C((%yK#2oqU$fhj`BjJF9g6l zV5i_5JosS$6)SieJ}mKhPldj2xhfw7$jE$nv@SU3RMCBzDH=(6?cB|$|JzpbucYQ>V^!DE1eBuM)` z(1&4jx%Uqn^0u}(OoX({2?tOy=>fGb;a0H4K~aVt1P5Xg+%Z~))CsBM@+P)nDXhXCS+)D0qif=j5A zo`vFa`cdyN%|xzfn?S1g!>~EQgTMwXoDU8Oudu0DJC5)r$W6-*D%EDXKCQ%Yh%4lE zrgN?z-$QF=ZF^D14jWkOy@EcOX1?IYs2wGl>^{PwRrr`g>+0s!&5V%pykb0f0m)!3 z{xE%bc|r4nW|mLrXa_e!chWhcFMpC z_u;UzuN1sMd+3HRiJL5d_+Y@s2se-WXfx`O`C&{!)oBP9PAUXCVJ5(N7i;H-or*l3u4CgjKo9&PYS_1%xJH zOhY~4(koe>^293N>JQQv8XO5@klq*5qn-raA3Z2;k4w3^CY$PeQW9)QGIc#~ndCnb zIJrr(5Gv)dx;I=d3*tcdr)4!QVF;8D-v41TP^G+5iwV_4$b%}Ip4wLLnG`7v{?ILebeVh%Nzvj5wINc}G zR-x7$k1*)bL(CU4>uUsQDT=PP!)LGGtDp<-dNiPBx7Q;YBHB9%X0m;-KZY4xoPE!K-&j|IL_6;k z@sfkJ$9PIBY)VOkv{x@Za{AXKxyq-ac(%f~sFR-|-TiH2hG%$M#d!OILDa*c*>{d# zhlAqKMKZr)nSJTn>Muf0gSb}cy`hN+9{A32N%q>#2|5Ef0fD`Dr5*Gn8A_x(Xm?56 z;^n}NK`=eYg`U39!XxSH@4o(S296gHHjTCC--~i2?2F7yh8!fAK@;+F3*(puMOdfc zQZweC(PZ|`mrPP0+07&?uK&(T38hf;?PGku*c-7R;6 z7|2qk63v3YlUw-+FN9ig5>5Z)kY3s&_}PI$oQ>d_ zv0_r#0{H&ejsjXrV+^|qQS5WUCCSpLPy8d z`Y_K<8EVbpOIy2&yt;B>$JreO&!fc)9o1trG<}Vq-94hpm-1g|Ii7i5z!Z7|7?OWh z!0II$5t%>2fk(M4ym&x^qTb0U{YxNYYe3jzyL&wIvYrNv)ATs>RGZI>zD!9YdIwkh zqjXK`N0;2V>c&+Hlz`a?Armd{C3{cLVzoRL*33WVz+Vf#!*`?ss`0l5s|}UdyHDcpIDlw0#>3TJ0iM^~3aGf&F==&HNd>f8G8ekJrRMKSL;&il8GyBZLLeyDq1%bTp*YMQ54XswJNgAM8th-T`IQL*Wx;A6)7Sj zBC-kGzy#+1{XOSQG6_Vm%lo$Pzwo(dPVPPHbDr~T=Q-#6DjFS&PS2iEIzk3Cjk~Q> z8uKA>XQD6YlMlU9J)l$SLw6T6vi?jTaHtx zZw#~QrD2{0fY5d{bx{V;G0a|8{hf-c=IuX=b-b06<{;$MM(4CiwRy-QzOLigY37Km zIZo8Za#$0+>(33T>_qBqyS6fn21GB$z*$pZd*yOyzsPA!MHk9C;%xCC7@W<8=AGU% zP7}5MprnPdES*ng;t{Nil z?_$|_`eF*fJzAu0ww&U-h?XJ1s6S~XySO#RyKaLRYSkn-AQQMyfKW~MU3(u6k(*q9%Sxv2G2;$Do*t^wk7zb2jXj#sq~)NR$xrYKOl``Eb5+ z8>eQp#(3AFyr>kM&x)d_Dh!lXg(Ih0uyHYjTx=P#q>ARlTe>BFXi;bt{iX@f*NqdW zs)5i~BgPi%p|2%?5qar&h85X~P;aTJf%6Ga zq4RyR*Xf#vX+MLjR;I7N3Jc#dovb4O)mH5gUEN$81HFXNEHWBO)FWRqb}nSlHI*w8 z^|$lSBK}oDlJ2?Rdpvb2WGrzT#o4VYhRgE1_Lxp%3u2~5a~Re&w};oj^~~9%LYLGF zTV2RRQ!j<7vX3zFXt}1JU31(CnAo4@puHEU{E#V2Q=p zbVzX~A${S<2Fe>XDghTp(w0QM+F~KC^X+83uMzqu2sfmOss(WaJanPBCT|S@nq1*) zkPeof)pm{{9eC$J@&Pz^Hn#)ZCIIe!suIY1=xka_=0I_Uyodvba^L`Q)?AhDjpWxH z=UbH;s~#4_XfRd9o7{;BMklS)>XUR(P(k74AOmz*3dc3kZfmeHPy+tb`Q_4JsMuU* zOI7VJmj>>p4SM5IeND&9rAeU0i1oW%nyNjMWO5jj^p{I_c5!xg|LksSUJv1Wxb`)O zPWiN3;?aaLL}aL~2~~GCSG^P)UWVQaP?;|o24NwA?7}D}8>TKH>=kFYvKr++saeTz z98*;8w3NjNsz8-h=)z&&C<)-y2&<)fndVs%PYok=qTYpwQ7W}kHVCn@Fml^;sm=r5 z3R!al5(&(xhVR1pu4uG4(AVq&HrE!42HU=%&(-?n3TAOtn+{j74F_1NLFtXTD^4MK z?a+DFNRlkur`x0;AZ7BGY7W<>cN*jdo4 z;MQ9)$7Gv|3F_vN5VMg`acwa>%z!O@#=-6ntKMopo#os2*FF*}rd#t3ef==eJdVe_ zq3mb6zJ)cO3kP2~m@yZn!+8iEkIl=4Of$U&M#waC?7)1&p-3kgNjJ@} z!36$L7_%$f<^gsMtWLD+o;VUUl}(7MlBB&7rAZW5;v-Jaw)LuGsT(+ z-HLrHu5&IwZ~0BX*R6d>xF-F*==9jW6{rO-J&#rpAuo$RDv-#Y7nK!z4SAaHH%jhS zi(BPxN!#Ln;FQIX&2I!M;B5FUEyEcnwA3w{B4XH1Eoh60oht*24YN36%h)W45lvVzI`)oDlQxuLNT6S}v)X2feFN&CUd_QBCb=i_dm2I+!2`@%h^CNK zP4<*(S3FbGkkN=@hvMy<6`%0M+eiX})&=c?;_aIi&o=bvi0F#Wj&0zKSPaiX9p^MS z0;7zr_VfS~oKr|I-AIXr=n@OLqm}q9(7ZOcnsBqY&ONG5oPZ>Z?VYePPIo^ww*R4t zFMkozNr;xdBWb4TD)b}$Ku_5_&U*Dl9RLPm14n;^0#wYSIzXUt=J{|G=H@?m32uAM zknJd&vw|$fSlDeedzljaeUd(8B+HhQ2b;y;g-|M53q_%EUn(!A&%zju96JCR#IB$t zM3E}VaK~b(L#k$GNV|&JVH>S-E0y&V&NO#1456-0=psImX8ZL9U_OASG7`|6Fv=el zd{_rkOml<;j-RbTiP@&#I-d)%ptEBq4ySa(t|AQ34Ye)5Z=-G=lf;5+s*apl-LE3r zYQ>1yTb83f$%vb^h(Q=`Lou8;#e$ospPV|7o&!KY-Dz}i6zFhN^M&nOJ0|n2}veynjwEcneQeD0n)4! zWi!03Vi!Hkj5fF*nii*}nBL5HX@0?6rd%94Y+VPy)iQdgTWCc zAQce+#7n?MveuA{H*$2$so+hk{$&(jwbdGEnZvZ$=~MW|kNDMyUoqC$FSK2_N8;F* zpO}~n4o*#`mKyp#j>QKE1;$#1cbW*`S4KY5P|y-UY)9U#2AqzvfJWi;hrt%Ji5j+; zM%N`Zk*0$2z8E`2|C2$hAH;yJ%sOJAAodpXi#3uuDM)S{KFu&ix$tdkwJayy1EPe0a!nSNdIbh(w8Rvj1h9~}Gt z-~?SXE1?b>MW7r4Jfx}PLBe5G^D%cf#GZkW_Yp&8g$HaY6Y^{dDq`yAPxDi=SWKE! zPkpd83tOt`&gJqf#qiD?g|=0WuH5ku?CfIHZZRWR-+|x19!6(6IXbHI8`eFm!N3HD z+)@*bp*`EclxdY}G>yebw>i}1W6*P!D?~#f+fuLcu@v@!YIPga!~^-TG)^j7Orf=A zET|y|{tHkcZB3Sm|N%Mcu#JB13rph-le7ef_G5pMPv*R=vUcmzO($vF* zOke_~UzCEBy`&3%_n_T#s?_kk2S%m8n*Z;7rI#LPUz9!RSA$avyM z9@?zbU|bSf(hDC02(th!M|~Uer-x(fGhi9bFi?^X zSKqq~w}newu!G&74eF!wp)Fol#c8jJ12XFt#HwhW)Z@|PMvo)oX7pha#eg?M`74vS zcHFh&L|;J#O$^D0T=Q%{UjOd~P>^&I1MZ~E{H38DDi8{oEu66wg%hh$TfMT?y z2it|~X@StWIY=l#!%rly2(xFGOG@L~J7W?x?)W(ey_;^SjRu#SY@cB)x1c=Db8AXr zOjq*;-8CF6sL(JM&W}&Lje$%x-JB2SsuVl`2Y}2o5pT|C!l=wo6qxMpV(DKF@P9*d ziA|abURX*k>1mQt0HT74UxhK0d=tz7F04xwhnLM!i-E=Ul_4-A#cDT(u`J!f34+&yHW;Xzc{sIapc{G5ko|) z>%w|%(9ky<0#W3lK!O7t5uzVY)IE!&n`-(HHdDXqy4XP#RkNaWb}P1i-g1+WzK17{ zheG@$Fl&DBe#H)szA#mIF{FmQCc{MeX$J6<%IA&)y4jJV{NeHWKA5vln=RS*ex|xFOI98Zw*O<*LK1Vv>bGXj{i^Jt@m~J|20=e$%1?L zo|;+hnTOm?^2|ev#=ULnxR7~(I{zr~o<<+GDq*{Tao%iP;7Op+K!N|@I|ilWQXBUSdUcSy1{E9cR59Zv zIe*{a6i78qGv`n<6FGM~-i-`Lg3xdjr&8-QnY(OR!BKd(NL0-U%|W>+w=`1Of&M_a zw~!t>&v7(-LNxhCcMf*OI-}dZiskPG{GYswa7gqtS0FmmOjXqNZb-r0_N1WsJ8hHF zh%J*Eep-`Hc4d1kIeP6Bpk=T2!s`)|9G^^FV!S+;`@NQ4aPn01!I zdcsJM{%ZzdTb$h)``ThlMNB^xe_Wzqj-!2Imx!*=-U9xq+{Q^c!${=P;cYVfG4xC# z^_3z>m~gC*iJInPBd&)36-`ITMHmi(3^`;tvIXp1t_~kFTgsNQ?R=ez>Ngbw0JADY zpji&Kd5F%z)(G=_D2$n}do8-lL$}}>h0ODqO{b^xp%uQTID)RM3UBo@^*FEpoZ{%N zGbdLy#~y63JP#VX z6V_teZ8kRuH=_SRm%+i^$?#c^7L(Ra1q!7pb%uIO`kv%^@NAhbB$m6sTf1Xb)>iZs z+Hpo)&!(o-4G5phs#R5*b|0u8^1Hy-K7FrQLM)UO3{OuEs`_mK2`i{}R(m8J$cVD0 z1PYn}XGRX3mL)whz6CKgLVM`NKSeJRVgG0Y_$w!3n`H`wlv9W~QOls?oH^QJwu~I& zBkTx{-6dv5aGh<2Jv%k#t}zgvP=9sTfEdr!V&ml5bh`Ywr>LgxAWw$0Y88a_OZl_@ z=fw1<A#Xuqv{7sPa! zr#nB#IUERSP1)z)ekdSbs}hCXU>UQ2u7DUn)hPTLaJ%ueRE9n2Fh$r*s| z=3`j<9H;?KTCH^q&UhOEX(jFK?W7i2T0!ZW+sovuB4rTYYYmWa$PlD0CN2VX0#yvd zb9k`eZd~gmNsfo#uBf*TjtMiaXw*JltSm&#TMfVSmJp=&y2zK%hGi}NI!wO=X0-m57*R0?Do4Yk%=#|-oDpPoo=$J>s zQuTE+Q7yuv9O?t6FK4=y*hXA7lv&;vLp&nU20aJ2J74=X6Vwl8L7z1VC z=J6DFwZ4p`t?9i}hU-yrOXjLng`A?OG)9@8G)eqDTWWe=U|W%?`>7PkCKuwYD_|Io zgD_$}^7l3qxM7PKWD)&G4hf%e7njf-{?;W@LIh{1HY*oatLGhU;~H?eq-6u}$zB|YFS$elkBJoQ*B3Nn} zUv{weCK69G=oA<1E_zV4d}j4`E2@@9v;P;BK&gUKAM;8ejsH88z>%x2iP0rf!mF14 z>sfRcB8<8bGw}gE^#6cOv?@x>tnTdcum9^;qIISLRej#M$@bsr!pBbgS9o#SteMpd z+G92*laV7vjI4=n_M&}giDNFL*gLbU!$D2zp`y?^e63#+8ciVpNr*TlL77; zKw?wVxBhdn{QGvj{2TwdSYE0H*nvWE9O7*p8ROl!4)kY}sfB#oO+q;$^vj3|{<5pv z7B$Gg8eI_09USX0e=}~jFO)5%{vA**gQyYgEP+GeefUDe)5(vMADh7R+DT8I^kgpg z)ZpO$okoTYH;x!t`(pVm!)_WilR7*^D@)~`O-bG!M?&^F>>^yZ$B{jOJmaKT+Jb})s?`);HFdw2VpP5V~ zkGFRH_!k%c;zG4oI<8v&vU1}2k4^u+>c8jeqJOt*nyS8PeyYIAw|?fke~!JsIk9%r zV%4+F2XaQ%*GhhUy~XY+DJ)nC!FG1GUyryibx{axD=CIY0~!YK8Gi=8&O@!bI>|l* zHYN_bX%L9bCYhVB8+F|%R2Z=UvzcrCM7zXI+i+3C7LXm~@$N9X%E_T=@?!$`*CC_g zIAu9|TY2(lOzk*`X6l8VLqr46?S)hvr`4@?8$sNfZo@Cx93*794D}3th7S4LXl(bDy_#KZzN*A&tufxop%D{rdc<8LFtVE~sCj$Y=_oxD zr0_A4+0OAzAnp(7HeZZOKu@+rt*Of{M^kerp6+9-GrTjS|LS9Cg)EJ^)hF_f7^bFf z%C~B~&Tuh_p0Oe45$ATOEqGuqu6d8-qxisq%jcY;MXhFbf=gO`Plk+ zhYQECI)>8|JnLXu^uz_mm5v!Hri-XJV&I5@s*iHNREOlkAq{)=7;;s@lZ`3u=La6h6@vuR6v8B4a==f1*?QqZq-?!4k9`e;Sw52&BV2&;ces$9 z4B8%wp%Dz^d<;6Ar(EhfFM;k5dl~NcQ@lvvl$WU+)Nh~7fVn~|;CL41av4E=b5)BG z`eB+M6g@oP=|OVDjUI1)RvP}dIi5z>Bh=lloebk1AgpU9giAakz2>p!L7gA%V@nU3 zHxyWrp&`X5Uou9ZsvCnCp(E948WTgu#uUa_P)LAwAI4Z!b9f?m_}@}r!Hv-11q zgz3UJQWKdZuV}qVKd&$dZ`g6^@276M$jN(ytLVUOI(K?eH$A{IDA>mv^{Pl(w2RJoSCyXUR_vWHC0%H11W87 zAk=ps+mD!1BK9^)j{b#(d>3R8p~(Ye@K^Dn(&8@(iaOH^p(ru|Z>>l8M~XnOcBCbE zN#Vm)uy)cDIx-SesC4Get*s%4!06x+AsRiZdzfwrefG7w_60+jF0+Mp-3f#;cu@sK z8MzaJ=+{%JehBq>8E5q}Yi*|qp_;l+MwOd(p{c-YP)x*I&m1ZdgDxDJb+A``7o|jLFs7L{3|o{zk++&t}GXBn5n;s zwf^_L0P3{`;cX#Cb|#B-FxF@9L-L12F&}5ebzmm)&9(VZo=ezI=nZ=kM0V-8R(V~F zwd7xt^s`ix3zc~go5cK%Pbe*I5}38R(8K-fQ8CwqwpeeKfrA07UeVTm^y|H|$&aIR#8bBX$6eIzH&0Aq(KMB|kjaQcT`o8vE|PvMWLBCgJlW2X z+cM5+Bf%D_=PU$E@!uK;AL?n`h!DJ0Zv2ie9&_;+Bq;sGDIY%*KcB&s&`f(?t$%-{zs zcIraN5!SF9u5Y-$!I3fK90)36D%r#`7TJCdIaxV&BJJ0)n1a|KN?aw94Bct~_WD6? zqQek3UfY3t7-0%yi!+Jq$Y)vy(gNGxmZ<0jaZzq|!?@7XL*s`g?9WxAw%97w@oA=x zUVfrIht5%62aTEg{5d+1=rzVRD2_A0Z}HyLlHB_mqAn`yee@g{8f}|F5;KS8J`uIs zCY9#PcXByIogYcaXBShl0K#9pwYR|_TPV&(H4HR?a+20D7zgaXn;pS z@k3xSSe}U{*A2dIu$6D@%Fi{BOEKJzEVe{xSE=4bT&c*F+cT=8tB^f*Hwv-6Ai*_o zrlhd4fvQ4SMV??wnOZnxGflX;>c>?KO#ycAbtE45gI82 z)oda&qml@NcCI-<1klJFE(DgAJI(>4VMBCctWWzEsN2Pl(?`|ctEd`vZ?-HZKLsiOstkw1 z1%8?OZ6_4;bp|SS*LE_Huq7qtieLDJXXQ{CFWB3Ej#NX=!= zEB3UH8QkYUjKDT*Li8i_I?%{p#9GfB;)GqQ54{P}(X zp}xJ#Z?q^nJC;3yhB9tRP(TxhZZU35B+y8My$M?}nBwNp3q2`}*)D}$Of=dLIr9+@ zt}VO_HQvim{vzd1qZeY|XNmB~2%WFk$A>lj4cZNkY@pikeP^mXVB*jI2e3(GdC$lg_e#}Icn?I3G@2no0%wfVwnkz{YIYIZMAV>FRXtI1YC-L9_fy2zLoI!7KOrOYtxEj5oiz_!b@M$ZXVkgy8@1g zga8h5SQbRrh06uUQo3NQPY45v8ZCgIi{gdfA;9mNns1@F0VljMWR(LTY+$XdyY{l8?@SY+IvUIfAtfofASkNqZAVa z8Nh{Ncf6g?5W_y|E(`}8Zh8vuO!2ZK0U=X^t{-&$)eToA!%MyM?!gX%J5zcACCwh} zQ2WxdtEdoS22hvUnZs;c0;mQc4*CLM8XS0Hc=2nc*G?dMf%vN^+sPm#qo#m|n4Q%`a$9Rg^3ZL=2Uzlz=IT| z7`Q0ULcQaZFc*S)5~$QKw#x7l^nuvXuLInwR^G?BYVYW3iQJnTL+wpDx;yRuQTHQJ z^wd$QLQ-sdgy5zihW-w|W^^S3TU0Gf-TWH>vWbCZQ&pwr1)Hed4D)XkPAB|QIji(` zE|>zdO@PT9o)~I(^hOz>pi)#S*jV>d`51qeX6o}*JW0ReyxNk$ougY#Z3VG6h0%Dx zI|I{?!I_UVd$I!VC#f_L{Y0mHnOR%r;sIA6ftpUOQAX5NVubi1;loEl6p)}rkSH{l zQ@uvE&4g4C(;T%s*x_ZC1rX($9g>*xAB5^(k3@gq+9Pqepi4b=PaWR>X8^vl`OoO&A+)g8?oa=;Tt2K6T^6bx1YFFOF(41NUZ zu>TS6!iuy{0v|QL)4){!T=6XgfrVs*E|Yt?-qorwi*1_%^VkCPByz~88P)%V7!p0) z{7ftt9BFQ9JCi%V@pAIoHeQ}|t4K8#xlT7;E)kYMn+E5@MFKxUm@epG`l>;8swC*40r(S7SH@4ewsr4#K{~!f<|Dk4j_SBYVVsz__8P$hW zRNXkPA@*>YY%@$uI0Ca7e$g|PCPXjQWTQ4yJ+)|%k8uWOu&F+m>vOHz=41R>k|7~d zH-+xP?2USRA*8os;Vq@>$HGgDQegZaZgWK}+!Sc%P7pT##7lJxy(IMuiF4C6e5SrJ zeT~|BfepIrV@@!$$qi_k;t*g4KTe=y?xf4O$wkafGvriRo55V{QP;cbppdp0K66I( zCz3b#)GBYVMv@C>pOA8rX3MrYiVOlE&mx=yjkHB-ir;`l_t)NReS5UQkR z=3%;nyMAw#Y3brX+3M^A!;;xeq6c6rt8_HKq)|u^BWXmDWtwc~{f#X$AfS_^@r;qA^aqyu@GB74x+iXQ9L z&wsV+gb`CP0*L|o>x4yXv|3GQ`&UGPcrZW3vE^Gt8aFt@SycVq~=mjjQ0O# z#He`UTW#}OoBP}A6ZwhLQr%uET`$z=a2fI*(H(Gsj#j6K+egK zw;+}QLtoMq`If%Dr+R&i#`YTo`hHFl@zn+8lDD$MZmi-{1J4 zpMNn`Xq(ky34{)dp}(F*5C04>S%B`~pTVidYN5|1o6R++iQ?CXRfne7G+_D-tu0k+ z&GO__dIYa^-Kx2e%y11dqe%YWymho{So3k%tk!9cN@C_kO(4XG-WuWoFx+6B45i${ zL>Z_WTX%=${l*Kf2)O@@2ziDXGRMh z6Q8(9qw9?>XLUv-J8JHA65Qx5YX=}&13zf0D5i@wL#5@oeWj*%$-hf!^GriuWyK6n z9$1h14C{!uVN2I^^R%1%rEJD- zM7CU{iNA4b@=%5HkwtR0(aJMTjC4ut%-XYP{5mXy?#_^LVt-u!Sx;2nlGMC|SxXU*{<}EuE`_D&a&Prc#piNqL z1P!)hwL5?8S(^>{Kj1SSuQiH1k4K$sp5f#HXn_#83C$c!d`;C&QB8GpEqDp{0xx56 z@rw+%W=c_Xp^T->0GY^~O~-Uiv+h_-v(Ooyu_q`?qK=Sr2AFIn59Fm&rejOoy_GqP zRD|S^naxUIhdw2S_9NFTy*A67tdBHkiL*lzV-9~Vfuke?E%=P4huJDG{O{J@=RSMZ z+B^b>H8OdOaJNjH7Vc-1t!Y=$U-JT7J!v~lJc}dxvVGZ;(pIH-4RI=-Y7}50anX5S z#16$;zaz_AoRRwvg{e8xG*lNA zr?&Y_b9Q4`&2bOWSDId(*YpsH^jc)f*}Gau&UZ4K4>)YYO0B7?wY~R{rjk;i~H<-roS$1JB zz3s&vboK%V0K z91CqCMq>YyW`}?1kM#vU+ra9F6jZZdNO_fLofa2Q;WsSLPpz|HdUYYp9c17H1o{&* z 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 literal 0 HcmV?d00001 diff --git a/app/fonts/DIN_OT/DINOT-2.otf b/app/fonts/DIN_OT/DINOT-2.otf new file mode 100644 index 0000000000000000000000000000000000000000..4a5e131270c8c632b758c347b006168609dda750 GIT binary patch literal 44144 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∈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 I{X^UTA1vcF9smFU literal 0 HcmV?d00001 diff --git a/app/fonts/DIN_OT/DINOT-Medium 2.otf b/app/fonts/DIN_OT/DINOT-Medium 2.otf new file mode 100644 index 0000000000000000000000000000000000000000..a87a2df37764b29abb5393a9fd92f70397ac1559 GIT binary patch literal 44652 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 literal 0 HcmV?d00001 From 2d5c3394f493868a2eb5706e8b42127252c9b746 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 20:46:56 -0700 Subject: [PATCH 0034/1128] Use DIN OT in wallet view --- ui/app/css/fonts.css | 16 +++++++++++----- ui/app/main-container.js | 3 ++- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/ui/app/css/fonts.css b/ui/app/css/fonts.css index 3b9f581b9..2afaa26e1 100644 --- a/ui/app/css/fonts.css +++ b/ui/app/css/fonts.css @@ -8,7 +8,6 @@ font-weight: normal; font-style: normal; font-size: 'small'; - } @font-face { @@ -23,14 +22,21 @@ font-family: 'Montserrat Light'; src: url('/fonts/Montserrat/Montserrat-Light.woff') format('woff'); src: url('/fonts/Montserrat/Montserrat-Light.ttf') format('truetype'); - font-weight: normal; - font-style: normal; + font-weight: normal; + font-style: normal; } @font-face { font-family: 'Montserrat UltraLight'; src: url('/fonts/Montserrat/Montserrat-UltraLight.woff') format('woff'); src: url('/fonts/Montserrat/Montserrat-UltraLight.ttf') format('truetype'); - font-weight: normal; - font-style: normal; + font-weight: normal; + font-style: normal; +} + +@font-face { + font-family: 'DIN OT'; + src: url('/fonts/DIN_OT/DINOT-2.otf') format('opentype'); + font-weight: normal; + font-style: normal; } diff --git a/ui/app/main-container.js b/ui/app/main-container.js index f891402ac..cc61860b6 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -11,7 +11,7 @@ function MainContainer () { } MainContainer.prototype.render = function () { - console.log("rendering MainContainer..."); + return h('div.flex-row', { style: { position: 'absolute', @@ -19,6 +19,7 @@ MainContainer.prototype.render = function () { width: '98%', zIndex: 20, boxShadow: '0 0 7px 0 rgba(0,0,0,0.08)', + fontFamily: 'DIN OT', } }, [ h(WalletView, { From 92bd783e0c61e05772cc494a386bb5f21e9dbbb3 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 20:54:04 -0700 Subject: [PATCH 0035/1128] Adjust button styles to left align with wallet text --- ui/app/components/wallet-view.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index 0c5bd5c4f..e61346290 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -102,23 +102,20 @@ WalletView.prototype.render = function () { style: { border: '1px solid rgb(91, 93, 103)', borderRadius: '2px', - height: '28px', - width: '70px', + height: '20px', + width: '50px', fontSize: '0.8em', textAlign: 'center', - lineHeight: '25px', - marginLeft: '.6em', } }, 'BUY'), h('div.wallet-btn', { style: { border: '1px solid rgb(91, 93, 103)', borderRadius: '2px', - height: '28px', - width: '70px', + height: '20px', + width: '50px', fontSize: '0.8em', textAlign: 'center', - lineHeight: '25px', marginLeft: '.6em', } }, 'SEND'), From c876428044c8e6eec300ceeb0d7ab0c44e68f8d3 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 21:16:07 -0700 Subject: [PATCH 0036/1128] Add TxView, use width percentages instead of flex-grow for layout --- ui/app/components/tx-view.js | 53 ++++++++++++++++++++++++++++++++ ui/app/components/wallet-view.js | 2 +- ui/app/main-container.js | 11 ++++--- 3 files changed, 61 insertions(+), 5 deletions(-) create mode 100644 ui/app/components/tx-view.js diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js new file mode 100644 index 000000000..b10589035 --- /dev/null +++ b/ui/app/components/tx-view.js @@ -0,0 +1,53 @@ +const Component = require('react').Component +const connect = require('react-redux').connect +const h = require('react-hyperscript') +const inherits = require('util').inherits +// const Identicon = require('./identicon') +// const AccountDropdowns = require('./account-dropdowns').AccountDropdowns +// const Content = require('./wallet-content-display') + +module.exports = connect()(TxView) + +// function mapStateToProps (state) { +// return { +// network: state.metamask.network, +// } +// } + +inherits(TxView, Component) +function TxView () { + Component.call(this) +} + +TxView.prototype.render = function () { + return h('div.tx-view.flex-column', { + style: { + width: '66.666%', + height: '82vh', + background: '#FFFFFF', + } + }, [ + h('div.flex-row', { + }, [ + // tab + h('div.flex-column', { + + }, [ + h('div', {}, 'Transactions'), + h('div', { + style: { + height: '0.5em', + color: 'black', + width: '100%', + } + }) + ]), + + // tab2 + ]) + ]) + // column + // tab row + // divider + // item +} diff --git a/ui/app/components/wallet-view.js b/ui/app/components/wallet-view.js index e61346290..b8ea633db 100644 --- a/ui/app/components/wallet-view.js +++ b/ui/app/components/wallet-view.js @@ -28,7 +28,7 @@ WalletView.prototype.render = function () { return h('div.wallet-view.flex-column', { style: { - flexGrow: 1, + width: '33.333%', height: '82vh', background: '#FAFAFA', // TODO: add to reusable colors } diff --git a/ui/app/main-container.js b/ui/app/main-container.js index cc61860b6..88028f8eb 100644 --- a/ui/app/main-container.js +++ b/ui/app/main-container.js @@ -2,6 +2,7 @@ const Component = require('react').Component const h = require('react-hyperscript') const inherits = require('util').inherits const WalletView = require('./components/wallet-view') +const TxView = require('./components/tx-view') module.exports = MainContainer @@ -20,6 +21,7 @@ MainContainer.prototype.render = function () { zIndex: 20, boxShadow: '0 0 7px 0 rgba(0,0,0,0.08)', fontFamily: 'DIN OT', + display: 'flex', } }, [ h(WalletView, { @@ -30,11 +32,12 @@ MainContainer.prototype.render = function () { }, [ ]), - h('div.tx-view', { + h(TxView, { style: { - width: '66.66%', - height: '82vh', - background: '#FFFFFF', + // flexGrow: 2 + // width: '66.66%', + // height: '82vh', + // background: '#FFFFFF', } }, [ ]), From c7ace5b23d911512495edbd4f0ecb8e0190bc537 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 21:27:37 -0700 Subject: [PATCH 0037/1128] Add hyperscript for tx-view tabs --- ui/app/components/tx-view.js | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js index b10589035..06ee3bfc6 100644 --- a/ui/app/components/tx-view.js +++ b/ui/app/components/tx-view.js @@ -13,6 +13,15 @@ module.exports = connect()(TxView) // network: state.metamask.network, // } // } +// +const contentDivider = h('div', { + style: { + marginLeft: '1.3em', + marginRight: '1.3em', + height:'1px', + background:'#E7E7E7', // TODO: make custom color + }, +}) inherits(TxView, Component) function TxView () { @@ -28,23 +37,32 @@ TxView.prototype.render = function () { } }, [ h('div.flex-row', { + style: { + margin: '1.8em 1.3em', + } }, [ - // tab - h('div.flex-column', { + // tx-view-tab.js + h('div.flex-row', { }, [ - h('div', {}, 'Transactions'), + h('div', { style: { - height: '0.5em', - color: 'black', - width: '100%', + borderBottom: '0.07em solid black', + paddingBottom: '0.015em', } - }) - ]), + }, 'TRANSACTIONS'), - // tab2 + h('div', { + style: { + marginLeft: '2em', + } + }, 'TOKENS'), + + ]), ]) + + h('') ]) // column // tab row From ce06fbd36debac144b4f4bf1d3948b35332e9c41 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 21:34:37 -0700 Subject: [PATCH 0038/1128] Add tx-view content divider component --- ui/app/components/tx-view.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js index 06ee3bfc6..1bc828c20 100644 --- a/ui/app/components/tx-view.js +++ b/ui/app/components/tx-view.js @@ -13,7 +13,7 @@ module.exports = connect()(TxView) // network: state.metamask.network, // } // } -// + const contentDivider = h('div', { style: { marginLeft: '1.3em', @@ -38,7 +38,7 @@ TxView.prototype.render = function () { }, [ h('div.flex-row', { style: { - margin: '1.8em 1.3em', + margin: '1.8em 1.3em 0.8em 1.3em', } }, [ @@ -55,14 +55,15 @@ TxView.prototype.render = function () { h('div', { style: { - marginLeft: '2em', + marginLeft: '1.25em', } }, 'TOKENS'), ]), - ]) + ]), + + contentDivider, - h('') ]) // column // tab row From caab0b61ccb20a19fd97d4177698e9675d0b5451 Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 22:00:18 -0700 Subject: [PATCH 0039/1128] Add rough layout for tx list items --- ui/app/components/tx-view.js | 60 ++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/ui/app/components/tx-view.js b/ui/app/components/tx-view.js index 1bc828c20..c32e9edcb 100644 --- a/ui/app/components/tx-view.js +++ b/ui/app/components/tx-view.js @@ -64,9 +64,69 @@ TxView.prototype.render = function () { contentDivider, + this.renderTransactionListItem(), + + contentDivider, + + this.renderTransactionListItem(), + + contentDivider, + ]) // column // tab row // divider // item } + +TxView.prototype.renderTransactionListItem = function () { + return h('div.flex-column', { + style: { + alignItems: 'stretch', + margin: '0.6em 1.3em 0.6em 1.3em', + } + }, [ + + h('div', { + style: { + flexGrow: 1, + marginTop: '0.3em', + } + }, 'Jul 01, 2017'), + + h('div.flex-row', { + style: { + alignItems: 'stretch', + } + }, [ + + h('div', { + style: { + flexGrow: 1, + } + }, 'icon'), + + h('div', { + style: { + flexGrow: 3, + } + }, 'Hash'), + + h('div', { + style: { + flexGrow: 5, + } + }, 'Status'), + + h('div', { + style: { + flexGrow: 2, + } + }, 'Details'), + + ]) + + ]) +} + + From 9cc461a6c2348ffd1a884e0ca92d74294cce6b4e Mon Sep 17 00:00:00 2001 From: sdtsui Date: Mon, 31 Jul 2017 23:07:25 -0700 Subject: [PATCH 0040/1128] Reset popup to 350x500, old form factor as advised by @Zanibas --- app/popup.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/popup.html b/app/popup.html index de0e100a5..fddf01841 100644 --- a/app/popup.html +++ b/app/popup.html @@ -5,7 +5,7 @@ MetaMask Plugin - +