Merge branch 'develop' into feat/scylladb
|
@ -1 +0,0 @@
|
|||
v18.16.0
|
|
@ -1,4 +0,0 @@
|
|||
{
|
||||
"$schema": "http://json.schemastore.org/vsls",
|
||||
"gitignore": "exclude"
|
||||
}
|
2098
CHANGELOG.md
|
@ -1,5 +1,5 @@
|
|||
## Install dev and compilation dependencies, build files
|
||||
FROM node:20 as build
|
||||
FROM node:20-slim as build
|
||||
WORKDIR /firefish
|
||||
|
||||
# Install compilation dependencies
|
||||
|
@ -50,11 +50,11 @@ RUN env NODE_ENV=production sh -c "pnpm run --filter '!native-utils' build && pn
|
|||
RUN pnpm i --prod --frozen-lockfile
|
||||
|
||||
## Runtime container
|
||||
FROM node:20
|
||||
FROM node:20-slim
|
||||
WORKDIR /firefish
|
||||
|
||||
# Install runtime dependencies
|
||||
RUN apt-get update && apt-get install -y libvips-dev zip unzip tini ffmpeg
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends libvips-dev zip unzip tini ffmpeg
|
||||
|
||||
COPY . ./
|
||||
|
||||
|
|
|
@ -2,7 +2,9 @@ version: "3"
|
|||
|
||||
services:
|
||||
web:
|
||||
image: registry.joinfirefish.org/firefish/firefish
|
||||
# Choose one of these tags:
|
||||
# stable-amd64, stable-arm64, beta-amd64, beta-arm64
|
||||
image: registry.joinfirefish.org/firefish/firefish:stable-amd64
|
||||
container_name: firefish_web
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
|
|
|
@ -4,6 +4,11 @@ Breaking changes are indicated by the :warning: icon.
|
|||
|
||||
## v1.0.5 (unreleased)
|
||||
|
||||
### dev21
|
||||
|
||||
- `admin/update-meta` can now take `moreUrls` parameter, and response of `admin/meta` now includes `moreUrls`
|
||||
- These URLs are used for the help menu ([related merge request](https://git.joinfirefish.org/firefish/firefish/-/merge_requests/10640))
|
||||
|
||||
### dev18
|
||||
|
||||
- :warning: response of `meta` no longer includes the following:
|
||||
|
|
|
@ -52,7 +52,7 @@ gulp.task("build:backend:script", () => {
|
|||
"./packages/backend/src/server/web/bios.js",
|
||||
"./packages/backend/src/server/web/cli.js",
|
||||
])
|
||||
.pipe(replace("LANGS", JSON.stringify(Object.keys(locales))))
|
||||
.pipe(replace("SUPPORTED_LANGS", JSON.stringify(Object.keys(locales))))
|
||||
.pipe(
|
||||
terser({
|
||||
toplevel: true,
|
||||
|
|
|
@ -112,7 +112,7 @@ you: "Tu"
|
|||
clickToShow: "Fes clic per a mostrar"
|
||||
sensitive: "NSFW"
|
||||
add: "Afegeix"
|
||||
reaction: "Reaccions"
|
||||
reaction: "Reacció"
|
||||
reactionSetting: "Reaccions a mostrar al selector de reaccions"
|
||||
reactionSettingDescription2: "Arrossega per reordenar, fes clic per suprimir, prem
|
||||
\"+\" per afegir."
|
||||
|
@ -792,11 +792,11 @@ customEmojis: Emojis personalitzats
|
|||
cacheRemoteFilesDescription: Quan aquesta opció està desactivada, els fitxers remots
|
||||
es carreguen directament del servidor remot. Desactivar-la farà que baixi l'ús d'emmagatzematge,
|
||||
però incrementa el tràfic, perquè les miniatures no es generaran.
|
||||
flagAsBot: Marca aquest compte com a bot
|
||||
flagAsBot: Marca aquest compte com automatitzat
|
||||
flagAsBotDescription: Activa aquesta opció si aquest compte és controlat per un programa.
|
||||
Si s'activa, això actuarà com una bandera per a altres desenvolupadors i ajuda a
|
||||
prevenir cadenes de interaccions infinites amb altres bots a més d'ajustar els sistemes
|
||||
interns de Firefish per tractar aquest compte com un bot.
|
||||
prevenir cadenes de interaccions infinites amb altres comptes automatitzats a més
|
||||
d'ajustar els sistemes interns de Firefish per tractar aquest compte com automatitzat.
|
||||
flagAsCat: Ets un gat? 🐱
|
||||
flagShowTimelineReplies: Mostra respostes a la línia de temps
|
||||
flagAsCatDescription: Guanyaràs unes orelles de gat i parlares com un gat!
|
||||
|
@ -895,7 +895,7 @@ nUsersRead: llegit per {n}
|
|||
agreeTo: Estic d'acord amb {0}
|
||||
activity: Activitat
|
||||
home: Inici
|
||||
remoteUserCaution: La informació dels usuaris remots pot estar incompleta.
|
||||
remoteUserCaution: La informació dels usuaris remots és incompleta.
|
||||
themeForDarkMode: Tema a fer servir en mode fosc
|
||||
light: Clar
|
||||
registeredDate: Data de registre
|
||||
|
@ -1051,7 +1051,7 @@ popularTags: Etiquetes populars
|
|||
about: Sobre
|
||||
recentlyUpdatedUsers: Usuaris actius fa poc
|
||||
recentlyRegisteredUsers: Usuaris registrats fa poc
|
||||
recentlyDiscoveredUsers: Nous suaris descoberts
|
||||
recentlyDiscoveredUsers: Nous usuaris descoberts
|
||||
administrator: Administrador
|
||||
token: Token
|
||||
registerSecurityKey: Registreu una clau de seguretat
|
||||
|
@ -2127,7 +2127,7 @@ clipsDesc: Els clips són com marcadors categoritzats que es poden compartir. Po
|
|||
selectChannel: Selecciona un canal
|
||||
isLocked: Aquest compte té les següents aprovacions
|
||||
isPatron: Mecenes de Firefish
|
||||
isBot: Aquest compte és un bot
|
||||
isBot: Aquest es un compte automatitzat
|
||||
isModerator: Moderador
|
||||
isAdmin: Administrador
|
||||
_filters:
|
||||
|
@ -2199,3 +2199,19 @@ openServerInfo: Mostra la informació del servidor fent clic al símbol del serv
|
|||
en un missatge
|
||||
vibrate: Activar vibracions
|
||||
clickToShowPatterns: Fes clic per veure patrons de mòduls
|
||||
iconSet: Conjunt d'Icones
|
||||
_iconSets:
|
||||
fill: Omplerts
|
||||
regular: Normals
|
||||
bold: Negreta
|
||||
duotone: Bitó
|
||||
light: Prims
|
||||
showAttachedNotes: Mostrar publicacions que contenen aquest fitxer
|
||||
reactions: Reaccions
|
||||
attachedToNotes: Publicacions que contenen aquest fitxer
|
||||
replies: Respostes
|
||||
quotes: Cites
|
||||
renotes: Impulsos
|
||||
moreUrls: Pàgines fixades
|
||||
moreUrlsDescription: "Introdueix les pàgines que vols fixar al menú d'ajuda a la part
|
||||
inferior esquerra fent servir aquesta notació:\n\"Nom a mostrar\": https://example.com/"
|
||||
|
|
|
@ -2218,3 +2218,4 @@ openServerInfo: Anzeigen von Serverinformationen durch Anklicken des Server-Tick
|
|||
in einem Beitrag
|
||||
vibrate: Vibrationen abspielen
|
||||
clickToShowPatterns: Klicken um Modul-Muster anzuzeigen
|
||||
replies: Antworten
|
||||
|
|
|
@ -312,7 +312,7 @@ agreeTo: "I agree to {0}"
|
|||
tos: "Terms of Service"
|
||||
start: "Begin"
|
||||
home: "Home"
|
||||
remoteUserCaution: "Information from remote users may be incomplete."
|
||||
remoteUserCaution: "Information from remote users are incomplete."
|
||||
activity: "Activity"
|
||||
images: "Images"
|
||||
birthday: "Birthday"
|
||||
|
@ -1156,6 +1156,8 @@ detectPostLanguage: "Automatically detect the language and show a translate butt
|
|||
vibrate: "Play vibrations"
|
||||
openServerInfo: "Show server information by clicking the server ticker on a post"
|
||||
iconSet: "Icon set"
|
||||
useEmojiCdn: "Get Twemoji from CDN"
|
||||
useEmojiCdnDescription: "Use Twemoji from the JSDelivr CDN instead of the server's assets."
|
||||
|
||||
_sensitiveMediaDetection:
|
||||
description: "Reduces the effort of server moderation through automatically recognizing
|
||||
|
@ -2161,3 +2163,5 @@ _iconSets:
|
|||
regular: "Regular"
|
||||
fill: "Filled"
|
||||
duotone: "Duotone"
|
||||
moreUrls: "Pinned pages"
|
||||
moreUrlsDescription: "Enter the pages you want to pin to the help menu in the lower left corner using this notation:\n\"Display name\": https://example.com/"
|
||||
|
|
|
@ -1219,6 +1219,13 @@ _wordMute:
|
|||
soft: "Suave"
|
||||
hard: "Duro"
|
||||
mutedNotes: "Publicaciones silenciadas"
|
||||
muteLangsDescription2: 'Utilizar códigos de idioma, por ejemplo: en, fr, ja, zh.'
|
||||
lang: Idioma
|
||||
langDescription: Ocultar publicaciones de linea de tiempo que coincidan con el idioma
|
||||
seleccionado.
|
||||
muteLangs: Idiomas silenciados
|
||||
muteLangsDescription: Separar con espacios o saltos de lineas para una condición
|
||||
OR
|
||||
_instanceMute:
|
||||
instanceMuteDescription: "Silencia todas las publicaciones e impusos de los servidores
|
||||
seleccionados, incluyendo respuestas a los usuarios de las mismas."
|
||||
|
@ -2162,3 +2169,15 @@ silencedWarning: Esta página se muestra debido a que estos usuarios son de serv
|
|||
que tu administrador ha silenciado, ya que son presumiblemente fuente de spam.
|
||||
isBot: Esta cuenta es un bot
|
||||
clickToShowPatterns: Haz clic para mostrar patrones de módulos
|
||||
detectPostLanguage: Detectar automáticamente el idioma y mostrar el botón de traducción
|
||||
para publicaciones en otros idiomas
|
||||
indexableDescription: Permitir que el buscador integrado muestre tus publicaciones
|
||||
reactions: Reacciones
|
||||
exportZip: Exportar ZIP
|
||||
emojiPackCreator: Creador de pack de Emoji
|
||||
importZip: Importar ZIP
|
||||
vibrate: Reproducir vibraciones
|
||||
openServerInfo: Mostrar información del servidor al presionar el simbolo del servidor
|
||||
en una publicación
|
||||
languageForTranslation: Traducción de publicaciones
|
||||
confirm: Confirmar
|
||||
|
|
|
@ -278,8 +278,7 @@ agreeTo: "Saya setuju kepada {0}"
|
|||
tos: "Syarat dan ketentuan"
|
||||
start: "Mulai"
|
||||
home: "Beranda"
|
||||
remoteUserCaution: "Informasi ini mungkin tidak mutakhir, karena pengguna ini berasal
|
||||
dari instansi luar."
|
||||
remoteUserCaution: "Informasi dari pengguna luar tidak lengkap."
|
||||
activity: "Aktivitas"
|
||||
images: "Gambar"
|
||||
birthday: "Tanggal lahir"
|
||||
|
@ -2192,3 +2191,8 @@ reactions: Reaksi
|
|||
replies: Balasan
|
||||
quotes: Kutipan
|
||||
renotes: Postingan ulang
|
||||
showAttachedNotes: Tampilkan postingan dengan berkas ini
|
||||
attachedToNotes: Posting dengan berkas ini
|
||||
moreUrls: Halaman tersemat
|
||||
moreUrlsDescription: "Masukkan halaman yang ingin kamu sematkan ke menu bantuan di
|
||||
pojok kiri bawah dengan notasi ini:\n\"Nama tampilan\": https://contoh.com/"
|
||||
|
|
|
@ -268,7 +268,7 @@ agreeTo: "Sono d'accordo con {0}"
|
|||
tos: "Termini d'uso"
|
||||
start: "Inizia"
|
||||
home: "Home"
|
||||
remoteUserCaution: "Le informazioni degli utenti remoti possono essere incomplete."
|
||||
remoteUserCaution: "Le informazioni degli utenti remoti sono incomplete."
|
||||
activity: "Attività"
|
||||
images: "Immagini"
|
||||
birthday: "Compleanno"
|
||||
|
@ -2180,3 +2180,5 @@ reactions: Reazioni
|
|||
replies: Risposte
|
||||
quotes: Citazioni
|
||||
renotes: Boost
|
||||
showAttachedNotes: Mostra i post con questo allegato
|
||||
attachedToNotes: Post con questo allegato
|
||||
|
|
|
@ -994,6 +994,8 @@ addRe: "閲覧注意の投稿への返信で、注釈の先頭に\"re:\"を追
|
|||
languageForTranslation: "投稿翻訳に使用する言語"
|
||||
detectPostLanguage: "投稿の言語を自動検出し、外国語の投稿に翻訳ボタンを表示する"
|
||||
iconSet: "アイコンのスタイル"
|
||||
useEmojiCdn: "CDN から Twemoji を使用する"
|
||||
useEmojiCdnDescription: "サーバーのアセットではなく、JSDelivr CDN から Twemoji を使用してください。"
|
||||
|
||||
_sensitiveMediaDetection:
|
||||
description: "機械学習を使って自動でセンシティブなメディアを検出し、モデレーションに役立てられます。サーバーの負荷が少し増えます。"
|
||||
|
@ -2003,3 +2005,5 @@ _iconSets:
|
|||
regular: "標準"
|
||||
fill: "塗りつぶし"
|
||||
duotone: "2色"
|
||||
moreUrls: "固定するページ"
|
||||
moreUrlsDescription: "左下のヘルプメニューに固定したいページを以下の形式で、改行区切りで入力してください:\n\"表示名\": https://example.com/"
|
||||
|
|
|
@ -1,25 +1,26 @@
|
|||
_lang_: "ภาษาไทย"
|
||||
headlineFirefish: "เชื่อมต่อเครือข่ายโดยโน้ต"
|
||||
introFirefish: "ยินดีต้อนรับค่ะ/ครับ! Firefish เป็นแพลตฟอร์มโซเชียลมีเดียแบบโอเพ่นซอร์สที่มีการกระจายอำนาจซึ่งให้บริการฟรีตลอดไป!
|
||||
headlineFirefish: "แพลตฟอร์มโซเชียลมีเดียแบบโอเพนซอร์สที่มีการกระจายอำนาจซึ่งให้บริการฟรีตลอดไป!
|
||||
🚀"
|
||||
introFirefish: "ยินดีต้อนรับค่ะ/ครับ! Firefish เป็นแพลตฟอร์มโซเชียลมีเดียแบบโอเพนซอร์สที่มีการกระจายอำนาจซึ่งให้บริการฟรีตลอดไป!
|
||||
🚀"
|
||||
monthAndDay: "{เดือน}/{วัน}"
|
||||
search: "ค้นหา"
|
||||
notifications: "การเเจ้งเตือน"
|
||||
username: "ชื่อผู้ใช้"
|
||||
password: "รหัสผ่าน"
|
||||
forgotPassword: "ลืมรหัสผ่านอ่ะ"
|
||||
fetchingAsApObject: "กำลังดึงข้อมูล จาก เฟดิเวิร์ส"
|
||||
forgotPassword: "ลืมรหัสผ่าน"
|
||||
fetchingAsApObject: "กำลังดึงข้อมูลจากเฟดิเวิร์ส"
|
||||
ok: "ตกลง"
|
||||
gotIt: "เข้าใจแล้ว !"
|
||||
cancel: "ยกเลิก"
|
||||
enterUsername: "ใส่ชื่อผู้ใช้"
|
||||
renotedBy: "บูตเตอร์โดย {user}"
|
||||
renotedBy: "บูสต์โดย {user}"
|
||||
noNotes: "ไม่มีโพสต์"
|
||||
noNotifications: "ไม่มีการแจ้งเตือน"
|
||||
instance: "เซิฟเวอร์"
|
||||
instance: "เซิร์ฟเวอร์"
|
||||
settings: "การตั้งค่า"
|
||||
basicSettings: "การตั้งค่าพื้นฐาน"
|
||||
otherSettings: "การตั้งค่าอื่นๆ"
|
||||
otherSettings: "การตั้งค่าอื่น ๆ"
|
||||
openInWindow: "เปิดในหน้าต่าง"
|
||||
profile: "โปรไฟล์"
|
||||
timeline: "ไทม์ไลน์"
|
||||
|
@ -28,14 +29,14 @@ login: "เข้าสู่ระบบ"
|
|||
loggingIn: "กำลังเข้าสู่ระบบ"
|
||||
logout: "ออกจากระบบ"
|
||||
signup: "สร้างบัญชีผู้ใช้"
|
||||
uploading: "กำลังอัพโหลด..."
|
||||
uploading: "กำลังอัปโหลด..."
|
||||
save: "บันทึก"
|
||||
users: "ผู้ใช้งาน"
|
||||
addUser: "เพิ่มผู้ใช้"
|
||||
favorite: "รายการโปรด"
|
||||
favorite: "เพิ่มลงในรายการโปรด"
|
||||
favorites: "รายการโปรด"
|
||||
unfavorite: "ลบออกจากรายการโปรด"
|
||||
favorited: "เพิ่มแล้วในรายการโปรด"
|
||||
favorited: "เพิ่มในรายการโปรดแล้ว"
|
||||
alreadyFavorited: "เพิ่มในรายการโปรดอยู่แล้ว"
|
||||
cantFavorite: "ไม่สามารถเพิ่มในรายการโปรดได้"
|
||||
pin: "ปักหมุดไปยังโปรไฟล์"
|
||||
|
@ -55,22 +56,22 @@ loadMore: "โหลดเพิ่มเติม"
|
|||
showMore: "แสดงเพิ่มเติม"
|
||||
showLess: "ปิด"
|
||||
youGotNewFollower: "ได้ติดตามคุณ"
|
||||
receiveFollowRequest: "คำขอผู้ติดตามที่ได้รับ"
|
||||
followRequestAccepted: "ผู้ติดตามได้ตอบรับคำขอร้องของคุณแล้ว"
|
||||
receiveFollowRequest: "ได้รับคำขอติดตาม"
|
||||
followRequestAccepted: "ผู้ติดตามได้ตอบรับคำขอของคุณแล้ว"
|
||||
mention: "กล่าวถึง"
|
||||
mentions: "พูดถึง"
|
||||
mentions: "กล่าวถึง"
|
||||
directNotes: "ไดเร็คข้อความ"
|
||||
importAndExport: "นำเข้า / ส่งออก"
|
||||
import: "การนำเข้า"
|
||||
export: "การนำออก"
|
||||
importAndExport: "นำเข้า / ส่งออกข้อมูล"
|
||||
import: "นำเข้า"
|
||||
export: "ส่งออก"
|
||||
files: "ไฟล์"
|
||||
download: "ดาวน์โหลด"
|
||||
driveFileDeleteConfirm: "คุณแน่ใจแล้วหรอว่าต้องการลบไฟล์ \"{name}\"? โพสต์ย่อที่แนบมากับไฟล์นี้ก็จะถูกลบด้วยนะ"
|
||||
unfollowConfirm: "คุณแน่ใจแล้วหรอว่าต้องการเลิกติดตาม {name}?"
|
||||
exportRequested: "เมื่อคุณได้ร้องขอการส่งออก อาจจะต้องใช้เวลาสักครู่ และจะถูกเพิ่มในไดรฟ์ของคุณเมื่อเสร็จสิ้นแล้ว"
|
||||
importRequested: "เมื่อคุณได้ร้องขอการนำเข้า อาจจะต้องใช้เวลาสักครู่นะ"
|
||||
lists: "รายการ"
|
||||
noLists: "คุณไม่มีลิสต์ใดๆนะ"
|
||||
importRequested: "คุณได้ร้องขอการนำเข้า อาจจะต้องใช้เวลาสักครู่นะ"
|
||||
lists: "ลิสต์"
|
||||
noLists: "คุณไม่มีลิสต์ใด ๆ"
|
||||
note: "โพสต์"
|
||||
notes: "โพสต์"
|
||||
following: "กำลังติดตาม"
|
||||
|
@ -79,64 +80,64 @@ followsYou: "ติดตามคุณ"
|
|||
createList: "สร้างลิสต์"
|
||||
manageLists: "จัดการลิสต์"
|
||||
error: "ผิดพลาด"
|
||||
somethingHappened: "อุ๊ย ! มีอะไรบางอย่างผิดพลาด"
|
||||
somethingHappened: "เกิดข้อผิดพลาด"
|
||||
retry: "ลองใหม่อีกครั้ง"
|
||||
pageLoadError: "เกิดข้อผิดพลาดในการโหลดหน้านี้"
|
||||
pageLoadErrorDescription: "โดยปกติแล้วมักจะเกิดจากข้อผิดพลาดของเครือข่ายหรือแคชของเบราว์เซอร์
|
||||
ลองล้างแคชแล้วลองใหม่อีกครั้งหลังจากรอสักครู่นะ"
|
||||
serverIsDead: "เซิร์ฟเวอร์นี้ไม่มีการตอบสนอง ได้โปรดกรุณารอสักครู่แล้วลองใหม่อีกครั้งนะ"
|
||||
youShouldUpgradeClient: "หากต้องการดูหน้านี้ได้โปรดกรุณา รีเซ็ตเพื่ออัปเดตไคลเอ็นต์ของคุณนะ"
|
||||
enterListName: "ใส่ชื่อสำหรับรายการลิสต์"
|
||||
serverIsDead: "เซิร์ฟเวอร์นี้ไม่มีการตอบสนอง กรุณารอสักครู่แล้วลองใหม่อีกครั้งนะ"
|
||||
youShouldUpgradeClient: "หากต้องการดูหน้านี้ กรุณารีเฟรชเพื่ออัปเดตไคลเอ็นต์ของคุณ"
|
||||
enterListName: "ใส่ชื่อสำหรับลิสต์"
|
||||
privacy: "ความเป็นส่วนตัว"
|
||||
makeFollowManuallyApprove: "ติดตามคำขอที่ต้องได้รับการอนุมัติ"
|
||||
makeFollowManuallyApprove: "คำขอติดตามต้องได้รับการอนุมัติ"
|
||||
defaultNoteVisibility: "การมองเห็นที่เป็นค่าเริ่มต้น"
|
||||
follow: "กำลังติดตาม"
|
||||
follow: "ติดตาม"
|
||||
followRequest: "คำขอติดตาม"
|
||||
followRequests: "ติดตามการร้องขอ"
|
||||
followRequests: "การติดตามที่ร้องขอ"
|
||||
unfollow: "เลิกติดตาม"
|
||||
followRequestPending: "กำลังรอดำเนินการร้องขอติดตาม"
|
||||
enterEmoji: "ใส่อีโมจิ"
|
||||
renote: "บูสต์"
|
||||
unrenote: "เลิกบูสต์"
|
||||
renoted: "บูสต์แล้ว"
|
||||
cantRenote: "โพสต์นี้ไม่สามารถบูสต์ใหม่ได้"
|
||||
cantReRenote: "ไม่สามารถบูสต์ไว้ใหม่ได้"
|
||||
quote: "อ้างคำพูด"
|
||||
cantRenote: "โพสต์นี้ไม่สามารถบูสต์ได้"
|
||||
cantReRenote: "ไม่สามารถบูสต์การบูสต์ได้"
|
||||
quote: "โควต"
|
||||
pinnedNote: "โพสต์ที่ปักหมุดแล้ว"
|
||||
pinned: "ปักหมุดไปยังโปรไฟล์"
|
||||
you: "ตัวเอง"
|
||||
you: "คุณ"
|
||||
clickToShow: "คลิกเพื่อแสดง"
|
||||
sensitive: "เนื้อหาที่ละเอียดอ่อน NSFW"
|
||||
sensitive: "เนื้อหาที่ละเอียดอ่อน"
|
||||
add: "เพิ่ม"
|
||||
reaction: "รีแอคชั่น"
|
||||
reactionSetting: "รีแอคชั่นไปยังแสดงผลในตัวเลือกการรีแอคชั่น"
|
||||
reactionSettingDescription2: "กดลากเพื่อจัดลำดับใหม่ กดคลิกเพื่อลบ กด \"+\" เพื่อเพิ่ม"
|
||||
reaction: "รีแอคชัน"
|
||||
reactionSetting: "รีแอคชันที่จะแสดงผลในตัวเลือกการรีแอคชัน"
|
||||
reactionSettingDescription2: "ลากเพื่อจัดลำดับใหม่ คลิกเพื่อลบ กด \"+\" เพื่อเพิ่ม"
|
||||
rememberNoteVisibility: "จดจำการตั้งค่าการมองเห็นโพสต์"
|
||||
attachCancel: "ลบไฟล์ออกที่แนบมา"
|
||||
attachCancel: "ลบไฟล์ที่แนบมา"
|
||||
markAsSensitive: "ทำเครื่องหมายว่าละเอียดอ่อน"
|
||||
unmarkAsSensitive: "ยกเลิกทำเครื่องหมายเป็น NSFW"
|
||||
unmarkAsSensitive: "ยกเลิกทำเครื่องหมายว่าละเอียดอ่อน"
|
||||
enterFileName: "พิมพ์ชื่อไฟล์"
|
||||
mute: "ปิดเสียง"
|
||||
unmute: "ไม่ปิดเสียง"
|
||||
unmute: "ยกเลิกการปิดเสียง"
|
||||
block: "บล็อค"
|
||||
unblock: "เลิกปิดกั้น"
|
||||
unblock: "เลิกบล็อค"
|
||||
suspend: "ถูกระงับ"
|
||||
unsuspend: "ยกเลิกระงับ"
|
||||
blockConfirm: "คุณแน่ใจแล้วเหรอ ว่าต้องการบล็อกบัญชีนี้?"
|
||||
blockConfirm: "คุณแน่ใจแล้วเหรอ ว่าต้องการบล็อคบัญชีนี้?"
|
||||
unblockConfirm: "คุณแน่ใจแล้วเหรอ ว่าต้องการปลดบล็อคบัญชีนี้?"
|
||||
suspendConfirm: "คุณแน่ใจแล้วเหรอว่าต้องการระงับบัญชีนี้อ่ะ?"
|
||||
suspendConfirm: "คุณแน่ใจแล้วเหรอว่าต้องการระงับบัญชีนี้?"
|
||||
unsuspendConfirm: "คุณแน่ใจแล้วหรอว่าต้องการยกเลิกการระงับบัญชีนี้?"
|
||||
selectList: "เลือกรายการ"
|
||||
selectList: "เลือกลิสต์"
|
||||
selectAntenna: "เลือกเสาอากาศ"
|
||||
selectWidget: "เลือกวิดเจ็ต"
|
||||
editWidgets: "แก้ไขวิดเจ็ต"
|
||||
editWidgetsExit: "เรียบร้อย"
|
||||
customEmojis: "กำหนดอีโมจิเอง"
|
||||
customEmojis: "อีโมจิที่กำหนดเอง"
|
||||
emoji: "อีโมจิ"
|
||||
emojis: "อีโมจิ"
|
||||
emojiName: "ชื่ออิโมจิ"
|
||||
emojiUrl: "อิโมจิ URL"
|
||||
addEmoji: "แทรกอีโมจิ"
|
||||
emojiUrl: "URL ของอิโมจิ"
|
||||
addEmoji: "เพิ่มอีโมจิ"
|
||||
settingGuide: "การตั้งค่าที่แนะนำ"
|
||||
cacheRemoteFiles: "แคชไฟล์ระยะไกล"
|
||||
cacheRemoteFilesDescription: "เมื่อปิดใช้งานการตั้งค่านี้ ไฟล์ระยะไกลนั้นจะถูกโหลดโดยตรงจากระยะไกลเซิฟเวอร์
|
||||
|
@ -1245,22 +1246,27 @@ _deck:
|
|||
list: "รายการ"
|
||||
mentions: "พูดถึง"
|
||||
noThankYou: ไม่ล่ะขอบคุณ
|
||||
removeReaction: ลบรีเเอดชั่นของคุณ
|
||||
renoteMute: ปิดเสียงบูส
|
||||
renoteUnmute: เลิกปิดเสียงบูส
|
||||
removeReaction: ลบรีเเอคชันของคุณ
|
||||
renoteMute: ปิดเสียงบูสต์
|
||||
renoteUnmute: เลิกปิดเสียงบูสต์
|
||||
manageGroups: จัดการกลุ่ม
|
||||
addInstance: เพิ่มเซิฟเวอร์
|
||||
searchPlaceholder: ค้นหา Firefish
|
||||
addInstance: เพิ่มเซิร์ฟเวอร์
|
||||
searchPlaceholder: ค้นหาใน Firefish
|
||||
deleted: ลบแล้ว
|
||||
editNote: แก้ไขโพสต์
|
||||
edited: แก้ไขแล้วเมื่อ {date} {time}
|
||||
jumpToPrevious: ข้ามไปที่ก่อนหน้านี้
|
||||
listsDesc: ลิสต์รายการนั้นช่วยให้คุณได้สร้างไทม์ไลน์กับผู้ใช้ที่ระบุได้นะ ยังสามารถเข้าถึงได้จากหน้าไทม์ไลน์ได้อีกด้วย
|
||||
enableEmojiReactions: เปิดใช้งานรีแอดชั่นอีโมจิ
|
||||
listsDesc: ลิสต์นั้นช่วยให้คุณได้สร้างไทม์ไลน์กับผู้ใช้ที่ระบุได้ คุณสามารถเข้าถึงได้จากหน้าไทม์ไลน์
|
||||
enableEmojiReactions: เปิดใช้งานรีแอคชันอีโมจิ
|
||||
selectChannel: เลือกช่อง
|
||||
older: เก่ากว่านี้
|
||||
newer: ใหม่กว่านี้
|
||||
older: เก่ากว่า
|
||||
newer: ใหม่กว่า
|
||||
selectInstance: เลือกเซิฟเวอร์
|
||||
showEmojisInReactionNotifications: แสดงอิโมจิในการแจ้งเตือนรีแอคชั่น
|
||||
showEmojisInReactionNotifications: แสดงอิโมจิในการแจ้งเตือนรีแอคชัน
|
||||
flagSpeakAsCat: พูดเหมือนแมว
|
||||
cw: คำเตือนเนื้อหา
|
||||
reactions: รีแอคชัน
|
||||
replies: การตอบกลับ
|
||||
quotes: โควต
|
||||
clickToShowPatterns: คลิกเพื่อแสดงรูปแบบโมดูล
|
||||
renotes: บูสต์
|
||||
|
|
|
@ -2001,3 +2001,5 @@ _iconSets:
|
|||
bold: 粗線
|
||||
duotone: 雙色
|
||||
light: 細線
|
||||
showAttachedNotes: 顯示有此附件的貼文
|
||||
attachedToNotes: 帶有此附件的貼文
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"name": "firefish",
|
||||
"version": "1.0.5-dev21",
|
||||
"version": "1.0.5-rc",
|
||||
"codename": "aqua",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://git.joinfirefish.org/firefish/firefish.git"
|
||||
},
|
||||
"packageManager": "pnpm@8.10.5",
|
||||
"packageManager": "pnpm@8.11.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"rebuild": "pnpm run clean && pnpm run build",
|
||||
|
@ -66,7 +66,7 @@
|
|||
"gulp-replace": "1.1.4",
|
||||
"gulp-terser": "2.1.0",
|
||||
"install-peers": "^1.0.4",
|
||||
"pnpm": "8.10.5",
|
||||
"pnpm": "8.11.0",
|
||||
"start-server-and-test": "2.0.3",
|
||||
"typescript": "5.2.2"
|
||||
}
|
||||
|
|
BIN
packages/backend/assets/notification-badges/boost.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1 KiB After Width: | Height: | Size: 1 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 889 B After Width: | Height: | Size: 889 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
BIN
packages/backend/assets/notification-badges/reaction.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 798 B |
BIN
packages/backend/assets/twemoji/1f004.svg
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
packages/backend/assets/twemoji/1f0cf.svg
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
packages/backend/assets/twemoji/1f170.svg
Normal file
After Width: | Height: | Size: 522 B |
BIN
packages/backend/assets/twemoji/1f171.svg
Normal file
After Width: | Height: | Size: 575 B |
BIN
packages/backend/assets/twemoji/1f17e.svg
Normal file
After Width: | Height: | Size: 465 B |
BIN
packages/backend/assets/twemoji/1f17f.svg
Normal file
After Width: | Height: | Size: 419 B |
BIN
packages/backend/assets/twemoji/1f18e.svg
Normal file
After Width: | Height: | Size: 879 B |
BIN
packages/backend/assets/twemoji/1f191.svg
Normal file
After Width: | Height: | Size: 696 B |
BIN
packages/backend/assets/twemoji/1f192.svg
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
packages/backend/assets/twemoji/1f193.svg
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
packages/backend/assets/twemoji/1f194.svg
Normal file
After Width: | Height: | Size: 553 B |
BIN
packages/backend/assets/twemoji/1f195.svg
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
packages/backend/assets/twemoji/1f196.svg
Normal file
After Width: | Height: | Size: 849 B |
BIN
packages/backend/assets/twemoji/1f197.svg
Normal file
After Width: | Height: | Size: 823 B |
BIN
packages/backend/assets/twemoji/1f198.svg
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
packages/backend/assets/twemoji/1f199.svg
Normal file
After Width: | Height: | Size: 925 B |
BIN
packages/backend/assets/twemoji/1f19a.svg
Normal file
After Width: | Height: | Size: 825 B |
BIN
packages/backend/assets/twemoji/1f1e6-1f1e8.svg
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1e9.svg
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1ea.svg
Normal file
After Width: | Height: | Size: 280 B |
BIN
packages/backend/assets/twemoji/1f1e6-1f1eb.svg
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1ec.svg
Normal file
After Width: | Height: | Size: 897 B |
BIN
packages/backend/assets/twemoji/1f1e6-1f1ee.svg
Normal file
After Width: | Height: | Size: 3.3 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1f1.svg
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1f2.svg
Normal file
After Width: | Height: | Size: 246 B |
BIN
packages/backend/assets/twemoji/1f1e6-1f1f4.svg
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1f6.svg
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1f7.svg
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1f8.svg
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1f9.svg
Normal file
After Width: | Height: | Size: 216 B |
BIN
packages/backend/assets/twemoji/1f1e6-1f1fa.svg
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
packages/backend/assets/twemoji/1f1e6-1f1fc.svg
Normal file
After Width: | Height: | Size: 733 B |
BIN
packages/backend/assets/twemoji/1f1e6-1f1fd.svg
Normal file
After Width: | Height: | Size: 378 B |
BIN
packages/backend/assets/twemoji/1f1e6-1f1ff.svg
Normal file
After Width: | Height: | Size: 575 B |
BIN
packages/backend/assets/twemoji/1f1e6.svg
Normal file
After Width: | Height: | Size: 522 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1e6.svg
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1e7.svg
Normal file
After Width: | Height: | Size: 673 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1e9.svg
Normal file
After Width: | Height: | Size: 211 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1ea.svg
Normal file
After Width: | Height: | Size: 266 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1eb.svg
Normal file
After Width: | Height: | Size: 481 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1ec.svg
Normal file
After Width: | Height: | Size: 241 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1ed.svg
Normal file
After Width: | Height: | Size: 289 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1ee.svg
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1ef.svg
Normal file
After Width: | Height: | Size: 249 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f1.svg
Normal file
After Width: | Height: | Size: 5.4 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f2.svg
Normal file
After Width: | Height: | Size: 5.4 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f3.svg
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f4.svg
Normal file
After Width: | Height: | Size: 5.4 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f6.svg
Normal file
After Width: | Height: | Size: 864 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f7.svg
Normal file
After Width: | Height: | Size: 650 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f8.svg
Normal file
After Width: | Height: | Size: 438 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1f9.svg
Normal file
After Width: | Height: | Size: 5.9 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1fb.svg
Normal file
After Width: | Height: | Size: 447 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1fc.svg
Normal file
After Width: | Height: | Size: 255 B |
BIN
packages/backend/assets/twemoji/1f1e7-1f1fe.svg
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
packages/backend/assets/twemoji/1f1e7-1f1ff.svg
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
packages/backend/assets/twemoji/1f1e7.svg
Normal file
After Width: | Height: | Size: 575 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1e6.svg
Normal file
After Width: | Height: | Size: 876 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1e8.svg
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
packages/backend/assets/twemoji/1f1e8-1f1e9.svg
Normal file
After Width: | Height: | Size: 685 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1eb.svg
Normal file
After Width: | Height: | Size: 466 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1ec.svg
Normal file
After Width: | Height: | Size: 342 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1ed.svg
Normal file
After Width: | Height: | Size: 230 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1ee.svg
Normal file
After Width: | Height: | Size: 242 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1f0.svg
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
packages/backend/assets/twemoji/1f1e8-1f1f1.svg
Normal file
After Width: | Height: | Size: 480 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1f2.svg
Normal file
After Width: | Height: | Size: 460 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1f3.svg
Normal file
After Width: | Height: | Size: 664 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1f4.svg
Normal file
After Width: | Height: | Size: 244 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1f5.svg
Normal file
After Width: | Height: | Size: 241 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1f7.svg
Normal file
After Width: | Height: | Size: 843 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1fa.svg
Normal file
After Width: | Height: | Size: 496 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1fb.svg
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
packages/backend/assets/twemoji/1f1e8-1f1fc.svg
Normal file
After Width: | Height: | Size: 659 B |
BIN
packages/backend/assets/twemoji/1f1e8-1f1fd.svg
Normal file
After Width: | Height: | Size: 1.7 KiB |