mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Try to get more tests to pass
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
c588afb27f
commit
8068824ed3
@ -6,17 +6,18 @@
|
|||||||
import treeStyles from "./catalog-tree.module.scss";
|
import treeStyles from "./catalog-tree.module.scss";
|
||||||
import styles from "./catalog-menu.module.scss";
|
import styles from "./catalog-menu.module.scss";
|
||||||
|
|
||||||
|
import type { MouseEventHandler } from "react";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { TreeItem, TreeView } from "@material-ui/lab";
|
import { TreeItem, TreeView } from "@material-ui/lab";
|
||||||
import { Icon } from "../icon";
|
import { Icon } from "../icon";
|
||||||
import { StylesProvider } from "@material-ui/core";
|
import { StylesProvider } from "@material-ui/core";
|
||||||
import { cssNames } from "../../utils";
|
|
||||||
import type { CatalogCategory } from "../../api/catalog-entity";
|
import type { CatalogCategory } from "../../api/catalog-entity";
|
||||||
import { observer } from "mobx-react";
|
import { observer } from "mobx-react";
|
||||||
import { CatalogCategoryLabel } from "./catalog-category-label";
|
import { CatalogCategoryLabel } from "./catalog-category-label";
|
||||||
import type { IComputedValue } from "mobx";
|
import type { IComputedValue } from "mobx";
|
||||||
import { withInjectables } from "@ogre-tools/injectable-react";
|
import { withInjectables } from "@ogre-tools/injectable-react";
|
||||||
import filteredCategoriesInjectable from "../../../common/catalog/filtered-categories.injectable";
|
import filteredCategoriesInjectable from "../../../common/catalog/filtered-categories.injectable";
|
||||||
|
import { cssNames } from "../../utils";
|
||||||
|
|
||||||
export interface CatalogMenuProps {
|
export interface CatalogMenuProps {
|
||||||
activeTab: string | undefined;
|
activeTab: string | undefined;
|
||||||
@ -35,6 +36,39 @@ function getCategoryIcon(category: CatalogCategory) {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
interface TreeItemEntryProps {
|
||||||
|
tabIndex?: number;
|
||||||
|
onClick?: MouseEventHandler;
|
||||||
|
icon?: React.ReactNode;
|
||||||
|
label?: React.ReactNode;
|
||||||
|
"data-testid"?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
const TreeItemEntry = (props: TreeItemEntryProps) => (
|
||||||
|
<li
|
||||||
|
className="MuiTreeItem-root"
|
||||||
|
role="treeitem"
|
||||||
|
tabIndex={props.tabIndex ?? -1}
|
||||||
|
data-testid={props["data-testid"]}
|
||||||
|
onClick={props.onClick}
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
className="MuiTreeItem-content"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
className="MuiTreeItem-iconContainer"
|
||||||
|
>
|
||||||
|
{props.icon}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
className="MuiTypography-root MuiTreeItem-label MuiTypography-body1"
|
||||||
|
>
|
||||||
|
{props.label}
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
);
|
||||||
|
|
||||||
interface Dependencies {
|
interface Dependencies {
|
||||||
filteredCategories: IComputedValue<CatalogCategory[]>;
|
filteredCategories: IComputedValue<CatalogCategory[]>;
|
||||||
}
|
}
|
||||||
@ -55,9 +89,7 @@ const NonInjectedCatalogMenu = observer(({
|
|||||||
selected={activeTab || "browse"}
|
selected={activeTab || "browse"}
|
||||||
onNodeSelect={console.log}
|
onNodeSelect={console.log}
|
||||||
>
|
>
|
||||||
<TreeItem
|
<TreeItemEntry
|
||||||
classes={treeStyles}
|
|
||||||
nodeId="browse"
|
|
||||||
label="Browse"
|
label="Browse"
|
||||||
data-testid="*-tab"
|
data-testid="*-tab"
|
||||||
onClick={() => onItemClick("*")}
|
onClick={() => onItemClick("*")}
|
||||||
@ -71,19 +103,12 @@ const NonInjectedCatalogMenu = observer(({
|
|||||||
{
|
{
|
||||||
filteredCategories.get()
|
filteredCategories.get()
|
||||||
.map(category => (
|
.map(category => (
|
||||||
<TreeItem
|
<TreeItemEntry
|
||||||
classes={treeStyles}
|
|
||||||
icon={getCategoryIcon(category)}
|
|
||||||
key={category.getId()}
|
key={category.getId()}
|
||||||
nodeId={category.getId()}
|
icon={getCategoryIcon(category)}
|
||||||
label={<CatalogCategoryLabel category={category} />}
|
label={<CatalogCategoryLabel category={category} />}
|
||||||
data-testid={`${category.getId()}-tab`}
|
data-testid={`${category.getId()}-tab`}
|
||||||
onLabelClick={console.log}
|
onClick={() => onItemClick(category.getId())}
|
||||||
onIconClick={console.log}
|
|
||||||
onClick={() => {
|
|
||||||
console.log("clicking", category);
|
|
||||||
onItemClick(category.getId());
|
|
||||||
}}
|
|
||||||
/>
|
/>
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user