From 32ef972dec906f7b7dc71ccffb4fe91db803d321 Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Thu, 28 Nov 2024 10:56:37 +0000 Subject: [PATCH 01/10] Add an icon to sections --- .../SiteSectionTabs/SectionIcon.tsx | 10 +++++++ .../SiteSectionTabs/SiteSectionTabs.tsx | 29 ++++++++++++------- 2 files changed, 28 insertions(+), 11 deletions(-) create mode 100644 packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx diff --git a/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx b/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx new file mode 100644 index 0000000000..daf76dbbd5 --- /dev/null +++ b/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx @@ -0,0 +1,10 @@ +import type { SiteSection } from "@gitbook/api"; +import { Icon } from "@gitbook/icons"; + +import { type ClassValue, tcls } from "@/lib/tailwind"; + +export function SectionIcon(props: { section: SiteSection; style?: ClassValue }) { + const { section, style } = props; + + return section.icon ? : null; +} \ No newline at end of file diff --git a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx index 31bfd0c568..327daf46ca 100644 --- a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx +++ b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx @@ -1,10 +1,12 @@ 'use client'; -import { SiteSection } from '@gitbook/api'; + +import type { SiteSection } from '@gitbook/api'; import React from 'react'; import { tcls } from '@/lib/tailwind'; import { Link } from '../primitives'; +import { SectionIcon } from './SectionIcon'; /** * A set of navigational tabs representing site sections for multi-section sites @@ -14,12 +16,13 @@ export function SiteSectionTabs(props: { section: SiteSection; index: number; }) { - const { list: sections, section: currentSection, index: currentIndex } = props; + const { list: sections, index: currentIndex } = props; - const tabs = sections.map((section) => ({ + const tabs = sections.map( (section) => ({ id: section.id, label: section.title, path: section.urls.published ?? '', + icon: section.icon ? : null, })); const currentTabRef = React.useRef(null); @@ -43,7 +46,9 @@ export function SiteSectionTabs(props: { }, []); React.useEffect(() => { - updateTabDimensions(); + if (currentIndex >= 0) { + updateTabDimensions(); + } }, [currentIndex, updateTabDimensions]); React.useLayoutEffect(() => { @@ -55,7 +60,7 @@ export function SiteSectionTabs(props: { }; }, [updateTabDimensions]); - const opacity = Boolean(tabDimensions) ? 1 : 0.0; + const opacity = tabDimensions ? 1 : 0.0; const scale = (tabDimensions?.width ?? 0) * 0.01; const startPos = `${tabDimensions?.left ?? 0}px`; @@ -87,10 +92,11 @@ export function SiteSectionTabs(props: { {tabs.map((tab, index) => ( ))} @@ -117,7 +123,7 @@ export function SiteSectionTabs(props: { 'after:bg-primary', 'dark:after:bg-primary-400', )} - > + /> ) : null; @@ -126,9 +132,9 @@ export function SiteSectionTabs(props: { /** * The tab item - a link to a site section */ -const Tab = React.forwardRef( +const Tab = React.forwardRef( function Tab(props, ref) { - const { active, href, label } = props; + const { active, href, icon, label } = props; return ( - + + {icon} {label} - + ); }, From e8d35b52af93637ae8b55977ef41ebfabda404cd Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Thu, 28 Nov 2024 15:02:38 +0000 Subject: [PATCH 02/10] Add changeset --- .changeset/tender-carrots-film.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/tender-carrots-film.md diff --git a/.changeset/tender-carrots-film.md b/.changeset/tender-carrots-film.md new file mode 100644 index 0000000000..a807d74542 --- /dev/null +++ b/.changeset/tender-carrots-film.md @@ -0,0 +1,5 @@ +--- +'gitbook': patch +--- + +Add icons to sections From ba2c8e2d4f4a60616b7caed260575524e9affe5b Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Fri, 29 Nov 2024 14:53:45 +0000 Subject: [PATCH 03/10] Update api --- bun.lockb | Bin 573168 -> 573560 bytes packages/gitbook/package.json | 2 +- .../SiteSectionTabs/SectionIcon.tsx | 8 ++++---- .../SiteSectionTabs/SiteSectionTabs.tsx | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bun.lockb b/bun.lockb index c08095915f8ced37a456be2e3f2e34da19132f73..3713b7da82e741fb9d333c790cf78f27c55a1605 100755 GIT binary patch delta 48128 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 K(4>>9{r?BW*=WZA delta 47930 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 : null; + return section.icon ? : null; } \ No newline at end of file diff --git a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx index 327daf46ca..22a7ac0d6e 100644 --- a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx +++ b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx @@ -22,7 +22,7 @@ export function SiteSectionTabs(props: { id: section.id, label: section.title, path: section.urls.published ?? '', - icon: section.icon ? : null, + icon: section.icon ? : null, })); const currentTabRef = React.useRef(null); From c86575bc952f6e403fa3e514cadbb357c935aa58 Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Fri, 29 Nov 2024 14:56:04 +0000 Subject: [PATCH 04/10] chore: comment --- .../gitbook/src/components/SiteSectionTabs/SectionIcon.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx b/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx index 172f391a51..5f7a715d60 100644 --- a/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx +++ b/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx @@ -3,6 +3,9 @@ import { Icon, type IconName } from "@gitbook/icons"; import { type ClassValue, tcls } from "@/lib/tailwind"; +/** + * Icon shown beside a section in the site section tabs. + */ export function SectionIcon(props: { section: SiteSection; className?: ClassValue }) { const { section, className } = props; From 0709d4986218b9d2561d6df7312b1ff5071ad65c Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Fri, 29 Nov 2024 14:59:21 +0000 Subject: [PATCH 05/10] chore: bun --- bun.lockb | Bin 573560 -> 573560 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/bun.lockb b/bun.lockb index 3713b7da82e741fb9d333c790cf78f27c55a1605..c57133924155a4776932e2d96e7e9d16fea7f125 100755 GIT binary patch delta 42 xcmey-p!}mjxuJ!zg{g(Pg=Gut{ihs^aRz$k7J3Hl&!4gaG28a%PuVBl0swN(5{3W( delta 42 scmey-p!}mjxuJ!zg{g(Pg=Gut{ihsE3=q)%{3$CCvu%I=lzrkY09L*b{r~^~ From 57da134b539d8d0ad6284388274dac5ce1e27d61 Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Fri, 29 Nov 2024 14:59:55 +0000 Subject: [PATCH 06/10] chore: format --- .../SiteSectionTabs/SectionIcon.tsx | 12 +++-- .../SiteSectionTabs/SiteSectionTabs.tsx | 51 ++++++++++--------- 2 files changed, 34 insertions(+), 29 deletions(-) diff --git a/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx b/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx index 5f7a715d60..ec634f0dcc 100644 --- a/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx +++ b/packages/gitbook/src/components/SiteSectionTabs/SectionIcon.tsx @@ -1,7 +1,7 @@ -import type { SiteSection } from "@gitbook/api"; -import { Icon, type IconName } from "@gitbook/icons"; +import type { SiteSection } from '@gitbook/api'; +import { Icon, type IconName } from '@gitbook/icons'; -import { type ClassValue, tcls } from "@/lib/tailwind"; +import { type ClassValue, tcls } from '@/lib/tailwind'; /** * Icon shown beside a section in the site section tabs. @@ -9,5 +9,7 @@ import { type ClassValue, tcls } from "@/lib/tailwind"; export function SectionIcon(props: { section: SiteSection; className?: ClassValue }) { const { section, className } = props; - return section.icon ? : null; -} \ No newline at end of file + return section.icon ? ( + + ) : null; +} diff --git a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx index 22a7ac0d6e..12c6a7d06a 100644 --- a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx +++ b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx @@ -18,11 +18,13 @@ export function SiteSectionTabs(props: { }) { const { list: sections, index: currentIndex } = props; - const tabs = sections.map( (section) => ({ + const tabs = sections.map((section) => ({ id: section.id, label: section.title, path: section.urls.published ?? '', - icon: section.icon ? : null, + icon: section.icon ? ( + + ) : null, })); const currentTabRef = React.useRef(null); @@ -132,25 +134,26 @@ export function SiteSectionTabs(props: { /** * The tab item - a link to a site section */ -const Tab = React.forwardRef( - function Tab(props, ref) { - const { active, href, icon, label } = props; - return ( - - - {icon} - {label} - - - ); - }, -); +const Tab = React.forwardRef< + HTMLSpanElement, + { active: boolean; href: string; icon?: React.ReactNode; label: string } +>(function Tab(props, ref) { + const { active, href, icon, label } = props; + return ( + + + {icon} + {label} + + + ); +}); From f07f283040b798838269bc1be74fb9b40b9d9e14 Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Fri, 29 Nov 2024 15:34:38 +0000 Subject: [PATCH 07/10] Muted tab icon when not active --- .../SiteSectionTabs/SiteSectionTabs.tsx | 32 ++++++++----------- 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx index 12c6a7d06a..1015b87c6a 100644 --- a/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx +++ b/packages/gitbook/src/components/SiteSectionTabs/SiteSectionTabs.tsx @@ -18,15 +18,6 @@ export function SiteSectionTabs(props: { }) { const { list: sections, index: currentIndex } = props; - const tabs = sections.map((section) => ({ - id: section.id, - label: section.title, - path: section.urls.published ?? '', - icon: section.icon ? ( - - ) : null, - })); - const currentTabRef = React.useRef(null); const navRef = React.useRef(null); @@ -66,7 +57,7 @@ export function SiteSectionTabs(props: { const scale = (tabDimensions?.width ?? 0) * 0.01; const startPos = `${tabDimensions?.left ?? 0}px`; - return tabs.length > 0 ? ( + return sections.length > 0 ? (