| 3617 | | 3617 | |
| 3618 | function saveGeneratedImage(prompt, image, generationType, negative) { | 3618 | function saveGeneratedImage(prompt, image, generationType, negative) { |
| 3619 | // Some message sources may not create the extra object | 3619 | // Some message sources may not create the extra object |
| 3620 | if (typeof message.extra !== 'object') { | 3620 | if (typeof message.extra !== 'object' || message.extra === null) { |
| 3621 | message.extra = {}; | 3621 | message.extra = {}; |
| 3622 | } | 3622 | } |
| 3623 | | 3623 | |
| | 3624 | // Add image to the swipe list if it's not already there |
| | 3625 | if (!Array.isArray(message.extra.image_swipes)) { |
| | 3626 | message.extra.image_swipes = []; |
| | 3627 | } |
| | 3628 | |
| | 3629 | const swipes = message.extra.image_swipes; |
| | 3630 | |
| | 3631 | if (message.extra.image && !swipes.includes(message.extra.image)) { |
| | 3632 | swipes.push(message.extra.image); |
| | 3633 | } |
| | 3634 | |
| | 3635 | swipes.push(image); |
| | 3636 | |
| 3624 | // If already contains an image and it's not inline - leave it as is | 3637 | // If already contains an image and it's not inline - leave it as is |
| 3625 | message.extra.inline_image = message.extra.image && !message.extra.inline_image ? false : true; | 3638 | message.extra.inline_image = message.extra.image && !message.extra.inline_image ? false : true; |
| 3626 | message.extra.image = image; | 3639 | message.extra.image = image; |