MASSIVE refactor, replacing instance module with store, separating emoji stuff into its own store, making sure everything refers to new stores (WIP)

This commit is contained in:
Henry Jameson 2026-01-22 17:16:51 +02:00
commit 5bdf341560
95 changed files with 801 additions and 833 deletions

View file

@ -16,7 +16,8 @@ import { propsToNative } from 'src/services/attributes_helper/attributes_helper.
import localeService from 'src/services/locale/locale.service.js'
import generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'
import { usePostStatusStore } from 'src/stores/post_status'
import { useServerSideStorageStore } from 'src/stores/serverSideStorage'
import { useSyncConfigStore } from 'src/stores/sync_config.js'
import { useInstanceStore } from 'src/stores/instance.js'
import { useInterfaceStore } from '../../stores/interface'
import { useMediaViewerStore } from '../../stores/media_viewer'
import AccountActions from '../account_actions/account_actions.vue'
@ -178,7 +179,7 @@ export default {
return false
},
groupActorAvailable() {
return this.$store.state.instance.groupActorAvailable
return useInstanceStore().groupActorAvailable
},
availableActorTypes() {
return this.groupActorAvailable
@ -211,7 +212,7 @@ export default {
return Math.round(this.user.statuses_count / days)
},
emoji() {
return this.$store.state.instance.customEmoji.map((e) => ({
return useEmojiStore().customEmoji.map((e) => ({
shortcode: e.displayText,
static_url: e.imageUrl,
url: e.imageUrl,
@ -334,18 +335,18 @@ export default {
},
defaultAvatar() {
return (
this.$store.state.instance.server +
this.$store.state.instance.defaultAvatar
useInstanceStore().server +
useInstanceStore().defaultAvatar
)
},
defaultBanner() {
return (
this.$store.state.instance.server +
this.$store.state.instance.defaultBanner
useInstanceStore().server +
useInstanceStore().defaultBanner
)
},
isDefaultAvatar() {
const baseAvatar = this.$store.state.instance.defaultAvatar
const baseAvatar = useInstanceStore().defaultAvatar
return (
!this.$store.state.users.currentUser.profile_image_url ||
this.$store.state.users.currentUser.profile_image_url.includes(
@ -354,14 +355,14 @@ export default {
)
},
isDefaultBanner() {
const baseBanner = this.$store.state.instance.defaultBanner
const baseBanner = useInstanceStore().defaultBanner
return (
!this.$store.state.users.currentUser.cover_photo ||
this.$store.state.users.currentUser.cover_photo.includes(baseBanner)
)
},
fieldsLimits() {
return this.$store.state.instance.fieldsLimits
return useInstanceStore().fieldsLimits
},
maxFields() {
return this.fieldsLimits ? this.fieldsLimits.maxFields : 0
@ -370,7 +371,7 @@ export default {
return suggestor({
emoji: [
...this.$store.getters.standardEmojiList,
...this.$store.state.instance.customEmoji,
...useEmojiStore().customEmoji,
],
store: this.$store,
})
@ -379,12 +380,12 @@ export default {
return suggestor({
emoji: [
...this.$store.getters.standardEmojiList,
...this.$store.state.instance.customEmoji,
...useEmojiStore().customEmoji,
],
})
},
...mapGetters(['mergedConfig']),
...mapState(useServerSideStorageStore, {
...mapState(useSyncConfigStore, {
hideUserStats: (store) => store.prefsStorage.simple.hideUserStats,
userCardHidePersonalMarks: (store) =>
store.prefsStorage.simple.userCardHidePersonalMarks,
@ -415,7 +416,7 @@ export default {
return generateProfileLink(
user.id,
user.screen_name,
this.$store.state.instance.restrictedNicknames,
useInstanceStore().restrictedNicknames,
)
},
openProfileTab() {