lemmy-ui/src/shared/components/common/paginator.tsx
Dessalines c5fd084577
Using auto-generated types from ts-rs. (#1003)
* Using auto-generated types from ts-rs.

- Fixes #998
- Added support for new `GetFederatedInstances`
- Fixed a few bugs in the process.

* Update imports to use SleeplessOne1917's fix.
2023-05-11 14:32:32 -04:00

40 lines
907 B
TypeScript

import { Component, linkEvent } from "inferno";
import { i18n } from "../../i18next";
interface PaginatorProps {
page: bigint;
onChange(val: bigint): any;
}
export class Paginator extends Component<PaginatorProps, any> {
constructor(props: any, context: any) {
super(props, context);
}
render() {
return (
<div className="my-2">
<button
className="btn btn-secondary mr-2"
disabled={this.props.page == 1n}
onClick={linkEvent(this, this.handlePrev)}
>
{i18n.t("prev")}
</button>
<button
className="btn btn-secondary"
onClick={linkEvent(this, this.handleNext)}
>
{i18n.t("next")}
</button>
</div>
);
}
handlePrev(i: Paginator) {
i.props.onChange(i.props.page - 1n);
}
handleNext(i: Paginator) {
i.props.onChange(i.props.page + 1n);
}
}