Compare commits

...

9 Commits

Author SHA1 Message Date
renovate[bot] 5062329575
chore(deps): update lint 2023-11-29 11:14:09 +00:00
Daniel Roe 7ba9b05d12
chore: bump `@nuxtjs/color-mode` (#2488) 2023-11-29 11:09:44 +00:00
yrming 9c39eed209
feat: unify the style of `under construction` page (#2483) 2023-11-28 10:54:22 +00:00
Francesco 7ed95e317f
feat(i18n): Update it-IT locale (#2473) 2023-11-27 17:55:51 +00:00
Tamas 46105c86c6
feat(i18n): update hu-HU.json (#2480)
Co-authored-by: Tamas Dohany <iamdtms@gmail.com>
2023-11-27 12:19:13 +00:00
Sma11X 7785f4fe06
feat(settings): convert metadata to text (#2444) 2023-11-27 12:17:58 +00:00
Emanuel Pina 585d8c6f0b
fix(i18n): Update portuguese from Portugal translation (#2482) 2023-11-27 12:11:11 +00:00
Alex 1f752e65ed
fix: move the ALT text button for video attahcments to the top (#2479) 2023-11-24 08:19:53 +00:00
Tamas 7595162a0e
feat(i18n): update hu-HU.json (#2477)
Co-authored-by: Tamas Dohany <iamdtms@gmail.com>
2023-11-22 18:10:22 +00:00
30 changed files with 862 additions and 742 deletions

View File

@ -67,6 +67,7 @@ const type = $computed(() => {
const video = ref<HTMLVideoElement | undefined>()
const prefersReducedMotion = usePreferredReducedMotion()
const isAudio = $computed(() => attachment.type === 'audio')
const isVideo = $computed(() => attachment.type === 'video')
const enableAutoplay = usePreferences('enableAutoplay')
@ -246,7 +247,12 @@ watch(shouldLoadAttachment, () => {
/>
</button>
</template>
<div v-if="attachment.description && !getPreferences(userSettings, 'hideAltIndicatorOnPosts')" :class="isAudio ? '' : 'absolute left-2 bottom-2'">
<div
v-if="attachment.description && !getPreferences(userSettings, 'hideAltIndicatorOnPosts')" :class="isAudio ? [] : [
'absolute left-2',
isVideo ? 'top-2' : 'bottom-2',
]"
>
<VDropdown :distance="6" placement="bottom-start">
<button
font-bold text-sm

View File

@ -1 +1,28 @@
import type { Node } from 'ultrahtml'
import { decode } from 'tiny-decode'
import { TEXT_NODE, parse } from 'ultrahtml'
export const maxAccountFieldCount = computed(() => isGlitchEdition.value ? 16 : 4)
export function convertMetadata(metadata: string) {
try {
const tree = parse(metadata)
return (tree.children as Node[]).map(n => convertToText(n)).join('').trim()
}
catch (err) {
console.error(err)
return ''
}
}
function convertToText(input: Node): string {
let text = ''
if (input.type === TEXT_NODE)
return decode(input.value)
if ('children' in input)
text = (input.children as Node[]).map(n => convertToText(n)).join('')
return text
}

View File

@ -542,7 +542,8 @@
},
"featured_tags": {
"description": "يمكن للأشخاص تصفح مشاركاتك العامة تحت علامات الهاشتاغ هذه",
"label": "الهاشتاغ البارزة"
"label": "الهاشتاغ البارزة",
"under_construction": "تحت التطوير"
},
"label": "الملف الشخصي"
},

View File

@ -437,7 +437,8 @@
},
"featured_tags": {
"description": "La gent pot navegar per les teves publicacions públiques amb aquests hashtags.",
"label": "Hashtags destacats"
"label": "Hashtags destacats",
"under_construction": "En construcció"
},
"label": "Perfil"
},

View File

@ -533,7 +533,8 @@
},
"featured_tags": {
"description": "Leute können deine öffentlichen Beiträge mit diesen Hashtags ansehen.",
"label": "Ausgewählte Hashtags"
"label": "Ausgewählte Hashtags",
"under_construction": "In Bearbeitung"
},
"label": "Profil"
},

View File

@ -545,7 +545,8 @@
},
"featured_tags": {
"description": "People can browse your public posts under these hashtags.",
"label": "Featured hashtags"
"label": "Featured hashtags",
"under_construction": "Under construction"
},
"label": "Profile"
},

View File

@ -163,7 +163,8 @@
},
"featured_tags": {
"description": "Los usuarios navegan por tus publicaciones públicas con estas etiquetas.",
"label": "Etiquetas destacadas"
"label": "Etiquetas destacadas",
"under_construction": "En desarrollo"
}
},
"users": {

View File

@ -536,7 +536,8 @@
},
"featured_tags": {
"description": "Las personas pueden navegar por tus publicaciones públicas con estas etiquetas.",
"label": "Etiquetas destacadas"
"label": "Etiquetas destacadas",
"under_construction": "En construcción"
},
"label": "Perfil"
},

