feat(nav): menu "Cadastro" agrupando Empresas/Produtos/Revendas/Clientes

Empresas, Produtos (com toda a árvore de submenus), Revendas e Clientes
saem do nível 1 do menu e passam a viver dentro de um novo item
"Cadastro". Isso exercita 3 níveis de submenu aninhado pela primeira
vez (Cadastro > Produtos > Grupos > Subgrupos) — a recursão do AppShell
já suportava isso estruturalmente, mas estava documentada como não
testada; verificado ao vivo via Playwright que funciona corretamente
(auto-expande só o caminho ativo em cada nível).

Suíte: 95/95. pnpm turbo run typecheck build: 28/28.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-18 12:20:24 -03:00
parent 4e4de2c259
commit 53c3031775
3 changed files with 42 additions and 19 deletions

View File

@@ -12,10 +12,10 @@ export interface AppShellNavItem {
* When present (even if empty), this item renders as an expandable
* accordion group instead of a direct link — `href` is then only a
* placeholder (typically duplicated by the first child) and is never
* navigated to directly. A child may itself declare `children`, nesting
* another accordion one level deeper (e.g. Produtos > Grupos >
* Subgrupos) — depth beyond that is untested but not structurally
* prevented.
* navigated to directly. Recursion is unbounded — a child may itself
* declare `children`, nesting another accordion arbitrarily deeper.
* Confirmed 3 levels deep in `core-web` (Cadastro > Produtos > Grupos >
* Subgrupos).
*/
children?: AppShellNavItem[];
}