CI / Lint e auditorias (push) Successful in 1m10s
CI / Trivy (dependências e segredos) (push) Successful in 12s
CI / Imagem Docker (linux/arm64) (push) Successful in 2m39s
Release / Plano (reaproveitar a imagem?) (push) Successful in 6s
Release / ci (push) Skipped
Release / Publica a imagem (linux/arm64) (push) Successful in 18s
Release / Cria a release no Gitea (push) Successful in 5s
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
260 lines
13 KiB
React
260 lines
13 KiB
React
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";
|
||
const isZh = locale === "zh-CN";
|
||
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."
|
||
: isZh ? "官方交互式 ESP Component Registry 目录:显示屏驱动、LVGL、ESP-SR 语音识别、RainMaker、BSP 以及 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",
|
||
]
|
||
: isZh ? ["ESP Component Registry", "IDF Component Manager", "idf_component.yml", "idf.py add-dependency", "ESP32 组件", "espressif esp_lvgl_port", "espressif esp_rainmaker", "espressif esp-sr", "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.",
|
||
},
|
||
];
|
||
const faqsZh = [
|
||
{
|
||
pergunta: "什么是 ESP Component Registry 和 IDF Component Manager?",
|
||
resposta: "ESP Component Registry(components.espressif.com)是乐鑫模块化软件包的官方中央仓库。IDF Component Manager 集成在 ESP-IDF 中(v4.4+,v5.x+ 起默认启用),可根据 idf_component.yml 清单自动下载、编译并解析依赖版本。",
|
||
},
|
||
{
|
||
pergunta: "如何向 ESP-IDF 项目中添加组件?",
|
||
resposta: "可以在项目终端运行 'idf.py add-dependency \"namespace/component^version\"'(例如:idf.py add-dependency \"espressif/esp_lvgl_port^2.4.0\"),也可以直接编辑 main/idf_component.yml。",
|
||
},
|
||
{
|
||
pergunta: "使用 Component Registry 与 git 子模块有什么区别?",
|
||
resposta: "Component Registry 省去了管理笨重 Git 子模块和手动跟踪的麻烦。它提供语义化版本(^ 和 ~)、自动解析传递依赖,以及按需的模块化编译。",
|
||
},
|
||
{
|
||
pergunta: "我可以创建并发布自己的组件吗?",
|
||
resposta: "可以,任何开发者或公司都可以使用官方的 Compote CLI 工具(pip install idf-component-manager)向 ESP Component Registry 发布公开或私有组件。",
|
||
},
|
||
];
|
||
|
||
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 isZh = locale === "zh-CN";
|
||
const faqs = isEs ? faqsEs : isEn ? faqsEn : isFr ? faqsFr : isZh ? faqsZh : isDe ? faqsDe : faqsPt;
|
||
const canonPath = isEs ? "/es/componentes" : isEn ? "/en/components" : isFr ? "/fr/composants" : isZh ? "/zh-CN/components" : isDe ? "/de/komponenten" : "/componentes";
|
||
|
||
return (
|
||
<>
|
||
<script
|
||
type="application/ld+json"
|
||
dangerouslySetInnerHTML={{
|
||
__html: JSON.stringify(
|
||
jsonLd.trilha([
|
||
{ nome: isEs ? "Inicio" : isEn ? "Home" : isFr ? "Accueil" : isZh ? "首页" : isDe ? "Startseite" : "Início", caminho: isEs ? "/es" : isEn ? "/en" : isFr ? "/fr" : isZh ? "/zh-CN" : isDe ? "/de" : "/" },
|
||
{ nome: "ESP Component Registry", caminho: canonPath },
|
||
])
|
||
),
|
||
}}
|
||
/>
|
||
<script
|
||
type="application/ld+json"
|
||
dangerouslySetInnerHTML={{
|
||
__html: JSON.stringify(jsonLd.perguntas(faqs)),
|
||
}}
|
||
/>
|
||
<script
|
||
type="application/ld+json"
|
||
dangerouslySetInnerHTML={{
|
||
__html: JSON.stringify(
|
||
jsonLd.aplicacaoWeb({
|
||
nome: isEs
|
||
? "Hub de ESP Component Registry & Generador de Manifiesto"
|
||
: isEn
|
||
? "ESP Component Registry Hub & Manifest Builder"
|
||
: isFr
|
||
? "Hub de l'ESP Component Registry & Générateur de Manifeste"
|
||
: isZh ? "ESP Component Registry 中心与清单生成器" : isDe
|
||
? "ESP Component Registry Hub & Manifest-Generator"
|
||
: "Hub do ESP Component Registry & Construtor de Manifesto",
|
||
descricao: isEs
|
||
? "Catálogo curado y generador de manifiesto idf_component.yml para componentes modulares de ESP-IDF."
|
||
: isEn
|
||
? "Curated catalog and idf_component.yml manifest generator for modular ESP-IDF components."
|
||
: isFr
|
||
? "Catalogue sélectionné et générateur de manifeste idf_component.yml pour les composants modulaires d'ESP-IDF."
|
||
: isZh ? "ESP-IDF 模块化组件的精选目录与 idf_component.yml 清单生成器。" : isDe
|
||
? "Kuratierter Katalog und idf_component.yml-Manifest-Generator für modulare ESP-IDF-Komponenten."
|
||
: "Catálogo curado e gerador de manifesto idf_component.yml para componentes modulares do ESP-IDF.",
|
||
caminho: canonPath,
|
||
locale,
|
||
})
|
||
),
|
||
}}
|
||
/>
|
||
{children}
|
||
</>
|
||
);
|
||
}
|