From ca1e17890ba82d0cfd3caf5547fec0962dd65748 Mon Sep 17 00:00:00 2001 From: zenn Date: Fri, 15 May 2026 14:20:27 +0900 Subject: [PATCH] =?UTF-8?q?=EB=A9=94=EB=89=B4=20=EA=B4=80=EB=A6=AC=20?= =?UTF-8?q?=EA=B0=9C=ED=8E=B8,=20=EC=B6=94=EC=B2=9C=20=EC=82=AC=EC=9D=B4?= =?UTF-8?q?=ED=8A=B8=C2=B71=EB=8E=81=EC=8A=A4=20=EB=84=A4=EB=B9=84,=20?= =?UTF-8?q?=EC=9A=B0=EC=B8=A1=20Recommended=20=EC=97=B0=EB=8F=99(v1.1.13)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 상단 네비는 평면 테이블·드래그로 편집하고 한 단계 하위만 허용한다. 추천 사이트 탭·location recommended·공개 API와 우측 사이드 카드·파비콘 URL 유틸을 추가한다. 문서·배포 마이그레이션 안내·관리자 레이아웃·설정 화면 등 누적 변경을 반영한다. --- assets/css/main.css | 18 + components/admin/AdminNavPrimaryBranch.vue | 214 ----- components/site/LeftSidebar.vue | 3 +- components/site/RightSidebar.vue | 75 +- components/site/SidebarPrimaryNavList.vue | 6 +- .../024_navigation_recommended_location.sql | 7 + docs/changelog.md | 16 + docs/deploy.md | 3 +- docs/history.md | 24 + docs/map.md | 13 +- docs/spec.md | 13 +- docs/update.md | 25 + layouts/admin.vue | 65 +- lib/external-favicon-url.js | 32 + lib/navigation-editor-tree.js | 23 + package-lock.json | 4 +- package.json | 2 +- pages/admin/navigation/index.vue | 665 +++++++++++++--- pages/admin/settings/index.vue | 753 ++++++++++++++---- server/api/navigation.get.js | 2 +- server/repositories/content-repository.js | 11 +- server/routes/admin/api/navigation.put.js | 1 + server/utils/admin-navigation-input.js | 6 +- server/utils/navigation-tree.js | 27 +- 24 files changed, 1509 insertions(+), 499 deletions(-) delete mode 100644 components/admin/AdminNavPrimaryBranch.vue create mode 100644 db/migrations/024_navigation_recommended_location.sql create mode 100644 lib/external-favicon-url.js diff --git a/assets/css/main.css b/assets/css/main.css index 67328a9..b3324de 100644 --- a/assets/css/main.css +++ b/assets/css/main.css @@ -76,6 +76,13 @@ overflow: hidden; background: #ffffff; } + + html.admin-settings-document, + body.admin-settings-document { + height: 100%; + overflow: hidden; + background: #f7f8fa; + } } @layer components { @@ -257,3 +264,14 @@ } } + +@layer utilities { + .no-scrollbar { + -ms-overflow-style: none; + scrollbar-width: none; + } + + .no-scrollbar::-webkit-scrollbar { + display: none; + } +} diff --git a/components/admin/AdminNavPrimaryBranch.vue b/components/admin/AdminNavPrimaryBranch.vue deleted file mode 100644 index b50c753..0000000 --- a/components/admin/AdminNavPrimaryBranch.vue +++ /dev/null @@ -1,214 +0,0 @@ - - - diff --git a/components/site/LeftSidebar.vue b/components/site/LeftSidebar.vue index be191e3..fad3244 100644 --- a/components/site/LeftSidebar.vue +++ b/components/site/LeftSidebar.vue @@ -15,7 +15,8 @@ const { data: tags } = await useFetch('/api/tags', { const { data: navigation } = await useFetch('/api/navigation', { default: () => ({ primary: [], - footer: [] + footer: [], + recommended: [] }) }) diff --git a/components/site/RightSidebar.vue b/components/site/RightSidebar.vue index e5e0ae8..db017a1 100644 --- a/components/site/RightSidebar.vue +++ b/components/site/RightSidebar.vue @@ -1,4 +1,6 @@ @@ -159,24 +188,44 @@ const showAboutSection = false -