PMs rebuild (#11360)

* feat(messages): big PMs refactor

* add private messages route

* move to page

* WIP - header + begin with the sidebar

* extract userLabel + style sidebar + extract converstation item

* correct conversation item style

* toggle switch style

* add contributor / backer to conversation user-label

* fix shadows

* fix the conversations list (ignoring own sent)

* selected conversation label

* faceAvatar component

* fix message / avatar height

* fix message list / empty messages height

* new message padding/styles/functionality - finished sidebar conversation styling -

* fix loading messages + perfect-scrollbar

* fix load more line

* fix loading label

* open new conversation from outside

* if the user doesn't have avatar-data inside the conversation and does not exist anymore, just load/set the user name

* search bar new icon / style

* block using from conversation context-menu

* fix lint

* fix merge / lint

* fix merge

* first separate page

* fix tooltips + full width private message + card max width + more responsive

* separate conversations methods, to prevent circular deps

* update eslint config

* fix open new private message

* remove unneeded close icon + fix toggle-switch layout

* same content height on empty conversations - remove border / box-shadow

* canLoadMore = false

* remove inbox conditions on chat components

* hide footer / fix empty sidebar

* floating shadow

* remove tooltip on selected conversation user + pm always full-size

* show avatar on empty conversation

* disable face-avatar

* fix faceAvatar + story

* fix loading conversation messages while switching the conversation

* refresh private-messages page when you are already on it

* add countbadge knob to change the example

* fix lint

* fix hide tooltip + align header correctly

* disable perfect scroll

* load messages on refresh event

* fix header label + conversation actions not breaking layout on hover

* add gifting banner to the max height calculation

* correct chunk name

Co-authored-by: negue <negue@users.noreply.github.com>
Co-authored-by: Matteo Pagliazzi <matteopagliazzi@gmail.com>
This commit is contained in:
Sabe Jones
2020-01-12 12:34:40 -06:00
committed by negue
parent da878dfa1a
commit 8b569e2136
38 changed files with 2496 additions and 877 deletions

View File

@@ -1,9 +1,10 @@
import { authWithHeaders } from '../../middlewares/auth';
import apiError from '../../libs/apiError';
import * as inboxLib from '../../libs/inbox';
import {
NotFound,
} from '../../libs/errors';
import { listConversations } from '../../libs/inbox/conversation.methods';
import { clearPMs, deleteMessage, getUserInbox } from '../../libs/inbox';
const api = {};
@@ -40,7 +41,7 @@ api.deleteMessage = {
const { messageId } = req.params;
const { user } = res.locals;
const deleted = await inboxLib.deleteMessage(user, messageId);
const deleted = await deleteMessage(user, messageId);
if (!deleted) throw new NotFound(res.t('messageGroupChatNotFound'));
res.respond(200);
@@ -66,7 +67,7 @@ api.clearMessages = {
async handler (req, res) {
const { user } = res.locals;
await inboxLib.clearPMs(user);
await clearPMs(user);
res.respond(200, {});
},
@@ -101,7 +102,7 @@ api.conversations = {
async handler (req, res) {
const { user } = res.locals;
const result = await inboxLib.listConversations(user);
const result = await listConversations(user);
res.respond(200, result);
},
@@ -128,7 +129,7 @@ api.getInboxMessages = {
const { page } = req.query;
const { conversation } = req.query;
const userInbox = await inboxLib.getUserInbox(user, {
const userInbox = await getUserInbox(user, {
page, conversation, mapProps: true,
});