mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-04-26 18:23:47 +02:00
clean up deps
This commit is contained in:
@@ -2,24 +2,30 @@
|
||||
<div id="chart" class="x-container">
|
||||
<div ref="instanceActivityRef" class="pt-12">
|
||||
<BackToTop :target="instanceActivityRef" :right="30" :bottom="30" :teleport="false" />
|
||||
<div class="options-container instance-activity mt-0">
|
||||
<div>
|
||||
<span>{{ t('view.charts.instance_activity.header') }}</span>
|
||||
<div class="options-container flex items-center justify-between mt-0">
|
||||
<div class="flex items-center justify-between">
|
||||
<span class="shrink-0">{{ t('view.charts.instance_activity.header') }}</span>
|
||||
<HoverCard>
|
||||
<HoverCardTrigger as-child>
|
||||
<Info class="ml-1" style="font-size: 12px; opacity: 0.7" />
|
||||
</HoverCardTrigger>
|
||||
<HoverCardContent side="bottom" align="start" class="w-75">
|
||||
<div class="tips-popover">
|
||||
<div>{{ t('view.charts.instance_activity.tips.online_time') }}</div>
|
||||
<div>{{ t('view.charts.instance_activity.tips.click_Y_axis') }}</div>
|
||||
<div>{{ t('view.charts.instance_activity.tips.click_instance_name') }}</div>
|
||||
<div>
|
||||
<div class="mb-1.5 text-xs">
|
||||
{{ t('view.charts.instance_activity.tips.online_time') }}
|
||||
</div>
|
||||
<div class="mb-1.5 text-xs">
|
||||
{{ t('view.charts.instance_activity.tips.click_Y_axis') }}
|
||||
</div>
|
||||
<div class="mb-1.5 text-xs flex items-center mt-2">
|
||||
{{ t('view.charts.instance_activity.tips.click_instance_name') }}
|
||||
</div>
|
||||
</div>
|
||||
</HoverCardContent>
|
||||
</HoverCard>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="flex items-center">
|
||||
<TooltipWrapper :content="t('view.charts.instance_activity.refresh')" side="top">
|
||||
<Button class="rounded-full mr-1.5" size="icon" variant="ghost" @click="reloadData">
|
||||
<RefreshCcw />
|
||||
@@ -39,10 +45,12 @@
|
||||
</div>
|
||||
</PopoverTrigger>
|
||||
<PopoverContent side="bottom" class="w-62.5">
|
||||
<div class="settings">
|
||||
<div>
|
||||
<span>{{ t('view.charts.instance_activity.settings.bar_width') }}</span>
|
||||
<div>
|
||||
<div>
|
||||
<div class="flex items-center justify-between px-0.5 h-[30px]">
|
||||
<span class="shrink-0">{{
|
||||
t('view.charts.instance_activity.settings.bar_width')
|
||||
}}</span>
|
||||
<div class="w-40 ml-5">
|
||||
<Slider
|
||||
v-model="barWidthDraftValue"
|
||||
:max="50"
|
||||
@@ -50,8 +58,10 @@
|
||||
@valueCommit="handleBarWidthCommit"></Slider>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<span>{{ t('view.charts.instance_activity.settings.show_detail') }}</span>
|
||||
<div class="flex items-center justify-between px-0.5 h-[30px]">
|
||||
<span class="shrink-0">{{
|
||||
t('view.charts.instance_activity.settings.show_detail')
|
||||
}}</span>
|
||||
<Switch
|
||||
v-model="isDetailVisible"
|
||||
@update:modelValue="
|
||||
@@ -59,16 +69,18 @@
|
||||
changeIsDetailInstanceVisible(value, () => handleSettingsChange())
|
||||
" />
|
||||
</div>
|
||||
<div v-if="isDetailVisible">
|
||||
<span>{{ t('view.charts.instance_activity.settings.show_solo_instance') }}</span>
|
||||
<div v-if="isDetailVisible" class="flex items-center justify-between px-0.5 h-[30px]">
|
||||
<span class="shrink-0">{{
|
||||
t('view.charts.instance_activity.settings.show_solo_instance')
|
||||
}}</span>
|
||||
<Switch
|
||||
v-model="isSoloInstanceVisible"
|
||||
@update:modelValue="
|
||||
(value) => changeIsSoloInstanceVisible(value, () => handleSettingsChange())
|
||||
" />
|
||||
</div>
|
||||
<div v-if="isDetailVisible">
|
||||
<span>{{
|
||||
<div v-if="isDetailVisible" class="flex items-center justify-between px-0.5 h-[30px]">
|
||||
<span class="shrink-0">{{
|
||||
t('view.charts.instance_activity.settings.show_no_friend_instance')
|
||||
}}</span>
|
||||
<Switch
|
||||
@@ -125,7 +137,7 @@
|
||||
</Popover>
|
||||
</div>
|
||||
</div>
|
||||
<div class="status-online">
|
||||
<div class="flex justify-center text-center">
|
||||
<div class="text-center">
|
||||
<div class="text-sm text-muted-foreground">
|
||||
{{ t('view.charts.instance_activity.online_time') }}
|
||||
@@ -137,12 +149,14 @@
|
||||
</div>
|
||||
|
||||
<div ref="activityChartRef" style="width: 100%"></div>
|
||||
<div v-if="!isLoading && activityData.length === 0" class="nodata">
|
||||
<div v-if="!isLoading && activityData.length === 0" class="flex items-center justify-center mt-[100px]">
|
||||
<DataTableEmpty type="nodata" />
|
||||
</div>
|
||||
|
||||
<transition name="el-fade-in-linear">
|
||||
<div v-show="isDetailVisible && !isLoading && activityData.length !== 0" class="divider">
|
||||
<div
|
||||
v-show="isDetailVisible && !isLoading && activityData.length !== 0"
|
||||
class="px-[400px] transition-[top] duration-300 ease-in-out">
|
||||
<div class="flex items-center">
|
||||
<Separator class="flex-1" />
|
||||
<span class="px-2 text-muted-foreground">·</span>
|
||||
@@ -721,73 +735,3 @@
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
%flex {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
%flex-between {
|
||||
justify-content: space-between;
|
||||
}
|
||||
.instance-activity {
|
||||
@extend %flex;
|
||||
@extend %flex-between;
|
||||
& > div:first-child {
|
||||
@extend %flex-between;
|
||||
}
|
||||
& > div {
|
||||
@extend %flex;
|
||||
> span {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
.tips-popover {
|
||||
& > div {
|
||||
margin-bottom: 6px;
|
||||
font-size: 12px;
|
||||
}
|
||||
& > div:last-child {
|
||||
@extend %flex;
|
||||
margin-top: 8px;
|
||||
i {
|
||||
margin-right: 3px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.settings {
|
||||
& > div {
|
||||
@extend %flex;
|
||||
@extend %flex-between;
|
||||
padding: 0 2px;
|
||||
height: 30px;
|
||||
> span {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
}
|
||||
& > div:first-child {
|
||||
> div {
|
||||
width: 160px;
|
||||
margin-left: 20px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.nodata {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-top: 100px;
|
||||
}
|
||||
.divider {
|
||||
padding: 0 400px;
|
||||
transition: top 0.3s ease;
|
||||
}
|
||||
|
||||
.status-online {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user