From 0c4f57e57d6988cc5b08340135d5900c6ebb41f0 Mon Sep 17 00:00:00 2001 From: Vincent Date: Wed, 11 Dec 2019 15:51:14 +1100 Subject: [PATCH] Added session button types and session button colors --- fonts/Wasa-Bold.otf | Bin 0 -> 64560 bytes js/models/conversations.js | 10 +- js/session_ui_manager.js | 0 stylesheets/_session.scss | 174 +++++++++++++----- stylesheets/_session_theme_dark.scss | 39 ++-- .../conversation/ConversationHeader.tsx | 18 +- ts/components/session/SessionButton.tsx | 55 +++++- 7 files changed, 212 insertions(+), 84 deletions(-) create mode 100755 fonts/Wasa-Bold.otf create mode 100644 js/session_ui_manager.js diff --git a/fonts/Wasa-Bold.otf b/fonts/Wasa-Bold.otf new file mode 100755 index 0000000000000000000000000000000000000000..53058507d6fe9110d7ff6e85ccb0982fff70dcf5 GIT binary patch literal 64560 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 W8c2&3IH0a~h`tPX;x@G{!2buFbkp4c literal 0 HcmV?d00001 diff --git a/js/models/conversations.js b/js/models/conversations.js index dae07006c..785867833 100644 --- a/js/models/conversations.js +++ b/js/models/conversations.js @@ -240,7 +240,10 @@ opacity: '0.3', }); - $('.message-selection-overlay').show(); + $('.message-selection-overlay').css({ + display: 'block', + 'z-index': '1', + }); $('.module-conversation-header').css({ opacity: '0.15', 'pointer-events': 'none', @@ -259,7 +262,10 @@ opacity: '1', }); - $('.message-selection-overlay').hide(); + $('.message-selection-overlay').css({ + display: 'none', + 'z-index': '0', + }); $('.module-conversation-header').css({ opacity: '1', 'pointer-events': 'auto', diff --git a/js/session_ui_manager.js b/js/session_ui_manager.js new file mode 100644 index 000000000..e69de29bb diff --git a/stylesheets/_session.scss b/stylesheets/_session.scss index fbd7b9792..d596e10ca 100644 --- a/stylesheets/_session.scss +++ b/stylesheets/_session.scss @@ -22,28 +22,51 @@ font-style: italic; } +@font-face { + font-family: 'Wasa'; + src: url('../fonts/Wasa-Bold.otf') format('truetype'); +} + // Session Colors $session-color-green: #00f782; -$session-color-green-alt-1: #00f17e; -$session-color-green-alt-2: #007e42; +$session-color-green-alt-1: #00f480; +$session-color-green-alt-2: #00fd73; +$session-color-green-alt-3: #00f782; + +$session-shade-1: #0c0c0c; +$session-shade-2: #161616; +$session-shade-3: #191818; +$session-shade-4: #1b1b1b; +$session-shade-5: #222325; +$session-shade-6: #232323; +$session-shade-7: #2e2e2e; +$session-shade-8: #2f2f2f; +$session-shade-9: #313131; +$session-shade-10: #3e3e3e; +$session-shade-11: #3f3f3f; +$session-shade-12: #3f4146; +$session-shade-13: #474646; +$session-shade-14: #535865; +$session-shade-15: #5b6c72; +$session-shade-16: #979797; +$session-shade-17: #d8d8d8; + +$session-opaque-dark-1: rgba(0, 0, 0, 0.25); +$session-opaque-dark-2: rgba(0, 0, 0, 0.37); +$session-opaque-dark-3: rgba(0, 0, 0, 0.5); $session-color-white: #fff; $session-color-black: #000; - -$session-color-dark-1: #1b1b1b; -$session-color-dark-2: #151515; -$session-color-dark-3: #404146; -$session-color-dark-4: #5c5d5f; -$session-color-dark-5: #a5a6a8; - -$session-color-secondary: #474646; $session-color-danger: #ff4538; +$session-color-primary: $session-shade-13; +$session-color-secondary: $session-shade-16; +$session-color-warning: $session-shade-17; -$session-color-white-subtle: rgba($session-color-white, 0.6); - -$session-color-dark-highlight: #212126; +@mixin session-color-subtle($color) { + color: rgba($color, 0.6); +} -$session-font-family: 'SpaceMono'; +$session-font-family: 'Wasa'; $session-transition-duration: 0.25s; $session-icon-size-sm: 15px; @@ -52,27 +75,27 @@ $session-icon-size-lg: 30px; $session-conversation-header-height: 60px; -$session-green-gradient: linear-gradient( +$session-gradient-green: linear-gradient( 270deg, 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-dark-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.37); $session_message-container-border-radius: 5px; +.button-group > div { + margin-left: 5px; + margin-right: 5px; +} + .session-button { - min-width: 165px; - width: auto; - height: 45px; - line-height: 45px; - padding: 0 35px 0 35px; - font-size: 15px; - font-family: $session-font-family; - font-weight: 700; - cursor: pointer; - display: flex; - justify-content: center; - border-radius: 500px; @mixin transparent-background($textAndBorderColor) { background-color: Transparent; background-repeat: no-repeat; @@ -81,27 +104,86 @@ $session_message-container-border-radius: 5px; color: $textAndBorderColor; border: 2px solid $textAndBorderColor; } - &.full-green { - background-color: $session-color-green; + + width: auto; + display: flex; + justify-content: center; + font-weight: 700; + user-select: none; + cursor: pointer; + + &.default, + &.square, + &.brand { color: $session-color-white; + + &.green { + background-color: $session-color-green; + } + &.white { + background-color: $session-color-white; + } + &.primary { + background-color: $session-color-primary; + } + &.secondary { + background-color: $session-color-secondary; + } + &.danger { + background-color: $session-color-danger; + } + &.warning { + background-color: $session-color-warning; + } } - &.green { - @include transparent-background($session-color-green); + + &.brand-outline, + &.default-outline, + &.square-outline { + &.green { + @include transparent-background($session-color-green); + } + &.white { + @include transparent-background($session-color-white); + } + &.primary { + @include transparent-background($session-color-primary); + } + &.secondary { + @include transparent-background($session-color-secondary); + } + &.danger { + @include transparent-background($session-color-danger); + } + &.warning { + @include transparent-background($session-color-warning); + } } - &.white { - @include transparent-background($session-color-white); + + &.brand { + min-width: 165px; + height: 45px; + line-height: 45px; + padding: 0 35px 0 35px; + font-size: 15px; + font-family: $session-font-family; + border-radius: 500px; } - @mixin square-button($background-color) { + &.default, + &.square, + &.default-outline, + &.square-outline { border-radius: 2px; height: 33px; - background-color: $background-color; - } - &.secondary { - @include square-button($session-color-secondary); + padding: 0px 18px; + line-height: 33px; + font-size: 13px; } - &.danger { - @include square-button($session-color-danger); + + &.square, + &.square-outline { + border-radius: 0px; } } @@ -178,6 +260,15 @@ $session_message-container-border-radius: 5px; 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; +} + .conversation-header .session-icon-button { @include standard-icon-button(); } @@ -195,7 +286,8 @@ $session_message-container-border-radius: 5px; .close-button { float: left; - margin-top: 10px; + margin-top: 17px; + margin-left: 7px; } } .message-selection-overlay div[role='button'] { diff --git a/stylesheets/_session_theme_dark.scss b/stylesheets/_session_theme_dark.scss index 07cce2cbb..250dd7537 100644 --- a/stylesheets/_session_theme_dark.scss +++ b/stylesheets/_session_theme_dark.scss @@ -1,36 +1,29 @@ // Messages .dark-theme { .module-conversation-header { - background-color: $session-color-dark-1; + background-color: $session-shade-4; } .discussion-container { - background-color: $session-color-dark-2; + background-image: $session-gradient-black; } .module-conversation-header { border-bottom: none; } - .module-message__author { - color: $session-color-dark-5; - } - - .module-message__metadata__badge { - color: $session-color-dark-4; - } - .module-message__metadata__date--incoming { - color: $session-color-dark-4; - } + .module-message__author, + .module-message__metadata__badge, + .module-message__metadata__date--incoming, .module-message__metadata__date--outgoing { - color: $session-color-dark-5; + @include session-color-subtle($session-color-white); } .module-message__container--incoming { - background-color: $session-color-dark-1; + background-color: $session-shade-11; } .module-message__container--outgoing { - background-color: $session-color-dark-3; + background-color: $session-shade-5; } .module-message__container { @@ -38,29 +31,19 @@ box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.69); } .message-highlighted { - background-color: $session-color-dark-highlight; + background-color: $session-shade-5; border-radius: 0; } .message-selected { .module-message__container { - background-image: $session-green-gradient; - box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.37); + background-image: $session-gradient-green; + box-shadow: $session-dark-shadow; } .module-message__author { color: $session-color-white; } - - .module-message__metadata__badge { - color: $session-color-white; - } - .module-message__metadata__date--incoming { - color: $session-color-white-subtle; - } - .module-message__metadata__date--outgoing { - color: $session-color-white-subtle; - } } } diff --git a/ts/components/conversation/ConversationHeader.tsx b/ts/components/conversation/ConversationHeader.tsx index 9dd08c246..d7d11bed3 100644 --- a/ts/components/conversation/ConversationHeader.tsx +++ b/ts/components/conversation/ConversationHeader.tsx @@ -16,7 +16,11 @@ import { SessionIconType, } from '../session/icon'; -import { SessionButton, SessionButtonTypes } from '../session/SessionButton'; +import { + SessionButton, + SessionButtonColor, + SessionButtonType, +} from '../session/SessionButton'; interface TimerOption { name: string; @@ -298,24 +302,30 @@ export class ConversationHeader extends React.Component { } public renderSelectionOverlay() { + const { onDeleteMessages } = this.props; + return (
diff --git a/ts/components/session/SessionButton.tsx b/ts/components/session/SessionButton.tsx index f0ad1d8ed..587a7d522 100644 --- a/ts/components/session/SessionButton.tsx +++ b/ts/components/session/SessionButton.tsx @@ -3,28 +3,65 @@ import classNames from 'classnames'; //import { LocalizerType } from '../../types/Util'; -export enum SessionButtonTypes { - fullGreen = 'fullGreen', - white = 'white', - green = 'green', - secondary = 'secondary', - danger = 'danger', +export enum SessionButtonType { + Brand = 'brand', + BrandOutline = 'brand-outline', + Default = 'default', + DefaultOutline = 'default-outline', + Square = 'square', + SquareOutline = 'square-outline', + Simple = 'simple', +} + +export enum SessionButtonColor { + Green = 'green', + White = 'white', + Primary = 'primary', + Secondary = 'secondary', + Danger = 'danger', + Warning = 'warning', } interface Props { //i18n: LocalizerType; text: string; - buttonType: SessionButtonTypes; + buttonType: SessionButtonType; + buttonColor: SessionButtonColor; + onClick: any; } export class SessionButton extends React.PureComponent { + public static defaultProps = { + buttonType: SessionButtonType.Default, + buttonColor: SessionButtonColor.Primary, + onClick: () => null, + }; + + constructor(props: any) { + super(props); + this.clickHandler = this.clickHandler.bind(this); + } + public render() { - const { buttonType, text } = this.props; + const { buttonType, buttonColor, text } = this.props; return ( -
+
{ + this.clickHandler(e); + }} + className={classNames('session-button', buttonType, buttonColor)} + role="button" + > {text}
); } + + private clickHandler(e: any) { + if (this.props.onClick) { + e.stopPropagation(); + this.props.onClick(); + } + } }