Dearrow: Fix button

This commit is contained in:
V 2023-09-09 19:49:11 +02:00
parent e08d49edac
commit 3a5b70d410
No known key found for this signature in database
GPG key ID: A1DC0CFB5615D905

View file

@ -74,8 +74,8 @@ async function embedDidMount(this: Component<Props>) {
}
}
function renderButton(this: Component<Props>) {
const { embed } = this.props;
function renderButton(component: Component<Props>) {
const { embed } = component.props;
if (!embed?.dearrow) return null;
return (
@ -97,7 +97,7 @@ function renderButton(this: Component<Props>) {
embed.thumbnail.proxyURL = oldThumb;
}
this.forceUpdate();
component.forceUpdate();
}}
>
{/* Dearrow Icon, taken from https://dearrow.ajay.app/logo.svg (and optimised) */}
@ -134,7 +134,13 @@ export default definePlugin({
authors: [Devs.Ven],
embedDidMount,
renderButton: ErrorBoundary.wrap(renderButton, { noop: true }),
renderButton(component: Component<Props>) {
return (
<ErrorBoundary noop>
{renderButton(component)}
</ErrorBoundary>
);
},
patches: [{
find: "this.renderInlineMediaEmbed",
@ -148,7 +154,7 @@ export default definePlugin({
// add dearrow button
{
match: /children:\[(?=null!=\i\?\i\.renderSuppressButton)/,
replace: "children:[$self.renderButton.call(this),"
replace: "children:[$self.renderButton(this),"
}
]
}],