2018-05-02 02:05:36 +02:00
|
|
|
{#if status}
|
|
|
|
<Status {index} {length} {timelineType} {timelineValue} {focusSelector}
|
|
|
|
{status} {notification} on:recalculateHeight
|
2018-02-04 19:05:01 +01:00
|
|
|
/>
|
2018-05-02 02:05:36 +02:00
|
|
|
{:else}
|
2018-02-04 19:05:01 +01:00
|
|
|
<article class="notification-article"
|
|
|
|
tabindex="0"
|
2018-05-02 02:05:36 +02:00
|
|
|
aria-posinset={index}
|
2018-11-25 10:20:58 +01:00
|
|
|
aria-setsize={length}
|
|
|
|
aria-label={ariaLabel}
|
|
|
|
>
|
2018-05-02 02:05:36 +02:00
|
|
|
<StatusHeader {notification} {notificationId} {status} {statusId} {timelineType}
|
|
|
|
{account} {accountId} {uuid} isStatusInNotification="true" />
|
2018-02-04 19:05:01 +01:00
|
|
|
</article>
|
2018-05-02 02:05:36 +02:00
|
|
|
{/if}
|
2018-02-04 19:05:01 +01:00
|
|
|
<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 20:29:19 +01:00
|
|
|
width: 580px;
|
2018-02-04 19:05:01 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
<script>
|
2018-02-04 19:05:26 +01:00
|
|
|
import Status from './Status.html'
|
|
|
|
import StatusHeader from './StatusHeader.html'
|
2018-03-16 04:04:24 +01:00
|
|
|
import { store } from '../../_store/store'
|
2018-11-25 10:20:58 +01:00
|
|
|
import { getAccountAccessibleName } from '../../_a11y/getAccountAccessibleName'
|
2018-03-16 04:04:24 +01:00
|
|
|
|
2018-02-04 19:05:01 +01:00
|
|
|
export default {
|
|
|
|
components: {
|
|
|
|
Status,
|
|
|
|
StatusHeader
|
2018-03-16 04:04:24 +01:00
|
|
|
},
|
|
|
|
store: () => store,
|
|
|
|
computed: {
|
2018-05-02 02:05:36 +02:00
|
|
|
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 }) => {
|
2018-03-16 04:04:24 +01:00
|
|
|
return `${$currentInstance}/${timelineType}/${timelineValue}/${notificationId}/${statusId || ''}`
|
2018-11-25 10:20:58 +01:00
|
|
|
},
|
|
|
|
ariaLabel: ({ status, account, $omitEmojiInDisplayNames }) => (
|
|
|
|
!status && `${getAccountAccessibleName(account, $omitEmojiInDisplayNames)} followed you, @${account.acct}`
|
|
|
|
)
|
2018-02-04 19:05:01 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
</script>
|