Skip to content

Commit 79f4a83

Browse files
authored
feature: player search mobile (#241)
1 parent bf22c10 commit 79f4a83

6 files changed

Lines changed: 50 additions & 52 deletions

File tree

components/PlayerDisplay.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ export default {
254254
},
255255
showAddFriend: {
256256
type: Boolean,
257-
default: true,
257+
default: false,
258258
},
259259
showElo: {
260260
type: Boolean,

components/PlayerSearch.vue

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -42,30 +42,6 @@ const isMobile = useMediaQuery("(max-width: 768px)");
4242
<DrawerContent>
4343
<DrawerTitle class="sr-only">{{ label }}</DrawerTitle>
4444
<div class="flex flex-col h-[80dvh] p-4">
45-
<div class="flex items-center justify-between pb-3 border-b">
46-
<input
47-
ref="mobileSearchInput"
48-
v-model="query"
49-
:placeholder="$t('player.search.placeholder')"
50-
type="search"
51-
inputmode="search"
52-
enterkeyhint="search"
53-
class="flex-1 bg-transparent outline-none text-base"
54-
@input="
55-
(e: Event) =>
56-
debouncedSearch((e.target as HTMLInputElement).value)
57-
"
58-
/>
59-
<div class="flex items-center gap-2 ml-4">
60-
<Switch
61-
class="text-sm text-muted-foreground cursor-pointer flex items-center gap-2"
62-
:model-value="onlineOnly"
63-
@click="toggleOnlineOnly"
64-
/>
65-
{{ $t("player.search.online_only") }}
66-
</div>
67-
</div>
68-
6945
<div class="flex-1 overflow-y-auto min-h-0">
7046
<div
7147
v-if="!players?.length"
@@ -91,6 +67,30 @@ const isMobile = useMediaQuery("(max-width: 768px)");
9167
</div>
9268
</div>
9369
</div>
70+
71+
<div class="flex items-center justify-between pt-3 border-t">
72+
<input
73+
ref="mobileSearchInput"
74+
v-model="query"
75+
:placeholder="$t('player.search.placeholder')"
76+
type="search"
77+
inputmode="search"
78+
enterkeyhint="search"
79+
class="flex-1 bg-transparent outline-none text-base"
80+
@input="
81+
(e: Event) =>
82+
debouncedSearch((e.target as HTMLInputElement).value)
83+
"
84+
/>
85+
<div class="flex items-center gap-2 ml-4">
86+
<Switch
87+
class="text-sm text-muted-foreground cursor-pointer flex items-center gap-2"
88+
:model-value="onlineOnly"
89+
@click="toggleOnlineOnly"
90+
/>
91+
{{ $t("player.search.online_only") }}
92+
</div>
93+
</div>
9494
</div>
9595
</DrawerContent>
9696
</Drawer>

components/chat/ChatMessage.vue

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ import PlayerDisplay from "~/components/PlayerDisplay.vue";
1919
:show-online="false"
2020
:show-elo="false"
2121
:show-steam-id="false"
22-
:show-add-friend="false"
2322
:tooltip="false"
2423
:linkable="false"
2524
:show-name="false"

components/matchmaking-lobby/PlayersList.vue

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@ import FriendOptions from "~/components/matchmaking-lobby/FriendOptions.vue";
5858
class="w-full cursor-pointer opacity-50 hover:opacity-80 hover:bg-muted/50 transition-all duration-200 p-2 rounded-md"
5959
:player="player"
6060
:showOnline="false"
61-
:showAddFriend="false"
6261
:linkable="true"
6362
/>
6463
<div class="flex flex-col gap-2">
@@ -77,7 +76,6 @@ import FriendOptions from "~/components/matchmaking-lobby/FriendOptions.vue";
7776
<PlayerDisplay
7877
:player="player"
7978
:showOnline="false"
80-
:showAddFriend="false"
8179
:linkable="true"
8280
/>
8381

components/teams/TeamSearch.vue

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -32,30 +32,6 @@ const isMobile = useMediaQuery("(max-width: 768px)");
3232
<DrawerContent>
3333
<DrawerTitle class="sr-only">{{ label }}</DrawerTitle>
3434
<div class="flex flex-col h-[80dvh] p-4">
35-
<div class="flex items-center justify-between pb-3 border-b">
36-
<input
37-
ref="mobileSearchInput"
38-
v-model="query"
39-
:placeholder="$t('team.search.placeholder')"
40-
type="search"
41-
inputmode="search"
42-
enterkeyhint="search"
43-
class="flex-1 bg-transparent outline-none text-base"
44-
@input="
45-
(e: Event) =>
46-
debouncedSearch((e.target as HTMLInputElement).value)
47-
"
48-
/>
49-
<div class="flex items-center gap-2 ml-4" v-if="!myTeams">
50-
<Switch
51-
class="text-sm text-muted-foreground cursor-pointer flex items-center gap-2"
52-
:model-value="myTeamsOnly"
53-
@click="toggleMyTeamsOnly"
54-
/>
55-
{{ $t("team.search.my_teams_only") }}
56-
</div>
57-
</div>
58-
5935
<div class="flex-1 overflow-y-auto min-h-0">
6036
<div
6137
v-if="!teams?.length"
@@ -86,6 +62,30 @@ const isMobile = useMediaQuery("(max-width: 768px)");
8662
</div>
8763
</div>
8864
</div>
65+
66+
<div class="flex items-center justify-between pt-3 border-t">
67+
<input
68+
ref="mobileSearchInput"
69+
v-model="query"
70+
:placeholder="$t('team.search.placeholder')"
71+
type="search"
72+
inputmode="search"
73+
enterkeyhint="search"
74+
class="flex-1 bg-transparent outline-none text-base"
75+
@input="
76+
(e: Event) =>
77+
debouncedSearch((e.target as HTMLInputElement).value)
78+
"
79+
/>
80+
<div class="flex items-center gap-2 ml-4" v-if="!myTeams">
81+
<Switch
82+
class="text-sm text-muted-foreground cursor-pointer flex items-center gap-2"
83+
:model-value="myTeamsOnly"
84+
@click="toggleMyTeamsOnly"
85+
/>
86+
{{ $t("team.search.my_teams_only") }}
87+
</div>
88+
</div>
8989
</div>
9090
</DrawerContent>
9191
</Drawer>

pages/players/[id].vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ const { isMobile } = useSidebar();
6363
:player="player"
6464
size="xl"
6565
:show-steam-id="true"
66+
:show-add-friend="true"
6667
v-if="player"
6768
/>
6869
</div>

0 commit comments

Comments
 (0)