View File

@ -544,7 +544,8 @@
},
"featured_tags": {
"description": "Jendeak traola hauek dituzten zure bidalketa publikoak ikus ditzazke.",
"label": "Nabarmendutako traolak"
"label": "Nabarmendutako traolak",
"under_construction": "Amaitzeke"
},
"label": "Profila"
},

View File

@ -534,7 +534,8 @@
},
"featured_tags": {
"description": "Ihmiset voivat selata julkisia julkaisujasi näillä aihetunnisteilla.",
"label": "Esiteltävät aihetunnisteet"
"label": "Esiteltävät aihetunnisteet",
"under_construction": "Rakenteilla"
},
"label": "Profiili"
},

View File

@ -537,7 +537,8 @@
},
"featured_tags": {
"description": "Les gens peuvent parcourir vos messages publics sous ces hashtags.",
"label": "Hashtags en vedette"
"label": "Hashtags en vedette",
"under_construction": "En construction"
},
"label": "Profil"
},

View File

@ -465,7 +465,8 @@
},
"featured_tags": {
"description": "Será posible buscar as túas publicacións públicas con estos cancelos.",
"label": "Cancelos destacados"
"label": "Cancelos destacados",
"under_construction": "En desenvolvemento"
},
"label": "Perfil"
},

View File

