bsc

Comprehensive codebase and cou...
Log | Files | Refs | README | LICENSE

commit d9a0a3ae490d79d85906ff9f1a113961b61bcfe1
parent f29c84f91f36bb399c29e1ed8e9d32ee56be6c1d
Author: Amit Dutta <amitdutta4255@gmail.com>
Date:   Tue,  7 Jul 2026 08:10:45 +0530

fixed: fixed the license link in footer; refrctor: banner is redesigned, now with more room;

Diffstat:
Mdocs/.vitepress/theme/components/Banner.vue | 160+++++++++++++++----------------------------------------------------------------
Mdocs/.vitepress/theme/components/Footer.vue | 2+-
Mdocs/.vitepress/theme/components/SponsorButton.vue | 1+
3 files changed, 32 insertions(+), 131 deletions(-)

diff --git a/docs/.vitepress/theme/components/Banner.vue b/docs/.vitepress/theme/components/Banner.vue @@ -9,13 +9,11 @@ const currentDeployId = import.meta.env.VITE_DEPLOY_ID || 'deploy_v1' onMounted(() => { const lastAcknowledgedId = localStorage.getItem(STORAGE_KEY) - + if (!lastAcknowledgedId) { - // Brand new user: Show the terms isFirstVisit.value = true isVisible.value = true } else if (lastAcknowledgedId !== currentDeployId) { - // Returning user: Show the update notification isFirstVisit.value = false isVisible.value = true } @@ -31,38 +29,18 @@ const acceptTerms = () => { <Transition name="slide-up"> <div v-if="isVisible" class="terms-banner-wrapper" role="alert"> <div class="terms-banner"> - <div class="banner-content"> - + <p class="banner-text"> <template v-if="isFirstVisit"> - <h3 class="banner-title">Welcome to the BSC Code Index</h3> - <div class="banner-text-group"> - <p class="banner-text"> - This codebase is open-source and hosted on GitHub under the <a href="https://github.com/notamitgamer/bsc/blob/main/LICENSE"><u><strong>MIT License</strong></u></a>. - While you are completely free to use it, we encourage you to use these materials as an educational study reference rather than copying solutions verbatim. - </p> - <p class="banner-text"> - By continuing to browse this site, you acknowledge that you have read and agree to our - <a href="/terms" class="banner-link">Terms of Use</a>. - </p> - </div> - <div class="banner-actions"> - <button class="banner-btn" @click="acceptTerms">I Understand</button> - </div> + This is an open-source, <a href="https://github.com/notamitgamer/bsc/blob/main/LICENSE" class="banner-link"><strong>MIT-licensed</strong></a> + code index — please use it as a study reference, not a copy-paste source. + By browsing, you agree to our <a href="/terms" class="banner-link">Terms</a>. </template> - <template v-else> - <h3 class="banner-title">New Updates Available</h3> - <div class="banner-text-group"> - <p class="banner-text"> - The code index has been updated with new materials or improvements. - Check out the <a href="/changelog" class="banner-link">Changelog</a> to see what changed recently. - </p> - </div> - <div class="banner-actions"> - <button class="banner-btn" @click="acceptTerms">Got it</button> - </div> + Updated with new materials — see the <a href="/changelog" class="banner-link">Changelog</a>. </template> - + </p> + <div class="banner-actions"> + <button class="banner-btn" @click="acceptTerms" aria-label="Dismiss">OK</button> </div> </div> </div> @@ -70,59 +48,37 @@ const acceptTerms = () => { </template> <style scoped> -/* Wrapper to stick the banner to the bottom of the screen */ .terms-banner-wrapper { position: fixed; bottom: 0; left: 0; width: 100vw; - z-index: 99999; - pointer-events: none; + z-index: 99999; + pointer-events: none; } -/* Main banner box */ .terms-banner { - pointer-events: auto; + pointer-events: auto; width: 100%; background-color: color-mix(in srgb, var(--banner-bg) 96%, transparent); - color: #ffffff; - padding: 32px 24px calc(24px + env(safe-area-inset-bottom)) 24px; - box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.15); + color: #ffffff; + padding: 10px 20px calc(10px + env(safe-area-inset-bottom)) 20px; + box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15); font-family: var(--vp-font-family-base); display: flex; - flex-direction: column; - justify-content: center; -} - -/* Layout spacing */ -.banner-content { - max-width: var(--vp-layout-max-width); + align-items: center; + gap: 16px; + max-width: var(--vp-layout-max-width, 100%); margin: 0 auto; - width: 100%; - display: flex; - flex-direction: column; - gap: 16px; -} - -.banner-title { - margin: 0; - font-size: 20px; - font-weight: 700; - line-height: 1.2; -} - -.banner-text-group { - display: flex; - flex-direction: column; - gap: 10px; } .banner-text { margin: 0; - font-size: 15px; + font-size: 13px; font-weight: 500; - line-height: 1.5; + line-height: 1.4; opacity: 0.95; + flex: 1; } .banner-link { @@ -138,17 +94,15 @@ const acceptTerms = () => { } .banner-actions { - display: flex; - align-items: center; - margin-top: 4px; + flex-shrink: 0; } .banner-btn { background-color: #ffffff; color: #5b21b6; - padding: 12px 28px; + padding: 6px 16px; border-radius: 6px; - font-size: 14px; + font-size: 13px; font-weight: 700; border: none; cursor: pointer; @@ -160,78 +114,24 @@ const acceptTerms = () => { transform: scale(1.02); } -/* Mobile responsive fixes */ -@media (max-width: 767px) { +@media (max-width: 640px) { .terms-banner { - padding: 24px 16px calc(20px + env(safe-area-inset-bottom)) 16px; + padding: 12px 16px calc(12px + env(safe-area-inset-bottom)) 16px; } - .banner-title { - font-size: 18px; - } - .banner-text { - font-size: 14px; - } - - .banner-btn { - width: 100%; - font-size: 15px; - padding: 14px 16px; - } -} - -/* Desktop: floating card (bottom-right) */ -@media (min-width: 768px) { - .terms-banner-wrapper { - width: auto; - left: unset; - right: 24px; - bottom: 24px; - } - - .terms-banner { - width: 420px; - border-radius: 12px; - padding: 20px 22px; - box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.10); - } - - .banner-content { - gap: 12px; - } - - .banner-title { - font-size: 15px; - font-weight: 700; - } - - .banner-text { - font-size: 13px; - line-height: 1.55; - opacity: 0.92; - } - - .banner-text-group { - gap: 7px; - } - - .banner-actions { - margin-top: 2px; - justify-content: flex-end; + font-size: 12.5px; } .banner-btn { - padding: 9px 20px; - font-size: 13px; - border-radius: 6px; + padding: 7px 14px; + font-size: 12.5px; } } -/* Slide Up Animation */ .slide-up-enter-active, .slide-up-leave-active { - transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s ease; + transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease; } .slide-up-enter-from, diff --git a/docs/.vitepress/theme/components/Footer.vue b/docs/.vitepress/theme/components/Footer.vue @@ -2,7 +2,7 @@ <footer class="simple-footer"> <p> Released under the - <a href="https://github.com" target="_blank" rel="noopener noreferrer" class="footer-link">MIT License</a>. + <a href="https://github.com/notamitgamer/bsc/blob/main/LICENSE" target="_blank" rel="noopener noreferrer" class="footer-link">MIT License</a>. </p> <p>2026 &copy; <a href="https://amit.is-a.dev" target="_blank" rel="noopener noreferrer" class="footer-link">Amit Dutta</a></p> </footer> diff --git a/docs/.vitepress/theme/components/SponsorButton.vue b/docs/.vitepress/theme/components/SponsorButton.vue @@ -67,6 +67,7 @@ const triggerBurst = () => { href="https://github.com/sponsors/notamitgamer" class="sponsor-button" target="_blank" + rel="noopener noreferrer" title="Sponsor Amit Dutta on GitHub" @mouseenter="triggerBurst" @click="triggerBurst"
© notamitgamer • Site Built: 2026-07-21 13:58:23 UTC • git-mirror commit: 1037f62 [view raw info]
Originally created with stagit • modified by notamitgamer
Forked from github.com/notamitgamer/git-mirror