feat(mobile-app): prepare native app packaging

This commit is contained in:
2026-07-23 14:40:23 +08:00
parent f6609808df
commit 0f5c2e8667
62 changed files with 979 additions and 833 deletions
+10 -4
View File
@@ -282,7 +282,7 @@
:tool-label="broadcastContext ? '' : defaultToolCode === 'TEAM_PRACTICE_SUMMARY' ? '团队训练概况' : '我的训练概况'"
:panel-items="composerPanelItems"
@send="handleComposerSend"
@voice-blob="handleVoiceBlob"
@voice-capture="handleVoiceCapture"
@pick-audio="pickVoiceAudio"
@pick-media="pickMedia"
@clear-media="clearMedia"
@@ -440,7 +440,8 @@ import {
import { resetPageScroll } from '@/services/navigation';
import { ApiError, authenticatedFileUrl, releaseAuthenticatedFileUrl } from '@/services/api';
import { ensureEmployeePosition, fetchMobileIdentity } from '@/services/position';
import { chooseSpeechAudio, createSpeechPlaybackController, measureAudioDuration, MENTOR_VOICE_PROFILE, transcribeSpeechBlob, transcribeSpeechFile } from '@/services/speech';
import { chooseSpeechAudio, createSpeechPlaybackController, measureAudioDuration, MENTOR_VOICE_PROFILE, transcribeSpeechCapture, transcribeSpeechFile } from '@/services/speech';
import type { SpeechCapture } from '@/services/speech-capture';
import { downloadSummaryCardImage } from '@/services/summary-card-image';
import { getMemoryCandidates } from '@/services/personal-assistant';
import { currentAccountKey } from '@/services/request-scope';
@@ -1089,12 +1090,12 @@ const cancelVoiceTranscription = () => {
voiceTranscribing.value = false;
};
const handleVoiceBlob = async (blob: Blob) => {
const handleVoiceCapture = async (capture: SpeechCapture) => {
if (voiceTranscribing.value) return;
const generation = ++voiceTranscriptionGeneration;
voiceTranscribing.value = true;
try {
const result = await transcribeSpeechBlob(blob, 'sop-question.webm', (abort) => {
const result = await transcribeSpeechCapture(capture, 'sop-question.webm', (abort) => {
if (generation === voiceTranscriptionGeneration) abortVoiceTranscription = abort;
});
if (generation !== voiceTranscriptionGeneration) return;
@@ -1552,14 +1553,19 @@ onUnload(() => {
}
.broadcast-context-action {
display: flex;
min-height: 38px;
align-items: center;
justify-content: center;
margin: 0;
padding: 0;
border: 1px solid #e7aeb7;
border-radius: 10px;
background: #ffffff;
color: #b51c2b;
font-size: 12px;
font-weight: 700;
line-height: 1;
}
.broadcast-context-action.end {