diff --git a/package.json b/package.json index 69481c9b..c9a43169 100755 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "frankerfacez", "author": "Dan Salvato LLC", - "version": "4.20.72", + "version": "4.20.73", "description": "FrankerFaceZ is a Twitch enhancement suite.", "license": "Apache-2.0", "scripts": { diff --git a/src/modules/chat/actions/components/edit-emoji.vue b/src/modules/chat/actions/components/edit-emoji.vue new file mode 100644 index 00000000..f036633e --- /dev/null +++ b/src/modules/chat/actions/components/edit-emoji.vue @@ -0,0 +1,28 @@ + + + \ No newline at end of file diff --git a/src/modules/chat/actions/index.jsx b/src/modules/chat/actions/index.jsx index ceeb647b..4c3304fa 100644 --- a/src/modules/chat/actions/index.jsx +++ b/src/modules/chat/actions/index.jsx @@ -158,7 +158,7 @@ export default class Actions extends Module { path: 'Chat > Actions > Room @{"description": "Here, you can define custom actions that will appear above the chat input box."}', component: 'chat-actions', context: ['room', 'room-mode'], - inline: true, + inline: false, data: () => { const chat = this.resolve('site.chat'); @@ -420,11 +420,38 @@ export default class Actions extends Module { renderRoom(mod_icons, current_user, current_room, is_above, createElement) { - const actions = [], + const lines = [], chat = this.resolve('site.chat'); + let line = null; for(const data of this.parent.context.get('chat.actions.room')) { - if ( ! data || ! data.action || ! data.appearance ) + if ( ! data ) + continue; + + const type = data.type; + if ( type ) { + if ( type === 'new-line' ) { + line = null; + + } else if ( type === 'space' ) { + if ( ! line ) + lines.push(line = []); + + line.push(
); + + } else if ( type === 'space-small' ) { + if ( ! line ) + lines.push(line = []); + + line.push(
); + + } else + this.log.warn('Unknown action type', type); + + continue; + } + + if ( ! data.action || ! data.appearance ) continue; let ap = data.appearance || {}; @@ -460,7 +487,10 @@ export default class Actions extends Module { color = has_color && (chat && chat.colors ? chat.colors.process(ap.color) : ap.color), contents = def.render.call(this, ap, createElement, color); - actions.push(
@@ -254,7 +266,7 @@