1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

Add options to Page props

This commit is contained in:
Bill Thornton 2022-06-14 12:48:49 -04:00
parent ceb10e2877
commit b349d89534
2 changed files with 12 additions and 6 deletions

View file

@ -1,16 +1,22 @@
import React, { FunctionComponent, useEffect, useRef } from 'react'; import React, { FunctionComponent, HTMLAttributes, useEffect, useRef } from 'react';
import viewManager from './viewManager/viewManager'; import viewManager from './viewManager/viewManager';
type PageProps = { type PageProps = {
title?: string title?: string,
isBackButtonEnabled?: boolean
}; };
/** /**
* Page component that handles hiding active non-react views, triggering the required events for * Page component that handles hiding active non-react views, triggering the required events for
* navigation and appRouter state updates, and setting the correct classes and data attributes. * navigation and appRouter state updates, and setting the correct classes and data attributes.
*/ */
const Page: FunctionComponent<PageProps> = ({ children, title }) => { const Page: FunctionComponent<PageProps & HTMLAttributes<HTMLDivElement>> = ({
children,
className = '',
title,
isBackButtonEnabled = true
}) => {
const element = useRef<HTMLDivElement>(null); const element = useRef<HTMLDivElement>(null);
useEffect(() => { useEffect(() => {
@ -38,9 +44,9 @@ const Page: FunctionComponent<PageProps> = ({ children, title }) => {
<div <div
ref={element} ref={element}
data-role='page' data-role='page'
className='mainAnimatedPage page libraryPage allLibraryPage noSecondaryNavPage' className={`page ${className}`}
data-title={title} data-title={title}
data-backbutton='true' data-backbutton={`${isBackButtonEnabled}`}
> >
{children} {children}
</div> </div>

View file

@ -13,7 +13,7 @@ const SearchPage: FunctionComponent = () => {
const [ searchParams ] = useSearchParams(); const [ searchParams ] = useSearchParams();
return ( return (
<Page title={globalize.translate('Search')}> <Page title={globalize.translate('Search')} className='mainAnimatedPage libraryPage allLibraryPage noSecondaryNavPage'>
<SearchFields onSearch={setQuery} /> <SearchFields onSearch={setQuery} />
{!query && {!query &&
<SearchSuggestions <SearchSuggestions