mirror of
https://github.com/FrankerFaceZ/FrankerFaceZ.git
synced 2025-07-24 19:48:30 +00:00
4.0.0-rc3.3.
* Update all usages of `tw-input` and `tw-select` to use the new, overly-verbose classes Twitch added. * Add a few of the monkey faces to the local emote code to make them work. * Override emotes when building the emote code <-> id map, to let emotes from higher sets override global emotes.
This commit is contained in:
parent
8befc8850b
commit
5626a3c389
20 changed files with 51 additions and 46 deletions
|
@ -1,4 +1,10 @@
|
||||||
<div class="list-header">4.0.0-rc3.1<span>@662c50c7e3e4ac110441</span> <time datetime="2018-05-31">(2018-06-27)</time></div>
|
<div class="list-header">4.0.0-rc3.3<span>@85ad2d458fb808c0365f</span> <time datetime="2018-06-29">(2018-06-29)</time></div>
|
||||||
|
<ul class="chat-menu-content menu-side-padding">
|
||||||
|
<li>Fixed: Update class names for all input elements to use Twitch's new, long-winded methodology.</li>
|
||||||
|
<li>Fixed: Some Prime smileys not appearing correctly locally.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div class="list-header">4.0.0-rc3.1<span>@662c50c7e3e4ac110441</span> <time datetime="2018-06-27">(2018-06-27)</time></div>
|
||||||
<ul class="chat-menu-content menu-side-padding">
|
<ul class="chat-menu-content menu-side-padding">
|
||||||
<li>Fixed: Display smileys like <code>:-)</code> correctly as emotes in locally echoed messages.</li>
|
<li>Fixed: Display smileys like <code>:-)</code> correctly as emotes in locally echoed messages.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -100,7 +100,7 @@ class FrankerFaceZ extends Module {
|
||||||
FrankerFaceZ.Logger = Logger;
|
FrankerFaceZ.Logger = Logger;
|
||||||
|
|
||||||
const VER = FrankerFaceZ.version_info = {
|
const VER = FrankerFaceZ.version_info = {
|
||||||
major: 4, minor: 0, revision: 0, extra: '-rc3.1',
|
major: 4, minor: 0, revision: 0, extra: '-rc3.3',
|
||||||
build: __webpack_hash__,
|
build: __webpack_hash__,
|
||||||
toString: () =>
|
toString: () =>
|
||||||
`${VER.major}.${VER.minor}.${VER.revision}${VER.extra || ''}${DEBUG ? '-dev' : ''}`
|
`${VER.major}.${VER.minor}.${VER.revision}${VER.extra || ''}${DEBUG ? '-dev' : ''}`
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
<input
|
<input
|
||||||
id="edit_reason"
|
id="edit_reason"
|
||||||
v-model.trim="value.reason"
|
v-model.trim="value.reason"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
@input="$emit('input', value)"
|
@input="$emit('input', value)"
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
id="edit_chat"
|
id="edit_chat"
|
||||||
v-model="value.command"
|
v-model="value.command"
|
||||||
:placeholder="defaults.command"
|
:placeholder="defaults.command"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
@input="$emit('input', value)"
|
@input="$emit('input', value)"
|
||||||
>
|
>
|
||||||
|
|
||||||
|
|
|
@ -10,17 +10,15 @@
|
||||||
{{ t('setting.actions.icon.search', 'Search for Icon') }}
|
{{ t('setting.actions.icon.search', 'Search for Icon') }}
|
||||||
</label>
|
</label>
|
||||||
<div class="tw-relative tw-mg-t-05">
|
<div class="tw-relative tw-mg-t-05">
|
||||||
<div class="tw-input__icon-group tw-top-0 tw-left-0 tw-z-default tw-absolute">
|
<div class="tw-absolute tw-align-items-center tw-c-text-alt-2 tw-flex tw-full-height tw-input__icon tw-justify-content-center tw-left-0 tw-top-0 tw-z-default">
|
||||||
<div class="tw-input__icon tw-c-text-alt-2 tw-align-items-center tw-flex tw-justify-content-center">
|
|
||||||
<figure class="ffz-i-search" />
|
<figure class="ffz-i-search" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<input
|
<input
|
||||||
id="icon-search"
|
id="icon-search"
|
||||||
:placeholder="t('setting.actions.icon.search', 'Search for Icon')"
|
:placeholder="t('setting.actions.icon.search', 'Search for Icon')"
|
||||||
v-model="search"
|
v-model="search"
|
||||||
type="search"
|
type="search"
|
||||||
class="tw-input tw-pd-l-3"
|
class="tw-block tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-l-3 tw-pd-r-1 tw-pd-y-05"
|
||||||
autocapitalize="off"
|
autocapitalize="off"
|
||||||
autocorrect="off"
|
autocorrect="off"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<input
|
<input
|
||||||
id="edit_image"
|
id="edit_image"
|
||||||
v-model="value.image"
|
v-model="value.image"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
@input="$emit('input', value)"
|
@input="$emit('input', value)"
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<input
|
<input
|
||||||
id="edit_text"
|
id="edit_text"
|
||||||
v-model="value.text"
|
v-model="value.text"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
@input="$emit('input', value)"
|
@input="$emit('input', value)"
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
id="edit_duration"
|
id="edit_duration"
|
||||||
v-model.number="value.duration"
|
v-model.number="value.duration"
|
||||||
:placeholder="defaults.duration"
|
:placeholder="defaults.duration"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
type="number"
|
type="number"
|
||||||
@input="$emit('input', value)"
|
@input="$emit('input', value)"
|
||||||
>
|
>
|
||||||
|
@ -23,7 +23,7 @@
|
||||||
<input
|
<input
|
||||||
id="edit_reason"
|
id="edit_reason"
|
||||||
v-model.trim="value.reason"
|
v-model.trim="value.reason"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
@input="$emit('input', value)"
|
@input="$emit('input', value)"
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
id="edit_url"
|
id="edit_url"
|
||||||
v-model="value.url"
|
v-model="value.url"
|
||||||
:placeholder="defaults.url"
|
:placeholder="defaults.url"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
@input="$emit('input', value)"
|
@input="$emit('input', value)"
|
||||||
>
|
>
|
||||||
|
|
||||||
|
|
|
@ -683,10 +683,7 @@ export const AddonEmotes = {
|
||||||
if ( source === '--global--' || emote_id === 80393 )
|
if ( source === '--global--' || emote_id === 80393 )
|
||||||
source = this.i18n.t('emote.global', 'Twitch Global');
|
source = this.i18n.t('emote.global', 'Twitch Global');
|
||||||
|
|
||||||
else if ( source === '--twitch-turbo--' || source === 'turbo' || source === '--turbo-faces--' )
|
else if ( source === '--twitch-turbo--' || source === 'turbo' || source === '--turbo-faces--' || source === '--prime--' || source === '--prime-faces--' )
|
||||||
source = this.i18n.t('emote.turbo', 'Twitch Turbo');
|
|
||||||
|
|
||||||
else if ( source === '--prime--' || source === '--prime-faces--' )
|
|
||||||
source = this.i18n.t('emote.prime', 'Twitch Prime');
|
source = this.i18n.t('emote.prime', 'Twitch Prime');
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
|
|
||||||
<input
|
<input
|
||||||
v-model="edit_data.appearance.tooltip"
|
v-model="edit_data.appearance.tooltip"
|
||||||
class="tw-mg-y-05 tw-input tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-y-05"
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@
|
||||||
id="renderer_type"
|
id="renderer_type"
|
||||||
ref="renderer_type"
|
ref="renderer_type"
|
||||||
v-model="edit_data.appearance.type"
|
v-model="edit_data.appearance.type"
|
||||||
class="tw-mg-y-05 tw-select tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-y-05"
|
||||||
>
|
>
|
||||||
<option
|
<option
|
||||||
v-for="(r, key) in data.renderers"
|
v-for="(r, key) in data.renderers"
|
||||||
|
@ -80,7 +80,7 @@
|
||||||
<select
|
<select
|
||||||
id="vis_mod"
|
id="vis_mod"
|
||||||
v-model="edit_data.display.mod"
|
v-model="edit_data.display.mod"
|
||||||
class="tw-mg-y-05 tw-select tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-y-05"
|
||||||
>
|
>
|
||||||
<option :value="undefined" selected>{{ t('setting.unset', 'Unset') }}</option>
|
<option :value="undefined" selected>{{ t('setting.unset', 'Unset') }}</option>
|
||||||
<option :value="true">{{ t('setting.true', 'True') }}</option>
|
<option :value="true">{{ t('setting.true', 'True') }}</option>
|
||||||
|
@ -96,7 +96,7 @@
|
||||||
<select
|
<select
|
||||||
id="vis_mod_icons"
|
id="vis_mod_icons"
|
||||||
v-model="edit_data.display.mod_icons"
|
v-model="edit_data.display.mod_icons"
|
||||||
class="tw-mg-y-05 tw-select tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-y-05"
|
||||||
>
|
>
|
||||||
<option :value="undefined" selected>{{ t('setting.unset', 'Unset') }}</option>
|
<option :value="undefined" selected>{{ t('setting.unset', 'Unset') }}</option>
|
||||||
<option :value="true">{{ t('setting.visible', 'Visible') }}</option>
|
<option :value="true">{{ t('setting.visible', 'Visible') }}</option>
|
||||||
|
@ -112,7 +112,7 @@
|
||||||
<select
|
<select
|
||||||
id="vis_deleted"
|
id="vis_deleted"
|
||||||
v-model="edit_data.display.deleted"
|
v-model="edit_data.display.deleted"
|
||||||
class="tw-mg-y-05 tw-select tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-y-05"
|
||||||
>
|
>
|
||||||
<option :value="undefined" selected>{{ t('setting.unset', 'Unset') }}</option>
|
<option :value="undefined" selected>{{ t('setting.unset', 'Unset') }}</option>
|
||||||
<option :value="true">{{ t('setting.true', 'True') }}</option>
|
<option :value="true">{{ t('setting.true', 'True') }}</option>
|
||||||
|
@ -132,7 +132,7 @@
|
||||||
<select
|
<select
|
||||||
id="action_type"
|
id="action_type"
|
||||||
v-model="edit_data.action"
|
v-model="edit_data.action"
|
||||||
class="tw-mg-y-05 tw-select tw-display-inline"
|
class="tw-border-radius-medium tw-font-size-6 tw-full-width tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-y-05"
|
||||||
>
|
>
|
||||||
<option
|
<option
|
||||||
v-for="(a, key) in data.actions"
|
v-for="(a, key) in data.actions"
|
||||||
|
|
|
@ -135,7 +135,7 @@
|
||||||
v-else
|
v-else
|
||||||
:key="idx"
|
:key="idx"
|
||||||
:disabled="preset.disabled"
|
:disabled="preset.disabled"
|
||||||
class="tw-interactable"
|
class="tw-interactable tw-full-width"
|
||||||
@click="add(preset.value)"
|
@click="add(preset.value)"
|
||||||
>
|
>
|
||||||
<div class="tw-flex tw-align-items-center tw-pd-y-05 tw-pd-x-1">
|
<div class="tw-flex tw-align-items-center tw-pd-y-05 tw-pd-x-1">
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
v-bind="$attrs"
|
v-bind="$attrs"
|
||||||
v-model="color"
|
v-model="color"
|
||||||
type="text"
|
type="text"
|
||||||
class="tw-input tw-pd-r-3"
|
class="tw-block tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-y-05"
|
||||||
autocapitalize="off"
|
autocapitalize="off"
|
||||||
autocorrect="off"
|
autocorrect="off"
|
||||||
autocomplete="off"
|
autocomplete="off"
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
</div>
|
</div>
|
||||||
<select
|
<select
|
||||||
ref="sort_select"
|
ref="sort_select"
|
||||||
class="tw-mg-x-05 tw-select tw-display-line tw-width-auto"
|
class="tw-border-radius-medium tw-font-size-6 tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-x-05"
|
||||||
@change="onSort"
|
@change="onSort"
|
||||||
>
|
>
|
||||||
<option :selected="sort_by === 0">{{ t('setting.experiments.sort-name', 'Sort By: Name') }}</option>
|
<option :selected="sort_by === 0">{{ t('setting.experiments.sort-name', 'Sort By: Name') }}</option>
|
||||||
|
@ -40,7 +40,7 @@
|
||||||
<div class="tw-flex tw-flex-shrink-0 tw-align-items-start">
|
<div class="tw-flex tw-flex-shrink-0 tw-align-items-start">
|
||||||
<select
|
<select
|
||||||
:data-key="key"
|
:data-key="key"
|
||||||
class="tw-mg-05 tw-select tw-display-line tw-width-auto"
|
class="tw-border-radius-medium tw-font-size-6 tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-x-05"
|
||||||
@change="onChange($event)"
|
@change="onChange($event)"
|
||||||
>
|
>
|
||||||
<option
|
<option
|
||||||
|
@ -108,7 +108,7 @@
|
||||||
<div class="tw-flex tw-flex-shrink-0 tw-align-items-start">
|
<div class="tw-flex tw-flex-shrink-0 tw-align-items-start">
|
||||||
<select
|
<select
|
||||||
:data-key="key"
|
:data-key="key"
|
||||||
class="tw-mg-05 tw-select tw-display-line tw-width-auto"
|
class="tw-border-radius-medium tw-font-size-6 tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-x-05"
|
||||||
@change="onTwitchChange($event)"
|
@change="onTwitchChange($event)"
|
||||||
>
|
>
|
||||||
<option
|
<option
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
ref="button"
|
ref="button"
|
||||||
:class="{active: opened}"
|
:class="{active: opened}"
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
class="tw-select"
|
class="tw-block tw-border-radius-medium tw-font-size-6 tw-full-width tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05"
|
||||||
@keyup.up.stop.prevent="focusShow"
|
@keyup.up.stop.prevent="focusShow"
|
||||||
@keyup.left.stop.prevent="focusShow"
|
@keyup.left.stop.prevent="focusShow"
|
||||||
@keyup.down.stop.prevent="focusShow"
|
@keyup.down.stop.prevent="focusShow"
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<select
|
<select
|
||||||
ref="control"
|
ref="control"
|
||||||
:id="item.full_key"
|
:id="item.full_key"
|
||||||
class="tw-mg-05 tw-select tw-display-inline tw-width-auto"
|
class="tw-border-radius-medium tw-font-size-6 tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 tw-mg-05"
|
||||||
@change="onChange"
|
@change="onChange"
|
||||||
>
|
>
|
||||||
<option
|
<option
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
ref="control"
|
ref="control"
|
||||||
:id="item.full_key"
|
:id="item.full_key"
|
||||||
:value="value"
|
:value="value"
|
||||||
class="tw-mg-05 tw-input tw-display-inline tw-width-auto"
|
class="tw-border-radius-medium tw-font-size-6 tw-input tw-pd-x-1 tw-pd-y-05 tw-mg-05 tw-input"
|
||||||
@change="onChange"
|
@change="onChange"
|
||||||
>
|
>
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
v-model="edit_data.v"
|
v-model="edit_data.v"
|
||||||
:placeholder="adding ? t('setting.terms.add-placeholder', 'Add a new term') : edit_data.v"
|
:placeholder="adding ? t('setting.terms.add-placeholder', 'Add a new term') : edit_data.v"
|
||||||
type="text"
|
type="text"
|
||||||
class="tw-input"
|
class="tw-block tw-full-width tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05"
|
||||||
autocapitalize="off"
|
autocapitalize="off"
|
||||||
autocorrect="off"
|
autocorrect="off"
|
||||||
>
|
>
|
||||||
|
@ -37,7 +37,11 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="tw-flex-shrink-0 tw-mg-x-05">
|
<div class="tw-flex-shrink-0 tw-mg-x-05">
|
||||||
<span v-if="! editing">{{ term_type }}</span>
|
<span v-if="! editing">{{ term_type }}</span>
|
||||||
<select v-else v-model="edit_data.t" class="tw-select ffz-min-width-unset">
|
<select
|
||||||
|
v-else
|
||||||
|
v-model="edit_data.t"
|
||||||
|
class="tw-block tw-border-radius-medium tw-font-size-6 tw-select tw-pd-l-1 tw-pd-r-3 tw-pd-y-05 ffz-min-width-unset"
|
||||||
|
>
|
||||||
<option value="text">{{ t('setting.terms.type.text', 'Text') }}</option>
|
<option value="text">{{ t('setting.terms.type.text', 'Text') }}</option>
|
||||||
<option value="glob">{{ t('setting.terms.type.glob', 'Glob') }}</option>
|
<option value="glob">{{ t('setting.terms.type.glob', 'Glob') }}</option>
|
||||||
<option value="regex">{{ t('setting.terms.type.regex-word', 'Regex (Word)') }}</option>
|
<option value="regex">{{ t('setting.terms.type.regex-word', 'Regex (Word)') }}</option>
|
||||||
|
|
|
@ -809,11 +809,7 @@ export default class EmoteMenu extends Module {
|
||||||
title = t.i18n.t('emote-menu.global', 'Global Emotes');
|
title = t.i18n.t('emote-menu.global', 'Global Emotes');
|
||||||
sort_key = 100;
|
sort_key = 100;
|
||||||
|
|
||||||
} else if ( title === '--twitch-turbo--' || title === 'turbo' || title === '--turbo-faces--' ) {
|
} else if ( title === '--twitch-turbo--' || title === 'turbo' || title === '--turbo-faces--' || title === '--prime--' || title === '--prime-faces--' ) {
|
||||||
title = t.i18n.t('emote-menu.turbo', 'Turbo');
|
|
||||||
sort_key = 75;
|
|
||||||
|
|
||||||
} else if ( title === '--prime--' || title === '--prime-faces--' ) {
|
|
||||||
title = t.i18n.t('emote-menu.prime', 'Prime');
|
title = t.i18n.t('emote-menu.prime', 'Prime');
|
||||||
icon = 'crown';
|
icon = 'crown';
|
||||||
sort_key = 75;
|
sort_key = 75;
|
||||||
|
@ -1232,7 +1228,7 @@ export default class EmoteMenu extends Module {
|
||||||
<div class="tw-relative">
|
<div class="tw-relative">
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
class="tw-input"
|
class="tw-block tw-border-radius-medium tw-font-size-6 tw-full-width tw-input tw-pd-x-1 tw-pd-y-05"
|
||||||
onChange={this.handleFilterChange}
|
onChange={this.handleFilterChange}
|
||||||
onKeyDown={this.handleKeyDown}
|
onKeyDown={this.handleKeyDown}
|
||||||
placeholder={t.i18n.t('emote-menu.search', 'Search for Emotes')}
|
placeholder={t.i18n.t('emote-menu.search', 'Search for Emotes')}
|
||||||
|
|
|
@ -34,7 +34,12 @@ const REGEX_EMOTES = {
|
||||||
'\\:-?\\(': [':(', ':-('],
|
'\\:-?\\(': [':(', ':-('],
|
||||||
'\\:-?\\)': [':)', ':-)'],
|
'\\:-?\\)': [':)', ':-)'],
|
||||||
'\\;-?(p|P)': [';p', ';P', ';-p', ';-P'],
|
'\\;-?(p|P)': [';p', ';P', ';-p', ';-P'],
|
||||||
'\\;-?\\)': [';)', ';-)']
|
'\\;-?\\)': [';)', ';-)'],
|
||||||
|
'#-?[\\\\/]': ['#/', '#-/', '#//', '#-//'],
|
||||||
|
':-?(?:7|L)': [':7', ':L', ':-7', ':-L'],
|
||||||
|
'\\<\\;\\]': ['<]'],
|
||||||
|
'\\:-?(S|s)': [':s', ':S', ':-s', ':-S'],
|
||||||
|
'\\:\\>\\;': [':>']
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -598,12 +603,11 @@ export default class ChatHook extends Module {
|
||||||
for(const emote of set.emotes)
|
for(const emote of set.emotes)
|
||||||
if ( emote ) {
|
if ( emote ) {
|
||||||
const token = emote.token;
|
const token = emote.token;
|
||||||
if ( has(REGEX_EMOTES, token) ) {
|
if ( Array.isArray(REGEX_EMOTES[token]) ) {
|
||||||
for(const token of REGEX_EMOTES[token] )
|
for(const tok of REGEX_EMOTES[token] )
|
||||||
if ( ! has(emotes, token) )
|
emotes[tok] = emote.id;
|
||||||
emotes[token] = emote.id;
|
|
||||||
|
|
||||||
} else if ( ! has(emotes, token) )
|
} else
|
||||||
emotes[token] = emote.id;
|
emotes[token] = emote.id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue