mirror of
https://github.com/NohamR/lanyard-profile-readme.git
synced 2026-05-26 12:45:08 +00:00
animated + static status emoji support
This commit is contained in:
@@ -1,13 +1,13 @@
|
|||||||
|
//probably the messiest code i've ever written but it works so :)
|
||||||
|
|
||||||
import * as LanyardTypes from './LanyardTypes';
|
import * as LanyardTypes from './LanyardTypes';
|
||||||
import { useState } from "react";
|
|
||||||
import { getFlags } from "./getFlags";
|
import { getFlags } from "./getFlags";
|
||||||
import encodeBase64 from './toBase64';
|
import encodeBase64 from './toBase64';
|
||||||
import { encode } from 'querystring';
|
|
||||||
import { Badges } from '../public/assets/badges/BadgesEncoded'
|
import { Badges } from '../public/assets/badges/BadgesEncoded'
|
||||||
|
|
||||||
const imageToBase64 = require('image-to-base64');
|
|
||||||
|
|
||||||
type Parameters = {
|
type Parameters = {
|
||||||
|
theme?: string;
|
||||||
|
bg?: string;
|
||||||
animated?: string;
|
animated?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -16,8 +16,13 @@ const renderCard = async (body: LanyardTypes.Root, params: Parameters): Promise<
|
|||||||
let avatarBorderColor: string = "#747F8D";
|
let avatarBorderColor: string = "#747F8D";
|
||||||
let userStatus: string = "";
|
let userStatus: string = "";
|
||||||
let avatarExtension: string = "webp";
|
let avatarExtension: string = "webp";
|
||||||
|
let statusExtension: string = "webp";
|
||||||
let activity: any = false;
|
let activity: any = false;
|
||||||
|
|
||||||
|
if(body.data.activities[0]){
|
||||||
|
if(body.data.activities[0].emoji && body.data.activities[0].emoji.animated === true) statusExtension = "gif";
|
||||||
|
}
|
||||||
|
|
||||||
if(body.data.activities.length > 0) {
|
if(body.data.activities.length > 0) {
|
||||||
if(body.data.activities[Object.keys(body.data.activities).length - 1].type === 0) activity = body.data.activities[Object.keys(body.data.activities).length - 1];
|
if(body.data.activities[Object.keys(body.data.activities).length - 1].type === 0) activity = body.data.activities[Object.keys(body.data.activities).length - 1];
|
||||||
}
|
}
|
||||||
@@ -130,17 +135,27 @@ const renderCard = async (body: LanyardTypes.Root, params: Parameters): Promise<
|
|||||||
}
|
}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h1 style="
|
${userStatus.length > 0 ? `
|
||||||
font-size: 0.9rem;
|
<h1 style="
|
||||||
margin-top: 15px;
|
font-size: 0.9rem;
|
||||||
color: #888;
|
margin-top: 16px;
|
||||||
font-weight: lighter;
|
color: #888;
|
||||||
display: ${userStatus.length > 0 ? "inherit" : "none"}
|
font-weight: lighter;
|
||||||
">
|
">
|
||||||
${userStatus}
|
${body.data.activities[0].emoji ?
|
||||||
</h1>
|
`<img src="data:image/png;base64,${await encodeBase64(`https://cdn.discordapp.com/emojis/${body.data.activities[0].emoji.id}.${statusExtension}`)}" style="
|
||||||
|
width: 15px;
|
||||||
|
height: 15px;
|
||||||
|
position: relative;
|
||||||
|
top: 10px;
|
||||||
|
transform: translate(0%, -50%);
|
||||||
|
margin: 0 2px 0 0;
|
||||||
|
" />`
|
||||||
|
: ``}
|
||||||
|
${userStatus}
|
||||||
|
</h1>`
|
||||||
|
: ``}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user