pinafore/routes/_components/status/Notification.html

52 lines
1.6 KiB
HTML
Raw Normal View History

2018-02-04 18:05:01 +00:00
{{#if notification.type === 'mention' || notification.type === 'reblog' || notification.type === 'favourite'}}
<Status :index :length :timelineType :timelineValue :focusSelector
status={{notification.status}}
2018-02-04 18:05:01 +00:00
:notification
on:recalculateHeight
/>
{{else}}
<article class="notification-article"
tabindex="0"
aria-posinset={{index}} aria-setsize={{length}} >
<StatusHeader :notification :notificationId :status :statusId :timelineType
:account :accountId :uuid isStatusInNotification="true" />
2018-02-04 18:05:01 +00:00
</article>
{{/if}}
<style>
.notification-article {
width: 560px;
max-width: calc(100vw - 40px);
padding: 10px 20px;
border-bottom: 1px solid var(--main-border);
}
@media (max-width: 767px) {
.notification-article {
padding: 10px 10px;
max-width: calc(100vw - 20px);
2018-02-25 19:29:19 +00:00
width: 580px;
2018-02-04 18:05:01 +00:00
}
}
</style>
<script>
2018-02-04 18:05:26 +00:00
import Status from './Status.html'
import StatusHeader from './StatusHeader.html'
import { store } from '../../_store/store'
2018-02-04 18:05:01 +00:00
export default {
components: {
Status,
StatusHeader
},
store: () => store,
computed: {
account: (notification) => notification.account,
accountId: (account) => account.id,
notificationId: (notification) => notification.id,
status: (notification) => notification.status,
statusId: (status) => status && status.id,
uuid: ($currentInstance, timelineType, timelineValue, notificationId, statusId) => {
return `${$currentInstance}/${timelineType}/${timelineValue}/${notificationId}/${statusId || ''}`
2018-04-20 04:38:01 +00:00
}
2018-02-04 18:05:01 +00:00
}
}
</script>