WIP: эмодзи-пикер — чекпоинт 2 (доводка перед мержем с origin)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Pixel
2026-07-16 11:21:00 +03:00
co-authored by Claude Opus 4.8
parent 266a74ef79
commit ea3b34e11e
5 changed files with 5 additions and 32 deletions
+1 -1
View File
@@ -9,7 +9,7 @@
<link rel="apple-touch-icon" href="./img/logo.jpg" />
<title>СИЯНИЕ</title>
<script>
window.__SHINE_BUILD_HASH__ = '20260715213000';
window.__SHINE_BUILD_HASH__ = '20260715214500';
window.__SHINE_CLIENT_VERSION__ = '1.2.10';
</script>
<script>
+1 -1
View File
@@ -69,7 +69,7 @@ import * as pwaDiagnosticsView from './pages/pwa-diagnostics-view.js';
import * as solanaUsersInitView from './pages/solana-users-init-view.js';
import * as messagesList from './pages/messages-list.js';
import * as contactSearchView from './pages/contact-search-view.js';
import * as chatView from './pages/chat-view.js?v=202607152130';
import * as chatView from './pages/chat-view.js?v=202607152145';
import * as userProfileView from './pages/user-profile-view.js';
import * as channelsList from './pages/channels-list.js';
import * as channelView from './pages/channel-view.js';
-18
View File
@@ -16,7 +16,6 @@ import {
state,
} from '../state.js';
import { startOutgoingCall } from '../services/call-service.js';
import { openSpeechInputModal } from '../components/speech-input-modal.js';
import {
createEmojiPicker,
createTelegramAnimatedEmoji,
@@ -453,7 +452,6 @@ export function render({ navigate, route }) {
<textarea class="input dm-input" name="message" rows="1" placeholder="Введите сообщение" maxlength="12000"></textarea>
<div class="dm-actions-col">
<button class="ghost-btn dm-emoji-btn" type="button" id="chat-emoji-toggle" aria-label="Эмодзи" title="Эмодзи">☺</button>
<button class="ghost-btn dm-voice-btn" type="button" id="chat-voice-input" title="Голосовой ввод">🎤</button>
<button class="primary-btn dm-send-btn dm-send-icon-btn" type="submit" title="Отправить">➤</button>
</div>
`;
@@ -760,22 +758,6 @@ export function render({ navigate, route }) {
await sendTextMessage(text);
});
form.querySelector('#chat-voice-input')?.addEventListener('click', async () => {
closeEmojiPicker();
await openSpeechInputModal({
navigate,
onTextReady: (text) => {
const prev = String(input.value || '').trim();
input.value = prev ? `${prev} ${text}` : text;
autoResizeComposer(input);
},
onSendText: async (text) => sendTextMessage(text),
onSendQueued: () => {
showToast('Сообщение будет отправлено автоматически после распознавания', { timeoutMs: 1000 });
},
});
});
form.addEventListener('submit', async (event) => {
event.preventDefault();
const text = String(input.value || '').trim();
+2 -11
View File
@@ -4554,20 +4554,11 @@ html, body { overflow-x: hidden; }
border-radius: 10px;
}
.dm-voice-btn {
grid-area: voice;
min-width: 42px;
width: 42px;
padding: 0 10px;
}
.dm-actions-col {
display: grid;
grid-template-columns: repeat(2, 42px);
grid-template-rows: repeat(2, 42px);
grid-template-areas:
". voice"
"emoji send";
grid-template-rows: 42px;
grid-template-areas: "emoji send";
gap: 6px;
}