{
  "$schema": "https://shadcn-vue.com/schema/registry-item.json",
  "name": "banner-announcement-sticky",
  "title": "Banner Announcement Sticky",
  "type": "registry:block",
  "files": [
    {
      "path": "packages/registry-vue/blocks/banner-announcement-sticky/BannerAnnouncementSticky.vue",
      "content": "<script setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { ArrowRight, Megaphone, X } from 'lucide-vue-next'\nimport { Badge } from '@/components/ui/badge'\n\nconst isVisible = ref(true)\n\nfunction dismissBanner() {\n  isVisible.value = false\n}\n</script>\n\n<template>\n  <aside\n    v-if=\"isVisible\"\n    data-slot=\"banner-announcement-sticky\"\n    class=\"border-border bg-card/90 relative z-50 border-b px-4 py-2.5 backdrop-blur-md transition-colors sm:px-6\"\n  >\n    <div class=\"mx-auto flex max-w-7xl items-center justify-between gap-4 font-mono text-xs\">\n      <!-- Left / Center Content -->\n      <div class=\"flex min-w-0 flex-1 items-center justify-center gap-3 sm:justify-start\">\n        <Badge\n          variant=\"secondary\"\n          class=\"bg-primary/10 text-primary border-primary/20 shrink-0 px-2 py-0.5 text-xs font-bold tracking-wider uppercase\"\n        >\n          v2.4.0 Release\n        </Badge>\n\n        <p class=\"text-foreground flex items-center gap-1.5 truncate\">\n          <Megaphone class=\"text-primary hidden size-3 shrink-0 sm:inline\" />\n          <span>Announcing 450+ Marketing &amp; SaaS Blocks with Tailwind v4 OKLCH token engine.</span>\n        </p>\n\n        <a href=\"#\" class=\"text-primary inline-flex shrink-0 items-center gap-1 font-bold hover:underline\">\n          <span>Read Release Notes</span>\n          <ArrowRight class=\"size-3\" />\n        </a>\n      </div>\n\n      <!-- Dismiss Trigger Button -->\n      <button\n        type=\"button\"\n        class=\"hover:bg-muted text-muted-foreground hover:text-foreground flex size-6 shrink-0 items-center justify-center rounded-md transition-colors\"\n        aria-label=\"Dismiss banner\"\n        @click=\"dismissBanner\"\n      >\n        <X class=\"size-3.5\" />\n      </button>\n    </div>\n  </aside>\n</template>\n",
      "type": "registry:block",
      "target": "~/app/components/blocks/BannerAnnouncementSticky.vue"
    }
  ],
  "dependencies": [
    "lucide-vue-next"
  ],
  "devDependencies": [],
  "registryDependencies": [
    "https://uipkge.dev/r/vue/badge.json"
  ],
  "description": "Sticky release announcement banner with version pill, call-to-action link, and dismiss trigger.",
  "categories": [
    "marketing"
  ],
  "deprecated": true,
  "replacedBy": "announcement"
}