From 089078fda03bfcf03f2b006e371297b0f4e0d423 Mon Sep 17 00:00:00 2001 From: Rishi Ghan Date: Sun, 20 Mar 2022 23:33:16 -0700 Subject: [PATCH] =?UTF-8?q?=F0=9F=92=85=F0=9F=8F=BD=20react-table=20UI=20p?= =?UTF-8?q?olishes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/client/assets/scss/App.scss | 16 ++++ src/client/components/Library/Library.tsx | 31 ++++-- .../components/Library/RawFileDetails.tsx | 94 +++++++++++-------- 3 files changed, 92 insertions(+), 49 deletions(-) diff --git a/src/client/assets/scss/App.scss b/src/client/assets/scss/App.scss index 39d990d..fc99877 100644 --- a/src/client/assets/scss/App.scss +++ b/src/client/assets/scss/App.scss @@ -263,6 +263,22 @@ pre { border-radius: 0.5rem; } +.issue-metadata { + background-color: #FBFFEE; + padding: 0.8em; + border-radius: 0.5rem; + .name { + font-size: 0.95rem; + color: #4A4F50; + } +} + +.comicvine-metadata { + background-color: #EBFCFF; + padding: 0.8rem; + border-radius: 0.5rem; +} + // Comic Detail .comic-detail { dl { diff --git a/src/client/components/Library/Library.tsx b/src/client/components/Library/Library.tsx index 46732bb..a0bf7f0 100644 --- a/src/client/components/Library/Library.tsx +++ b/src/client/components/Library/Library.tsx @@ -7,7 +7,7 @@ import React, { } from "react"; import PropTypes from "prop-types"; import { useNavigate } from "react-router-dom"; -import { useTable, usePagination } from "react-table"; +import { useTable, usePagination, useFlexLayout } from "react-table"; import { flatten, isEmpty, isNil, isUndefined, map } from "lodash"; import RawFileDetails from "./RawFileDetails"; import ComicVineDetails from "./ComicVineDetails"; @@ -38,27 +38,27 @@ export const Library = (data: IComicBookLibraryProps): ReactElement => { const ImportStatus = ({ value }) => { return value ? ( -
+
- Series - {ellipsize(value.series[0], 25)} + Series + {ellipsize(value.series[0], 25)}
- - Pages - {value.pagecount[0]} + + Pages + {value.pagecount[0]}
- - Issue + + Issue {!isNil(value.number) && ( - {parseInt(value.number[0], 10)} + {parseInt(value.number[0], 10)} )}
@@ -84,6 +84,7 @@ export const Library = (data: IComicBookLibraryProps): ReactElement => { { Header: "File Details", id: "fileDetails", + minWidth: 450, accessor: (row) => !isEmpty(row._source.rawFileDetails) ? { @@ -106,6 +107,8 @@ export const Library = (data: IComicBookLibraryProps): ReactElement => { { Header: "Import Status", accessor: "_source.sourcedMetadata.comicInfo", + minWidth: 300, + align: "right", Cell: ImportStatus, }, ], @@ -123,6 +126,13 @@ export const Library = (data: IComicBookLibraryProps): ReactElement => { ); }, }, + { + Header: "Something", + accessor: "_source.acquisition.wanted", + Cell: (props) => { + return
asda
+ }, + }, ], }, ], @@ -159,6 +169,7 @@ export const Library = (data: IComicBookLibraryProps): ReactElement => { pageCount: searchResults.hits.total.value, }, usePagination, + useFlexLayout, ); const dispatch = useDispatch(); const goToNextPage = useCallback(() => { diff --git a/src/client/components/Library/RawFileDetails.tsx b/src/client/components/Library/RawFileDetails.tsx index 9b231c1..cd11e22 100644 --- a/src/client/components/Library/RawFileDetails.tsx +++ b/src/client/components/Library/RawFileDetails.tsx @@ -4,6 +4,7 @@ import { escapePoundSymbol } from "../../shared/utils/formatting.utils"; import prettyBytes from "pretty-bytes"; import ellipsize from "ellipsize"; import { LIBRARY_SERVICE_HOST } from "../../constants/endpoints"; +import { Card } from "../Carda"; // raw file details export const RawFileDetails = (rawFileData): ReactElement => { @@ -13,48 +14,63 @@ export const RawFileDetails = (rawFileData): ReactElement => { ); const filePath = escapePoundSymbol(encodedFilePath); return ( -
-
-
-
-
- -
-
-
    -
  • - {ellipsize(rawFileDetails.name, 49)} -
  • +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + {rawFileDetails.name} +
    +
    +
    + Is a part of{" "} + + {inferredMetadata.issue.name} + +
    -
  • -
    -
    - Series:{" "} - - {inferredMetadata.issue.name} - -
    -
    -
  • -
  • -
    -
    -
    - - {inferredMetadata.issue.number} - - - - {rawFileDetails.extension} - - - {prettyBytes(rawFileDetails.fileSize)} - -
    +
    +
    +
    + + + {rawFileDetails.extension} + + + {prettyBytes(rawFileDetails.fileSize)} + + +
    +
    + {inferredMetadata.issue.number && ( +
    + Issue # + + {inferredMetadata.issue.number} + +
    + )} +
    +
    +
    +
  • - -
+ +