@ -15,6 +15,7 @@
"blocked_users": "Blokkolt felhasználók",
"blocking": "Blokkolva",
"bot": "BOT",
"copy_account_name": "Fiók nevének másolása",
"favourites": "Kedvencek",
"follow": "Követők",
"follow_back": "Visszakövetés",
@ -47,7 +48,7 @@
"unmute": "Némítás megszűntetve",
"view_other_followers": "A másik instancekról származó követések nem feltétlenül lesznek megjelenítve.",
"view_other_following": "A másik instancekról származó követők nem feltétlenül lesznek megjelenítve.",
"withdraw_follow_request": "A követési kérés figyelmen kívül hagyása"
"withdraw_follow_request": "A követési kérés visszavonása"
},
"action": {
"apply": "Alkalmaz",
@ -216,7 +217,7 @@
"actions": {
"boost": "Kiemel",
"command_mode": "Parancs mód",
"compose": "Összeállít",
"compose": "Közzétesz",
"favourite": "Kedvenc",
"search": "Keresés",
"title": "Műveletek"
@ -414,11 +415,11 @@
"sponsors": "Támogatók",
"sponsors_body_1": "Az Elk a nagylelkű szponzorációnak és segítségnek köszönhetően lehetséges:",
"sponsors_body_2": "És az összes cég és magánszemély, aki szponzorálja az Elk Teamet és a tagokat.",
"sponsors_body_3": "Ha tetszik az alkalmazás, fontolja meg, hogy szponzoráljon minket:",
"sponsors_body_3": "Ha tetszik az alkalmazás, fontold meg hogy szponzorálj minket:",
"version": "Verzió"
},
"account_settings": {
"description": "Szerkessze fiókbeállításait a Mastodon UI-ban",
"description": "Szerkessze fiókbeállításait a Mastodonban.",
"label": "Fiók beállítások"
},
"interface": {
@ -474,7 +475,7 @@
"error_hint": "A probléma megoldásához megtekintheti a gyakran ismételt kérdések listáját: {0}.",
"invalid_vapid_key": "Úgy tűnik, hogy a VAPID nyilvános kulcs érvénytelen.",
"permission_denied": "Engedély megtagadva: engedélyezze az értesítéseket a böngészőben.",
"repo_link": "Elktároló a GitHub-on",
"repo_link": "Elk tároló a GitHub-on",
"request_error": "Hiba történt az feliratkozás kérése közben, próbálja újra, és ha a hiba továbbra is fennáll, kérjük, jelentse a problémát az Elk adattárának.",
"title": "Nem sikerült feliratkozni a push értesítésekre",
"too_many_registrations": "A böngésző korlátozásai miatt az Elk nem tudja használni a push értesítési szolgáltatást több fiókhoz különböző szervereken. Leiratkoznia kell a push értesítésekről egy másik fiókban, és próbálkozzon újra.",
@ -486,10 +487,10 @@
"unsupported": "Az Ön böngészője nem támogatja a push értesítéseket.",
"warning": {
"enable_close": "Bezár",
"enable_description": "Ha értesítéseket szeretne kapni, amikor az Elk nincs nyitva, engedélyezze a push értesítéseket. A fenti \"@:settings.notifications.show_btn{'\"'} gomb segítségével pontosan szabályozhatja, hogy milyen típusú interakciók generáljanak push értesítéseket.",
"enable_description_desktop": "Ha értesítéseket szeretne kapni, amikor az Elk nincs nyitva, engedélyezze a push értesítéseket. A \"Beállítások > Értesítések > Push értesítések beállításai\" menüpontban pontosan szabályozhatja, hogy az engedélyezést követően milyen típusú interakciók generáljanak push értesítéseket.",
"enable_description": "Ha értesítéseket szeretne kapni amikor az Elk nincs nyitva, engedélyezze a push értesítéseket. A fenti \"@:settings.notifications.show_btn{'\"'} gomb segítségével pontosan szabályozhatja, hogy milyen típusú interakciók generáljanak push értesítéseket.",
"enable_description_desktop": "Ha értesítéseket szeretne kapni amikor az Elk nincs nyitva, engedélyezze a push értesítéseket. A \"Beállítások > Értesítések > Push értesítések beállításai\" menüpontban pontosan szabályozhatja, hogy az engedélyezést követően milyen típusú interakciók generáljanak push értesítéseket.",
"enable_description_mobile": "A beállításokat a \"Beállítások > Értesítések > Push értesítési beállítások\" navigációs menü segítségével is elérheti.",
"enable_description_settings": "Ha értesítéseket szeretne kapni, amikor az Elk nincs nyitva, engedélyezze a push értesítéseket. Pontosan szabályozhatja, hogy milyen típusú interakciók generálnak push értesítéseket ugyanazon a képernyőn, miután engedélyezte őket.",
"enable_description_settings": "Ha értesítéseket szeretne kapni amikor az Elk nincs nyitva, engedélyezze a push értesítéseket. Pontosan szabályozhatja, hogy milyen típusú interakciók generálnak push értesítéseket ugyanazon a képernyőn, miután engedélyezte őket.",
"enable_desktop": "Push értesítések engedélyezése",
"enable_title": "Sose hagyj ki semmit",
"re_auth": "Úgy tűnik, hogy a szervere nem támogatja a push értesítéseket. Próbáljon kijelentkezni, majd újra bejelentkezni. Ha ez az üzenet továbbra is megjelenik, forduljon a szerver rendszergazdájához."
@ -500,6 +501,8 @@
},
"notifications_settings": "Értesítések",
"preferences": {
"embedded_media": "Beágyazott Médialejátszó",
"embedded_media_description": "A beágyazott lejátszó megjelenítése a normál előnézeti kártya helyett mikor kinagyításra kerül a megosztott áramló média hivatkozás.",
"enable_autoplay": "Automatikus lejátszás engedélyezése",
"enable_data_saving": "Adatmentés engedélyezése",
"enable_data_saving_description": "Mentse az adatokat a mellékletek automatikus betöltésének megakadályozásával.",
@ -520,11 +523,11 @@
"label": "Preferenciák",
"title": "Kísérleti képességek",
"use_star_favorite_icon": "Használja a csillag favikont",
"user_picker": "felhasználó választás",
"user_picker": "Felhasználók váltása",
"user_picker_description": "Megjeleníti a naplózott fiókok összes avatarját a bal alsó sarokban, így gyorsan válthat közöttük.",
"virtual_scroll": "Virtuális scrollozás",
"virtual_scroll_description": "Használjon virtuális listát az idővonalakban, így nagyobb számú elemet lehet hatékonyan megjeleníteni.",
"wellbeing": "Jólét",
"wellbeing": "Jó érzés",
"zen_mode": "Zen mód",
"zen_mode_description": "Oldasáv elrejtése, hacsak az egérkurzor nem felette van. Egyszerre jelenti néhány elem elrejtését az idővonalról"
},
@ -542,7 +545,8 @@
},
"featured_tags": {
"description": "Az emberek ezen hashtagek alatt böngészhetik nyilvános bejegyzéseit.",
"label": "Kiemelt hashtagek"
"label": "Kiemelt hashtagek",
"under_construction": "Felújítás alatt"
},
"label": "Profil"
},
@ -658,7 +662,7 @@
"short_second_future": "{n} másodpercen belül",
"short_second_past": "{n} másodperccel ezelőtt",
"short_week_future": "{n} héten belül",
"short_week_past": "{n}w hete",
"short_week_past": "{n} hete",
"short_year_future": "{n} éven belül",
"short_year_past": "{n} éve",
"week_future": "0 héten belül|jövő héten|{n} héten belül",

