Remove unnecessary check for swipe info to fix #4717 (#4718) * - Removed unneccessary check for swipe info. Swipes are valid and can be read by the chat message UI just fine without the dates and details surrounding generation settings. * + Swipe info will now be backfilled if it's missing using placeholder data, to improve compatibility. * + Fix big oopsie.

5f35a38963a0ee21f63ef9d7e3be584d39e4a2a3

docfail <4965997+docfail@users.noreply.github.com>

Signed
1 files changed, +12 -2Ignore whitespace
public/script.js+12 -2
@@ -6059,17 +6059,27 @@ export function syncSwipeToMes(messageId = null, swipeId = null) {
6059 return false;6059 return false;
6060 }6060 }
6061 // If swipes structure is invalid, exit out6061 // If swipes structure is invalid, exit out
6062 if (!Array.isArray(targetMessage.swipe_info) || !Array.isArray(targetMessage.swipes)) {6062 if (!Array.isArray(targetMessage.swipes)) {
6063 return false;6063 return false;
6064 }6064 }
60656065
6066 // Backfill swipe_info if missing.
6067 if (!Array.isArray(targetMessage.swipe_info)) {
6068 targetMessage.swipe_info = targetMessage.swipes.map(_ => ({
6069 send_date: targetMessage.send_date,
6070 gen_started: void 0,
6071 gen_finished: void 0,
6072 extra: {},
6073 }));
6074 }
6075
6066 const targetSwipeId = targetMessage.swipe_id;6076 const targetSwipeId = targetMessage.swipe_id;
6067 if (typeof targetMessage.swipes[targetSwipeId] !== 'string') {6077 if (typeof targetMessage.swipes[targetSwipeId] !== 'string') {
6068 console.warn(`[syncSwipeToMes] Invalid swipe ID: ${targetSwipeId}`);6078 console.warn(`[syncSwipeToMes] Invalid swipe ID: ${targetSwipeId}`);
6069 return false;6079 return false;
6070 }6080 }
60716081
6072 const targetSwipeInfo = targetMessage?.swipe_info[targetSwipeId];6082 const targetSwipeInfo = targetMessage?.swipe_info?.[targetSwipeId];
6073 if (typeof targetSwipeInfo !== 'object') {6083 if (typeof targetSwipeInfo !== 'object') {
6074 console.warn(`[syncSwipeToMes] Invalid swipe info: ${targetSwipeId}`);6084 console.warn(`[syncSwipeToMes] Invalid swipe info: ${targetSwipeId}`);
6075 }6085 }