add support for misskey-like cat fields (is cat & speak as cat) and frontend options for this
This commit is contained in:
parent
5941619a2a
commit
0b05ec0ce1
15 changed files with 243 additions and 3 deletions
|
|
@ -86,6 +86,9 @@ const StatusContent = {
|
|||
translationLanguages () {
|
||||
return (this.$store.state.instance.supportedTranslationLanguages.source || []).map(lang => ({ key: lang.code, value: lang.code, label: lang.name }))
|
||||
},
|
||||
canSpeakAsCat () {
|
||||
return (this.$store.getters.mergedConfig.nyaizePosts && this.status.user.speak_as_cat)
|
||||
},
|
||||
...mapGetters(['mergedConfig'])
|
||||
},
|
||||
components: {
|
||||
|
|
@ -140,6 +143,16 @@ const StatusContent = {
|
|||
this.$store.dispatch(
|
||||
'translateStatus', { id: this.status.id, language: translateTo, from: this.translateFrom }
|
||||
).finally(() => { this.translating = false })
|
||||
},
|
||||
speakAsCat () {
|
||||
// taken from https://github.com/misskey-dev/misskey/blob/develop/packages/misskey-js/src/nyaize.ts
|
||||
const enRegex1 = /(?<=n)a/gi
|
||||
const enRegex2 = /(?<=morn)ing/gi
|
||||
const enRegex3 = /(?<=every)one/gi
|
||||
return this.status.text
|
||||
.replace(enRegex1, x => x === 'A' ? 'YA' : 'ya')
|
||||
.replace(enRegex2, x => x === 'ING' ? 'YAN' : 'yan')
|
||||
.replace(enRegex3, x => x === 'ONE' ? 'NYAN' : 'nyan')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue