{
  "$schema": "https://shadcn-vue.com/schema/registry-item.json",
  "name": "header-centered-logo",
  "title": "Header — Centered Logo",
  "type": "registry:block",
  "files": [
    {
      "path": "packages/registry-vue/blocks/header-centered-logo/HeaderCenteredLogo.vue",
      "content": "<script setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { Compass, Menu, ShoppingBag, User } from 'lucide-vue-next'\nimport { Button } from '@/components/ui/button'\nimport { Separator } from '@/components/ui/separator'\nimport { Sheet, SheetContent, SheetHeader, SheetTitle, SheetTrigger } from '@/components/ui/sheet'\n\nconst leftLinks = [\n  { label: 'Collections', href: '#collections' },\n  { label: 'New in', href: '#new' },\n  { label: 'Studio', href: '#studio' },\n]\nconst rightLinks = [\n  { label: 'Journal', href: '#journal' },\n  { label: 'Stockists', href: '#stockists' },\n  { label: 'Contact', href: '#contact' },\n]\n\nconst open = ref(false)\nconst linkClass =\n  'text-muted-foreground hover:text-foreground focus-visible:ring-ring rounded-md px-3 py-1.5 text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:outline-none'\n</script>\n\n<template>\n  <header data-slot=\"header-centered-logo\" class=\"border-border bg-background border-b\">\n    <div class=\"mx-auto flex h-16 max-w-6xl items-center px-6\">\n      <!-- Equal-basis flanks keep the wordmark optically centred regardless of\n           how long the link labels are. -->\n      <nav class=\"hidden flex-1 basis-0 items-center gap-1 lg:flex\" aria-label=\"Primary left\">\n        <a v-for=\"link in leftLinks\" :key=\"link.href\" :href=\"link.href\" :class=\"linkClass\">{{ link.label }}</a>\n      </nav>\n\n      <Sheet v-model:open=\"open\">\n        <SheetTrigger as-child>\n          <Button variant=\"ghost\" size=\"icon\" class=\"lg:hidden\" aria-label=\"Open navigation menu\">\n            <Menu class=\"size-5\" aria-hidden=\"true\" />\n          </Button>\n        </SheetTrigger>\n        <SheetContent side=\"left\" class=\"w-72\">\n          <SheetHeader>\n            <SheetTitle>Menu</SheetTitle>\n          </SheetHeader>\n          <nav class=\"mt-6 grid gap-1\" aria-label=\"Mobile\">\n            <a\n              v-for=\"link in [...leftLinks, ...rightLinks]\"\n              :key=\"link.href\"\n              :href=\"link.href\"\n              class=\"hover:bg-muted rounded-md px-3 py-2 text-sm font-medium transition-colors\"\n              @click=\"open = false\"\n            >\n              {{ link.label }}\n            </a>\n          </nav>\n          <Separator class=\"my-5\" />\n          <Button class=\"w-full\">Account</Button>\n        </SheetContent>\n      </Sheet>\n\n      <a\n        href=\"#top\"\n        class=\"mx-auto flex items-center gap-2 text-base font-semibold tracking-[0.18em] uppercase lg:mx-6\"\n      >\n        <Compass class=\"text-primary size-4\" aria-hidden=\"true\" />\n        Halden\n      </a>\n\n      <nav class=\"hidden flex-1 basis-0 items-center justify-end gap-1 lg:flex\" aria-label=\"Primary right\">\n        <a v-for=\"link in rightLinks\" :key=\"link.href\" :href=\"link.href\" :class=\"linkClass\">{{ link.label }}</a>\n      </nav>\n\n      <div class=\"flex items-center gap-1 lg:ml-4\">\n        <Button variant=\"ghost\" size=\"icon\" aria-label=\"Account\">\n          <User class=\"size-4\" aria-hidden=\"true\" />\n        </Button>\n        <Button variant=\"ghost\" size=\"icon\" aria-label=\"Bag\">\n          <ShoppingBag class=\"size-4\" aria-hidden=\"true\" />\n        </Button>\n      </div>\n    </div>\n  </header>\n</template>\n",
      "type": "registry:block",
      "target": "~/app/components/blocks/HeaderCenteredLogo.vue"
    }
  ],
  "dependencies": [
    "lucide-vue-next"
  ],
  "devDependencies": [],
  "registryDependencies": [
    "https://uipkge.dev/r/vue/button.json",
    "https://uipkge.dev/r/vue/separator.json",
    "https://uipkge.dev/r/vue/sheet.json"
  ],
  "description": "Symmetrical navbar with the wordmark centred between two nav halves, a utility cluster on the right, and a mobile layout that collapses the split into a single sheet trigger.",
  "categories": [
    "marketing"
  ],
  "deprecated": true,
  "replacedBy": "header"
}