bananas-commerce-admin
Version:
What's this, an admin for apes?
54 lines • 3.23 kB
JavaScript
import React from "react";
import { Button, TableBody } from "@mui/material";
import ActionBar from "../../../../components/ActionBar";
import { Header } from "../../../../components/Header";
import { Page } from "../../../../components/Page";
import SearchBar from "../../../../components/SearchBar";
import Table from "../../../../components/Table";
import TableHead from "../../../../components/Table/TableHead";
import TableHeading from "../../../../components/Table/TableHeading";
import TableCard from "../../../../components/TableCard";
import { TitleBar } from "../../../../components/TitleBar";
import Content, { ContentWrapperWithActionBar } from "../../../../containers/Content";
import { useI18n } from "../../../../contexts/I18nContext";
import { useRouter } from "../../../../contexts/RouterContext";
import { useUser } from "../../../../contexts/UserContext";
import { hasPermission } from "../../../../util/has_permission";
import { ArticleRow } from "../../components/ArticleRow";
const ArticleListPage = ({ data }) => {
const { navigate } = useRouter();
const { user } = useUser();
const { t } = useI18n();
return (React.createElement(Page, null,
React.createElement(Header, null,
React.createElement(TitleBar, { title: t("Articles") },
React.createElement(SearchBar, { defaultValue: new URLSearchParams(window.location.search).get("search") ?? "", placeholder: t("Search for code, name or variant…"), onSubmit: (input) => {
if (input === "") {
navigate("catalog.article:list", {
replace: true,
});
}
else {
navigate("catalog.article:list", {
query: {
search: input,
},
replace: true,
});
}
} }))),
React.createElement(ContentWrapperWithActionBar, null,
React.createElement(Content, { layout: "fullWidth" },
React.createElement(TableCard, null,
React.createElement(Table, { pagination: true, count: data?.count },
React.createElement(TableHead, null,
React.createElement(TableHeading, null, t("Name")),
React.createElement(TableHeading, null, t("Variant")),
React.createElement(TableHeading, null, t("Type")),
React.createElement(TableHeading, null, t("Article Number"))),
React.createElement(TableBody, null, data?.results.map((article) => React.createElement(ArticleRow, { key: article.id, article: article })))))),
hasPermission(user, "catalog.add_article") && (React.createElement(ActionBar, null,
React.createElement(Button, { color: "primary", variant: "contained", onClick: () => navigate("catalog.article:create") }, t("Create article")))))));
};
export default ArticleListPage;
//# sourceMappingURL=list.js.map