diff --git a/changelog.d/group-actor.add b/changelog.d/group-actor.add
new file mode 100644
index 00000000..7b62676a
--- /dev/null
+++ b/changelog.d/group-actor.add
@@ -0,0 +1 @@
+Support group actors
diff --git a/src/boot/after_store.js b/src/boot/after_store.js
index 84fea954..7039f85a 100644
--- a/src/boot/after_store.js
+++ b/src/boot/after_store.js
@@ -261,6 +261,7 @@ const getNodeInfo = async ({ store }) => {
store.dispatch('setInstanceOption', { name: 'pollLimits', value: metadata.pollLimits })
store.dispatch('setInstanceOption', { name: 'mailerEnabled', value: metadata.mailerEnabled })
store.dispatch('setInstanceOption', { name: 'quotingAvailable', value: features.includes('quote_posting') })
+ store.dispatch('setInstanceOption', { name: 'groupActorAvailable', value: features.includes('pleroma:group_actors') })
const uploadLimits = metadata.uploadLimits
store.dispatch('setInstanceOption', { name: 'uploadlimit', value: parseInt(uploadLimits.general) })
diff --git a/src/components/settings_modal/tabs/filtering_tab.vue b/src/components/settings_modal/tabs/filtering_tab.vue
index 89fdef1a..9e82fcfd 100644
--- a/src/components/settings_modal/tabs/filtering_tab.vue
+++ b/src/components/settings_modal/tabs/filtering_tab.vue
@@ -51,7 +51,7 @@
- {{ $t('settings.hide_bot_indication') }}
+ {{ $t('settings.hide_actor_type_indication') }}
el != null),
- bot: this.bot,
+ actor_type: this.actorType,
show_role: this.showRole,
birthday: this.newBirthday || '',
show_birthday: this.showBirthday
diff --git a/src/components/settings_modal/tabs/profile_tab.vue b/src/components/settings_modal/tabs/profile_tab.vue
index 1cc850cb..de5219a7 100644
--- a/src/components/settings_modal/tabs/profile_tab.vue
+++ b/src/components/settings_modal/tabs/profile_tab.vue
@@ -109,10 +109,24 @@
-
- {{ $t('settings.bot') }}
-
+
+
+
+ {{ $t('settings.actor_type_description') }}
+
+
@@ -133,7 +133,7 @@
>
diff --git a/src/components/user_avatar/user_avatar.js b/src/components/user_avatar/user_avatar.js
index 33d9a258..ffd81f87 100644
--- a/src/components/user_avatar/user_avatar.js
+++ b/src/components/user_avatar/user_avatar.js
@@ -3,11 +3,13 @@ import StillImage from '../still-image/still-image.vue'
import { library } from '@fortawesome/fontawesome-svg-core'
import {
- faRobot
+ faRobot,
+ faPeopleGroup
} from '@fortawesome/free-solid-svg-icons'
library.add(
- faRobot
+ faRobot,
+ faPeopleGroup
)
const UserAvatar = {
@@ -15,7 +17,7 @@ const UserAvatar = {
'user',
'betterShadow',
'compact',
- 'bot'
+ 'showActorTypeIndicator'
],
data () {
return {
diff --git a/src/components/user_avatar/user_avatar.vue b/src/components/user_avatar/user_avatar.vue
index 91c17611..3cbccec3 100644
--- a/src/components/user_avatar/user_avatar.vue
+++ b/src/components/user_avatar/user_avatar.vue
@@ -18,9 +18,14 @@
:class="{ '-compact': compact }"
/>
+
@@ -79,7 +84,7 @@
height: 100%;
}
- .bot-indicator {
+ .actor-type-indicator {
position: absolute;
bottom: 0;
right: 0;
diff --git a/src/components/user_card/user_card.vue b/src/components/user_card/user_card.vue
index 2de14063..2c76a220 100644
--- a/src/components/user_card/user_card.vue
+++ b/src/components/user_card/user_card.vue
@@ -124,11 +124,17 @@
{{ $t(`general.role.${visibleRole}`) }}
{{ $t('user_card.bot') }}
+
+ {{ $t('user_card.group') }}
+
{
output.show_role = data.source.pleroma.show_role
output.discoverable = data.source.pleroma.discoverable
output.show_birthday = data.pleroma.show_birthday
+ output.actor_type = data.source.pleroma.actor_type
}
}