diff --git a/src/api/emojiPacks.js b/src/api/emojiPacks.js
index d2093280..22d8f7ad 100644
--- a/src/api/emojiPacks.js
+++ b/src/api/emojiPacks.js
@@ -57,17 +57,17 @@ export async function listRemotePacks(host, token, instance) {
})
}
-export async function downloadFrom(host, instance_address, pack_name, as, token) {
+export async function downloadFrom(host, instance, pack_name, as, token) {
if (as.trim() === '') {
as = null
}
return await request({
baseURL: baseName(host),
- url: '/api/pleroma/emoji/packs/download_from',
+ url: '/api/pleroma/emoji/packs/download',
method: 'post',
headers: authHeaders(token),
- data: { instance_address: baseName(instance_address), pack_name, as },
+ data: { url: baseName(instance), name: pack_name, as },
timeout: 0
})
}
diff --git a/src/store/modules/emojiPacks.js b/src/store/modules/emojiPacks.js
index f92e0fa5..3b376769 100644
--- a/src/store/modules/emojiPacks.js
+++ b/src/store/modules/emojiPacks.js
@@ -116,6 +116,9 @@ const packs = {
commit('SET_REMOTE_INSTANCE', remoteInstance)
commit('SET_REMOTE_PACKS', data)
},
+ SetRemoteInstance({ commit }, instance) {
+ commit('SET_REMOTE_INSTANCE', instance)
+ },
async UpdateAndSavePackFile({ commit, getters }, args) {
const result = await updatePackFile(getters.authHost, getters.token, args)
diff --git a/src/views/emojiPacks/components/RemoteEmojiPack.vue b/src/views/emojiPacks/components/RemoteEmojiPack.vue
index 0c9ecaf3..be1bc858 100644
--- a/src/views/emojiPacks/components/RemoteEmojiPack.vue
+++ b/src/views/emojiPacks/components/RemoteEmojiPack.vue
@@ -52,7 +52,7 @@
-
+
{{ isDesktop ? $t('emoji.downloadSharedPack') : $t('emoji.downloadSharedPackMobile') }}
@@ -113,6 +113,9 @@ export default {
loadRemotePack() {
return this.$store.state.emojiPacks.activeCollapseItems.includes(this.name)
},
+ remoteInstanceAddress() {
+ return this.$store.state.emojiPacks.remoteInstance
+ },
share: {
get() { return this.pack.pack['share-files'] },
set(value) {
@@ -171,11 +174,10 @@ export default {
}
},
methods: {
- downloadFromInstance(url) {
- const instanceAddress = `${new URL(url).protocol}//${new URL(url).hostname}`
+ downloadFromInstance() {
this.$store.dispatch(
'DownloadFrom',
- { instanceAddress, packName: this.name, as: this.downloadSharedAs }
+ { instanceAddress: this.remoteInstanceAddress, packName: this.name, as: this.downloadSharedAs }
).then(() => this.$store.dispatch('ReloadEmoji'))
.then(() => this.$store.dispatch('SetLocalEmojiPacks'))
}
diff --git a/src/views/emojiPacks/index.vue b/src/views/emojiPacks/index.vue
index 8154f254..7c4539b5 100644
--- a/src/views/emojiPacks/index.vue
+++ b/src/views/emojiPacks/index.vue
@@ -63,7 +63,6 @@ export default {
components: { LocalEmojiPack, RemoteEmojiPack },
data() {
return {
- remoteInstanceAddress: '',
newPackName: '',
activeLocalPack: [],
activeRemotePack: [],
@@ -89,6 +88,14 @@ export default {
localPacks() {
return this.$store.state.emojiPacks.localPacks
},
+ remoteInstanceAddress: {
+ get() {
+ return this.$store.state.emojiPacks.remoteInstance
+ },
+ set(instance) {
+ this.$store.dispatch('SetRemoteInstance', instance)
+ }
+ },
remotePacks() {
return this.$store.state.emojiPacks.remotePacks
}