From ad3fc31206ba3cd20e6e89a1212e7069b087caa7 Mon Sep 17 00:00:00 2001 From: "Calum H. (IMB11)" Date: Tue, 20 Oct 2026 13:17:34 +0100 Subject: [PATCH 1/8] refactor: align backups page to new design --- .../src/pages/hosting/manage/Backups.vue | 9 +- .../src/pages/hosting/manage/[id]/backups.vue | 9 +- .../src/modules/archon/backups-queue/v1.ts | 30 + .../api-client/src/modules/archon/types.ts | 24 + packages/assets/generated-icons.ts | 2 + packages/assets/icons/calendar-clock.svg | 20 + .../servers/ServerSettingsModal.vue | 2 + .../composables/hosting/backup-interval.ts | 53 ++ .../composables/hosting/backups-selection.ts | 74 -- .../src/composables/server-backups-queue.ts | 23 +- .../shared/server-settings/pages/backups.vue | 254 ++++++ .../shared/server-settings/pages/index.ts | 1 + .../layouts/shared/server-settings/tabs.ts | 7 + .../wrapped/hosting/manage/backups.vue | 859 ------------------ .../hosting/manage/backups/history-table.vue | 274 ++++++ .../wrapped/hosting/manage/backups/index.vue | 414 +++++++++ .../hosting/manage/backups/slot-card.vue | 66 ++ .../manage/backups/use-focused-backup.ts | 48 + packages/ui/src/layouts/wrapped/index.ts | 2 +- packages/ui/src/locales/cs-CZ/index.json | 13 - packages/ui/src/locales/de-CH/index.json | 28 - packages/ui/src/locales/de-DE/index.json | 28 - packages/ui/src/locales/en-US/index.json | 146 ++- packages/ui/src/locales/es-419/index.json | 28 - packages/ui/src/locales/es-ES/index.json | 27 - packages/ui/src/locales/fil-PH/index.json | 4 - packages/ui/src/locales/fr-FR/index.json | 27 - packages/ui/src/locales/hu-HU/index.json | 27 - packages/ui/src/locales/it-IT/index.json | 28 - packages/ui/src/locales/ja-JP/index.json | 24 - packages/ui/src/locales/ko-KR/index.json | 27 - packages/ui/src/locales/ms-MY/index.json | 25 - packages/ui/src/locales/nl-NL/index.json | 27 - packages/ui/src/locales/pl-PL/index.json | 27 - packages/ui/src/locales/pt-BR/index.json | 28 - packages/ui/src/locales/pt-PT/index.json | 4 - packages/ui/src/locales/ru-RU/index.json | 27 - packages/ui/src/locales/sr-CS/index.json | 28 - packages/ui/src/locales/sv-SE/index.json | 24 - packages/ui/src/locales/tr-TR/index.json | 24 - packages/ui/src/locales/uk-UA/index.json | 27 - packages/ui/src/locales/vi-VN/index.json | 28 - packages/ui/src/locales/zh-CN/index.json | 28 - packages/ui/src/locales/zh-TW/index.json | 28 - 44 files changed, 1348 insertions(+), 1555 deletions(-) create mode 100644 packages/assets/icons/calendar-clock.svg create mode 100644 packages/ui/src/composables/hosting/backup-interval.ts delete mode 100644 packages/ui/src/composables/hosting/backups-selection.ts create mode 100644 packages/ui/src/layouts/shared/server-settings/pages/backups.vue delete mode 100644 packages/ui/src/layouts/wrapped/hosting/manage/backups.vue create mode 100644 packages/ui/src/layouts/wrapped/hosting/manage/backups/history-table.vue create mode 100644 packages/ui/src/layouts/wrapped/hosting/manage/backups/index.vue create mode 100644 packages/ui/src/layouts/wrapped/hosting/manage/backups/slot-card.vue create mode 100644 packages/ui/src/layouts/wrapped/hosting/manage/backups/use-focused-backup.ts diff --git a/apps/app-frontend/src/pages/hosting/manage/Backups.vue b/apps/app-frontend/src/pages/hosting/manage/Backups.vue index 0ebb7bd800b..2c0b548e88b 100644 --- a/apps/app-frontend/src/pages/hosting/manage/Backups.vue +++ b/apps/app-frontend/src/pages/hosting/manage/Backups.vue @@ -2,6 +2,7 @@ import { injectModrinthClient, injectModrinthServerContext, + serverBackupsQueueQueryOptions, ServersManageBackupsPage, } from '@modrinth/ui' import { useQueryClient } from '@tanstack/vue-query' @@ -12,11 +13,9 @@ const queryClient = useQueryClient() if (worldId.value) { try { - await queryClient.ensureQueryData({ - queryKey: ['backups', 'list', serverId], - queryFn: () => client.archon.backups_v1.list(serverId, worldId.value!), - staleTime: 30_000, - }) + await queryClient.ensureQueryData( + serverBackupsQueueQueryOptions(client, serverId, worldId.value), + ) } catch { // Let mounted layouts' useQuery surface errors; do not fail route setup. } diff --git a/apps/frontend/src/pages/hosting/manage/[id]/backups.vue b/apps/frontend/src/pages/hosting/manage/[id]/backups.vue index 467662653f8..70232e31b36 100644 --- a/apps/frontend/src/pages/hosting/manage/[id]/backups.vue +++ b/apps/frontend/src/pages/hosting/manage/[id]/backups.vue @@ -2,6 +2,7 @@ import { injectModrinthClient, injectModrinthServerContext, + serverBackupsQueueQueryOptions, ServersManageBackupsPage, } from '@modrinth/ui' import { useQueryClient } from '@tanstack/vue-query' @@ -13,11 +14,9 @@ const flags = useFeatureFlags() if (worldId.value) { try { - await queryClient.ensureQueryData({ - queryKey: ['backups', 'list', serverId], - queryFn: () => client.archon.backups_v1.list(serverId, worldId.value!), - staleTime: 30_000, - }) + await queryClient.ensureQueryData( + serverBackupsQueueQueryOptions(client, serverId, worldId.value), + ) } catch { // Let mounted layouts' useQuery surface errors; do not fail route setup. } diff --git a/packages/api-client/src/modules/archon/backups-queue/v1.ts b/packages/api-client/src/modules/archon/backups-queue/v1.ts index 4e36201f144..2cee50301e7 100644 --- a/packages/api-client/src/modules/archon/backups-queue/v1.ts +++ b/packages/api-client/src/modules/archon/backups-queue/v1.ts @@ -17,6 +17,36 @@ export class ArchonBackupsQueueV1Module extends AbstractModule { ) } + /** GET /v1/servers/:server_id/worlds/:world_id/backups-queue/with-options */ + public async listWithOptions( + serverId: string, + worldId: string, + ): Promise { + return this.client.request( + `/servers/${serverId}/worlds/${worldId}/backups-queue/with-options`, + { api: 'archon', version: 1, method: 'GET' }, + ) + } + + /** PATCH /v1/servers/:server_id/worlds/:world_id/backups-queue/with-options */ + public async patchOptions( + serverId: string, + worldId: string, + request: Archon.BackupsQueue.v1.PatchWorldBackupOptions, + acknowledgeRotation = false, + ): Promise { + return this.client.request( + `/servers/${serverId}/worlds/${worldId}/backups-queue/with-options`, + { + api: 'archon', + version: 1, + method: 'PATCH', + body: request, + params: acknowledgeRotation ? { ar: 'true' } : undefined, + }, + ) + } + /** POST /v1/servers/:server_id/worlds/:world_id/backups-queue */ public async create( serverId: string, diff --git a/packages/api-client/src/modules/archon/types.ts b/packages/api-client/src/modules/archon/types.ts index a6c916a5b61..2be0e9acdad 100644 --- a/packages/api-client/src/modules/archon/types.ts +++ b/packages/api-client/src/modules/archon/types.ts @@ -953,6 +953,7 @@ export namespace Archon { status: BackupStatus locked: boolean automated: boolean + rotates_at?: string history: BackupQueueOperation[] } @@ -960,6 +961,29 @@ export namespace Archon { active_operations: ActiveOperation[] backups: BackupQueueBackup[] } + + export type WorldBackupOptions = { + split_automatic: number + split_manual: number + limit: number + interval: number + } + + export type BackupsQueueWithOptionsResponse = BackupsQueueResponse & { + options: WorldBackupOptions + next_auto_backup_at: string | null + } + + export type PatchWorldBackupOptions = { + split_automatic?: number + split_manual?: number + interval?: number + } + + export type PatchWorldBackupOptionsResponse = { + applied: boolean + backup_ids?: string[] + } } } diff --git a/packages/assets/generated-icons.ts b/packages/assets/generated-icons.ts index ab13292e761..392dc102040 100644 --- a/packages/assets/generated-icons.ts +++ b/packages/assets/generated-icons.ts @@ -70,6 +70,7 @@ import _BrushCleaningIcon from './icons/brush-cleaning.svg?component' import _BugIcon from './icons/bug.svg?component' import _CalendarIcon from './icons/calendar.svg?component' import _CalendarArrowDownIcon from './icons/calendar-arrow-down.svg?component' +import _CalendarClockIcon from './icons/calendar-clock.svg?component' import _CardIcon from './icons/card.svg?component' import _ChartIcon from './icons/chart.svg?component' import _ChartAreaIcon from './icons/chart-area.svg?component' @@ -551,6 +552,7 @@ export const BrushCleaningIcon = _BrushCleaningIcon export const BugIcon = _BugIcon export const CalendarIcon = _CalendarIcon export const CalendarArrowDownIcon = _CalendarArrowDownIcon +export const CalendarClockIcon = _CalendarClockIcon export const CardIcon = _CardIcon export const ChartIcon = _ChartIcon export const ChartAreaIcon = _ChartAreaIcon diff --git a/packages/assets/icons/calendar-clock.svg b/packages/assets/icons/calendar-clock.svg new file mode 100644 index 00000000000..a23eaff0b60 --- /dev/null +++ b/packages/assets/icons/calendar-clock.svg @@ -0,0 +1,20 @@ + + + + + + + + + diff --git a/packages/ui/src/components/servers/ServerSettingsModal.vue b/packages/ui/src/components/servers/ServerSettingsModal.vue index 983c34cb55a..a3209b03f8a 100644 --- a/packages/ui/src/components/servers/ServerSettingsModal.vue +++ b/packages/ui/src/components/servers/ServerSettingsModal.vue @@ -9,6 +9,7 @@ import { TabbedModal } from '#ui/components' import { defineMessage, defineMessages, useVIntl } from '#ui/composables/i18n' import { ServerSettingsAdvancedPage, + ServerSettingsBackupsPage, ServerSettingsGeneralPage, ServerSettingsInstallationPage, ServerSettingsNetworkPage, @@ -76,6 +77,7 @@ const serverSettingsTabComponentMap = { general: ServerSettingsGeneralPage, installation: ServerSettingsInstallationPage, network: ServerSettingsNetworkPage, + backups: ServerSettingsBackupsPage, properties: ServerSettingsPropertiesPage, advanced: ServerSettingsAdvancedPage, support: ServerSettingsSupportPage, diff --git a/packages/ui/src/composables/hosting/backup-interval.ts b/packages/ui/src/composables/hosting/backup-interval.ts new file mode 100644 index 00000000000..5590e75d38a --- /dev/null +++ b/packages/ui/src/composables/hosting/backup-interval.ts @@ -0,0 +1,53 @@ +import { defineMessages, useVIntl } from '#ui/composables/i18n' + +const HOURS_PER_DAY = 24 +const HOURS_PER_WEEK = HOURS_PER_DAY * 7 + +export const BACKUP_INTERVAL_PRESETS = [6, 12, 24, 48, HOURS_PER_WEEK] + +const messages = defineMessages({ + hours: { + id: 'servers.backups.interval.hours', + defaultMessage: '{hours}h', + }, + days: { + id: 'servers.backups.interval.days', + defaultMessage: '{days, plural, one {# day} other {# days}}', + }, + weekly: { + id: 'servers.backups.interval.weekly', + defaultMessage: 'Weekly', + }, + everyHours: { + id: 'servers.backups.interval.every-hours', + defaultMessage: 'Every {hours}h', + }, + everyDays: { + id: 'servers.backups.interval.every-days', + defaultMessage: 'Every {days, plural, one {day} other {# days}}', + }, +}) + +export function useBackupIntervalFormat() { + const { formatMessage } = useVIntl() + + function isWholeDays(hours: number) { + return hours > HOURS_PER_DAY && hours % HOURS_PER_DAY === 0 + } + + function formatInterval(hours: number) { + if (hours === HOURS_PER_WEEK) return formatMessage(messages.weekly) + if (isWholeDays(hours)) return formatMessage(messages.days, { days: hours / HOURS_PER_DAY }) + return formatMessage(messages.hours, { hours }) + } + + function formatFrequency(hours: number) { + if (hours === HOURS_PER_WEEK) return formatMessage(messages.weekly) + if (isWholeDays(hours)) { + return formatMessage(messages.everyDays, { days: hours / HOURS_PER_DAY }) + } + return formatMessage(messages.everyHours, { hours }) + } + + return { formatInterval, formatFrequency } +} diff --git a/packages/ui/src/composables/hosting/backups-selection.ts b/packages/ui/src/composables/hosting/backups-selection.ts deleted file mode 100644 index fd8e65331d8..00000000000 --- a/packages/ui/src/composables/hosting/backups-selection.ts +++ /dev/null @@ -1,74 +0,0 @@ -import type { Archon } from '@modrinth/api-client' -import type { ComputedRef, Ref } from 'vue' -import { computed, ref, watch } from 'vue' - -type BackupQueueBackup = Archon.BackupsQueue.v1.BackupQueueBackup - -export function useBackupsSelection( - visibleBackups: Ref, - displayOrderedBackups: ComputedRef, -) { - const selectedIds = ref>(new Set()) - - watch(visibleBackups, () => { - const ids = new Set(visibleBackups.value.map((b) => b.id)) - const next = new Set() - for (const id of selectedIds.value) { - if (ids.has(id)) next.add(id) - } - if (next.size !== selectedIds.value.size) { - selectedIds.value = next - } - }) - - function toggleSelection(id: string) { - const next = new Set(selectedIds.value) - if (next.has(id)) next.delete(id) - else next.add(id) - selectedIds.value = next - } - - function selectAll() { - selectedIds.value = new Set(visibleBackups.value.map((b) => b.id)) - } - - function deselectAll() { - selectedIds.value = new Set() - } - - function toggleSelectAll() { - if (allSelected.value) deselectAll() - else selectAll() - } - - const allSelected = computed( - () => - visibleBackups.value.length > 0 && - visibleBackups.value.every((b) => selectedIds.value.has(b.id)), - ) - - const someSelected = computed(() => { - const vis = visibleBackups.value - if (vis.length === 0) return false - let n = 0 - for (const b of vis) { - if (selectedIds.value.has(b.id)) n++ - } - return n > 0 && n < vis.length - }) - - const selectedBackups = computed(() => - displayOrderedBackups.value.filter((b) => selectedIds.value.has(b.id)), - ) - - return { - selectedIds, - toggleSelection, - selectAll, - deselectAll, - toggleSelectAll, - allSelected, - someSelected, - selectedBackups, - } -} diff --git a/packages/ui/src/composables/server-backups-queue.ts b/packages/ui/src/composables/server-backups-queue.ts index e05a7166268..f121dfe34cd 100644 --- a/packages/ui/src/composables/server-backups-queue.ts +++ b/packages/ui/src/composables/server-backups-queue.ts @@ -1,4 +1,4 @@ -import type { Archon } from '@modrinth/api-client' +import type { AbstractModrinthClient, Archon } from '@modrinth/api-client' import { useQuery, useQueryClient } from '@tanstack/vue-query' import { computed, reactive, type Ref } from 'vue' @@ -8,6 +8,17 @@ import { defineMessage } from './i18n' type ProgressKey = `${string}:${'create' | 'restore'}` +export function serverBackupsQueueQueryOptions( + client: AbstractModrinthClient, + serverId: string, + worldId: string, +) { + return { + queryKey: ['backups', 'queue', serverId] as const, + queryFn: () => client.archon.backups_queue_v1.listWithOptions(serverId, worldId), + } +} + export function useServerBackupsQueue(serverId: Ref, worldId: Ref) { const client = injectModrinthClient() const queryClient = useQueryClient() @@ -19,15 +30,19 @@ export function useServerBackupsQueue(serverId: Ref, worldId: Ref client.archon.backups_queue_v1.list(serverId.value, worldId.value!), + queryFn: () => client.archon.backups_queue_v1.listWithOptions(serverId.value, worldId.value!), enabled: computed(() => !!worldId.value), refetchInterval: (q) => { - const data = q.state.data as Archon.BackupsQueue.v1.BackupsQueueResponse | undefined + const data = q.state.data as + | Archon.BackupsQueue.v1.BackupsQueueWithOptionsResponse + | undefined return data?.active_operations?.length ? 30_000 : false }, }) const data = computed(() => query.data.value) + const options = computed(() => data.value?.options ?? null) + const nextAutoBackupAt = computed(() => data.value?.next_auto_backup_at ?? null) const activeOperations = computed(() => data.value?.active_operations ?? []) const backups = computed(() => [...(data.value?.backups ?? [])].sort( @@ -118,6 +133,8 @@ export function useServerBackupsQueue(serverId: Ref, worldId: Ref +
+ + +
+
+ +
+
+
+ + {{ formatMessage(messages.autoDescription) }} +
+ +
+ + +
+ + +
+ + + diff --git a/packages/ui/src/layouts/shared/server-settings/pages/index.ts b/packages/ui/src/layouts/shared/server-settings/pages/index.ts index 1577c34b3d1..feea577932a 100644 --- a/packages/ui/src/layouts/shared/server-settings/pages/index.ts +++ b/packages/ui/src/layouts/shared/server-settings/pages/index.ts @@ -1,4 +1,5 @@ export { default as ServerSettingsAdvancedPage } from './advanced.vue' +export { default as ServerSettingsBackupsPage } from './backups.vue' export { default as ServerSettingsGeneralPage } from './general.vue' export { default as ServerSettingsInstallationPage } from './installation.vue' export { default as ServerSettingsNetworkPage } from './network.vue' diff --git a/packages/ui/src/layouts/shared/server-settings/tabs.ts b/packages/ui/src/layouts/shared/server-settings/tabs.ts index 518ceb40d6c..c1c8ade5266 100644 --- a/packages/ui/src/layouts/shared/server-settings/tabs.ts +++ b/packages/ui/src/layouts/shared/server-settings/tabs.ts @@ -1,6 +1,7 @@ import type { Archon } from '@modrinth/api-client' import { CardIcon, + DatabaseBackupIcon, ListIcon, ModrinthIcon, SettingsIcon, @@ -15,6 +16,7 @@ export type ServerSettingsTabId = | 'general' | 'installation' | 'network' + | 'backups' | 'properties' | 'advanced' | 'support' @@ -54,6 +56,11 @@ export const serverSettingsTabDefinitions: ServerSettingsTabDefinition[] = [ label: 'Network', icon: VersionIcon, }, + { + id: 'backups', + label: 'Backups', + icon: DatabaseBackupIcon, + }, { id: 'properties', label: 'Properties', diff --git a/packages/ui/src/layouts/wrapped/hosting/manage/backups.vue b/packages/ui/src/layouts/wrapped/hosting/manage/backups.vue deleted file mode 100644 index 8baa6978917..00000000000 --- a/packages/ui/src/layouts/wrapped/hosting/manage/backups.vue +++ /dev/null @@ -1,859 +0,0 @@ - - - - - diff --git a/packages/ui/src/layouts/wrapped/hosting/manage/backups/history-table.vue b/packages/ui/src/layouts/wrapped/hosting/manage/backups/history-table.vue new file mode 100644 index 00000000000..d4e37997576 --- /dev/null +++ b/packages/ui/src/layouts/wrapped/hosting/manage/backups/history-table.vue @@ -0,0 +1,274 @@ + + + + + diff --git a/packages/ui/src/layouts/wrapped/hosting/manage/backups/index.vue b/packages/ui/src/layouts/wrapped/hosting/manage/backups/index.vue new file mode 100644 index 00000000000..2965ecf2fc1 --- /dev/null +++ b/packages/ui/src/layouts/wrapped/hosting/manage/backups/index.vue @@ -0,0 +1,414 @@ + + + diff --git a/packages/ui/src/layouts/wrapped/hosting/manage/backups/slot-card.vue b/packages/ui/src/layouts/wrapped/hosting/manage/backups/slot-card.vue new file mode 100644 index 00000000000..e8a921aa522 --- /dev/null +++ b/packages/ui/src/layouts/wrapped/hosting/manage/backups/slot-card.vue @@ -0,0 +1,66 @@ + + + diff --git a/packages/ui/src/layouts/wrapped/hosting/manage/backups/use-focused-backup.ts b/packages/ui/src/layouts/wrapped/hosting/manage/backups/use-focused-backup.ts new file mode 100644 index 00000000000..25f8053be6a --- /dev/null +++ b/packages/ui/src/layouts/wrapped/hosting/manage/backups/use-focused-backup.ts @@ -0,0 +1,48 @@ +import { computed, nextTick, onBeforeUnmount, type Ref, ref, watch } from 'vue' +import { useRoute } from 'vue-router' + +const HIGHLIGHT_DURATION_MS = 5_000 + +export function useFocusedBackup(backupIds: Ref) { + const route = useRoute() + const focusedBackupId = computed(() => + typeof route.query.backup === 'string' ? route.query.backup : null, + ) + + const highlightedBackupId = ref(null) + let handledBackupId: string | null = null + let highlightTimeout: ReturnType | undefined + + function clearHighlight() { + highlightedBackupId.value = null + clearTimeout(highlightTimeout) + } + + watch( + [focusedBackupId, backupIds], + async ([backupId, ids]) => { + if (!backupId) { + handledBackupId = null + clearHighlight() + return + } + if (backupId === handledBackupId || !ids.includes(backupId)) return + + handledBackupId = backupId + highlightedBackupId.value = backupId + clearTimeout(highlightTimeout) + highlightTimeout = setTimeout(clearHighlight, HIGHLIGHT_DURATION_MS) + + if (typeof document === 'undefined') return + await nextTick() + document + .querySelector(`[data-backup-id="${CSS.escape(backupId)}"]`) + ?.scrollIntoView({ block: 'center', behavior: 'smooth' }) + }, + { immediate: true }, + ) + + onBeforeUnmount(() => clearTimeout(highlightTimeout)) + + return { highlightedBackupId } +} diff --git a/packages/ui/src/layouts/wrapped/index.ts b/packages/ui/src/layouts/wrapped/index.ts index 59ba8d71097..cd9d3a6076e 100644 --- a/packages/ui/src/layouts/wrapped/index.ts +++ b/packages/ui/src/layouts/wrapped/index.ts @@ -1,6 +1,6 @@ export { default as ServersManageAccessPage } from './hosting/manage/[id]/access/access.vue' export { default as ServerOnboardingPanelPage } from './hosting/manage/[id]/onboarding.vue' -export { default as ServersManageBackupsPage } from './hosting/manage/backups.vue' +export { default as ServersManageBackupsPage } from './hosting/manage/backups/index.vue' export { default as ServersManageContentPage } from './hosting/manage/content.vue' export { default as ServersManageFilesPage } from './hosting/manage/files.vue' export { default as ServersManagePageIndex } from './hosting/manage/index.vue' diff --git a/packages/ui/src/locales/cs-CZ/index.json b/packages/ui/src/locales/cs-CZ/index.json index b0e4c623850..22175966e33 100644 --- a/packages/ui/src/locales/cs-CZ/index.json +++ b/packages/ui/src/locales/cs-CZ/index.json @@ -4310,9 +4310,6 @@ "servers.backups.delete-modal.header": { "defaultMessage": "Smazat {count, plural, one {zálohu} other {zálohy}}" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Vymazat filtry" - }, "servers.backups.item.auto": { "defaultMessage": "Automaticky" }, @@ -4337,15 +4334,6 @@ "servers.backups.toolbar.create-backup": { "defaultMessage": "Vytvořit zálohu" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatický" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manuální" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Vybrat vše" - }, "servers.grant-access-modal.already-member-tooltip": { "defaultMessage": "Uživatel je již pozván" }, @@ -5190,4 +5178,3 @@ "defaultMessage": "Typ" } } - diff --git a/packages/ui/src/locales/de-CH/index.json b/packages/ui/src/locales/de-CH/index.json index 774034f023b..60829d0f8b4 100644 --- a/packages/ui/src/locales/de-CH/index.json +++ b/packages/ui/src/locales/de-CH/index.json @@ -5240,12 +5240,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Wiederherstellung aus Sicherung" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "Massenactionen für {count, plural, one {ein ausgewähltes Backup} other {# ausgewählte Backups}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Lösche {total, plural, one {eine Sicherung} other {# Sicherungen}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# Sicherung ausgewählt} other {# Sicherungen ausgewählt}}" }, @@ -5270,15 +5264,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Noch keine Sicherungen" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Filter entfernen" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Versuche es mit einem anderen Filter oder entferne alle Filter, um alle Sicherungen anzuzeigen." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Keine übereinstimmenden Sicherungen" - }, "servers.backups.item.auto": { "defaultMessage": "Auto" }, @@ -5300,21 +5285,9 @@ "servers.backups.item.restore": { "defaultMessage": "Wiederherstellen" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Sicherung {name} auswählen" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Sicherung erstellen" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatisch" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manuell" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Alle auswählen" - }, "servers.busy.backup-creating": { "defaultMessage": "Backup-Erstellung im gange" }, @@ -7275,4 +7248,3 @@ "defaultMessage": "Typ" } } - diff --git a/packages/ui/src/locales/de-DE/index.json b/packages/ui/src/locales/de-DE/index.json index 4a2bd95729d..a62b9d7e789 100644 --- a/packages/ui/src/locales/de-DE/index.json +++ b/packages/ui/src/locales/de-DE/index.json @@ -5240,12 +5240,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Wiederherstellung aus Sicherung" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Massenaktionen für ein ausgewähltes Backup} other {Massenaktionen für # ausgewählte Backups}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "{total, plural, one {# Sicherung wird} other {# Sicherungen werden}} gelöscht..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# Sicherung ausgewählt} other {# Sicherungen ausgewählt}}" }, @@ -5270,15 +5264,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Noch keine Sicherungen" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Filter entfernen" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Versuche es mit einem anderen Filter oder entferne alle Filter, um alle Sicherungen anzuzeigen." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Keine übereinstimmenden Sicherungen" - }, "servers.backups.item.auto": { "defaultMessage": "Auto" }, @@ -5300,21 +5285,9 @@ "servers.backups.item.restore": { "defaultMessage": "Wiederherstellen" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Sicherung {name} auswählen" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Sicherung erstellen" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatisch" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manuell" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Alle auswählen" - }, "servers.busy.backup-creating": { "defaultMessage": "Sicherung wird erstellt" }, @@ -7275,4 +7248,3 @@ "defaultMessage": "Typ" } } - diff --git a/packages/ui/src/locales/en-US/index.json b/packages/ui/src/locales/en-US/index.json index 8f6d71baecf..7270fc23f41 100644 --- a/packages/ui/src/locales/en-US/index.json +++ b/packages/ui/src/locales/en-US/index.json @@ -5315,15 +5315,15 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Restoring from backup" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Bulk actions for one selected backup} other {Bulk actions for # selected backups}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Deleting {total, plural, one {# backup} other {# backups}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# backup selected} other {# backups selected}}" }, + "servers.backups.create.in-progress": { + "defaultMessage": "A backup is already queued or in progress" + }, + "servers.backups.create.slots-full": { + "defaultMessage": "All {limit, plural, one {# manual backup slot is} other {# manual backup slots are}} in use" + }, "servers.backups.delete-modal.admonition-body": { "defaultMessage": "Once deleted, {count, plural, one {this backup cannot} other {these backups cannot}} be recovered. Deletion is permanent." }, @@ -5339,20 +5339,68 @@ "servers.backups.delete-modal.header": { "defaultMessage": "Delete {count, plural, one {backup} other {backups}}" }, + "servers.backups.delete.error": { + "defaultMessage": "Failed to delete {count, plural, one {backup} other {# backups}}" + }, "servers.backups.empty.description": { "defaultMessage": "Create your first backup" }, "servers.backups.empty.heading": { "defaultMessage": "No backups yet" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Clear filters" + "servers.backups.history.auto-badge": { + "defaultMessage": "Auto" + }, + "servers.backups.history.column.created": { + "defaultMessage": "Created" + }, + "servers.backups.history.column.created-by": { + "defaultMessage": "Created by" + }, + "servers.backups.history.column.name": { + "defaultMessage": "Name" + }, + "servers.backups.history.creator-avatar-alt": { + "defaultMessage": "{username}'s avatar" + }, + "servers.backups.history.creator.support": { + "defaultMessage": "Support" + }, + "servers.backups.history.more-options": { + "defaultMessage": "More options for {name}" + }, + "servers.backups.history.no-results": { + "defaultMessage": "No backups match your search." + }, + "servers.backups.history.rename": { + "defaultMessage": "Rename" + }, + "servers.backups.history.restore": { + "defaultMessage": "Restore" + }, + "servers.backups.history.search-label": { + "defaultMessage": "Search backups" + }, + "servers.backups.history.search-placeholder": { + "defaultMessage": "Search {count, plural, one {# backup} other {# backups}}..." + }, + "servers.backups.history.title": { + "defaultMessage": "Backup history" + }, + "servers.backups.interval.days": { + "defaultMessage": "{days, plural, one {# day} other {# days}}" }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Try a different filter or clear filters to see all backups." + "servers.backups.interval.every-days": { + "defaultMessage": "Every {days, plural, one {day} other {# days}}" }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "No backups match" + "servers.backups.interval.every-hours": { + "defaultMessage": "Every {hours}h" + }, + "servers.backups.interval.hours": { + "defaultMessage": "{hours}h" + }, + "servers.backups.interval.weekly": { + "defaultMessage": "Weekly" }, "servers.backups.item.auto": { "defaultMessage": "Auto" @@ -5375,20 +5423,44 @@ "servers.backups.item.restore": { "defaultMessage": "Restore" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Select backup {name}" + "servers.backups.load-error.description": { + "defaultMessage": "We couldn't load your server's backups." }, - "servers.backups.toolbar.create-backup": { - "defaultMessage": "Create backup" + "servers.backups.load-error.title": { + "defaultMessage": "Failed to load backups" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Auto" + "servers.backups.restore.operation-in-progress": { + "defaultMessage": "A backup operation is already queued or in progress" }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manual" + "servers.backups.restore.server-running": { + "defaultMessage": "Stop your server before restoring a backup" }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Select all" + "servers.backups.slots.auto.next": { + "defaultMessage": "Next {time}" + }, + "servers.backups.slots.auto.next-soon": { + "defaultMessage": "Next backup starting soon" + }, + "servers.backups.slots.auto.off": { + "defaultMessage": "Off" + }, + "servers.backups.slots.auto.off-description": { + "defaultMessage": "Turn on auto backups in settings" + }, + "servers.backups.slots.auto.title": { + "defaultMessage": "Auto backups" + }, + "servers.backups.slots.manual.description": { + "defaultMessage": "Manually created" + }, + "servers.backups.slots.manual.title": { + "defaultMessage": "Manual backups" + }, + "servers.backups.slots.used": { + "defaultMessage": "{used} / {limit, plural, one {# slot} other {# slots}}" + }, + "servers.backups.toolbar.create-backup": { + "defaultMessage": "Create backup" }, "servers.busy.backup-creating": { "defaultMessage": "Backup creation in progress" @@ -6014,6 +6086,36 @@ "servers.settings.advanced.sftp.roll-credentials-success-title": { "defaultMessage": "SFTP credentials rotated" }, + "servers.settings.backups.auto.description": { + "defaultMessage": "Automatically back up your server at regular intervals." + }, + "servers.settings.backups.auto.title": { + "defaultMessage": "Auto backups" + }, + "servers.settings.backups.interval.title": { + "defaultMessage": "Backup interval" + }, + "servers.settings.backups.manual-slots.description": { + "defaultMessage": "Choose how many of your {limit} backup slots to use for manual and automatic backups." + }, + "servers.settings.backups.manual-slots.title": { + "defaultMessage": "Manual backup slots" + }, + "servers.settings.backups.rotation.description": { + "defaultMessage": "Fewer auto backup slots means {count, plural, one {your oldest auto backup} other {your # oldest auto backups}} will be deleted." + }, + "servers.settings.backups.rotation.proceed": { + "defaultMessage": "Save and delete" + }, + "servers.settings.backups.rotation.title": { + "defaultMessage": "Remove auto backups?" + }, + "servers.settings.backups.save.error-title": { + "defaultMessage": "Failed to update backup settings" + }, + "servers.settings.backups.save.success-title": { + "defaultMessage": "Backup settings updated" + }, "servers.settings.support.action-log-title": { "defaultMessage": "Action log" }, diff --git a/packages/ui/src/locales/es-419/index.json b/packages/ui/src/locales/es-419/index.json index ce8ada6bc58..5def6108e3d 100644 --- a/packages/ui/src/locales/es-419/index.json +++ b/packages/ui/src/locales/es-419/index.json @@ -5225,12 +5225,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Restaurando desde respaldo" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Acciones masivas para un respaldo seleccionado} other {Acciones masivas para # respaldos seleccionados}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Eliminando {total, plural, one {# respaldo} other {# respaldos}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# respaldo seleccionado} other {# respaldos seleccionados}}" }, @@ -5255,15 +5249,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Aún no hay respaldos" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Limpiar filtros" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Prueba con otro filtro o desactiva los filtros para ver todos los respaldos." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Ningún respaldo coincide" - }, "servers.backups.item.auto": { "defaultMessage": "Auto" }, @@ -5285,21 +5270,9 @@ "servers.backups.item.restore": { "defaultMessage": "Restaurar" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Selecciona el respaldo {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Crear respaldo" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automático" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manual" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Seleccionar todo" - }, "servers.busy.backup-creating": { "defaultMessage": "Creación de respaldo en curso" }, @@ -7236,4 +7209,3 @@ "defaultMessage": "Tipo" } } - diff --git a/packages/ui/src/locales/es-ES/index.json b/packages/ui/src/locales/es-ES/index.json index 0a4176cead2..99956dbef2a 100644 --- a/packages/ui/src/locales/es-ES/index.json +++ b/packages/ui/src/locales/es-ES/index.json @@ -5117,12 +5117,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Restaurando desde una copia de seguridad" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural,one {Acciones masivas seleccionado para un respaldo} other {Acciones masivas seleccionados para # respaldos}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Borrando {total, plural, one {# respaldo} other {# respaldos}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# respaldo seleccionado} other {# respaldos seleccionados}}" }, @@ -5147,15 +5141,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Ningún respaldo todavía" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Limpiar filtros" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Intenta un filtro diferente o borre los filtros para ver todos los respaldos." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Ningún respaldo coincide" - }, "servers.backups.item.auto": { "defaultMessage": "Auto" }, @@ -5177,21 +5162,9 @@ "servers.backups.item.restore": { "defaultMessage": "Restaurar" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Selecciona respaldo {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Crear respaldo" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Auto" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manual" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Seleccionar todo" - }, "servers.busy.backup-creating": { "defaultMessage": "Creación de copia de seguridad en curso" }, diff --git a/packages/ui/src/locales/fil-PH/index.json b/packages/ui/src/locales/fil-PH/index.json index d87864a80b7..bc57e2a8b03 100644 --- a/packages/ui/src/locales/fil-PH/index.json +++ b/packages/ui/src/locales/fil-PH/index.json @@ -2042,9 +2042,6 @@ "servers.backups.item.restore": { "defaultMessage": "I-restore" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Kusa" - }, "servers.list-empty.already-have-server-label": { "defaultMessage": "Mayroon ka nang server?" }, @@ -2736,4 +2733,3 @@ "defaultMessage": "Uri" } } - diff --git a/packages/ui/src/locales/fr-FR/index.json b/packages/ui/src/locales/fr-FR/index.json index f7d260cf59a..e4a6c71ccb1 100644 --- a/packages/ui/src/locales/fr-FR/index.json +++ b/packages/ui/src/locales/fr-FR/index.json @@ -5126,12 +5126,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Restauration de la sauvegarde" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "Actions groupées pour {count, plural, one {une sauvegarde sélectionnée} other {# sauvegardes sélectionnées}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Suppression de {total, plural, one {# sauvegarde} other {# sauvegardes}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# sauvegarde sélectionnée} other {# sauvegardes sélectionnées}}" }, @@ -5156,15 +5150,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Aucune sauvegarde" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Effacer les filtres" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Essayez un filtre différent ou effacez les filtres pour voir toutes les sauvegardes." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Aucune sauvegarde ne correspond aux filtres sélectionnés" - }, "servers.backups.item.auto": { "defaultMessage": "Auto" }, @@ -5186,21 +5171,9 @@ "servers.backups.item.restore": { "defaultMessage": "Restaurer" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Sélectionner une sauvegarde {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Sauvegarder" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Auto" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manuelle" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Tout sélectionner" - }, "servers.busy.backup-creating": { "defaultMessage": "Création d'une sauvegarde en cours" }, diff --git a/packages/ui/src/locales/hu-HU/index.json b/packages/ui/src/locales/hu-HU/index.json index 9fb8f6b3cf1..97ad9de5831 100644 --- a/packages/ui/src/locales/hu-HU/index.json +++ b/packages/ui/src/locales/hu-HU/index.json @@ -5207,12 +5207,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Visszaállítás biztonsági mentésből" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Tömeges műveletek 1 kiválasztott biztonsági mentéshez} other {Tömeges műveletek # kiválasztott biztonsági mentéshez}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "{total} biztonsági mentés törlése..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count} biztonsági mentés kiválasztva" }, @@ -5237,15 +5231,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Még nincsenek biztonsági mentések" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Szűrők törlése" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Próbálj ki egy másik szűrőt, vagy töröld a szűrőket, hogy az összes biztonsági mentést megtekinthesd." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Nincs találat" - }, "servers.backups.item.auto": { "defaultMessage": "Automatikus" }, @@ -5267,21 +5252,9 @@ "servers.backups.item.restore": { "defaultMessage": "Visszaállítás" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "{name} biztonsági mentés kiválasztása" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Biztonsági mentés létrehozása" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatikus" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Kézi" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Összes kijelölése" - }, "servers.busy.backup-creating": { "defaultMessage": "Biztonsági mentés létrehozás folyamatban van" }, diff --git a/packages/ui/src/locales/it-IT/index.json b/packages/ui/src/locales/it-IT/index.json index 0e421a02252..93a45dc4f5a 100644 --- a/packages/ui/src/locales/it-IT/index.json +++ b/packages/ui/src/locales/it-IT/index.json @@ -5240,12 +5240,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Ripristinando dal backup..." }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Operazioni su un backup selezionato} other {Operazioni su # backup selezionati}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Eliminazione di {total} backup..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# backup selezionato} other {# backup selezionati}}" }, @@ -5270,15 +5264,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Ancora nessun backup" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Rimuovi filtri" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Cambia o rimuovi i filtri per mostrare i backup." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Nessun backup trovato" - }, "servers.backups.item.auto": { "defaultMessage": "Automatico" }, @@ -5300,21 +5285,9 @@ "servers.backups.item.restore": { "defaultMessage": "Ripristina" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Seleziona il backup {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Crea backup" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatico" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manuale" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Seleziona tutto" - }, "servers.busy.backup-creating": { "defaultMessage": "Creazione del backup in corso" }, @@ -7275,4 +7248,3 @@ "defaultMessage": "Tipo" } } - diff --git a/packages/ui/src/locales/ja-JP/index.json b/packages/ui/src/locales/ja-JP/index.json index 0fae7c2a6ee..833ca72e6e3 100644 --- a/packages/ui/src/locales/ja-JP/index.json +++ b/packages/ui/src/locales/ja-JP/index.json @@ -4958,9 +4958,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "バックアップから復元しています" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {選択したバックアップ1件に対する一括操作} other {選択したバックアップ#件に対する一括操作}}" - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural,one {# バックアップが選択されました} other {# バックアップが選択されました}}" }, @@ -4985,15 +4982,6 @@ "servers.backups.empty.heading": { "defaultMessage": "バックアップパックはありません" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "フィルターを除く" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "すべてのバックアップを閲覧するには違ったフィルターまたはフィルターを除いてください。" - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "一致するバックアップがありません" - }, "servers.backups.item.auto": { "defaultMessage": "自動" }, @@ -5015,21 +5003,9 @@ "servers.backups.item.restore": { "defaultMessage": "修復" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "{name}というバックアップを選択する" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "バックアップを作成" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "自動" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "手動" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "すべて選択" - }, "servers.busy.backup-creating": { "defaultMessage": "バックアップ作成中" }, diff --git a/packages/ui/src/locales/ko-KR/index.json b/packages/ui/src/locales/ko-KR/index.json index fcd700c1d0b..e9fcd66e206 100644 --- a/packages/ui/src/locales/ko-KR/index.json +++ b/packages/ui/src/locales/ko-KR/index.json @@ -4865,12 +4865,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "백업으로부터 복원하는 중" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "백업 {count, plural, other {#}}개 선택됨" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "백업 {total, plural, other {#}}개 삭제 중..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "백업 {count, plural, other {#}}개 선택됨" }, @@ -4895,15 +4889,6 @@ "servers.backups.empty.heading": { "defaultMessage": "백업이 없습니다" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "필터 초기화" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "다른 필터를 적용하거나 필터를 모두 해제하여 모든 백업을 확인해 보세요." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "일치하는 백업 없음" - }, "servers.backups.item.auto": { "defaultMessage": "자동" }, @@ -4925,21 +4910,9 @@ "servers.backups.item.restore": { "defaultMessage": "복원" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "{name} 백업 선택" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "백업 생성" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "자동" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "수동" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "모두 선택" - }, "servers.busy.backup-creating": { "defaultMessage": "백업 생성 진행 중" }, diff --git a/packages/ui/src/locales/ms-MY/index.json b/packages/ui/src/locales/ms-MY/index.json index 2de9b975920..a1ed075359d 100644 --- a/packages/ui/src/locales/ms-MY/index.json +++ b/packages/ui/src/locales/ms-MY/index.json @@ -3773,12 +3773,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Memulihkan daripada sandaran" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, other {Tindakan pukal untuk # sandaran yang dipilih}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Sedang memadamkan {total, plural, other {# sandaran}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, other {# sandaran dipilih}}" }, @@ -3794,12 +3788,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Belum ada sandaran" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Kosongkan tapisan" - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Tiada sandaran yang sepadan" - }, "servers.backups.item.auto": { "defaultMessage": "Auto" }, @@ -3821,21 +3809,9 @@ "servers.backups.item.restore": { "defaultMessage": "Pulihkan" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Pilih sandaran {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Cipta sandaran" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Auto" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manual" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Pilih semua" - }, "servers.busy.backup-creating": { "defaultMessage": "Penciptaan sandaran sedang dijalankan" }, @@ -4959,4 +4935,3 @@ "defaultMessage": "Jenis" } } - diff --git a/packages/ui/src/locales/nl-NL/index.json b/packages/ui/src/locales/nl-NL/index.json index 3b377ea5b36..dba16980070 100644 --- a/packages/ui/src/locales/nl-NL/index.json +++ b/packages/ui/src/locales/nl-NL/index.json @@ -5096,12 +5096,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Terugzetten vanuit een back-up" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Bulkacties voor één geselecteerde back-up} other {Bulkacties voor # geselecteerde back-ups}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "{total, plural, one {# back-up} other {# back-ups}} verwijderen..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# back-up geselecteerd} other {# back-ups geselecteerd}}" }, @@ -5126,15 +5120,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Nog geen back-ups" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Filters verwijderen" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Probeer een ander filter of verwijder de filters om alle back-ups te bekijken." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Geen back-ups gevonden" - }, "servers.backups.item.auto": { "defaultMessage": "Automatisch" }, @@ -5156,21 +5141,9 @@ "servers.backups.item.restore": { "defaultMessage": "Herstel" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Selecteer back-up {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Back-up maken" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatisch" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Handmatig" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Alles selecteren" - }, "servers.busy.backup-creating": { "defaultMessage": "Back-up wordt gemaakt" }, diff --git a/packages/ui/src/locales/pl-PL/index.json b/packages/ui/src/locales/pl-PL/index.json index 5fd9e080976..8b0df0d6e9a 100644 --- a/packages/ui/src/locales/pl-PL/index.json +++ b/packages/ui/src/locales/pl-PL/index.json @@ -5222,12 +5222,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Przywracanie z kopii zapasowej" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "Masowe akcje dla {count, plural, one {jednej wybranej kopii zapasowej} other {# wybranych kopii zapasowych}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Usuwanie {total, plural, one {# kopii zapasowej} other {# kopii zapasowych}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "Wybrano {count, plural, one {# kopię zapasową} few {# kopie zapasowe} other {# kopii zapasowych}}" }, @@ -5252,15 +5246,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Nie masz jeszcze żadnych kopii zapasowych" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Wyczyść filtry" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Spróbuj użyć innego filtru lub wyczyść filtry, by zobaczyć wszystkie kopie zapasowe." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Nie znaleziono pasujących kopii zapasowych" - }, "servers.backups.item.auto": { "defaultMessage": "Automatyczne" }, @@ -5282,21 +5267,9 @@ "servers.backups.item.restore": { "defaultMessage": "Przywróć" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Wybierz kopię zapasową {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Utwórz kopię zapasową" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatyczne" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Ręczne" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Wybierz wszystkie" - }, "servers.busy.backup-creating": { "defaultMessage": "Trwa tworzenie kopii zapasowej" }, diff --git a/packages/ui/src/locales/pt-BR/index.json b/packages/ui/src/locales/pt-BR/index.json index 2c3bcd71f7c..88d59f13061 100644 --- a/packages/ui/src/locales/pt-BR/index.json +++ b/packages/ui/src/locales/pt-BR/index.json @@ -5240,12 +5240,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Restaurando da cópia de segurança" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "Ações em massa para {count, plural, one {uma cópia de segurança selecionada} other {# cópias de segurança selecionadas}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Excluindo {total, plural, one {# cópia de segurança} other {# cópias de segurança}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# cópia de segurança selecionada} other {# cópias de segurança selecionadas}}" }, @@ -5270,15 +5264,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Ainda não há cópias de segurança" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Limpar filtros" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Tente um filtro diferente ou limpe os filtros para ver todas as cópias de segurança." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Nenhuma cópia de segurança corresponde" - }, "servers.backups.item.auto": { "defaultMessage": "Automático" }, @@ -5300,21 +5285,9 @@ "servers.backups.item.restore": { "defaultMessage": "Restaurar" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Selecionar cópia de segurança {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Criar cópia de segurança" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automático" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manual" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Selecionar tudo" - }, "servers.busy.backup-creating": { "defaultMessage": "Criação de cópia de segurança em andamento" }, @@ -7275,4 +7248,3 @@ "defaultMessage": "Tipo" } } - diff --git a/packages/ui/src/locales/pt-PT/index.json b/packages/ui/src/locales/pt-PT/index.json index 6c868d17a98..f7ba67a0f44 100644 --- a/packages/ui/src/locales/pt-PT/index.json +++ b/packages/ui/src/locales/pt-PT/index.json @@ -2321,9 +2321,6 @@ "servers.backups.item.restore": { "defaultMessage": "Restaurar" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automático" - }, "servers.listing.new-label": { "defaultMessage": "Novo" }, @@ -3045,4 +3042,3 @@ "defaultMessage": "Tipo" } } - diff --git a/packages/ui/src/locales/ru-RU/index.json b/packages/ui/src/locales/ru-RU/index.json index eec162a49bc..fa8f70d267e 100644 --- a/packages/ui/src/locales/ru-RU/index.json +++ b/packages/ui/src/locales/ru-RU/index.json @@ -5153,12 +5153,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Восстановление из резервной копии" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "Действия с выбранными резервными копиями" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Удаление {total, plural, one {# резервной копии} other {# резервных копий}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural,one {# резервная копия выбрана} other {резервная копия выбрана}}" }, @@ -5183,15 +5177,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Резервных копий ещё нет" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Очистить фильтры" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Попробуйте изменить или сбросить фильтры, чтобы увидеть все резервные копии." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Резервных копий не найдено" - }, "servers.backups.item.auto": { "defaultMessage": "Авто" }, @@ -5213,21 +5198,9 @@ "servers.backups.item.restore": { "defaultMessage": "Восстановить" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Выбрать резервную копию {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Создать резервную копию" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Автоматические" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Ручные" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Выбрать всё" - }, "servers.busy.backup-creating": { "defaultMessage": "Выполняется создание резервной копии" }, diff --git a/packages/ui/src/locales/sr-CS/index.json b/packages/ui/src/locales/sr-CS/index.json index ec17a17ffe1..1f507fb25b9 100644 --- a/packages/ui/src/locales/sr-CS/index.json +++ b/packages/ui/src/locales/sr-CS/index.json @@ -4988,12 +4988,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Vraćanje iz backupa" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Grupne radnje za jedan izabran backup} other {Grupna radnja za # izabranih backupa}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Brisanje {total, plural, one {# backupa} other {# backupa}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# backup izabran} few {# backupa izabrana} other {# backupa izabranih}}" }, @@ -5018,15 +5012,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Nema još backupa" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Očisti filtere" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Isprobaj drugi filter ili ukloni filtere da bi vidio sve backupe." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Nema podudaranja backupa" - }, "servers.backups.item.auto": { "defaultMessage": "Automatski" }, @@ -5048,21 +5033,9 @@ "servers.backups.item.restore": { "defaultMessage": "Vrati" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Izaberi backup {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Napravi backup" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Automatski" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manualno" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Izaberi sve" - }, "servers.busy.backup-creating": { "defaultMessage": "Kreacija backupa u toku" }, @@ -6429,4 +6402,3 @@ "defaultMessage": "Tip" } } - diff --git a/packages/ui/src/locales/sv-SE/index.json b/packages/ui/src/locales/sv-SE/index.json index 2728dd01927..ff46ebb8e78 100644 --- a/packages/ui/src/locales/sv-SE/index.json +++ b/packages/ui/src/locales/sv-SE/index.json @@ -4952,9 +4952,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Återställer från säkerhetskopia" }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Raderar {total, plural, one {# säkerhetskopia} other {# säkerhetskopior}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# säkerhetskopia markerad} other {# säkerhetskopior markerade}}" }, @@ -4979,15 +4976,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Inga säkerhetskopior än" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Rensa filter" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Prova ett annat filer eller rensa filtren för att se alla säkerhetskopior." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Inga säkerhetskopior matchar" - }, "servers.backups.item.auto": { "defaultMessage": "Auto" }, @@ -5009,21 +4997,9 @@ "servers.backups.item.restore": { "defaultMessage": "Återställ" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Markera säkerhetskopia {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Skapa säkerhetskopia" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Auto" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manuellt" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Markera alla" - }, "servers.busy.backup-creating": { "defaultMessage": "Säkerhetskopiering pågår" }, diff --git a/packages/ui/src/locales/tr-TR/index.json b/packages/ui/src/locales/tr-TR/index.json index 884212845a4..bb3cdf3bc10 100644 --- a/packages/ui/src/locales/tr-TR/index.json +++ b/packages/ui/src/locales/tr-TR/index.json @@ -5159,9 +5159,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Yedekten geri yükleniyor" }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "{total, plural, one {# yedek} other {# yedek}} siliniyor..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# yedek seçildi} other {# yedek seçildi}}" }, @@ -5183,15 +5180,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Henüz yedekleme yok" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Filtreleri temizle" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Tüm yedekleri görmek için farklı bir filtre deneyin veya filtreleri temizleyin." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Yedekler eşleşmiyor" - }, "servers.backups.item.auto": { "defaultMessage": "Otomatik" }, @@ -5213,21 +5201,9 @@ "servers.backups.item.restore": { "defaultMessage": "Geri yükle" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "{name} yedek dosyasını seçin" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Yedek oluştur" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Otomatik" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Manüel" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Hepsini seç" - }, "servers.busy.backup-creating": { "defaultMessage": "Yedek oluşturma sürüyor" }, diff --git a/packages/ui/src/locales/uk-UA/index.json b/packages/ui/src/locales/uk-UA/index.json index 09867163063..da19befbf4c 100644 --- a/packages/ui/src/locales/uk-UA/index.json +++ b/packages/ui/src/locales/uk-UA/index.json @@ -5192,12 +5192,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Відновлення з резервної копії" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, one {Групові дії для однієї вибраної резервної копії} other {Групові дії для # вибраних резервних копій}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Видалення {total, plural, one {# резервоної копії} few {# резервних копій} many {# резервних копій} other {# резервних копій}}…" - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, one {# резервну копію вибрано} few {# резевні копії вибрано} many {# резевних копій вибрано} other {# резевних копій вибрано}}" }, @@ -5222,15 +5216,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Резервних копій ще немає" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Очистити фільтр" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Спробуйте інший фільтр або очистіть фільтри, щоб переглянути всі резервні копії." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Немає відповідних резервних копій" - }, "servers.backups.item.auto": { "defaultMessage": "Автоматично" }, @@ -5252,21 +5237,9 @@ "servers.backups.item.restore": { "defaultMessage": "Відновлення" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Вибрати резервну копію {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Створити резервну копію" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Авто" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Уручну" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Вибрати все" - }, "servers.busy.backup-creating": { "defaultMessage": "Триває створення резервної копії" }, diff --git a/packages/ui/src/locales/vi-VN/index.json b/packages/ui/src/locales/vi-VN/index.json index 7f0ea3dc295..09431455d8e 100644 --- a/packages/ui/src/locales/vi-VN/index.json +++ b/packages/ui/src/locales/vi-VN/index.json @@ -5240,12 +5240,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "Đang khôi phục từ bản sao lưu" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, other {Hành động cho # bản sao lưu}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "Đang xóa {total, plural, other {# bản sao lưu}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, other {Đã chọn # bản sao lưu}}" }, @@ -5270,15 +5264,6 @@ "servers.backups.empty.heading": { "defaultMessage": "Không có bản sao lưu" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "Hủy lọc" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "Thử loại lọc khác hoặc hủy lọc để xem tất cả các bản sao lưu." - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "Không tìm được bản sao lưu" - }, "servers.backups.item.auto": { "defaultMessage": "Tự động" }, @@ -5300,21 +5285,9 @@ "servers.backups.item.restore": { "defaultMessage": "Khôi phục" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "Chọn bản sao lưu {name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "Tạo bản sao lưu" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "Tự động" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "Thủ công" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "Chọn tất cả" - }, "servers.busy.backup-creating": { "defaultMessage": "Đang tạo bản sao lưu" }, @@ -7275,4 +7248,3 @@ "defaultMessage": "Loại" } } - diff --git a/packages/ui/src/locales/zh-CN/index.json b/packages/ui/src/locales/zh-CN/index.json index 679de37a531..e4898279d88 100644 --- a/packages/ui/src/locales/zh-CN/index.json +++ b/packages/ui/src/locales/zh-CN/index.json @@ -5240,12 +5240,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "从备份中恢复" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "已选择 {count} 个备份的批量操作" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "正在删除 {total, plural,one {#个备份}other {#个备份}}……" - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count,plural,one {#个备份被选中} other {个备份被选中}}" }, @@ -5270,15 +5264,6 @@ "servers.backups.empty.heading": { "defaultMessage": "暂无备份" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "清空筛选" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "尝试使用其他筛选条件或清除筛选条件以查看所有备份。" - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "没有匹配的备份" - }, "servers.backups.item.auto": { "defaultMessage": "自动" }, @@ -5300,21 +5285,9 @@ "servers.backups.item.restore": { "defaultMessage": "恢复" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "选择备份{name}" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "创建备份" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "自动" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "手动" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "选择全部" - }, "servers.busy.backup-creating": { "defaultMessage": "正在创建备份" }, @@ -7275,4 +7248,3 @@ "defaultMessage": "类型" } } - diff --git a/packages/ui/src/locales/zh-TW/index.json b/packages/ui/src/locales/zh-TW/index.json index cf8b474d282..12c9222780c 100644 --- a/packages/ui/src/locales/zh-TW/index.json +++ b/packages/ui/src/locales/zh-TW/index.json @@ -5240,12 +5240,6 @@ "servers.backups.admonition.restoring-backup.title": { "defaultMessage": "從備份還原" }, - "servers.backups.bulk-bar.aria-label": { - "defaultMessage": "{count, plural, other {對 # 個選取的備份執行批次動作}}" - }, - "servers.backups.bulk-bar.deleting": { - "defaultMessage": "正在刪除 {total, plural, other {# 個備份}}..." - }, "servers.backups.bulk-bar.selected-count": { "defaultMessage": "{count, plural, other {已選取 # 個備份}}" }, @@ -5270,15 +5264,6 @@ "servers.backups.empty.heading": { "defaultMessage": "尚無備份" }, - "servers.backups.filtered-empty.clear-filters": { - "defaultMessage": "清除篩選條件" - }, - "servers.backups.filtered-empty.description": { - "defaultMessage": "試試使用不同的篩選條件,或清除篩選條件以查看所有備份。" - }, - "servers.backups.filtered-empty.heading": { - "defaultMessage": "沒有相符的備份" - }, "servers.backups.item.auto": { "defaultMessage": "自動備份" }, @@ -5300,21 +5285,9 @@ "servers.backups.item.restore": { "defaultMessage": "還原" }, - "servers.backups.select-backup-aria": { - "defaultMessage": "選擇備份「{name}」" - }, "servers.backups.toolbar.create-backup": { "defaultMessage": "建立備份" }, - "servers.backups.toolbar.filter-auto": { - "defaultMessage": "自動備份" - }, - "servers.backups.toolbar.filter-manual": { - "defaultMessage": "手動備份" - }, - "servers.backups.toolbar.select-all": { - "defaultMessage": "全選" - }, "servers.busy.backup-creating": { "defaultMessage": "正在建立備份" }, @@ -7275,4 +7248,3 @@ "defaultMessage": "類型" } } - From 5e3c03aa3033a0b6001d7550b5dfa8aa0e248c99 Mon Sep 17 00:00:00 2001 From: "Calum H. (IMB11)" Date: Tue, 20 Oct 2026 13:30:05 +0100 Subject: [PATCH 2/8] fix: qa --- .../game-settings-modal/boolean-control.vue | 53 ++--------- .../src/components/base/SegmentedControl.vue | 64 +++++++++++++ packages/ui/src/components/base/index.ts | 1 + .../components/servers/ServerManageStats.vue | 71 +++++--------- .../servers/ServerSettingsModal.vue | 29 +++--- .../src/components/servers/ServerStatCard.vue | 52 +++++++++++ .../servers/backups/BackupDeleteModal.vue | 61 ++---------- .../servers/backups/BackupPreviewList.vue | 64 +++++++++++++ .../servers/backups/BackupRotationModal.vue | 89 ++++++++++++++++++ .../src/components/servers/backups/index.ts | 2 + packages/ui/src/components/servers/index.ts | 1 + .../shared/server-settings/pages/backups.vue | 93 +++++++++---------- .../hosting/manage/backups/history-table.vue | 39 ++++++-- .../wrapped/hosting/manage/backups/index.vue | 2 +- .../hosting/manage/backups/slot-card.vue | 77 +++++++-------- packages/ui/src/locales/en-US/index.json | 30 +++--- .../stories/base/SegmentedControl.stories.ts | 55 +++++++++++ .../stories/servers/ServerStatCard.stories.ts | 47 ++++++++++ 18 files changed, 554 insertions(+), 276 deletions(-) create mode 100644 packages/ui/src/components/base/SegmentedControl.vue create mode 100644 packages/ui/src/components/servers/ServerStatCard.vue create mode 100644 packages/ui/src/components/servers/backups/BackupPreviewList.vue create mode 100644 packages/ui/src/components/servers/backups/BackupRotationModal.vue create mode 100644 packages/ui/src/stories/base/SegmentedControl.stories.ts create mode 100644 packages/ui/src/stories/servers/ServerStatCard.stories.ts diff --git a/apps/app-frontend/src/features/settings/syncing/game-settings-modal/boolean-control.vue b/apps/app-frontend/src/features/settings/syncing/game-settings-modal/boolean-control.vue index 7b299577450..50feba1b019 100644 --- a/apps/app-frontend/src/features/settings/syncing/game-settings-modal/boolean-control.vue +++ b/apps/app-frontend/src/features/settings/syncing/game-settings-modal/boolean-control.vue @@ -1,7 +1,7 @@ - - diff --git a/packages/ui/src/components/base/SegmentedControl.vue b/packages/ui/src/components/base/SegmentedControl.vue new file mode 100644 index 00000000000..8b5df95a025 --- /dev/null +++ b/packages/ui/src/components/base/SegmentedControl.vue @@ -0,0 +1,64 @@ + + + + + diff --git a/packages/ui/src/components/base/index.ts b/packages/ui/src/components/base/index.ts index 65f391109d9..6e44e3f7216 100644 --- a/packages/ui/src/components/base/index.ts +++ b/packages/ui/src/components/base/index.ts @@ -126,6 +126,7 @@ export { default as RadialHeader } from './RadialHeader.vue' export { default as RadioButtons } from './RadioButtons.vue' export { default as ReadyTransition } from './ReadyTransition.vue' export { default as ScrollablePanel } from './ScrollablePanel.vue' +export { default as SegmentedControl } from './SegmentedControl.vue' export { default as ServerNotice } from './ServerNotice.vue' export { default as SettingsFormGroup } from './SettingsFormGroup.vue' export { default as SettingsInlineWarning } from './SettingsInlineWarning.vue' diff --git a/packages/ui/src/components/servers/ServerManageStats.vue b/packages/ui/src/components/servers/ServerManageStats.vue index ef3f54d31ee..c6994208e25 100644 --- a/packages/ui/src/components/servers/ServerManageStats.vue +++ b/packages/ui/src/components/servers/ServerManageStats.vue @@ -6,55 +6,29 @@ :class="{ 'pointer-events-none': loading }" :aria-hidden="loading" > - -
-
- - {{ metric.title }} - - - - - + +
@@ -62,12 +36,13 @@ import { CpuIcon, DatabaseIcon, FolderOpenIcon } from '@modrinth/assets' import { useStorage } from '@vueuse/core' import { computed, defineAsyncComponent, onMounted, ref, shallowRef, watch } from 'vue' -import { RouterLink } from 'vue-router' import { useFormatBytes } from '#ui/composables' import { injectModrinthServerContext, injectPageContext } from '#ui/providers' import type { ServerStats } from '#ui/providers/server-context' +import ServerStatCard from './ServerStatCard.vue' + const VueApexCharts = defineAsyncComponent(() => import('vue3-apexcharts')) // apexcharts touches `window` at module load time, so we must not let SSR @@ -259,10 +234,6 @@ watch( diff --git a/packages/ui/src/components/servers/backups/BackupDeleteModal.vue b/packages/ui/src/components/servers/backups/BackupDeleteModal.vue index 860b81264a4..58a995ad2e2 100644 --- a/packages/ui/src/components/servers/backups/BackupDeleteModal.vue +++ b/packages/ui/src/components/servers/backups/BackupDeleteModal.vue @@ -10,52 +10,11 @@ {{ formatMessage(messages.admonitionBody, { count }) }} -
- - {{ formatMessage(messages.backupsLabel, { count }) }} - -
- -
- -
- -
- -
- -
-
+