profile change

This commit is contained in:
cheykrym 2025-12-11 02:22:40 +03:00
parent ee4a19155f
commit 12be44673a
2 changed files with 24 additions and 43 deletions

View File

@ -852,9 +852,6 @@
} }
} }
}, },
"История вложений скоро подтянется — каждую категорию можно будет открыть отдельно." : {
"comment" : "Message profile media footer new"
},
"Ищем пользователей…" : { "Ищем пользователей…" : {
"comment" : "Global search loading" "comment" : "Global search loading"
}, },
@ -1073,9 +1070,6 @@
"Медиа" : { "Медиа" : {
"comment" : "Message profile category media" "comment" : "Message profile category media"
}, },
"Медиа, ссылки и файлы" : {
"comment" : "Message profile media title"
},
"Мессенджер-режим сейчас проработан примерно на 50%." : { "Мессенджер-режим сейчас проработан примерно на 50%." : {
}, },
@ -1958,9 +1952,6 @@
"Перейдите в раздел \"Настройки > Сменить пароль\" и следуйте инструкциям." : { "Перейдите в раздел \"Настройки > Сменить пароль\" и следуйте инструкциям." : {
"comment" : "FAQ answer: reset password" "comment" : "FAQ answer: reset password"
}, },
"Плитки как в Telegram — скоро здесь появятся вложения из чата." : {
"comment" : "Message profile media description"
},
"По умолчанию это полноценная соцсеть с лентой, историями и подписками. Если нужно только общение без лишнего контента, переключитесь на режим “Только чаты”. Переключить режим можно в любой момент." : { "По умолчанию это полноценная соцсеть с лентой, историями и подписками. Если нужно только общение без лишнего контента, переключитесь на режим “Только чаты”. Переключить режим можно в любой момент." : {
}, },
@ -2404,6 +2395,9 @@
"Раздел скоро станет активным — собираем и индексируем вложения." : { "Раздел скоро станет активным — собираем и индексируем вложения." : {
"comment" : "Message profile media placeholder message" "comment" : "Message profile media placeholder message"
}, },
"Разделы временно показывают заглушки — позже спрячем пустые категории." : {
"comment" : "Message profile media footer new"
},
"Разрешить пересылку сообщений" : { "Разрешить пересылку сообщений" : {
"localizations" : { "localizations" : {
"en" : { "en" : {

View File

@ -332,11 +332,8 @@ struct MessageProfileView: View {
} }
private var mediaPreviewSection: some View { private var mediaPreviewSection: some View {
section( VStack(alignment: .leading, spacing: 12) {
title: NSLocalizedString("Медиа, ссылки и файлы", comment: "Message profile media title"),
description: NSLocalizedString("Плитки как в Telegram — скоро здесь появятся вложения из чата.", comment: "Message profile media description")
) {
card {
ScrollView(.horizontal, showsIndicators: false) { ScrollView(.horizontal, showsIndicators: false) {
HStack(spacing: 12) { HStack(spacing: 12) {
ForEach(mediaCategories) { category in ForEach(mediaCategories) { category in
@ -346,11 +343,9 @@ struct MessageProfileView: View {
.padding(.vertical, 4) .padding(.vertical, 4)
} }
Text(NSLocalizedString("История вложений скоро подтянется — каждую категорию можно будет открыть отдельно.", comment: "Message profile media footer new")) Text(NSLocalizedString("Разделы временно показывают заглушки.", comment: "Message profile media footer new"))
.font(.caption) .font(.caption)
.foregroundColor(.secondary) .foregroundColor(.secondary)
.padding(.top, 16)
}
} }
} }
@ -527,15 +522,15 @@ struct MessageProfileView: View {
private var mediaCategories: [MediaCategory] { private var mediaCategories: [MediaCategory] {
[ [
MediaCategory(title: NSLocalizedString("Медиа", comment: "Message profile category media"), icon: "photo.on.rectangle", tint: .blue), MediaCategory(title: NSLocalizedString("Медиа", comment: "Message profile category media")),
MediaCategory(title: NSLocalizedString("Сохранённые", comment: "Message profile category saved"), icon: "bookmark.fill", tint: .purple), MediaCategory(title: NSLocalizedString("Сохранённые", comment: "Message profile category saved")),
MediaCategory(title: NSLocalizedString("Файлы", comment: "Message profile category files"), icon: "doc.text.fill", tint: .orange), MediaCategory(title: NSLocalizedString("Файлы", comment: "Message profile category files")),
MediaCategory(title: NSLocalizedString("Голосовые", comment: "Message profile category voice"), icon: "waveform", tint: .green), MediaCategory(title: NSLocalizedString("Голосовые", comment: "Message profile category voice")),
MediaCategory(title: NSLocalizedString("Ссылки", comment: "Message profile category links"), icon: "link", tint: .pink), MediaCategory(title: NSLocalizedString("Ссылки", comment: "Message profile category links")),
MediaCategory(title: NSLocalizedString("Группы", comment: "Message profile category groups"), icon: "person.3.fill", tint: .indigo), MediaCategory(title: NSLocalizedString("Группы", comment: "Message profile category groups")),
MediaCategory(title: NSLocalizedString("Музыка", comment: "Message profile category music"), icon: "music.note", tint: .teal), MediaCategory(title: NSLocalizedString("Музыка", comment: "Message profile category music")),
MediaCategory(title: NSLocalizedString("GIF", comment: "Message profile category gifs"), icon: "sparkles", tint: .yellow), MediaCategory(title: NSLocalizedString("GIF", comment: "Message profile category gifs")),
MediaCategory(title: NSLocalizedString("Посты", comment: "Message profile category posts"), icon: "bubble.left.and.bubble.right.fill", tint: .red) MediaCategory(title: NSLocalizedString("Посты", comment: "Message profile category posts"))
] ]
} }
@ -698,12 +693,6 @@ struct MessageProfileView: View {
) )
} label: { } label: {
VStack(alignment: .leading, spacing: 6) { VStack(alignment: .leading, spacing: 6) {
Image(systemName: category.icon)
.font(.system(size: 18, weight: .semibold))
.foregroundColor(category.tint)
.frame(width: 36, height: 36)
.background(category.tint.opacity(0.12))
.clipShape(RoundedRectangle(cornerRadius: 12, style: .continuous))
Text(category.title) Text(category.title)
.font(.footnote) .font(.footnote)
.fontWeight(.medium) .fontWeight(.medium)
@ -936,8 +925,6 @@ private struct StatusTag: Identifiable {
private struct MediaCategory: Identifiable { private struct MediaCategory: Identifiable {
let id = UUID() let id = UUID()
let title: String let title: String
let icon: String
let tint: Color
} }
private struct ProfileQuickAction: Identifiable { private struct ProfileQuickAction: Identifiable {