View File

@ -544,7 +544,8 @@
},
"featured_tags": {
"description": "Orang-orang dapat menelusuri kiriman publik Anda di bawah tagar ini.",
"label": "Tagar unggulan"
"label": "Tagar unggulan",
"under_construction": "Dalam masa pembangunan"
},
"label": "Profil"
},

View File

@ -15,6 +15,7 @@
"blocked_users": "Utenti bloccati",
"blocking": "Bloccato",
"bot": "BOT",
"copy_account_name": "Copia nome account",
"favourites": "Preferiti",
"follow": "Segui",
"follow_back": "Ricambia",
@ -500,6 +501,8 @@
},
"notifications_settings": "Notifiche",
"preferences": {
"embedded_media": "Riproduttore media incorporato",
"embedded_media_description": "Visualizza un riproduttore incorporato invece della normale anteprima quando si espande un link a un contenuto multimediale.",
"enable_autoplay": "Attiva riproduzione automatica",
"enable_data_saving": "Attiva risparmio dati",
"enable_data_saving_description": "Risparmia dati disattivando il download automatico degli allegati.",
@ -542,7 +545,8 @@
},
"featured_tags": {
"description": "Le altre persone possono sfogliare i tuoi post pubblici raccolti sotto questi hashtag.",
"label": "Hashtag in evidenza"
"label": "Hashtag in evidenza",
"under_construction": "Lavori in corso"
},
"label": "Profilo"
},
@ -577,6 +581,7 @@
},
"boosted_by": "Potenziato da",
"edited": "Modificato {0}",
"embedded_warning": "La riproduzione di questo contenuto potrebbe rivelare il tuo indirizzo IP ad altri.",
"favourited_by": "Apprezzato da",
"filter_hidden_phrase": "Filtrato da",
"filter_show_anyway": "Mostra comunque",

View File

@ -538,7 +538,8 @@
},
"featured_tags": {
"description": "他のユーザーはこれらのハッシュタグであなたの公開投稿を閲覧できます。",
"label": "注目のハッシュタグ"
"label": "注目のハッシュタグ",
"under_construction": "工事中"
},
"label": "プロフィール"
},

