📋 UI improvements in the Library section

This commit is contained in:
2022-04-06 11:00:16 -07:00
parent 0cd142153c
commit 81bdaefdd1
9 changed files with 82 additions and 32 deletions

View File

@@ -325,10 +325,10 @@ pre {
width: 100%;
thead {
position: sticky;
top: 194px;
top: 146px;
z-index: 1;
background: #fffffc;
min-height: 120px;
min-height: 130px;
}
tr {
td {

View File

@@ -65,11 +65,22 @@ export const Dashboard = (): ReactElement => {
{/* Pull List */}
<PullList issues={recentComics} />
{/* stats */}
<LibraryStatistics stats={libraryStatistics} />
<WantedComicsList comics={wantedComics} />
<RecentlyImported comicBookCovers={recentComics} />
<VolumeGroups volumeGroups={volumeGroups} />
{/* Stats */}
{!isEmpty(libraryStatistics) && (
<LibraryStatistics stats={libraryStatistics} />
)}
{/* Wanted comics */}
{!isEmpty(wantedComics) && (
<WantedComicsList comics={wantedComics} />
)}
{/* Recent imports */}
{!isEmpty(recentComics) && (
<RecentlyImported comicBookCovers={recentComics} />
)}
{/* Volumes */}
{!isEmpty(volumeGroups) && (
<VolumeGroups volumeGroups={volumeGroups} />
)}
</>
) : (
<ZeroState

View File

@@ -28,7 +28,7 @@ export const WantedComicsList = ({
<span className="title is-4">Wanted Comics</span>
</span>
<span className="icon mt-1">
<i className="fa-regular fa-angle-right"></i>
<i className="fa-solid fa-circle-chevron-right"></i>
</span>
</span>
<p className="subtitle is-7">

View File

@@ -16,7 +16,7 @@ export const ComicVineDetails = (comicVineData): ReactElement => {
<div className="columns mt-2">
<div className="column is-3">
<Card
imageUrl={data.comicvine.image.thumb_url}
imageUrl={data.comicvine.image.small_url}
orientation={"vertical"}
hasDetails={false}
// cardContainerStyle={{ maxWidth: 200 }}

View File

@@ -81,7 +81,7 @@ export const Library = (data: IComicBookLibraryProps): ReactElement => {
{
Header: "File Details",
id: "fileDetails",
minWidth: 450,
minWidth: 400,
accessor: (row) =>
!isEmpty(row._source.rawFileDetails)
? {
@@ -104,7 +104,6 @@ export const Library = (data: IComicBookLibraryProps): ReactElement => {
{
Header: "ComicInfo.xml",
accessor: "_source.sourcedMetadata.comicInfo",
minWidth: 300,
align: "right",
Cell: ({ value }) =>
!isEmpty(value) ? (

View File

@@ -17,6 +17,7 @@ const LibraryContainer = () => {
size: 25,
from: 0,
},
type: "all",
},
),
);

View File

@@ -21,6 +21,7 @@ export const SearchBar = (): ReactElement => {
size: 25,
from: 0,
},
type: "volumeName",
},
),
);
@@ -32,27 +33,30 @@ export const SearchBar = (): ReactElement => {
initialValues={{}}
render={({ handleSubmit, form, submitting, pristine, values }) => (
<form onSubmit={handleSubmit}>
<div className="column is-three-quarters search">
<label>Search</label>
<Field name="search">
{({ input, meta }) => {
return (
<input
{...input}
className="input main-search-bar is-medium"
placeholder="Type an issue/volume name"
/>
);
}}
</Field>
<button className="button" type="submit">
Search
</button>
<div className="field is-grouped">
<div className="control is-expanded search">
<Field name="search">
{({ input, meta }) => {
return (
<input
{...input}
className="input main-search-bar is-medium"
placeholder="Type an issue/volume name"
/>
);
}}
</Field>
</div>
<div className="control">
<button className="button is-medium" type="submit">
Search
</button>
</div>
</div>
</form>
)}
/>
<div className="column one-fifth">
{/* <div className="column one-fifth">
<div className="field has-addons">
<p className="control">
<button className="button">
@@ -71,7 +75,7 @@ export const SearchBar = (): ReactElement => {
</button>
</p>
</div>
</div>
</div> */}
</div>
);
};

View File

@@ -0,0 +1,25 @@
import React, { ReactElement, useEffect } from "react";
import { useDispatch } from "react-redux";
import { searchIssue } from "../../actions/fileops.actions";
export const WantedComics = (props): ReactElement => {
const dispatch = useDispatch();
useEffect(() => {
dispatch(
searchIssue(
{
query: {},
},
{
pagination: {
size: 25,
from: 0,
},
},
),
);
}, []);
return <>Ads</>;
};
export default WantedComics;

View File

@@ -36,7 +36,7 @@ export const T2Table = (tableOptions): ReactElement => {
pageCount: totalPages,
},
usePagination,
useFlexLayout,
// useFlexLayout,
);
return (
<>
@@ -45,7 +45,12 @@ export const T2Table = (tableOptions): ReactElement => {
{headerGroups.map((headerGroup, idx) => (
<tr key={idx} {...headerGroup.getHeaderGroupProps()}>
{headerGroup.headers.map((column, idx) => (
<th key={idx} {...column.getHeaderProps()}>
<th
key={idx}
{...column.getHeaderProps({
style: { minWidth: column.minWidth, width: column.width },
})}
>
{column.render("Header")}
</th>
))}
@@ -66,7 +71,12 @@ export const T2Table = (tableOptions): ReactElement => {
return (
<td
key={idx}
{...cell.getCellProps()}
{...cell.getCellProps({
style: {
minWidth: cell.column.minWidth,
width: cell.column.width,
},
})}
className="is-vcentered"
>
{cell.render("Cell")}