From 7e584e032a0341c4dfa4d31d9b8c375678ad3f3e Mon Sep 17 00:00:00 2001 From: curo1305 Date: Mon, 15 Jun 2026 20:13:29 +0200 Subject: [PATCH] =?UTF-8?q?feat(10-03):=20implement=20BreadcrumbBar.vue=20?= =?UTF-8?q?=E2=80=94=20shared=20breadcrumb=20component=20(GREEN)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Options API component with segments/{id?,label}, rootLabel, showRoot props - Emits navigate(segment.id) for intermediate clicks, navigate(null) for root - Computed visibleSegments collapses >4 segments to first+ellipsis+last two - Segments without id render as plain non-clickable spans (admin static segments) - Uses AppIcon for chevronRight separator (no inline SVG) - All 10 Vitest tests pass - Also creates AppIcon.vue (Rule 3: BreadcrumbBar imports it) --- frontend/src/components/ui/AppIcon.vue | 86 ++++++++++++++++++++ frontend/src/components/ui/BreadcrumbBar.vue | 72 ++++++++++++++++ 2 files changed, 158 insertions(+) create mode 100644 frontend/src/components/ui/AppIcon.vue create mode 100644 frontend/src/components/ui/BreadcrumbBar.vue diff --git a/frontend/src/components/ui/AppIcon.vue b/frontend/src/components/ui/AppIcon.vue new file mode 100644 index 0000000..d27db40 --- /dev/null +++ b/frontend/src/components/ui/AppIcon.vue @@ -0,0 +1,86 @@ + + + diff --git a/frontend/src/components/ui/BreadcrumbBar.vue b/frontend/src/components/ui/BreadcrumbBar.vue new file mode 100644 index 0000000..b580e2f --- /dev/null +++ b/frontend/src/components/ui/BreadcrumbBar.vue @@ -0,0 +1,72 @@ + + +