Skip to content

Commit 590cffc

Browse files
committed
Enhance RandomPicker component with persistent dialog feature and clean up global styles by removing unnecessary whitespace. Update styles for hover effects and ensure consistent formatting across SCSS files.
1 parent 3c72287 commit 590cffc

File tree

3 files changed

+18
-12
lines changed

3 files changed

+18
-12
lines changed

.hintrc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"extends": [
3+
"development"
4+
]
5+
}

src/components/RandomPicker.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<template>
2-
<v-dialog v-model="dialog" max-width="600" fullscreen-breakpoint="sm">
2+
<v-dialog v-model="dialog" max-width="600" fullscreen-breakpoint="sm" persistent>
33
<v-card class="random-picker-card">
44
<v-card-title class="text-h5 d-flex align-center">
55
<v-icon icon="mdi-account-question" class="mr-2" />
@@ -49,7 +49,7 @@
4949
<div v-if="tempFilters.excludeExcluded">• 已排除不参与学生 ({{ excludedCount }}人)</div>
5050
</div>
5151
</v-tooltip><!-- 添加临时过滤选项 -->
52-
52+
5353
<div class="d-flex flex-wrap justify-center gap-2 mt-4">
5454
<v-chip :color="tempFilters.excludeLate ? 'warning' : 'default'"
5555
:variant="tempFilters.excludeLate ? 'elevated' : 'text'"
@@ -64,7 +64,7 @@
6464
{{ tempFilters.excludeAbsent ? '排除' : '包含' }}请假学生
6565
</v-chip>
6666

67-
67+
6868

6969
<v-chip :color="tempFilters.excludeExcluded ? 'grey' : 'default'"
7070
:variant="tempFilters.excludeExcluded ? 'elevated' : 'text'"

src/styles/global.scss

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44
.hover-card {
55
transition: transform 0.2s ease, box-shadow 0.3s ease;
66
will-change: transform, box-shadow;
7-
7+
88
&:hover, &:focus {
99
transform: translateY(-4px);
1010
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15) !important;
1111
}
12-
12+
1313
&:active {
1414
transform: translateY(-2px);
1515
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1) !important;
@@ -22,7 +22,7 @@
2222
min-width: 48px;
2323
border-radius: 12px;
2424
padding: 12px 24px;
25-
25+
2626
&.v-btn--icon {
2727
min-height: 56px;
2828
min-width: 56px;
@@ -33,22 +33,22 @@
3333
.ripple-enhanced {
3434
position: relative;
3535
overflow: hidden;
36-
36+
3737
&::after {
3838
content: '';
3939
position: absolute;
4040
top: 0;
4141
left: 0;
4242
right: 0;
4343
bottom: 0;
44-
background: radial-gradient(circle at var(--x, 50%) var(--y, 50%),
45-
rgba(255, 255, 255, 0.2) 0%,
44+
background: radial-gradient(circle at var(--x, 50%) var(--y, 50%),
45+
rgba(255, 255, 255, 0.2) 0%,
4646
rgba(255, 255, 255, 0) 60%);
4747
opacity: 0;
4848
transition: opacity 0.5s;
4949
pointer-events: none;
5050
}
51-
51+
5252
&:active::after {
5353
opacity: 1;
5454
transition: opacity 0.2s;
@@ -76,11 +76,12 @@ html {
7676
.fullscreen-mode {
7777
.v-app-bar {
7878
background-color: rgba(var(--v-theme-surface-variant), 0.85) !important;
79+
-webkit-backdrop-filter: blur(10px);
7980
backdrop-filter: blur(10px);
8081
}
81-
82+
8283
.main-window {
8384
padding-top: 16px;
8485
padding-bottom: 16px;
8586
}
86-
}
87+
}

0 commit comments

Comments
 (0)