diff --git a/test/api/v3/integration/chat/POST-chat.test.js b/test/api/v3/integration/chat/POST-chat.test.js index 6f8355aa55..9255772ad2 100644 --- a/test/api/v3/integration/chat/POST-chat.test.js +++ b/test/api/v3/integration/chat/POST-chat.test.js @@ -1,5 +1,6 @@ import { createAndPopulateGroup, + generateUser, translate as t, sleep, server, @@ -363,6 +364,24 @@ describe('POST /chat', () => { expect(message.message.id).to.exist; }); + it('adds backer info to chat', async () => { + const backerInfo = { + npc: 'Town Crier', + tier: 800, + tokensApplied: true, + }; + const backer = await generateUser({ + backer: backerInfo, + }); + + const message = await backer.post(`/groups/${groupWithChat._id}/chat`, { message: testMessage}); + const messageBackerInfo = message.message.backer; + + expect(messageBackerInfo.npc).to.equal(backerInfo.npc); + expect(messageBackerInfo.tier).to.equal(backerInfo.tier); + expect(messageBackerInfo.tokensApplied).to.equal(backerInfo.tokensApplied); + }); + it('sends group chat received webhooks', async () => { let userUuid = generateUUID(); let memberUuid = generateUUID(); diff --git a/website/client/assets/scss/tiers.scss b/website/client/assets/scss/tiers.scss new file mode 100644 index 0000000000..52028395bd --- /dev/null +++ b/website/client/assets/scss/tiers.scss @@ -0,0 +1,41 @@ +.tier1 { + color: #c42870; +} + +.tier2 { + color: #b01515; +} + +.tier3 { + color: #d70e14; +} + +.tier4 { + color: #c24d00; +} + +.tier5 { + color: #9e650f; +} + +.tier6 { + color: #2b8363; +} + +.tier7 { + color: #167e87; +} + +.tier8 { + color: #277eab; +} + +.tier9 { + color: #6133b4; +} + +.tierNPC, .npc { + color: #77f4c7; + fill: #77f4c7; + stroke: #005737; +} diff --git a/website/client/components/chat/chatMessages.vue b/website/client/components/chat/chatMessages.vue index b12c47c417..7ab89ce50a 100644 --- a/website/client/components/chat/chatMessages.vue +++ b/website/client/components/chat/chatMessages.vue @@ -29,7 +29,7 @@ v-b-tooltip.hover.top="('contributor' in msg) ? msg.contributor.text : ''", ) | {{msg.user}} - .svg-icon(v-html="icons[`tier${msg.contributor.level}`]", v-if='msg.contributor && msg.contributor.level') + .svg-icon(v-html="getTierIcon(msg)", v-if='showShowTierStyle(msg)') p.time {{msg.timestamp | timeAgo}} .text(v-markdown='msg.text') hr @@ -67,7 +67,7 @@ v-b-tooltip.hover.top="('contributor' in msg) ? msg.contributor.text : ''", ) | {{msg.user}} - .svg-icon(v-html="icons[`tier${msg.contributor.level}`]", v-if='msg.contributor && msg.contributor.level') + .svg-icon(v-html="getTierIcon(msg)", v-if='showShowTierStyle(msg)') p.time {{msg.timestamp | timeAgo}} .text(v-markdown='msg.text') hr @@ -103,50 +103,7 @@