manual lint --fix
This commit is contained in:
parent
d9aca590bb
commit
d1ea589531
76 changed files with 187 additions and 184 deletions
|
@ -47,10 +47,10 @@ export default {
|
|||
mobileActivePanel: 'timeline'
|
||||
}),
|
||||
watch: {
|
||||
themeApplied (value) {
|
||||
themeApplied () {
|
||||
this.removeSplash()
|
||||
},
|
||||
layoutType (value) {
|
||||
layoutType () {
|
||||
document.getElementById('modal').classList = ['-' + this.layoutType]
|
||||
}
|
||||
},
|
||||
|
|
|
@ -79,7 +79,7 @@ const getInstanceConfig = async ({ store }) => {
|
|||
}
|
||||
}
|
||||
|
||||
const getBackendProvidedConfig = async ({ store }) => {
|
||||
const getBackendProvidedConfig = async () => {
|
||||
try {
|
||||
const res = await window.fetch('/api/pleroma/frontend_configurations')
|
||||
if (res.ok) {
|
||||
|
|
|
@ -43,7 +43,7 @@ export default (store) => {
|
|||
{
|
||||
name: 'root',
|
||||
path: '/',
|
||||
redirect: _to => {
|
||||
redirect: () => {
|
||||
return (store.state.users.currentUser
|
||||
? store.state.instance.redirectRootLogin
|
||||
: store.state.instance.redirectRootNoLogin) || '/main/all'
|
||||
|
|
|
@ -145,7 +145,7 @@ const Attachment = {
|
|||
window.open(target.href, '_blank')
|
||||
}
|
||||
},
|
||||
openModal (event) {
|
||||
openModal () {
|
||||
if (this.useModal) {
|
||||
this.$emit('setMedia')
|
||||
useMediaViewerStore().setCurrentMedia(this.attachment)
|
||||
|
@ -153,7 +153,7 @@ const Attachment = {
|
|||
window.open(this.attachment.url)
|
||||
}
|
||||
},
|
||||
openModalForce (event) {
|
||||
openModalForce () {
|
||||
this.$emit('setMedia')
|
||||
useMediaViewerStore().setCurrentMedia(this.attachment)
|
||||
},
|
||||
|
|
|
@ -52,7 +52,7 @@ const ChatListItem = {
|
|||
}
|
||||
},
|
||||
methods: {
|
||||
openChat (_e) {
|
||||
openChat () {
|
||||
if (this.chat.id) {
|
||||
this.$router.push({
|
||||
name: 'chat',
|
||||
|
|
|
@ -53,7 +53,7 @@ export default {
|
|||
}
|
||||
},
|
||||
methods: {
|
||||
onTransitionEnd (e) {
|
||||
onTransitionEnd () {
|
||||
if (!this.indeterminate) {
|
||||
this.indeterminateTransitionFix = false
|
||||
}
|
||||
|
|
|
@ -114,7 +114,7 @@ const conversation = {
|
|||
suspendable () {
|
||||
if (this.isTreeView) {
|
||||
return Object.entries(this.statusContentProperties)
|
||||
.every(([k, prop]) => !prop.replying && prop.mediaPlaying.length === 0)
|
||||
.every(([, prop]) => !prop.replying && prop.mediaPlaying.length === 0)
|
||||
}
|
||||
if (this.$refs.statusComponent && this.$refs.statusComponent[0]) {
|
||||
return this.$refs.statusComponent.every(s => s.suspendable)
|
||||
|
@ -273,10 +273,7 @@ const conversation = {
|
|||
replies () {
|
||||
let i = 1
|
||||
|
||||
return reduce(this.conversation, (result, { id, in_reply_to_status_id }) => {
|
||||
|
||||
const irid = in_reply_to_status_id
|
||||
|
||||
return reduce(this.conversation, (result, { id, in_reply_to_status_id: irid }) => {
|
||||
if (irid) {
|
||||
result[irid] = result[irid] || []
|
||||
result[irid].push({
|
||||
|
@ -381,7 +378,7 @@ const conversation = {
|
|||
this.resetDisplayState()
|
||||
}
|
||||
},
|
||||
virtualHidden (value) {
|
||||
virtualHidden () {
|
||||
this.$store.dispatch(
|
||||
'setVirtualHeight',
|
||||
{ statusId: this.statusId, height: `${this.$el.clientHeight}px` }
|
||||
|
@ -477,7 +474,7 @@ const conversation = {
|
|||
// nothing found, fall back to toplevel
|
||||
return this.topLevel[0] ? this.topLevel[0].id : undefined
|
||||
},
|
||||
diveIntoStatus (id, preventScroll) {
|
||||
diveIntoStatus (id) {
|
||||
this.tryScrollTo(id)
|
||||
},
|
||||
diveToTopLevel () {
|
||||
|
|
|
@ -265,7 +265,7 @@ const EmojiInput = {
|
|||
}
|
||||
},
|
||||
watch: {
|
||||
showSuggestions: function (newValue, oldValue) {
|
||||
showSuggestions: function (newValue) {
|
||||
this.$emit('shown', newValue)
|
||||
if (newValue) {
|
||||
this.$refs.suggestorPopover.showPopover()
|
||||
|
|
|
@ -116,7 +116,6 @@ export const suggestUsers = ({ dispatch, state }) => {
|
|||
const screenNameAlphabetically = a.screen_name > b.screen_name ? 1 : -1
|
||||
|
||||
return diff + nameAlphabetically + screenNameAlphabetically
|
||||
|
||||
}).map((user) => ({
|
||||
user,
|
||||
displayText: user.screen_name_ui,
|
||||
|
@ -125,7 +124,6 @@ export const suggestUsers = ({ dispatch, state }) => {
|
|||
replacement: '@' + user.screen_name + ' '
|
||||
}))
|
||||
|
||||
|
||||
suggestions = newSuggestions || []
|
||||
return suggestions
|
||||
}
|
||||
|
|
|
@ -352,7 +352,7 @@ const EmojiPicker = {
|
|||
},
|
||||
allEmojiGroups () {
|
||||
return Object.entries(this.allCustomGroups)
|
||||
.map(([_, v]) => v)
|
||||
.map(([, v]) => v)
|
||||
.concat(this.unicodeEmojiGroups)
|
||||
},
|
||||
stickerPickerEnabled () {
|
||||
|
|
|
@ -71,7 +71,7 @@ const EmojiReactions = {
|
|||
unreact (emoji) {
|
||||
this.$store.dispatch('unreactWithEmoji', { id: this.status.id, emoji })
|
||||
},
|
||||
async emojiOnClick (emoji, event) {
|
||||
async emojiOnClick (emoji) {
|
||||
if (!this.loggedIn) return
|
||||
|
||||
await this.fetchEmojiReactionsByIfMissing()
|
||||
|
|
|
@ -37,7 +37,7 @@ export default {
|
|||
},
|
||||
getClass: {
|
||||
type: Function,
|
||||
default: item => ''
|
||||
default: () => ''
|
||||
},
|
||||
nonInteractive: {
|
||||
type: Boolean,
|
||||
|
|
|
@ -104,10 +104,10 @@ const ListsNew = {
|
|||
removeUser (userId) {
|
||||
useListsStore().removeListAccount({ accountId: userId, listId: this.id })
|
||||
},
|
||||
onSearchLoading (results) {
|
||||
onSearchLoading () {
|
||||
this.searchLoading = true
|
||||
},
|
||||
onSearchLoadingDone (results) {
|
||||
onSearchLoadingDone () {
|
||||
this.searchLoading = false
|
||||
},
|
||||
onSearchResults (results) {
|
||||
|
|
|
@ -96,12 +96,14 @@ const MentionLink = {
|
|||
},
|
||||
style () {
|
||||
if (this.highlight) {
|
||||
/* eslint-disable no-unused-vars */
|
||||
const {
|
||||
backgroundColor,
|
||||
backgroundPosition,
|
||||
backgroundImage,
|
||||
...rest
|
||||
} = highlightStyle(this.highlight)
|
||||
/* eslint-enable no-unused-vars */
|
||||
return rest
|
||||
}
|
||||
},
|
||||
|
|
|
@ -25,6 +25,7 @@ export default {
|
|||
default: false
|
||||
}
|
||||
},
|
||||
emits: ['backdropClicked'],
|
||||
computed: {
|
||||
classes () {
|
||||
return {
|
||||
|
|
|
@ -100,7 +100,7 @@ const ModerationTools = {
|
|||
const user = this.user
|
||||
const { id, name } = user
|
||||
store.state.api.backendInteractor.deleteUser({ user })
|
||||
.then(e => {
|
||||
.then(() => {
|
||||
this.$store.dispatch('markStatusesAsDeleted', status => user.id === status.user.id)
|
||||
const isProfile = this.$route.name === 'external-user-profile' || this.$route.name === 'user-profile'
|
||||
const isTargetUser = this.$route.params.name === name || this.$route.params.id === id
|
||||
|
|
|
@ -87,7 +87,7 @@ const paletteExporter = newExporter({
|
|||
})
|
||||
const paletteImporter = newImporter({
|
||||
accept: '.json',
|
||||
onImport (parsed, filename) {
|
||||
onImport (parsed) {
|
||||
emit('update:modelValue', parsed)
|
||||
}
|
||||
})
|
||||
|
@ -100,7 +100,7 @@ const importPalette = () => {
|
|||
paletteImporter.importData()
|
||||
}
|
||||
|
||||
const applyPalette = (data) => {
|
||||
const applyPalette = () => {
|
||||
emit('applyPalette', getExportedObject())
|
||||
}
|
||||
|
||||
|
|
|
@ -107,7 +107,7 @@ export default {
|
|||
this.loading = true
|
||||
usePollsStore().votePoll(
|
||||
{ id: this.statusId, pollId: this.poll.id, choices: this.choiceIndices }
|
||||
).then(poll => {
|
||||
).then(() => {
|
||||
this.loading = false
|
||||
})
|
||||
}
|
||||
|
|
|
@ -105,7 +105,7 @@ export default {
|
|||
}
|
||||
return false
|
||||
},
|
||||
deleteOption (index, event) {
|
||||
deleteOption (index) {
|
||||
if (this.options.length > 2) {
|
||||
this.options.splice(index, 1)
|
||||
}
|
||||
|
|
|
@ -280,7 +280,7 @@ const Popover = {
|
|||
this.updateStyles()
|
||||
}, 1)
|
||||
},
|
||||
onMouseenter (e) {
|
||||
onMouseenter () {
|
||||
if (this.trigger === 'hover') {
|
||||
this.lockReEntry = false
|
||||
clearTimeout(this.graceTimeout)
|
||||
|
@ -288,12 +288,12 @@ const Popover = {
|
|||
this.showPopover()
|
||||
}
|
||||
},
|
||||
onMouseleave (e) {
|
||||
onMouseleave () {
|
||||
if (this.trigger === 'hover' && this.childrenShown.size === 0) {
|
||||
this.graceTimeout = setTimeout(() => this.hidePopover(), 1)
|
||||
}
|
||||
},
|
||||
onMouseenterContent (e) {
|
||||
onMouseenterContent () {
|
||||
if (this.trigger === 'hover' && !this.lockReEntry) {
|
||||
this.lockReEntry = true
|
||||
clearTimeout(this.graceTimeout)
|
||||
|
@ -301,12 +301,12 @@ const Popover = {
|
|||
this.showPopover()
|
||||
}
|
||||
},
|
||||
onMouseleaveContent (e) {
|
||||
onMouseleaveContent () {
|
||||
if (this.trigger === 'hover' && this.childrenShown.size === 0) {
|
||||
this.graceTimeout = setTimeout(() => this.hidePopover(), 1)
|
||||
}
|
||||
},
|
||||
onClick (e) {
|
||||
onClick () {
|
||||
if (this.trigger === 'click') {
|
||||
if (this.hidden) {
|
||||
this.showPopover()
|
||||
|
@ -324,10 +324,10 @@ const Popover = {
|
|||
this.hidePopover()
|
||||
if (this.parentPopover) this.parentPopover.onClickOutside(e)
|
||||
},
|
||||
onScroll (e) {
|
||||
onScroll () {
|
||||
this.updateStyles()
|
||||
},
|
||||
onResize (e) {
|
||||
onResize () {
|
||||
const content = this.$refs.content
|
||||
if (!content) return
|
||||
if (this.oldSize.width !== content.offsetWidth || this.oldSize.height !== content.offsetHeight) {
|
||||
|
|
|
@ -433,7 +433,7 @@ const PostStatusForm = {
|
|||
if (this.preview) this.previewStatus()
|
||||
this.saveable = false
|
||||
},
|
||||
async postStatus (event, newStatus, opts = {}) {
|
||||
async postStatus (event, newStatus) {
|
||||
if (this.posting && !this.optimisticPosting) { return }
|
||||
if (this.disableSubmit) { return }
|
||||
if (this.emojiInputShown) { return }
|
||||
|
@ -459,7 +459,7 @@ const PostStatusForm = {
|
|||
|
||||
try {
|
||||
await this.setAllMediaDescriptions()
|
||||
} catch (e) {
|
||||
} catch {
|
||||
this.error = this.$t('post_status.media_description_error')
|
||||
this.posting = false
|
||||
return
|
||||
|
@ -603,7 +603,7 @@ const PostStatusForm = {
|
|||
this.showDropIcon = 'hide'
|
||||
}
|
||||
},
|
||||
fileDragStop (e) {
|
||||
fileDragStop () {
|
||||
// The false-setting is done with delay because just using leave-events
|
||||
// directly caused unwanted flickering, this is not perfect either but
|
||||
// much less noticable.
|
||||
|
@ -618,7 +618,7 @@ const PostStatusForm = {
|
|||
this.showDropIcon = 'show'
|
||||
}
|
||||
},
|
||||
onEmojiInputInput (e) {
|
||||
onEmojiInputInput () {
|
||||
this.$nextTick(() => {
|
||||
this.resize(this.$refs.textarea)
|
||||
})
|
||||
|
|
|
@ -2,7 +2,6 @@ export default {
|
|||
props: ['user'],
|
||||
computed: {
|
||||
subscribeUrl () {
|
||||
|
||||
const serverUrl = new URL(this.user.statusnet_profile_url)
|
||||
return `${serverUrl.protocol}//${serverUrl.host}/main/ostatus`
|
||||
}
|
||||
|
|
|
@ -93,7 +93,7 @@ const EmojiTab = {
|
|||
this.displayError(resp.error)
|
||||
return Promise.reject(resp)
|
||||
}
|
||||
}).then(done => {
|
||||
}).then(() => {
|
||||
this.$refs.createPackPopover.hidePopover()
|
||||
|
||||
this.packName = this.newPackName
|
||||
|
@ -110,7 +110,7 @@ const EmojiTab = {
|
|||
this.displayError(resp.error)
|
||||
return Promise.reject(resp)
|
||||
}
|
||||
}).then(done => {
|
||||
}).then(() => {
|
||||
delete this.editedMetadata[this.packName]
|
||||
|
||||
this.deleteModalVisible = false
|
||||
|
@ -167,7 +167,7 @@ const EmojiTab = {
|
|||
|
||||
return resultingPromise
|
||||
})
|
||||
.then(finished => allPacks)
|
||||
.then(() => allPacks)
|
||||
.catch(data => {
|
||||
this.displayError(data)
|
||||
})
|
||||
|
@ -226,7 +226,7 @@ const EmojiTab = {
|
|||
this.displayError(resp.error)
|
||||
return Promise.reject(resp)
|
||||
}
|
||||
}).then(done => {
|
||||
}).then(() => {
|
||||
this.packName = this.remotePackDownloadAs
|
||||
this.remotePackDownloadAs = ''
|
||||
})
|
||||
|
|
|
@ -67,7 +67,7 @@ const AppearanceTab = {
|
|||
value: i - 1,
|
||||
label: this.$t(`settings.style.themes3.hacks.forced_roundness_mode_${mode}`)
|
||||
})),
|
||||
underlayOverrideModes: ['none', 'opaque', 'transparent'].map((mode, i) => ({
|
||||
underlayOverrideModes: ['none', 'opaque', 'transparent'].map((mode) => ({
|
||||
key: mode,
|
||||
value: mode,
|
||||
label: this.$t(`settings.style.themes3.hacks.underlay_override_mode_${mode}`)
|
||||
|
@ -234,7 +234,7 @@ const AppearanceTab = {
|
|||
cOrange,
|
||||
wallpaper
|
||||
}
|
||||
return Object.fromEntries(Object.entries(result).filter(([k, v]) => v))
|
||||
return Object.fromEntries(Object.entries(result).filter(([, v]) => v))
|
||||
})
|
||||
return result
|
||||
},
|
||||
|
@ -276,7 +276,7 @@ const AppearanceTab = {
|
|||
const { customTheme, customThemeSource } = this.mergedConfig
|
||||
return customTheme != null || customThemeSource != null
|
||||
},
|
||||
isCustomStyleUsed (name) {
|
||||
isCustomStyleUsed () {
|
||||
const { styleCustomData } = this.mergedConfig
|
||||
return styleCustomData != null
|
||||
},
|
||||
|
@ -348,7 +348,7 @@ const AppearanceTab = {
|
|||
useInterfaceStore().setPaletteCustom(data)
|
||||
this.userPalette = data
|
||||
},
|
||||
resetTheming (name) {
|
||||
resetTheming () {
|
||||
useInterfaceStore().setStyle('stock')
|
||||
},
|
||||
previewTheme (key, version, input) {
|
||||
|
@ -378,7 +378,7 @@ const AppearanceTab = {
|
|||
directives: Object.fromEntries(
|
||||
Object
|
||||
.entries(directives)
|
||||
.filter(([k, v]) => k && k !== 'name')
|
||||
.filter(([k]) => k && k !== 'name')
|
||||
.map(([k, v]) => ['--' + k, 'color | ' + v])
|
||||
)
|
||||
}
|
||||
|
|
|
@ -72,7 +72,6 @@ const DataImportExportTab = {
|
|||
// check is it's a local user
|
||||
if (user && user.is_local) {
|
||||
// append the instance address
|
||||
|
||||
return user.screen_name + '@' + location.hostname
|
||||
}
|
||||
return user.screen_name
|
||||
|
@ -80,7 +79,7 @@ const DataImportExportTab = {
|
|||
},
|
||||
addBackup () {
|
||||
this.$store.state.api.backendInteractor.addBackup()
|
||||
.then((res) => {
|
||||
.then(() => {
|
||||
this.addedBackup = true
|
||||
this.addBackupError = false
|
||||
})
|
||||
|
|
|
@ -85,7 +85,6 @@ const MutesAndBlocks = {
|
|||
// check is it's a local user
|
||||
if (user && user.is_local) {
|
||||
// append the instance address
|
||||
|
||||
return user.screen_name + '@' + location.hostname
|
||||
}
|
||||
return user.screen_name
|
||||
|
@ -126,7 +125,7 @@ const MutesAndBlocks = {
|
|||
return urls.filter(url => !this.user.domainMutes.includes(url))
|
||||
},
|
||||
queryKnownDomains (query) {
|
||||
return new Promise((resolve, reject) => {
|
||||
return new Promise((resolve) => {
|
||||
resolve(this.knownDomains.filter(url => url.toLowerCase().includes(query)))
|
||||
})
|
||||
},
|
||||
|
|
|
@ -133,15 +133,14 @@ const ProfileTab = {
|
|||
const params = {
|
||||
note: this.newBio,
|
||||
locked: this.newLocked,
|
||||
// Backend notation.
|
||||
|
||||
// Backend notation.
|
||||
display_name: this.newName,
|
||||
fields_attributes: this.newFields.filter(el => el != null),
|
||||
actor_type: this.actorType,
|
||||
show_role: this.showRole,
|
||||
birthday: this.newBirthday || '',
|
||||
show_birthday: this.showBirthday
|
||||
|
||||
}
|
||||
|
||||
if (this.emailLanguage) {
|
||||
|
@ -167,7 +166,7 @@ const ProfileTab = {
|
|||
}
|
||||
return false
|
||||
},
|
||||
deleteField (index, event) {
|
||||
deleteField (index) {
|
||||
this.newFields.splice(index, 1)
|
||||
},
|
||||
uploadFile (slot, e) {
|
||||
|
|
|
@ -89,7 +89,7 @@ const Mfa = {
|
|||
this.backupCodes.getNewCodes = true
|
||||
},
|
||||
confirmBackupCodes () { // confirm getting new backup codes
|
||||
this.fetchBackupCodes().then((res) => {
|
||||
this.fetchBackupCodes().then(() => {
|
||||
this.backupCodes.getNewCodes = false
|
||||
})
|
||||
},
|
||||
|
|
|
@ -124,7 +124,7 @@ const SecurityTab = {
|
|||
},
|
||||
addAlias () {
|
||||
this.$store.state.api.backendInteractor.addAlias({ alias: this.addAliasTarget })
|
||||
.then((res) => {
|
||||
.then(() => {
|
||||
this.addedAlias = true
|
||||
this.addAliasError = false
|
||||
this.addAliasTarget = ''
|
||||
|
|
|
@ -78,14 +78,14 @@ export default {
|
|||
Preview,
|
||||
VirtualDirectivesTab
|
||||
},
|
||||
setup (props, context) {
|
||||
setup () {
|
||||
const exports = {}
|
||||
const interfaceStore = useInterfaceStore()
|
||||
// All rules that are made by editor
|
||||
const allEditedRules = ref(interfaceStore.styleDataUsed || {})
|
||||
const styleDataUsed = computed(() => interfaceStore.styleDataUsed)
|
||||
|
||||
watch([styleDataUsed], (value) => {
|
||||
watch([styleDataUsed], () => {
|
||||
onImport(interfaceStore.styleDataUsed)
|
||||
}, { once: true })
|
||||
|
||||
|
@ -227,7 +227,7 @@ export default {
|
|||
componentKeysAll
|
||||
.map(
|
||||
key => [key, componentsContext(key).default]
|
||||
).filter(([key, component]) => !component.virtual && !component.notEditable)
|
||||
).filter(([, component]) => !component.virtual && !component.notEditable)
|
||||
)
|
||||
exports.componentsMap = componentsMap
|
||||
const componentKeys = [...componentsMap.keys()]
|
||||
|
|
|
@ -480,7 +480,7 @@ export default {
|
|||
}
|
||||
this.dismissWarning()
|
||||
},
|
||||
loadThemeFromLocalStorage (confirmLoadSource = false, forceSnapshot = false) {
|
||||
loadThemeFromLocalStorage (confirmLoadSource = false) {
|
||||
const theme = this.themeDataUsed?.source
|
||||
if (theme) {
|
||||
this.loadTheme(
|
||||
|
@ -536,7 +536,7 @@ export default {
|
|||
this.tempImportFile = parsed
|
||||
this.loadTheme(parsed, 'file', forceSource)
|
||||
},
|
||||
onImportFailure (result) {
|
||||
onImportFailure () {
|
||||
useInterfaceStore().pushGlobalNotice({ messageKey: 'settings.invalid_theme_imported', level: 'error' })
|
||||
},
|
||||
importValidator (parsed) {
|
||||
|
@ -757,7 +757,7 @@ export default {
|
|||
}
|
||||
},
|
||||
selected () {
|
||||
this.selectedTheme = Object.entries(this.availableStyles).find(([k, s]) => {
|
||||
this.selectedTheme = Object.entries(this.availableStyles).find(([, s]) => {
|
||||
if (Array.isArray(s)) {
|
||||
return s[0] === this.selected
|
||||
} else {
|
||||
|
|
|
@ -151,7 +151,7 @@ export default {
|
|||
}
|
||||
},
|
||||
watch: {
|
||||
selected (value) {
|
||||
selected () {
|
||||
this.$emit('subShadowSelected', this.selectedId)
|
||||
}
|
||||
},
|
||||
|
|
|
@ -38,7 +38,7 @@ const shoutPanel = {
|
|||
}
|
||||
},
|
||||
watch: {
|
||||
messages (newVal) {
|
||||
messages () {
|
||||
const scrollEl = this.$el.querySelector('.chat-window')
|
||||
if (!scrollEl) return
|
||||
if (scrollEl.scrollTop + scrollEl.offsetHeight + 20 > scrollEl.scrollHeight) {
|
||||
|
|
|
@ -109,7 +109,7 @@ export const BUTTONS = [{
|
|||
status.user.id === currentUser.id &&
|
||||
PUBLIC_SCOPES.has(status.visibility)
|
||||
},
|
||||
action ({ status, dispatch, emit }) {
|
||||
action ({ status, dispatch }) {
|
||||
if (status.pinned) {
|
||||
return dispatch('unpinStatus', { id: status.id })
|
||||
} else {
|
||||
|
@ -130,7 +130,7 @@ export const BUTTONS = [{
|
|||
? 'status.unbookmark'
|
||||
: 'status.bookmark',
|
||||
if: ({ loggedIn }) => loggedIn,
|
||||
action ({ status, dispatch, emit }) {
|
||||
action ({ status, dispatch }) {
|
||||
if (status.bookmarked) {
|
||||
return dispatch('unbookmark', { id: status.id })
|
||||
} else {
|
||||
|
@ -175,7 +175,7 @@ export const BUTTONS = [{
|
|||
currentUser.privileges.includes('messages_delete')
|
||||
)
|
||||
},
|
||||
confirm: ({ status, getters }) => getters.mergedConfig.modalOnDelete,
|
||||
confirm: ({ getters }) => getters.mergedConfig.modalOnDelete,
|
||||
confirmStrings: {
|
||||
title: 'status.delete_confirm_title',
|
||||
body: 'status.delete_confirm',
|
||||
|
|
|
@ -34,8 +34,8 @@ const StatusPopover = {
|
|||
return
|
||||
}
|
||||
this.$store.dispatch('fetchStatus', this.statusId)
|
||||
.then(data => (this.error = false))
|
||||
.catch(e => (this.error = true))
|
||||
.then(() => (this.error = false))
|
||||
.catch(() => (this.error = true))
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -81,7 +81,7 @@ const ThreadTree = {
|
|||
toggleCurrentProp (name) {
|
||||
this.toggleStatusContentProperty(this.status.id, name)
|
||||
},
|
||||
setCurrentProp (name, newVal) {
|
||||
setCurrentProp (name) {
|
||||
this.setStatusContentProperty(this.status.id, name)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -241,7 +241,7 @@ const Timeline = {
|
|||
// statuses will be nearby statuses before and after it
|
||||
this.virtualScrollIndex = approxIndex
|
||||
},
|
||||
scrollLoad (e) {
|
||||
scrollLoad () {
|
||||
const bodyBRect = document.body.getBoundingClientRect()
|
||||
const height = Math.max(bodyBRect.height, -(bodyBRect.y))
|
||||
if (this.timeline.loading === false &&
|
||||
|
|
|
@ -85,7 +85,6 @@ export default {
|
|||
return this.user.id !== this.$store.state.users.currentUser.id
|
||||
},
|
||||
subscribeUrl () {
|
||||
|
||||
const serverUrl = new URL(this.user.statusnet_profile_url)
|
||||
return `${serverUrl.protocol}//${serverUrl.host}/main/ostatus`
|
||||
},
|
||||
|
|
|
@ -81,7 +81,7 @@ const UserListMenu = {
|
|||
const user = this.user
|
||||
const { id, name } = user
|
||||
store.state.api.backendInteractor.deleteUser({ user })
|
||||
.then(e => {
|
||||
.then(() => {
|
||||
this.$store.dispatch('markStatusesAsDeleted', status => user.id === status.user.id)
|
||||
const isProfile = this.$route.name === 'external-user-profile' || this.$route.name === 'user-profile'
|
||||
const isTargetUser = this.$route.params.name === name || this.$route.params.id === id
|
||||
|
|
|
@ -24,7 +24,7 @@ const VideoAttachment = {
|
|||
}
|
||||
this.$emit('play')
|
||||
},
|
||||
onPaused (e) {
|
||||
onPaused () {
|
||||
this.$emit('pause')
|
||||
},
|
||||
setHasAudio (e) {
|
||||
|
|
|
@ -15,7 +15,7 @@ const WhoToFollow = {
|
|||
},
|
||||
methods: {
|
||||
showWhoToFollow (reply) {
|
||||
reply.forEach((i, index) => {
|
||||
reply.forEach((i) => {
|
||||
this.$store.state.api.backendInteractor.fetchUser({ id: i.acct })
|
||||
.then((externalUser) => {
|
||||
if (!externalUser.error) {
|
||||
|
|
|
@ -54,7 +54,7 @@ const WhoToFollowPanel = {
|
|||
}
|
||||
},
|
||||
watch: {
|
||||
user: function (user, oldUser) {
|
||||
user: function () {
|
||||
if (this.suggestionsEnabled) {
|
||||
getWhoToFollow(this)
|
||||
}
|
||||
|
@ -62,7 +62,7 @@ const WhoToFollowPanel = {
|
|||
},
|
||||
mounted:
|
||||
function () {
|
||||
this.usersToFollow = new Array(3).fill().map(x => (
|
||||
this.usersToFollow = new Array(3).fill().map(() => (
|
||||
{
|
||||
img: this.$store.state.instance.defaultAvatar,
|
||||
name: '',
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
/* eslint-disable import/no-webpack-loader-syntax */
|
||||
// This module exports only the notification part of the i18n,
|
||||
// which is useful for the service worker
|
||||
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
import EventTargetPolyfill from '@ungap/event-target'
|
||||
|
||||
try {
|
||||
|
||||
new EventTarget()
|
||||
|
||||
} catch (e) {
|
||||
// for some reason eslint both likes and dislikes
|
||||
// no-new here so we just call something useless
|
||||
// so it stops reporting this file
|
||||
const et = new EventTarget()
|
||||
et.dispatchEvent()
|
||||
} catch {
|
||||
window.EventTarget = EventTargetPolyfill
|
||||
}
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* global process */
|
||||
import { createStore } from 'vuex'
|
||||
import { createPinia } from 'pinia'
|
||||
|
||||
|
|
|
@ -60,7 +60,7 @@ const adminSettingsStorage = {
|
|||
}
|
||||
},
|
||||
actions: {
|
||||
loadFrontendsStuff ({ state, rootState, dispatch, commit }) {
|
||||
loadFrontendsStuff ({ rootState, commit }) {
|
||||
rootState.api.backendInteractor.fetchAvailableFrontends()
|
||||
.then(frontends => commit('setAvailableFrontends', { frontends }))
|
||||
},
|
||||
|
@ -84,7 +84,7 @@ const adminSettingsStorage = {
|
|||
.then(backendDescriptions => dispatch('setInstanceAdminDescriptions', { backendDescriptions }))
|
||||
}
|
||||
},
|
||||
setInstanceAdminSettings ({ state, commit, dispatch }, { backendDbConfig }) {
|
||||
setInstanceAdminSettings ({ state, commit }, { backendDbConfig }) {
|
||||
const config = state.config || {}
|
||||
const modifiedPaths = new Set()
|
||||
backendDbConfig.configs.forEach(c => {
|
||||
|
@ -108,7 +108,7 @@ const adminSettingsStorage = {
|
|||
commit('updateAdminSettings', { config, modifiedPaths })
|
||||
commit('resetAdminDraft')
|
||||
},
|
||||
setInstanceAdminDescriptions ({ state, commit, dispatch }, { backendDescriptions }) {
|
||||
setInstanceAdminDescriptions ({ commit }, { backendDescriptions }) {
|
||||
const convert = ({ children, description, label, key = '<ROOT>', group, suggestions }, path, acc) => {
|
||||
const newPath = group ? [group, key] : [key]
|
||||
const obj = { description, label, suggestions }
|
||||
|
@ -127,7 +127,7 @@ const adminSettingsStorage = {
|
|||
|
||||
// This action takes draft state, diffs it with live config state and then pushes
|
||||
// only differences between the two. Difference detection only work up to subkey (third) level.
|
||||
pushAdminDraft ({ rootState, state, commit, dispatch }) {
|
||||
pushAdminDraft ({ rootState, state, dispatch }) {
|
||||
// TODO cleanup paths in modifiedPaths
|
||||
const convert = (value) => {
|
||||
if (typeof value !== 'object') {
|
||||
|
@ -177,7 +177,7 @@ const adminSettingsStorage = {
|
|||
.then(() => rootState.api.backendInteractor.fetchInstanceDBConfig())
|
||||
.then(backendDbConfig => dispatch('setInstanceAdminSettings', { backendDbConfig }))
|
||||
},
|
||||
pushAdminSetting ({ rootState, state, commit, dispatch }, { path, value }) {
|
||||
pushAdminSetting ({ rootState, dispatch }, { path, value }) {
|
||||
const [group, key, ...rest] = Array.isArray(path) ? path : path.split(/\./g)
|
||||
const clone = {} // not actually cloning the entire thing to avoid excessive writes
|
||||
set(clone, rest, value)
|
||||
|
@ -205,7 +205,7 @@ const adminSettingsStorage = {
|
|||
.then(() => rootState.api.backendInteractor.fetchInstanceDBConfig())
|
||||
.then(backendDbConfig => dispatch('setInstanceAdminSettings', { backendDbConfig }))
|
||||
},
|
||||
resetAdminSetting ({ rootState, state, commit, dispatch }, { path }) {
|
||||
resetAdminSetting ({ rootState, state, dispatch }, { path }) {
|
||||
const [group, key, subkey] = path.split(/\./g)
|
||||
|
||||
state.modifiedPaths.delete(path)
|
||||
|
|
|
@ -27,7 +27,7 @@ const api = {
|
|||
addFetcher (state, { fetcherName, fetcher }) {
|
||||
state.fetchers[fetcherName] = fetcher
|
||||
},
|
||||
removeFetcher (state, { fetcherName, fetcher }) {
|
||||
removeFetcher (state, { fetcherName }) {
|
||||
state.fetchers[fetcherName].stop()
|
||||
delete state.fetchers[fetcherName]
|
||||
},
|
||||
|
@ -294,7 +294,7 @@ const api = {
|
|||
setWsToken (store, token) {
|
||||
store.commit('setWsToken', token)
|
||||
},
|
||||
initializeSocket ({ dispatch, commit, state, rootState }) {
|
||||
initializeSocket ({ commit, state, rootState }) {
|
||||
// Set up websocket connection
|
||||
const token = state.wsToken
|
||||
if (rootState.instance.shoutAvailable && typeof token !== 'undefined' && state.socket === null) {
|
||||
|
|
|
@ -19,19 +19,19 @@ const resetState = (state) => {
|
|||
|
||||
// getters
|
||||
const getters = {
|
||||
settings: (state, getters) => {
|
||||
settings: (state) => {
|
||||
return state.settings
|
||||
},
|
||||
requiredPassword: (state, getters, rootState) => {
|
||||
requiredPassword: (state) => {
|
||||
return state.strategy === PASSWORD_STRATEGY
|
||||
},
|
||||
requiredToken: (state, getters, rootState) => {
|
||||
requiredToken: (state) => {
|
||||
return state.strategy === TOKEN_STRATEGY
|
||||
},
|
||||
requiredTOTP: (state, getters, rootState) => {
|
||||
requiredTOTP: (state) => {
|
||||
return state.strategy === TOTP_STRATEGY
|
||||
},
|
||||
requiredRecovery: (state, getters, rootState) => {
|
||||
requiredRecovery: (state) => {
|
||||
return state.strategy === RECOVERY_STRATEGY
|
||||
}
|
||||
}
|
||||
|
@ -68,9 +68,9 @@ const mutations = {
|
|||
// actions
|
||||
const actions = {
|
||||
|
||||
async login ({ state, dispatch, commit }, { access_token }) {
|
||||
commit('setToken', access_token, { root: true })
|
||||
await dispatch('loginUser', access_token, { root: true })
|
||||
async login ({ state, dispatch, commit }, { access_token: accessToken }) {
|
||||
commit('setToken', accessToken, { root: true })
|
||||
await dispatch('loginUser', accessToken, { root: true })
|
||||
resetState(state)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -53,7 +53,7 @@ const chats = {
|
|||
stopFetchingChats ({ commit }) {
|
||||
commit('setChatListFetcher', { fetcher: undefined })
|
||||
},
|
||||
fetchChats ({ dispatch, rootState, commit }, params = {}) {
|
||||
fetchChats ({ dispatch, rootState }) {
|
||||
return rootState.api.backendInteractor.chats()
|
||||
.then(({ chats }) => {
|
||||
dispatch('addNewChats', { chats })
|
||||
|
@ -73,13 +73,13 @@ const chats = {
|
|||
},
|
||||
|
||||
// Opened Chats
|
||||
startFetchingCurrentChat ({ commit, dispatch }, { fetcher }) {
|
||||
startFetchingCurrentChat ({ dispatch }, { fetcher }) {
|
||||
dispatch('setCurrentChatFetcher', { fetcher })
|
||||
},
|
||||
setCurrentChatFetcher ({ rootState, commit }, { fetcher }) {
|
||||
setCurrentChatFetcher ({ commit }, { fetcher }) {
|
||||
commit('setCurrentChatFetcher', { fetcher })
|
||||
},
|
||||
addOpenedChat ({ rootState, commit, dispatch }, { chat }) {
|
||||
addOpenedChat ({ commit, dispatch }, { chat }) {
|
||||
commit('addOpenedChat', { dispatch, chat: parseChat(chat) })
|
||||
dispatch('addNewUsers', [chat.account])
|
||||
},
|
||||
|
@ -89,7 +89,7 @@ const chats = {
|
|||
resetChatNewMessageCount ({ commit }, value) {
|
||||
commit('resetChatNewMessageCount', value)
|
||||
},
|
||||
clearCurrentChat ({ rootState, commit, dispatch }, value) {
|
||||
clearCurrentChat ({ commit }) {
|
||||
commit('setCurrentChatId', { chatId: undefined })
|
||||
commit('setCurrentChatFetcher', { fetcher: undefined })
|
||||
},
|
||||
|
@ -111,7 +111,7 @@ const chats = {
|
|||
dispatch('clearCurrentChat')
|
||||
commit('resetChats', { commit })
|
||||
},
|
||||
clearOpenedChats ({ rootState, commit, dispatch, rootGetters }) {
|
||||
clearOpenedChats ({ commit }) {
|
||||
commit('clearOpenedChats', { commit })
|
||||
},
|
||||
handleMessageError ({ commit }, value) {
|
||||
|
@ -122,7 +122,7 @@ const chats = {
|
|||
}
|
||||
},
|
||||
mutations: {
|
||||
setChatListFetcher (state, { commit, fetcher }) {
|
||||
setChatListFetcher (state, { fetcher }) {
|
||||
const prevFetcher = state.chatListFetcher
|
||||
if (prevFetcher) {
|
||||
prevFetcher.stop()
|
||||
|
@ -136,7 +136,7 @@ const chats = {
|
|||
}
|
||||
state.fetcher = fetcher && fetcher()
|
||||
},
|
||||
addOpenedChat (state, { _dispatch, chat }) {
|
||||
addOpenedChat (state, { chat }) {
|
||||
state.currentChatId = chat.id
|
||||
state.openedChats[chat.id] = chat
|
||||
|
||||
|
@ -165,7 +165,7 @@ const chats = {
|
|||
}
|
||||
})
|
||||
},
|
||||
updateChat (state, { _dispatch, chat: updatedChat, _rootGetters }) {
|
||||
updateChat (state, { chat: updatedChat }) {
|
||||
const chat = getChatById(state, updatedChat.id)
|
||||
if (chat) {
|
||||
chat.lastMessage = updatedChat.lastMessage
|
||||
|
@ -175,7 +175,7 @@ const chats = {
|
|||
if (!chat) { state.chatList.data.unshift(updatedChat) }
|
||||
state.chatList.idStore[updatedChat.id] = updatedChat
|
||||
},
|
||||
deleteChat (state, { _dispatch, id, _rootGetters }) {
|
||||
deleteChat (state, { id }) {
|
||||
state.chats.data = state.chats.data.filter(conversation =>
|
||||
conversation.last_status.id !== id
|
||||
)
|
||||
|
@ -206,7 +206,7 @@ const chats = {
|
|||
chatService.deleteMessage(chatMessageService, messageId)
|
||||
}
|
||||
},
|
||||
resetChatNewMessageCount (state, _value) {
|
||||
resetChatNewMessageCount (state) {
|
||||
const chatMessageService = state.openedChatMessageServices[state.currentChatId]
|
||||
chatService.resetNewMessageCount(chatMessageService)
|
||||
},
|
||||
|
|
|
@ -38,13 +38,13 @@ export const multiChoiceProperties = [
|
|||
|
||||
// caching the instance default properties
|
||||
export const instanceDefaultProperties = Object.entries(defaultState)
|
||||
.filter(([key, value]) => value === undefined)
|
||||
.map(([key, value]) => key)
|
||||
.filter(([, value]) => value === undefined)
|
||||
.map(([key]) => key)
|
||||
|
||||
const config = {
|
||||
state: { ...defaultState },
|
||||
getters: {
|
||||
defaultConfig (state, getters, rootState, rootGetters) {
|
||||
defaultConfig (state, getters, rootState) {
|
||||
const { instance } = rootState
|
||||
return {
|
||||
...defaultState,
|
||||
|
@ -58,7 +58,7 @@ const config = {
|
|||
return {
|
||||
...defaultConfig,
|
||||
// Do not override with undefined
|
||||
...Object.fromEntries(Object.entries(state).filter(([k, v]) => v !== undefined))
|
||||
...Object.fromEntries(Object.entries(state).filter(([, v]) => v !== undefined))
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -94,10 +94,10 @@ const config = {
|
|||
name => dispatch('setOption', { name, value: data[name] })
|
||||
)
|
||||
},
|
||||
setHighlight ({ commit, dispatch }, { user, color, type }) {
|
||||
setHighlight ({ commit }, { user, color, type }) {
|
||||
commit('setHighlight', { user, color, type })
|
||||
},
|
||||
setOptionTemporarily ({ commit, dispatch, state, rootState }, { name, value }) {
|
||||
setOptionTemporarily ({ commit, dispatch, state }, { name, value }) {
|
||||
if (useInterfaceStore().temporaryChangesTimeoutId !== null) {
|
||||
console.warn('Can\'t track more than one temporary change')
|
||||
return
|
||||
|
|
|
@ -36,7 +36,10 @@ export const notifications = {
|
|||
})
|
||||
},
|
||||
clearNotifications (state) {
|
||||
state = emptyNotifications()
|
||||
const blankState = defaultState()
|
||||
Object.keys(state).forEach(k => {
|
||||
state[k] = blankState[k]
|
||||
})
|
||||
},
|
||||
updateNotificationsMinMaxId (state, id) {
|
||||
state.maxId = id > state.maxId ? id : state.maxId
|
||||
|
@ -67,7 +70,7 @@ export const notifications = {
|
|||
}
|
||||
},
|
||||
actions: {
|
||||
addNewNotifications (store, { notifications, older }) {
|
||||
addNewNotifications (store, { notifications }) {
|
||||
const { commit, dispatch, state, rootState } = store
|
||||
const validNotifications = notifications.filter((notification) => {
|
||||
// If invalid notification, update ids but don't add it to store
|
||||
|
@ -130,10 +133,10 @@ export const notifications = {
|
|||
}
|
||||
}
|
||||
},
|
||||
setNotificationsLoading ({ rootState, commit }, { value }) {
|
||||
setNotificationsLoading ({ commit }, { value }) {
|
||||
commit('setNotificationsLoading', { value })
|
||||
},
|
||||
setNotificationsSilence ({ rootState, commit }, { value }) {
|
||||
setNotificationsSilence ({ commit }, { value }) {
|
||||
commit('setNotificationsSilence', { value })
|
||||
},
|
||||
markNotificationsAsSeen ({ rootState, state, commit }) {
|
||||
|
@ -155,14 +158,14 @@ export const notifications = {
|
|||
closeDesktopNotification(rootState, { id })
|
||||
})
|
||||
},
|
||||
dismissNotificationLocal ({ rootState, commit }, { id }) {
|
||||
dismissNotificationLocal ({ commit }, { id }) {
|
||||
commit('dismissNotification', { id })
|
||||
},
|
||||
dismissNotification ({ rootState, commit }, { id }) {
|
||||
commit('dismissNotification', { id })
|
||||
rootState.api.backendInteractor.dismissNotification({ id })
|
||||
},
|
||||
updateNotification ({ rootState, commit }, { id, updater }) {
|
||||
updateNotification ({ commit }, { id, updater }) {
|
||||
commit('updateNotification', { id, updater })
|
||||
}
|
||||
}
|
||||
|
|
|
@ -118,7 +118,7 @@ const profileConfig = {
|
|||
}
|
||||
},
|
||||
actions: {
|
||||
setProfileOption ({ rootState, state, commit, dispatch }, { name, value }) {
|
||||
setProfileOption ({ rootState, state, commit }, { name, value }) {
|
||||
const oldValue = get(state, name)
|
||||
const map = settingsMap[name]
|
||||
if (!map) throw new Error('Invalid server-side setting')
|
||||
|
|
|
@ -200,7 +200,7 @@ const _mergeJournal = (...journals) => {
|
|||
.sort((a, b) => a.timestamp > b.timestamp ? 1 : -1)
|
||||
}
|
||||
|
||||
export const _mergePrefs = (recent, stale, allFlagKeys) => {
|
||||
export const _mergePrefs = (recent, stale) => {
|
||||
if (!stale) return recent
|
||||
if (!recent) return stale
|
||||
const { _journal: recentJournal, ...recentData } = recent
|
||||
|
@ -217,7 +217,7 @@ export const _mergePrefs = (recent, stale, allFlagKeys) => {
|
|||
*/
|
||||
const resultOutput = { ...recentData }
|
||||
const totalJournal = _mergeJournal(staleJournal, recentJournal)
|
||||
totalJournal.forEach(({ path, timestamp, operation, command, args }) => {
|
||||
totalJournal.forEach(({ path, operation, args }) => {
|
||||
if (path.startsWith('_')) {
|
||||
console.error(`journal contains entry to edit internal (starts with _) field '${path}', something is incorrect here, ignoring.`)
|
||||
return
|
||||
|
@ -303,10 +303,13 @@ export const _doMigrations = (cache) => {
|
|||
}
|
||||
|
||||
export const mutations = {
|
||||
clearServerSideStorage (state, userData) {
|
||||
state = { ...cloneDeep(defaultState) }
|
||||
clearServerSideStorage (state) {
|
||||
const blankState = { ...cloneDeep(defaultState) }
|
||||
Object.keys(state).forEach(k => {
|
||||
state[k] = blankState[k]
|
||||
})
|
||||
},
|
||||
setServerSideStorage (state, userData, test) {
|
||||
setServerSideStorage (state, userData) {
|
||||
const live = userData.storage
|
||||
state.raw = live
|
||||
let cache = state.cache
|
||||
|
@ -334,8 +337,10 @@ export const mutations = {
|
|||
if (!needUpload && recent && stale) {
|
||||
console.debug('Checking if data needs merging...')
|
||||
// discarding timestamps and versions
|
||||
/* eslint-disable no-unused-vars */
|
||||
const { _timestamp: _0, _version: _1, ...recentData } = recent
|
||||
const { _timestamp: _2, _version: _3, ...staleData } = stale
|
||||
/* eslint-enable no-unused-vars */
|
||||
dirty = !isEqual(recentData, staleData)
|
||||
console.debug(`Data ${dirty ? 'needs' : 'doesn\'t need'} merging`)
|
||||
}
|
||||
|
|
|
@ -223,7 +223,7 @@ const addNewStatuses = (state, { statuses, showImmediately = false, timeline, us
|
|||
return status
|
||||
}
|
||||
|
||||
const favoriteStatus = (favorite, counter) => {
|
||||
const favoriteStatus = (favorite) => {
|
||||
const status = find(allStatuses, { id: favorite.in_reply_to_status_id })
|
||||
if (status) {
|
||||
// This is our favorite, so the relevant bit.
|
||||
|
@ -273,7 +273,7 @@ const addNewStatuses = (state, { statuses, showImmediately = false, timeline, us
|
|||
favoriteStatus(favorite)
|
||||
}
|
||||
},
|
||||
follow: (follow) => {
|
||||
follow: () => {
|
||||
// NOOP, it is known status but we don't do anything about it for now
|
||||
},
|
||||
default: (unknown) => {
|
||||
|
@ -433,7 +433,7 @@ export const mutations = {
|
|||
newStatus.fave_num = newStatus.favoritedBy.length
|
||||
newStatus.favorited = !!newStatus.favoritedBy.find(({ id }) => currentUser.id === id)
|
||||
},
|
||||
addEmojiReactionsBy (state, { id, emojiReactions, currentUser }) {
|
||||
addEmojiReactionsBy (state, { id, emojiReactions }) {
|
||||
const status = state.allStatusesObject[id]
|
||||
status.emoji_reactions = emojiReactions
|
||||
},
|
||||
|
@ -492,22 +492,22 @@ export const mutations = {
|
|||
const statuses = {
|
||||
state: defaultState(),
|
||||
actions: {
|
||||
addNewStatuses ({ rootState, commit, dispatch, state }, { statuses, showImmediately = false, timeline = false, noIdUpdate = false, userId, pagination }) {
|
||||
addNewStatuses ({ rootState, commit }, { statuses, showImmediately = false, timeline = false, noIdUpdate = false, userId, pagination }) {
|
||||
commit('addNewStatuses', { statuses, showImmediately, timeline, noIdUpdate, user: rootState.users.currentUser, userId, pagination })
|
||||
},
|
||||
fetchStatus ({ rootState, dispatch }, id) {
|
||||
return rootState.api.backendInteractor.fetchStatus({ id })
|
||||
.then((status) => dispatch('addNewStatuses', { statuses: [status] }))
|
||||
},
|
||||
fetchStatusSource ({ rootState, dispatch }, status) {
|
||||
fetchStatusSource ({ rootState }, status) {
|
||||
return apiService.fetchStatusSource({ id: status.id, credentials: rootState.users.currentUser.credentials })
|
||||
},
|
||||
fetchStatusHistory ({ rootState, dispatch }, status) {
|
||||
fetchStatusHistory (_, status) {
|
||||
return apiService.fetchStatusHistory({ status })
|
||||
},
|
||||
deleteStatus ({ rootState, commit, dispatch }, status) {
|
||||
deleteStatus ({ rootState, commit }, status) {
|
||||
apiService.deleteStatus({ id: status.id, credentials: rootState.users.currentUser.credentials })
|
||||
.then((_) => {
|
||||
.then(() => {
|
||||
commit('setDeleted', { status })
|
||||
})
|
||||
.catch((e) => {
|
||||
|
@ -584,10 +584,10 @@ const statuses = {
|
|||
commit('setBookmarkedConfirm', { status })
|
||||
})
|
||||
},
|
||||
queueFlush ({ rootState, commit }, { timeline, id }) {
|
||||
queueFlush ({ commit }, { timeline, id }) {
|
||||
commit('queueFlush', { timeline, id })
|
||||
},
|
||||
queueFlushAll ({ rootState, commit }) {
|
||||
queueFlushAll ({ commit }) {
|
||||
commit('queueFlushAll')
|
||||
},
|
||||
fetchFavsAndRepeats ({ rootState, commit }, id) {
|
||||
|
@ -605,7 +605,7 @@ const statuses = {
|
|||
|
||||
commit('addOwnReaction', { id, emoji, currentUser })
|
||||
rootState.api.backendInteractor.reactWithEmoji({ id, emoji }).then(
|
||||
ok => {
|
||||
() => {
|
||||
dispatch('fetchEmojiReactionsBy', id)
|
||||
}
|
||||
)
|
||||
|
@ -616,7 +616,7 @@ const statuses = {
|
|||
|
||||
commit('removeOwnReaction', { id, emoji, currentUser })
|
||||
rootState.api.backendInteractor.unreactWithEmoji({ id, emoji }).then(
|
||||
ok => {
|
||||
() => {
|
||||
dispatch('fetchEmojiReactionsBy', id)
|
||||
}
|
||||
)
|
||||
|
|
|
@ -509,8 +509,8 @@ const users = {
|
|||
|
||||
const notificationsObject = store.rootState.notifications.idStore
|
||||
const relevantNotifications = Object.entries(notificationsObject)
|
||||
.filter(([k, val]) => notificationIds.includes(k))
|
||||
.map(([k, val]) => val)
|
||||
.filter(([k]) => notificationIds.includes(k))
|
||||
.map(([, val]) => val)
|
||||
|
||||
// Reconnect users to notifications
|
||||
each(relevantNotifications, (notification) => {
|
||||
|
|
|
@ -29,7 +29,7 @@ export const closeDesktopNotification = (rootState, { id }) => {
|
|||
}
|
||||
}
|
||||
|
||||
export const closeAllDesktopNotifications = (rootState) => {
|
||||
export const closeAllDesktopNotifications = () => {
|
||||
if (!('Notification' in window && window.Notification.permission === 'granted')) return
|
||||
|
||||
if (isSWSupported()) {
|
||||
|
|
|
@ -48,7 +48,7 @@ export class RegistrationError extends Error {
|
|||
} else {
|
||||
this.message = error
|
||||
}
|
||||
} catch (e) {
|
||||
} catch {
|
||||
// can't parse it, so just treat it like a string
|
||||
this.message = error
|
||||
}
|
||||
|
|
|
@ -16,7 +16,7 @@ const fetchRelationship = (attempt, userId, store) => new Promise((resolve, reje
|
|||
}
|
||||
})
|
||||
|
||||
export const requestFollow = (userId, store) => new Promise((resolve, reject) => {
|
||||
export const requestFollow = (userId, store) => new Promise((resolve) => {
|
||||
store.state.api.backendInteractor.followUser({ id: userId })
|
||||
.then((updated) => {
|
||||
store.commit('updateUserRelationship', [updated])
|
||||
|
@ -41,7 +41,7 @@ export const requestFollow = (userId, store) => new Promise((resolve, reject) =>
|
|||
})
|
||||
})
|
||||
|
||||
export const requestUnfollow = (userId, store) => new Promise((resolve, reject) => {
|
||||
export const requestUnfollow = (userId, store) => new Promise((resolve) => {
|
||||
store.state.api.backendInteractor.unfollowUser({ id: userId })
|
||||
.then((updated) => {
|
||||
store.commit('updateUserRelationship', [updated])
|
||||
|
|
|
@ -184,7 +184,7 @@ class SwipeAndClickGesture {
|
|||
}
|
||||
}
|
||||
|
||||
click (event) {
|
||||
click () {
|
||||
if (!this._preventNextClick) {
|
||||
this.swipelessClickCallback()
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@ export const getAttrs = (tag, filter) => {
|
|||
.replace(/\/?$/, '')
|
||||
.trim()
|
||||
const attrs = Array.from(innertag.matchAll(/([a-z]+[a-z0-9-]*)(?:=("[^"]+?"|'[^']+?'))?/gi))
|
||||
.map(([trash, key, value]) => [key, value])
|
||||
.map(([, key, value]) => [key, value])
|
||||
.map(([k, v]) => {
|
||||
if (!v) return [k, true]
|
||||
return [k, v.substring(1, v.length - 1)]
|
||||
|
|
|
@ -2,7 +2,7 @@ import { useListsStore } from 'src/stores/lists.js'
|
|||
import apiService from '../api/api.service.js'
|
||||
import { promiseInterval } from '../promise_interval/promise_interval.js'
|
||||
|
||||
const fetchAndUpdate = ({ store, credentials }) => {
|
||||
const fetchAndUpdate = ({ credentials }) => {
|
||||
return apiService.fetchLists({ credentials })
|
||||
.then(lists => {
|
||||
useListsStore().setLists(lists)
|
||||
|
|
|
@ -48,7 +48,7 @@ const adoptStyleSheets = (styles) => {
|
|||
|
||||
export const generateTheme = (inputRuleset, callbacks, debug) => {
|
||||
const {
|
||||
onNewRule = (rule, isLazy) => {},
|
||||
onNewRule = () => {},
|
||||
onLazyFinished = () => {},
|
||||
onEagerFinished = () => {}
|
||||
} = callbacks
|
||||
|
@ -123,8 +123,8 @@ export const tryLoadCache = async () => {
|
|||
|
||||
export const applyTheme = (
|
||||
input,
|
||||
onEagerFinish = data => {},
|
||||
onFinish = data => {},
|
||||
onEagerFinish = () => {},
|
||||
onFinish = () => {},
|
||||
debug
|
||||
) => {
|
||||
const eagerStyles = createStyleSheet(EAGER_STYLE_ID)
|
||||
|
@ -217,7 +217,7 @@ const extractStyleConfig = ({
|
|||
console.log(defaultState)
|
||||
const defaultStyleConfig = extractStyleConfig(defaultState)
|
||||
|
||||
export const applyConfig = (input, i18n) => {
|
||||
export const applyConfig = (input) => {
|
||||
const config = extractStyleConfig(input)
|
||||
|
||||
if (config === defaultStyleConfig) {
|
||||
|
@ -228,7 +228,7 @@ export const applyConfig = (input, i18n) => {
|
|||
|
||||
const rules = Object
|
||||
.entries(config)
|
||||
.filter(([k, v]) => v)
|
||||
.filter(([, v]) => v)
|
||||
.map(([k, v]) => `--${k}: ${v}`).join(';')
|
||||
|
||||
document.getElementById('style-config')?.remove()
|
||||
|
@ -283,7 +283,7 @@ export const getResourcesIndex = async (url, parser = JSON.parse) => {
|
|||
const builtinData = await window.fetch(url, { cache })
|
||||
const builtinResources = await builtinData.json()
|
||||
builtin = resourceTransform(builtinResources)
|
||||
} catch (e) {
|
||||
} catch {
|
||||
builtin = []
|
||||
console.warn(`Builtin resources at ${url} unavailable`)
|
||||
}
|
||||
|
@ -292,7 +292,7 @@ export const getResourcesIndex = async (url, parser = JSON.parse) => {
|
|||
const customData = await window.fetch(customUrl, { cache })
|
||||
const customResources = await customData.json()
|
||||
custom = resourceTransform(customResources)
|
||||
} catch (e) {
|
||||
} catch {
|
||||
custom = []
|
||||
console.warn(`Custom resources at ${customUrl} unavailable`)
|
||||
}
|
||||
|
|
|
@ -138,7 +138,7 @@ export function unregisterPushNotifications (token) {
|
|||
.then((registration) => {
|
||||
return unsubscribePush(registration).then((result) => [registration, result])
|
||||
})
|
||||
.then(([registration, unsubResult]) => {
|
||||
.then(([, unsubResult]) => {
|
||||
if (!unsubResult) {
|
||||
console.warn('Push subscription cancellation wasn\'t successful')
|
||||
}
|
||||
|
|
|
@ -45,7 +45,7 @@ export const deserializeShadow = string => {
|
|||
} else {
|
||||
return [mode, result[i]]
|
||||
}
|
||||
}).filter(([k, v]) => v !== false).slice(1))
|
||||
}).filter(([, v]) => v !== false).slice(1))
|
||||
|
||||
return { x, y, blur, spread, color, alpha, inset, name }
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { unroll } from './iss_utils.js'
|
||||
import { deserializeShadow } from './iss_deserializer.js'
|
||||
|
||||
export const serializeShadow = (s, throwOnInvalid) => {
|
||||
export const serializeShadow = (s) => {
|
||||
if (typeof s === 'object') {
|
||||
const inset = s.inset ? 'inset ' : ''
|
||||
const name = s.name ? ` #${s.name} ` : ''
|
||||
|
|
|
@ -100,7 +100,7 @@ export const genericRuleToSelector = components => (rule, ignoreOutOfTreeSelecto
|
|||
let arraySelector = Array.isArray(selector) ? selector : [selector]
|
||||
if (ignoreOutOfTreeSelector || liteMode) arraySelector = [arraySelector[0]]
|
||||
arraySelector
|
||||
.sort((a, b) => {
|
||||
.sort((a) => {
|
||||
if (a.startsWith(':')) return 1
|
||||
if (/^[a-z]/.exec(a)) return -1
|
||||
else return 0
|
||||
|
|
|
@ -131,7 +131,7 @@ export const shadowFunctions = {
|
|||
'[alpha]: (Optional) border opacity, defaults to 1 (fully opaque)',
|
||||
'[inset]: (Optional) whether border should be on the inside or outside, defaults to inside'
|
||||
],
|
||||
exec: (args, { findColor }) => {
|
||||
exec: (args) => {
|
||||
const [color, side, alpha = '1', widthArg = '1', inset = 'inset'] = args
|
||||
|
||||
const width = Number(widthArg)
|
||||
|
|
|
@ -218,7 +218,7 @@ export const getLayerSlot = (
|
|||
*/
|
||||
export const SLOT_ORDERED = topoSort(
|
||||
Object.entries(SLOT_INHERITANCE)
|
||||
.sort(([aK, aV], [bK, bV]) => ((aV && aV.priority) || 0) - ((bV && bV.priority) || 0))
|
||||
.sort(([, aV], [, bV]) => ((aV && aV.priority) || 0) - ((bV && bV.priority) || 0))
|
||||
.reduce((acc, [k, v]) => ({ ...acc, [k]: v }), {})
|
||||
)
|
||||
|
||||
|
@ -226,7 +226,7 @@ export const SLOT_ORDERED = topoSort(
|
|||
* All opacity slots used in color slots, their default values and affected
|
||||
* color slots.
|
||||
*/
|
||||
export const OPACITIES = Object.entries(SLOT_INHERITANCE).reduce((acc, [k, v]) => {
|
||||
export const OPACITIES = Object.entries(SLOT_INHERITANCE).reduce((acc, [k]) => {
|
||||
const opacity = getOpacitySlot(k, SLOT_INHERITANCE, getDependencies)
|
||||
if (opacity) {
|
||||
return {
|
||||
|
@ -489,7 +489,7 @@ export const generateColors = (themeData) => {
|
|||
return {
|
||||
rules: {
|
||||
colors: Object.entries(htmlColors.complete)
|
||||
.filter(([k, v]) => v)
|
||||
.filter(([, v]) => v)
|
||||
.map(([k, v]) => `--${k}: ${v}`)
|
||||
.join(';')
|
||||
},
|
||||
|
@ -506,10 +506,10 @@ export const generateRadii = (input) => {
|
|||
if (typeof input.btnRadius !== 'undefined') {
|
||||
inputRadii = Object
|
||||
.entries(input)
|
||||
.filter(([k, v]) => k.endsWith('Radius'))
|
||||
.filter(([k]) => k.endsWith('Radius'))
|
||||
.reduce((acc, e) => { acc[e[0].split('Radius')[0]] = e[1]; return acc }, {})
|
||||
}
|
||||
const radii = Object.entries(inputRadii).filter(([k, v]) => v).reduce((acc, [k, v]) => {
|
||||
const radii = Object.entries(inputRadii).filter(([, v]) => v).reduce((acc, [k, v]) => {
|
||||
acc[k] = v
|
||||
return acc
|
||||
}, {
|
||||
|
@ -526,7 +526,7 @@ export const generateRadii = (input) => {
|
|||
|
||||
return {
|
||||
rules: {
|
||||
radii: Object.entries(radii).filter(([k, v]) => v).map(([k, v]) => `--${k}Radius: ${v}px`).join(';')
|
||||
radii: Object.entries(radii).filter(([, v]) => v).map(([k, v]) => `--${k}Radius: ${v}px`).join(';')
|
||||
},
|
||||
theme: {
|
||||
radii
|
||||
|
@ -535,8 +535,8 @@ export const generateRadii = (input) => {
|
|||
}
|
||||
|
||||
export const generateFonts = (input) => {
|
||||
const fonts = Object.entries(input.fonts || {}).filter(([k, v]) => v).reduce((acc, [k, v]) => {
|
||||
acc[k] = Object.entries(v).filter(([k, v]) => v).reduce((acc, [k, v]) => {
|
||||
const fonts = Object.entries(input.fonts || {}).filter(([, v]) => v).reduce((acc, [k, v]) => {
|
||||
acc[k] = Object.entries(v).filter(([, v]) => v).reduce((acc, [k, v]) => {
|
||||
acc[k] = v
|
||||
return acc
|
||||
}, acc[k])
|
||||
|
@ -560,7 +560,7 @@ export const generateFonts = (input) => {
|
|||
rules: {
|
||||
fonts: Object
|
||||
.entries(fonts)
|
||||
.filter(([k, v]) => v)
|
||||
.filter(([, v]) => v)
|
||||
.map(([k, v]) => `--${k}Font: ${v.family}`).join(';')
|
||||
},
|
||||
theme: {
|
||||
|
|
|
@ -117,7 +117,7 @@ export const findColor = (color, { dynamicVars, staticVars }) => {
|
|||
Static:
|
||||
${JSON.stringify(staticVars, null, 2)}
|
||||
Dynamic:
|
||||
${JSON.stringify(dynamicVars, null, 2)}`)
|
||||
${JSON.stringify(dynamicVars, null, 2)}`, e)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -417,7 +417,7 @@ export const init = ({
|
|||
dynamicVars.stacked = stacked[selector]
|
||||
dynamicVars.background = computed[selector].background
|
||||
|
||||
const dynamicSlots = Object.entries(computedDirectives).filter(([k, v]) => k.startsWith('--'))
|
||||
const dynamicSlots = Object.entries(computedDirectives).filter(([k]) => k.startsWith('--'))
|
||||
|
||||
dynamicSlots.forEach(([k, v]) => {
|
||||
const [type, value] = v.split('|').map(x => x.trim()) // woah, Extreme!
|
||||
|
|
|
@ -427,7 +427,7 @@ export const useInterfaceStore = defineStore('interface', {
|
|||
const cleanDirectives = Object.fromEntries(
|
||||
Object
|
||||
.entries(x.directives)
|
||||
.filter(([k, v]) => k)
|
||||
.filter(([k]) => k)
|
||||
)
|
||||
|
||||
return { name: x.variant, ...cleanDirectives }
|
||||
|
|
|
@ -8,13 +8,13 @@ export const useListsStore = defineStore('lists', {
|
|||
allListsObject: {}
|
||||
}),
|
||||
getters: {
|
||||
findListTitle (state) {
|
||||
findListTitle () {
|
||||
return (id) => {
|
||||
if (!this.allListsObject[id]) return
|
||||
return this.allListsObject[id].title
|
||||
}
|
||||
},
|
||||
findListAccounts (state) {
|
||||
findListAccounts () {
|
||||
return (id) => [...this.allListsObject[id].accountIds]
|
||||
}
|
||||
},
|
||||
|
|
|
@ -47,7 +47,7 @@ export const usePollsStore = defineStore('polls', {
|
|||
this.trackedPolls[pollId] = 0
|
||||
}
|
||||
},
|
||||
votePoll ({ id, pollId, choices }) {
|
||||
votePoll ({ pollId, choices }) {
|
||||
return window.vuex.state.api.backendInteractor.vote({ pollId, choices }).then(poll => {
|
||||
this.mergeOrAddPoll(poll)
|
||||
return poll
|
||||
|
|
|
@ -33,7 +33,7 @@ const setSettings = async () => {
|
|||
|
||||
state.allowedNotificationTypes = new Set(
|
||||
notificationsNativeArray
|
||||
.filter(([k, v]) => v)
|
||||
.filter(([, v]) => v)
|
||||
.map(([k]) => {
|
||||
switch (k) {
|
||||
case 'mentions':
|
||||
|
|
|
@ -17,7 +17,7 @@ const testGetters = {
|
|||
findUser: state => getters.findUser(state.users),
|
||||
findUserByName: state => getters.findUserByName(state.users),
|
||||
relationship: state => getters.relationship(state.users),
|
||||
mergedConfig: state => ({
|
||||
mergedConfig: () => ({
|
||||
colors: '',
|
||||
highlight: {},
|
||||
customTheme: {
|
||||
|
|
|
@ -78,7 +78,7 @@ describe('html_line_converter', () => {
|
|||
})
|
||||
})
|
||||
describe('with processor that replaces lines with word "_" should match expected line when', () => {
|
||||
const processorReplace = (line) => '_'
|
||||
const processorReplace = () => '_'
|
||||
it('fed with regular HTML with newlines', () => {
|
||||
const input = '1<br/>2<p class="lol">3 4</p> 5 \n 6 <p > 7 <br> 8 </p> <br>\n<br/>'
|
||||
const output = '_<br/>_<p class="lol">_</p>_\n_<p >_<br>_</p> <br>\n<br/>'
|
||||
|
|
Loading…
Add table
Reference in a new issue