From 5657fa7e7b9dd820f509f2b7e72ee2e64092f87f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=BF=E3=81=A6=E3=82=8B=E3=81=9E?= Date: Thu, 2 Jul 2026 12:47:19 +0900 Subject: [PATCH 1/2] =?UTF-8?q?=E2=80=9C=E9=96=8B=E7=99=BA=E3=83=A2?= =?UTF-8?q?=E3=83=BC=E3=83=89=E2=80=9D=20=E3=81=AE=E8=A1=A8=E7=A4=BA=20(#3?= =?UTF-8?q?89)=20(#393)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-on: http://git.miteruzo.com/miteruzo/btrc-hub/pulls/393 --- frontend/src/App.tsx | 4 +- frontend/src/components/DevModeWatermark.tsx | 46 ++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 frontend/src/components/DevModeWatermark.tsx diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 11f784c..b4e9b04 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -6,6 +6,7 @@ import { BrowserRouter, Routes, useLocation } from 'react-router-dom' +import DevModeWatermark from '@/components/DevModeWatermark' import RouteBlockerOverlay from '@/components/RouteBlockerOverlay' import TopNav from '@/components/TopNav' import DialogueProvider from '@/components/dialogues/DialogueProvider' @@ -145,6 +146,7 @@ const App: FC = () => { return ( <> + {import.meta.env.DEV && } @@ -152,7 +154,7 @@ const App: FC = () => { + className="relative flex flex-col h-dvh w-full overflow-y-hidden"> diff --git a/frontend/src/components/DevModeWatermark.tsx b/frontend/src/components/DevModeWatermark.tsx new file mode 100644 index 0000000..5de8c0b --- /dev/null +++ b/frontend/src/components/DevModeWatermark.tsx @@ -0,0 +1,46 @@ +import nikumaru from '@/assets/fonts/nikumaru.otf' + +import type { FC } from 'react' + + +const ROW_COUNT = 8 +const COLUMN_COUNT = 12 + + +const DevModeWatermark: FC = () => { + return ( + ) +} + + +export default DevModeWatermark From f96ddb65f122942c96c81ca61b7cd6812a6e2383 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=BF=E3=81=A6=E3=82=8B=E3=81=9E?= Date: Thu, 2 Jul 2026 23:40:01 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=E3=82=BF=E3=82=B0=E3=81=8C=E8=A6=8B?= =?UTF-8?q?=E5=88=87=E3=82=8C=E3=82=8B=E5=95=8F=E9=A1=8C=E5=AF=BE=E5=BF=9C?= =?UTF-8?q?=20(#76)=20(#395)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-on: http://git.miteruzo.com/miteruzo/btrc-hub/pulls/395 --- .../components/DraggableDroppableTagRow.tsx | 7 +- frontend/src/components/MaterialSidebar.tsx | 10 +- .../src/components/ResponsiveMarqueeText.tsx | 250 ++++++++++++++++++ frontend/src/components/TagLink.tsx | 50 +++- frontend/src/components/TagSearchBox.tsx | 8 +- frontend/src/components/TagSidebar.tsx | 5 +- frontend/src/index.css | 17 ++ 7 files changed, 327 insertions(+), 20 deletions(-) create mode 100644 frontend/src/components/ResponsiveMarqueeText.tsx diff --git a/frontend/src/components/DraggableDroppableTagRow.tsx b/frontend/src/components/DraggableDroppableTagRow.tsx index e6c49ff..97e8248 100644 --- a/frontend/src/components/DraggableDroppableTagRow.tsx +++ b/frontend/src/components/DraggableDroppableTagRow.tsx @@ -87,10 +87,13 @@ const DraggableDroppableTagRow: FC = ({ tag, nestLevel, pathKey, parentTa setDropRef (node) }} style={style} - className={cn ('rounded select-none', over && 'ring-2 ring-offset-2')} + className={cn ( + 'min-w-0 max-w-full overflow-hidden rounded select-none', + over && 'ring-2 ring-offset-2')} {...attributes} {...listeners}> @@ -98,4 +101,4 @@ const DraggableDroppableTagRow: FC = ({ tag, nestLevel, pathKey, parentTa ) } -export default DraggableDroppableTagRow \ No newline at end of file +export default DraggableDroppableTagRow diff --git a/frontend/src/components/MaterialSidebar.tsx b/frontend/src/components/MaterialSidebar.tsx index 399d9d8..8428c09 100644 --- a/frontend/src/components/MaterialSidebar.tsx +++ b/frontend/src/components/MaterialSidebar.tsx @@ -318,12 +318,20 @@ const MobileMaterialTreeNode: FC<{ depth?: number + [max-height:var(--tag-link-inline-size)] + [&_.tag-marquee]:block + [&_.tag-marquee]:h-full + [&_.tag-marquee]:overflow-hidden + [&_.tag-marquee__static]:h-full + [&_.tag-marquee__static]:overflow-hidden + [&_.tag-marquee__static]:text-ellipsis + [&_.tag-marquee__static]:[text-overflow:ellipsis]"/> {tag.hasChildren && (