View File

@ -472,7 +472,8 @@
},
"featured_tags": {
"description": "Ludzie mogą przeglądać Twoje publiczne wpisy pod tymi hasztagami.",
"label": "Polecane hasztagi"
"label": "Polecane hasztagi",
"under_construction": "W budowie"
},
"label": "Profil"
},

View File

@ -15,6 +15,7 @@
"blocked_users": "Utilizadores bloqueados",
"blocking": "Bloqueado",
"bot": "BOT",
"copy_account_name": "Copiar nome da conta",
"favourites": "Favoritos",
"follow": "Seguir",
"follow_back": "Seguir de volta",
@ -257,7 +258,7 @@
"share_post": "Partilhar esta publicação",
"show_favourited_and_boosted_by": "Mostrar quem adicionou aos favoritos e partilhou",
"show_reblogs": "Mostrar partilhas de {0}",
"show_untranslated": "Mostrar não traduzidas",
"show_untranslated": "Esconder tradução",
"toggle_theme": {
"dark": "Alternar modo escuro",
"light": "Alternar modo claro"
@ -500,6 +501,8 @@
},
"notifications_settings": "Notificações",
"preferences": {
"embedded_media": "Leitor de Media Incorporado",
"embedded_media_description": "Quando é publicada uma ligação para uma transmissão de media, é apresentado um leitor incorporado ao invés do cartão de pré-visualização normal.",
"enable_autoplay": "Habilitar Reprodução Automática",
"enable_data_saving": "Habilitar poupança de dados",
"enable_data_saving_description": "Poupar dados, impedindo que os anexos sejam carregados automaticamente.",
@ -542,7 +545,8 @@
},
"featured_tags": {
"description": "As pessoas podem encontrar as suas publicações públicas que incluem essas hashtags.",
"label": "Hashtags destacadas"
"label": "Hashtags destacadas",
"under_construction": "Em construção"
},
"label": "Perfil"
},
@ -577,6 +581,7 @@
},
"boosted_by": "Partilhada Por",
"edited": "Editada {0}",
"embedded_warning": "Reproduzir isto pode revelar o seu endereço de IP a outros.",
"favourited_by": "Adicionada Aos Favoritos Por",
"filter_hidden_phrase": "Filtrada por",
"filter_show_anyway": "Mostrar mesmo assim",

View File

@ -529,7 +529,8 @@
},
"featured_tags": {
"description": "Люди могут просматривать ваши публичные посты под этими хэштегами.",
"label": "Рекомендуемые хэштеги"
"label": "Рекомендуемые хэштеги",
"under_construction": "В разработке"
},
"label": "Профиль"
},

View File

@ -486,7 +486,8 @@
},
"featured_tags": {
"description": "ผู้คนสามารถเรียกดูโพสต์สาธารณะของคุณภายใต้แฮชแท็กเหล่านี้",
"label": "แฮชแท็กเด่น"
"label": "แฮชแท็กเด่น",
"under_construction": "อยู่ระหว่างพัฒนา"
},
"label": "โปรไฟล์"
},

View File

@ -469,7 +469,8 @@
},
"featured_tags": {
"description": "Maaring i-browse ng mga tao ang iyong mga public post gamit ang mga hashtags na ito.",
"label": "Napiling mga hashtags"
"label": "Napiling mga hashtags",
"under_construction": "Nasa ilalim ng konstruksyon"
},
"label": "Profile"
},

View File

@ -474,7 +474,8 @@
},
"featured_tags": {
"description": "İnsanlar bu etiketlerler altında herkese açık gönderilerinize göz atabilir.",
"label": "Öne çıkan etiketler"
"label": "Öne çıkan etiketler",
"under_construction": "Yapım halinde"
},
"label": "Profil"
},

View File

@ -542,7 +542,8 @@
},
"featured_tags": {
"description": "Mọi người có thể tìm các tút công khai có chứa những hashtag đó.",
"label": "Hashtag thường dùng"
"label": "Hashtag thường dùng",
"under_construction": "Đang được xây dựng"
},
"label": "Hồ sơ"
},

