forked from AkkomaGang/akkoma-fe
resolve conflicts prior to merge
This commit is contained in:
parent
8fb5aa80c6
commit
97eb259cca
2 changed files with 51 additions and 0 deletions
50
src/modules/recentEmojis.js
Normal file
50
src/modules/recentEmojis.js
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
// each row is 7 emojis, 6 rows chosen arbitrarily. i don't think more than
|
||||||
|
// that are going to be useful.
|
||||||
|
const RECENT_MAX = 7 * 6
|
||||||
|
|
||||||
|
const defaultState = {
|
||||||
|
emojis: [],
|
||||||
|
}
|
||||||
|
|
||||||
|
const recentEmojis = {
|
||||||
|
state: defaultState,
|
||||||
|
|
||||||
|
mutations: {
|
||||||
|
emojiUsed ({ emojis }, emoji) {
|
||||||
|
if (emoji.displayText === undefined || emoji.displayText === null) {
|
||||||
|
console.error('emojiUsed was called with a bad emoji object: ', emoji)
|
||||||
|
return
|
||||||
|
} else if (emoji.displayText.includes('@')) {
|
||||||
|
console.error('emojiUsed was called with a remote emoji: ', emoji)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
const i = emojis.indexOf(emoji.displayText)
|
||||||
|
|
||||||
|
if (i === -1) {
|
||||||
|
// not in `emojis` yet, insert and truncate if necessary
|
||||||
|
const newLength = emojis.unshift(emoji.displayText)
|
||||||
|
if (newLength > RECENT_MAX) {
|
||||||
|
emojis.pop()
|
||||||
|
}
|
||||||
|
} else if (i !== 0) {
|
||||||
|
// emoji is already in `emojis` but needs to be bumped to the top
|
||||||
|
emojis.splice(i, 1)
|
||||||
|
emojis.unshift(emoji.displayText)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
getters: {
|
||||||
|
recentEmojis: (state, getters, rootState) => state.emojis.reduce((objects, displayText) => {
|
||||||
|
const allEmojis = rootState.instance.emoji.concat(rootState.instance.customEmoji)
|
||||||
|
let emojiObject = allEmojis.find(emoji => emoji.displayText === displayText)
|
||||||
|
if (emojiObject !== undefined) {
|
||||||
|
objects.push(emojiObject)
|
||||||
|
}
|
||||||
|
return objects
|
||||||
|
}, []),
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
export default recentEmojis
|
|
@ -0,0 +1 @@
|
||||||
|
dummy file to appease silly git conflict
|
Loading…
Reference in a new issue