add filter for MessageContent
This commit is contained in:
parent
990453cdad
commit
6f10c71623
|
@ -50,7 +50,7 @@ export default new class ColoredText extends BuiltinModule {
|
||||||
/* Patches */
|
/* Patches */
|
||||||
async applyPatches() {
|
async applyPatches() {
|
||||||
if (this.patches.length) return;
|
if (this.patches.length) return;
|
||||||
this.MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector });
|
this.MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector }, m => m.defaultProps && m.defaultProps.hasOwnProperty('disableButtons'));
|
||||||
this.patch(this.MessageContent.component.prototype, 'render', this.injectColoredText);
|
this.patch(this.MessageContent.component.prototype, 'render', this.injectColoredText);
|
||||||
this.MessageContent.forceUpdateAll();
|
this.MessageContent.forceUpdateAll();
|
||||||
}
|
}
|
||||||
|
@ -58,10 +58,12 @@ export default new class ColoredText extends BuiltinModule {
|
||||||
/**
|
/**
|
||||||
* Set markup text colour to match role colour
|
* Set markup text colour to match role colour
|
||||||
*/
|
*/
|
||||||
injectColoredText(thisObject, args, returnValue) {
|
injectColoredText(thisObject, args, originalReturn) {
|
||||||
const { TinyColor } = Reflection.modules;
|
this.patch(originalReturn.props, 'children', function(obj, args, returnValue) {
|
||||||
const markup = Utils.findInReactTree(returnValue, m => m && m.props && m.props.className && m.props.className.includes('da-markup'));
|
const { TinyColor } = Reflection.modules;
|
||||||
const roleColor = thisObject.props.message.colorString;
|
const markup = Utils.findInReactTree(returnValue, m => m && m.props && m.props.className && m.props.className.includes('da-markup'));
|
||||||
if (markup && roleColor) markup.props.style = {color: TinyColor.mix(roleColor, this.defaultColor, this.intensity)};
|
const roleColor = thisObject.props.message.colorString;
|
||||||
|
if (markup && roleColor) markup.props.style = {color: TinyColor.mix(roleColor, this.defaultColor, this.intensity)};
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -236,7 +236,7 @@ export default new class E2EE extends BuiltinModule {
|
||||||
}
|
}
|
||||||
|
|
||||||
async patchMessageContent() {
|
async patchMessageContent() {
|
||||||
const MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector });
|
const MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector }, m => m.defaultProps && m.defaultProps.hasOwnProperty('disableButtons'));
|
||||||
this.patch(MessageContent.component.prototype, 'render', this.beforeRenderMessageContent, 'before');
|
this.patch(MessageContent.component.prototype, 'render', this.beforeRenderMessageContent, 'before');
|
||||||
this.patch(MessageContent.component.prototype, 'render', this.afterRenderMessageContent);
|
this.patch(MessageContent.component.prototype, 'render', this.afterRenderMessageContent);
|
||||||
|
|
||||||
|
|
|
@ -226,7 +226,7 @@ export default new class EmoteModule extends BuiltinModule {
|
||||||
* Patches MessageContent render method
|
* Patches MessageContent render method
|
||||||
*/
|
*/
|
||||||
async patchMessageContent() {
|
async patchMessageContent() {
|
||||||
const MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector });
|
const MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector }, m => m.defaultProps && m.defaultProps.hasOwnProperty('disableButtons'));
|
||||||
this.patch(MessageContent.component.prototype, 'render', this.afterRenderMessageContent);
|
this.patch(MessageContent.component.prototype, 'render', this.afterRenderMessageContent);
|
||||||
MessageContent.forceUpdateAll();
|
MessageContent.forceUpdateAll();
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ module.exports = (Plugin, Api, Vendor) => {
|
||||||
// Force update elements to remove our changes
|
// Force update elements to remove our changes
|
||||||
const GuildTextChannel = await ReactComponents.getComponent('GuildTextChannel');
|
const GuildTextChannel = await ReactComponents.getComponent('GuildTextChannel');
|
||||||
GuildTextChannel.forceUpdateAll();
|
GuildTextChannel.forceUpdateAll();
|
||||||
const MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector });
|
const MessageContent = await ReactComponents.getComponent('MessageContent', { selector: Reflection.resolve('container', 'containerCozy', 'containerCompact', 'edited').selector }, m => m.defaultProps && m.defaultProps.hasOwnProperty('disableButtons'));
|
||||||
MessageContent.forceUpdateAll();
|
MessageContent.forceUpdateAll();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue