logo

pleroma-fe

My custom branche(s) on git.pleroma.social/pleroma/pleroma-fe

direct_conversation_view.vue (3377B)


      1 <template>
      2   <div class="direct-conversation-view">
      3     <div class="direct-conversation-view-inner">
      4       <div
      5         id="nav"
      6         ref="inner"
      7         class="panel-default panel direct-conversation-view-body"
      8       >
      9         <div
     10           ref="header"
     11           class="panel-heading direct-conversation-view-heading mobile-hidden"
     12         >
     13           <a
     14             class="go-back-button"
     15             @click="goBack"
     16           >
     17             <i class="button-icon icon-left-open" />
     18           </a>
     19           <div class="title text-center">
     20             <DirectConversationTitle
     21               :users="chatParticipants"
     22               :fallback-user="currentUser"
     23               with-links="true"
     24             />
     25           </div>
     26           <router-link :to="{ name: 'direct-conversation-info', params: { username: currentUser.screen_name, id: conversationId } }">
     27             <DirectConversationAvatar
     28               v-if="chatParticipants.length > 0"
     29               :users="chatParticipants"
     30               width="35px"
     31               height="35px"
     32             />
     33           </router-link>
     34         </div>
     35         <DirectConversationInfoPage
     36           v-if="isInfo"
     37           :chat-participants="chatParticipants"
     38         />
     39         <template v-else>
     40           <div
     41             ref="scrollable"
     42             class="scrollable"
     43             @scroll="handleScroll"
     44           >
     45             <DirectConversationStatus
     46               v-for="statusItem in formattedStatuses"
     47               :key="statusItem.id"
     48               :direct-conversation-view-item="statusItem"
     49               :no-heading="chatParticipants.length <= 1"
     50               :edited="editedStatusId === statusItem.id"
     51               :sequence-hovered="statusItem.sequenceId === hoveredSequenceId"
     52               @toggleActions="onToggleActions"
     53               @hover="onStatusHover"
     54             />
     55           </div>
     56           <div
     57             ref="footer"
     58             class="panel-body footer"
     59           >
     60             <div
     61               class="jump-to-bottom-button"
     62               :class="{ 'visible': !loadingStatuses && jumpToBottomButtonVisible }"
     63               @click="scrollDown({ behavior: 'smooth' })"
     64             >
     65               <i class="icon-down-open">
     66                 <div
     67                   v-if="newMessagesCount"
     68                   class="new-messages-alert-dot"
     69                 >
     70                   {{ newMessagesCount }}
     71                 </div>
     72               </i>
     73             </div>
     74             <PostStatusForm
     75               :disabled="loadingConversation"
     76               :disable-subject="true"
     77               :disable-scope-selector="true"
     78               :custom-notice="formScopeNotice"
     79               :disable-notice="!formScopeNotice"
     80               :copy-message-scope="'direct'"
     81               :direct-conversation-recipients="chatParticipants"
     82               :reply-to-direct-conversation-id="conversationId"
     83               :placeholder="formPlaceholder"
     84               max-height="160"
     85               @resize="handleResize"
     86               @posted="onPosted"
     87               @scopeNoticeDismissed="onScopeNoticeDismissed"
     88               @filesDropped="onFilesDropped"
     89             />
     90           </div>
     91         </template>
     92       </div>
     93     </div>
     94   </div>
     95 </template>
     96 
     97 <script src="./direct_conversation_view.js"></script>
     98 <style lang="scss">
     99 @import '../../_variables.scss';
    100 @import './direct_conversation_view.scss';
    101 </style>