mirror of
https://github.com/Megghy/vtsuru.live.git
synced 2025-12-07 02:46:55 +08:00
add options in obs queue component
This commit is contained in:
@@ -53,22 +53,22 @@ export interface AccountInfo extends UserInfo {
|
|||||||
streamerInfo?: StreamerModel
|
streamerInfo?: StreamerModel
|
||||||
}
|
}
|
||||||
export interface StreamerModel {
|
export interface StreamerModel {
|
||||||
name: string;
|
name: string
|
||||||
uId: number;
|
uId: number
|
||||||
roomId: number;
|
roomId: number
|
||||||
faceUrl: string;
|
faceUrl: string
|
||||||
title: string;
|
title: string
|
||||||
coverUrl: string;
|
coverUrl: string
|
||||||
frameUrl: string;
|
frameUrl: string
|
||||||
area: string;
|
area: string
|
||||||
parentArea: string;
|
parentArea: string
|
||||||
lastStreamAt: number;
|
lastStreamAt: number
|
||||||
totalDanmakuCount: number;
|
totalDanmakuCount: number
|
||||||
totalIncome: number;
|
totalIncome: number
|
||||||
totalStreamCount: number;
|
totalStreamCount: number
|
||||||
totalStreamTime: number;
|
totalStreamTime: number
|
||||||
lastDanmakuCount: number;
|
lastDanmakuCount: number
|
||||||
isStreaming: boolean;
|
isStreaming: boolean
|
||||||
}
|
}
|
||||||
export enum BiliAuthCodeStatusType {
|
export enum BiliAuthCodeStatusType {
|
||||||
NotBind,
|
NotBind,
|
||||||
@@ -150,6 +150,9 @@ export interface Setting_Queue {
|
|||||||
jianzhangCooldownSecond: number
|
jianzhangCooldownSecond: number
|
||||||
|
|
||||||
showRequireInfo: boolean
|
showRequireInfo: boolean
|
||||||
|
showPayment: boolean
|
||||||
|
showFanMadelInfo: boolean
|
||||||
|
|
||||||
isReverse: boolean
|
isReverse: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -175,7 +178,7 @@ export enum FunctionTypes {
|
|||||||
Schedule,
|
Schedule,
|
||||||
SongRequest,
|
SongRequest,
|
||||||
Queue,
|
Queue,
|
||||||
Point
|
Point,
|
||||||
}
|
}
|
||||||
export interface SongAuthorInfo {
|
export interface SongAuthorInfo {
|
||||||
name: string
|
name: string
|
||||||
@@ -185,7 +188,7 @@ export enum SongFrom {
|
|||||||
Custom,
|
Custom,
|
||||||
Netease,
|
Netease,
|
||||||
FiveSing,
|
FiveSing,
|
||||||
Kugou
|
Kugou,
|
||||||
}
|
}
|
||||||
export interface SongsInfo {
|
export interface SongsInfo {
|
||||||
id: number
|
id: number
|
||||||
@@ -441,7 +444,7 @@ export enum EventDataTypes {
|
|||||||
Message,
|
Message,
|
||||||
Like,
|
Like,
|
||||||
SCDel,
|
SCDel,
|
||||||
Enter
|
Enter,
|
||||||
}
|
}
|
||||||
export interface ResponseQueueModel {
|
export interface ResponseQueueModel {
|
||||||
id: number
|
id: number
|
||||||
@@ -502,16 +505,14 @@ export enum FeedbackStatus {
|
|||||||
Reject,
|
Reject,
|
||||||
Developing,
|
Developing,
|
||||||
}
|
}
|
||||||
export interface TagInfo
|
export interface TagInfo {
|
||||||
{
|
|
||||||
name: string
|
name: string
|
||||||
color: string
|
color: string
|
||||||
}
|
}
|
||||||
export enum GoodsStatus
|
export enum GoodsStatus {
|
||||||
{
|
|
||||||
Normal, // 商品正常
|
Normal, // 商品正常
|
||||||
//OutOfStock, // 商品无货
|
//OutOfStock, // 商品无货
|
||||||
Discontinued // 商品下架
|
Discontinued, // 商品下架
|
||||||
}
|
}
|
||||||
export enum GoodsTypes {
|
export enum GoodsTypes {
|
||||||
Physical,
|
Physical,
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ import { NButton, NCard, NDivider, NLayoutContent, NSpace, NText, NTimeline, NTi
|
|||||||
</NSpace>
|
</NSpace>
|
||||||
<NDivider title-placement="left"> 更新日志 </NDivider>
|
<NDivider title-placement="left"> 更新日志 </NDivider>
|
||||||
<NTimeline>
|
<NTimeline>
|
||||||
|
<NTimelineItem type="info" title="功能更新" content="排队的OBS组件添加设置项" time="2024-1-27" />
|
||||||
<NTimelineItem type="warning" title="Bug修复" content="修复点歌会直接跳到下一首的问题 (怎么没人跟我说" time="2024-1-22" />
|
<NTimelineItem type="warning" title="Bug修复" content="修复点歌会直接跳到下一首的问题 (怎么没人跟我说" time="2024-1-22" />
|
||||||
<NTimelineItem type="info" title="功能更新" content="读弹幕支持自定义API" time="2023-12-25" />
|
<NTimelineItem type="info" title="功能更新" content="读弹幕支持自定义API" time="2023-12-25" />
|
||||||
<NTimelineItem type="success" title="功能添加" content="弹幕点歌 (点播)" time="2023-12-24" />
|
<NTimelineItem type="success" title="功能添加" content="弹幕点歌 (点播)" time="2023-12-24" />
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ onUnmounted(() => {
|
|||||||
<NDivider class="queue-divider">
|
<NDivider class="queue-divider">
|
||||||
<p class="queue-header-count">已有 {{ activeItems.length ?? 0 }} 人</p>
|
<p class="queue-header-count">已有 {{ activeItems.length ?? 0 }} 人</p>
|
||||||
</NDivider>
|
</NDivider>
|
||||||
<div class="queue-singing-container" :singing="queue.findIndex((s) => s.status == QueueStatus.Progressing) > -1" :from="(progressing?.from as number)" :status="(progressing?.status as number)">
|
<div class="queue-singing-container" :singing="queue.findIndex((s) => s.status == QueueStatus.Progressing) > -1" :from="progressing?.from as number" :status="progressing?.status as number">
|
||||||
<div class="queue-singing-prefix"></div>
|
<div class="queue-singing-prefix"></div>
|
||||||
<template v-if="progressing">
|
<template v-if="progressing">
|
||||||
<img class="queue-singing-avatar" :src="AVATAR_URL + progressing?.user?.uid" referrerpolicy="no-referrer" />
|
<img class="queue-singing-avatar" :src="AVATAR_URL + progressing?.user?.uid" referrerpolicy="no-referrer" />
|
||||||
@@ -122,8 +122,8 @@ onUnmounted(() => {
|
|||||||
<Vue3Marquee class="queue-list" :key="key" vertical :pause="!isMoreThanContainer" :duration="20" :style="`height: ${height}px;width: ${width}px;`">
|
<Vue3Marquee class="queue-list" :key="key" vertical :pause="!isMoreThanContainer" :duration="20" :style="`height: ${height}px;width: ${width}px;`">
|
||||||
<span
|
<span
|
||||||
class="queue-list-item"
|
class="queue-list-item"
|
||||||
:from="(item.from as number)"
|
:from="item.from as number"
|
||||||
:status="(item.status as number)"
|
:status="item.status as number"
|
||||||
:payment="item.giftPrice ?? 0"
|
:payment="item.giftPrice ?? 0"
|
||||||
v-for="(item, index) in activeItems"
|
v-for="(item, index) in activeItems"
|
||||||
:key="item.id"
|
:key="item.id"
|
||||||
@@ -132,13 +132,13 @@ onUnmounted(() => {
|
|||||||
<div class="queue-list-item-index" :index="index + 1">
|
<div class="queue-list-item-index" :index="index + 1">
|
||||||
{{ index + 1 }}
|
{{ index + 1 }}
|
||||||
</div>
|
</div>
|
||||||
<div class="queue-list-item-level" :has-level="(item.user?.fans_medal_level ?? 0) > 0">
|
<div v-if="settings.showFanMadelInfo" class="queue-list-item-level" :has-level="(item.user?.fans_medal_level ?? 0) > 0">
|
||||||
{{ `${item.user?.fans_medal_name} ${item.user?.fans_medal_level}` }}
|
{{ `${item.user?.fans_medal_name} ${item.user?.fans_medal_level}` }}
|
||||||
</div>
|
</div>
|
||||||
<div class="queue-list-item-user-name">
|
<div class="queue-list-item-user-name">
|
||||||
{{ item.user?.name }}
|
{{ item.user?.name }}
|
||||||
</div>
|
</div>
|
||||||
<p class="queue-list-item-payment">{{ item.from == QueueFrom.Manual ? '主播添加' : item.giftPrice == undefined ? '无' : '¥ ' + item.giftPrice }}</p>
|
<p v-if="settings.showPayment" class="queue-list-item-payment">{{ item.from == QueueFrom.Manual ? '主播添加' : item.giftPrice == undefined ? '无' : '¥ ' + item.giftPrice }}</p>
|
||||||
</span>
|
</span>
|
||||||
</Vue3Marquee>
|
</Vue3Marquee>
|
||||||
</template>
|
</template>
|
||||||
@@ -207,7 +207,11 @@ onUnmounted(() => {
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-shadow: 0 0 10px #ca7b7b6e, 0 0 20px #ffffff8e, 0 0 30px #61606086, 0 0 40px rgba(64, 156, 179, 0.555);
|
text-shadow:
|
||||||
|
0 0 10px #ca7b7b6e,
|
||||||
|
0 0 20px #ffffff8e,
|
||||||
|
0 0 30px #61606086,
|
||||||
|
0 0 40px rgba(64, 156, 179, 0.555);
|
||||||
}
|
}
|
||||||
.queue-header-count {
|
.queue-header-count {
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
|
|||||||
@@ -88,6 +88,8 @@ const defaultSettings = {
|
|||||||
giftFilterType: QueueGiftFilterType.Or,
|
giftFilterType: QueueGiftFilterType.Or,
|
||||||
showRequireInfo: true,
|
showRequireInfo: true,
|
||||||
isReverse: false,
|
isReverse: false,
|
||||||
|
showFanMadelInfo: true,
|
||||||
|
showPayment: true,
|
||||||
} as Setting_Queue
|
} as Setting_Queue
|
||||||
const STATUS_MAP = {
|
const STATUS_MAP = {
|
||||||
[QueueStatus.Waiting]: '等待中',
|
[QueueStatus.Waiting]: '等待中',
|
||||||
@@ -1049,6 +1051,8 @@ onUnmounted(() => {
|
|||||||
</NSpace>
|
</NSpace>
|
||||||
<NDivider> OBS </NDivider>
|
<NDivider> OBS </NDivider>
|
||||||
<NCheckbox v-model:checked="settings.showRequireInfo" :disabled="!configCanEdit" @update:checked="updateSettings"> 显示底部的需求信息 </NCheckbox>
|
<NCheckbox v-model:checked="settings.showRequireInfo" :disabled="!configCanEdit" @update:checked="updateSettings"> 显示底部的需求信息 </NCheckbox>
|
||||||
|
<NCheckbox v-model:checked="settings.showPayment" :disabled="!configCanEdit" @update:checked="updateSettings"> 显示付费信息 </NCheckbox>
|
||||||
|
<NCheckbox v-model:checked="settings.showFanMadelInfo" :disabled="!configCanEdit" @update:checked="updateSettings"> 显示用户粉丝牌 </NCheckbox>
|
||||||
<NDivider> 其他 </NDivider>
|
<NDivider> 其他 </NDivider>
|
||||||
<NCheckbox v-model:checked="isWarnMessageAutoClose"> 自动关闭加入队列失败时的提示消息 </NCheckbox>
|
<NCheckbox v-model:checked="isWarnMessageAutoClose"> 自动关闭加入队列失败时的提示消息 </NCheckbox>
|
||||||
</NSpace>
|
</NSpace>
|
||||||
|
|||||||
Reference in New Issue
Block a user