From 2cc7f3ed204ecc335b800a072bb8fcacafdbbf27 Mon Sep 17 00:00:00 2001 From: Audric Ackermann <audric@loki.network> Date: Mon, 16 Dec 2019 10:03:50 +1100 Subject: [PATCH] fix merge issue --- js/views/session_registration_view.js | 1 + stylesheets/_session.scss | 274 ++++++++---------- stylesheets/_session_signin.scss | 6 +- .../conversation/ConversationHeader.tsx | 31 +- ts/components/session/RegistrationTabs.tsx | 41 ++- ts/components/session/SessionButton.tsx | 9 +- 6 files changed, 177 insertions(+), 185 deletions(-) diff --git a/js/views/session_registration_view.js b/js/views/session_registration_view.js index 834f41f02..619248f86 100644 --- a/js/views/session_registration_view.js +++ b/js/views/session_registration_view.js @@ -123,6 +123,7 @@ window.Session.setNewSessionID = sessionID => { const el = document.querySelector('.session-signin-enter-session-id'); const fx = new TextScramble(el); + el.innerHTML = sessionID; fx.setText(sessionID); }; diff --git a/stylesheets/_session.scss b/stylesheets/_session.scss index ac24ab186..dfb00b139 100644 --- a/stylesheets/_session.scss +++ b/stylesheets/_session.scss @@ -1,34 +1,34 @@ @font-face { - font-family: "SpaceMono"; - src: url("../fonts/SpaceMono-Regular.ttf") format("truetype"); + font-family: 'SpaceMono'; + src: url('../fonts/SpaceMono-Regular.ttf') format('truetype'); } @font-face { - font-family: "SpaceMono"; - src: url("../fonts/SpaceMono-Bold.ttf") format("truetype"); + font-family: 'SpaceMono'; + src: url('../fonts/SpaceMono-Bold.ttf') format('truetype'); font-weight: bold; } @font-face { - font-family: "SpaceMono"; - src: url("../fonts/SpaceMono-Italic.ttf") format("truetype"); + font-family: 'SpaceMono'; + src: url('../fonts/SpaceMono-Italic.ttf') format('truetype'); font-style: italic; } @font-face { - font-family: "SpaceMono"; - src: url("../fonts/SpaceMono-BoldItalic.ttf") format("truetype"); + font-family: 'SpaceMono'; + src: url('../fonts/SpaceMono-BoldItalic.ttf') format('truetype'); font-weight: bold; font-style: italic; } @font-face { - font-family: "Wasa"; - src: url("../fonts/Wasa-Bold.otf") format("opentype"); + font-family: 'Wasa'; + src: url('../fonts/Wasa-Bold.otf') format('opentype'); font-weight: bold; } // Session Colors -$session-font-family: "Wasa"; +$session-font-family: 'Wasa'; $session-color-green: #00f782; $session-color-green-alt-1: #00f480; @@ -98,7 +98,11 @@ $session-gradient-green: linear-gradient( rgba($session-color-green-alt-1, 1), rgba($session-color-green-alt-1, 0.6) ); -$session-gradient-black: linear-gradient(90deg, rgba($session-shade-3, 1), rgba($session-shade-4, 0.6)); +$session-gradient-black: linear-gradient( + 90deg, + rgba($session-shade-3, 1), + rgba($session-shade-4, 0.6) +); $session-dark-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.37); @@ -137,6 +141,7 @@ $session_message-container-border-radius: 5px; font-weight: 700; user-select: none; cursor: pointer; + transition: $session-transition-duration; &.default, &.square, @@ -144,7 +149,11 @@ $session_message-container-border-radius: 5px; color: $session-color-white; &.green { + border: 2px solid $session-color-green; background-color: $session-color-green; + &:hover { + @include transparent-background($session-color-green); + } } &.white { background-color: $session-color-white; @@ -168,9 +177,16 @@ $session_message-container-border-radius: 5px; &.square-outline { &.green { @include transparent-background($session-color-green); + + &:hover { + @include transparent-background($session-color-white); + } } &.white { @include transparent-background($session-color-white); + &:hover { + @include transparent-background($session-color-green); + } } &.primary { @include transparent-background($session-color-primary); @@ -190,7 +206,7 @@ $session_message-container-border-radius: 5px; min-width: 165px; height: 45px; line-height: 45px; - padding: 0 35px 0 35px; + padding: 0; font-size: 15px; font-family: $session-font-family; border-radius: 500px; @@ -211,125 +227,121 @@ $session_message-container-border-radius: 5px; &.square-outline { border-radius: 0px; } +} - .hidden { - visibility: hidden; - } - - @mixin set-icon-margin($size) { - margin: $size / 3; +@mixin set-icon-margin($size) { + margin: $size / 3; +} +.session-icon { + &.padded-left { + @include set-icon-margin($session-icon-size-md); } - .session-icon { - &.padded-left { - @include set-icon-margin($session-icon-size-md); - } +} +.session-icon-button { + opacity: 0.4; + cursor: pointer; + display: inline-block; + transition: opacity $session-transition-duration; + &:hover { + opacity: 1; } - .session-icon-button { - opacity: 0.4; - cursor: pointer; - display: inline-block; - transition: opacity $session-transition-duration; - &:hover { - opacity: 1; - } - - &.small.padded { - @include set-icon-margin($session-icon-size-sm); - } - &.medium.padded { - @include set-icon-margin($session-icon-size-md); - } + &.small.padded { + @include set-icon-margin($session-icon-size-sm); + } - &.large.padded { - @include set-icon-margin($session-icon-size-lg); - } + &.medium.padded { + @include set-icon-margin($session-icon-size-md); } - .session-icon { - fill: $session-color-white; + &.large.padded { + @include set-icon-margin($session-icon-size-lg); } +} - /* CONVERSATION AND MESSAGES */ +.session-icon { + fill: $session-color-white; +} - @mixin standard-icon-button() { - color: $session-color-white; - opacity: 0.9; +/* CONVERSATION AND MESSAGES */ - &:hover { - opacity: 1; - } - } +@mixin standard-icon-button() { + color: $session-color-white; + opacity: 0.9; - .module-conversation-header__title-flex, - .module-conversation-header__title { - width: 100%; + &:hover { + opacity: 1; + } +} - .module-contact-name { - width: 100%; - } +.module-conversation-header__title-flex, +.module-conversation-header__title { + width: 100%; - .module-contact-name__profile-number { - text-align: center; - } + .module-contact-name { + width: 100%; } - .module-message__author__profile-name { - font-style: normal; + .module-contact-name__profile-number { + text-align: center; } +} - .module-message__author-avatar { - flex-direction: column; - display: inline-flex; - margin-right: 20px; - padding-top: 5px; - } +.module-message__author__profile-name { + font-style: normal; +} - .module-message__container { - border-radius: $session_message-container-border-radius; +.module-message__author-avatar { + flex-direction: column; + display: inline-flex; + margin-right: 20px; + padding-top: 5px; +} - label { - user-select: none; - } +.odule-message__container { + border-radius: $session_message-container-border-radius; - .module-message__attachment-container, - .module-image--curved-bottom-right, - .module-image--curved-bottom-left { - border-top-left-radius: 0px; - border-top-right-radius: 0px; - border-bottom-left-radius: $session_message-container-border-radius; - border-bottom-right-radius: $session_message-container-border-radius; - } + label { + user-select: none; + } - .conversation-header .session-icon-button { - @include standard-icon-button(); - } + .module-message__attachment-container, + .module-image--curved-bottom-right, + .module-image--curved-bottom-left { + border-top-left-radius: 0px; + border-top-right-radius: 0px; + border-bottom-left-radius: $session_message-container-border-radius; + border-bottom-right-radius: $session_message-container-border-radius; + } - .module-conversation-header, - .message-selection-overlay { - height: $session-conversation-header-height; - } + .conversation-header .session-icon-button { + @include standard-icon-button(); + } - .message-selection-overlay { - position: absolute; - left: 15px; - right: 15px; - display: none; + .module-conversation-header, + .message-selection-overlay { + height: $session-conversation-header-height; + } - .close-button { - float: left; - margin-top: 17px; - margin-left: 7px; - } - } - .message-selection-overlay div[role="button"] { - display: inline-block; + .message-selection-overlay { + position: absolute; + left: 15px; + right: 15px; + display: none; + + .close-button { + float: left; + margin-top: 17px; + margin-left: 7px; } + } + .message-selection-overlay div[role='button'] { + display: inline-block; + } - .message-selection-overlay .button-group { - float: right; - margin-top: 13.5px; - } + .message-selection-overlay .button-group { + float: right; + margin-top: 13.5px; } } @@ -388,55 +400,3 @@ $session_message-container-border-radius: 5px; right: 0px; } } - -.session { - &-button { - width: 100%; - height: 45px; - line-height: 45px; - padding: 0 18px 0 18px; - font-size: 15px; - font-family: $session-font-family; - font-weight: 700; - cursor: pointer; - display: flex; - justify-content: center; - border-radius: 500px; - transition-duration: $session-transition-duration; - - @mixin transparent-background($textAndBorderColor) { - background-color: Transparent; - background-repeat: no-repeat; - overflow: hidden; - outline: none; - color: $textAndBorderColor; - border: 2px solid $textAndBorderColor; - } - - &.full-green { - background-color: $session-color-green; - color: $session-color-white; - border: 2px solid $session-color-green; - - &:hover { - @include transparent-background($session-color-green); - } - } - - &.green { - @include transparent-background($session-color-green); - - &:hover { - @include transparent-background($session-color-white); - } - } - - &.white { - @include transparent-background($session-color-white); - - &:hover { - @include transparent-background($session-color-green); - } - } - } -} diff --git a/stylesheets/_session_signin.scss b/stylesheets/_session_signin.scss index ad07e65aa..e8c7b8ebd 100644 --- a/stylesheets/_session_signin.scss +++ b/stylesheets/_session_signin.scss @@ -223,15 +223,15 @@ } &-signin-enter-session-id { - height: auto; + height: 94px; width: 289px; border-radius: 8px; border: 2px solid $session-color-dark-grey; outline: 0; background: transparent; color: $session-color-white; - font-size: 12px; - line-height: 14px; + font-size: 15px; + line-height: 18px; text-align: center; margin-bottom: 20px; overflow-wrap: break-word; diff --git a/ts/components/conversation/ConversationHeader.tsx b/ts/components/conversation/ConversationHeader.tsx index 07ece6169..921567478 100644 --- a/ts/components/conversation/ConversationHeader.tsx +++ b/ts/components/conversation/ConversationHeader.tsx @@ -430,23 +430,26 @@ export class ConversationHeader extends React.Component<Props> { const showMembersMenuItem = isGroup && ( <MenuItem onClick={onShowGroupMembers}>{i18n('showMembers')}</MenuItem> ); - const showSafetyNumberMenuItem = !isGroup && !isMe && ( - <MenuItem onClick={onShowSafetyNumber}> - {i18n('showSafetyNumber')} - </MenuItem> - ); + const showSafetyNumberMenuItem = !isGroup && + !isMe && ( + <MenuItem onClick={onShowSafetyNumber}> + {i18n('showSafetyNumber')} + </MenuItem> + ); const resetSessionMenuItem = !isGroup && ( <MenuItem onClick={onResetSession}>{i18n('resetSession')}</MenuItem> ); - const blockHandlerMenuItem = !isMe && !isGroup && ( - <MenuItem onClick={blockHandler}>{blockTitle}</MenuItem> - ); - const changeNicknameMenuItem = !isMe && !isGroup && ( - <MenuItem onClick={onChangeNickname}>{i18n('changeNickname')}</MenuItem> - ); - const clearNicknameMenuItem = !isMe && !isGroup && hasNickname && ( - <MenuItem onClick={onClearNickname}>{i18n('clearNickname')}</MenuItem> - ); + const blockHandlerMenuItem = !isMe && + !isGroup && <MenuItem onClick={blockHandler}>{blockTitle}</MenuItem>; + const changeNicknameMenuItem = !isMe && + !isGroup && ( + <MenuItem onClick={onChangeNickname}>{i18n('changeNickname')}</MenuItem> + ); + const clearNicknameMenuItem = !isMe && + !isGroup && + hasNickname && ( + <MenuItem onClick={onClearNickname}>{i18n('clearNickname')}</MenuItem> + ); const archiveConversationMenuItem = isArchived ? ( <MenuItem onClick={onMoveToInbox}> {i18n('moveConversationToInbox')} diff --git a/ts/components/session/RegistrationTabs.tsx b/ts/components/session/RegistrationTabs.tsx index 4858acc16..610c506e4 100644 --- a/ts/components/session/RegistrationTabs.tsx +++ b/ts/components/session/RegistrationTabs.tsx @@ -2,7 +2,11 @@ import React from 'react'; import classNames from 'classnames'; import { SessionInput } from './SessionInput'; -import { SessionButton, SessionButtonType } from './SessionButton'; +import { + SessionButton, + SessionButtonColor, + SessionButtonType, +} from './SessionButton'; import { trigger } from '../../shims/events'; import { SessionHtmlRenderer } from './SessionHTMLRenderer'; @@ -256,7 +260,8 @@ export class RegistrationTabs extends React.Component<{}, State> { onClick={() => { this.onCompleteSignUpClick(); }} - buttonType={SessionButtonType.FullGreen} + buttonType={SessionButtonType.Brand} + buttonColor={SessionButtonColor.Green} text={window.i18n('completeSignUp')} /> </div> @@ -286,13 +291,16 @@ export class RegistrationTabs extends React.Component<{}, State> { private renderSignUpButton() { const { signUpMode } = this.state; - let buttonType: any; + let buttonType: SessionButtonType; + let buttonColor: SessionButtonColor; let buttonText: string; if (signUpMode !== SignUpMode.Default) { - buttonType = SessionButtonType.FullGreen; + buttonType = SessionButtonType.Brand; + buttonColor = SessionButtonColor.Green; buttonText = window.i18n('getStarted'); } else { - buttonType = SessionButtonType.Green; + buttonType = SessionButtonType.BrandOutline; + buttonColor = SessionButtonColor.Green; buttonText = window.i18n('generateSessionID'); } @@ -306,6 +314,7 @@ export class RegistrationTabs extends React.Component<{}, State> { } }} buttonType={buttonType} + buttonColor={buttonColor} text={buttonText} /> ); @@ -462,7 +471,10 @@ export class RegistrationTabs extends React.Component<{}, State> { if (signInMode === SignInMode.Default) { return ( <div> - {this.renderRestoreUsingSeedButton(SessionButtonType.Green)} + {this.renderRestoreUsingSeedButton( + SessionButtonType.BrandOutline, + SessionButtonColor.Green + )} <div className="session-registration__or">{or}</div> {this.renderLinkDeviceToExistingAccountButton()} </div> @@ -474,7 +486,10 @@ export class RegistrationTabs extends React.Component<{}, State> { <div> {this.renderContinueYourSessionButton()} <div className="session-registration__or">{or}</div> - {this.renderRestoreUsingSeedButton(SessionButtonType.White)} + {this.renderRestoreUsingSeedButton( + SessionButtonType.BrandOutline, + SessionButtonColor.Green + )} </div> ); } @@ -512,13 +527,17 @@ export class RegistrationTabs extends React.Component<{}, State> { onClick={() => { this.handleContinueYourSessionClick(); }} - buttonType={SessionButtonType.FullGreen} + buttonType={SessionButtonType.Brand} + buttonColor={SessionButtonColor.Green} text={window.i18n('continueYourSession')} /> ); } - private renderRestoreUsingSeedButton(buttonType: SessionButtonType) { + private renderRestoreUsingSeedButton( + buttonType: SessionButtonType, + buttonColor: SessionButtonColor + ) { return ( <SessionButton onClick={() => { @@ -534,6 +553,7 @@ export class RegistrationTabs extends React.Component<{}, State> { window.Session.emptyContentEditableDivs(); }} buttonType={buttonType} + buttonColor={buttonColor} text={window.i18n('restoreUsingSeed')} /> ); @@ -550,7 +570,8 @@ export class RegistrationTabs extends React.Component<{}, State> { signUpMode: SignUpMode.Default, }); }} - buttonType={SessionButtonType.White} + buttonType={SessionButtonType.BrandOutline} + buttonColor={SessionButtonColor.White} text={window.i18n('linkDeviceToExistingAccount')} /> ); diff --git a/ts/components/session/SessionButton.tsx b/ts/components/session/SessionButton.tsx index 3f420b25a..62b0aebd2 100644 --- a/ts/components/session/SessionButton.tsx +++ b/ts/components/session/SessionButton.tsx @@ -42,9 +42,16 @@ export class SessionButton extends React.PureComponent<Props> { public render() { const { buttonType, buttonColor, text } = this.props; + const buttonTypes = []; + + buttonTypes.push(buttonType); + if (buttonType.includes('-outline')) { + buttonTypes.push(buttonType.replace('-outline', '')); + } + return ( <div - className={classNames('session-button', buttonType, buttonColor)} + className={classNames('session-button', ...buttonTypes, buttonColor)} role="button" onClick={this.clickHandler} >