import ArrowButton from '../button/ArrowButton';
import PageNumberButton from '../button/PageNumberButton';
import BasePageList from './BasePageList';
export default class NormalPageList extends BasePageList {
state = {
activeDoubleArrowButton: '',
};
render() {
const { layout, buttonBordered, lastPageHelp } = this.props;
const { activeDoubleArrowButton } = this.state;
return (
{layout.map(btn => {
const { type } = btn;
if (type === 'number') {
const { page, selected } = btn;
return (
{page}
);
}
if (type === 'left-arrow') {
return (
);
}
if (type === 'right-arrow') {
return (
);
}
if (type === 'double-left-arrow') {
return (
);
}
if (type === 'double-right-arrow') {
return (
);
}
return null;
})}
);
}
onPrevPage = this.jumpToPageDelta(-1, this.resetActiveDoubleArrowButton);
onNextPage = this.jumpToPageDelta(1, this.resetActiveDoubleArrowButton);
onFastForwardPrevPage = this.jumpToPageDelta(-5, () => {
this.setState({
activeDoubleArrowButton: 'left',
});
});
onFastForwardNextPage = this.jumpToPageDelta(5, () => {
this.setState({
activeDoubleArrowButton: 'right',
});
});
resetActiveDoubleArrowButton = () => {
this.setState({
activeDoubleArrowButton: '',
});
};
}