Skip to content

Commit 9c45bfc

Browse files
authored
Merge pull request #2300 from shanberg/distinguish-special-page-headers
feat: add overline to distinguish daily notes
2 parents d2e68fb + cff3ec2 commit 9c45bfc

File tree

2 files changed

+41
-15
lines changed

2 files changed

+41
-15
lines changed

src/cljs/athens/views/pages/node_page.cljs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
["/components/Block/Anchor" :refer [Anchor]]
44
["/components/Block/Container" :refer [Container]]
55
["/components/Confirmation/Confirmation" :refer [Confirmation]]
6-
["/components/Icons/Icons" :refer [EllipsisHorizontalIcon GraphIcon BookmarkIcon BookmarkFillIcon TrashIcon ArrowRightOnBoxIcon TimeNowIcon]]
6+
["/components/Icons/Icons" :refer [CalendarIcon EllipsisHorizontalIcon GraphIcon BookmarkIcon BookmarkFillIcon TrashIcon ArrowRightOnBoxIcon TimeNowIcon]]
77
["/components/Page/Page" :refer [PageHeader PageBody PageFooter TitleContainer]]
88
["/components/References/References" :refer [PageReferences ReferenceBlock ReferenceGroup]]
9-
["@chakra-ui/react" :refer [Box HStack Button Portal IconButton MenuDivider MenuButton Menu MenuList MenuItem Breadcrumb BreadcrumbItem BreadcrumbLink VStack]]
9+
["@chakra-ui/react" :refer [Text Box HStack Button Portal IconButton MenuDivider MenuButton Menu MenuList MenuItem Breadcrumb BreadcrumbItem BreadcrumbLink VStack]]
1010
[athens.common-db :as common-db]
1111
[athens.common-events.graph.ops :as graph-ops]
1212
[athens.common.sentry :refer-macros [wrap-span-no-new-tx]]
@@ -457,6 +457,13 @@
457457
:onClose cancel-fn}]
458458
;; Header
459459
[:> PageHeader (merge
460+
(when daily-note?
461+
{:overline
462+
(r/as-element [:> Text {:as "span"
463+
:display "flex"
464+
:gap 1
465+
:alignItems "center"}
466+
[:> CalendarIcon] "Daily Note"])})
460467
{:onClickOpenInMainView (when on-daily-notes?
461468
(fn [e] (router/navigate-page title e)))
462469
:onClickOpenInSidebar (when-not @(subscribe [:right-sidebar/contains-item? [:node/title title]])

src/js/components/Page/Page.tsx

Lines changed: 32 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,29 @@ export const HeaderImage = ({ src }) => <Image
6464
objectFit="cover"
6565
/>
6666

67-
export const PageHeader = ({
68-
children,
69-
onChangeHeaderImageUrl,
70-
headerImageUrl,
71-
onClickOpenInSidebar,
72-
onClickOpenInMainView,
73-
headerImageEnabled }
74-
) => {
67+
68+
interface PageHeaderProps extends BoxProps {
69+
overline?: React.ReactNode;
70+
headerImageUrl?: string;
71+
onChangeHeaderImageUrl?: (url: string) => void;
72+
onClickOpenInSidebar?: () => void;
73+
onClickOpenInMainView?: () => void;
74+
headerImageEnabled?: boolean;
75+
}
76+
77+
const PageHeaderOverline = ({ children }) => <Heading color="foreground.secondary" size="xs" gridArea="overline">{children}</Heading>
78+
79+
export const PageHeader = (props: PageHeaderProps): React.ReactChild => {
80+
const {
81+
children,
82+
overline,
83+
onChangeHeaderImageUrl,
84+
headerImageUrl,
85+
onClickOpenInSidebar,
86+
onClickOpenInMainView,
87+
headerImageEnabled,
88+
...boxProps
89+
} = props;
7590
const [isPropertiesOpen, setIsPropertiesOpen] = React.useState(false)
7691

7792
return (<Box
@@ -85,11 +100,15 @@ export const PageHeader = ({
85100
gridTemplateColumns="1fr auto"
86101
gridTemplateRows="auto auto auto"
87102
alignItems="center"
88-
gridTemplateAreas="'breadcrumb breadcrumb'
89-
'title extras'
90-
'properties properties'
91-
'image image'"
103+
gridTemplateAreas={`'breadcrumb breadcrumb'
104+
'overline overline'
105+
'title extras'
106+
'properties properties'
107+
'image image'`}
108+
{...boxProps}
92109
>
110+
{overline && <PageHeaderOverline>{overline}</PageHeaderOverline>}
111+
93112
{children}
94113

95114
<ButtonGroup
@@ -185,7 +204,7 @@ export const DailyNotesList = (props: DailyNotesListProps) => {
185204
{boxProps.children}
186205
<DailyNotesPage isReal={false}>
187206
<Box ref={ref} />
188-
<PageHeader>
207+
<PageHeader overline="Daily Note">
189208
<TitleContainer isEditing="false">Earlier</TitleContainer>
190209
</PageHeader>
191210
</DailyNotesPage>

0 commit comments

Comments
 (0)