feat: add host-local custom project icons (#2335)
* feat(projects): add local icons and colors * refactor(projects): simplify appearance handling * fix(projects): serialize appearance saves * test(app): update project appearance expectations * test: fix project appearance CI expectations * refactor(projects): organize appearance code * fix(server): adopt main's reconcile model in project appearance updates * fix(projects): preserve host-local appearance targets * fix(desktop): restore Linux development startup Ubuntu can block Electron's unprivileged user-namespace fallback while the npm-installed sandbox helper is not SUID. Disable the Chromium process sandbox only in the Linux development runner so packaged desktop policy remains unchanged. * feat(projects): add custom project icons Keep URL acquisition in the client so the host daemon only validates uploaded bytes. Project name and icon changes share one adaptive edit sheet. * refactor(settings): scope projects by host --------- Co-authored-by: Mohamed Boudra <boudra.moha@gmail.com>
This commit is contained in:
co-authored by
Mohamed Boudra
parent
706ae3d9bb
commit
800bd2bef1
@@ -1621,6 +1621,7 @@ export const ar: TranslationResources = {
|
||||
vimHint: "تنطبق على ملفات المصدر في الويب وسطح المكتب.",
|
||||
},
|
||||
hostSections: {
|
||||
projects: "المشاريع",
|
||||
connections: "اتصالات",
|
||||
agents: "Agents",
|
||||
workspaces: "Workspaces",
|
||||
@@ -2121,24 +2122,23 @@ export const ar: TranslationResources = {
|
||||
},
|
||||
},
|
||||
project: {
|
||||
noEditableTarget: "ليس لدينا نسخة قابلة للتحرير من هذا المشروع على أي مضيف متصل.",
|
||||
noEditableTarget: "هذا المشروع غير متاح للتحرير على هذا المضيف.",
|
||||
backToProjects: "العودة إلى المشاريع",
|
||||
switchHost: "تبديل المضيف",
|
||||
rename: {
|
||||
renamedToast: "تمت إعادة تسمية المشروع",
|
||||
errorFallback: "تعذرت إعادة تسمية المشروع",
|
||||
renameLabel: "إعادة تسمية المشروع",
|
||||
resetLabel: "إعادة تعيين اسم المشروع إلى الافتراضي",
|
||||
projectNameLabel: "اسم المشروع",
|
||||
saveLabel: "احفظ اسم المشروع",
|
||||
cancelLabel: "إلغاء إعادة التسمية",
|
||||
reset: "إعادة ضبط",
|
||||
edit: {
|
||||
title: "تعديل المشروع",
|
||||
name: "الاسم",
|
||||
nameLabel: "اسم المشروع",
|
||||
icon: "الأيقونة",
|
||||
chooseImage: "اختيار صورة",
|
||||
useAutomatic: "استخدام التلقائي",
|
||||
imageUrl: "رابط صورة أو موقع",
|
||||
save: "حفظ التغييرات",
|
||||
savedToast: "تم تحديث المشروع",
|
||||
},
|
||||
readFailures: {
|
||||
invalidTitle: "تعذر تحليل paseo.json",
|
||||
invalidDescription: "قم بإصلاح الملف على القرص، ثم أعد تحميله.",
|
||||
missingTitle: "هذا المضيف ليس لديه هذا المشروع",
|
||||
missingWithHosts: "قم بالتبديل إلى مضيف آخر أعلاه، أو أعد التحميل.",
|
||||
missingSingleHost: "المضيف المحدد ليس لديه سجل لهذا المشروع.",
|
||||
transportTitle: "تعذر تحميل paseo.json",
|
||||
transportFallback: "المضيف لم يستجب.",
|
||||
|
||||
Reference in New Issue
Block a user