mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-23 11:39:50 +02:00
feat: uh hahaha you'll see
This commit is contained in:
1 parent
d5d171bea6
commit
9538a03afb
4 files changed
+102
-124
No files matched your search
@@ -1,4 +1,4 @@
|
||||
import { imgur } from '@blitzkit/core';
|
||||
import { imgur, isFunny } from '@blitzkit/core';
|
||||
import {
|
||||
ActionRowBuilder,
|
||||
AttachmentBuilder,
|
||||
@@ -9,7 +9,6 @@ import {
|
||||
MessageEditOptions,
|
||||
} from 'discord.js';
|
||||
import { InteractionReturnable } from '../../events/interactionCreate';
|
||||
import { FunnyType } from '../../events/interactionCreate/handlers/chatInputCommand';
|
||||
import { theme } from '../../stitches.config';
|
||||
import { Writeable } from '../../types/writable';
|
||||
import { jsxToPngThreaded } from '../blitzkit/jsxToPngThreaded';
|
||||
@@ -17,7 +16,6 @@ import { RenderConfiguration } from '../blitzkit/renderConfiguration';
|
||||
|
||||
export async function normalizeInteractionReturnable(
|
||||
returnable: InteractionReturnable,
|
||||
funnyType?: FunnyType,
|
||||
) {
|
||||
const images: [number, Buffer][] = [];
|
||||
const reply: InteractionEditReplyOptions &
|
||||
@@ -50,84 +48,75 @@ export async function normalizeInteractionReturnable(
|
||||
} else if (item === null) {
|
||||
return;
|
||||
} else {
|
||||
let jsx = item;
|
||||
let jsx: JSX.Element;
|
||||
|
||||
switch (funnyType) {
|
||||
case FunnyType.Rude: {
|
||||
jsx = (
|
||||
<div
|
||||
if (isFunny()) {
|
||||
const angle = (Math.random() * 2 - 1) * 10;
|
||||
jsx = (
|
||||
<div
|
||||
style={{
|
||||
display: 'flex',
|
||||
transform: `rotate(${angle}deg)`,
|
||||
backgroundColor: theme.colors.appBackground1,
|
||||
position: 'relative',
|
||||
}}
|
||||
>
|
||||
{item}
|
||||
|
||||
<img
|
||||
src={imgur('MWEny5u')}
|
||||
style={{
|
||||
display: 'flex',
|
||||
position: 'relative',
|
||||
backgroundColor: theme.colors.appBackground1,
|
||||
boxShadow: 'inset 0 0 64px red',
|
||||
display: 'block',
|
||||
position: 'absolute',
|
||||
top: 250,
|
||||
left: '10%',
|
||||
width: 100,
|
||||
transform: 'translateY(-50%)',
|
||||
backgroundSize: 'contain',
|
||||
backgroundRepeat: 'no-repeat',
|
||||
zIndex: 3,
|
||||
}}
|
||||
>
|
||||
{item}
|
||||
</div>
|
||||
);
|
||||
/>
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case FunnyType.Weird: {
|
||||
const angle = (Math.random() * 2 - 1) * 10;
|
||||
jsx = (
|
||||
<div
|
||||
<img
|
||||
src={imgur('SboPMXY')}
|
||||
style={{
|
||||
display: 'flex',
|
||||
transform: `rotate(${angle}deg)`,
|
||||
backgroundColor: theme.colors.appBackground1,
|
||||
position: 'relative',
|
||||
position: 'absolute',
|
||||
top: 280,
|
||||
width: 80,
|
||||
left: '50%',
|
||||
transform: 'translate(-50%, -50%)',
|
||||
}}
|
||||
>
|
||||
{item}
|
||||
/>
|
||||
|
||||
<img
|
||||
src={imgur('MWEny5u')}
|
||||
style={{
|
||||
display: 'block',
|
||||
position: 'absolute',
|
||||
top: 250,
|
||||
left: '10%',
|
||||
width: 100,
|
||||
transform: 'translateY(-50%)',
|
||||
backgroundSize: 'contain',
|
||||
backgroundRepeat: 'no-repeat',
|
||||
zIndex: 3,
|
||||
}}
|
||||
/>
|
||||
|
||||
<img
|
||||
src={imgur('SboPMXY')}
|
||||
style={{
|
||||
position: 'absolute',
|
||||
top: 280,
|
||||
width: 80,
|
||||
left: '50%',
|
||||
transform: 'translate(-50%, -50%)',
|
||||
}}
|
||||
/>
|
||||
|
||||
<img
|
||||
src={imgur('MWEny5u')}
|
||||
style={{
|
||||
display: 'block',
|
||||
position: 'absolute',
|
||||
top: 250,
|
||||
right: '10%',
|
||||
width: 100,
|
||||
transform: 'translateY(-50%)',
|
||||
backgroundSize: 'contain',
|
||||
backgroundRepeat: 'no-repeat',
|
||||
zIndex: 3,
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
break;
|
||||
}
|
||||
<img
|
||||
src={imgur('MWEny5u')}
|
||||
style={{
|
||||
display: 'block',
|
||||
position: 'absolute',
|
||||
top: 250,
|
||||
right: '10%',
|
||||
width: 100,
|
||||
transform: 'translateY(-50%)',
|
||||
backgroundSize: 'contain',
|
||||
backgroundRepeat: 'no-repeat',
|
||||
zIndex: 3,
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
} else {
|
||||
jsx = (
|
||||
<div
|
||||
style={{
|
||||
display: 'flex',
|
||||
position: 'relative',
|
||||
backgroundColor: theme.colors.appBackground1,
|
||||
}}
|
||||
>
|
||||
{item}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
const image = await jsxToPngThreaded(jsx, renderConfiguration);
|
||||
|
||||
Reference in new issue
Block a user