All files / src/app/contents index.tsx

100% Statements 17/17
100% Branches 5/5
100% Functions 2/2
100% Lines 17/17

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 331x                           1x 7x 7x 7x 7x   7x   7x 7x 7x 3x 7x 1x 7x 3x 7x 7x  
import type { Path } from "glob";
import { ViewTypes } from "../../utils/view-types";
import { List } from "./list";
import { Table } from "./table";
 
export type P = ContentProps & {
	viewType: ViewTypes;
};
 
export type ContentProps = {
	files: Path[];
	isRoot: boolean;
};
 
export function Contents(props: P) {
	return (
		<main>
			<Switcher {...props} />
		</main>
	);
}
 
function Switcher({ viewType, ...contentProps }: P) {
	switch (viewType) {
		case ViewTypes.Table:
			return <Table {...contentProps} />;
		case ViewTypes.List:
			return <List {...contentProps} />;
		default:
			return <Table {...contentProps} />;
	}
}