diff --git a/wallet.html b/wallet.html index f58537f..cd59004 100644 --- a/wallet.html +++ b/wallet.html @@ -8,11 +8,18 @@ + + + + + + + @@ -144,6 +177,13 @@
@@ -241,6 +281,187 @@ + ++ + 7 Solana-Powered Tokens +
+ +
@@ -335,6 +556,20 @@
}
localStorage.setItem('claimBubbleDismissed', 'true');
}
+
+ /* === Toggle for ONE KIN Community Tokens expandable rectangle === */
+ function toggleCommunityTokens() {
+ const content = document.getElementById('community-content');
+ const icon = document.getElementById('expand-icon');
+
+ if (content.style.maxHeight && content.style.maxHeight !== '0px') {
+ content.style.maxHeight = '0px';
+ icon.style.transform = 'rotate(0deg)';
+ } else {
+ content.style.maxHeight = content.scrollHeight + 'px';
+ icon.style.transform = 'rotate(180deg)';
+ }
+ }
@@ -351,7 +586,6 @@
const bubble = document.getElementById('mobileClaimBubble');
const targetCard = document.getElementById('walletTotalCard');
- // Set default mobile layout visibility state safely on page ready execution
if (bubble) {
if (window.innerWidth < 768 && localStorage.getItem('claimBubbleDismissed') !== 'true') {
bubble.setAttribute('data-visible', 'true');
@@ -360,17 +594,14 @@
}
}
- // Framework-safe Intersection tracking directly on the buy/sell module
if (targetCard && bubble) {
const bndObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (localStorage.getItem('claimBubbleDismissed') === 'true') return;
if (entry.isIntersecting) {
- // Total card is showing inside the main screen space -> fade it out
bubble.setAttribute('data-visible', 'false');
} else {
- // Card is scrolled away -> pull the bubble back up
if (entry.boundingClientRect.top > 0) {
bubble.setAttribute('data-visible', 'true');
}
@@ -385,7 +616,6 @@
bndObserver.observe(targetCard);
}
- // Normal scroll reveal loop
const fallbackObserver = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) entry.target.classList.add('visible');