Signed-off-by: soupette <cyril.lpz@gmail.com>
This commit is contained in:
soupette 2020-07-22 09:30:06 +02:00
parent fa46dd4f4c
commit cf762e9bf8
4 changed files with 46 additions and 43 deletions

View File

@ -1,7 +1,7 @@
import React, { useEffect, useState } from 'react';
import PropTypes from 'prop-types';
import { useDebounce } from '@buffetjs/hooks';
import { HeaderSearch, useGlobalContext, useQuery } from 'strapi-helper-plugin';
import { HeaderSearch, useGlobalContext, useQuery, LoadingIndicator } from 'strapi-helper-plugin';
import { useAppContext } from '../../../hooks';
import { getTrad, getFileModelTimestamps } from '../../../utils';
@ -15,6 +15,7 @@ const HomePageSettings = ({
areAllCheckboxesSelected,
filters,
hasSomeCheckboxSelected,
isLoading,
onChange,
onFilterDelete,
onSelectAll,
@ -53,21 +54,28 @@ const HomePageSettings = ({
name="_q"
value={searchValue}
/>
<ControlsWrapper>
{canUpdate && (
<>
<SelectAll
onChange={onSelectAll}
checked={areAllCheckboxesSelected}
someChecked={hasSomeCheckboxSelected && !areAllCheckboxesSelected}
/>
<Padded right />
</>
)}
<SortPicker onChange={onChange} value={query.get('_sort') || `${updated_at}:DESC`} />
<Padded right />
<Filters onChange={onChange} filters={filters} onClick={onFilterDelete} />
</ControlsWrapper>
{isLoading ? (
<>
<Padded top bottom size="lg" />
<LoadingIndicator />
</>
) : (
<ControlsWrapper>
{canUpdate && (
<>
<SelectAll
onChange={onSelectAll}
checked={areAllCheckboxesSelected}
someChecked={hasSomeCheckboxSelected && !areAllCheckboxesSelected}
/>
<Padded right />
</>
)}
<SortPicker onChange={onChange} value={query.get('_sort') || `${updated_at}:DESC`} />
<Padded right />
<Filters onChange={onChange} filters={filters} onClick={onFilterDelete} />
</ControlsWrapper>
)}
</>
);
};
@ -85,6 +93,7 @@ HomePageSettings.propTypes = {
areAllCheckboxesSelected: PropTypes.bool,
filters: PropTypes.array,
hasSomeCheckboxSelected: PropTypes.bool,
isLoading: PropTypes.bool.isRequired,
onChange: PropTypes.func,
onFilterDelete: PropTypes.func,
onSelectAll: PropTypes.func,

View File

@ -11,6 +11,7 @@ const HomePageContent = ({
data,
dataCount,
dataToDelete,
isLoading,
onCardCheck,
onCardClick,
onClick,
@ -41,6 +42,7 @@ const HomePageContent = ({
areAllCheckboxesSelected={areAllCheckboxesSelected}
filters={filters}
hasSomeCheckboxSelected={hasSomeCheckboxSelected}
isLoading={isLoading}
onChange={onParamsChange}
onFilterDelete={onFilterDelete}
onSelectAll={onSelectAll}
@ -63,6 +65,7 @@ HomePageContent.defaultProps = {
data: [],
dataCount: 0,
dataToDelete: [],
isLoading: false,
onCardCheck: () => {},
onCardClick: () => {},
onClick: () => {},
@ -75,6 +78,7 @@ HomePageContent.propTypes = {
data: PropTypes.array,
dataCount: PropTypes.number,
dataToDelete: PropTypes.array,
isLoading: PropTypes.bool,
onCardCheck: PropTypes.func,
onCardClick: PropTypes.func,
onClick: PropTypes.func,

View File

@ -5,7 +5,6 @@ import { Header } from '@buffetjs/custom';
import { Button } from '@buffetjs/core';
import {
PopUpWarning,
LoadingIndicator,
useGlobalContext,
generateFiltersFromSearch,
generateSearchFromFilters,
@ -326,6 +325,7 @@ const HomePage = () => {
data={data}
dataCount={dataCount}
dataToDelete={dataToDelete}
isLoading={isLoading}
onCardCheck={handleChangeCheck}
onCardClick={handleClickEditFile}
onClick={handleClickToggleModal}
@ -338,14 +338,7 @@ const HomePage = () => {
return (
<Container>
<Header {...headerProps} isLoading={isLoading} />
{isLoading ? (
<>
<Padded top bottom size="lg" />
<LoadingIndicator />
</>
) : (
content
)}
{content}
<ModalStepper
initialFileToEdit={fileToEdit}
initialStep={modalInitialStep}

View File

@ -2759,26 +2759,18 @@
"@sentry/types" "5.13.2"
tslib "^1.9.3"
"@sindresorhus/slugify@0.9.1":
version "0.9.1"
resolved "https://registry.yarnpkg.com/@sindresorhus/slugify/-/slugify-0.9.1.tgz#892ad24d70b442c0a14fe519cb4019d59bc5069f"
integrity sha512-b6heYM9dzZD13t2GOiEQTDE0qX+I1GyOotMwKh9VQqzuNiVdPVT8dM43fe9HNb/3ul+Qwd5oKSEDrDIfhq3bnQ==
"@sindresorhus/slugify@1.1.0":
version "1.1.0"
resolved "https://registry.yarnpkg.com/@sindresorhus/slugify/-/slugify-1.1.0.tgz#2f195365d9b953384305b62664b44b4036c49430"
integrity sha512-ujZRbmmizX26yS/HnB3P9QNlNa4+UvHh+rIse3RbOXLp8yl6n1TxB4t7NHggtVgS8QmmOtzXo48kCxZGACpkPw==
dependencies:
escape-string-regexp "^1.0.5"
lodash.deburr "^4.1.0"
"@sindresorhus/transliterate" "^0.1.1"
escape-string-regexp "^4.0.0"
"@sindresorhus/slugify@^0.11.0":
version "0.11.0"
resolved "https://registry.yarnpkg.com/@sindresorhus/slugify/-/slugify-0.11.0.tgz#642acb99adefa4187285fd17de88745afc161de8"
integrity sha512-ECTZT6z1hYDsopRh8GECaQ5L6hoJHVd4uq5hPi8se9GB31tgtZfnlM8G64hZVhJNmtJ9eIK0SuNhtsaPQStXEQ==
dependencies:
"@sindresorhus/transliterate" "^0.1.0"
escape-string-regexp "^2.0.0"
"@sindresorhus/transliterate@^0.1.0":
version "0.1.0"
resolved "https://registry.yarnpkg.com/@sindresorhus/transliterate/-/transliterate-0.1.0.tgz#c063bfc4102783fb19c91c2f8c1efb3adfb754be"
integrity sha512-bO6v0M0EuJPjm5Ntfow4nk+r3EZQ41n0ahvAmh766FzPqlm6V/2uDc01vZI3gLeI/1lgV2BTMb6QvxOk9z73ng==
"@sindresorhus/transliterate@^0.1.1":
version "0.1.1"
resolved "https://registry.yarnpkg.com/@sindresorhus/transliterate/-/transliterate-0.1.1.tgz#779b31244781d3c898f185b61d58c89e7c782674"
integrity sha512-QSdIQ5keUFAZ3KLbfbsntW39ox0Ym8183RqTwBq/ZEFoN3NQAtGV+qWaNdzKpIDHgj9J2CQ2iNDRVU11Zyr7MQ==
dependencies:
escape-string-regexp "^2.0.0"
lodash.deburr "^4.1.0"
@ -7334,6 +7326,11 @@ escape-string-regexp@^2.0.0:
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
escape-string-regexp@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
escodegen@1.8.x:
version "1.8.1"
resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018"