mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
feat: pin frequently-used tools to the top of the dashboard (#440)
* feat(i18n): add pin/unpin/pinned strings, retire addToFavourites stub Claude-Session: https://claude.ai/code/session_01Ad5LjCDJyW1tLFd3P4Hedp * feat(web): add per-user pinned-tools store Claude-Session: https://claude.ai/code/session_01Ad5LjCDJyW1tLFd3P4Hedp * feat(web): add opt-in pin toggle to ToolCard Claude-Session: https://claude.ai/code/session_01Ad5LjCDJyW1tLFd3P4Hedp * feat(web): render Pinned section on the dashboard All tab Claude-Session: https://claude.ai/code/session_01Ad5LjCDJyW1tLFd3P4Hedp * test(web): cover pin toggle (component) and dashboard pin flow (e2e) Claude-Session: https://claude.ai/code/session_01Ad5LjCDJyW1tLFd3P4Hedp
This commit is contained in:
@@ -2952,6 +2952,7 @@ export const ar: TranslationKeys = {
|
||||
allTools: "جميع الأدوات",
|
||||
searchPlaceholder: "بحث في {count} أداة...",
|
||||
recent: "الأخيرة",
|
||||
pinned: "مثبّت",
|
||||
popular: "الشائعة",
|
||||
browseByCategory: "تصفح حسب الفئة",
|
||||
gettingStarted: "البدء",
|
||||
@@ -3843,7 +3844,8 @@ export const ar: TranslationKeys = {
|
||||
settings: "الإعدادات",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "إضافة إلى المفضلة",
|
||||
pin: "تثبيت",
|
||||
unpin: "إلغاء التثبيت",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "الأدوات",
|
||||
|
||||
@@ -2976,6 +2976,7 @@ export const de: TranslationKeys = {
|
||||
allTools: "Alle Werkzeuge",
|
||||
searchPlaceholder: "{count} Werkzeuge durchsuchen...",
|
||||
recent: "Zuletzt verwendet",
|
||||
pinned: "Angeheftet",
|
||||
popular: "Beliebt",
|
||||
browseByCategory: "Nach Kategorie durchsuchen",
|
||||
gettingStarted: "Erste Schritte",
|
||||
@@ -3891,7 +3892,8 @@ export const de: TranslationKeys = {
|
||||
settings: "Einstellungen",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Zu Favoriten hinzufügen",
|
||||
pin: "Anheften",
|
||||
unpin: "Lösen",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Werkzeuge",
|
||||
|
||||
@@ -2918,6 +2918,7 @@ export const en = {
|
||||
allTools: "All Tools",
|
||||
searchPlaceholder: "Search {count} tools...",
|
||||
recent: "Recent",
|
||||
pinned: "Pinned",
|
||||
popular: "Popular",
|
||||
browseByCategory: "Browse by Category",
|
||||
gettingStarted: "Getting Started",
|
||||
@@ -3814,7 +3815,8 @@ export const en = {
|
||||
settings: "Settings",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Add to favourites",
|
||||
pin: "Pin",
|
||||
unpin: "Unpin",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Tools",
|
||||
|
||||
@@ -2957,6 +2957,7 @@ export const es: TranslationKeys = {
|
||||
allTools: "Todas las herramientas",
|
||||
searchPlaceholder: "Buscar en {count} herramientas...",
|
||||
recent: "Recientes",
|
||||
pinned: "Fijados",
|
||||
popular: "Popular",
|
||||
browseByCategory: "Explorar por categoría",
|
||||
gettingStarted: "Primeros pasos",
|
||||
@@ -3869,7 +3870,8 @@ export const es: TranslationKeys = {
|
||||
settings: "Configuración",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Agregar a favoritos",
|
||||
pin: "Fijar",
|
||||
unpin: "Quitar",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Herramientas",
|
||||
|
||||
@@ -2981,6 +2981,7 @@ export const fr: TranslationKeys = {
|
||||
allTools: "Tous les outils",
|
||||
searchPlaceholder: "Rechercher parmi {count} outils...",
|
||||
recent: "Récents",
|
||||
pinned: "Épinglés",
|
||||
popular: "Populaires",
|
||||
browseByCategory: "Parcourir par catégorie",
|
||||
gettingStarted: "Pour commencer",
|
||||
@@ -3893,7 +3894,8 @@ export const fr: TranslationKeys = {
|
||||
settings: "Paramètres",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Ajouter aux favoris",
|
||||
pin: "Épingler",
|
||||
unpin: "Détacher",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Outils",
|
||||
|
||||
@@ -2784,6 +2784,7 @@ export const hi: TranslationKeys = {
|
||||
allTools: "सभी टूल्स",
|
||||
searchPlaceholder: "{count} टूल में खोजें...",
|
||||
recent: "हाल के",
|
||||
pinned: "पिन किए गए",
|
||||
popular: "लोकप्रिय",
|
||||
browseByCategory: "श्रेणी के अनुसार देखें",
|
||||
gettingStarted: "शुरू करें",
|
||||
@@ -3673,7 +3674,8 @@ export const hi: TranslationKeys = {
|
||||
settings: "सेटिंग्स",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "पसंदीदा में जोड़ें",
|
||||
pin: "पिन करें",
|
||||
unpin: "अनपिन करें",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "टूल्स",
|
||||
|
||||
@@ -2965,6 +2965,7 @@ export const id: TranslationKeys = {
|
||||
allTools: "Semua Alat",
|
||||
searchPlaceholder: "Cari {count} alat...",
|
||||
recent: "Terbaru",
|
||||
pinned: "Disematkan",
|
||||
popular: "Populer",
|
||||
browseByCategory: "Jelajahi berdasarkan Kategori",
|
||||
gettingStarted: "Memulai",
|
||||
@@ -3868,7 +3869,8 @@ export const id: TranslationKeys = {
|
||||
settings: "Pengaturan",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Tambah ke favorit",
|
||||
pin: "Sematkan",
|
||||
unpin: "Lepas sematan",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Alat",
|
||||
|
||||
@@ -2973,6 +2973,7 @@ export const it: TranslationKeys = {
|
||||
allTools: "Tutti gli strumenti",
|
||||
searchPlaceholder: "Cerca tra {count} strumenti...",
|
||||
recent: "Recenti",
|
||||
pinned: "Fissati",
|
||||
popular: "Popolari",
|
||||
browseByCategory: "Esplora per categoria",
|
||||
gettingStarted: "Per iniziare",
|
||||
@@ -3883,7 +3884,8 @@ export const it: TranslationKeys = {
|
||||
settings: "Impostazioni",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Aggiungi ai preferiti",
|
||||
pin: "Fissa",
|
||||
unpin: "Rimuovi",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Strumenti",
|
||||
|
||||
@@ -2923,6 +2923,7 @@ export const ja: TranslationKeys = {
|
||||
allTools: "すべてのツール",
|
||||
searchPlaceholder: "{count} 個のツールを検索...",
|
||||
recent: "最近",
|
||||
pinned: "ピン留め",
|
||||
popular: "人気",
|
||||
browseByCategory: "カテゴリで探す",
|
||||
gettingStarted: "はじめに",
|
||||
@@ -3820,7 +3821,8 @@ export const ja: TranslationKeys = {
|
||||
settings: "設定",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "お気に入りに追加",
|
||||
pin: "ピン留め",
|
||||
unpin: "ピン留め解除",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "ツール",
|
||||
|
||||
@@ -2905,6 +2905,7 @@ export const ko: TranslationKeys = {
|
||||
allTools: "모든 도구",
|
||||
searchPlaceholder: "{count}개 도구 검색...",
|
||||
recent: "최근",
|
||||
pinned: "고정됨",
|
||||
popular: "인기",
|
||||
browseByCategory: "카테고리별 탐색",
|
||||
gettingStarted: "시작하기",
|
||||
@@ -3800,7 +3801,8 @@ export const ko: TranslationKeys = {
|
||||
settings: "설정",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "즐겨찾기에 추가",
|
||||
pin: "고정",
|
||||
unpin: "고정 해제",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "도구",
|
||||
|
||||
@@ -2973,6 +2973,7 @@ export const nl: TranslationKeys = {
|
||||
allTools: "Alle tools",
|
||||
searchPlaceholder: "Zoeken in {count} tools...",
|
||||
recent: "Recent",
|
||||
pinned: "Vastgezet",
|
||||
popular: "Populair",
|
||||
browseByCategory: "Bladeren op categorie",
|
||||
gettingStarted: "Aan de slag",
|
||||
@@ -3878,7 +3879,8 @@ export const nl: TranslationKeys = {
|
||||
settings: "Instellingen",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Aan favorieten toevoegen",
|
||||
pin: "Vastzetten",
|
||||
unpin: "Losmaken",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Tools",
|
||||
|
||||
@@ -2971,6 +2971,7 @@ export const pl: TranslationKeys = {
|
||||
allTools: "Wszystkie narzędzia",
|
||||
searchPlaceholder: "Szukaj wśród {count} narzędzi...",
|
||||
recent: "Ostatnie",
|
||||
pinned: "Przypięte",
|
||||
popular: "Popularne",
|
||||
browseByCategory: "Przeglądaj wg kategorii",
|
||||
gettingStarted: "Pierwsze kroki",
|
||||
@@ -3884,7 +3885,8 @@ export const pl: TranslationKeys = {
|
||||
settings: "Ustawienia",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Dodaj do ulubionych",
|
||||
pin: "Przypnij",
|
||||
unpin: "Odepnij",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Narzędzia",
|
||||
|
||||
@@ -2967,6 +2967,7 @@ export const ptBR: TranslationKeys = {
|
||||
allTools: "Todas as ferramentas",
|
||||
searchPlaceholder: "Buscar em {count} ferramentas...",
|
||||
recent: "Recentes",
|
||||
pinned: "Fixados",
|
||||
popular: "Populares",
|
||||
browseByCategory: "Navegar por categoria",
|
||||
gettingStarted: "Primeiros passos",
|
||||
@@ -3875,7 +3876,8 @@ export const ptBR: TranslationKeys = {
|
||||
settings: "Configurações",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Adicionar aos favoritos",
|
||||
pin: "Fixar",
|
||||
unpin: "Desafixar",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Ferramentas",
|
||||
|
||||
@@ -2967,6 +2967,7 @@ export const ru: TranslationKeys = {
|
||||
allTools: "Все инструменты",
|
||||
searchPlaceholder: "Поиск среди {count} инструментов...",
|
||||
recent: "Недавние",
|
||||
pinned: "Закреплённые",
|
||||
popular: "Популярные",
|
||||
browseByCategory: "По категориям",
|
||||
gettingStarted: "Начало работы",
|
||||
@@ -3872,7 +3873,8 @@ export const ru: TranslationKeys = {
|
||||
settings: "Настройки",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Добавить в избранное",
|
||||
pin: "Закрепить",
|
||||
unpin: "Открепить",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Инструменты",
|
||||
|
||||
@@ -2964,6 +2964,7 @@ export const sv: TranslationKeys = {
|
||||
allTools: "Alla verktyg",
|
||||
searchPlaceholder: "Sök bland {count} verktyg...",
|
||||
recent: "Senaste",
|
||||
pinned: "Fästa",
|
||||
popular: "Populära",
|
||||
browseByCategory: "Utforska per kategori",
|
||||
gettingStarted: "Kom igång",
|
||||
@@ -3864,7 +3865,8 @@ export const sv: TranslationKeys = {
|
||||
settings: "Inställningar",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Lägg till i favoriter",
|
||||
pin: "Fäst",
|
||||
unpin: "Ta bort",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Verktyg",
|
||||
|
||||
@@ -2937,6 +2937,7 @@ export const th: TranslationKeys = {
|
||||
allTools: "เครื่องมือทั้งหมด",
|
||||
searchPlaceholder: "ค้นหา {count} เครื่องมือ...",
|
||||
recent: "ล่าสุด",
|
||||
pinned: "ที่ปักหมุด",
|
||||
popular: "ยอดนิยม",
|
||||
browseByCategory: "เรียกดูตามหมวดหมู่",
|
||||
gettingStarted: "เริ่มต้นใช้งาน",
|
||||
@@ -3823,7 +3824,8 @@ export const th: TranslationKeys = {
|
||||
settings: "ตั้งค่า",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "เพิ่มในรายการโปรด",
|
||||
pin: "ปักหมุด",
|
||||
unpin: "เลิกปักหมุด",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "เครื่องมือ",
|
||||
|
||||
@@ -2968,6 +2968,7 @@ export const tr: TranslationKeys = {
|
||||
allTools: "Tüm Araçlar",
|
||||
searchPlaceholder: "{count} araç içinde ara...",
|
||||
recent: "Son Kullanılan",
|
||||
pinned: "Sabitlenenler",
|
||||
popular: "Popüler",
|
||||
browseByCategory: "Kategoriye Göre Göz At",
|
||||
gettingStarted: "Başlarken",
|
||||
@@ -3875,7 +3876,8 @@ export const tr: TranslationKeys = {
|
||||
settings: "Ayarlar",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Favorilere ekle",
|
||||
pin: "Sabitle",
|
||||
unpin: "Kaldır",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Araçlar",
|
||||
|
||||
@@ -2969,6 +2969,7 @@ export const uk: TranslationKeys = {
|
||||
allTools: "Усі інструменти",
|
||||
searchPlaceholder: "Пошук серед {count} інструментів...",
|
||||
recent: "Нещодавні",
|
||||
pinned: "Закріплені",
|
||||
popular: "Популярні",
|
||||
browseByCategory: "Перегляд за категорією",
|
||||
gettingStarted: "Початок роботи",
|
||||
@@ -3873,7 +3874,8 @@ export const uk: TranslationKeys = {
|
||||
settings: "Налаштування",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Додати до обраного",
|
||||
pin: "Закріпити",
|
||||
unpin: "Відкріпити",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Інструменти",
|
||||
|
||||
@@ -2965,6 +2965,7 @@ export const vi: TranslationKeys = {
|
||||
allTools: "Tất cả công cụ",
|
||||
searchPlaceholder: "Tìm kiếm {count} công cụ...",
|
||||
recent: "Gần đây",
|
||||
pinned: "Đã ghim",
|
||||
popular: "Phổ biến",
|
||||
browseByCategory: "Duyệt theo danh mục",
|
||||
gettingStarted: "Bắt đầu",
|
||||
@@ -3864,7 +3865,8 @@ export const vi: TranslationKeys = {
|
||||
settings: "Cài đặt",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "Thêm vào yêu thích",
|
||||
pin: "Ghim",
|
||||
unpin: "Bỏ ghim",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "Công cụ",
|
||||
|
||||
@@ -2725,6 +2725,7 @@ export const zhCN: TranslationKeys = {
|
||||
allTools: "所有工具",
|
||||
searchPlaceholder: "搜索 {count} 个工具...",
|
||||
recent: "最近",
|
||||
pinned: "已固定",
|
||||
popular: "热门",
|
||||
browseByCategory: "按分类浏览",
|
||||
gettingStarted: "开始使用",
|
||||
@@ -3606,7 +3607,8 @@ export const zhCN: TranslationKeys = {
|
||||
settings: "设置",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "添加到收藏",
|
||||
pin: "固定",
|
||||
unpin: "取消固定",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "工具",
|
||||
|
||||
@@ -2724,6 +2724,7 @@ export const zhTW: TranslationKeys = {
|
||||
allTools: "全部工具",
|
||||
searchPlaceholder: "搜尋 {count} 個工具...",
|
||||
recent: "最近使用",
|
||||
pinned: "已釘選",
|
||||
popular: "熱門",
|
||||
browseByCategory: "依分類瀏覽",
|
||||
gettingStarted: "快速入門",
|
||||
@@ -3607,7 +3608,8 @@ export const zhTW: TranslationKeys = {
|
||||
settings: "設定",
|
||||
},
|
||||
toolCard: {
|
||||
addToFavourites: "加入收藏",
|
||||
pin: "釘選",
|
||||
unpin: "取消釘選",
|
||||
},
|
||||
appLayout: {
|
||||
mobileNavTools: "工具",
|
||||
|
||||
Reference in New Issue
Block a user