MessageLinkTooltip: Fix Random Crashing

This commit is contained in:
thororen 2026-10-02 08:53:44 -04:00
parent c82de288f7
commit bc68ff9b10
No known key found for this signature in database
3 changed files with 69 additions and 67 deletions

View file

@ -97,7 +97,7 @@
"typescript-transform-paths": "^3.5.6", "typescript-transform-paths": "^3.5.6",
"zip-local": "^0.3.5" "zip-local": "^0.3.5"
}, },
"packageManager": "pnpm@12.6.0", "packageManager": "pnpm@12.8.1",
"engines": { "engines": {
"node": ">=22" "node": ">=22"
} }

122
pnpm-lock.yaml generated
View file

@ -7,153 +7,153 @@ importers:
configDependencies: {} configDependencies: {}
packageManagerDependencies: packageManagerDependencies:
pnpm: pnpm:
specifier: 12.6.0 specifier: 12.8.1
version: 12.6.0 version: 12.8.1
packages: packages:
'@pnpm/exe.android-arm64@12.6.0': '@pnpm/exe.android-arm64@12.8.1':
resolution: {integrity: sha512-kviIHft9h02q+7N2In7tSL9T/HRUSGwYmU74YPtsWU5ee7vgqPyC0JT6RRX6miW+NxX1CvHgQxg69qq1qTLJYQ==} resolution: {integrity: sha512-siDxcidfz5eM6L2tJfik+i2bbUEw8UC7MZ3Yl2HYdRmqbdhHGAOQACtOOu6QVW4Jul4/w5wVKm+wM8ACtgh1Pg==}
cpu: [arm64] cpu: [arm64]
os: [android] os: [android]
'@pnpm/exe.android-x64@12.6.0': '@pnpm/exe.android-x64@12.8.1':
resolution: {integrity: sha512-CT8aJKLq2mtZFE71pr4E5Z2xHL8uGnRGr+NclDqsXlVF4SVcQ2QAs14mWi0C8gjT4hbmi+Q0lJRRIkMAWfjjng==} resolution: {integrity: sha512-0F/uqPRc3aN4vLHsa0f+6fTtmsigFQ9/yxEU43fionF//pNHEd5e97b3w/nKIgqYMCUQCJphmBRMA9Q8/wlo9Q==}
cpu: [x64] cpu: [x64]
os: [android] os: [android]
'@pnpm/exe.darwin-arm64@12.6.0': '@pnpm/exe.darwin-arm64@12.8.1':
resolution: {integrity: sha512-rafpVkjzugKBMxSvGQd5wK1x5eOTkD/+lcJIFHeQhvd+BJ8kDisOOvwhQDrpGd4vd2Fx+hhW0P2Ptt638OlhFg==} resolution: {integrity: sha512-/rwavvMQJsl2RIxOHBnDF+4Gk+fhQFAY4M3PQZoKskJOEnaJcygG9p1xby6wcQcbS4d9dIubv09CQhufTgfmpw==}
cpu: [arm64] cpu: [arm64]
os: [darwin] os: [darwin]
'@pnpm/exe.darwin-x64@12.6.0': '@pnpm/exe.darwin-x64@12.8.1':
resolution: {integrity: sha512-72Jpuv1m24gI8zUNcaylYpBWEhBzz1VPhnDIU2GYM2eRP+KsOqVLwV78i+JrihI39zY2NNXmaN4eAKX1inpaDQ==} resolution: {integrity: sha512-htYt2gN7zqJKLhC99Ft6EUiO7myjZAZXfmGCTJUL1v+o7vE9hZdE1+fAkk4Oj1ZHNRti6b2woOxEkRkAusi8OQ==}
cpu: [x64] cpu: [x64]
os: [darwin] os: [darwin]
'@pnpm/exe.freebsd-x64@12.6.0': '@pnpm/exe.freebsd-x64@12.8.1':
resolution: {integrity: sha512-LON4QgNy1w/XF4uySZIyC/5hEB0oGdelXsY9tSKqstER+2j2X2oHz67skD11RRd/HWFRtMr64shQZ4I9ZoZ0zg==} resolution: {integrity: sha512-PB5BULNgytxvExoOXUUeseS/DcpPENs+cg3iA6xHHeaLT4ctEGKSGXEbuj7USeqvo8JBpAx039hivnbzGqDwnA==}
cpu: [x64] cpu: [x64]
os: [freebsd] os: [freebsd]
'@pnpm/exe.linux-arm64-musl@12.6.0': '@pnpm/exe.linux-arm64-musl@12.8.1':
resolution: {integrity: sha512-BdDpX+DeaMUc5x6WNcE6FkmFy36NwrBbBvwsZU737Zt3u1fTY+iKFPchjEQNCM4rT6q6xvF2oN3ZwExGsJCkxQ==} resolution: {integrity: sha512-kKeyC/ArjrgdciQRBrOL0j9HtOI4gDRgoyP+eJ1CQKyadpKlf/DhDDyspXe07R3B9KagTVLUF2nlt6Dr5quFIg==}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
libc: [musl] libc: [musl]
'@pnpm/exe.linux-arm64@12.6.0': '@pnpm/exe.linux-arm64@12.8.1':
resolution: {integrity: sha512-8h2sNoIhHDpHDYqZZCh9PXr6krqW10btb0GHVGuw710muDHlFAHMtUG2ogmaHge6zJG1xgY4Y7mwX5g/LWvrYg==} resolution: {integrity: sha512-q4s9a9X2O3N9aeUFooW24orNrxvu20+jyVUFR5RanPCqOKKPBrgs2iywMkBBx1aXkkzdWT54/mfz8Be8sJlWEw==}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
libc: [glibc] libc: [glibc]
'@pnpm/exe.linux-ppc64@12.6.0': '@pnpm/exe.linux-ppc64@12.8.1':
resolution: {integrity: sha512-ld6xgcEhFCFrsVsJhbmdmR714PnsEspO/Ij8w0/D7OSiz2hYGu3fZd5tKRxOI5m6H6Gl0/RRFAPncTHbsgXVjQ==} resolution: {integrity: sha512-F7XSjKJthwCh/L6abZiMpAfo2Cm61SZIT3e4dfgiIjESndlWaXCnfLKngSgZ/SEMsdmHT6dud3+kWIB3tw0/xQ==}
cpu: [ppc64] cpu: [ppc64]
os: [linux] os: [linux]
libc: [glibc] libc: [glibc]
'@pnpm/exe.linux-riscv64@12.6.0': '@pnpm/exe.linux-riscv64@12.8.1':
resolution: {integrity: sha512-HIbImydoC3J8NFt+8MXfhTCf5rO6NjCMyinSAHac0VmV8uCHw+kbQkyAzxV84rzz9ZOzmBOnj0b1N461UIYGsw==} resolution: {integrity: sha512-z1ecpIK/ZY08Unk69KWWE9867oaKUytGUjrHnBoGFAAhsK+q+0cfvBH+f5fWobJ7FX97leMlLO+gkJolddM45Q==}
cpu: [riscv64] cpu: [riscv64]
os: [linux] os: [linux]
libc: [glibc] libc: [glibc]
'@pnpm/exe.linux-s390x@12.6.0': '@pnpm/exe.linux-s390x@12.8.1':
resolution: {integrity: sha512-DjSqT7+BZ/lWcDHwNMuzsRVfyxUimh+D54Xw4tSWbdVVQhtWtNMUyI93LVnwCmsoEpar2gC3SFeAgywx37svKQ==} resolution: {integrity: sha512-KU6tnrBfu4uKXTq6N5qJwSm8FSrs9Wc8b5AUEsHK9bRXwNdsZ1/lRxG1++X29SKRW9OSNuDSjxASv5mAvGo1gA==}
cpu: [s390x] cpu: [s390x]
os: [linux] os: [linux]
libc: [glibc] libc: [glibc]
'@pnpm/exe.linux-x64-musl@12.6.0': '@pnpm/exe.linux-x64-musl@12.8.1':
resolution: {integrity: sha512-31lKeGPmRE6xfV6I3VjaEGVFRei14pl/zgoFDK4w+UkbJqOuNl2Ht3O1GuqNIg3Gl14qTEb4kZRAYFHXifDx9A==} resolution: {integrity: sha512-eUE8BWJkDr2tJb/yrk0yVnszlmNqFarVxUlqiZ9BAkct28Nq/5g2H0tvMDmPA7fAQW3STNj+omJPPRVT+4s5sQ==}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
libc: [musl] libc: [musl]
'@pnpm/exe.linux-x64@12.6.0': '@pnpm/exe.linux-x64@12.8.1':
resolution: {integrity: sha512-qFWBneHJAJ73W4whtbaFOL1M/7DBC6ILHXuxc7ZPtEhfPuT1zeZiGrmKHoMAfJA+mcm6xhOFljqVTUS+00Jabw==} resolution: {integrity: sha512-8bDZ0lZlCdi2rvnFul7EYgcC7zKeWSe76y8JV2oXobaS8p9i9d6PSf6LgLtTM0fI7R9Oh4eLCbveXyNDMmvZ+g==}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
libc: [glibc] libc: [glibc]
'@pnpm/exe.win32-arm64@12.6.0': '@pnpm/exe.win32-arm64@12.8.1':
resolution: {integrity: sha512-OhfefXEEykZlslSUhR8PPRe6MVPV3Oink/dVfIecE5velpc7j80cZYsHlaDrtRDcm3TPwQHkaRW1SJ1efX9oFg==} resolution: {integrity: sha512-MsT0dlrRxnCRCHCaosNbhWpEiAFnFuMEu3KuDJDU41BXgTwiINxU8goloUSUDejWZUqKaUqNC/qUTihl9nFtqg==}
cpu: [arm64] cpu: [arm64]
os: [win32] os: [win32]
'@pnpm/exe.win32-x64@12.6.0': '@pnpm/exe.win32-x64@12.8.1':
resolution: {integrity: sha512-L2tuyrD2+Imgxs3VK/ST/2L3xD6vDP0ktJQxM0TaGw7TbAQEMq+RMc8iK6Ew7Id579uzjJe8jSfJID2ZGsOHCA==} resolution: {integrity: sha512-SWtPe0PsbTTk//gJND10tMdOfCYjrkq5+qV49hzVhY7xz2iJ339Rc+xwASlcvbwTfrvH39YNqpKYibD+CRGLwA==}
cpu: [x64] cpu: [x64]
os: [win32] os: [win32]
pnpm@12.6.0: pnpm@12.8.1:
resolution: {integrity: sha512-PvaPlRyxEawgS0paFvCy3fDaVqluBBPoHYVdnwtV75JnFHCQKOHNAMQFwsX7e56OxNxGd3yAXQNzwvL/AP0g7A==} resolution: {integrity: sha512-9kupB1B/XOr+BsjTjmBS0BeURFgOwSed3Vv8EctIqoomRLZlmOB+dh2oSHKp/FfV+QK4f6SdAkGY1VhhKqu+RQ==}
engines: {node: '>=18.*'} engines: {node: '>=18.*'}
hasBin: true hasBin: true
snapshots: snapshots:
'@pnpm/exe.android-arm64@12.6.0': '@pnpm/exe.android-arm64@12.8.1':
optional: true optional: true
'@pnpm/exe.android-x64@12.6.0': '@pnpm/exe.android-x64@12.8.1':
optional: true optional: true
'@pnpm/exe.darwin-arm64@12.6.0': '@pnpm/exe.darwin-arm64@12.8.1':
optional: true optional: true
'@pnpm/exe.darwin-x64@12.6.0': '@pnpm/exe.darwin-x64@12.8.1':
optional: true optional: true
'@pnpm/exe.freebsd-x64@12.6.0': '@pnpm/exe.freebsd-x64@12.8.1':
optional: true optional: true
'@pnpm/exe.linux-arm64-musl@12.6.0': '@pnpm/exe.linux-arm64-musl@12.8.1':
optional: true optional: true
'@pnpm/exe.linux-arm64@12.6.0': '@pnpm/exe.linux-arm64@12.8.1':
optional: true optional: true
'@pnpm/exe.linux-ppc64@12.6.0': '@pnpm/exe.linux-ppc64@12.8.1':
optional: true optional: true
'@pnpm/exe.linux-riscv64@12.6.0': '@pnpm/exe.linux-riscv64@12.8.1':
optional: true optional: true
'@pnpm/exe.linux-s390x@12.6.0': '@pnpm/exe.linux-s390x@12.8.1':
optional: true optional: true
'@pnpm/exe.linux-x64-musl@12.6.0': '@pnpm/exe.linux-x64-musl@12.8.1':
optional: true optional: true
'@pnpm/exe.linux-x64@12.6.0': '@pnpm/exe.linux-x64@12.8.1':
optional: true optional: true
'@pnpm/exe.win32-arm64@12.6.0': '@pnpm/exe.win32-arm64@12.8.1':
optional: true optional: true
'@pnpm/exe.win32-x64@12.6.0': '@pnpm/exe.win32-x64@12.8.1':
optional: true optional: true
pnpm@12.6.0: pnpm@12.8.1:
optionalDependencies: optionalDependencies:
'@pnpm/exe.android-arm64': 12.6.0 '@pnpm/exe.android-arm64': 12.8.1
'@pnpm/exe.android-x64': 12.6.0 '@pnpm/exe.android-x64': 12.8.1
'@pnpm/exe.darwin-arm64': 12.6.0 '@pnpm/exe.darwin-arm64': 12.8.1
'@pnpm/exe.darwin-x64': 12.6.0 '@pnpm/exe.darwin-x64': 12.8.1
'@pnpm/exe.freebsd-x64': 12.6.0 '@pnpm/exe.freebsd-x64': 12.8.1
'@pnpm/exe.linux-arm64': 12.6.0 '@pnpm/exe.linux-arm64': 12.8.1
'@pnpm/exe.linux-arm64-musl': 12.6.0 '@pnpm/exe.linux-arm64-musl': 12.8.1
'@pnpm/exe.linux-ppc64': 12.6.0 '@pnpm/exe.linux-ppc64': 12.8.1
'@pnpm/exe.linux-riscv64': 12.6.0 '@pnpm/exe.linux-riscv64': 12.8.1
'@pnpm/exe.linux-s390x': 12.6.0 '@pnpm/exe.linux-s390x': 12.8.1
'@pnpm/exe.linux-x64': 12.6.0 '@pnpm/exe.linux-x64': 12.8.1
'@pnpm/exe.linux-x64-musl': 12.6.0 '@pnpm/exe.linux-x64-musl': 12.8.1
'@pnpm/exe.win32-arm64': 12.6.0 '@pnpm/exe.win32-arm64': 12.8.1
'@pnpm/exe.win32-x64': 12.6.0 '@pnpm/exe.win32-x64': 12.8.1
--- ---
lockfileVersion: '9.0' lockfileVersion: '9.0'

View file

@ -97,17 +97,19 @@ export default definePlugin({
], ],
MentionTooltip({ Component, vcProps, ...props }) { MentionTooltip({ Component, vcProps, ...props }) {
return withTooltip(Component, props, vcProps.messageId, vcProps.channelId); return withTooltip(Component, props, vcProps?.messageId, vcProps?.channelId);
}, },
ReplyTooltip({ Component, vcProps, ...props }) { ReplyTooltip({ Component, vcProps, ...props }) {
const mess = vcProps.baseMessage.messageReference; const messageReference = vcProps?.baseMessage?.messageReference;
return withTooltip(Component, props, mess?.message_id, mess?.channel_id); if (!messageReference) return <Component {...props} />;
return withTooltip(Component, props, messageReference?.message_id, messageReference?.channel_id);
}, },
ForwardTooltip({ Component, vcProps, ...props }) { ForwardTooltip({ Component, vcProps, ...props }) {
const mess = vcProps.message.messageReference; const messageReference = vcProps?.message?.messageReference;
return withTooltip(Component, props, mess?.message_id, mess?.channel_id); if (!messageReference) return <Component {...props} />;
return withTooltip(Component, props, messageReference?.message_id, messageReference?.channel_id);
}, },
}); });