import { paginaMeta, jsonLd } from "@/lib/seo"; export async function generateMetadata({ params }) { const { locale } = await params; const isEn = locale === "en"; const isEs = locale === "es"; const isFr = locale === "fr"; const isDe = locale === "de"; return paginaMeta({ titulo: "ESP Component Registry & IDF Component Manager · ESPDocs", descricao: isEs ? "Catálogo interactivo del ESP Component Registry: controladores de pantalla, LVGL, reconocimiento de voz ESP-SR, RainMaker, BSPs y generador de idf_component.yml." : isEn ? "Official interactive catalog of the ESP Component Registry: display drivers, LVGL, ESP-SR voice recognition, RainMaker, BSPs, and idf_component.yml generator." : isFr ? "Catalogue interactif du ESP Component Registry : pilotes d'écran, LVGL, reconnaissance vocale ESP-SR, RainMaker, BSPs et générateur d'idf_component.yml." : isDe ? "Interaktiver Katalog der ESP Component Registry: Display-Treiber, LVGL, ESP-SR-Sprachkennung, RainMaker, BSPs und idf_component.yml-Generator." : "Catálogo oficial e interativo do ESP Component Registry: drivers de displays, LVGL, reconhecimento de voz ESP-SR, RainMaker, BSPs e gerador de idf_component.yml.", caminho: "/componentes", locale, keywords: isEs ? [ "ESP Component Registry", "IDF Component Manager", "idf_component.yml", "idf.py add-dependency", "componentes ESP32", "espressif esp_lvgl_port", "espressif esp_rainmaker", "espressif esp-sr", "bibliotecas ESP-IDF", ] : isEn ? [ "ESP Component Registry", "IDF Component Manager", "idf_component.yml", "idf.py add-dependency", "ESP32 components", "espressif esp_lvgl_port", "espressif esp_rainmaker", "espressif esp-sr", "ESP-IDF libraries", ] : isFr ? [ "ESP Component Registry", "IDF Component Manager", "idf_component.yml", "idf.py add-dependency", "composants ESP32", "espressif esp_lvgl_port", "espressif esp_rainmaker", "espressif esp-sr", "bibliothèques ESP-IDF", ] : isDe ? [ "ESP Component Registry", "IDF Component Manager", "idf_component.yml", "idf.py add-dependency", "ESP32 Komponenten", "espressif esp_lvgl_port", "espressif esp_rainmaker", "espressif esp-sr", "ESP-IDF Bibliotheken", ] : [ "ESP Component Registry", "IDF Component Manager", "idf_component.yml", "idf.py add-dependency", "componentes ESP32", "espressif esp_lvgl_port", "espressif esp_rainmaker", "espressif esp-sr", "bibliotecas ESP-IDF", ], }); } const faqsPt = [ { pergunta: "O que é o ESP Component Registry e o IDF Component Manager?", resposta: "O ESP Component Registry (components.espressif.com) é o repositório oficial de pacotes modulares da Espressif. O IDF Component Manager é a ferramenta integrada ao ESP-IDF (a partir do v4.4 e padrão no v5.x+) que baixa, compila e resolve versões de dependências automaticamente a partir do manifesto idf_component.yml.", }, { pergunta: "Como adicionar um componente ao meu projeto ESP-IDF?", resposta: "Você pode executar o comando 'idf.py add-dependency \"namespace/componente^versao\"' no terminal do projeto (por exemplo: idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\") ou editar diretamente o arquivo main/idf_component.yml.", }, { pergunta: "Qual a diferença entre usar o Component Registry e git submodules?", resposta: "O Component Registry elimina a complexidade de gerenciar submódulos Git pesados e versões manuais. Ele oferece versionamento semântico (^ e ~), resolução automática de dependências transitivas e compilação modular sob demanda.", }, { pergunta: "Posso criar e publicar meus próprios componentes?", resposta: "Sim, qualquer desenvolvedor ou empresa pode publicar componentes públicos ou privados no ESP Component Registry utilizando a ferramenta oficial Compote CLI (pip install idf-component-manager).", }, ]; const faqsEn = [ { pergunta: "What is the ESP Component Registry and IDF Component Manager?", resposta: "The ESP Component Registry (components.espressif.com) is the official central repository for modular Espressif packages. The IDF Component Manager is integrated into ESP-IDF (v4.4+ and default in v5.x+) to automatically download, compile, and resolve dependency versions from an idf_component.yml manifest.", }, { pergunta: "How to add a component to an ESP-IDF project?", resposta: "You can run 'idf.py add-dependency \"namespace/component^version\"' in your project terminal (for example: idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\") or edit main/idf_component.yml directly.", }, { pergunta: "What is the difference between using Component Registry and git submodules?", resposta: "The Component Registry eliminates the complexity of managing heavy Git submodules and manual tracking. It provides semantic versioning (^ and ~), automatic transitive dependency resolution, and modular on-demand compilation.", }, { pergunta: "Can I create and publish my own components?", resposta: "Yes, any developer or company can publish public or private components to the ESP Component Registry using the official Compote CLI tool (pip install idf-component-manager).", }, ]; const faqsEs = [ { pergunta: "¿Qué es el ESP Component Registry y el IDF Component Manager?", resposta: "El ESP Component Registry (components.espressif.com) es el repositorio oficial de paquetes modulares de Espressif. El IDF Component Manager es la herramienta integrada en ESP-IDF (a partir de v4.4 y estándar en v5.x+) que descarga, compila y resuelve versiones de dependencias automáticamente desde el manifiesto idf_component.yml.", }, { pergunta: "¿Cómo agregar un componente a mi proyecto ESP-IDF?", resposta: "Puede ejecutar el comando 'idf.py add-dependency \"namespace/componente^version\"' en la terminal del proyecto (por ejemplo: idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\") o editar directamente el archivo main/idf_component.yml.", }, { pergunta: "¿Cuál es la diferencia entre usar Component Registry y submódulos git?", resposta: "El Component Registry elimina la complejidad de gestionar submódulos Git pesados y versiones manuales. Ofrece versionamiento semántico (^ y ~), resolución automática de dependencias transitivas y compilación modular bajo demanda.", }, { pergunta: "¿Puedo crear y publicar mis propios componentes?", resposta: "Sí, cualquier desarrollador o empresa puede publicar componentes públicos o privados en el ESP Component Registry utilizando la herramienta oficial Compote CLI (pip install idf-component-manager).", }, ]; const faqsFr = [ { pergunta: "Qu'est-ce que l'ESP Component Registry et l'IDF Component Manager ?", resposta: "L'ESP Component Registry (components.espressif.com) est le dépôt officiel de paquets modulaires d'Espressif. L'IDF Component Manager est l'outil intégré à ESP-IDF (dès la v4.4 et standard en v5.x+) qui télécharge, compile et résout automatiquement les versions des dépendances à partir du manifeste idf_component.yml.", }, { pergunta: "Comment ajouter un composant à mon projet ESP-IDF ?", resposta: "Vous pouvez exécuter la commande 'idf.py add-dependency \"namespace/composant^version\"' dans le terminal de votre projet (par exemple : idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\") ou modifier directement le fichier main/idf_component.yml.", }, { pergunta: "Quelle est la différence entre le Component Registry et les sous-modules git ?", resposta: "Le Component Registry élimine la complexité de gestion des sous-modules Git volumineux et des versions manuelles. Il apporte le versionnement sémantique (^ et ~), la résolution automatique des dépendances transitives et la compilation modulaire à la demande.", }, { pergunta: "Puis-je créer et publier mes propres composants ?", resposta: "Oui, tout développeur ou entreprise peut publier des composants publics ou privés sur l'ESP Component Registry à l'aide de l'outil officiel Compote CLI (pip install idf-component-manager).", }, ]; const faqsDe = [ { pergunta: "Was sind die ESP Component Registry und der IDF Component Manager?", resposta: "Die ESP Component Registry (components.espressif.com) ist das offizielle Repository für modulare Espressif-Pakete. Der IDF Component Manager ist das in ESP-IDF (ab v4.4 und Standard in v5.x+) integrierte Werkzeug, das Abhängigkeiten anhand des idf_component.yml-Manifests automatisch herunterlädt, kompiliert und auflöst.", }, { pergunta: "Wie füge ich eine Komponente zu meinem ESP-IDF-Projekt hinzu?", resposta: "Sie können den Befehl 'idf.py add-dependency \"namespace/komponente^version\"' im Projektterminal ausführen (z. B.: idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\") oder direkt die Datei main/idf_component.yml bearbeiten.", }, { pergunta: "Was ist der Unterschied zwischen der Component Registry und Git-Submodulen?", resposta: "Die Component Registry beseitigt die Komplexität schwerfälliger Git-Submodule und manueller Versionsverwaltung. Sie bietet semantische Versionierung (^ und ~), automatische transitive Abhängigkeitsauflösung und modulare On-Demand-Kompilierung.", }, { pergunta: "Kann ich eigene Komponenten erstellen und veröffentlichen?", resposta: "Ja, Entwickler und Unternehmen können öffentliche oder private Komponenten mit dem offiziellen Compote-CLI-Tool (pip install idf-component-manager) in der ESP Component Registry veröffentlichen.", }, ]; export default async function ComponentesLayout({ children, params }) { const { locale } = await params; const isEn = locale === "en"; const isEs = locale === "es"; const isFr = locale === "fr"; const isDe = locale === "de"; const faqs = isEs ? faqsEs : isEn ? faqsEn : isFr ? faqsFr : isDe ? faqsDe : faqsPt; const canonPath = isEs ? "/es/componentes" : isEn ? "/en/components" : isFr ? "/fr/composants" : isDe ? "/de/komponenten" : "/componentes"; return ( <>