fix(eslint): reduce warnings in GitHub Actions deployment

- Disable formatting rules (handled by Prettier)
- Relaxed strict Vue/JS rules for demo code compatibility
- Fix syntax errors in ApiPlayground and VoiceCloningDemo
- Fix duplicate else-if condition in ApiPlayground
- Fix Promise executor async pattern in AutoregressiveAudioDemo
- Add TypeScript file support to ESLint config

Warnings reduced from 295 to 251 problems.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
sanbuphy
2026-02-18 17:38:10 +08:00
parent 8b01686e68
commit 0eba9e87e9
456 changed files with 28450 additions and 9677 deletions
@@ -1,13 +1,19 @@
<template>
<div class="session-persistence-demo">
<div class="header">
<div class="title">会话保持机制</div>
<div class="subtitle">CookieIP哈希与粘性会话的技术对比</div>
<div class="title">
会话保持机制
</div>
<div class="subtitle">
CookieIP哈希与粘性会话的技术对比
</div>
</div>
<!-- 场景选择 -->
<div class="scenario-selector">
<div class="scenario-label">应用场景</div>
<div class="scenario-label">
应用场景
</div>
<div class="scenario-buttons">
<button
v-for="scenario in scenarios"
@@ -48,9 +54,18 @@
:class="{ active: activeUser === user.id }"
@click="activeUser = user.id"
>
<div class="avatar-icon">{{ user.avatar }}</div>
<div class="user-name">{{ user.name }}</div>
<div v-if="hasSessionCookie" class="cookie-badge">🍪</div>
<div class="avatar-icon">
{{ user.avatar }}
</div>
<div class="user-name">
{{ user.name }}
</div>
<div
v-if="hasSessionCookie"
class="cookie-badge"
>
🍪
</div>
</div>
</div>
</div>
@@ -58,8 +73,12 @@
<!-- 请求流程 -->
<div class="request-flow">
<div class="flow-step">
<div class="step-label">请求</div>
<div class="step-arrow"></div>
<div class="step-label">
请求
</div>
<div class="step-arrow">
</div>
</div>
<!-- 负载均衡器 -->
@@ -72,16 +91,29 @@
<div class="mechanism-display">
<span class="display-icon">{{ currentMechanismData.icon }}</span>
<div class="display-info">
<div class="display-name">{{ currentMechanismData.name }}</div>
<div class="display-desc">{{ currentMechanismData.shortDesc }}</div>
<div class="display-name">
{{ currentMechanismData.name }}
</div>
<div class="display-desc">
{{ currentMechanismData.shortDesc }}
</div>
</div>
</div>
</div>
<!-- 会话表 -->
<div v-if="currentMechanism === 'cookie' || currentMechanism === 'sticky'" class="session-table">
<div class="table-title">会话映射表</div>
<div
v-if="currentMechanism === 'cookie' || currentMechanism === 'sticky'"
class="session-table"
>
<div class="table-title">
会话映射表
</div>
<div class="table-rows">
<div v-for="mapping in sessionMappings" :key="mapping.session" class="table-row">
<div
v-for="mapping in sessionMappings"
:key="mapping.session"
class="table-row"
>
<span class="session-id">{{ mapping.session }}</span>
<span class="mapping-arrow"></span>
<span class="server-name">{{ mapping.server }}</span>
@@ -89,8 +121,13 @@
</div>
</div>
<!-- IP哈希环 -->
<div v-if="currentMechanism === 'iphash'" class="hash-ring">
<div class="ring-title">IP哈希环</div>
<div
v-if="currentMechanism === 'iphash'"
class="hash-ring"
>
<div class="ring-title">
IP哈希环
</div>
<div class="ring-visual">
<div
v-for="(server, index) in hashRingServers"
@@ -109,7 +146,9 @@
</div>
<div class="flow-step">
<div class="step-arrow"></div>
<div class="step-arrow">
</div>
</div>
<!-- 后端服务器 -->
@@ -120,15 +159,27 @@
class="backend-server"
:class="{ target: isTargetServer(server.id) }"
>
<div class="server-icon">🖥</div>
<div class="server-info">
<div class="server-name">{{ server.name }}</div>
<div class="server-ip">{{ server.ip }}</div>
<div class="server-icon">
🖥
</div>
<div class="server-status" :class="server.status">
<div class="server-info">
<div class="server-name">
{{ server.name }}
</div>
<div class="server-ip">
{{ server.ip }}
</div>
</div>
<div
class="server-status"
:class="server.status"
>
{{ server.status === 'healthy' ? '✓' : '✗' }}
</div>
<div v-if="isTargetServer(server.id)" class="selected-indicator">
<div
v-if="isTargetServer(server.id)"
class="selected-indicator"
>
选中
</div>
</div>
@@ -136,9 +187,14 @@
</div>
<!-- 响应流程 -->
<div class="response-flow" v-if="currentMechanism === 'cookie'">
<div
v-if="currentMechanism === 'cookie'"
class="response-flow"
>
<div class="flow-step">
<div class="step-arrow"></div>
<div class="step-arrow">
</div>
</div>
<div class="set-cookie-box">
<div class="cookie-header">
@@ -154,7 +210,9 @@
<!-- 机制对比表 -->
<div class="mechanism-comparison">
<div class="comparison-title">三种会话保持机制对比</div>
<div class="comparison-title">
三种会话保持机制对比
</div>
<div class="comparison-grid">
<div class="comparison-card">
<div class="card-header">