Placeholders en Search
This commit is contained in:
@@ -2,6 +2,20 @@ import React from "react";
|
|||||||
import {Link} from "react-router-dom";
|
import {Link} from "react-router-dom";
|
||||||
import "./EntityList.scss"
|
import "./EntityList.scss"
|
||||||
|
|
||||||
|
const EntityPlaceholder = (props) => {
|
||||||
|
return (
|
||||||
|
<li className='entity-item pulsating'>
|
||||||
|
<Link to={props.link}>
|
||||||
|
{props.cover && <div className='cover'/>}
|
||||||
|
<div className='body'>
|
||||||
|
<span class='title'> </span>
|
||||||
|
<span className='subtitle'> </span>
|
||||||
|
</div>
|
||||||
|
</Link>
|
||||||
|
</li>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
const EntityItem = (props) => {
|
const EntityItem = (props) => {
|
||||||
return (
|
return (
|
||||||
<li className='entity-item'>
|
<li className='entity-item'>
|
||||||
@@ -21,8 +35,17 @@ const EntityItem = (props) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const EntityList = (props) => {
|
export const EntityList = (props) => {
|
||||||
const entities = props.items.map(item => <EntityItem cover={item.cover} link={item.link}
|
let entities;
|
||||||
|
|
||||||
|
if(props.placeholder){
|
||||||
|
entities = [];
|
||||||
|
for(const i of Array(props.size).keys()){
|
||||||
|
entities.push(<EntityPlaceholder key={i} cover={props.cover}/>)
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
entities = props.items.map(item => <EntityItem cover={item.cover} link={item.link}
|
||||||
title={item.title} subtitle={item.subtitle}/>);
|
title={item.title} subtitle={item.subtitle}/>);
|
||||||
|
}
|
||||||
|
|
||||||
const className = props.grid ? "grid" : "column";
|
const className = props.grid ? "grid" : "column";
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ const SearchSongs = (props) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
let songsComponent = <Fragment/>;
|
let songsComponent = <EntityList placeholder={true} size={10}/>;
|
||||||
if (songs) {
|
if (songs) {
|
||||||
const items = songs.map((song) => {
|
const items = songs.map((song) => {
|
||||||
return {
|
return {
|
||||||
@@ -99,7 +99,7 @@ const SearchDiscs = (props) => {
|
|||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
|
||||||
let discsComponent = <Fragment/>;
|
let discsComponent = <EntityList placeholder={true} size={10} cover={true}/>;
|
||||||
if (discs) {
|
if (discs) {
|
||||||
const items = discs.map((disc) => ({
|
const items = discs.map((disc) => ({
|
||||||
'cover': <CoverArt disc={disc}/>,
|
'cover': <CoverArt disc={disc}/>,
|
||||||
@@ -157,7 +157,7 @@ const SearchArtists = (props) => {
|
|||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
|
||||||
let artistsContent = <Fragment/>;
|
let artistsContent = <EntityList placeholder={true} size={10}/>;
|
||||||
if (artists) {
|
if (artists) {
|
||||||
const items = artists.map((artist) => ({
|
const items = artists.map((artist) => ({
|
||||||
'cover': null,
|
'cover': null,
|
||||||
|
|||||||
Reference in New Issue
Block a user