From 0d54e1f762b077ae091112fc765049cda20bd6cd Mon Sep 17 00:00:00 2001 From: Tajim Date: Thu, 27 Aug 2026 18:13:09 +0600 Subject: [PATCH 1/5] fix(ui): prevent mobile text truncation in course switcher --- resources/js/components/CourseSwitcher.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/js/components/CourseSwitcher.vue b/resources/js/components/CourseSwitcher.vue index c174aaf..e93add5 100644 --- a/resources/js/components/CourseSwitcher.vue +++ b/resources/js/components/CourseSwitcher.vue @@ -45,7 +45,7 @@ const setCoursePreference = (course: 'hsc' | 'ssc') => { Active Repository

আপনি {{ isSsc ? 'SSC' : 'HSC' }} এর কন্টেন্টগুলো দেখছেন From 55c7472a093fbccc76c048d663dc4fb83f2fcf73 Mon Sep 17 00:00:00 2001 From: Tajim Date: Thu, 27 Aug 2026 18:14:46 +0600 Subject: [PATCH 2/5] style: run prettier format across resources --- resources/js/components/AppLogo.vue | 4 +- resources/js/components/CourseSwitcher.vue | 15 ++- resources/js/components/FloatingShareBar.vue | 7 +- resources/js/components/Footer.vue | 12 ++- resources/js/components/NavBar.vue | 102 +++++++++++++----- .../js/components/admin/DesktopSidebar.vue | 1 - resources/js/pages/Home.vue | 4 +- resources/js/pages/User/Show.vue | 3 +- resources/js/pages/admin/Dashboard.vue | 9 +- resources/js/pages/legal/TermsConditions.vue | 8 +- 10 files changed, 109 insertions(+), 56 deletions(-) diff --git a/resources/js/components/AppLogo.vue b/resources/js/components/AppLogo.vue index 6151d87..df8b16d 100644 --- a/resources/js/components/AppLogo.vue +++ b/resources/js/components/AppLogo.vue @@ -11,8 +11,8 @@ const logoHref = computed(() => { const pref = localStorage.getItem('preferred_course'); if (pref === 'ssc') { -return '/ssc'; -} + return '/ssc'; + } } catch { // ignore } diff --git a/resources/js/components/CourseSwitcher.vue b/resources/js/components/CourseSwitcher.vue index e93add5..4c872fb 100644 --- a/resources/js/components/CourseSwitcher.vue +++ b/resources/js/components/CourseSwitcher.vue @@ -27,11 +27,11 @@ const setCoursePreference = (course: 'hsc' | 'ssc') => { class="mb-6 rounded-xl border border-slate-200 bg-white p-3.5 shadow-xs transition-all sm:p-5 dark:border-gray-700 dark:bg-gray-900" >

-
+
{ >
@@ -89,7 +92,11 @@ const setCoursePreference = (course: 'hsc' | 'ssc') => {
import { usePage } from '@inertiajs/vue3'; -import { - Share2, - Check, - Loader2, - Link as LinkIcon, -} from 'lucide-vue-next'; +import { Share2, Check, Loader2, Link as LinkIcon } from 'lucide-vue-next'; import { computed, ref, onMounted, onBeforeUnmount } from 'vue'; import AuthModal from './AuthModal.vue'; diff --git a/resources/js/components/Footer.vue b/resources/js/components/Footer.vue index 51778bd..0587cd4 100644 --- a/resources/js/components/Footer.vue +++ b/resources/js/components/Footer.vue @@ -238,14 +238,18 @@ const isFullFooter = computed(() => { v-if="!isFullFooter" class="mt-auto border-t border-slate-200/70 bg-white/80 pt-8 pb-6 backdrop-blur-md md:hidden dark:border-gray-800/70 dark:bg-gray-950/80" > -
+
-
+
{
-

+

© 2026 HSCStack

diff --git a/resources/js/components/NavBar.vue b/resources/js/components/NavBar.vue index 935d62b..6b4d278 100644 --- a/resources/js/components/NavBar.vue +++ b/resources/js/components/NavBar.vue @@ -18,7 +18,14 @@ import { HeartHandshake, Search, } from 'lucide-vue-next'; -import { computed, ref, onMounted, onBeforeUnmount, watch, nextTick } from 'vue'; +import { + computed, + ref, + onMounted, + onBeforeUnmount, + watch, + nextTick, +} from 'vue'; import { globalSearchQuery } from '@/lib/searchStore'; import { useDarkMode } from '@/lib/useDarkMode'; import AppLogo from './AppLogo.vue'; @@ -63,7 +70,8 @@ const searchInputRef = ref(null); const triggerSearch = () => { if (!user.value) { - authModalMessage.value = 'অনুগ্রহ করে বিষয় ও কনটেন্ট সার্চ করতে প্রথমে লগইন করুন।'; + authModalMessage.value = + 'অনুগ্রহ করে বিষয় ও কনটেন্ট সার্চ করতে প্রথমে লগইন করুন।'; showAuthModal.value = true; return; @@ -90,8 +98,8 @@ const homeHref = computed(() => { const pref = localStorage.getItem('preferred_course'); if (pref === 'ssc') { -return '/ssc'; -} + return '/ssc'; + } } catch { // ignore } @@ -194,7 +202,7 @@ onBeforeUnmount(() => {
{ class="w-full appearance-none rounded-xl border border-slate-200 bg-slate-50 py-2.5 pr-20 pl-10 text-sm font-semibold text-slate-800 placeholder:text-slate-400 focus:border-indigo-500 focus:bg-white focus:outline-none dark:border-gray-700 dark:bg-gray-900 dark:text-gray-100 dark:placeholder:text-gray-500 dark:focus:border-indigo-400 dark:focus:bg-gray-900" /> -
+
-
+
@@ -521,10 +541,14 @@ onBeforeUnmount(() => { {{ user.name.charAt(0).toUpperCase() }}
-

+

{{ user.name }}

-

+

{{ user.email }}

@@ -544,7 +568,9 @@ onBeforeUnmount(() => {
-

+

Explore

@@ -580,12 +606,18 @@ onBeforeUnmount(() => {
-

+

Account

@@ -600,17 +632,23 @@ onBeforeUnmount(() => { class="flex items-center gap-3 rounded-xl px-3 py-2 text-xs font-semibold text-slate-600 hover:bg-slate-100/70 hover:text-slate-900 dark:text-gray-400 dark:hover:bg-gray-900/60 dark:hover:text-gray-200" > - {{ isAdmin ? 'Home' : 'Staff Panel' }} + {{ + isAdmin ? 'Home' : 'Staff Panel' + }}
-

+

Platform

@@ -619,7 +657,9 @@ onBeforeUnmount(() => { @click="closeMobileMenu" class="flex items-center gap-3 rounded-xl px-3 py-2 text-xs font-semibold text-slate-600 hover:bg-slate-100/70 hover:text-slate-900 dark:text-gray-400 dark:hover:bg-gray-900/60 dark:hover:text-gray-200" > - + AI Assistant @@ -646,7 +686,9 @@ onBeforeUnmount(() => { @click="closeMobileMenu" class="flex items-center gap-3 rounded-xl px-3 py-2 text-xs font-semibold text-slate-600 hover:bg-slate-100/70 hover:text-slate-900 dark:text-gray-400 dark:hover:bg-gray-900/60 dark:hover:text-gray-200" > - + Support HSCStack
@@ -654,13 +696,19 @@ onBeforeUnmount(() => {
-
+
-

+

Appearance

-
+
-
diff --git a/resources/js/pages/Home.vue b/resources/js/pages/Home.vue index 4217b37..b2648e1 100644 --- a/resources/js/pages/Home.vue +++ b/resources/js/pages/Home.vue @@ -128,7 +128,9 @@ const filteredSubjects = computed(() => {
-
+
{ Sign out of your account?

- Are you sure you want to log out of HSCStack? You will need to sign in again to access your private data. + Are you sure you want to log out of HSCStack? You will need + to sign in again to access your private data.

diff --git a/resources/js/pages/admin/Dashboard.vue b/resources/js/pages/admin/Dashboard.vue index bddcb79..24a62cc 100644 --- a/resources/js/pages/admin/Dashboard.vue +++ b/resources/js/pages/admin/Dashboard.vue @@ -71,7 +71,8 @@ const fetchAnalytics = async (refresh = false) => {

- অ্যাডমিন ওয়ার্কস্পেসের সামগ্রিক তথ্য ও অ্যানালিটিক্স। + অ্যাডমিন ওয়ার্কস্পেসের সামগ্রিক তথ্য ও + অ্যানালিটিক্স।

@@ -122,7 +123,8 @@ const fetchAnalytics = async (refresh = false) => {

- সাবজেক্ট ম্যানেজ, রিসোর্স আপলোড, ব্লগ তৈরি ও প্যানেল পারমিশন সংক্রান্ত বিস্তারিত গাইডলাইন দেখুন। + সাবজেক্ট ম্যানেজ, রিসোর্স আপলোড, ব্লগ তৈরি ও প্যানেল + পারমিশন সংক্রান্ত বিস্তারিত গাইডলাইন দেখুন।

@@ -157,7 +159,8 @@ const fetchAnalytics = async (refresh = false) => { Analytics ডাটা লোড করার জন্য প্রস্তুত

- পেজ লোড দ্রুত রাখতে অ্যানালিটিক্স ডাটা ডিমান্ড অনুযায়ী লোড হয়। লাইভ মেট্রিক্স দেখতে নিচে ক্লিক করুন। + পেজ লোড দ্রুত রাখতে অ্যানালিটিক্স ডাটা ডিমান্ড অনুযায়ী লোড হয়। + লাইভ মেট্রিক্স দেখতে নিচে ক্লিক করুন।