PrimaryNav

React SDK guidance for PrimaryNav.

Exact exports, props, slots, hooks, and runtime behavior belong to SDK package reference. Examples are guidance unless explicitly marked copy-paste-safe.

Review component intent and composition guidance before wiring this component into an app. Then use the live playground to confirm the rendered behavior.

Playground

When to use it

Use PrimaryNav for the main browse path a shopper scans first.

That usually means:

  • top-level category links
  • campaign-led browse entries
  • high-priority merchandising destinations

Composition notes

PrimaryNav currently exposes two public link roles:

  • PrimaryNav.Item — plain top-level destination
  • PrimaryNav.Trigger — top-level destination that also owns the desktop mega-menu panel

That split matters because the desktop panel should stay attached to the owning top-level browse item instead of turning every shell link into a menu trigger.

Contract scope

  • Use SDK package reference for exact props, exports, slots, hooks, and runtime behavior.
  • Public import: @enadhq/enad-react-sdk/client/storefront.
  • Playground route: /sandbox?component=PrimaryNav.
  • Copy/paste scope: guidance-only. Treat examples as guidance until checked against SDK package reference.

Implementation notes

PrimaryNav

# PrimaryNav > Exact exports, props, slots, hooks, and runtime behavior belong to SDK package reference. Examples are guidance unless explicitly marked copy-paste-safe. Review component intent and composition guidance before wiring this component into an app. Then use the live playground to confirm the rendered behavior. ## Playground - Import path: `@enadhq/enad-react-sdk/client/storefront`. - Live playground: [/components/layout/primary-nav](https://sdk.enad.io/components/layout/primary-nav). ## When to use it Use `PrimaryNav` for the main browse path a shopper scans first. That usually means: - top-level category links - campaign-led browse entries - high-priority merchandising destinations ## Composition notes `PrimaryNav` currently exposes two public link roles: - **`PrimaryNav.Item`** — plain top-level destination - **`PrimaryNav.Trigger`** — top-level destination that also owns the desktop mega-menu panel That split matters because the desktop panel should stay attached to the owning top-level browse item instead of turning every shell link into a menu trigger. ## Contract scope - Use SDK package reference for exact props, exports, slots, hooks, and runtime behavior. - Public import: `@enadhq/enad-react-sdk/client/storefront`. - Playground route: /sandbox?component=PrimaryNav. - Copy/paste scope: guidance-only. Treat examples as guidance until checked against SDK package reference. ### Implementation notes