From 73ba72d58a1e5e70d6de2b3e725694f65b544294 Mon Sep 17 00:00:00 2001 From: Nolan Lawson Date: Sun, 4 Feb 2018 10:05:01 -0800 Subject: [PATCH] mvp for notifications --- .../notification/Notification.html | 50 ++++++++++++--- .../pseudoVirtualList/PseudoVirtualList.html | 2 +- .../PseudoVirtualListItem.html | 2 +- .../PseudoVirtualListLazyItem.html | 1 + routes/_components/status/Status.html | 41 +++---------- routes/_components/status/StatusHeader.html | 61 +++++++++++++++++++ .../virtualList/VirtualListItem.html | 2 +- .../virtualList/virtualListStore.js | 2 +- 8 files changed, 116 insertions(+), 45 deletions(-) create mode 100644 routes/_components/status/StatusHeader.html diff --git a/routes/_components/notification/Notification.html b/routes/_components/notification/Notification.html index ce5a6855..c9b9409d 100644 --- a/routes/_components/notification/Notification.html +++ b/routes/_components/notification/Notification.html @@ -1,7 +1,43 @@ -
- Notification -
\ No newline at end of file +{{#if notification.type === 'mention' || notification.type === 'reblog' || notification.type === 'favourite'}} + +{{else}} +
+ +
+{{/if}} + + \ No newline at end of file diff --git a/routes/_components/pseudoVirtualList/PseudoVirtualList.html b/routes/_components/pseudoVirtualList/PseudoVirtualList.html index d07ae0e4..79505ec2 100644 --- a/routes/_components/pseudoVirtualList/PseudoVirtualList.html +++ b/routes/_components/pseudoVirtualList/PseudoVirtualList.html @@ -3,7 +3,7 @@ {{/if}} diff --git a/routes/_components/pseudoVirtualList/PseudoVirtualListLazyItem.html b/routes/_components/pseudoVirtualList/PseudoVirtualListLazyItem.html index 2ff50c5b..2aa7d7a2 100644 --- a/routes/_components/pseudoVirtualList/PseudoVirtualListLazyItem.html +++ b/routes/_components/pseudoVirtualList/PseudoVirtualListLazyItem.html @@ -3,6 +3,7 @@ :props :key :index + :length :scrollToThisItem :intersectionObserver :isIntersecting diff --git a/routes/_components/status/Status.html b/routes/_components/status/Status.html index d5233b37..1bede85d 100644 --- a/routes/_components/status/Status.html +++ b/routes/_components/status/Status.html @@ -2,16 +2,8 @@ tabindex="0" aria-posinset="{{index}}" aria-setsize="{{length}}" on:recalculateHeight> - {{#if status.reblog}} -
- - - - - {{status.account.username}} - boosted - -
+ {{#if (notification && (notification.type === 'reblog' || notification.type === 'favourite')) || status.reblog}} + {{/if}}
@@ -80,9 +72,10 @@ width: 560px; max-width: calc(100vw - 40px); padding: 10px 20px; + border-bottom: 1px solid var(--main-border); display: grid; grid-template-areas: - ".............. status-boosted" + ".............. status-header" "status-sidebar status-author" "status-sidebar status-spoiler" "status-sidebar status-spoiler-button" @@ -90,7 +83,6 @@ "status-media status-media" ".............. status-toolbar"; grid-template-columns: 58px 1fr; - border-bottom: 1px solid var(--main-border); } .status-article.status-direct { @@ -200,27 +192,6 @@ margin: 0; } - .status-boosted span { - margin-left: 5px; - } - - :global(.status-boosted span, .status-boosted a, .status-boosted a:visited, .status-boosted a:hover) { - color: var(--deemphasized-text-color); - } - - .status-boosted { - grid-area: status-boosted; - margin: 5px 10px 5px 5px; - display: flex; - align-items: center; - } - - .status-boosted svg { - width: 18px; - height: 18px; - fill: var(--deemphasized-text-color); - } - .status-sensitive-media-container { grid-area: status-media; margin: 10px 0; @@ -315,6 +286,7 @@ import Avatar from './Avatar.html' import Media from './Media.html' import Toolbar from './Toolbar.html' + import StatusHeader from './StatusHeader.html' import { mark, stop } from '../../_utils/marks' import IntlRelativeFormat from 'intl-relativeformat' import { replaceAll } from '../../_utils/strings' @@ -331,7 +303,8 @@ Avatar, Media, Toolbar, - ExternalLink + ExternalLink, + StatusHeader }, store: () => store, computed: { diff --git a/routes/_components/status/StatusHeader.html b/routes/_components/status/StatusHeader.html new file mode 100644 index 00000000..17bc9af8 --- /dev/null +++ b/routes/_components/status/StatusHeader.html @@ -0,0 +1,61 @@ +
+ + + + + + {{getAccount(notification, status).display_name || ('@' + getAccount(notification, status).username)}} + + {{#if notification && notification.type === 'reblog'}} + boosted your status + {{elseif notification && notification.type === 'favourite'}} + favorited your status + {{elseif notification && notification.type === 'follow'}} + followed you + {{elseif status && status.reblog}} + boosted + {{/if}} + +
+ + \ No newline at end of file diff --git a/routes/_components/virtualList/VirtualListItem.html b/routes/_components/virtualList/VirtualListItem.html index ecde2abc..178e0abb 100644 --- a/routes/_components/virtualList/VirtualListItem.html +++ b/routes/_components/virtualList/VirtualListItem.html @@ -5,7 +5,7 @@ <:Component {component} virtualProps="{{props}}" virtualIndex="{{index}}" - virtualLength="{{numItems}}" + virtualLength="{{$length}}" on:recalculateHeight="doRecalculateHeight()"/>