Changeset 0.28.3.1 (#188)
This commit is contained in:
@@ -350,7 +350,7 @@ function _renderStrip() {
|
||||
<span class="att-name" title="${esc(a.filename)}">${esc(name)}</span>
|
||||
<span class="att-meta">${esc(size)}${label ? ' · ' + label : ''}</span>
|
||||
</span>
|
||||
<button class="att-remove" onclick="unstageFile('${a.localId}')" title="Remove">✕</button>
|
||||
<button class="att-remove" data-action="unstageFile" data-args='${JSON.stringify([a.localId])}'" title="Remove">✕</button>
|
||||
</div>`;
|
||||
}).join('');
|
||||
}
|
||||
@@ -423,7 +423,7 @@ function renderMessageFiles(msgId) {
|
||||
const visionHint = !hasVision
|
||||
? '<span class="att-vision-hint" title="Current model does not support images">👁️🗨️</span>'
|
||||
: '';
|
||||
return `<div class="msg-att msg-att-image" onclick="openLightbox('${esc(att.id)}')">
|
||||
return `<div class="msg-att msg-att-image" data-action="openLightbox" data-args='${JSON.stringify([esc(att.id)])}'">
|
||||
<img class="msg-att-img" data-att-id="${esc(att.id)}" alt="${esc(att.filename)}"
|
||||
style="max-width:${w}px" loading="lazy">
|
||||
${visionHint}
|
||||
@@ -433,7 +433,7 @@ function renderMessageFiles(msgId) {
|
||||
// Document chip
|
||||
const icon = _docIcon(att.content_type);
|
||||
const size = formatFileSize(att.size_bytes);
|
||||
return `<a class="msg-att msg-att-doc" href="#" onclick="downloadFile('${esc(att.id)}','${esc(att.filename)}');return false">
|
||||
return `<a class="msg-att msg-att-doc" href="#" data-action="downloadFile" data-args='${JSON.stringify([esc(att.id), esc(att.filename)])}' data-prevent-default">
|
||||
<span class="att-doc-icon">${icon}</span>
|
||||
<span class="att-doc-info">
|
||||
<span class="att-doc-name">${esc(att.filename)}</span>
|
||||
@@ -839,22 +839,22 @@ function _hasDragFiles(e) {
|
||||
}
|
||||
|
||||
// ── Exports ─────────────────────────────────
|
||||
window._initFileListeners = _initFileListeners;
|
||||
window._pollTimers = _pollTimers;
|
||||
window._startPolling = _startPolling;
|
||||
window._stopPolling = _stopPolling;
|
||||
window.clearStaged = clearStaged;
|
||||
window.closeLightbox = closeLightbox;
|
||||
window.consumeStaged = consumeStaged;
|
||||
window.getStagedFileIds = getStagedFileIds;
|
||||
window.hasStagedFiles = hasStagedFiles;
|
||||
window.initFiles = initFiles;
|
||||
window.isSendBlocked = isSendBlocked;
|
||||
window.loadAdminStorage = loadAdminStorage;
|
||||
window.loadAuthImages = loadAuthImages;
|
||||
window.loadChannelFiles = loadChannelFiles;
|
||||
window.renderMessageFiles = renderMessageFiles;
|
||||
window.unstageFile = unstageFile;
|
||||
window.openLightbox = openLightbox;
|
||||
window.downloadFile = downloadFile;
|
||||
sb.register('_initFileListeners', _initFileListeners);
|
||||
sb.register('_pollTimers', _pollTimers);
|
||||
sb.register('_startPolling', _startPolling);
|
||||
sb.register('_stopPolling', _stopPolling);
|
||||
sb.register('clearStaged', clearStaged);
|
||||
sb.register('closeLightbox', closeLightbox);
|
||||
sb.register('consumeStaged', consumeStaged);
|
||||
sb.register('getStagedFileIds', getStagedFileIds);
|
||||
sb.register('hasStagedFiles', hasStagedFiles);
|
||||
sb.register('initFiles', initFiles);
|
||||
sb.register('isSendBlocked', isSendBlocked);
|
||||
sb.register('loadAdminStorage', loadAdminStorage);
|
||||
sb.register('loadAuthImages', loadAuthImages);
|
||||
sb.register('loadChannelFiles', loadChannelFiles);
|
||||
sb.register('renderMessageFiles', renderMessageFiles);
|
||||
sb.register('unstageFile', unstageFile);
|
||||
sb.register('openLightbox', openLightbox);
|
||||
sb.register('downloadFile', downloadFile);
|
||||
})();
|
||||
|
||||
Reference in New Issue
Block a user