Updated Discord iFrame

This commit is contained in:
2025-01-07 08:06:28 -05:00
parent 36fa626f4c
commit 99313b9427
2 changed files with 68 additions and 107 deletions

View File

@@ -4,26 +4,26 @@ import '../styles/DiscordInt.css'
function DiscordInt() { function DiscordInt() {
const [openLinks, setOpenLinks] = useState(false); const [isMinimized, setIsMinimized] = useState(false);
const toggleDiscordInt = () => { const toggleMinimize = () => {
setOpenLinks(!openLinks); setIsMinimized(!isMinimized);
}; };
return ( return (
<div className='discordint'> <div className={`discord-container ${isMinimized ? 'minimized' : ''}`}>
<div className='discord-opened' id={openLinks ? "open" : "close"}> <div className="discord-iframe">
<div className='hiddenLinks'> <iframe
<div className='discordiframe'><iframe src="https://discord.com/widget?id=573633846587817992&theme=dark" allowtransparency="true" frameborder="0" sandbox="allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts"></iframe></div> src="https://discord.com/widget?id=573633846587817992&theme=dark"
frameborder="0"
title="Discord Widget"
></iframe>
</div> </div>
</div> <button className="discord-toggle" onClick={toggleMinimize}>
<div className='discord-minimized'> <span>{isMinimized ? '▲' : '▼'}</span>
<div className='discordiframe'><iframe src="https://discord.com/widget?id=573633846587817992&theme=dark" width="350" height="500" allowtransparency="true" frameborder="0" sandbox="allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts"></iframe></div>
<button onClick={toggleDiscordInt}>
<ReorderIcon />
</button> </button>
</div > </div >
</div> );
) };
}
export default DiscordInt export default DiscordInt

View File

@@ -1,8 +1,22 @@
.discordint iframe { .discord-container {
position: fixed; position: fixed;
bottom: 10px;
right: 10px;
z-index: 1001;
display: flex; display: flex;
bottom: 20px; flex-direction: column;
right: 20px; align-items: flex-end;
}
iframe {
height: 350px;
width: 400px;
overflow: hidden;
border-radius: 10%;
border: none;
}
.discord-iframe {
height: 350px; height: 350px;
width: 400px; width: 400px;
background-color: black; background-color: black;
@@ -10,92 +24,39 @@
padding: 5px; padding: 5px;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2); box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
border-radius: 10%; border-radius: 10%;
z-index: 1001; transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;
} }
.discordint .discord-minimized button { .discord-container.minimized .discord-iframe {
display: none; transform: translateY(100%);
background-color: transparent; opacity: 0;
pointer-events: none;
}
.discord-toggle {
background-color: #262731;
border: none; border: none;
color: white; color: #7289DA;
/* Discord Blurple */
padding: 8px 12px;
text-align: center;
text-decoration: none;
display: inline-flex;
align-items: center;
justify-content: center;
font-size: 1.2rem;
border-radius: 50%;
cursor: pointer; cursor: pointer;
transition: transform 0.3s ease-in-out;
} }
.discordint .discord-minimized svg { .discord-container.minimized .discord-toggle {
font-size: 40px; transform: rotate(360deg);
} /* Rotate for minimized state */
.discordint #open {
padding-left: 0px;
}
.discordint #open .hiddenLinks {
display: inherit;
margin-left: 30px;
}
.discordint #close .hiddenLinks {
display: none;
}
.discordint #open a {
width: 70px;
margin: 5px;
}
@media only screen and (max-width: 765px) {
.discordint .discord-minimized a {
display: none;
}
.discordint .discord-opened {
display: none;
}
.discordint iframe {
display: none;
}
.discordint .discord-minimized button {
display: none;
}
}
@media only screen and (max-width: 500px) {
.discordint .discord-minimized a {
display: none;
}
.discord .discord-opened a {
padding-left: 50px;
}
.discordint iframe {
display: none;
}
.discordint .discord-minimized button {
display: none;
}
} }
@media only screen and (max-width: 1030px) { @media only screen and (max-width: 1030px) {
.discordint iframe { .discord-container {
display: none;
}
.discordint .discord-minimized button {
display: none
}
}
@media only screen and (max-width: 920px),(max-height: 630px) {
.discordint iframe {
display: none;
}
.discordint .discord-minimized button {
display: none; display: none;
} }
} }