View File

@ -539,7 +539,8 @@
},
"featured_tags": {
"description": "人们可以在这些标签下浏览你的公共嘟文。",
"label": "精选话题标签"
"label": "精选话题标签",
"under_construction": "建设中"
},
"label": "个人资料"
},

View File

@ -424,7 +424,8 @@
},
"featured_tags": {
"description": "人們可以在這些標籤下瀏覽你的公開嘟文。",
"label": "精選的話題標籤"
"label": "精選的話題標籤",
"under_construction": "建立中"
},
"label": "個人資料"
},

View File

@ -36,7 +36,7 @@
"@iconify/json": "^2.2.142",
"@iconify/utils": "^2.1.7",
"@nuxt/devtools": "^1.0.0-beta.1",
"@nuxtjs/color-mode": "^3.3.0",
"@nuxtjs/color-mode": "^3.3.2",
"@nuxtjs/i18n": "8.0.0-beta.10",
"@pinia/nuxt": "^0.4.11",
"@tiptap/core": "2.1.8",
@ -106,7 +106,7 @@
"workbox-window": "^7.0.0"
},
"devDependencies": {
"@antfu/eslint-config": "^0.41.3",
"@antfu/eslint-config": "^0.43.1",
"@antfu/ni": "^0.21.8",
"@types/chroma-js": "^2.4.1",
"@types/file-saver": "^2.0.5",
@ -119,12 +119,12 @@
"@unlazy/nuxt": "^0.9.3",
"bumpp": "^9.2.0",
"consola": "^3.2.3",
"eslint": "^8.49.0",
"eslint": "^8.54.0",
"flat": "^5.0.2",
"fs-extra": "^11.1.1",
"lint-staged": "^14.0.1",
"nuxt": "3.7.4",
"prettier": "^3.0.3",
"prettier": "^3.1.0",
"sharp": "^0.32.5",
"sharp-ico": "^0.1.5",
"simple-git-hooks": "^2.9.0",

View File

@ -14,14 +14,18 @@ useHydratedHead({
<MainContent back>
<template #title>
<div text-lg font-bold flex items-center gap-2 @click="$scrollToTop">
<div i-ri:test-tube-line />
<span>{{ isHydrated ? $t('settings.notifications.notifications.label') : '' }}</span>
</div>
</template>
<h3 px6 py4 mt2 font-bold text-xl flex="~ gap-1" items-center>
{{ isHydrated ? $t('settings.notifications.notifications.label') : '' }}
</h3>
<p text-4xl text-center>
<span sr-only>{{ isHydrated ? $t('settings.notifications.under_construction') : '' }}</span> 🚧
</p>
<div text-center mt-10>
<h1 text-4xl>
<span sr-only>{{ isHydrated ? $t('settings.notifications.under_construction') : '' }}</span>
🚧
</h1>
<h3 text-xl>
{{ isHydrated ? $t('settings.notifications.notifications.label') : '' }}
</h3>
</div>
</MainContent>
</template>

View File

@ -1,7 +1,6 @@
<script lang="ts" setup>
import type { mastodon } from 'masto'
import { useForm } from 'slimeform'
import { parse } from 'ultrahtml'
definePageMeta({
middleware: 'auth',
@ -31,9 +30,7 @@ const { form, reset, submitter, isDirty, isError } = useForm({
const fieldsAttributes = Array.from({ length: maxAccountFieldCount.value }, (_, i) => {
const field = { ...account?.fields?.[i] || { name: '', value: '' } }
const linkElement = (parse(field.value)?.children?.[0])
if (linkElement && linkElement?.attributes?.href)
field.value = linkElement.attributes.href
field.value = convertMetadata(field.value)
return field
})

View File

@ -20,6 +20,7 @@ useHydratedHead({
</template>
<div text-center mt-10>
<h1 text-4xl>
<span sr-only>{{ $t('settings.profile.featured_tags.under_construction') }}</span>
🚧
</h1>
<h3 text-xl>

File diff suppressed because it is too large Load Diff