-.root {
-
-}
-
.main {
text-align: center;
diff --git a/packages/frontend/src/pages/about-misskey.vue b/packages/frontend/src/pages/about-misskey.vue
index 68b98c2ab7..fbbfb6ea61 100644
--- a/packages/frontend/src/pages/about-misskey.vue
+++ b/packages/frontend/src/pages/about-misskey.vue
@@ -269,6 +269,9 @@ const patronsWithIcon = [{
}, {
name: '如月ユカ',
icon: 'https://assets.misskey-hub.net/patrons/f24a042076a041b6811a2f124eb620ca.jpg',
+}, {
+ name: 'Yatoigawa',
+ icon: 'https://assets.misskey-hub.net/patrons/505e3568885a4a488431a8f22b4553d0.jpg',
}];
const patrons = [
@@ -375,6 +378,8 @@ const patrons = [
'はとぽぷさん',
'100の人 (エスパー・イーシア)',
'ケモナーのケシン',
+ 'こまつぶり',
+ 'まゆつな空高',
];
const thereIsTreasure = ref($i && !claimedAchievements.includes('foundTreasure'));
diff --git a/packages/frontend/src/pages/admin/index.vue b/packages/frontend/src/pages/admin/index.vue
index 8a206a2f79..fd15ae1d66 100644
--- a/packages/frontend/src/pages/admin/index.vue
+++ b/packages/frontend/src/pages/admin/index.vue
@@ -15,7 +15,7 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ i18n.ts.thereIsUnresolvedAbuseReportWarning }} {{ i18n.ts.check }}
{{ i18n.ts.noMaintainerInformationWarning }} {{ i18n.ts.configure }}
- {{ i18n.ts.noInquiryUrlWarning }} {{ i18n.ts.configure }}
+ {{ i18n.ts.noInquiryUrlWarning }} {{ i18n.ts.configure }}
{{ i18n.ts.noBotProtectionWarning }} {{ i18n.ts.configure }}
{{ i18n.ts.noEmailServerWarning }} {{ i18n.ts.configure }}
diff --git a/packages/frontend/src/pages/avatar-decoration-edit-dialog.vue b/packages/frontend/src/pages/avatar-decoration-edit-dialog.vue
new file mode 100644
index 0000000000..a834f1c5fd
--- /dev/null
+++ b/packages/frontend/src/pages/avatar-decoration-edit-dialog.vue
@@ -0,0 +1,220 @@
+
+
+
+
+ {{ avatarDecoration.name }}
+ New decoration
+
+
+
+
+
+
+ {{ i18n.ts.name }}
+
+
+ {{ i18n.ts.imageUrl }}
+
+
+ {{ i18n.ts.description }}
+
+
+ {{ i18n.ts.availableRoles }}
+ {{ rolesThatCanBeUsedThisDecoration.length === 0 ? i18n.ts.all : rolesThatCanBeUsedThisDecoration.length }}
+
+
+
{{ i18n.ts.add }}
+
+
+
+
+
+
+
+
+
{{ i18n.ts.delete }}
+
+
+
+ {{ props.avatarDecoration ? i18n.ts.update : i18n.ts.create }}
+
+
+
+
+
+
+
+
diff --git a/packages/frontend/src/pages/avatar-decorations.vue b/packages/frontend/src/pages/avatar-decorations.vue
index b97e7c0eea..a5cafb1678 100644
--- a/packages/frontend/src/pages/avatar-decorations.vue
+++ b/packages/frontend/src/pages/avatar-decorations.vue
@@ -5,92 +5,38 @@ SPDX-License-Identifier: AGPL-3.0-only
-
+
-
- {{ avatarDecoration.name }}
- {{ avatarDecoration.description }}
-
-
-
-
-
-
- {{ i18n.ts.name }}
-
-
- {{ i18n.ts.description }}
-
-
- {{ i18n.ts.imageUrl }}
-
-
- {{ i18n.ts.save }}
- {{ i18n.ts.delete }}
-
-
-
+
+
+
{{ avatarDecoration.name }}
+
-
+
diff --git a/packages/frontend/src/pages/emoji-edit-dialog.vue b/packages/frontend/src/pages/emoji-edit-dialog.vue
index 969aa6bbf7..3b3f41d9b1 100644
--- a/packages/frontend/src/pages/emoji-edit-dialog.vue
+++ b/packages/frontend/src/pages/emoji-edit-dialog.vue
@@ -8,7 +8,7 @@ SPDX-License-Identifier: AGPL-3.0-only
ref="windowEl"
:initialWidth="400"
:initialHeight="500"
- :canResize="false"
+ :canResize="true"
@close="windowEl.close()"
@closed="$emit('closed')"
>
diff --git a/packages/frontend/src/pages/miauth.vue b/packages/frontend/src/pages/miauth.vue
index ffaf739ed0..e89dd5c4a5 100644
--- a/packages/frontend/src/pages/miauth.vue
+++ b/packages/frontend/src/pages/miauth.vue
@@ -4,95 +4,79 @@ SPDX-License-Identifier: AGPL-3.0-only
-->
-
-
-
-
-
-
-
-
-
{{ i18n.ts._auth.denied }}
-
-
-
{{ i18n.ts._auth.callback }}
-
{{ i18n.ts._auth.pleaseGoBack }}
-
-
-
-
{{ i18n.tsx._auth.permission({ name }) }}
-
{{ i18n.ts._auth.permissionAsk }}
-
- - {{ i18n.ts._permissions[p] }}
-
-
-
{{ i18n.tsx._auth.shareAccess({ name }) }}
-
{{ i18n.ts._auth.shareAccessAsk }}
-
- {{ i18n.ts.cancel }}
- {{ i18n.ts.accept }}
-
-
+
+
+
+
+
+
+
+
{{ i18n.ts._auth.byClickingYouWillBeRedirectedToThisUrl }}
+
{{ callback }}
+
+
+
-
-
{{ i18n.ts._auth.pleaseLogin }}
-
-
-
-
+
+
diff --git a/packages/frontend/src/pages/oauth.vue b/packages/frontend/src/pages/oauth.vue
index 733e34eb2c..8719a769e5 100644
--- a/packages/frontend/src/pages/oauth.vue
+++ b/packages/frontend/src/pages/oauth.vue
@@ -4,40 +4,28 @@ SPDX-License-Identifier: AGPL-3.0-only
-->
-
-
-
-
-
-
{{ i18n.tsx._auth.permission({ name }) }}
-
{{ i18n.ts._auth.permissionAsk }}
-
- - {{ i18n.ts._permissions[p] }}
-
-
-
{{ i18n.tsx._auth.shareAccess({ name }) }}
-
{{ i18n.ts._auth.shareAccessAsk }}
-
+
+
+
+
+
-
-
{{ i18n.ts._auth.pleaseLogin }}
-
-
-
-
+
+
diff --git a/packages/frontend/src/pages/settings/accounts.vue b/packages/frontend/src/pages/settings/accounts.vue
index 1bbedb817e..16f0716a12 100644
--- a/packages/frontend/src/pages/settings/accounts.vue
+++ b/packages/frontend/src/pages/settings/accounts.vue
@@ -19,13 +19,13 @@ SPDX-License-Identifier: AGPL-3.0-only
diff --git a/packages/frontend/src/pages/settings/avatar-decoration.dialog.vue b/packages/frontend/src/pages/settings/avatar-decoration.dialog.vue
index 853e536ea3..aa899ac649 100644
--- a/packages/frontend/src/pages/settings/avatar-decoration.dialog.vue
+++ b/packages/frontend/src/pages/settings/avatar-decoration.dialog.vue
@@ -38,7 +38,7 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ i18n.ts.update }}
{{ i18n.ts.detach }}
- {{ i18n.ts.attach }}
+ {{ i18n.ts.attach }}
@@ -61,6 +61,7 @@ const props = defineProps<{
id: string;
url: string;
name: string;
+ roleIdsThatCanBeUsedThisDecoration: string[];
};
}>();
@@ -83,6 +84,7 @@ const emit = defineEmits<{
const dialog = shallowRef>();
const exceeded = computed(() => ($i.policies.avatarDecorationLimit - $i.avatarDecorations.length) <= 0);
+const locked = computed(() => props.decoration.roleIdsThatCanBeUsedThisDecoration.length > 0 && !$i.roles.some(r => props.decoration.roleIdsThatCanBeUsedThisDecoration.includes(r.id)));
const angle = ref((props.usingIndex != null ? $i.avatarDecorations[props.usingIndex].angle : null) ?? 0);
const flipH = ref((props.usingIndex != null ? $i.avatarDecorations[props.usingIndex].flipH : null) ?? false);
const offsetX = ref((props.usingIndex != null ? $i.avatarDecorations[props.usingIndex].offsetX : null) ?? 0);
diff --git a/packages/frontend/src/pages/settings/privacy.vue b/packages/frontend/src/pages/settings/privacy.vue
index e277dfad71..da3d36b31a 100644
--- a/packages/frontend/src/pages/settings/privacy.vue
+++ b/packages/frontend/src/pages/settings/privacy.vue
@@ -45,17 +45,89 @@ SPDX-License-Identifier: AGPL-3.0-only
- {{ i18n.ts.lockdown }}
+ {{ i18n.ts.lockdown }}{{ i18n.ts.beta }}
- {{ i18n.ts._accountSettings.requireSigninToViewContents }}{{ i18n.ts.beta }}
+ {{ i18n.ts._accountSettings.requireSigninToViewContents }}
{{ i18n.ts._accountSettings.requireSigninToViewContentsDescription1 }}
{{ i18n.ts._accountSettings.requireSigninToViewContentsDescription2 }}
{{ i18n.ts._accountSettings.requireSigninToViewContentsDescription3 }}
+
+
+ {{ i18n.ts._accountSettings.makeNotesFollowersOnlyBefore }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ i18n.ts._accountSettings.makeNotesFollowersOnlyBeforeDescription }}
+ {{ i18n.ts._accountSettings.mayNotEffectForFederatedNotes }}
+
+
+
+
+ {{ i18n.ts._accountSettings.makeNotesHiddenBefore }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ i18n.ts._accountSettings.makeNotesHiddenBeforeDescription }}
+ {{ i18n.ts._accountSettings.mayNotEffectForFederatedNotes }}
+
+
@@ -87,7 +159,7 @@ SPDX-License-Identifier: AGPL-3.0-only