@@ -82,6 +82,11 @@ const menuDef = $computed(() => [{
icon: 'ti ti-user-plus',
text: i18n.ts.invite,
action: invite,
+ }, {
+ type: 'button',
+ icon: 'ti ti-user-cancel',
+ text: i18n.ts.inviteRevoke,
+ action: inviteRevoke,
}] : [])],
}, {
title: i18n.ts.administration,
@@ -106,7 +111,7 @@ const menuDef = $computed(() => [{
to: '/admin/emojis',
active: currentPage?.route.name === 'emojis',
}, {
- icon: 'ti ti-whirl',
+ icon: 'ti ti-world',
text: i18n.ts.federation,
to: '/admin/federation',
active: currentPage?.route.name === 'federation',
@@ -143,6 +148,11 @@ const menuDef = $computed(() => [{
text: i18n.ts.general,
to: '/admin/settings',
active: currentPage?.route.name === 'settings',
+ }, {
+ icon: 'ti ti-paint',
+ text: i18n.ts.branding,
+ to: '/admin/branding',
+ active: currentPage?.route.name === 'branding',
}, {
icon: 'ti ti-shield',
text: i18n.ts.moderation,
@@ -248,6 +258,16 @@ const invite = () => {
});
};
+const inviteRevoke = () => {
+ os.confirm({
+ type: 'warning',
+ text: i18n.ts.inviteRevokeConfirm,
+ }).then(({ canceled }) => {
+ if (canceled) return;
+ os.apiWithDialog('invite-revoke');
+ });
+};
+
const lookup = (ev) => {
os.popupMenu([{
text: i18n.ts.user,
diff --git a/packages/frontend/src/pages/admin/overview.vue b/packages/frontend/src/pages/admin/overview.vue
index e8295c81b5..277c2307b6 100644
--- a/packages/frontend/src/pages/admin/overview.vue
+++ b/packages/frontend/src/pages/admin/overview.vue
@@ -1,66 +1,72 @@
-
-
-
- Stats
-
-
-
-
- Active users
-
-
-
-
- Heatmap
-
-
-
-
- Retention rate
-
-
-
-
- Moderators
-
-
-
-
- Federation
-
-
+
+
+
+
+
+
+ Stats
+
+
+
+
+ Active users
+
+
+
+
+ Heatmap
+
+
+
+
+ Retention rate
+
+
+
+
+ Moderators
+
+
+
+
+ Federation
+
+
-
- Instances
-
-
-
-
- Ap requests
-
-
-
-
- New users
-
-
-
-
- Deliver queue
-
-
-
-
- Inbox queue
-
-
-
-
+
+ Instances
+
+
+
+
+ Ap requests
+
+
+
+
+ New users
+
+
+
+
+ Deliver queue
+
+
+
+
+ Inbox queue
+
+
+
+
+
+
-
diff --git a/packages/frontend/src/pages/my-groups/index.vue b/packages/frontend/src/pages/my-groups/index.vue
index d425234109..e3dd8a9d3f 100644
--- a/packages/frontend/src/pages/my-groups/index.vue
+++ b/packages/frontend/src/pages/my-groups/index.vue
@@ -2,35 +2,37 @@
-
-
-
- {{ group.name }}
-
+
-
-
-
- {{ group.name }}
-
-
-
{{ i18n.ts.leaveGroup }}
+
+
+
+
+ {{ group.name }}
+
+
+
+ {{ i18n.ts.leaveGroup }}
-
+
-
+
-
- {{ invitation.group.name }}
-
-
-
{{ i18n.ts.accept }}
-
{{ i18n.ts.reject }}
+
+ {{ invitation.group.name }}
+
+
+ {{ i18n.ts.accept }}
+ {{ i18n.ts.reject }}
@@ -138,28 +140,49 @@ definePageMetadata({
-
diff --git a/packages/frontend/src/pages/not-found.vue b/packages/frontend/src/pages/not-found.vue
index 2c9d949017..43dc41e7cc 100644
--- a/packages/frontend/src/pages/not-found.vue
+++ b/packages/frontend/src/pages/not-found.vue
@@ -1,7 +1,7 @@
-
+
{{ i18n.ts.notFoundDescription }}
@@ -10,6 +10,7 @@
diff --git a/packages/frontend/src/pages/search.note.vue b/packages/frontend/src/pages/search.note.vue
index d9b44d15f5..f77391b86c 100644
--- a/packages/frontend/src/pages/search.note.vue
+++ b/packages/frontend/src/pages/search.note.vue
@@ -1,9 +1,14 @@
-
+
+
+
+
+
+
{{ i18n.ts.options }}
@@ -90,9 +95,16 @@ async function search() {
params: {
query: searchQuery,
userId: user ? user.id : null,
+ origin: searchOrigin,
},
};
key++;
}
+
+function onInputKeydown(evt: KeyboardEvent) {
+ if (evt.key === 'Enter') {
+ search();
+ }
+}
diff --git a/packages/frontend/src/pages/search.user.vue b/packages/frontend/src/pages/search.user.vue
index bd1389ffef..2ebc1002a6 100644
--- a/packages/frontend/src/pages/search.user.vue
+++ b/packages/frontend/src/pages/search.user.vue
@@ -1,7 +1,7 @@
-
+
@@ -74,4 +74,10 @@ async function search() {
key = query;
}
+
+function onInputKeydown(evt: KeyboardEvent) {
+ if (evt.key === 'Enter') {
+ search();
+ }
+}
diff --git a/packages/frontend/src/pages/search.vue b/packages/frontend/src/pages/search.vue
index dcaf42e648..82ad0ec5f7 100644
--- a/packages/frontend/src/pages/search.vue
+++ b/packages/frontend/src/pages/search.vue
@@ -14,20 +14,24 @@
+
+
+
+
diff --git a/packages/frontend/src/pages/settings/accounts.vue b/packages/frontend/src/pages/settings/accounts.vue
index 78479be973..a54679cbff 100644
--- a/packages/frontend/src/pages/settings/accounts.vue
+++ b/packages/frontend/src/pages/settings/accounts.vue
@@ -15,7 +15,7 @@
diff --git a/packages/frontend/src/pages/settings/general.vue b/packages/frontend/src/pages/settings/general.vue
index be9b7fd783..445eac2510 100644
--- a/packages/frontend/src/pages/settings/general.vue
+++ b/packages/frontend/src/pages/settings/general.vue
@@ -35,9 +35,10 @@
{{ i18n.ts.showNoteActionsOnlyHover }}
{{ i18n.ts.showClipButtonInNoteFooter }}
+
{{ i18n.ts.showTranslateButtonInNote }} CherryPick
{{ i18n.ts.largeNoteReactions }}
{{ i18n.ts.collapseRenotes }}
-
{{ i18n.ts.collapseDefault }}
+
{{ i18n.ts.collapseDefault }} CherryPick
{{ i18n.ts.enableAdvancedMfm }}
{{ i18n.ts.enableAnimatedMfm }}
@@ -52,20 +53,21 @@
{{ i18n.ts.loadRawImages }}
{{ i18n.ts.useReactionPickerForContextMenu }}
- {{ i18n.ts.useEnterToSend }}
+ {{ i18n.ts.useEnterToSend }} CherryPick
{{ i18n.ts.useEnterToSendDescription }}
- {{ i18n.ts.postFormVisibilityHotkey }}
+ {{ i18n.ts.postFormVisibilityHotkey }} CherryPick
{{ i18n.ts.postFormVisibilityHotkeyDescription }}
+ {{ i18n.ts.enableAbsoluteTime }}
{{ i18n.ts.instanceTicker }}
-
-
+
+
@@ -115,6 +117,7 @@
{{ i18n.ts.useBlurEffectForModal }}
{{ i18n.ts.disableShowingAnimatedImages }}{{ i18n.ts.disableShowingAnimatedImagesDescription }}
{{ i18n.ts.squareAvatars }}
+ {{ i18n.ts.hideAvatarsInNote }} CherryPick
{{ i18n.ts.useSystemFont }}
{{ i18n.ts.disableDrawer }}
{{ i18n.ts.forceShowAds }}
@@ -146,7 +149,7 @@
-->
-
{{ i18n.ts.fontSize }}
+
{{ i18n.ts.fontSize }} CherryPick
{{ i18n.ts._mfm.dummy }}
{{ i18n.ts._mfm.dummy }}
@@ -209,19 +212,19 @@
{{ i18n.ts.enableInfiniteScroll }}
- {{ i18n.ts.whenServerDisconnected }}
+ {{ i18n.ts.whenServerDisconnected }} CherryPick
- {{ i18n.ts.requireRefresh }}
+ {{ i18n.ts.requireRefresh }} CherryPick
- {{ i18n.ts.newNoteReceivedNotification }}
+ {{ i18n.ts.newNoteReceivedNotification }} CherryPick
@@ -328,6 +331,9 @@ const newNoteReceivedNotificationBehavior = computed(defaultStore.makeGetterSett
const fontSize = computed(defaultStore.makeGetterSetter('fontSize'));
const collapseDefault = computed(defaultStore.makeGetterSetter('collapseDefault'));
const requireRefreshBehavior = computed(defaultStore.makeGetterSetter('requireRefreshBehavior'));
+const hideAvatarsInNote = computed(defaultStore.makeGetterSetter('hideAvatarsInNote'));
+const showTranslateButtonInNote = computed(defaultStore.makeGetterSetter('showTranslateButtonInNote'));
+const enableAbsoluteTime = computed(defaultStore.makeGetterSetter('enableAbsoluteTime'));
watch(lang, () => {
miLocalStorage.setItem('lang', lang.value as string);
@@ -366,10 +372,13 @@ watch([
useSystemFont,
enableInfiniteScroll,
squareAvatars,
+ hideAvatarsInNote,
showNoteActionsOnlyHover,
showGapBetweenNotesInTimeline,
instanceTicker,
overridedDeviceKind,
+ enableDataSaverMode,
+ enableAbsoluteTime,
], async () => {
await reloadAsk();
});
diff --git a/packages/frontend/src/pages/settings/index.vue b/packages/frontend/src/pages/settings/index.vue
index 01f7de65e9..3248c6a919 100644
--- a/packages/frontend/src/pages/settings/index.vue
+++ b/packages/frontend/src/pages/settings/index.vue
@@ -169,6 +169,11 @@ const menuDef = computed(() => [{
text: `${i18n.ts.accountMigration} (${i18n.ts.experimental})`,
to: '/settings/migration',
active: currentPage?.route.name === 'migration',
+ }, {
+ icon: 'ti ti-bulb-filled',
+ text: 'CherryPick',
+ to: '/settings/cherrypick',
+ active: currentPage?.route.name === 'cherrypick',
}, {
icon: 'ti ti-dots',
text: i18n.ts.other,
diff --git a/packages/frontend/src/pages/settings/migration.vue b/packages/frontend/src/pages/settings/migration.vue
index 102bc68523..515f972b93 100644
--- a/packages/frontend/src/pages/settings/migration.vue
+++ b/packages/frontend/src/pages/settings/migration.vue
@@ -57,8 +57,8 @@
diff --git a/packages/frontend/src/pages/user/follow-list.vue b/packages/frontend/src/pages/user/follow-list.vue
index 4e76ddfe79..e8a49927ca 100644
--- a/packages/frontend/src/pages/user/follow-list.vue
+++ b/packages/frontend/src/pages/user/follow-list.vue
@@ -10,7 +10,7 @@
+
+
+
+