{
"app": {
"name": "EverShelf",
"loading": "Caricamento..."
},
"nav": {
"title": "๐ EverShelf",
"home": "Home",
"inventory": "Dispensa",
"recipes": "Ricette",
"shopping": "Spesa",
"log": "Log"
},
"btn": {
"back": "โ Indietro",
"save": "๐พ Salva",
"cancel": "โ Annulla",
"close": "Chiudi",
"add": "โ
Aggiungi",
"delete": "Elimina",
"edit": "โ๏ธ Modifica",
"search": "๐ Cerca",
"go": "โ
Vai",
"toggle_password": "๐๏ธ Mostra/Nascondi",
"load_more": "Carica altri...",
"save_config": "๐พ Salva Configurazione",
"save_product": "๐พ Salva Prodotto",
"restart": "โบ Ricomincia",
"reset_default": "โบ Ripristina default"
},
"locations": {
"dispensa": "Dispensa",
"frigo": "Frigo",
"freezer": "Freezer",
"altro": "Altro"
},
"categories": {
"latticini": "Latticini",
"carne": "Carne",
"pesce": "Pesce",
"frutta": "Frutta",
"verdura": "Verdura",
"pasta": "Pasta & Riso",
"pane": "Pane & Forno",
"surgelati": "Surgelati",
"bevande": "Bevande",
"condimenti": "Condimenti",
"snack": "Snack & Dolci",
"conserve": "Conserve",
"cereali": "Cereali & Legumi",
"igiene": "Igiene",
"pulizia": "Pulizia Casa",
"altro": "Altro",
"select": "-- Seleziona --"
},
"units": {
"pz": "pz",
"conf": "conf",
"g": "g",
"ml": "ml",
"pieces": "Pezzi",
"grams": "Grammi",
"box": "Confezione",
"boxes": "Confezioni"
},
"shopping_sections": {
"frutta_verdura": "Frutta & Verdura",
"carne_pesce": "Carne & Pesce",
"latticini": "Latticini & Fresco",
"pane_dolci": "Pane & Dolci",
"pasta": "Pasta & Cereali",
"conserve": "Conserve & Salse",
"surgelati": "Surgelati",
"bevande": "Bevande",
"pulizia_igiene": "Pulizia & Igiene",
"altro": "Altro"
},
"dashboard": {
"expired_title": "๐ซ Scaduti",
"expiring_title": "โฐ Prossime Scadenze",
"stats_period": "๐ Ultimi 30 giorni",
"opened_title": "๐ฆ Prodotti Aperti",
"review_title": "๐ Da revisionare",
"review_hint": "Quantitร che sembrano anomale. Conferma se corrette o modifica.",
"quick_recipe": "๐ณ Ricetta veloce con prodotti in scadenza"
},
"inventory": {
"title": "Dispensa",
"filter_all": "Tutti",
"search_placeholder": "๐ Cerca prodotto...",
"empty": "Nessun prodotto qui.\nScansiona un prodotto per aggiungerlo!",
"no_items_found": "Nessuna voce di inventario trovata"
},
"scan": {
"title": "Scansiona Prodotto",
"mode_shopping": "๐ Modalitร Spesa",
"mode_shopping_end": "โ
Fine spesa",
"zoom": "Zoom",
"barcode_placeholder": "Inserisci codice a barre...",
"quick_name_divider": "oppure scrivi il nome",
"quick_name_placeholder": "Es: Mele, Zucchine, Pane...",
"manual_entry": "โ๏ธ Inserimento Manuale",
"ai_identify": "๐ค Identifica con AI",
"hint": "Scansiona il barcode, scrivi il nome del prodotto, oppure usa l'AI per identificarlo",
"debug_toggle": "๐ Debug Log",
"barcode_acquired": "๐ Barcode acquisito: {code}",
"scan_barcode": "๐ Scansiona Barcode"
},
"action": {
"title": "Cosa vuoi fare?",
"add_btn": "๐ฅ AGGIUNGI",
"add_sub": "in dispensa/frigo",
"use_btn": "๐ค USA / CONSUMA",
"use_sub": "dalla dispensa/frigo"
},
"add": {
"title": "Aggiungi alla Dispensa",
"location_label": "๐ Dove lo metti?",
"quantity_label": "๐ฆ Quantitร ",
"conf_size_label": "๐ฆ Ogni confezione contiene:",
"conf_size_placeholder": "es. 300",
"vacuum_label": "๐ซ Sotto vuoto",
"vacuum_hint": "La scadenza verrร estesa automaticamente",
"submit": "โ
Aggiungi"
},
"use": {
"title": "Usa / Consuma",
"location_label": "๐ Da dove?",
"quantity_label": "Quanto hai usato?",
"partial_hint": "Oppure specifica la quantitร usata:",
"use_all": "๐๏ธ Usato TUTTO / Finito",
"submit": "๐ค Usa questa quantitร ",
"available": "๐ฆ Disponibile:",
"not_in_inventory": "โ ๏ธ Prodotto non presente nell'inventario.",
"expiry_warning": "โ ๏ธ Usa prima quella{loc} che scade il {date} โ {when}!"
},
"product": {
"title_new": "Nuovo Prodotto",
"title_edit": "Modifica Prodotto",
"ai_fill": "๐ท Scatta foto e identifica con AI",
"ai_fill_hint": "L'AI compilerร automaticamente i campi del prodotto",
"name_label": "๐ท๏ธ Nome Prodotto *",
"name_placeholder": "Es: Latte intero, Pasta penne rigate...",
"brand_label": "๐ข Marca",
"brand_placeholder": "Es: Barilla, Granarolo, Mutti...",
"category_label": "๐ Categoria",
"unit_label": "๐ Unitร di misura",
"default_qty_label": "๐ข Quantitร default",
"conf_size_label": "๐ฆ Ogni confezione contiene:",
"conf_size_placeholder": "es. 300",
"notes_label": "๐ Note",
"notes_placeholder": "Es: senza lattosio, bio, conservare in frigo dopo apertura...",
"barcode_label": "๐ Barcode",
"barcode_placeholder": "Codice a barre (se disponibile)",
"barcode_hint": "โ ๏ธ Aggiungi il barcode cosรฌ al prossimo acquisto basta scansionarlo!",
"submit": "๐พ Salva Prodotto",
"name_required": "Inserisci il nome del prodotto",
"conf_size_required": "Specifica il contenuto di ogni confezione",
"expiry_estimated": "Scadenza stimata:",
"scan_expiry": "Scansiona data scadenza",
"expiry_hint": "๐ Puoi modificare la data o scansionarla con la fotocamera",
"add_batch": "๐ฆ + Lotto con scadenza diversa",
"package_info": "๐ฆ Confezione: {info}",
"edit_catalog": "โ๏ธ Modifica scheda prodotto (nome, marca, categoriaโฆ)",
"not_recognized": "โ ๏ธ Prodotto non riconosciuto",
"edit_info": "โ๏ธ Modifica informazioni",
"modify_details": "MODIFICA\nscadenza, luogoโฆ"
},
"products": {
"title": "๐ฆ Tutti i Prodotti",
"search_placeholder": "๐ Cerca prodotto...",
"empty": "Nessun prodotto nel database.\nScansiona un prodotto per iniziare!",
"no_category": "Nessun prodotto in questa categoria"
},
"recipes": {
"title": "๐ณ Ricette",
"generate": "โจ Genera nuova ricetta"
},
"shopping": {
"title": "๐ Lista della Spesa",
"bring_loading": "Connessione a Bring!...",
"tab_to_buy": "๐๏ธ Da comprare",
"tab_forecast": "๐ง In previsione",
"total_label": "๐ฐ Totale stimato",
"section_to_buy": "๐๏ธ Da comprare",
"suggestions_title": "๐ก Suggerimenti AI",
"suggestions_add": "โ
Aggiungi selezionati a Bring!",
"search_prices": "๐ Cerca tutti i prezzi",
"suggest_btn": "๐ค Suggerisci cosa comprare",
"smart_title": "๐ง Previsioni intelligenti",
"smart_empty": "Nessuna previsione disponibile.
Aggiungi prodotti alla dispensa per ricevere previsioni intelligenti.",
"smart_filter_all": "Tutti",
"smart_filter_critical": "๐ด Urgenti",
"smart_filter_high": "๐ Presto",
"smart_filter_medium": "๐ก Pianifica",
"smart_filter_low": "๐ข Previsione",
"smart_add": "๐ Aggiungi selezionati a Bring!",
"empty": "Lista della spesa vuota!\nUsa il pulsante sotto per generare suggerimenti.",
"already_in_list": "๐ \"{name}\" giร nella lista della spesa",
"already_in_list_short": "โน๏ธ Giร nella lista della spesa",
"add_prompt": "Vuoi aggiungerlo alla lista della spesa?",
"smart_already": "๐ La spesa intelligente prevede giร {name}",
"all_searched": "Tutti i prodotti sono giร stati cercati. Usa ๐ per ricercare singoli.",
"search_complete": "Ricerca completata: {count} prodotti",
"removed_sufficient": "๐งน {removed} prodotto/i con scorte sufficienti rimosso/i dalla lista"
},
"ai": {
"title": "๐ค Identificazione AI",
"capture": "๐ธ Scatta Foto",
"retake": "๐ Riscatta",
"hint": "Scatta una foto del prodotto e l'AI cercherร di identificarlo",
"identifying": "๐ค Identifico il prodotto...",
"no_api_key": "โ ๏ธ Chiave API Gemini non configurata.\nAggiungi GEMINI_API_KEY nel file .env sul server.",
"fields_filled": "โ
Campi compilati dall'AI"
},
"log": {
"title": "๐ Log Operazioni"
},
"chat": {
"title": "Gemini Chef",
"welcome": "Ciao! Sono il tuo assistente cucina",
"welcome_desc": "Chiedimi di prepararti un succo, uno spuntino, un piatto veloce... Conosco la tua dispensa, i tuoi elettrodomestici e le tue preferenze!",
"suggestion_snack": "๐ฟ Spuntino veloce",
"suggestion_juice": "๐ฅค Succo/Frullato",
"suggestion_light": "๐ฅ Qualcosa di leggero",
"suggestion_expiry": "โฐ Usa le scadenze",
"clear": "Nuova conversazione",
"placeholder": "Chiedi qualcosa..."
},
"cooking": {
"close": "Chiudi",
"tts_btn": "Leggi ad alta voce",
"restart": "โบ Ricomincia",
"replay": "๐ Rileggi",
"timer": "โฑ๏ธ {time} ยท Timer",
"prev": "โ Precedente",
"next": "Successivo โถ"
},
"settings": {
"title": "โ๏ธ Configurazione",
"tab_api": "API Keys",
"tab_bring": "Bring!",
"tab_recipe": "Ricette",
"tab_mealplan": "Piano Settimanale",
"tab_appliances": "Elettrodomestici",
"tab_spesa": "Spesa Online",
"tab_camera": "Fotocamera",
"tab_security": "Sicurezza",
"tab_tts": "Voce (TTS)",
"tab_language": "Lingua",
"gemini": {
"title": "๐ค Google Gemini AI",
"hint": "Chiave API per identificazione prodotti, scadenze e ricette.",
"key_label": "API Key Gemini"
},
"bring": {
"title": "๐ Bring! Shopping List",
"hint": "Credenziali per l'integrazione con la lista della spesa Bring!",
"email_label": "๐ง Email Bring!",
"password_label": "๐ Password Bring!"
},
"recipe": {
"title": "๐ณ Preferenze Ricette",
"hint": "Configura le opzioni predefinite per la generazione delle ricette.",
"persons_label": "๐ฅ Persone predefinite",
"options_label": "๐ฏ Opzioni ricetta predefinite",
"fast": "โก Pasto Veloce",
"light": "๐ฅ Poca Fame",
"expiry": "โฐ Prioritร Scadenze",
"healthy": "๐ Extra Salutare",
"opened": "๐ฆ Prioritร Cose Aperte",
"zerowaste": "โป๏ธ Zero Sprechi",
"dietary_label": "๐ซ Intolleranze / Restrizioni",
"dietary_placeholder": "Es: senza glutine, senza lattosio, vegetariano..."
},
"mealplan": {
"title": "๐
Piano Pasti Settimanale",
"hint": "Imposta la tipologia di pasto per ogni giorno. Sarร usata come guida nella generazione delle ricette.",
"enabled": "โ
Attiva piano pasti settimanale",
"legend": "๐ค๏ธ = Pranzo ยท ๐ = Cena ยท Tocca un badge per cambiarlo.",
"types_title": "๐ Tipologie disponibili"
},
"appliances": {
"title": "๐ Elettrodomestici Disponibili",
"hint": "Indica gli elettrodomestici che hai a disposizione. Saranno considerati nella generazione delle ricette.",
"new_placeholder": "Es: Macchina del pane, Bimby, Friggitrice ad aria...",
"quick_title": "Aggiungi velocemente:",
"oven": "๐ฅ Forno",
"microwave": "๐ก Microonde",
"air_fryer": "๐ Friggitrice ad aria",
"bread_maker": "๐ Macchina pane",
"bimby": "๐ค Bimby/Cookeo",
"mixer": "๐ Planetaria",
"steamer": "โจ๏ธ Vaporiera",
"pressure_cooker": "๐ซ Pentola pressione",
"toaster": "๐ Tostapane",
"blender": "๐น Frullatore",
"empty": "Nessun elettrodomestico aggiunto"
},
"spesa": {
"title": "๐๏ธ Spesa Online",
"hint": "Configura il provider per la spesa online.",
"provider_label": "๐ช Provider",
"email_label": "๐ง Email",
"password_label": "๐ Password",
"login_btn": "๐ Accedi",
"ai_prompt_label": "๐ค Prompt AI selezione prodotto",
"ai_prompt_placeholder": "Istruzioni per l'AI quando deve scegliere tra piรน prodotti...",
"ai_prompt_hint": "L'AI usa questo prompt per scegliere il prodotto piรน appropriato tra i risultati. Lascia vuoto per il comportamento predefinito.",
"configure_first": "Configura prima la Spesa Online nelle impostazioni"
},
"camera": {
"title": "๐ท Fotocamera",
"hint": "Scegli quale fotocamera utilizzare per la scansione barcode e l'identificazione AI.",
"device_label": "๐ธ Fotocamera predefinita",
"back": "๐ฑ Posteriore (default)",
"front": "๐คณ Anteriore",
"devices_hint": "Se hai piรน fotocamere, puoi selezionarne una specifica dall'elenco sopra dopo aver concesso i permessi.",
"detect_btn": "๐ Rileva fotocamere"
},
"security": {
"title": "๐ Certificato HTTPS",
"hint": "Se il browser mostra l'errore \"La connessione non รจ privata\" (ERR_CERT_AUTHORITY_INVALID), devi installare il certificato CA nel dispositivo.",
"download_btn": "๐ฅ Scarica Certificato CA"
},
"tts": {
"title": "๐ Voce & TTS",
"hint": "Configura la sintesi vocale tramite qualsiasi API REST esterna. I passi della ricetta e i timer scaduti verranno inviati all'endpoint configurato.",
"enabled": "โ
Attiva TTS",
"url_label": "๐ URL Endpoint",
"method_label": "๐ก Metodo HTTP",
"auth_label": "๐ Autenticazione",
"auth_bearer": "Bearer Token",
"auth_custom": "Header personalizzato",
"auth_none": "Nessuna",
"token_label": "๐ Bearer Token",
"custom_header_name": "๐ Nome header",
"custom_header_value": "๐ Valore header",
"content_type_label": "๐ Content-Type",
"payload_key_label": "๐๏ธ Campo testo nel payload",
"payload_key_hint": "Nome del campo JSON che conterrร il testo da leggere (es: message, text).",
"extra_fields_label": "โ Campi extra (JSON)",
"extra_fields_placeholder": "{\"entity_id\": \"media_player.living_room\"}",
"extra_fields_hint": "Campi aggiuntivi da includere nel payload, in formato JSON. Lascia vuoto se non necessario.",
"test_btn": "๐ Invia Test Vocale"
},
"language": {
"title": "๐ Lingua / Language",
"hint": "Seleziona la lingua dell'interfaccia. Select the interface language.",
"label": "๐ Lingua",
"restart_notice": "La pagina verrร ricaricata per applicare la nuova lingua."
},
"saved": "โ
Configurazione salvata!",
"saved_local": "โ
Configurazione salvata localmente",
"saved_local_error": "โ ๏ธ Salvato localmente, errore server: {error}"
},
"expiry": {
"today": "OGGI",
"tomorrow": "Domani",
"days": "{days} giorni",
"expired_days": "Da {days}g",
"expired_yesterday": "Da ieri",
"expired_today": "Oggi"
},
"status": {
"ok": "OK",
"check": "Controlla",
"discard": "Buttare"
},
"toast": {
"product_saved": "Prodotto salvato!",
"product_created": "Prodotto creato!",
"product_updated": "โ
Prodotto aggiornato!",
"product_removed": "Prodotto rimosso",
"updated": "Aggiornato!",
"quantity_confirmed": "โ Quantitร confermata",
"added_to_inventory": "โ
{name} aggiunto!",
"removed_from_list": "โ
{name} rimosso dalla lista!",
"removed_from_list_short": "Rimosso dalla lista",
"added_to_shopping": "๐ Aggiunto alla lista della spesa!",
"removed_from_shopping": "๐ Rimosso dalla lista della spesa",
"finished_to_bring": "๐ Prodotto finito โ aggiunto a Bring!",
"thrown_away": "๐๏ธ {name} buttato!",
"thrown_away_partial": "๐๏ธ Buttato {qty} {unit} di {name}",
"appliance_added": "Elettrodomestico aggiunto",
"item_added": "{name} aggiunto"
},
"error": {
"generic": "Errore",
"loading": "Errore nel caricamento del prodotto",
"not_found": "Prodotto non trovato",
"not_found_manual": "Prodotto non trovato. Inseriscilo manualmente.",
"search": "Errore nella ricerca. Riprova.",
"search_short": "Errore nella ricerca",
"save": "Errore nel salvataggio",
"connection": "Errore di connessione",
"camera": "Impossibile accedere alla fotocamera",
"bring_add": "Errore nell'aggiunta a Bring!",
"bring_connection": "Errore connessione Bring!",
"identification": "Errore nell'identificazione",
"barcode_empty": "Inserisci un codice a barre",
"barcode_format": "Il codice a barre deve contenere solo numeri (4-14 cifre)",
"min_chars": "Scrivi almeno 2 caratteri",
"not_in_inventory": "Prodotto non nell'inventario",
"appliance_exists": "Elettrodomestico giร presente",
"already_exists": "Giร presente"
},
"confirm": {
"remove_item": "Vuoi davvero rimuovere questo prodotto dall'inventario?"
},
"edit": {
"title": "Modifica {name}"
},
"screensaver": {
"recipe_btn": "Ricette",
"scan_btn": "Scansiona prodotto"
},
"days": {
"mon": "Lunedรฌ",
"tue": "Martedรฌ",
"wed": "Mercoledรฌ",
"thu": "Giovedรฌ",
"fri": "Venerdรฌ",
"sat": "Sabato",
"sun": "Domenica"
},
"meal_types": {
"lunch": "Pranzo",
"dinner": "Cena"
}
}