mirror of https://github.com/jetkvm/kvm.git
Localize the extension popovers.
This commit is contained in:
parent
d81a497926
commit
26b2b4e9b5
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "Åh nej!",
|
"oh_no": "Åh nej!",
|
||||||
"something_went_wrong": "Noget gik galt. Prøv igen senere, eller kontakt support.",
|
"something_went_wrong": "Noget gik galt. Prøv igen senere, eller kontakt support.",
|
||||||
"jetkvm_logo": "JetKVM-logo",
|
"jetkvm_logo": "JetKVM-logo",
|
||||||
|
"load": "Indlæs",
|
||||||
|
"unknown_error": "Ukendt fejl",
|
||||||
"action_bar_virtual_media": "Virtuelle medier",
|
"action_bar_virtual_media": "Virtuelle medier",
|
||||||
"action_bar_paste_text": "Indsæt tekst",
|
"action_bar_paste_text": "Indsæt tekst",
|
||||||
"action_bar_web_terminal": "Webterminal",
|
"action_bar_web_terminal": "Webterminal",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Forbindelsesstatistik",
|
"action_bar_connection_stats": "Forbindelsesstatistik",
|
||||||
"action_bar_settings": "Indstillinger",
|
"action_bar_settings": "Indstillinger",
|
||||||
"action_bar_fullscreen": "Fuldskærm",
|
"action_bar_fullscreen": "Fuldskærm",
|
||||||
"action_bar_exit_fullscreen": "Afslut fuldskærm"
|
"action_bar_exit_fullscreen": "Afslut fuldskærm",
|
||||||
|
"extensions_popover_extensions": "Udvidelser",
|
||||||
|
"extension_popover_set_error_notification": "Kunne ikke angive aktiv udvidelse: {error}",
|
||||||
|
"extension_popover_unload_extension": "Fjern udvidelse",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Indlæs og administrer dine udvidelser",
|
||||||
|
"extensions_atx_power_control": "ATX-strømstyring",
|
||||||
|
"extensions_atx_power_control_description": "Styr din maskines strømtilstand via ATX-strømstyring.",
|
||||||
|
"extensions_dc_power_control": "DC-strømstyring",
|
||||||
|
"extensions_dc_power_control_description": "Styr din DC-strømforlænger",
|
||||||
|
"extension_serial_console": "Seriel konsol",
|
||||||
|
"extension_serial_console_description": "Få adgang til din serielle konsoludvidelse",
|
||||||
|
"atx_power_control_get_state_error": "Kunne ikke hente ATX-strømtilstand: {error}",
|
||||||
|
"atx_power_control_send_action_error": "Kunne ikke sende ATX-strømfunktion {action} : {error}",
|
||||||
|
"atx_power_control_power_button": "Magt",
|
||||||
|
"atx_power_control_short_power_button": "Kort tryk",
|
||||||
|
"atx_power_control_long_power_button": "Langt tryk",
|
||||||
|
"atx_power_control_reset_button": "Nulstil",
|
||||||
|
"atx_power_control_power_led": "Strøm-LED",
|
||||||
|
"atx_power_control_hdd_led": "HDD-LED",
|
||||||
|
"dc_power_control_get_state_error": "Kunne ikke hente DC-strømtilstand: {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "Kunne ikke sende DC-strømstatus til {enabled} : {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "Kunne ikke sende DC-strømgendannelsesstatus til {state} : {error}",
|
||||||
|
"dc_power_control_power_on_button": "Tænd",
|
||||||
|
"dc_power_control_power_off_button": "Sluk",
|
||||||
|
"dc_power_control_restore_power_state": "Gendan strømtab",
|
||||||
|
"dc_power_control_power_on_state": "Tænd",
|
||||||
|
"dc_power_control_power_off_state": "Sluk",
|
||||||
|
"dc_power_control_voltage": "Spænding",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Strøm",
|
||||||
|
"dc_power_control_current_unit": "A",
|
||||||
|
"dc_power_control_power": "Magt",
|
||||||
|
"dc_power_control_power_unit": "W",
|
||||||
|
"serial_console_get_state_error": "Kunne ikke hente indstillinger for seriel konsol: {error}",
|
||||||
|
"serial_console_set_power_state_error": "Kunne ikke indstille seriel konsolindstillinger til {settings} : {error}",
|
||||||
|
"serial_console_configure_description": "Konfigurer dine serielle konsolindstillinger",
|
||||||
|
"serial_console_open_console": "Åbn konsol",
|
||||||
|
"serial_console_baud_rate": "Baudhastighed",
|
||||||
|
"serial_console_data_bits": "Databits",
|
||||||
|
"serial_console_stop_bits": "Stopbits",
|
||||||
|
"serial_console_parity": "Paritet",
|
||||||
|
"serial_console_parity_even": "Lige paritet",
|
||||||
|
"serial_console_parity_odd": "Ulige paritet",
|
||||||
|
"serial_console_parity_none": "Ingen paritet",
|
||||||
|
"serial_console_parity_mark": "Mark Paritet",
|
||||||
|
"serial_console_parity_space": "Rumparitet"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "Oh nein!",
|
"oh_no": "Oh nein!",
|
||||||
"something_went_wrong": "Ein Fehler ist aufgetreten. Bitte versuchen Sie es später noch einmal oder wenden Sie sich an den Support.",
|
"something_went_wrong": "Ein Fehler ist aufgetreten. Bitte versuchen Sie es später noch einmal oder wenden Sie sich an den Support.",
|
||||||
"jetkvm_logo": "JetKVM Logo",
|
"jetkvm_logo": "JetKVM Logo",
|
||||||
|
"load": "Laden",
|
||||||
|
"unknown_error": "Unbekannter Fehler",
|
||||||
"action_bar_virtual_media": "Virtuelle Medien",
|
"action_bar_virtual_media": "Virtuelle Medien",
|
||||||
"action_bar_paste_text": "Text einfügen",
|
"action_bar_paste_text": "Text einfügen",
|
||||||
"action_bar_web_terminal": "Web-Terminal",
|
"action_bar_web_terminal": "Web-Terminal",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Verbindungsstatistiken",
|
"action_bar_connection_stats": "Verbindungsstatistiken",
|
||||||
"action_bar_settings": "Einstellungen",
|
"action_bar_settings": "Einstellungen",
|
||||||
"action_bar_fullscreen": "Vollbild",
|
"action_bar_fullscreen": "Vollbild",
|
||||||
"action_bar_exit_fullscreen": "Vollbildmodus beenden"
|
"action_bar_exit_fullscreen": "Vollbildmodus beenden",
|
||||||
|
"extensions_popover_extensions": "Erweiterungen",
|
||||||
|
"extension_popover_set_error_notification": "Fehler beim Festlegen der aktiven Erweiterung: {error}",
|
||||||
|
"extension_popover_unload_extension": "Erweiterung entladen",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Laden und verwalten Sie Ihre Erweiterungen",
|
||||||
|
"extensions_atx_power_control": "ATX-Stromsteuerung",
|
||||||
|
"extensions_atx_power_control_description": "Steuern Sie den Energiezustand Ihrer Maschine über die ATX-Energiesteuerung.",
|
||||||
|
"extensions_dc_power_control": "Gleichstromsteuerung",
|
||||||
|
"extensions_dc_power_control_description": "Steuern Sie Ihre DC-Stromerweiterung",
|
||||||
|
"extension_serial_console": "Serielle Konsole",
|
||||||
|
"extension_serial_console_description": "Greifen Sie auf Ihre serielle Konsolenerweiterung zu",
|
||||||
|
"atx_power_control_get_state_error": "ATX-Stromversorgungsstatus konnte nicht abgerufen werden: {error}",
|
||||||
|
"atx_power_control_send_action_error": "ATX-Stromversorgungsaktion {action} konnte nicht gesendet werden: {error}",
|
||||||
|
"atx_power_control_power_button": "Leistung",
|
||||||
|
"atx_power_control_short_power_button": "Kurzes Drücken",
|
||||||
|
"atx_power_control_long_power_button": "Langes Drücken",
|
||||||
|
"atx_power_control_reset_button": "Zurücksetzen",
|
||||||
|
"atx_power_control_power_led": "Betriebs-LED",
|
||||||
|
"atx_power_control_hdd_led": "Festplatten-LED",
|
||||||
|
"dc_power_control_get_state_error": "Der Gleichstromstatus konnte nicht abgerufen werden: {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "Der DC-Stromversorgungsstatus konnte nicht an {enabled} werden: {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "Der Status zur Wiederherstellung der Gleichstromversorgung konnte nicht an {state} gesendet werden: {error}",
|
||||||
|
"dc_power_control_power_on_button": "Einschalten",
|
||||||
|
"dc_power_control_power_off_button": "Ausschalten",
|
||||||
|
"dc_power_control_restore_power_state": "Wiederherstellung nach Stromausfall",
|
||||||
|
"dc_power_control_power_on_state": "Einschalten",
|
||||||
|
"dc_power_control_power_off_state": "Ausschalten",
|
||||||
|
"dc_power_control_voltage": "Stromspannung",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Aktuell",
|
||||||
|
"dc_power_control_current_unit": "A",
|
||||||
|
"dc_power_control_power": "Leistung",
|
||||||
|
"dc_power_control_power_unit": "W",
|
||||||
|
"serial_console_get_state_error": "Die seriellen Konsoleneinstellungen konnten nicht abgerufen werden: {error}",
|
||||||
|
"serial_console_set_power_state_error": "Die Einstellungen der seriellen Konsole konnten nicht auf {settings} festgelegt werden: {error}",
|
||||||
|
"serial_console_configure_description": "Konfigurieren Sie die Einstellungen Ihrer seriellen Konsole",
|
||||||
|
"serial_console_open_console": "Konsole öffnen",
|
||||||
|
"serial_console_baud_rate": "Baudrate",
|
||||||
|
"serial_console_data_bits": "Datenbits",
|
||||||
|
"serial_console_stop_bits": "Stoppbits",
|
||||||
|
"serial_console_parity": "Parität",
|
||||||
|
"serial_console_parity_even": "Gerade Parität",
|
||||||
|
"serial_console_parity_odd": "Ungerade Parität",
|
||||||
|
"serial_console_parity_none": "Keine Parität",
|
||||||
|
"serial_console_parity_mark": "Parität markieren",
|
||||||
|
"serial_console_parity_space": "Raumparität"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "Oh no!",
|
"oh_no": "Oh no!",
|
||||||
"something_went_wrong": "Something went wrong. Please try again later or contact support",
|
"something_went_wrong": "Something went wrong. Please try again later or contact support",
|
||||||
"jetkvm_logo": "JetKVM Logo",
|
"jetkvm_logo": "JetKVM Logo",
|
||||||
|
"load": "Load",
|
||||||
|
"unknown_error": "Unknown error",
|
||||||
"action_bar_virtual_media": "Virtual Media",
|
"action_bar_virtual_media": "Virtual Media",
|
||||||
"action_bar_paste_text": "Paste text",
|
"action_bar_paste_text": "Paste text",
|
||||||
"action_bar_web_terminal": "Web Terminal",
|
"action_bar_web_terminal": "Web Terminal",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Connection Stats",
|
"action_bar_connection_stats": "Connection Stats",
|
||||||
"action_bar_settings": "Settings",
|
"action_bar_settings": "Settings",
|
||||||
"action_bar_fullscreen": "Fullscreen",
|
"action_bar_fullscreen": "Fullscreen",
|
||||||
"action_bar_exit_fullscreen": "Exit Fullscreen"
|
"action_bar_exit_fullscreen": "Exit Fullscreen",
|
||||||
|
"extensions_popover_extensions": "Extensions",
|
||||||
|
"extension_popover_set_error_notification": "Failed to set active extension: {error}",
|
||||||
|
"extension_popover_unload_extension": "Unload Extension",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Load and manage your extensions",
|
||||||
|
"extensions_atx_power_control": "ATX Power Control",
|
||||||
|
"extensions_atx_power_control_description": "Control the power state of your machine via ATX power control.",
|
||||||
|
"extensions_dc_power_control": "DC Power Control",
|
||||||
|
"extensions_dc_power_control_description": "Control your DC Power extension",
|
||||||
|
"extension_serial_console": "Serial Console",
|
||||||
|
"extension_serial_console_description": "Access your serial console extension",
|
||||||
|
"atx_power_control_get_state_error": "Failed to get ATX power state: {error}",
|
||||||
|
"atx_power_control_send_action_error": "Failed to send ATX power action {action}: {error}",
|
||||||
|
"atx_power_control_power_button": "Power",
|
||||||
|
"atx_power_control_short_power_button": "Short Press",
|
||||||
|
"atx_power_control_long_power_button": "Long Press",
|
||||||
|
"atx_power_control_reset_button": "Reset",
|
||||||
|
"atx_power_control_power_led": "Power LED",
|
||||||
|
"atx_power_control_hdd_led": "HDD LED",
|
||||||
|
"dc_power_control_get_state_error": "Failed to get DC power state: {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "Failed to send DC power state to {enabled}: {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "Failed to send DC power restore state to {state}: {error}",
|
||||||
|
"dc_power_control_power_on_button": "Power On",
|
||||||
|
"dc_power_control_power_off_button": "Power Off",
|
||||||
|
"dc_power_control_restore_power_state": "Restore Power Loss",
|
||||||
|
"dc_power_control_power_on_state": "Power ON",
|
||||||
|
"dc_power_control_power_off_state": "Power OFF",
|
||||||
|
"dc_power_control_voltage": "Voltage",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Current",
|
||||||
|
"dc_power_control_current_unit": "A",
|
||||||
|
"dc_power_control_power": "Power",
|
||||||
|
"dc_power_control_power_unit": "W",
|
||||||
|
"serial_console_get_settings_error": "Failed to get serial console settings: {error}",
|
||||||
|
"serial_console_set_settings_error": "Failed to set serial console settings to {settings}: {error}",
|
||||||
|
"serial_console_configure_description": "Configure your serial console settings",
|
||||||
|
"serial_console_open_console": "Open Console",
|
||||||
|
"serial_console_baud_rate": "Baud Rate",
|
||||||
|
"serial_console_data_bits": "Data Bits",
|
||||||
|
"serial_console_stop_bits": "Stop Bits",
|
||||||
|
"serial_console_parity": "Parity",
|
||||||
|
"serial_console_parity_even": "Even Parity",
|
||||||
|
"serial_console_parity_odd": "Odd Parity",
|
||||||
|
"serial_console_parity_none": "No Parity",
|
||||||
|
"serial_console_parity_mark": "Mark Parity",
|
||||||
|
"serial_console_parity_space": "Space Parity"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "¡Oh, no!",
|
"oh_no": "¡Oh, no!",
|
||||||
"something_went_wrong": "Algo salió mal. Inténtalo de nuevo más tarde o contacta con el servicio de asistencia.",
|
"something_went_wrong": "Algo salió mal. Inténtalo de nuevo más tarde o contacta con el servicio de asistencia.",
|
||||||
"jetkvm_logo": "Logotipo de JetKVM",
|
"jetkvm_logo": "Logotipo de JetKVM",
|
||||||
|
"load": "Carga",
|
||||||
|
"unknown_error": "Error desconocido",
|
||||||
"action_bar_virtual_media": "Medios virtuales",
|
"action_bar_virtual_media": "Medios virtuales",
|
||||||
"action_bar_paste_text": "Pegar texto",
|
"action_bar_paste_text": "Pegar texto",
|
||||||
"action_bar_web_terminal": "Terminal web",
|
"action_bar_web_terminal": "Terminal web",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Estadísticas de conexión",
|
"action_bar_connection_stats": "Estadísticas de conexión",
|
||||||
"action_bar_settings": "Ajustes",
|
"action_bar_settings": "Ajustes",
|
||||||
"action_bar_fullscreen": "Pantalla completa",
|
"action_bar_fullscreen": "Pantalla completa",
|
||||||
"action_bar_exit_fullscreen": "Salir de pantalla completa"
|
"action_bar_exit_fullscreen": "Salir de pantalla completa",
|
||||||
|
"extensions_popover_extensions": "Extensiones",
|
||||||
|
"extension_popover_set_error_notification": "No se pudo establecer la extensión activa: {error}",
|
||||||
|
"extension_popover_unload_extension": "Extensión de descarga",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Cargar y administrar sus extensiones",
|
||||||
|
"extensions_atx_power_control": "Control de alimentación ATX",
|
||||||
|
"extensions_atx_power_control_description": "Controle el estado de energía de su máquina a través del control de energía ATX.",
|
||||||
|
"extensions_dc_power_control": "Control de potencia de CC",
|
||||||
|
"extensions_dc_power_control_description": "Controle su extensión de alimentación de CC",
|
||||||
|
"extension_serial_console": "Consola serial",
|
||||||
|
"extension_serial_console_description": "Acceda a la extensión de su consola serie",
|
||||||
|
"atx_power_control_get_state_error": "No se pudo obtener el estado de energía ATX: {error}",
|
||||||
|
"atx_power_control_send_action_error": "No se pudo enviar la acción de alimentación ATX {action} : {error}",
|
||||||
|
"atx_power_control_power_button": "Fuerza",
|
||||||
|
"atx_power_control_short_power_button": "Prensa corta",
|
||||||
|
"atx_power_control_long_power_button": "Pulsación larga",
|
||||||
|
"atx_power_control_reset_button": "Reiniciar",
|
||||||
|
"atx_power_control_power_led": "LED de encendido",
|
||||||
|
"atx_power_control_hdd_led": "LED del disco duro",
|
||||||
|
"dc_power_control_get_state_error": "No se pudo obtener el estado de la alimentación de CC: {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "No se pudo enviar el estado de alimentación de CC a {enabled} : {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "No se pudo enviar el estado de restauración de energía de CC a {state} : {error}",
|
||||||
|
"dc_power_control_power_on_button": "Encendido",
|
||||||
|
"dc_power_control_power_off_button": "Apagado",
|
||||||
|
"dc_power_control_restore_power_state": "Restaurar pérdida de energía",
|
||||||
|
"dc_power_control_power_on_state": "Encendido",
|
||||||
|
"dc_power_control_power_off_state": "Apagado",
|
||||||
|
"dc_power_control_voltage": "Voltaje",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Amperio",
|
||||||
|
"dc_power_control_current_unit": "A",
|
||||||
|
"dc_power_control_power": "Vatio",
|
||||||
|
"dc_power_control_power_unit": "O",
|
||||||
|
"serial_console_get_state_error": "No se pudo obtener la configuración de la consola serial: {error}",
|
||||||
|
"serial_console_set_power_state_error": "No se pudieron establecer los ajustes de la consola serial en {settings} : {error}",
|
||||||
|
"serial_console_configure_description": "Configure los ajustes de su consola serie",
|
||||||
|
"serial_console_open_console": "Consola abierta",
|
||||||
|
"serial_console_baud_rate": "Tasa de Baud",
|
||||||
|
"serial_console_data_bits": "Bits de datos",
|
||||||
|
"serial_console_stop_bits": "Bits de parada",
|
||||||
|
"serial_console_parity": "Paridad",
|
||||||
|
"serial_console_parity_even": "Paridad uniforme",
|
||||||
|
"serial_console_parity_odd": "Paridad impar",
|
||||||
|
"serial_console_parity_none": "Sin paridad",
|
||||||
|
"serial_console_parity_mark": "Paridad de marca",
|
||||||
|
"serial_console_parity_space": "Paridad espacial"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "Oh non!",
|
"oh_no": "Oh non!",
|
||||||
"something_went_wrong": "Une erreur s'est produite. Veuillez réessayer ultérieurement ou contacter le support.",
|
"something_went_wrong": "Une erreur s'est produite. Veuillez réessayer ultérieurement ou contacter le support.",
|
||||||
"jetkvm_logo": "Logo JetKVM",
|
"jetkvm_logo": "Logo JetKVM",
|
||||||
|
"load": "Charger",
|
||||||
|
"unknown_error": "Erreur inconnue",
|
||||||
"action_bar_virtual_media": "Médias virtuels",
|
"action_bar_virtual_media": "Médias virtuels",
|
||||||
"action_bar_paste_text": "Coller du texte",
|
"action_bar_paste_text": "Coller du texte",
|
||||||
"action_bar_web_terminal": "Terminal Web",
|
"action_bar_web_terminal": "Terminal Web",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Statistiques de connexion",
|
"action_bar_connection_stats": "Statistiques de connexion",
|
||||||
"action_bar_settings": "Paramètres",
|
"action_bar_settings": "Paramètres",
|
||||||
"action_bar_fullscreen": "Plein écran",
|
"action_bar_fullscreen": "Plein écran",
|
||||||
"action_bar_exit_fullscreen": "Quitter le plein écran"
|
"action_bar_exit_fullscreen": "Quitter le plein écran",
|
||||||
|
"extensions_popover_extensions": "Extensions",
|
||||||
|
"extension_popover_set_error_notification": "Échec de la définition de l'extension active: {error}",
|
||||||
|
"extension_popover_unload_extension": "Extension de déchargement",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Chargez et gérez vos extensions",
|
||||||
|
"extensions_atx_power_control": "Contrôle d'alimentation ATX",
|
||||||
|
"extensions_atx_power_control_description": "Contrôlez l'état d'alimentation de votre machine via le contrôle d'alimentation ATX.",
|
||||||
|
"extensions_dc_power_control": "Contrôle de l'alimentation CC",
|
||||||
|
"extensions_dc_power_control_description": "Contrôlez votre extension d'alimentation CC",
|
||||||
|
"extension_serial_console": "Console série",
|
||||||
|
"extension_serial_console_description": "Accédez à votre extension de console série",
|
||||||
|
"atx_power_control_get_state_error": "Échec de l'obtention de l'état d'alimentation ATX : {error}",
|
||||||
|
"atx_power_control_send_action_error": "Échec de l'envoi de l'action d'alimentation ATX {action} : {error}",
|
||||||
|
"atx_power_control_power_button": "Pouvoir",
|
||||||
|
"atx_power_control_short_power_button": "Appui court",
|
||||||
|
"atx_power_control_long_power_button": "Appui long",
|
||||||
|
"atx_power_control_reset_button": "Réinitialiser",
|
||||||
|
"atx_power_control_power_led": "LED d'alimentation",
|
||||||
|
"atx_power_control_hdd_led": "Voyant du disque dur",
|
||||||
|
"dc_power_control_get_state_error": "Échec de l'obtention de l'état d'alimentation CC : {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "Échec de l'envoi de l'état d'alimentation CC à {enabled} : {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "Échec de l'envoi de l'état de restauration de l'alimentation CC à {state} : {error}",
|
||||||
|
"dc_power_control_power_on_button": "Mise sous tension",
|
||||||
|
"dc_power_control_power_off_button": "Éteindre",
|
||||||
|
"dc_power_control_restore_power_state": "Restaurer la perte de puissance",
|
||||||
|
"dc_power_control_power_on_state": "Mise sous tension",
|
||||||
|
"dc_power_control_power_off_state": "Éteindre",
|
||||||
|
"dc_power_control_voltage": "Tension",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Ampère",
|
||||||
|
"dc_power_control_current_unit": "UN",
|
||||||
|
"dc_power_control_power": "Pouvoir",
|
||||||
|
"dc_power_control_power_unit": "W",
|
||||||
|
"serial_console_get_state_error": "Échec de l'obtention des paramètres de la console série : {error}",
|
||||||
|
"serial_console_set_power_state_error": "Échec de la définition des paramètres de la console série sur {settings} : {error}",
|
||||||
|
"serial_console_configure_description": "Configurez les paramètres de votre console série",
|
||||||
|
"serial_console_open_console": "Ouvrir la console",
|
||||||
|
"serial_console_baud_rate": "Débit en bauds",
|
||||||
|
"serial_console_data_bits": "Bits de données",
|
||||||
|
"serial_console_stop_bits": "Bits d'arrêt",
|
||||||
|
"serial_console_parity": "Parité",
|
||||||
|
"serial_console_parity_even": "Parité égale",
|
||||||
|
"serial_console_parity_odd": "Parité impaire",
|
||||||
|
"serial_console_parity_none": "Pas de parité",
|
||||||
|
"serial_console_parity_mark": "Marquer la parité",
|
||||||
|
"serial_console_parity_space": "Parité spatiale"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "Oh no!",
|
"oh_no": "Oh no!",
|
||||||
"something_went_wrong": "Qualcosa è andato storto. Riprova più tardi o contatta l'assistenza.",
|
"something_went_wrong": "Qualcosa è andato storto. Riprova più tardi o contatta l'assistenza.",
|
||||||
"jetkvm_logo": "Logo JetKVM",
|
"jetkvm_logo": "Logo JetKVM",
|
||||||
|
"load": "Carico",
|
||||||
|
"unknown_error": "Errore sconosciuto",
|
||||||
"action_bar_virtual_media": "Media virtuali",
|
"action_bar_virtual_media": "Media virtuali",
|
||||||
"action_bar_paste_text": "Incolla il testo",
|
"action_bar_paste_text": "Incolla il testo",
|
||||||
"action_bar_web_terminal": "Terminale Web",
|
"action_bar_web_terminal": "Terminale Web",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Statistiche di connessione",
|
"action_bar_connection_stats": "Statistiche di connessione",
|
||||||
"action_bar_settings": "Impostazioni",
|
"action_bar_settings": "Impostazioni",
|
||||||
"action_bar_fullscreen": "A schermo intero",
|
"action_bar_fullscreen": "A schermo intero",
|
||||||
"action_bar_exit_fullscreen": "Esci dalla modalità a schermo intero"
|
"action_bar_exit_fullscreen": "Esci dalla modalità a schermo intero",
|
||||||
|
"extensions_popover_extensions": "Estensioni",
|
||||||
|
"extension_popover_set_error_notification": "Impossibile impostare l'estensione attiva: {error}",
|
||||||
|
"extension_popover_unload_extension": "Estensione di scaricamento",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Carica e gestisci le tue estensioni",
|
||||||
|
"extensions_atx_power_control": "Controllo di potenza ATX",
|
||||||
|
"extensions_atx_power_control_description": "Controlla lo stato di alimentazione del tuo computer tramite il controllo di alimentazione ATX.",
|
||||||
|
"extensions_dc_power_control": "Controllo di potenza CC",
|
||||||
|
"extensions_dc_power_control_description": "Controlla la tua estensione di alimentazione CC",
|
||||||
|
"extension_serial_console": "Console seriale",
|
||||||
|
"extension_serial_console_description": "Accedi all'estensione della tua console seriale",
|
||||||
|
"atx_power_control_get_state_error": "Impossibile ottenere lo stato di alimentazione ATX: {error}",
|
||||||
|
"atx_power_control_send_action_error": "Impossibile inviare l'azione di alimentazione ATX {action} : {error}",
|
||||||
|
"atx_power_control_power_button": "Energia",
|
||||||
|
"atx_power_control_short_power_button": "Pressione breve",
|
||||||
|
"atx_power_control_long_power_button": "Pressione lunga",
|
||||||
|
"atx_power_control_reset_button": "Reset",
|
||||||
|
"atx_power_control_power_led": "LED di potenza",
|
||||||
|
"atx_power_control_hdd_led": "LED dell'HDD",
|
||||||
|
"dc_power_control_get_state_error": "Impossibile ottenere lo stato di alimentazione CC: {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "Impossibile inviare lo stato di alimentazione CC a {enabled} : {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "Impossibile inviare lo stato di ripristino dell'alimentazione CC a {state} : {error}",
|
||||||
|
"dc_power_control_power_on_button": "Accensione",
|
||||||
|
"dc_power_control_power_off_button": "Spegnimento",
|
||||||
|
"dc_power_control_restore_power_state": "Ripristinare la perdita di potenza",
|
||||||
|
"dc_power_control_power_on_state": "Accensione",
|
||||||
|
"dc_power_control_power_off_state": "Spegnimento",
|
||||||
|
"dc_power_control_voltage": "Voltaggio",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Attuale",
|
||||||
|
"dc_power_control_current_unit": "UN",
|
||||||
|
"dc_power_control_power": "Energia",
|
||||||
|
"dc_power_control_power_unit": "O",
|
||||||
|
"serial_console_get_state_error": "Impossibile ottenere le impostazioni della console seriale: {error}",
|
||||||
|
"serial_console_set_power_state_error": "Impossibile impostare le impostazioni della console seriale su {settings} : {error}",
|
||||||
|
"serial_console_configure_description": "Configura le impostazioni della tua console seriale",
|
||||||
|
"serial_console_open_console": "Apri console",
|
||||||
|
"serial_console_baud_rate": "Velocità in baud",
|
||||||
|
"serial_console_data_bits": "Bit di dati",
|
||||||
|
"serial_console_stop_bits": "Bit di stop",
|
||||||
|
"serial_console_parity": "Parità",
|
||||||
|
"serial_console_parity_even": "Parità pari",
|
||||||
|
"serial_console_parity_odd": "Parità dispari",
|
||||||
|
"serial_console_parity_none": "Nessuna parità",
|
||||||
|
"serial_console_parity_mark": "Segna la parità",
|
||||||
|
"serial_console_parity_space": "Parità spaziale"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "Å nei!",
|
"oh_no": "Å nei!",
|
||||||
"something_went_wrong": "Noe gikk galt. Prøv igjen senere, eller kontakt kundestøtte.",
|
"something_went_wrong": "Noe gikk galt. Prøv igjen senere, eller kontakt kundestøtte.",
|
||||||
"jetkvm_logo": "JetKVM-logo",
|
"jetkvm_logo": "JetKVM-logo",
|
||||||
|
"load": "Laste",
|
||||||
|
"unknown_error": "Ukjent feil",
|
||||||
"action_bar_virtual_media": "Virtuelle medier",
|
"action_bar_virtual_media": "Virtuelle medier",
|
||||||
"action_bar_paste_text": "Lim inn tekst",
|
"action_bar_paste_text": "Lim inn tekst",
|
||||||
"action_bar_web_terminal": "Nettterminal",
|
"action_bar_web_terminal": "Nettterminal",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Tilkoblingsstatistikk",
|
"action_bar_connection_stats": "Tilkoblingsstatistikk",
|
||||||
"action_bar_settings": "Innstillinger",
|
"action_bar_settings": "Innstillinger",
|
||||||
"action_bar_fullscreen": "Fullskjerm",
|
"action_bar_fullscreen": "Fullskjerm",
|
||||||
"action_bar_exit_fullscreen": "Avslutt fullskjerm"
|
"action_bar_exit_fullscreen": "Avslutt fullskjerm",
|
||||||
|
"extensions_popover_extensions": "Utvidelser",
|
||||||
|
"extension_popover_set_error_notification": "Klarte ikke å angi aktiv utvidelse: {error}",
|
||||||
|
"extension_popover_unload_extension": "Fjern utvidelse",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Last inn og administrer utvidelsene dine",
|
||||||
|
"extensions_atx_power_control": "ATX-strømstyring",
|
||||||
|
"extensions_atx_power_control_description": "Kontroller maskinens strømstatus via ATX-strømkontroll.",
|
||||||
|
"extensions_dc_power_control": "DC-strømkontroll",
|
||||||
|
"extensions_dc_power_control_description": "Kontroller DC-strømutvidelsen din",
|
||||||
|
"extension_serial_console": "Seriell konsoll",
|
||||||
|
"extension_serial_console_description": "Få tilgang til seriekonsollutvidelsen din",
|
||||||
|
"atx_power_control_get_state_error": "Klarte ikke å hente ATX-strømstatus: {error}",
|
||||||
|
"atx_power_control_send_action_error": "Kunne ikke sende ATX-strømhandling {action} : {error}",
|
||||||
|
"atx_power_control_power_button": "Makt",
|
||||||
|
"atx_power_control_short_power_button": "Kort trykk",
|
||||||
|
"atx_power_control_long_power_button": "Langt trykk",
|
||||||
|
"atx_power_control_reset_button": "Tilbakestill",
|
||||||
|
"atx_power_control_power_led": "Strøm-LED",
|
||||||
|
"atx_power_control_hdd_led": "HDD-LED",
|
||||||
|
"dc_power_control_get_state_error": "Klarte ikke å hente likestrømsstatus: {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "Kunne ikke sende likestrømsstatus til {enabled} : {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "Kunne ikke sende gjenopprettingsstatus for likestrøm til {state} : {error}",
|
||||||
|
"dc_power_control_power_on_button": "Slå på",
|
||||||
|
"dc_power_control_power_off_button": "Slå av",
|
||||||
|
"dc_power_control_restore_power_state": "Gjenopprett strømtap",
|
||||||
|
"dc_power_control_power_on_state": "Slå PÅ",
|
||||||
|
"dc_power_control_power_off_state": "Slå av",
|
||||||
|
"dc_power_control_voltage": "Spenning",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Nåværende",
|
||||||
|
"dc_power_control_current_unit": "EN",
|
||||||
|
"dc_power_control_power": "Makt",
|
||||||
|
"dc_power_control_power_unit": "V",
|
||||||
|
"serial_console_get_state_error": "Klarte ikke å hente innstillinger for seriell konsoll: {error}",
|
||||||
|
"serial_console_set_power_state_error": "Klarte ikke å sette innstillingene for seriell konsoll til {settings} : {error}",
|
||||||
|
"serial_console_configure_description": "Konfigurer innstillingene for seriekonsollen",
|
||||||
|
"serial_console_open_console": "Åpne konsollen",
|
||||||
|
"serial_console_baud_rate": "Baudhastighet",
|
||||||
|
"serial_console_data_bits": "Databiter",
|
||||||
|
"serial_console_stop_bits": "Stoppbiter",
|
||||||
|
"serial_console_parity": "Paritet",
|
||||||
|
"serial_console_parity_even": "Paritet",
|
||||||
|
"serial_console_parity_odd": "Oddeparitet",
|
||||||
|
"serial_console_parity_none": "Ingen paritet",
|
||||||
|
"serial_console_parity_mark": "Mark Paritet",
|
||||||
|
"serial_console_parity_space": "Romparitet"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "nej då!",
|
"oh_no": "nej då!",
|
||||||
"something_went_wrong": "Något gick fel. Försök igen senare eller kontakta supporten.",
|
"something_went_wrong": "Något gick fel. Försök igen senare eller kontakta supporten.",
|
||||||
"jetkvm_logo": "JetKVM-logotyp",
|
"jetkvm_logo": "JetKVM-logotyp",
|
||||||
|
"load": "Ladda",
|
||||||
|
"unknown_error": "Okänt fel",
|
||||||
"action_bar_virtual_media": "Virtuella medier",
|
"action_bar_virtual_media": "Virtuella medier",
|
||||||
"action_bar_paste_text": "Klistra in text",
|
"action_bar_paste_text": "Klistra in text",
|
||||||
"action_bar_web_terminal": "Webbterminal",
|
"action_bar_web_terminal": "Webbterminal",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "Anslutningsstatistik",
|
"action_bar_connection_stats": "Anslutningsstatistik",
|
||||||
"action_bar_settings": "Inställningar",
|
"action_bar_settings": "Inställningar",
|
||||||
"action_bar_fullscreen": "Helskärm",
|
"action_bar_fullscreen": "Helskärm",
|
||||||
"action_bar_exit_fullscreen": "Avsluta helskärm"
|
"action_bar_exit_fullscreen": "Avsluta helskärm",
|
||||||
|
"extensions_popover_extensions": "Tillägg",
|
||||||
|
"extension_popover_set_error_notification": "Misslyckades med att ange aktivt tillägg: {error}",
|
||||||
|
"extension_popover_unload_extension": "Avlasta tillägg",
|
||||||
|
"extension_popover_load_and_manage_extensions": "Ladda och hantera dina tillägg",
|
||||||
|
"extensions_atx_power_control": "ATX-strömkontroll",
|
||||||
|
"extensions_atx_power_control_description": "Styr din maskins strömförsörjning via ATX-strömkontroll.",
|
||||||
|
"extensions_dc_power_control": "DC-strömstyrning",
|
||||||
|
"extensions_dc_power_control_description": "Styr din DC-strömförlängning",
|
||||||
|
"extension_serial_console": "Seriell konsol",
|
||||||
|
"extension_serial_console_description": "Åtkomst till din seriella konsoltillägg",
|
||||||
|
"atx_power_control_get_state_error": "Misslyckades med att hämta ATX-strömstatus: {error}",
|
||||||
|
"atx_power_control_send_action_error": "Misslyckades med att skicka ATX-strömåtgärd {action} : {error}",
|
||||||
|
"atx_power_control_power_button": "Driva",
|
||||||
|
"atx_power_control_short_power_button": "Kort tryck",
|
||||||
|
"atx_power_control_long_power_button": "Långt tryck",
|
||||||
|
"atx_power_control_reset_button": "Återställa",
|
||||||
|
"atx_power_control_power_led": "Ström-LED",
|
||||||
|
"atx_power_control_hdd_led": "Hårddisk-LED",
|
||||||
|
"dc_power_control_get_state_error": "Misslyckades med att hämta likströmsstatus: {error}",
|
||||||
|
"dc_power_control_set_power_state_error": "Misslyckades med att skicka likströmsstatus till {enabled} : {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "Misslyckades med att skicka återställningsstatus för likström till {state} : {error}",
|
||||||
|
"dc_power_control_power_on_button": "Slå på",
|
||||||
|
"dc_power_control_power_off_button": "Stäng av",
|
||||||
|
"dc_power_control_restore_power_state": "Återställ strömförlust",
|
||||||
|
"dc_power_control_power_on_state": "Slå på",
|
||||||
|
"dc_power_control_power_off_state": "Stäng av",
|
||||||
|
"dc_power_control_voltage": "Spänning",
|
||||||
|
"dc_power_control_voltage_unit": "V",
|
||||||
|
"dc_power_control_current": "Nuvarande",
|
||||||
|
"dc_power_control_current_unit": "En",
|
||||||
|
"dc_power_control_power": "Driva",
|
||||||
|
"dc_power_control_power_unit": "V",
|
||||||
|
"serial_console_get_state_error": "Misslyckades med att hämta inställningar för seriekonsolen: {error}",
|
||||||
|
"serial_console_set_power_state_error": "Misslyckades med att ställa in seriekonsolinställningarna till {settings} : {error}",
|
||||||
|
"serial_console_configure_description": "Konfigurera dina seriella konsolinställningar",
|
||||||
|
"serial_console_open_console": "Öppna konsolen",
|
||||||
|
"serial_console_baud_rate": "Baudhastighet",
|
||||||
|
"serial_console_data_bits": "Databitar",
|
||||||
|
"serial_console_stop_bits": "Stoppbitar",
|
||||||
|
"serial_console_parity": "Paritet",
|
||||||
|
"serial_console_parity_even": "Jämn paritet",
|
||||||
|
"serial_console_parity_odd": "Udda paritet",
|
||||||
|
"serial_console_parity_none": "Ingen paritet",
|
||||||
|
"serial_console_parity_mark": "Markera paritet",
|
||||||
|
"serial_console_parity_space": "Rymdparitet"
|
||||||
}
|
}
|
||||||
|
|
@ -4,6 +4,8 @@
|
||||||
"oh_no": "噢不!",
|
"oh_no": "噢不!",
|
||||||
"something_went_wrong": "出了点问题。请稍后重试或联系客服",
|
"something_went_wrong": "出了点问题。请稍后重试或联系客服",
|
||||||
"jetkvm_logo": "JetKVM 徽标",
|
"jetkvm_logo": "JetKVM 徽标",
|
||||||
|
"load": "加载",
|
||||||
|
"unknown_error": "未知错误",
|
||||||
"action_bar_virtual_media": "虚拟媒体",
|
"action_bar_virtual_media": "虚拟媒体",
|
||||||
"action_bar_paste_text": "粘贴文本",
|
"action_bar_paste_text": "粘贴文本",
|
||||||
"action_bar_web_terminal": "网页终端",
|
"action_bar_web_terminal": "网页终端",
|
||||||
|
|
@ -13,5 +15,50 @@
|
||||||
"action_bar_connection_stats": "连接统计",
|
"action_bar_connection_stats": "连接统计",
|
||||||
"action_bar_settings": "设置",
|
"action_bar_settings": "设置",
|
||||||
"action_bar_fullscreen": "全屏",
|
"action_bar_fullscreen": "全屏",
|
||||||
"action_bar_exit_fullscreen": "退出全屏"
|
"action_bar_exit_fullscreen": "退出全屏",
|
||||||
|
"extensions_popover_extensions": "扩展",
|
||||||
|
"extension_popover_set_error_notification": "无法设置活动扩展:{error}",
|
||||||
|
"extension_popover_unload_extension": "卸载扩展",
|
||||||
|
"extension_popover_load_and_manage_extensions": "加载和管理您的扩展",
|
||||||
|
"extensions_atx_power_control": "ATX电源控制",
|
||||||
|
"extensions_atx_power_control_description": "通过 ATX 电源控制来控制机器的电源状态。",
|
||||||
|
"extensions_dc_power_control": "直流电源控制",
|
||||||
|
"extensions_dc_power_control_description": "控制您的直流电源扩展",
|
||||||
|
"extension_serial_console": "串行控制台",
|
||||||
|
"extension_serial_console_description": "访问串行控制台扩展",
|
||||||
|
"atx_power_control_get_state_error": "无法获取 ATX 电源状态:{error}",
|
||||||
|
"atx_power_control_send_action_error": "无法发送 ATX 电源操作{action} : {error}",
|
||||||
|
"atx_power_control_power_button": "力量",
|
||||||
|
"atx_power_control_short_power_button": "短按",
|
||||||
|
"atx_power_control_long_power_button": "长按",
|
||||||
|
"atx_power_control_reset_button": "重置",
|
||||||
|
"atx_power_control_power_led": "电源 LED",
|
||||||
|
"atx_power_control_hdd_led": "硬盘指示灯",
|
||||||
|
"dc_power_control_get_state_error": "无法获取直流电源状态:{error}",
|
||||||
|
"dc_power_control_set_power_state_error": "无法将直流电源状态发送到 {enabled} : {error}",
|
||||||
|
"dc_power_control_set_restore_state_error": "无法将直流电源恢复状态发送到 {state} : {error}",
|
||||||
|
"dc_power_control_power_on_button": "开机",
|
||||||
|
"dc_power_control_power_off_button": "关闭电源",
|
||||||
|
"dc_power_control_restore_power_state": "恢复断电",
|
||||||
|
"dc_power_control_power_on_state": "开启电源",
|
||||||
|
"dc_power_control_power_off_state": "关闭电源",
|
||||||
|
"dc_power_control_voltage": "电压",
|
||||||
|
"dc_power_control_voltage_unit": "五",
|
||||||
|
"dc_power_control_current": "安培",
|
||||||
|
"dc_power_control_current_unit": "一个",
|
||||||
|
"dc_power_control_power": "瓦特",
|
||||||
|
"dc_power_control_power_unit": "西",
|
||||||
|
"serial_console_get_state_error": "无法获取串行控制台设置: {error}",
|
||||||
|
"serial_console_set_power_state_error": "无法将串行控制台设置设置为{settings} : {error}",
|
||||||
|
"serial_console_configure_description": "配置串行控制台设置",
|
||||||
|
"serial_console_open_console": "打开控制台",
|
||||||
|
"serial_console_baud_rate": "波特率",
|
||||||
|
"serial_console_data_bits": "数据位",
|
||||||
|
"serial_console_stop_bits": "停止位",
|
||||||
|
"serial_console_parity": "平价",
|
||||||
|
"serial_console_parity_even": "偶校验",
|
||||||
|
"serial_console_parity_odd": "奇校验",
|
||||||
|
"serial_console_parity_none": "无奇偶校验",
|
||||||
|
"serial_console_parity_mark": "马克·帕里蒂",
|
||||||
|
"serial_console_parity_space": "空间平价"
|
||||||
}
|
}
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
{
|
{
|
||||||
"$schema": "https://inlang.com/schema/project-settings",
|
"$schema": "https://inlang.com/schema/project-settings",
|
||||||
"baseLocale": "en",
|
"baseLocale": "en",
|
||||||
"sourceLanguageTag": "en",
|
"locales": [
|
||||||
"languageTags": [
|
|
||||||
"en",
|
"en",
|
||||||
"da",
|
"da",
|
||||||
"de",
|
"de",
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
import { LuHardDrive, LuPower, LuRotateCcw } from "react-icons/lu";
|
import { LuHardDrive, LuPower, LuRotateCcw } from "react-icons/lu";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
|
|
||||||
|
import { m } from "@/paraglide/messages.js";
|
||||||
|
import { JsonRpcResponse, useJsonRpc } from "@hooks/useJsonRpc";
|
||||||
import { Button } from "@components/Button";
|
import { Button } from "@components/Button";
|
||||||
import Card from "@components/Card";
|
import Card from "@components/Card";
|
||||||
|
import LoadingSpinner from "@components/LoadingSpinner";
|
||||||
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
||||||
import notifications from "@/notifications";
|
import notifications from "@/notifications";
|
||||||
import LoadingSpinner from "@/components/LoadingSpinner";
|
|
||||||
|
|
||||||
import { JsonRpcResponse, useJsonRpc } from "../../hooks/useJsonRpc";
|
|
||||||
|
|
||||||
const LONG_PRESS_DURATION = 3000; // 3 seconds for long press
|
const LONG_PRESS_DURATION = 3000; // 3 seconds for long press
|
||||||
|
|
||||||
|
|
@ -33,9 +33,7 @@ export function ATXPowerControl() {
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
send("getATXState", {}, (resp: JsonRpcResponse) => {
|
send("getATXState", {}, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.atx_power_control_get_state_error({ error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to get ATX state: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setAtxState(resp.result as ATXState);
|
setAtxState(resp.result as ATXState);
|
||||||
|
|
@ -56,9 +54,7 @@ export function ATXPowerControl() {
|
||||||
console.log("Sending long press ATX power action");
|
console.log("Sending long press ATX power action");
|
||||||
send("setATXPowerAction", { action: "power-long" }, (resp: JsonRpcResponse) => {
|
send("setATXPowerAction", { action: "power-long" }, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.atx_power_control_send_action_error({ action: m.atx_power_control_long_power_button(), error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to send ATX power action: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
setIsPowerPressed(false);
|
setIsPowerPressed(false);
|
||||||
});
|
});
|
||||||
|
|
@ -77,9 +73,7 @@ export function ATXPowerControl() {
|
||||||
console.log("Sending short press ATX power action");
|
console.log("Sending short press ATX power action");
|
||||||
send("setATXPowerAction", { action: "power-short" }, (resp: JsonRpcResponse) => {
|
send("setATXPowerAction", { action: "power-short" }, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.atx_power_control_send_action_error({ action: m.atx_power_control_short_power_button(), error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to send ATX power action: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -98,8 +92,8 @@ export function ATXPowerControl() {
|
||||||
return (
|
return (
|
||||||
<div className="space-y-4">
|
<div className="space-y-4">
|
||||||
<SettingsPageHeader
|
<SettingsPageHeader
|
||||||
title="ATX Power Control"
|
title={m.extensions_atx_power_control()}
|
||||||
description="Control your ATX power settings"
|
description={m.extensions_atx_power_control_description()}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
{atxState === null ? (
|
{atxState === null ? (
|
||||||
|
|
@ -115,7 +109,7 @@ export function ATXPowerControl() {
|
||||||
size="SM"
|
size="SM"
|
||||||
theme="light"
|
theme="light"
|
||||||
LeadingIcon={LuPower}
|
LeadingIcon={LuPower}
|
||||||
text="Power"
|
text={m.atx_power_control_power_button()}
|
||||||
onMouseDown={() => handlePowerPress(true)}
|
onMouseDown={() => handlePowerPress(true)}
|
||||||
onMouseUp={() => handlePowerPress(false)}
|
onMouseUp={() => handlePowerPress(false)}
|
||||||
onMouseLeave={() => handlePowerPress(false)}
|
onMouseLeave={() => handlePowerPress(false)}
|
||||||
|
|
@ -125,13 +119,11 @@ export function ATXPowerControl() {
|
||||||
size="SM"
|
size="SM"
|
||||||
theme="light"
|
theme="light"
|
||||||
LeadingIcon={LuRotateCcw}
|
LeadingIcon={LuRotateCcw}
|
||||||
text="Reset"
|
text={m.atx_power_control_reset_button()}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
send("setATXPowerAction", { action: "reset" }, (resp: JsonRpcResponse) => {
|
send("setATXPowerAction", { action: "reset" }, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.atx_power_control_send_action_error({ action: m.atx_power_control_reset_button(), error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to send ATX power action: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -150,7 +142,7 @@ export function ATXPowerControl() {
|
||||||
atxState?.power ? "text-green-600" : "text-slate-300"
|
atxState?.power ? "text-green-600" : "text-slate-300"
|
||||||
}`}
|
}`}
|
||||||
/>
|
/>
|
||||||
Power LED
|
{m.atx_power_control_power_led()}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex items-center space-x-2">
|
<div className="flex items-center space-x-2">
|
||||||
|
|
@ -161,7 +153,7 @@ export function ATXPowerControl() {
|
||||||
atxState?.hdd ? "text-blue-400" : "text-slate-300"
|
atxState?.hdd ? "text-blue-400" : "text-slate-300"
|
||||||
}`}
|
}`}
|
||||||
/>
|
/>
|
||||||
HDD LED
|
{m.atx_power_control_hdd_led()}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,15 @@
|
||||||
import { LuPower } from "react-icons/lu";
|
import { LuPower } from "react-icons/lu";
|
||||||
import { useCallback, useEffect, useState } from "react";
|
import { useCallback, useEffect, useState } from "react";
|
||||||
|
|
||||||
|
import { m } from "@/paraglide/messages.js";
|
||||||
|
import { JsonRpcResponse, useJsonRpc } from "@/hooks/useJsonRpc";
|
||||||
import { Button } from "@components/Button";
|
import { Button } from "@components/Button";
|
||||||
import Card from "@components/Card";
|
import Card from "@components/Card";
|
||||||
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
||||||
import { JsonRpcResponse, useJsonRpc } from "@/hooks/useJsonRpc";
|
|
||||||
import notifications from "@/notifications";
|
|
||||||
import FieldLabel from "@components/FieldLabel";
|
import FieldLabel from "@components/FieldLabel";
|
||||||
import LoadingSpinner from "@components/LoadingSpinner";
|
import LoadingSpinner from "@components/LoadingSpinner";
|
||||||
import {SelectMenuBasic} from "@components/SelectMenuBasic";
|
import {SelectMenuBasic} from "@components/SelectMenuBasic";
|
||||||
|
import notifications from "@/notifications";
|
||||||
|
|
||||||
interface DCPowerState {
|
interface DCPowerState {
|
||||||
isOn: boolean;
|
isOn: boolean;
|
||||||
|
|
@ -25,9 +26,7 @@ export function DCPowerControl() {
|
||||||
const getDCPowerState = useCallback(() => {
|
const getDCPowerState = useCallback(() => {
|
||||||
send("getDCPowerState", {}, (resp: JsonRpcResponse) => {
|
send("getDCPowerState", {}, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.dc_power_control_get_state_error({ error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to get DC power state: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setPowerState(resp.result as DCPowerState);
|
setPowerState(resp.result as DCPowerState);
|
||||||
|
|
@ -37,9 +36,7 @@ export function DCPowerControl() {
|
||||||
const handlePowerToggle = (enabled: boolean) => {
|
const handlePowerToggle = (enabled: boolean) => {
|
||||||
send("setDCPowerState", { enabled }, (resp: JsonRpcResponse) => {
|
send("setDCPowerState", { enabled }, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.dc_power_control_set_power_state_error({ enabled: enabled, error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to set DC power state: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
getDCPowerState(); // Refresh state after change
|
getDCPowerState(); // Refresh state after change
|
||||||
|
|
@ -49,17 +46,13 @@ export function DCPowerControl() {
|
||||||
// const state = powerState?.restoreState === 0 ? 1 : powerState?.restoreState === 1 ? 2 : 0;
|
// const state = powerState?.restoreState === 0 ? 1 : powerState?.restoreState === 1 ? 2 : 0;
|
||||||
send("setDCRestoreState", { state }, (resp: JsonRpcResponse) => {
|
send("setDCRestoreState", { state }, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.dc_power_control_set_restore_state_error({ state: state, error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to set DC power state: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
getDCPowerState(); // Refresh state after change
|
getDCPowerState(); // Refresh state after change
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
getDCPowerState();
|
getDCPowerState();
|
||||||
// Set up polling interval to update status
|
// Set up polling interval to update status
|
||||||
|
|
@ -70,8 +63,8 @@ export function DCPowerControl() {
|
||||||
return (
|
return (
|
||||||
<div className="space-y-4">
|
<div className="space-y-4">
|
||||||
<SettingsPageHeader
|
<SettingsPageHeader
|
||||||
title="DC Power Control"
|
title={m.extensions_dc_power_control()}
|
||||||
description="Control your DC power settings"
|
description={m.extensions_dc_power_control_description()}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
{powerState === null ? (
|
{powerState === null ? (
|
||||||
|
|
@ -87,7 +80,7 @@ export function DCPowerControl() {
|
||||||
size="SM"
|
size="SM"
|
||||||
theme="light"
|
theme="light"
|
||||||
LeadingIcon={LuPower}
|
LeadingIcon={LuPower}
|
||||||
text="Power On"
|
text={m.dc_power_control_power_on_button()}
|
||||||
onClick={() => handlePowerToggle(true)}
|
onClick={() => handlePowerToggle(true)}
|
||||||
disabled={powerState.isOn}
|
disabled={powerState.isOn}
|
||||||
/>
|
/>
|
||||||
|
|
@ -95,7 +88,7 @@ export function DCPowerControl() {
|
||||||
size="SM"
|
size="SM"
|
||||||
theme="light"
|
theme="light"
|
||||||
LeadingIcon={LuPower}
|
LeadingIcon={LuPower}
|
||||||
text="Power Off"
|
text={m.dc_power_control_power_off_button()}
|
||||||
disabled={!powerState.isOn}
|
disabled={!powerState.isOn}
|
||||||
onClick={() => handlePowerToggle(false)}
|
onClick={() => handlePowerToggle(false)}
|
||||||
/>
|
/>
|
||||||
|
|
@ -104,13 +97,13 @@ export function DCPowerControl() {
|
||||||
<div className="flex items-center">
|
<div className="flex items-center">
|
||||||
<SelectMenuBasic
|
<SelectMenuBasic
|
||||||
size="SM"
|
size="SM"
|
||||||
label="Restore Power Loss"
|
label={m.dc_power_control_restore_power_state()}
|
||||||
value={powerState.restoreState}
|
value={powerState.restoreState}
|
||||||
onChange={e => handleRestoreChange(parseInt(e.target.value))}
|
onChange={e => handleRestoreChange(parseInt(e.target.value))}
|
||||||
options={[
|
options={[
|
||||||
{ value: '0', label: "Power OFF" },
|
{ value: '0', label: m.dc_power_control_power_off_state()},
|
||||||
{ value: '1', label: "Power ON" },
|
{ value: '1', label: m.dc_power_control_power_on_state()},
|
||||||
{ value: '2', label: "Last State" },
|
{ value: '2', label: m.dc_power_control_restore_power_state() },
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -120,21 +113,21 @@ export function DCPowerControl() {
|
||||||
{/* Status Display */}
|
{/* Status Display */}
|
||||||
<div className="grid grid-cols-3 gap-4">
|
<div className="grid grid-cols-3 gap-4">
|
||||||
<div className="space-y-1">
|
<div className="space-y-1">
|
||||||
<FieldLabel label="Voltage" />
|
<FieldLabel label={m.dc_power_control_voltage()} />
|
||||||
<p className="text-sm font-medium text-slate-900 dark:text-slate-100">
|
<p className="text-sm font-medium text-slate-900 dark:text-slate-100">
|
||||||
{powerState.voltage.toFixed(1)}V
|
{powerState.voltage.toFixed(1)} {m.dc_power_control_voltage_unit()}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div className="space-y-1">
|
<div className="space-y-1">
|
||||||
<FieldLabel label="Current" />
|
<FieldLabel label={m.dc_power_control_current()} />
|
||||||
<p className="text-sm font-medium text-slate-900 dark:text-slate-100">
|
<p className="text-sm font-medium text-slate-900 dark:text-slate-100">
|
||||||
{powerState.current.toFixed(1)}A
|
{powerState.current.toFixed(1)} {m.dc_power_control_current_unit()}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div className="space-y-1">
|
<div className="space-y-1">
|
||||||
<FieldLabel label="Power" />
|
<FieldLabel label={m.dc_power_control_power()}/>
|
||||||
<p className="text-sm font-medium text-slate-900 dark:text-slate-100">
|
<p className="text-sm font-medium text-slate-900 dark:text-slate-100">
|
||||||
{powerState.power.toFixed(1)}W
|
{powerState.power.toFixed(1)} {m.dc_power_control_power_unit()}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
import { LuTerminal } from "react-icons/lu";
|
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
|
import { LuTerminal } from "react-icons/lu";
|
||||||
|
|
||||||
|
import { m } from "@/paraglide/messages.js";
|
||||||
|
import { JsonRpcResponse, useJsonRpc } from "@hooks/useJsonRpc";
|
||||||
|
import { useUiStore } from "@hooks/stores";
|
||||||
import { Button } from "@components/Button";
|
import { Button } from "@components/Button";
|
||||||
import Card from "@components/Card";
|
import Card from "@components/Card";
|
||||||
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
|
||||||
import { JsonRpcResponse, useJsonRpc } from "@/hooks/useJsonRpc";
|
|
||||||
import notifications from "@/notifications";
|
|
||||||
import { useUiStore } from "@/hooks/stores";
|
|
||||||
import { SelectMenuBasic } from "@components/SelectMenuBasic";
|
import { SelectMenuBasic } from "@components/SelectMenuBasic";
|
||||||
|
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
||||||
|
import notifications from "@/notifications";
|
||||||
|
|
||||||
interface SerialSettings {
|
interface SerialSettings {
|
||||||
baudRate: string;
|
baudRate: string;
|
||||||
|
|
@ -28,9 +29,7 @@ export function SerialConsole() {
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
send("getSerialSettings", {}, (resp: JsonRpcResponse) => {
|
send("getSerialSettings", {}, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.serial_console_get_settings_error({ error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to get serial settings: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setSettings(resp.result as SerialSettings);
|
setSettings(resp.result as SerialSettings);
|
||||||
|
|
@ -41,9 +40,7 @@ export function SerialConsole() {
|
||||||
const newSettings = { ...settings, [setting]: value };
|
const newSettings = { ...settings, [setting]: value };
|
||||||
send("setSerialSettings", { settings: newSettings }, (resp: JsonRpcResponse) => {
|
send("setSerialSettings", { settings: newSettings }, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(m.serial_console_set_settings_error({ settings: setting, error: resp.error.data || m.unknown_error() }));
|
||||||
`Failed to update serial settings: ${resp.error.data || "Unknown error"}`,
|
|
||||||
);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setSettings(newSettings);
|
setSettings(newSettings);
|
||||||
|
|
@ -54,8 +51,8 @@ export function SerialConsole() {
|
||||||
return (
|
return (
|
||||||
<div className="space-y-4">
|
<div className="space-y-4">
|
||||||
<SettingsPageHeader
|
<SettingsPageHeader
|
||||||
title="Serial Console"
|
title={m.extension_serial_console()}
|
||||||
description="Configure your serial console settings"
|
description={m.serial_console_configure_description()}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Card className="animate-fadeIn opacity-0">
|
<Card className="animate-fadeIn opacity-0">
|
||||||
|
|
@ -66,10 +63,10 @@ export function SerialConsole() {
|
||||||
size="SM"
|
size="SM"
|
||||||
theme="primary"
|
theme="primary"
|
||||||
LeadingIcon={LuTerminal}
|
LeadingIcon={LuTerminal}
|
||||||
text="Open Console"
|
text={m.serial_console_open_console()}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
setTerminalType("serial");
|
|
||||||
console.log("Opening serial console with settings: ", settings);
|
console.log("Opening serial console with settings: ", settings);
|
||||||
|
setTerminalType("serial");
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -77,7 +74,7 @@ export function SerialConsole() {
|
||||||
{/* Settings */}
|
{/* Settings */}
|
||||||
<div className="grid grid-cols-2 gap-4">
|
<div className="grid grid-cols-2 gap-4">
|
||||||
<SelectMenuBasic
|
<SelectMenuBasic
|
||||||
label="Baud Rate"
|
label={m.serial_console_baud_rate()}
|
||||||
options={[
|
options={[
|
||||||
{ label: "1200", value: "1200" },
|
{ label: "1200", value: "1200" },
|
||||||
{ label: "2400", value: "2400" },
|
{ label: "2400", value: "2400" },
|
||||||
|
|
@ -93,7 +90,7 @@ export function SerialConsole() {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<SelectMenuBasic
|
<SelectMenuBasic
|
||||||
label="Data Bits"
|
label={m.serial_console_data_bits()}
|
||||||
options={[
|
options={[
|
||||||
{ label: "8", value: "8" },
|
{ label: "8", value: "8" },
|
||||||
{ label: "7", value: "7" },
|
{ label: "7", value: "7" },
|
||||||
|
|
@ -103,7 +100,7 @@ export function SerialConsole() {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<SelectMenuBasic
|
<SelectMenuBasic
|
||||||
label="Stop Bits"
|
label={m.serial_console_stop_bits()}
|
||||||
options={[
|
options={[
|
||||||
{ label: "1", value: "1" },
|
{ label: "1", value: "1" },
|
||||||
{ label: "1.5", value: "1.5" },
|
{ label: "1.5", value: "1.5" },
|
||||||
|
|
@ -114,11 +111,13 @@ export function SerialConsole() {
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<SelectMenuBasic
|
<SelectMenuBasic
|
||||||
label="Parity"
|
label={m.serial_console_parity()}
|
||||||
options={[
|
options={[
|
||||||
{ label: "None", value: "none" },
|
{ label: m.serial_console_parity_none(), value: "none" },
|
||||||
{ label: "Even", value: "even" },
|
{ label: m.serial_console_parity_even(), value: "even" },
|
||||||
{ label: "Odd", value: "odd" },
|
{ label: m.serial_console_parity_odd(), value: "odd" },
|
||||||
|
{ label: m.serial_console_parity_mark(), value: "mark" },
|
||||||
|
{ label: m.serial_console_parity_space(), value: "space" },
|
||||||
]}
|
]}
|
||||||
value={settings.parity}
|
value={settings.parity}
|
||||||
onChange={e => handleSettingChange("parity", e.target.value)}
|
onChange={e => handleSettingChange("parity", e.target.value)}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import { LuPower, LuTerminal, LuPlugZap } from "react-icons/lu";
|
import { LuPower, LuTerminal, LuPlugZap } from "react-icons/lu";
|
||||||
|
|
||||||
import { JsonRpcResponse, useJsonRpc } from "@/hooks/useJsonRpc";
|
import { m } from "@/paraglide/messages.js";
|
||||||
|
import { JsonRpcResponse, useJsonRpc } from "@hooks/useJsonRpc";
|
||||||
import Card, { GridCard } from "@components/Card";
|
import Card, { GridCard } from "@components/Card";
|
||||||
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
import { SettingsPageHeader } from "@components/SettingsPageheader";
|
||||||
import { ATXPowerControl } from "@components/extensions/ATXPowerControl";
|
import { ATXPowerControl } from "@components/extensions/ATXPowerControl";
|
||||||
|
|
@ -20,20 +21,20 @@ interface Extension {
|
||||||
const AVAILABLE_EXTENSIONS: Extension[] = [
|
const AVAILABLE_EXTENSIONS: Extension[] = [
|
||||||
{
|
{
|
||||||
id: "atx-power",
|
id: "atx-power",
|
||||||
name: "ATX Power Control",
|
name: m.extensions_atx_power_control(),
|
||||||
description: "Control your ATX Power extension",
|
description: m.extensions_atx_power_control_description(),
|
||||||
icon: LuPower,
|
icon: LuPower,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "dc-power",
|
id: "dc-power",
|
||||||
name: "DC Power Control",
|
name: m.extensions_dc_power_control(),
|
||||||
description: "Control your DC Power extension",
|
description: m.extensions_dc_power_control(),
|
||||||
icon: LuPlugZap,
|
icon: LuPlugZap,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "serial-console",
|
id: "serial-console",
|
||||||
name: "Serial Console",
|
name: m.extension_serial_console(),
|
||||||
description: "Access your serial console extension",
|
description: m.extension_serial_console_description(),
|
||||||
icon: LuTerminal,
|
icon: LuTerminal,
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
@ -60,7 +61,7 @@ export default function ExtensionPopover() {
|
||||||
send("setActiveExtension", { extensionId: extension?.id || "" }, (resp: JsonRpcResponse) => {
|
send("setActiveExtension", { extensionId: extension?.id || "" }, (resp: JsonRpcResponse) => {
|
||||||
if ("error" in resp) {
|
if ("error" in resp) {
|
||||||
notifications.error(
|
notifications.error(
|
||||||
`Failed to set active extension: ${resp.error.data || "Unknown error"}`,
|
m.extension_popover_set_error_notification({ error: resp.error.data || m.unknown_error() }),
|
||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -101,7 +102,7 @@ export default function ExtensionPopover() {
|
||||||
<Button
|
<Button
|
||||||
size="SM"
|
size="SM"
|
||||||
theme="light"
|
theme="light"
|
||||||
text="Unload Extension"
|
text={m.extension_popover_unload_extension()}
|
||||||
onClick={() => handleSetActiveExtension(null)}
|
onClick={() => handleSetActiveExtension(null)}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -110,8 +111,8 @@ export default function ExtensionPopover() {
|
||||||
// Extensions List View
|
// Extensions List View
|
||||||
<div className="space-y-4">
|
<div className="space-y-4">
|
||||||
<SettingsPageHeader
|
<SettingsPageHeader
|
||||||
title="Extensions"
|
title={m.extensions_popover_extensions()}
|
||||||
description="Load and manage your extensions"
|
description={m.extension_popover_load_and_manage_extensions()}
|
||||||
/>
|
/>
|
||||||
<Card className="animate-fadeIn opacity-0" >
|
<Card className="animate-fadeIn opacity-0" >
|
||||||
<div className="w-full divide-y divide-slate-700/30 dark:divide-slate-600/30">
|
<div className="w-full divide-y divide-slate-700/30 dark:divide-slate-600/30">
|
||||||
|
|
@ -131,7 +132,7 @@ export default function ExtensionPopover() {
|
||||||
<Button
|
<Button
|
||||||
size="XS"
|
size="XS"
|
||||||
theme="light"
|
theme="light"
|
||||||
text="Load"
|
text={m.load()}
|
||||||
onClick={() => handleSetActiveExtension(extension)}
|
onClick={() => handleSetActiveExtension(extension)}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,8 @@
|
||||||
"erasableSyntaxOnly": true,
|
"erasableSyntaxOnly": true,
|
||||||
"noUncheckedSideEffectImports": true,
|
"noUncheckedSideEffectImports": true,
|
||||||
"types": [
|
"types": [
|
||||||
"vite/client"
|
"vite/client",
|
||||||
|
"./src/paraglide/messages.js"
|
||||||
],
|
],
|
||||||
/* Import Aliases */
|
/* Import Aliases */
|
||||||
"paths": {
|
"paths": {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue