Compare commits
No commits in common. "653fe65078aba28ff65779358db51c397f35eac4" and "301803629f036ee4d58b72058739ac4a6a29aa1e" have entirely different histories.
653fe65078
...
301803629f
@ -175,6 +175,49 @@ const preloadPinboardImages = async (items) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const waitMs = async (delayMs) => new Promise(resolve => {
|
||||||
|
setTimeout(resolve, delayMs);
|
||||||
|
});
|
||||||
|
|
||||||
|
const runVisualWarmup = async (message, status, pinboardItems, initialIndex, refreshKey) => {
|
||||||
|
if (!message || !message.id) return;
|
||||||
|
if (pinboardItems.length <= 1) return;
|
||||||
|
if (warmingMessageIds.has(message.id)) return;
|
||||||
|
if (warmupRefreshKeyByMessage.get(message.id) === refreshKey) return;
|
||||||
|
|
||||||
|
warmingMessageIds.add(message.id);
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
for (let index = 0; index < pinboardItems.length; index += 1) {
|
||||||
|
selectedImageIndexByMessage.set(message.id, index);
|
||||||
|
const payload = buildPanelPayload(status, message.id, pinboardItems, {
|
||||||
|
useAttachmentForSelected: false,
|
||||||
|
disableCacheBustForSelected: true,
|
||||||
|
includeFiles: false,
|
||||||
|
refreshKey
|
||||||
|
});
|
||||||
|
await message.edit(payload);
|
||||||
|
}
|
||||||
|
|
||||||
|
selectedImageIndexByMessage.set(message.id, initialIndex);
|
||||||
|
const restoredPayload = buildPanelPayload(status, message.id, pinboardItems, {
|
||||||
|
useAttachmentForSelected: false,
|
||||||
|
disableCacheBustForSelected: true,
|
||||||
|
includeFiles: false,
|
||||||
|
refreshKey
|
||||||
|
});
|
||||||
|
await message.edit(restoredPayload);
|
||||||
|
|
||||||
|
warmupRefreshKeyByMessage.set(message.id, refreshKey);
|
||||||
|
console.log(`🔥 Warm-up visuel termine pour message ${message.id}`);
|
||||||
|
} catch (error) {
|
||||||
|
console.log(`⚠️ Warm-up visuel annule (${message.id}): ${error.message}`);
|
||||||
|
} finally {
|
||||||
|
warmingMessageIds.delete(message.id);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
const buildSelectedImageEmbed = (item, imageReference, options = {}) => {
|
const buildSelectedImageEmbed = (item, imageReference, options = {}) => {
|
||||||
const useAttachment = options.useAttachment !== false;
|
const useAttachment = options.useAttachment !== false;
|
||||||
const disableCacheBust = options.disableCacheBust === true;
|
const disableCacheBust = options.disableCacheBust === true;
|
||||||
@ -359,6 +402,10 @@ const update = async (client) => {
|
|||||||
|
|
||||||
await message.edit(payload);
|
await message.edit(payload);
|
||||||
|
|
||||||
|
const initialIndex = clampIndex(selectedImageIndexByMessage.get(message.id) ?? 0, pinboardItems.length);
|
||||||
|
runVisualWarmup(message, status, pinboardItems, initialIndex, imageRefreshKey)
|
||||||
|
.catch(error => console.log(`⚠️ Warm-up visuel en erreur: ${error.message}`));
|
||||||
|
|
||||||
console.log(`📊 Panneau Minecraft mis a jour (${status.playersOnline}/${status.playersMax})`);
|
console.log(`📊 Panneau Minecraft mis a jour (${status.playersOnline}/${status.playersMax})`);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log(`❌ Erreur displayer: ${error.message}`);
|
console.log(`❌ Erreur displayer: ${error.message}`);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user