From 47e0185073aa0501e1a5badfa61ab546cb21df9b Mon Sep 17 00:00:00 2001 From: vba2000 Date: Mon, 12 Nov 2018 13:14:49 +0300 Subject: [PATCH 01/35] WEB-278: change smart contract texts --- .../lib/SmartContractsInfo/index.jsx | 4 +-- .../lib/TwoStageImplementation/index.jsx | 25 ++++++++++++++++--- src/server/locale/en.json | 15 ++++++----- src/server/locale/ru.json | 8 +++--- 4 files changed, 36 insertions(+), 16 deletions(-) diff --git a/src/common/containers/Developers/lib/SmartContractsInfo/index.jsx b/src/common/containers/Developers/lib/SmartContractsInfo/index.jsx index c2128507..caf14c77 100644 --- a/src/common/containers/Developers/lib/SmartContractsInfo/index.jsx +++ b/src/common/containers/Developers/lib/SmartContractsInfo/index.jsx @@ -21,7 +21,7 @@ const WavesNgInfo = () => ( @@ -34,7 +34,7 @@ const WavesNgInfo = () => ( diff --git a/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx b/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx index c7964ffc..25e0b501 100644 --- a/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx +++ b/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx @@ -38,16 +38,35 @@ const FEATURES_LIST = [ />, , ], rightColumn: [ , ], }, + + { + leftColumn: [ + , + , + ], + rightColumn: [ + , + ], + }, ]; const Block = ({ classes, leftColumn, rightColumn }) => ( @@ -92,7 +111,7 @@ const TwoStageImplementation = ({ classes }) => ( diff --git a/src/server/locale/en.json b/src/server/locale/en.json index f70b4179..51dfc303 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -60,9 +60,9 @@ "developers.ng.subtitle": "Based on the Waves-NG protocol, our system supports up to 6,000 transactions per minute, leaving other blockchains far behind.", "developers.ng.text": "In the NG model, the next miner is selected in advance. This miner creates a ‘key block’, which is then immediately filled with microblocks containing transactions, which requires no further proof-of-work. Whilst maintaining the open structure of the protocol, this allows transactions to be confirmed as fast as network latency will allow.", "developers.ng.cta": "Learn more", - "developers.smart.title": "Smart Contracts & Smart Accounts", + "developers.smart.title": "Versatile functionality for any use case", "developers.smart.subtitle": "We are building simple, scalable, reliable and robust tools to perform secure and transparent business operations on the Waves blockchain.", - "developers.smart.text": "We have created a new programming language, RIDE, which makes it very easy for anyone to set up a Smart Account. To bring you the sophisticated tools required for launching a dApp, we are creating Smart Contracts, which enables users to execute any set of instructions on the Waves blockchain.", + "developers.smart.text": "RIDE, our purpose-designed programming language, makes it straightforward to apply scripted conditions to both accounts and assets. We are currently creating Turing-complete smart contracts to enable the launch of fully-fledged dApps and the execution of any set of instructions on the blockchain.", "developers.smart.cta": "Learn more", "developers.text": "These apps run on a custom built blockchain, an enormously powerful shared global infrastructure that can move value around and represent the ownership of property.", "developers.title": "Build applications on the blockchain", @@ -339,7 +339,7 @@ "smartContracts.title": "RIDE on Waves blockchain with smart contracts", "smartContracts.description": "Scalable failsafe language to serve both basic account security cases and rich decentralized application.", "smartContracts.cta.documentation": "Download Whitepaper", - "smartContracts.block1.text": "Waves platform is building a blockchain based solutions for real-world business. We are providing smart and flexible tools that will fit for most of the business cases and able to work with real-world data.", + "smartContracts.block1.text": "Waves platform is building blockchain-based solutions for enterprise applications. We provide smart and flexible tools capable of interacting with real-world data, designed to meet most business use cases.", "smartContracts.features.title": "What Will Smart Contracts Bring to Waves?", "smartContracts.features.1.title": "Multisignature Wallet", "smartContracts.features.1.text": "Two-factor authentication
Cannot be controlled by one person alone
The necessary parties must provide their private keys simultaneously", @@ -349,13 +349,16 @@ "smartContracts.features.3.text": "Preventing buyers from selling or transferring tokens out of their address for a certain amount of time", "smartContracts.features.4.title": "Decentralised applications", "smartContracts.features.4.text": "dApps based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a range of different conditions", - "smartContracts.plans.title": "Two-stage Implementation", + "smartContracts.plans.title": "Smart Contracts Development Plan", "smartContracts.plans.stage1.left.title": "Stage 1", "smartContracts.plans.stage1.left.subtitle": "Smart Accounts", "smartContracts.plans.stage1.right.text": "Lightweight implementation of smart contracts with limited functionality, based on the most popular and in-demand use cases.", "smartContracts.plans.stage2.left.title": "Stage 2", - "smartContracts.plans.stage2.left.subtitle": "Smart Contracts", - "smartContracts.plans.stage2.right.text": "Decentralised applications based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a range of different conditions. After the release of Smart Accounts, we'll continue smart contract development to implement sophisticated logic to address almost any computational task.", + "smartContracts.plans.stage2.left.subtitle": "Smart Assets", + "smartContracts.plans.stage2.right.text": "A unique feature that dramatically extends token functionality, offering the ability to script token behaviour and providing the flexibility to satisfy any developer’s needs.", + "smartContracts.plans.stage3.left.title": "Stage 3", + "smartContracts.plans.stage3.left.subtitle": "Smart Contracts", + "smartContracts.plans.stage3.right.text": "Decentralised applications based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a range of different conditions. After the release of Smart Accounts, we'll continue smart contract development to implement sophisticated logic to address almost any computational task.", "smartContracts.usefulLinks.title": "Useful links", "smartContracts.usefulLinks.contracts.title": "Smart Contracts", "smartContracts.usefulLinks.contracts.capabilities": "Approach and capabilities", diff --git a/src/server/locale/ru.json b/src/server/locale/ru.json index ec838e9e..6af7a49a 100644 --- a/src/server/locale/ru.json +++ b/src/server/locale/ru.json @@ -54,9 +54,7 @@ "developers.friendlyAPI.subtitle": "Waves — платформа с открытым кодом. Вы можете использовать API для разработки собственных приложений.", "developers.friendlyAPI.text": "Ноды предоставляют доступ ко всей информации в блокчейне Waves, включая историю транзакций, состояние баланса и другой. Через REST API можно легко осуществить перевод, обмен или выпуск токенов, а также сдать баланс в лизинг.", "developers.friendlyAPI.title": "Удобный API", - "developers.smart.title": "Смарт-контракты и Смарт-аккаунты", "developers.smart.subtitle": "Мы создаем простые, надежные и масштабируемые, инструменты для выполнения безопасных и прозрачных бизнес-операций на блокчейне Waves.", - "developers.smart.text": "Мы придумали новый язык программирования, оптимизированный для работы в блокчейн среде и упрощающий создание смарт-контрактов — RIDE. Мы разрабатываем экосистему, которая позволит запускать децентрализованные приложения и реализовывать любой функционал на блокчейне Waves.", "developers.smart.cta": "Узнать больше", "developers.text": " Ваши приложения могут работать на блокчейне — мощной, глобально распределенной инфраструктуре. Блокчейн Waves один из самых быстрых NG, масштабируемых и легких в использовании.", "developers.title": "Создавайте приложения с использованием блокчейна", @@ -333,7 +331,6 @@ "smartContracts.title": "Используй RIDE на блокчейне Waves для программирования смарт-контрактов", "smartContracts.description": "Масштабируемый и отказоустойчивый язык программирования, созданный специально для разработки на блокчейне Waves", "smartContracts.cta.documentation": "Скачать Whitepaper", - "smartContracts.block1.text": "Платформа Waves строит блокчейн-решения для реального бизнеса. Мы разрабатываем умные и гибкие инструменты, подходящие для большинства бизнес-кейсов и способные работать с данными из реального мира.", "smartContracts.features.title": "Что нового дают смарт-контракты?", "smartContracts.features.1.title": "Мультиподпись", "smartContracts.features.1.text": "Двухфакторная аутентификация
Не может контролироваться одним человеком
Транзакции производятся только по согласию всех участников одновременно", @@ -348,8 +345,9 @@ "smartContracts.plans.stage1.left.subtitle": "Смарт-аккаунты", "smartContracts.plans.stage1.right.text": "Облегченная версия смарт-контрактов с ограниченным функционалом, основанная на наиболее популярных и востребованных вариантах использования.", "smartContracts.plans.stage2.left.title": "Вторая стадия", - "smartContracts.plans.stage2.left.subtitle": "Смарт-контракты", - "smartContracts.plans.stage2.right.text": "Децентрализованные приложения на основе Тьюринг-полных смарт-контрактов смогут осуществлять сложные процессы на блокчейне в соответствии с целым рядом различных условий. После выпуска смарт-аккаунтов мы продолжим разработку смарт-контрактов для реализации сложной логики и решения практически любых вычислительных задач.", + "smartContracts.plans.stage3.left.title": "Третья стадия", + "smartContracts.plans.stage3.left.subtitle": "Смарт-контракты", + "smartContracts.plans.stage3.right.text": "Децентрализованные приложения на основе Тьюринг-полных смарт-контрактов смогут осуществлять сложные процессы на блокчейне в соответствии с целым рядом различных условий. После выпуска смарт-аккаунтов мы продолжим разработку смарт-контрактов для реализации сложной логики и решения практически любых вычислительных задач.", "smartContracts.usefulLinks.title": "Полезные ссылки", "smartContracts.usefulLinks.contracts.title": "Смарт-контракты", "smartContracts.usefulLinks.contracts.capabilities": "Подход и возможности", From e7724fb214f995263503dda5c4c92f24a372d9e3 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Mon, 12 Nov 2018 14:15:36 +0300 Subject: [PATCH 02/35] WAEB-278: some texts changes, remove ru translated on same slides --- .../SmartContracts/lib/Features/index.jsx | 4 ++-- .../lib/TwoStageImplementation/index.jsx | 4 ++-- src/server/locale/en.json | 6 +++--- src/server/locale/ru.json | 18 ------------------ 4 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/common/containers/SmartContracts/lib/Features/index.jsx b/src/common/containers/SmartContracts/lib/Features/index.jsx index 73df4a94..904e7cdd 100644 --- a/src/common/containers/SmartContracts/lib/Features/index.jsx +++ b/src/common/containers/SmartContracts/lib/Features/index.jsx @@ -21,7 +21,7 @@ const MultisigWallet = () => ( text={ } inverted @@ -67,7 +67,7 @@ const TokenFreeze = () => ( text={ } inverted diff --git a/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx b/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx index 25e0b501..c936184e 100644 --- a/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx +++ b/src/common/containers/SmartContracts/lib/TwoStageImplementation/index.jsx @@ -25,7 +25,7 @@ const FEATURES_LIST = [ rightColumn: [ , ], }, @@ -63,7 +63,7 @@ const FEATURES_LIST = [ rightColumn: [ , ], }, diff --git a/src/server/locale/en.json b/src/server/locale/en.json index 51dfc303..6f561217 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -342,11 +342,11 @@ "smartContracts.block1.text": "Waves platform is building blockchain-based solutions for enterprise applications. We provide smart and flexible tools capable of interacting with real-world data, designed to meet most business use cases.", "smartContracts.features.title": "What Will Smart Contracts Bring to Waves?", "smartContracts.features.1.title": "Multisignature Wallet", - "smartContracts.features.1.text": "Two-factor authentication
Cannot be controlled by one person alone
The necessary parties must provide their private keys simultaneously", + "smartContracts.features.1.text": "Two-factor authentication
Cannot be controlled by one person alone
The specified parties must all provide their private keys", "smartContracts.features.2.title": "Atomic Swaps", "smartContracts.features.2.text": "Trustless exchange of cryptocurrencies hosted on different blockchains", "smartContracts.features.3.title": "Token Freeze", - "smartContracts.features.3.text": "Preventing buyers from selling or transferring tokens out of their address for a certain amount of time", + "smartContracts.features.3.text": "Preventing buyers from selling or transferring tokens out of their address for a certain period of time", "smartContracts.features.4.title": "Decentralised applications", "smartContracts.features.4.text": "dApps based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a range of different conditions", "smartContracts.plans.title": "Smart Contracts Development Plan", @@ -358,7 +358,7 @@ "smartContracts.plans.stage2.right.text": "A unique feature that dramatically extends token functionality, offering the ability to script token behaviour and providing the flexibility to satisfy any developer’s needs.", "smartContracts.plans.stage3.left.title": "Stage 3", "smartContracts.plans.stage3.left.subtitle": "Smart Contracts", - "smartContracts.plans.stage3.right.text": "Decentralised applications based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a range of different conditions. After the release of Smart Accounts, we'll continue smart contract development to implement sophisticated logic to address almost any computational task.", + "smartContracts.plans.stage3.right.text": "Decentralised applications based on Turing-complete smart contracts will be able to carry out almost any computational task on the blockchain.", "smartContracts.usefulLinks.title": "Useful links", "smartContracts.usefulLinks.contracts.title": "Smart Contracts", "smartContracts.usefulLinks.contracts.capabilities": "Approach and capabilities", diff --git a/src/server/locale/ru.json b/src/server/locale/ru.json index 6af7a49a..23090ec4 100644 --- a/src/server/locale/ru.json +++ b/src/server/locale/ru.json @@ -54,7 +54,6 @@ "developers.friendlyAPI.subtitle": "Waves — платформа с открытым кодом. Вы можете использовать API для разработки собственных приложений.", "developers.friendlyAPI.text": "Ноды предоставляют доступ ко всей информации в блокчейне Waves, включая историю транзакций, состояние баланса и другой. Через REST API можно легко осуществить перевод, обмен или выпуск токенов, а также сдать баланс в лизинг.", "developers.friendlyAPI.title": "Удобный API", - "developers.smart.subtitle": "Мы создаем простые, надежные и масштабируемые, инструменты для выполнения безопасных и прозрачных бизнес-операций на блокчейне Waves.", "developers.smart.cta": "Узнать больше", "developers.text": " Ваши приложения могут работать на блокчейне — мощной, глобально распределенной инфраструктуре. Блокчейн Waves один из самых быстрых NG, масштабируемых и легких в использовании.", "developers.title": "Создавайте приложения с использованием блокчейна", @@ -331,23 +330,6 @@ "smartContracts.title": "Используй RIDE на блокчейне Waves для программирования смарт-контрактов", "smartContracts.description": "Масштабируемый и отказоустойчивый язык программирования, созданный специально для разработки на блокчейне Waves", "smartContracts.cta.documentation": "Скачать Whitepaper", - "smartContracts.features.title": "Что нового дают смарт-контракты?", - "smartContracts.features.1.title": "Мультиподпись", - "smartContracts.features.1.text": "Двухфакторная аутентификация
Не может контролироваться одним человеком
Транзакции производятся только по согласию всех участников одновременно", - "smartContracts.features.2.title": "Атомик свопы", - "smartContracts.features.2.text": "Безопасный обмен токенов, которые находятся на разных блокчейнах", - "smartContracts.features.3.title": "Заморозка токенов", - "smartContracts.features.3.text": "Внедрение параметра, предотвращающего продажу, или передачу токена на определенное время.", - "smartContracts.features.4.title": "Децентрализованные приложения", - "smartContracts.features.4.text": "Децентрализованные приложения на Тьюринг-полных смарт-контрактах, способные осуществлять комплексные процессы на блокчейне с учетом широкого спектра входящих данных.. ", - "smartContracts.plans.title": "План разработки смарт-контрактов", - "smartContracts.plans.stage1.left.title": "Первая стадия", - "smartContracts.plans.stage1.left.subtitle": "Смарт-аккаунты", - "smartContracts.plans.stage1.right.text": "Облегченная версия смарт-контрактов с ограниченным функционалом, основанная на наиболее популярных и востребованных вариантах использования.", - "smartContracts.plans.stage2.left.title": "Вторая стадия", - "smartContracts.plans.stage3.left.title": "Третья стадия", - "smartContracts.plans.stage3.left.subtitle": "Смарт-контракты", - "smartContracts.plans.stage3.right.text": "Децентрализованные приложения на основе Тьюринг-полных смарт-контрактов смогут осуществлять сложные процессы на блокчейне в соответствии с целым рядом различных условий. После выпуска смарт-аккаунтов мы продолжим разработку смарт-контрактов для реализации сложной логики и решения практически любых вычислительных задач.", "smartContracts.usefulLinks.title": "Полезные ссылки", "smartContracts.usefulLinks.contracts.title": "Смарт-контракты", "smartContracts.usefulLinks.contracts.capabilities": "Подход и возможности", From 8116f2e535186757c75d8ac0cac10b0dbc826733 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Mon, 12 Nov 2018 15:34:44 +0300 Subject: [PATCH 03/35] WAEB-278: remove btn russian text --- src/server/locale/ru.json | 1 - 1 file changed, 1 deletion(-) diff --git a/src/server/locale/ru.json b/src/server/locale/ru.json index 23090ec4..988f85eb 100644 --- a/src/server/locale/ru.json +++ b/src/server/locale/ru.json @@ -54,7 +54,6 @@ "developers.friendlyAPI.subtitle": "Waves — платформа с открытым кодом. Вы можете использовать API для разработки собственных приложений.", "developers.friendlyAPI.text": "Ноды предоставляют доступ ко всей информации в блокчейне Waves, включая историю транзакций, состояние баланса и другой. Через REST API можно легко осуществить перевод, обмен или выпуск токенов, а также сдать баланс в лизинг.", "developers.friendlyAPI.title": "Удобный API", - "developers.smart.cta": "Узнать больше", "developers.text": " Ваши приложения могут работать на блокчейне — мощной, глобально распределенной инфраструктуре. Блокчейн Waves один из самых быстрых NG, масштабируемых и легких в использовании.", "developers.title": "Создавайте приложения с использованием блокчейна", "developers.wavesEcosystem.explorer": "Многофункциональный блокчейн-explorer", From 22175deae529d5fcdfba7961808c8cf5202b7bba Mon Sep 17 00:00:00 2001 From: vba2000 Date: Mon, 12 Nov 2018 15:43:52 +0300 Subject: [PATCH 04/35] WAEB-278: fix default texts --- src/common/containers/SmartContracts/View.jsx | 2 +- src/server/locale/en.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/common/containers/SmartContracts/View.jsx b/src/common/containers/SmartContracts/View.jsx index 57ce3dd3..3afdb43e 100644 --- a/src/common/containers/SmartContracts/View.jsx +++ b/src/common/containers/SmartContracts/View.jsx @@ -40,7 +40,7 @@ const PageLayout = ({ onDocumentationClick, classes }) => ( diff --git a/src/server/locale/en.json b/src/server/locale/en.json index 6f561217..99655310 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -339,7 +339,7 @@ "smartContracts.title": "RIDE on Waves blockchain with smart contracts", "smartContracts.description": "Scalable failsafe language to serve both basic account security cases and rich decentralized application.", "smartContracts.cta.documentation": "Download Whitepaper", - "smartContracts.block1.text": "Waves platform is building blockchain-based solutions for enterprise applications. We provide smart and flexible tools capable of interacting with real-world data, designed to meet most business use cases.", + "smartContracts.block1.text": "Waves platform is building blockchain-based solutions for enterprise applications. We provide smart and flexible tools capable of interacting with real-world data, designed to meet most business use cases.", "smartContracts.features.title": "What Will Smart Contracts Bring to Waves?", "smartContracts.features.1.title": "Multisignature Wallet", "smartContracts.features.1.text": "Two-factor authentication
Cannot be controlled by one person alone
The specified parties must all provide their private keys", From e41c15d917e3a16604528fc19932765377e78112 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Mon, 12 Nov 2018 15:55:36 +0300 Subject: [PATCH 05/35] Release 0.18 --- src/common/containers/SmartContracts/lib/Features/index.jsx | 2 +- src/server/locale/en.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/common/containers/SmartContracts/lib/Features/index.jsx b/src/common/containers/SmartContracts/lib/Features/index.jsx index 904e7cdd..409f1ac7 100644 --- a/src/common/containers/SmartContracts/lib/Features/index.jsx +++ b/src/common/containers/SmartContracts/lib/Features/index.jsx @@ -67,7 +67,7 @@ const TokenFreeze = () => ( text={ } inverted diff --git a/src/server/locale/en.json b/src/server/locale/en.json index 99655310..b18de5f2 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -346,7 +346,7 @@ "smartContracts.features.2.title": "Atomic Swaps", "smartContracts.features.2.text": "Trustless exchange of cryptocurrencies hosted on different blockchains", "smartContracts.features.3.title": "Token Freeze", - "smartContracts.features.3.text": "Preventing buyers from selling or transferring tokens out of their address for a certain period of time", + "smartContracts.features.3.text": "Preventing buyers from selling or transferring tokens for a certain period of time", "smartContracts.features.4.title": "Decentralised applications", "smartContracts.features.4.text": "dApps based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a range of different conditions", "smartContracts.plans.title": "Smart Contracts Development Plan", From 4b16dd4bb744f1fcf971d147ef0cd9a250cce79c Mon Sep 17 00:00:00 2001 From: vba2000 Date: Mon, 12 Nov 2018 15:55:36 +0300 Subject: [PATCH 06/35] Release 0.18 --- src/common/containers/SmartContracts/lib/Features/index.jsx | 4 ++-- src/server/locale/en.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/common/containers/SmartContracts/lib/Features/index.jsx b/src/common/containers/SmartContracts/lib/Features/index.jsx index 904e7cdd..5615839e 100644 --- a/src/common/containers/SmartContracts/lib/Features/index.jsx +++ b/src/common/containers/SmartContracts/lib/Features/index.jsx @@ -67,7 +67,7 @@ const TokenFreeze = () => ( text={ } inverted @@ -91,7 +91,7 @@ const DecentralizedApps = () => ( text={ } inverted diff --git a/src/server/locale/en.json b/src/server/locale/en.json index 99655310..2694e0b3 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -346,9 +346,9 @@ "smartContracts.features.2.title": "Atomic Swaps", "smartContracts.features.2.text": "Trustless exchange of cryptocurrencies hosted on different blockchains", "smartContracts.features.3.title": "Token Freeze", - "smartContracts.features.3.text": "Preventing buyers from selling or transferring tokens out of their address for a certain period of time", + "smartContracts.features.3.text": "Preventing buyers from selling or transferring tokens for a certain period of time", "smartContracts.features.4.title": "Decentralised applications", - "smartContracts.features.4.text": "dApps based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a range of different conditions", + "smartContracts.features.4.text": "dApps based on Turing-complete smart contracts will be able to undertake complex processes on the blockchain according to a wide range of different conditions", "smartContracts.plans.title": "Smart Contracts Development Plan", "smartContracts.plans.stage1.left.title": "Stage 1", "smartContracts.plans.stage1.left.subtitle": "Smart Accounts", From bdc6deedcbfb1c7299bc60527759100d0605069c Mon Sep 17 00:00:00 2001 From: vba2000 Date: Mon, 12 Nov 2018 21:59:01 +0300 Subject: [PATCH 07/35] Fix url WEB-281 --- src/common/containers/Company/lib/Whitepaper/View.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/containers/Company/lib/Whitepaper/View.jsx b/src/common/containers/Company/lib/Whitepaper/View.jsx index 32a30a7b..fcac58ef 100644 --- a/src/common/containers/Company/lib/Whitepaper/View.jsx +++ b/src/common/containers/Company/lib/Whitepaper/View.jsx @@ -28,7 +28,7 @@ const Whitepaper = ({ classes, onWhitepaperClick }) => ( diff --git a/src/common/components/Icon/lib/custom/AppleLogo.jsx b/src/common/components/Icon/lib/custom/AppleLogo.jsx new file mode 100644 index 00000000..b0b26fb3 --- /dev/null +++ b/src/common/components/Icon/lib/custom/AppleLogo.jsx @@ -0,0 +1,23 @@ +import React from 'react'; + +const AppleLogo = ({size, style}) => ( + + + + + + + + + +); + +export default AppleLogo; diff --git a/src/common/components/Icon/lib/custom/GoogleAndroid.jsx b/src/common/components/Icon/lib/custom/GoogleAndroid.jsx new file mode 100644 index 00000000..bcfd1b4e --- /dev/null +++ b/src/common/components/Icon/lib/custom/GoogleAndroid.jsx @@ -0,0 +1,20 @@ +import React from 'react'; + +const GoogleAndroid = ({size, style}) => ( + + + + + + + + +); + +export default GoogleAndroid; diff --git a/src/common/components/Icon/lib/custom/map.js b/src/common/components/Icon/lib/custom/map.js index 2841a080..a4e1e6c6 100644 --- a/src/common/components/Icon/lib/custom/map.js +++ b/src/common/components/Icon/lib/custom/map.js @@ -1,6 +1,8 @@ import Hamburger from './Hamburger'; import Cross from './Cross'; import GooglePlay from './GooglePlay'; +import GoogleAndroid from './GoogleAndroid'; +import AppleLogo from './AppleLogo'; import MapMarker from './MapMarker'; import DiscordIcon from '!svg-react-loader!./Discord.svg'; @@ -8,6 +10,8 @@ export default { hamburger: Hamburger, cross: Cross, googlePlay: GooglePlay, + googleAndroid: GoogleAndroid, + appleLogo: AppleLogo, mapMarker: MapMarker, discord: DiscordIcon, }; diff --git a/src/common/containers/Product/lib/MobileWallet/View.jsx b/src/common/containers/Product/lib/MobileWallet/View.jsx index e947edc0..c0d0f871 100644 --- a/src/common/containers/Product/lib/MobileWallet/View.jsx +++ b/src/common/containers/Product/lib/MobileWallet/View.jsx @@ -9,44 +9,53 @@ import { FormattedMessage } from 'react-intl'; import injectSheet from 'react-jss'; import styles from './styles'; +import {withLocaleCookie} from "src/public/hoc/withLocaleCookie"; -const MainScreen = ({ classes, onAndroidClientClick, onIosClientClick }) => ( - - +const MainScreen = ({ classes, onAndroidClientClick, onIosClientClick, getLocale }) => { + + const locale = getLocale(); + const fromFile = true || locale === 'zh'; + + return + - + - - + { fromFile ? null : + - + - + } - + - + - +
-); +}; + +export default withLocaleCookie(injectSheet(styles)(MainScreen)); + +const AppAndroidButton = ({ fromLink, onClick, ...props }) => { -export default injectSheet(styles)(MainScreen); +}; diff --git a/src/common/theme/colors.js b/src/common/theme/colors.js index be369d68..831546e1 100644 --- a/src/common/theme/colors.js +++ b/src/common/theme/colors.js @@ -8,6 +8,7 @@ const colors = { }, gray: { 100: '#646464', + 200: '#f3f5fa', 300: '#e7e7e7', 400: '#acacac', 700: '#f9f9f9', diff --git a/src/common/theme/palette.js b/src/common/theme/palette.js index 914828ec..b41d79f9 100644 --- a/src/common/theme/palette.js +++ b/src/common/theme/palette.js @@ -22,6 +22,7 @@ export const gray = colorMigrationProxy( 0: '#fff', 50: '#fafafa', 100: '#ebecf0', + 200: '#f3f5fa', // 200: '#d8dbed', // moved to grayBlue // 300: '#9cb4e1', // moved to grayBlue 300: '#c6c6c6', diff --git a/src/server/locale/en.json b/src/server/locale/en.json index 2694e0b3..c25762cf 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -21,6 +21,10 @@ "company.about.text": "The Waves Platform is a global public blockchain platform, founded in 2016. Waves Platform’s mission is to reinvent the DNA of entrepreneurship around the world by providing a shared infrastructure, offering easy-to-use, highly functional tools to make blockchain available to every person or organisation that can benefit from it.", "components.buttonGetApp.title.android": "Get it on
Google Play", "components.buttonGetApp.title.ios": "Get it on
APP STORE", + + "components.buttonGetApp.title.androidLink": "Download Android
version 2.0.2", + "components.buttonGetApp.title.iosLink": "iOS version is
coming soon", + "cookieConsent.text": "According to our {policy}, this website uses 🍪cookies to improve functionality and performance. Some cookies are essential for the operation of the website, you can turn them off only via browser settings. Other cookies can be disabled by this tool.", "cookieConsent.disable": "DISABLE", "cookieConsent.allow": "ALLOW ALL", diff --git a/src/server/locale/ru.json b/src/server/locale/ru.json index 988f85eb..b891b56e 100644 --- a/src/server/locale/ru.json +++ b/src/server/locale/ru.json @@ -21,6 +21,8 @@ "company.about.text": "Waves — глобальная блокчейн-платформа, запущенная в 2016 году. Миссия Waves — построить блокчейн-экосистему, позволяющую решать реальные задачи в самых разных сферах. Мы создаем блокчейн-инфраструктуру с удобными инструментами для пользователей нашей платформы, разработчиков и бизнесов.", "components.buttonGetApp.title.android": "Скачать в Google Play", "components.buttonGetApp.title.ios": "Скачать в APP STORE", + "components.buttonGetApp.title.androidLink": "Скачать Android
версию 2.0.2", + "components.buttonGetApp.title.iosLink": "iOS версия
ожидается", "home.joinUs.text2": "Присоединиться к сообществу Waves", "cta.brandingPackage": "Брендбук", "cta.getClient": "Скачать клиент", diff --git a/src/server/locale/zh.json b/src/server/locale/zh.json index 494ef72d..fbea760c 100644 --- a/src/server/locale/zh.json +++ b/src/server/locale/zh.json @@ -21,6 +21,10 @@ "company.about.text": " Waves平台是全球公共区块链平台,成立于2016年。Waves 平台的使命是通过提供共享基础设施,重塑全球企业家的DNA,提供易于使用,功能强大的工具,使得区块链让每个可从中受益的人们或是组织使用.", "components.buttonGetApp.title.android":"在Google Play上下载", "components.buttonGetApp.title.ios":"在APP STORE上下载", + + "components.buttonGetApp.title.androidLink":"下载Android版本2.0.2", + "components.buttonGetApp.title.iosLink":"iOS版即将推出", + "cta.brandingPackage": "品牌套餐", "cta.getClient": "下载客户端", "cta.getClient.windows": "Windows", @@ -120,9 +124,9 @@ "home.audience.organisations.title": "组织架构", "home.audience.traders.text": "在本地的简易客户端中安全地存储资产,同时也可以快速安全地在内置的去中心化交易平台 (DEX) 上进行交易。", "home.audience.traders.title": "交易者", - "home.issuingTokens.text.one": "获得自己的内部数字货币。使用区块链众筹,支付货物和服务。使用代币创建投票系统和忠诚度或折扣项目。他们在Waves上发行了自己的代币:", - "home.issuingTokens.text.few": "获得自己的内部数字货币。使用区块链众筹,支付货物和服务。使用代币创建投票系统和忠诚度或折扣项目。他们在Waves上发行了自己的代币:", - "home.issuingTokens.text.other": "获得自己的内部数字货币。使用区块链众筹,支付货物和服务。使用代币创建投票系统和忠诚度或折扣项目。他们在Waves上发行了自己的代币:", + "home.issuingTokens.text.one": "获得自己的内部数字货币。使用区块链众筹,支付货物和服务。使用代币创建投票系统和忠诚度或折扣项目。:", + "home.issuingTokens.text.few": "获得自己的内部数字货币。使用区块链众筹,支付货物和服务。使用代币创建投票系统和忠诚度或折扣项目。:", + "home.issuingTokens.text.other": "获得自己的内部数字货币。使用区块链众筹,支付货物和服务。使用代币创建投票系统和忠诚度或折扣项目。:", "home.issuingTokens.title": "发行自己的代币", "home.joinUs.quote": "关注最新的新闻和资讯,了解Waves平台上发生的所有大事件", "home.joinUs.text": "Waves汇集了区块链爱好者、来自许多不同行业的项目创始人、交易者和投资者。", @@ -371,4 +375,4 @@ "wavesNG.title": "Waves—有史以来最快的区块链", "wavesNG.news.1": "Waves-NG压力测试:结果是!", "wavesNG.news.2": "Waves将成为全球最快的去中心化区块链平台" -} \ No newline at end of file +} From 02232fa5430416d0562c8d63515033e7d9a51e86 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Thu, 13 Dec 2018 14:58:53 +0300 Subject: [PATCH 13/35] Remove debugging --- src/common/containers/Product/lib/MobileWallet/View.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/containers/Product/lib/MobileWallet/View.jsx b/src/common/containers/Product/lib/MobileWallet/View.jsx index c0d0f871..8406c683 100644 --- a/src/common/containers/Product/lib/MobileWallet/View.jsx +++ b/src/common/containers/Product/lib/MobileWallet/View.jsx @@ -14,7 +14,7 @@ import {withLocaleCookie} from "src/public/hoc/withLocaleCookie"; const MainScreen = ({ classes, onAndroidClientClick, onIosClientClick, getLocale }) => { const locale = getLocale(); - const fromFile = true || locale === 'zh'; + const fromFile = locale === 'zh'; return From dcff04b8adf3c56f065f9026af9d8dc8c708b309 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Thu, 13 Dec 2018 15:37:48 +0300 Subject: [PATCH 14/35] Fix android link an styles --- src/common/components/Button/styles.js | 7 +++++-- src/common/components/ButtonGetApp/index.jsx | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/common/components/Button/styles.js b/src/common/components/Button/styles.js index 8314158b..bc6b4e4f 100644 --- a/src/common/components/Button/styles.js +++ b/src/common/components/Button/styles.js @@ -59,8 +59,11 @@ const styles = theme => ({ transform: 'none', '&:hover': { transform: 'none', - } - + }, + '&:disabled': { + opacity: 1, + pointerEvents: 'none', + }, }, light: { backgroundColor: theme.palette.blue[500], diff --git a/src/common/components/ButtonGetApp/index.jsx b/src/common/components/ButtonGetApp/index.jsx index 4141d147..6bcf082d 100644 --- a/src/common/components/ButtonGetApp/index.jsx +++ b/src/common/components/ButtonGetApp/index.jsx @@ -32,7 +32,7 @@ const APP_STORE_HREF = { }; const GOOGLE_PLAY_HREF = { store: 'https://play.google.com/store/apps/details?id=com.wavesplatform.wallet', - link: fileUrl('WavesWalletApp2.0.2.app'), + link: fileUrl('WavesWallet_release_2.0.2.apk'), }; From b8980a25fe92cb26d2ae280a2d08cd3bf287675d Mon Sep 17 00:00:00 2001 From: vba2000 Date: Thu, 27 Dec 2018 12:03:40 +0300 Subject: [PATCH 15/35] Fix analitics --- src/common/components/ButtonGetApp/index.jsx | 17 +++++++++-------- .../Product/lib/MobileWallet/index.js | 8 ++++---- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/common/components/ButtonGetApp/index.jsx b/src/common/components/ButtonGetApp/index.jsx index 6bcf082d..b5279944 100644 --- a/src/common/components/ButtonGetApp/index.jsx +++ b/src/common/components/ButtonGetApp/index.jsx @@ -44,18 +44,19 @@ const AppIcon = ({ type, fromFile}) => ( ) ); -const getButtonProps = ({ fromFile, type }) => ({ - href: (type === 'google-play' ? GOOGLE_PLAY_HREF : APP_STORE_HREF)[fromFile ? 'link' : 'store'], - target: "_blank", - grey: type === 'app-store' && fromFile, - disabled: type === 'app-store' && fromFile, - icon: , +const getButtonProps = ({fromFile, type, onClick}) => ({ + href: (type === 'google-play' ? GOOGLE_PLAY_HREF : APP_STORE_HREF)[fromFile ? 'link' : 'store'], + target: "_blank", + grey: type === 'app-store' && fromFile, + disabled: type === 'app-store' && fromFile, + icon: , + onClick: () => onClick(fromFile ? 'mobile_client_download' : 'mobile_client') }); -const ButtonGetApp = ({ classes, className, type, fromFile, ...rest }) => ( +const ButtonGetApp = ({ classes, className, type, fromFile, onClick, ...rest }) => ( + + } + {!showCounter ? null : + + + + +
+ + + + +
+ + } +
+ + + ); + } +} + +export default injectSheet(styles)(SmartAssetsView); + diff --git a/src/common/containers/Main/lib/SmartAssets/styles/bg.js b/src/common/containers/Main/lib/SmartAssets/styles/bg.js new file mode 100644 index 00000000..2e97a615 --- /dev/null +++ b/src/common/containers/Main/lib/SmartAssets/styles/bg.js @@ -0,0 +1,11 @@ +import img2x from '../img/smart-launch-bg.jpg'; + +export default () => ({ + bgAssets: { + backgroundImage: `url(${img2x})`, + backgroundSize: 'cover', + backgroundPosition: 'center center', + width: '100%', + minHeight: '544px', + }, +}); diff --git a/src/common/containers/Main/lib/SmartAssets/styles/index.js b/src/common/containers/Main/lib/SmartAssets/styles/index.js new file mode 100644 index 00000000..178b8d1f --- /dev/null +++ b/src/common/containers/Main/lib/SmartAssets/styles/index.js @@ -0,0 +1,40 @@ +import spacing from './spacing'; +import bg from './bg'; + +export default theme => ({ + ...bg(theme), + ...spacing(theme), + + smartAssetTitle: { + marginTop: '147px', + fontWeight: 600, + }, + + smartAssetNotActiveTitle: { + marginTop: '152px', + }, + + digest: { + display: 'inline-block', + }, + + desktopOnly: { + display: 'none', + [theme.mixins.atMedia('md')]: { + display: 'block', + }, + }, + centered: { + textAlign: 'center', + }, + titleStyle: { + fontSize: 38, + color: theme.palette.gray[0], + [theme.breakpoints.up('md')]: { + fontSize: 80, + width: 773, + fontWeight: 700, + lineHeight: 1.05, + }, + }, +}); diff --git a/src/common/containers/Main/lib/SmartAssets/styles/spacing.js b/src/common/containers/Main/lib/SmartAssets/styles/spacing.js new file mode 100644 index 00000000..8ef6f354 --- /dev/null +++ b/src/common/containers/Main/lib/SmartAssets/styles/spacing.js @@ -0,0 +1,25 @@ +export default theme => ({ + paddedTop: theme.spacing.paddedTop, + paddedBottom: theme.spacing.paddedBottom, + section: theme.spacing.section, + sectionNarrow: theme.spacing.sectionNarrow, + sectionWide: theme.spacing.sectionWide, + + withBackground: { + padding: theme.spacing.getSpacing(8, 0), + [theme.mixins.atMedia('md')]: { + padding: theme.spacing.getSpacing(12, 0), + }, + [theme.mixins.atMedia('lg')]: { + padding: theme.spacing.getSpacing(20, 0), + }, + }, + + marginSmall: { + marginBottom: theme.spacing.unit, + }, + + footerMarginCompensate: { + marginBottom: -10, + }, +}); diff --git a/src/server/locale/en.json b/src/server/locale/en.json index c25762cf..fa94d0be 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -179,6 +179,22 @@ "home.wallet.wallet": "Create a multiple-currency wallet", "home.wavesClient.text": "The current version of the Waves client is a wallet, decentralised exchange (DEX), and a tool to release tokens.", "home.wavesClient.title": "The Waves Client", + "home.smartAssets.title.text": "Smart Assets feature is activated on Waves MainNet!", + "home.smartAssets.button.learn": "Learn more", + "home.smartAssets.activated.title": "Smart Assets will be activated in", + "home.smartAssets.days.one": "day", + "home.smartAssets.days.few": "days", + "home.smartAssets.days.other": "days", + "home.smartAssets.hours.one": "hour", + "home.smartAssets.hours.few": "hours", + "home.smartAssets.hours.other": "hours", + "home.smartAssets.minutes.one": "minute", + "home.smartAssets.minutes.few": "minutes", + "home.smartAssets.minutes.other": "minutes", + "home.smartAssets.seconds.one": "second", + "home.smartAssets.seconds.few.": "seconds", + "home.smartAssets.seconds.other.": "seconds", + "howToWallet.step1": "First, create an account.", "howToWallet.step2": "Fill your wallet with Bitcoin, Ethereum, Litecoin, Zcash, US dollars or Euros.", "howToWallet.step3": "You can convert them to Waves tokens using the decentralized exchange, which you can find on the Waves client.", diff --git a/src/server/locale/ru.json b/src/server/locale/ru.json index b891b56e..be6d1ed0 100644 --- a/src/server/locale/ru.json +++ b/src/server/locale/ru.json @@ -166,6 +166,22 @@ "home.wallet.wallet": "Мультивалютные кошельки", "home.wavesClient.text": "В действующую версию клиента Waves входят кошелек, децентрализованная биржа (DEX) и инструмент для выпуска токенов.", "home.wavesClient.title": "Клиент Waves", + "home.smartAssets.title.text": "Смарт-ассеты активированы в основной сети Waves!", + "home.smartAssets.button.learn": "Узнать больше", + "home.smartAssets.activated.title": "Смар-ассеты будут активированы через", + "home.smartAssets.days.one": "день", + "home.smartAssets.days.few": "дня", + "home.smartAssets.days.other": "дней", + "home.smartAssets.hours.one": "час", + "home.smartAssets.hours.few": "часа", + "home.smartAssets.hours.other": "часов", + "home.smartAssets.minutes.one": "минута", + "home.smartAssets.minutes.few": "минуты", + "home.smartAssets.minutes.other": "минут", + "home.smartAssets.seconds.one": "секунда", + "home.smartAssets.seconds.few": "секунды", + "home.smartAssets.seconds.other": "секунд", + "howToWallet.step1": "Создайте аккаунт", "howToWallet.step2": "Добавьте в кошелек Bitcoin, Ethereum, Litecoin, Zcash, доллары или евро", "howToWallet.step3": "Деньги можно конвертировать в токены WAVES (находятся в клиенте Waves)", From be8539343b89a16d82767e978765dc3cdfbf6f05 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sat, 29 Dec 2018 22:03:40 +0300 Subject: [PATCH 17/35] Fix langs --- src/server/locale/en.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/server/locale/en.json b/src/server/locale/en.json index fa94d0be..64b75737 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -192,8 +192,8 @@ "home.smartAssets.minutes.few": "minutes", "home.smartAssets.minutes.other": "minutes", "home.smartAssets.seconds.one": "second", - "home.smartAssets.seconds.few.": "seconds", - "home.smartAssets.seconds.other.": "seconds", + "home.smartAssets.seconds.few": "seconds", + "home.smartAssets.seconds.other": "seconds", "howToWallet.step1": "First, create an account.", "howToWallet.step2": "Fill your wallet with Bitcoin, Ethereum, Litecoin, Zcash, US dollars or Euros.", From 3a27e3f81f8a9328dc795e189f90abf5c263e373 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sat, 29 Dec 2018 22:11:52 +0300 Subject: [PATCH 18/35] Fix show time --- src/common/containers/Main/lib/SmartAssets/index.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 7e011232..d4889c0b 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -55,7 +55,7 @@ const Digit = ({time, text, className, isLast}) => { class SmartAssetsView extends React.PureComponent { - state = { showCounter: true, timeDiff: 0, days: 0, hours: 0, minutes: 0, seconds: 0}; + state = { showCounter: true, timeDiff: 0, days: 0, hours: 0, minutes: 0, seconds: 0, initData: false }; constructor(props) { super(props); @@ -105,7 +105,7 @@ class SmartAssetsView extends React.PureComponent { render() { const { classes } = this.props; - const { showCounter, days, hours, minutes, seconds } = this.state; + const { showCounter, days, hours, minutes, seconds, initData } = this.state; return (
@@ -123,7 +123,7 @@ class SmartAssetsView extends React.PureComponent { } - {!showCounter ? null : + {!showCounter && initData ? null : From 4328423024fe4530763c4682cea5d1808b7091ed Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sat, 29 Dec 2018 22:46:15 +0300 Subject: [PATCH 19/35] Add responsive --- .../containers/Main/lib/SmartAssets/index.js | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index d4889c0b..a2bc1717 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -19,10 +19,10 @@ const TIME_REF = { }; const Digit = ({time, text, className, isLast}) => { - return
+ return
- + {time} {isLast ? null : :} @@ -55,7 +55,7 @@ const Digit = ({time, text, className, isLast}) => { class SmartAssetsView extends React.PureComponent { - state = { showCounter: true, timeDiff: 0, days: 0, hours: 0, minutes: 0, seconds: 0, initData: false }; + state = { showCounter: true, timeDiff: null, days: 0, hours: 0, minutes: 0, seconds: 0, initData: false }; constructor(props) { super(props); @@ -73,7 +73,7 @@ class SmartAssetsView extends React.PureComponent { const refTime = 1546829001000; clearTimeout(this.timer); - this.timer = setTimeout(() => this.updateTime(), 1000); + this.timer = setTimeout(() => this.updateTime(), 400); if (!this.state.initData) { return null; @@ -113,19 +113,25 @@ class SmartAssetsView extends React.PureComponent { {showCounter ? null : - + } {!showCounter && initData ? null : - +
From 6efca301c56f218c3c331c1fbc4028a56e4f5508 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sat, 29 Dec 2018 23:03:59 +0300 Subject: [PATCH 20/35] fix init timer --- src/common/containers/Main/lib/SmartAssets/index.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index a2bc1717..f353d43c 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -66,7 +66,7 @@ class SmartAssetsView extends React.PureComponent { const data = await fetch('https://nodes.wavesplatform.com/utils/time'); const { system } = await data.json(); const myTime = Date.now(); - this.setState({ timeDiff: myTime - ( system + 3 * TIME_REF.HOUR), initData: true }); + this.setState({ timeDiff: myTime - ( system + 3 * TIME_REF.HOUR) }); } updateTime() { @@ -75,7 +75,7 @@ class SmartAssetsView extends React.PureComponent { clearTimeout(this.timer); this.timer = setTimeout(() => this.updateTime(), 400); - if (!this.state.initData) { + if (!this.state.timeDiff == null) { return null; } @@ -92,7 +92,7 @@ class SmartAssetsView extends React.PureComponent { const minutes = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR) / TIME_REF.MINUTE); const seconds = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR - minutes * TIME_REF.MINUTE ) / TIME_REF.SECOND); - this.setState({ days, hours, minutes, seconds }); + this.setState({ days, hours, minutes, seconds, initData: true }); } componentWillMount() { From b18fbf79b5ff9d1255c8e8fcbc3be8421296bc93 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sat, 29 Dec 2018 23:23:59 +0300 Subject: [PATCH 21/35] less interval update --- src/common/containers/Main/lib/SmartAssets/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index f353d43c..90691a32 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -73,7 +73,7 @@ class SmartAssetsView extends React.PureComponent { const refTime = 1546829001000; clearTimeout(this.timer); - this.timer = setTimeout(() => this.updateTime(), 400); + this.timer = setTimeout(() => this.updateTime(), 200); if (!this.state.timeDiff == null) { return null; From 06227c9c46a414fdb3a6fa916ef67d151acda3a2 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sun, 30 Dec 2018 00:33:16 +0300 Subject: [PATCH 22/35] Fix global styles --- src/common/components/Background/MainScreen.jsx | 4 +++- src/common/components/Typography/index.jsx | 2 ++ src/common/components/Typography/styles.js | 4 ++++ src/common/containers/Main/index.jsx | 2 +- .../containers/Main/lib/SmartAssets/index.js | 16 ++++++++-------- .../Main/lib/SmartAssets/styles/index.js | 14 ++++++++++++++ src/common/theme/spacing.js | 11 +++++++++++ src/common/theme/typography.js | 12 ++++++++++++ 8 files changed, 55 insertions(+), 10 deletions(-) diff --git a/src/common/components/Background/MainScreen.jsx b/src/common/components/Background/MainScreen.jsx index 2b60314e..df10c9f6 100644 --- a/src/common/components/Background/MainScreen.jsx +++ b/src/common/components/Background/MainScreen.jsx @@ -15,6 +15,7 @@ const styles = theme => ({ position: 'relative', height: '100vh', width: '100%', + minHeight: '700px', }, background: { position: 'absolute', @@ -59,6 +60,7 @@ const styles = theme => ({ }); const MainScreenBackground = ({ + minHeight, classes, children, className, @@ -71,7 +73,7 @@ const MainScreenBackground = ({ videoFirstFrameMobile, }) => (
- +
({ extend: [theme.typography.body2, theme.spacing.body], fontWeight: ({ weight }) => weight || theme.typography.body2.fontWeight, }, + display6: { + extend: [theme.typography.display6, theme.spacing.display6], + fontWeight: ({ weight }) => weight || theme.typography.display6.fontWeight, + }, display5: { extend: [theme.typography.display5, theme.spacing.display5], fontWeight: ({ weight }) => weight || theme.typography.display5.fontWeight, diff --git a/src/common/containers/Main/index.jsx b/src/common/containers/Main/index.jsx index 33033a05..2010602b 100644 --- a/src/common/containers/Main/index.jsx +++ b/src/common/containers/Main/index.jsx @@ -38,6 +38,7 @@ import { hot } from 'react-hot-loader'; const PageLayout = ({ classes }) => ( ( -
diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 90691a32..30f97f41 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -18,17 +18,17 @@ const TIME_REF = { SECOND: 1000 }; -const Digit = ({time, text, className, isLast}) => { - return
+const Digit = injectSheet(styles)(({time, text, isLast, classes}) => { + return
- + {time} - {isLast ? null : :} + {isLast ? null : :}
- + {
-} +}); class SmartAssetsView extends React.PureComponent { @@ -133,8 +133,8 @@ class SmartAssetsView extends React.PureComponent { defaultMessage="Smart Assets will be activated in" /> - -
+ +
diff --git a/src/common/containers/Main/lib/SmartAssets/styles/index.js b/src/common/containers/Main/lib/SmartAssets/styles/index.js index 178b8d1f..6e59b11b 100644 --- a/src/common/containers/Main/lib/SmartAssets/styles/index.js +++ b/src/common/containers/Main/lib/SmartAssets/styles/index.js @@ -18,6 +18,20 @@ export default theme => ({ display: 'inline-block', }, + dots: { + paddingLeft: '10px', + marginRight: '10px', + fontSize: '36px', + verticalAlign: 'top', + [theme.mixins.atMedia('md')]: { + paddingLeft: '14px', + marginRight: '14px', + fontSize: '70px', + }, + }, + + + desktopOnly: { display: 'none', [theme.mixins.atMedia('md')]: { diff --git a/src/common/theme/spacing.js b/src/common/theme/spacing.js index 6494c9b2..24d6aa4e 100644 --- a/src/common/theme/spacing.js +++ b/src/common/theme/spacing.js @@ -43,6 +43,17 @@ const createSpacing = ( ), }, + display6: { + '& + $body': combineMobileDesktopStyles( + { marginTop: unit * 3 }, + { marginTop: unit * 5 } + ), + '& + $body2': combineMobileDesktopStyles( + { marginTop: unit * 3 }, + { marginTop: unit * 5 } + ), + }, + display5: { '& + $body': combineMobileDesktopStyles( { marginTop: unit * 3 }, diff --git a/src/common/theme/typography.js b/src/common/theme/typography.js index 581d8e5e..de20068f 100644 --- a/src/common/theme/typography.js +++ b/src/common/theme/typography.js @@ -24,6 +24,18 @@ const creatyTypography = (palette, breakpoints) => { }; return { + display6: { + ...base, + ...display, + fontSize: 46, + lineHeight: 1.2, + fontWeight: 600, + margin: 0, + + [breakpoints.up('md')]: { + fontSize: 110, + }, + }, display5: { ...base, ...display, From d758739b6b2fa39591f73b3f9b7d6b2ff8200076 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sun, 30 Dec 2018 00:59:46 +0300 Subject: [PATCH 23/35] Fix padding --- src/common/containers/Main/lib/SmartAssets/index.js | 4 ++-- src/server/locale/ru.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 30f97f41..192777c0 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -21,13 +21,13 @@ const TIME_REF = { const Digit = injectSheet(styles)(({time, text, isLast, classes}) => { return
-
+
{time} {isLast ? null : :}
-
+
Date: Sun, 30 Dec 2018 01:11:34 +0300 Subject: [PATCH 24/35] Fix time GMT --- src/common/containers/Main/lib/SmartAssets/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 192777c0..5674075f 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -66,7 +66,7 @@ class SmartAssetsView extends React.PureComponent { const data = await fetch('https://nodes.wavesplatform.com/utils/time'); const { system } = await data.json(); const myTime = Date.now(); - this.setState({ timeDiff: myTime - ( system + 3 * TIME_REF.HOUR) }); + this.setState({ timeDiff: myTime - ( system ) }); } updateTime() { @@ -79,7 +79,7 @@ class SmartAssetsView extends React.PureComponent { return null; } - const time = refTime - Date.now() - this.state.timeDiff + 60 * 60 * 1000; + const time = refTime - Date.now() - this.state.timeDiff; if (time < 0) { this.setState({ showCounter: false }); From 5af2796ec87a665fb46c2baf386a8a55f05484f7 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sun, 30 Dec 2018 01:20:00 +0300 Subject: [PATCH 25/35] Fix literals --- src/server/locale/hi.json | 17 ++++++++++++++++- src/server/locale/ko.json | 15 +++++++++++++++ src/server/locale/zh.json | 15 +++++++++++++++ 3 files changed, 46 insertions(+), 1 deletion(-) diff --git a/src/server/locale/hi.json b/src/server/locale/hi.json index 43737acc..abfee4ca 100644 --- a/src/server/locale/hi.json +++ b/src/server/locale/hi.json @@ -168,6 +168,21 @@ "home.wallet.wallet":"मल्टी-करेंसी वॉलेट्स", "home.wavesClient.text":"Waves क्लाइंट के वर्तमान संस्करण में वॉलेट, DEX और Token Launcher शामिल है।", "home.wavesClient.title":"Waves Client", + "home.smartAssets.title.text": "Smart Assets feature is activated on Waves MainNet!", + "home.smartAssets.button.learn": "Learn more", + "home.smartAssets.activated.title": "Smart Assets will be activated in", + "home.smartAssets.days.one": "day", + "home.smartAssets.days.few": "days", + "home.smartAssets.days.other": "days", + "home.smartAssets.hours.one": "hour", + "home.smartAssets.hours.few": "hours", + "home.smartAssets.hours.other": "hours", + "home.smartAssets.minutes.one": "minute", + "home.smartAssets.minutes.few": "minutes", + "home.smartAssets.minutes.other": "minutes", + "home.smartAssets.seconds.one": "second", + "home.smartAssets.seconds.few": "seconds", + "home.smartAssets.seconds.other": "seconds", "howToWallet.step1":"खाता बनाएं", "howToWallet.step2":"अपने वॉलेट में क्रिप्टो या फिएट करेंसी जमा करें।", "howToWallet.step3":"Waves क्लाइंट में विकेन्द्रित (डीसेन्ट्रलाइज़्ड) एक्सचेंज का उपयोग करते हुए आप किसी भी करेंसी को Waves टोकनों में बदल सकते हैं।", @@ -379,4 +394,4 @@ "wavesNG.news.2":"Waves, पूरी दुनिया में 'सबसे तेज' विकेन्द्रित ब्लॉकचेन प्लेटफार्म बनने के लिए तैयार है", "wavesNG.descriptions.costPerTxs":"लेनदेन मूल्य", "wavesNG.descriptions.txsPerSecond":"प्रति सेकंड लेनदेन" -} \ No newline at end of file +} diff --git a/src/server/locale/ko.json b/src/server/locale/ko.json index bc6727a3..c4d20750 100644 --- a/src/server/locale/ko.json +++ b/src/server/locale/ko.json @@ -159,6 +159,21 @@ "home.wallet.wallet": "복수통화 지갑을 개설", "home.wavesClient.text": "Waves 클라이언트의 현재 버전은 지갑, 분산화거래소 (DEX), 토큰 발행 기능을 포합합니다. ", "home.wavesClient.title": "Waves 클라이언트 ", + "home.smartAssets.title.text": "Smart Assets feature is activated on Waves MainNet!", + "home.smartAssets.button.learn": "Learn more", + "home.smartAssets.activated.title": "Smart Assets will be activated in", + "home.smartAssets.days.one": "day", + "home.smartAssets.days.few": "days", + "home.smartAssets.days.other": "days", + "home.smartAssets.hours.one": "hour", + "home.smartAssets.hours.few": "hours", + "home.smartAssets.hours.other": "hours", + "home.smartAssets.minutes.one": "minute", + "home.smartAssets.minutes.few": "minutes", + "home.smartAssets.minutes.other": "minutes", + "home.smartAssets.seconds.one": "second", + "home.smartAssets.seconds.few": "seconds", + "home.smartAssets.seconds.other": "seconds", "howToWallet.step1": "먼저 Waves 클라이언트를 다운로드 받고 설치하십시오.", "howToWallet.step2": "지갑을 비트코인, 이더리움, 이더리움 클래식, 미국 달러나 유로로 채우십시오. ", "howToWallet.step3": "화폐를 Waves 클라이언트에 있는 분산화거래소(DEX)를 통해 Waves 토큰으로 변환하실 수 있습니다. ", diff --git a/src/server/locale/zh.json b/src/server/locale/zh.json index fbea760c..769a9dc7 100644 --- a/src/server/locale/zh.json +++ b/src/server/locale/zh.json @@ -167,6 +167,21 @@ "home.wallet.wallet": "创建一个多币种钱包", "home.wavesClient.text": "当前版本的Waves客户端是一个钱包,去中心化交易平台 (DEX),以及一个发行代币的工具。", "home.wavesClient.title": "Waves客户端", + "home.smartAssets.title.text": "Smart Assets feature is activated on Waves MainNet!", + "home.smartAssets.button.learn": "Learn more", + "home.smartAssets.activated.title": "Smart Assets will be activated in", + "home.smartAssets.days.one": "day", + "home.smartAssets.days.few": "days", + "home.smartAssets.days.other": "days", + "home.smartAssets.hours.one": "hour", + "home.smartAssets.hours.few": "hours", + "home.smartAssets.hours.other": "hours", + "home.smartAssets.minutes.one": "minute", + "home.smartAssets.minutes.few": "minutes", + "home.smartAssets.minutes.other": "minutes", + "home.smartAssets.seconds.one": "second", + "home.smartAssets.seconds.few": "seconds", + "home.smartAssets.seconds.other": "seconds", "howToWallet.step1": "请首先创建一个帐户。", "howToWallet.step2": "用比特币、以太币、莱特币、Zcash、美元或欧元向钱包中充值。", "howToWallet.step3": "您可以在钱包客户端上使用去中心化交易平台将它们转换为Waves代币。", From 1e58aef389691770571f7a32085fea06754cb198 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Tue, 31 Dec 2019 01:29:56 +0300 Subject: [PATCH 26/35] Fix counter --- src/common/containers/Main/lib/SmartAssets/index.js | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 5674075f..aed3fe81 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -66,12 +66,10 @@ class SmartAssetsView extends React.PureComponent { const data = await fetch('https://nodes.wavesplatform.com/utils/time'); const { system } = await data.json(); const myTime = Date.now(); - this.setState({ timeDiff: myTime - ( system ) }); + this.setState({ timeDiff: 1546829001000 - system, myTime }); } updateTime() { - const refTime = 1546829001000; - clearTimeout(this.timer); this.timer = setTimeout(() => this.updateTime(), 200); @@ -79,7 +77,7 @@ class SmartAssetsView extends React.PureComponent { return null; } - const time = refTime - Date.now() - this.state.timeDiff; + const time = this.state.timeDiff - (Date.now() - this.state.myTime); if (time < 0) { this.setState({ showCounter: false }); From a507f57e1a511a0c6d50fff97a69729dc6845007 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sun, 30 Dec 2018 01:38:11 +0300 Subject: [PATCH 27/35] Fix NaN --- src/common/containers/Main/lib/SmartAssets/index.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index aed3fe81..9ccdc4d6 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -86,9 +86,9 @@ class SmartAssetsView extends React.PureComponent { } const days = parseInt(time / TIME_REF.DAY); - const hours = parseInt((time - days * TIME_REF.DAY) / TIME_REF.HOUR); - const minutes = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR) / TIME_REF.MINUTE); - const seconds = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR - minutes * TIME_REF.MINUTE ) / TIME_REF.SECOND); + const hours = parseInt((time - days * TIME_REF.DAY) / TIME_REF.HOUR) || ''; + const minutes = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR) / TIME_REF.MINUTE) || ''; + const seconds = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR - minutes * TIME_REF.MINUTE ) / TIME_REF.SECOND) || ''; this.setState({ days, hours, minutes, seconds, initData: true }); } From 96d58ffe2df5609eab6a0f08510dce25889390f8 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sun, 30 Dec 2018 01:44:57 +0300 Subject: [PATCH 28/35] Fix time --- src/common/containers/Main/lib/SmartAssets/index.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 9ccdc4d6..77c40c38 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -79,6 +79,11 @@ class SmartAssetsView extends React.PureComponent { const time = this.state.timeDiff - (Date.now() - this.state.myTime); + if (!time) { + return null; + } + + if (time < 0) { this.setState({ showCounter: false }); clearTimeout(this.timer); @@ -86,7 +91,7 @@ class SmartAssetsView extends React.PureComponent { } const days = parseInt(time / TIME_REF.DAY); - const hours = parseInt((time - days * TIME_REF.DAY) / TIME_REF.HOUR) || ''; + const hours = parseInt((time - days * TIME_REF.DAY) / TIME_REF.HOUR); const minutes = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR) / TIME_REF.MINUTE) || ''; const seconds = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR - minutes * TIME_REF.MINUTE ) / TIME_REF.SECOND) || ''; From 8e9153172216d302c9a0530df73896fdc5588bd6 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sun, 30 Dec 2018 01:46:33 +0300 Subject: [PATCH 29/35] Fix time --- src/common/containers/Main/lib/SmartAssets/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 77c40c38..692abe2d 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -73,7 +73,7 @@ class SmartAssetsView extends React.PureComponent { clearTimeout(this.timer); this.timer = setTimeout(() => this.updateTime(), 200); - if (!this.state.timeDiff == null) { + if (this.state.timeDiff == null) { return null; } From 37ef830c5f6c8765361a998bcf8b1740d6668bd9 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Sun, 30 Dec 2018 01:54:44 +0300 Subject: [PATCH 30/35] Fix time --- src/common/containers/Main/lib/SmartAssets/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index 692abe2d..a5c27a42 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -130,7 +130,7 @@ class SmartAssetsView extends React.PureComponent { } - {!showCounter && initData ? null : + {!showCounter || !initData ? null : Date: Fri, 18 Jan 2019 12:06:24 +0300 Subject: [PATCH 31/35] WEB-289: remove code --- .../containers/Main/lib/SmartAssets/index.js | 108 +----------------- 1 file changed, 2 insertions(+), 106 deletions(-) diff --git a/src/common/containers/Main/lib/SmartAssets/index.js b/src/common/containers/Main/lib/SmartAssets/index.js index a5c27a42..463991ab 100644 --- a/src/common/containers/Main/lib/SmartAssets/index.js +++ b/src/common/containers/Main/lib/SmartAssets/index.js @@ -11,110 +11,21 @@ import styles from './styles'; import injectSheet from "react-jss"; import ContentContainer from 'src/common/components/ContentContainer'; -const TIME_REF = { - DAY: 1000 * 60 * 60 * 24, - HOUR: 1000 * 60 * 60, - MINUTE: 1000 * 60, - SECOND: 1000 -}; - -const Digit = injectSheet(styles)(({time, text, isLast, classes}) => { - return
-
-
- - {time} - {isLast ? null : :} - -
-
- - - } - few={ - - } - other={ - - } - /> - -
-
-
-}); class SmartAssetsView extends React.PureComponent { - state = { showCounter: true, timeDiff: null, days: 0, hours: 0, minutes: 0, seconds: 0, initData: false }; - constructor(props) { super(props); - this.getTime(); - } - - async getTime() { - const data = await fetch('https://nodes.wavesplatform.com/utils/time'); - const { system } = await data.json(); - const myTime = Date.now(); - this.setState({ timeDiff: 1546829001000 - system, myTime }); - } - - updateTime() { - clearTimeout(this.timer); - this.timer = setTimeout(() => this.updateTime(), 200); - - if (this.state.timeDiff == null) { - return null; - } - - const time = this.state.timeDiff - (Date.now() - this.state.myTime); - - if (!time) { - return null; - } - - - if (time < 0) { - this.setState({ showCounter: false }); - clearTimeout(this.timer); - return null; - } - - const days = parseInt(time / TIME_REF.DAY); - const hours = parseInt((time - days * TIME_REF.DAY) / TIME_REF.HOUR); - const minutes = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR) / TIME_REF.MINUTE) || ''; - const seconds = parseInt((time - days * TIME_REF.DAY - hours * TIME_REF.HOUR - minutes * TIME_REF.MINUTE ) / TIME_REF.SECOND) || ''; - - this.setState({ days, hours, minutes, seconds, initData: true }); - } - - componentWillMount() { - this.updateTime(); - } - - componentWillUnmount() { - clearTimeout(this.timer); } render() { const { classes } = this.props; - const { showCounter, days, hours, minutes, seconds, initData } = this.state; return (
- {showCounter ? null : + - } - {!showCounter || !initData ? null : - - - - -
- - - - -
- - } +
From d777852bb817a62a21467f5552a69e9058015b03 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Fri, 18 Jan 2019 12:55:31 +0300 Subject: [PATCH 32/35] WEB-286: remove vacancies --- src/common/components/Vacancies/index.jsx | 35 --- .../Vacancies/lib/Vacancy/img/arrow.svg | 3 - .../Vacancies/lib/Vacancy/index.jsx | 68 ------ .../Vacancies/lib/Vacancy/styles.js | 117 ---------- .../containers/Company/lib/Vacancies/View.jsx | 23 +- .../containers/Company/lib/Vacancies/index.js | 4 +- src/common/containers/Vacancies/index.jsx | 8 - .../containers/Vacancies/vacancies.json | 200 ------------------ src/public/actions/index.js | 6 + 9 files changed, 20 insertions(+), 444 deletions(-) delete mode 100644 src/common/components/Vacancies/index.jsx delete mode 100644 src/common/components/Vacancies/lib/Vacancy/img/arrow.svg delete mode 100644 src/common/components/Vacancies/lib/Vacancy/index.jsx delete mode 100644 src/common/components/Vacancies/lib/Vacancy/styles.js delete mode 100644 src/common/containers/Vacancies/index.jsx delete mode 100644 src/common/containers/Vacancies/vacancies.json diff --git a/src/common/components/Vacancies/index.jsx b/src/common/components/Vacancies/index.jsx deleted file mode 100644 index 79a0a445..00000000 --- a/src/common/components/Vacancies/index.jsx +++ /dev/null @@ -1,35 +0,0 @@ -import React, { Component } from 'react'; - -import Vacancy from './lib/Vacancy'; -import Margin from 'src/common/components/Margin'; - -class Vacancies extends Component { - state = { - expandedIndex: null, - }; - - handleToggle = index => { - this.setState(oldState => ({ - expandedIndex: index === oldState.expandedIndex ? null : index, - })); - }; - - render() { - const { vacancies } = this.props; - return ( - - {vacancies.map((v, i) => ( - - this.handleToggle(i)} - {...v} - /> - - ))} - - ); - } -} - -export default Vacancies; diff --git a/src/common/components/Vacancies/lib/Vacancy/img/arrow.svg b/src/common/components/Vacancies/lib/Vacancy/img/arrow.svg deleted file mode 100644 index a44fb8db..00000000 --- a/src/common/components/Vacancies/lib/Vacancy/img/arrow.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/src/common/components/Vacancies/lib/Vacancy/index.jsx b/src/common/components/Vacancies/lib/Vacancy/index.jsx deleted file mode 100644 index ab39f3ca..00000000 --- a/src/common/components/Vacancies/lib/Vacancy/index.jsx +++ /dev/null @@ -1,68 +0,0 @@ -import React from 'react'; - -import Panel from 'src/common/components/Panel'; -import Typography from 'src/common/components/Typography'; -import List from 'src/common/components/List'; -import Divider from 'src/common/components/Divider'; -import Margin from 'src/common/components/Margin'; -import Button from 'src/common/components/Button'; -import Icon from 'src/common/components/Icon'; - -import injectSheet from 'react-jss'; -import styles from './styles'; -import cn from 'classnames'; - -import { FormattedMessage } from 'react-intl'; - -const Vacancy = ({ - title, - location, - blocks, - classes, - onSubmitResumeClick, - expanded, - onToggle, -}) => ( - -
-
-
- - - {title} - - - - {location} - -
-
- -
- - - {blocks.map((block, index) => ( -
- - - {block.title} - - - - -
- ))} - - - - -
- -); - -export default injectSheet(styles)(Vacancy); diff --git a/src/common/components/Vacancies/lib/Vacancy/styles.js b/src/common/components/Vacancies/lib/Vacancy/styles.js deleted file mode 100644 index 5d03ae48..00000000 --- a/src/common/components/Vacancies/lib/Vacancy/styles.js +++ /dev/null @@ -1,117 +0,0 @@ -import arrow from './img/arrow.svg'; - -export default theme => ({ - clickable: { - margin: [-theme.spacing.unit * 3, -theme.spacing.unit * 2.5, 0], - cursor: 'pointer', - }, - titleWrapper: { - padding: [ - theme.spacing.unit * 3, - theme.spacing.unit * 6, - theme.spacing.unit * 3, - theme.spacing.unit * 2.5, - ], - position: 'relative', - }, - title: { - marginBottom: theme.spacing.unit / 2, - }, - subtitle: { - fontWeight: 500, - marginBottom: theme.spacing.unit, - }, - locationText: { - verticalAlign: '-5%', - marginLeft: '.3em', - color: theme.palette.gray[800], - }, - wrapper: { - position: 'relative', - }, - - collapsed: { - // shadow hover - '&:before': { - content: '""', - display: 'block', - position: 'absolute', - top: 0, - bottom: 0, - left: 0, - right: 0, - boxShadow: '0 3px 20px 1px rgba(39, 47, 89, .08)', - borderRadius: theme.spacing.radius, - opacity: 0, - willChange: 'opacity', - transition: theme.transitions.create('opacity'), - }, - '& $clickable': { - marginBottom: -theme.spacing.unit * 3, - }, - '& $content': { - opacity: 0, - transition: 'none', - height: 0, - overflow: 'hidden', - }, - '& $arrow': { - transform: 'none', - }, - }, - - arrow: { - position: 'absolute', - top: 'calc(50% - 11px)', - width: 22, - height: 22, - borderRadius: '50%', - background: `${ - theme.palette.primary[500] - } url(${arrow}) no-repeat center 9px`, - right: theme.spacing.unit * 2.5, - transition: theme.transitions.create( - 'transform', - theme.transitions.durationMedium - ), - transform: 'rotate(-180deg)', - }, - - content: { - // opacity: 0, - transition: theme.transitions.create( - 'opacity', - theme.transitions.durationMedium - ), - }, - [theme.breakpoints.up('md')]: { - clickable: { - margin: [-theme.spacing.unit * 5, -theme.spacing.unit * 5, 0], - }, - titleWrapper: { - padding: [ - theme.spacing.unit * 5, - theme.spacing.unit * 10, - theme.spacing.unit * 5.5, - theme.spacing.unit * 5, - ], - }, - collapsed: { - '&:hover:before': { - opacity: 1, - }, - '& $clickable': { - marginBottom: -theme.spacing.unit * 5.5, - }, - }, - subtitle: { - marginBottom: theme.spacing.unit * 1.5, - }, - title: { - fontSize: 24, - }, - arrow: { - right: theme.spacing.unit * 5, - }, - }, -}); diff --git a/src/common/containers/Company/lib/Vacancies/View.jsx b/src/common/containers/Company/lib/Vacancies/View.jsx index b1601388..05f8d6c7 100644 --- a/src/common/containers/Company/lib/Vacancies/View.jsx +++ b/src/common/containers/Company/lib/Vacancies/View.jsx @@ -4,22 +4,15 @@ import Typography from 'src/common/components/Typography'; import Margin from 'src/common/components/Margin'; import { Row, Col } from 'src/common/components/Grid'; -import Vacancies from 'src/common/containers/Vacancies'; - import { FormattedMessage } from 'react-intl'; import injectSheet from 'react-jss'; import styles from './styles'; +import Button from "../Whitepaper/View"; -const VacanciesContainer = ({ classes }) => ( +const VacanciesContainer = ({ classes, onVacanciesClick }) => (
- - - - - - @@ -27,10 +20,16 @@ const VacanciesContainer = ({ classes }) => ( -
- + - + +
); diff --git a/src/common/containers/Company/lib/Vacancies/index.js b/src/common/containers/Company/lib/Vacancies/index.js index 7cd93cdb..ed430144 100644 --- a/src/common/containers/Company/lib/Vacancies/index.js +++ b/src/common/containers/Company/lib/Vacancies/index.js @@ -1,10 +1,12 @@ import { connect } from 'react-redux'; -import { submitResumeClick } from 'src/public/actions'; +import { submitResumeClick, vacanciesClick } from 'src/public/actions'; import View from './View'; export default connect(undefined, { + onVacanciesClick: () => + vacanciesClick({ page: 'company', source: 'careers' }), onSubmitResumeClick: () => submitResumeClick({ page: 'company', source: 'careers' }), })(View); diff --git a/src/common/containers/Vacancies/index.jsx b/src/common/containers/Vacancies/index.jsx deleted file mode 100644 index 5f60f47c..00000000 --- a/src/common/containers/Vacancies/index.jsx +++ /dev/null @@ -1,8 +0,0 @@ -import React from 'react'; - -import Vacancies from 'src/common/components/Vacancies'; -import vacancies from './vacancies.json'; - -const VacanciesContainer = () => ; - -export default VacanciesContainer; diff --git a/src/common/containers/Vacancies/vacancies.json b/src/common/containers/Vacancies/vacancies.json deleted file mode 100644 index 146bb50a..00000000 --- a/src/common/containers/Vacancies/vacancies.json +++ /dev/null @@ -1,200 +0,0 @@ -[ - { - "title": "API Integration Specialist", - "location": "Moscow", - "blocks": [ - { - "title": "Responsibilities:", - "elements": [ - "Consult with our partners and third-party developers, contribute to the development of applications, and work with API", - "Develop client libraries for our API and examples of their use and useful services", - "Write technical documentation and instructions" - ] - }, - { - "title": "Requirements:", - "elements": [ - "Basic programming skills in one or more languages (Java / Scala / C# / Python / JavaScript / Go / PHP)", - "The desire to learn about new platforms, languages, and libraries", - "Good written English", - "Basic knowledge of Unix (preferred)" - ] - } - ] - }, - { - "title": "Analyst", - "location": "Moscow", - "blocks": [ - { - "title": "Responsibilities:", - "elements": [ - "Constant monitoring and analysis of the market and trends", - "Monitoring of information space", - "Search for investment opportunities (assets already on markets)", - "Analysis of projects having ICOs (including those in the Pre-Sale stages)", - "Participation in writing fund analytical reports" - ] - }, - { - "title": "Requirements:", - "elements": [ - "First-hand experience working in cryptocurrency markets", - "First-hand experience investing in projects having an ICO", - "The ability to analyze large amounts of information, draw conclusions, and offer solutions" - ] - } - ] - }, - { - "title": "Android Developer", - "location": "Moscow", - "blocks": [ - { - "title": "Responsibilities:", - "elements": [ - "Breaking down tasks", - "Project scope planning", - "Interacting with analysts, designers, programmers, and testers", - "Writing quality code" - ] - }, - { - "title": "Requirements:", - "elements": [ - "Experience developing on Android (2+ years, API level 15+)", - "Deep understanding of Java (3+ years)", - "Knowledge of the development specifics of Android (version 4 and higher)", - "Knowledge and understanding of Android MVP, OOP, and design patterns", - "Ability to create interfaces and interface animations", - "Protocol and format knowledge of HTTP, HTTPS, JSON, REST", - "Experience working with push notifications", - "Experience working with Git", - "Ability to understand others’ code" - ] - }, - { - "title": "Preferred:", - "elements": [ - "Knowledge of Android Studio and Gradle", - "Experience working with NoSQL databases (Realm)", - "Experience with non-mobile programming", - "Projects already on Google Play" - ] - } - ] - }, - { - "title": "iOS developer", - "location": "Moscow", - "blocks": [ - { - "title": "Responsibilities:", - "elements": [ - "Developing and supporting iOS apps and participating in the company’s projects", - "Designing new versions of apps and ensuring that external devices, smartphones, third-party apps, and web services synchronize harmoniously with them", - "Working on the system core, interacting with portable devices (Bluetooth LE)", - "Forming the functional and technical requirements of apps", - "Analyzing and searching for new solutions in order to optimize the app’s consumption of mobile devices’ resources", - "Developing project documentation (Wiki)" - ] - }, - { - "title": "Requirements:", - "elements": [ - "4+ years experience working with iOS 9, 10, 11 (completed projects on the App Store with over 100,000 users)", - "Experience working on a team (GIT/ SVN + Redmine / Jira)", - "Strong knowledge of development technologies (Objective C, XCode, iOS SDK, Cocoa Touch)", - "Experience working with databases (SQLite)", - "Understanding of the principles of OOP, MVC; knowledge of design patterns and the principles of client-server apps (REST, caching, query queues)", - "Experience working with JSON, UIKit, Core Graphis, Core Data, Auto Layout, Quartz Core (layers), Core Animation, GCD (blocks and lines), NSOperation, NSURLSession, AFNetworking, MagicalRecord, RestKit" - ] - }, - { - "title": "Preferred::", - "elements": [ - "Experience working with multithreading", - "Knowledge of English for technical documentation", - "Experience working with Crashlytics, Reactive Cocoa, push notifications", - "Experience developing on other platforms (web, desktop)", - "Experience localizing iOS apps", - "Experience working with Bluetooth / BLE", - "Experience writing unit tests" - ] - } - ] - }, - { - "title": "Blockchain Evangelist", - "location": "Moscow", - "blocks": [ - { - "title": "Responsibilities:", - "elements": [ - "Participating in making presentations, reports, holding negotiations, consulting clients and partners", - "Promoting the Waves Platform ideology and brand", - "Closing deals with independent clients", - "Planning your responsibilities and work schedule", - "Accounting for and analyzing your own work" - ] - }, - { - "title": "Requirements:", - "elements": [ - "More than 3 years’ work experience with similar tasks", - "A good tech background, experience working with tech projects (in the fields of fintech and blockchain)", - "Fluent English", - "Perfect Russian, experience with public speaking at large events; good communication skills", - "Experience organizing events and meetups from scratch", - "Experience holding negotiations", - "Regular business trips" - ] - }, - { - "title": "Preferred:", - "elements": [ - "High mobility and self-organization", - "Real cases of attracting partners and clients", - "Ability to find the right people and a common language with them", - "Ability to think outside the box", - "Ability to persuade others" - ] - } - ] - }, - { - "title": "UX/UI designer", - "location": "Moscow", - "blocks": [ - { - "title": "Responsibilities:", - "elements": [ - "Closely collaborate with colleagues across the product team to design and deliver industry-leading digital experiences across a wide range of platforms; including mobile, desktop, web, and others as projects require", - "Clearly articulate your design and bring it to life for the developers via user journeys, user flows, wireframes, mock-ups, prototypes, presentations and comprehensively-annotated design specifications", - "Effectively balance complex project plans with multiple work streams and dependencies as well as user experience quality and implementation challenges/considerations", - "Incorporate UX research tools, data, personas, competitive analysis and metrics to help shape user experiences", - "Revise and iterate designs and documentation based on continued user testing and feedback", - "Contribute to testing criteria for usability studies, A/B & MV Testing of products and platforms as part of the design process", - "Guide, maintain and communicate UX/UI consistency of experience across all platforms", - "Spur new ideas in the development team through expert-level knowledge of competitive and complimentary mobile and multi-platform products" - ] - }, - { - "title": "Requirements:", - "elements": [ - "Strong working knowledge of relevant design software, in particular Sketch", - "Experience designing applications over a wide range of screen sizes", - "A strong knowledge of modern design standards and conventions. Up to date with latest design trends", - "An in-depth understanding of user experience and user-centered design principles", - "Understanding of user psychology, and intuition for how users interact with interactive systems", - "A strong aesthetic instinct, with honed visual design skills", - "Ability to effectively communicate design concepts and development, both internally and to clients", - "An understanding of how to effectively work with a development team, including provision of design assets for implementation", - "Highly motivated and self-disciplined, with the ability to work both independently as well as part of a team", - "Strong problem solving skills", - "Excellent oral and written communication skills" - ] - } - ] - } -] \ No newline at end of file diff --git a/src/public/actions/index.js b/src/public/actions/index.js index 7e7d771f..f4b05340 100644 --- a/src/public/actions/index.js +++ b/src/public/actions/index.js @@ -37,6 +37,9 @@ export const COOKIES_CONSENT_ALLOW = 'CookieConsent.Allow.Click'; export const COOKIES_CONSENT_DISABLE = 'CookieConsent.Disable.Click'; export const COOKIES_CONSENT_RESET = 'CookieConsent.Reset.Click'; +//vacancies +export const VACANCIES_CLICK = 'vacanciesClick'; + // export const GIVE_FEEDBACK_CLICK = 'GiveFeedbackClick'; // export const GIVE_FEEDBACK_CLOSE = 'GiveFeedbackClose'; // export const GIVE_FEEDBACK_SHOW = 'GiveFeedbackShow'; @@ -84,6 +87,9 @@ export const feedbackFormSubmit = createAC(FEEDBACK_FORM_SUBMIT); export const joinTelegramClick = createAC(TELEGRAM_POPUP_JOIN_CLICK); export const closeTelegramClick = createAC(TELEGRAM_POPUP_CLOSE); +// vacancies +export const vacanciesClick = createAC(VACANCIES_CLICK); + // export const giveFeedbackShow = createAC(GIVE_FEEDBACK_SHOW); // export const giveFeedbackClick = createAC(GIVE_FEEDBACK_CLICK); // export const giveFeedbackClose = createAC(GIVE_FEEDBACK_CLOSE); From e0bc8c05df65a88c21680be33207d83228080ff7 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Fri, 18 Jan 2019 13:11:29 +0300 Subject: [PATCH 33/35] WEB-286: fix import --- src/common/containers/Company/lib/Vacancies/View.jsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/containers/Company/lib/Vacancies/View.jsx b/src/common/containers/Company/lib/Vacancies/View.jsx index 05f8d6c7..52cda4dd 100644 --- a/src/common/containers/Company/lib/Vacancies/View.jsx +++ b/src/common/containers/Company/lib/Vacancies/View.jsx @@ -7,7 +7,7 @@ import { Row, Col } from 'src/common/components/Grid'; import { FormattedMessage } from 'react-intl'; import injectSheet from 'react-jss'; import styles from './styles'; -import Button from "../Whitepaper/View"; +import Button from 'src/common/components/Button'; const VacanciesContainer = ({ classes, onVacanciesClick }) => ( From 0ad30a613ebdb39469c802f8590c394c9a6dc4c3 Mon Sep 17 00:00:00 2001 From: vba2000 Date: Fri, 18 Jan 2019 14:33:23 +0300 Subject: [PATCH 34/35] WEB-286: fix styles --- src/common/containers/Company/index.jsx | 114 +++++++++--------- .../containers/Company/lib/Vacancies/View.jsx | 39 +++--- 2 files changed, 75 insertions(+), 78 deletions(-) diff --git a/src/common/containers/Company/index.jsx b/src/common/containers/Company/index.jsx index e3efa19f..4d6bb53b 100644 --- a/src/common/containers/Company/index.jsx +++ b/src/common/containers/Company/index.jsx @@ -24,72 +24,74 @@ import Branding from './lib/Branding'; import injectSheet from 'react-jss'; import styles from './styles'; -import { FormattedMessage } from 'react-intl'; +import {FormattedMessage} from 'react-intl'; // url -import { fileUrl } from 'src/common/utils/url'; +import {fileUrl} from 'src/common/utils/url'; -const PageLayout = ({ classes }) => ( - - - } /> - +const PageLayout = ({classes}) => ( + + + }/> + - {/* */} -
- - - -
+ {/* */} +
+ + + +
+ +
+ + + +
-
- - - -
+
+ + + +
+ {/*
*/} -
- - - -
- {/*
*/} +
+ + + +
-
- - - -
+
+ + + +
-
- - - -
+ +
+ + + + + +
+
- -
- - + + +
+ +
+
-
-
- - - -
- -
-
-
-
+
); const App = injectSheet(styles)(PageLayout); diff --git a/src/common/containers/Company/lib/Vacancies/View.jsx b/src/common/containers/Company/lib/Vacancies/View.jsx index 52cda4dd..9e66ff7f 100644 --- a/src/common/containers/Company/lib/Vacancies/View.jsx +++ b/src/common/containers/Company/lib/Vacancies/View.jsx @@ -2,36 +2,31 @@ import React from 'react'; import Typography from 'src/common/components/Typography'; import Margin from 'src/common/components/Margin'; -import { Row, Col } from 'src/common/components/Grid'; +import {Row, Col} from 'src/common/components/Grid'; -import { FormattedMessage } from 'react-intl'; +import {FormattedMessage} from 'react-intl'; import injectSheet from 'react-jss'; import styles from './styles'; import Button from 'src/common/components/Button'; -const VacanciesContainer = ({ classes, onVacanciesClick }) => ( - - -
- - +const VacanciesContainer = ({classes, onVacanciesClick}) => ( + + - + - - - - -
- -
+ + + + +
); export default injectSheet(styles)(VacanciesContainer); From 6a698286da68393f2b93215bc6282767e2f874dd Mon Sep 17 00:00:00 2001 From: vba2000 Date: Tue, 29 Jan 2019 18:21:32 +0300 Subject: [PATCH 35/35] New android --- src/common/components/ButtonGetApp/index.jsx | 2 +- src/server/locale/en.json | 2 +- src/server/locale/ru.json | 2 +- src/server/locale/zh.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/common/components/ButtonGetApp/index.jsx b/src/common/components/ButtonGetApp/index.jsx index b5279944..fd5e1604 100644 --- a/src/common/components/ButtonGetApp/index.jsx +++ b/src/common/components/ButtonGetApp/index.jsx @@ -32,7 +32,7 @@ const APP_STORE_HREF = { }; const GOOGLE_PLAY_HREF = { store: 'https://play.google.com/store/apps/details?id=com.wavesplatform.wallet', - link: fileUrl('WavesWallet_release_2.0.2.apk'), + link: fileUrl('WavesWallet_release_2.1.0.apk'), }; diff --git a/src/server/locale/en.json b/src/server/locale/en.json index 64b75737..b4747f50 100644 --- a/src/server/locale/en.json +++ b/src/server/locale/en.json @@ -22,7 +22,7 @@ "components.buttonGetApp.title.android": "Get it on
Google Play", "components.buttonGetApp.title.ios": "Get it on
APP STORE", - "components.buttonGetApp.title.androidLink": "Download Android
version 2.0.2", + "components.buttonGetApp.title.androidLink": "Download Android
version 2.1.0", "components.buttonGetApp.title.iosLink": "iOS version is
coming soon", "cookieConsent.text": "According to our {policy}, this website uses 🍪cookies to improve functionality and performance. Some cookies are essential for the operation of the website, you can turn them off only via browser settings. Other cookies can be disabled by this tool.", diff --git a/src/server/locale/ru.json b/src/server/locale/ru.json index e3bc51e7..ab837ceb 100644 --- a/src/server/locale/ru.json +++ b/src/server/locale/ru.json @@ -21,7 +21,7 @@ "company.about.text": "Waves — глобальная блокчейн-платформа, запущенная в 2016 году. Миссия Waves — построить блокчейн-экосистему, позволяющую решать реальные задачи в самых разных сферах. Мы создаем блокчейн-инфраструктуру с удобными инструментами для пользователей нашей платформы, разработчиков и бизнесов.", "components.buttonGetApp.title.android": "Скачать в Google Play", "components.buttonGetApp.title.ios": "Скачать в APP STORE", - "components.buttonGetApp.title.androidLink": "Скачать Android
версию 2.0.2", + "components.buttonGetApp.title.androidLink": "Скачать Android
версию 2.1.0", "components.buttonGetApp.title.iosLink": "iOS версия
ожидается", "home.joinUs.text2": "Присоединиться к сообществу Waves", "cta.brandingPackage": "Брендбук", diff --git a/src/server/locale/zh.json b/src/server/locale/zh.json index 769a9dc7..d85e0980 100644 --- a/src/server/locale/zh.json +++ b/src/server/locale/zh.json @@ -22,7 +22,7 @@ "components.buttonGetApp.title.android":"在Google Play上下载", "components.buttonGetApp.title.ios":"在APP STORE上下载", - "components.buttonGetApp.title.androidLink":"下载Android版本2.0.2", + "components.buttonGetApp.title.androidLink":"下载Android版本2.1.0", "components.buttonGetApp.title.iosLink":"iOS版即将推出", "cta.brandingPackage": "品牌套餐",