<script module lang="ts">
	import { defineMeta } from "@storybook/addon-svelte-csf";
	import FileTree from "./FileTree.svelte";

	const entries = [
		{
			name: "src",
			kind: "directory" as const,
			size: 0,
			lastCommitHash: "0123456789abcdef",
			lastCommitWhen: "2026-07-28T09:00:00Z",
			lastCommitMessage: "refactor: move the components"
		},
		{
			name: "README.md",
			kind: "file" as const,
			size: 512,
			lastCommitHash: "abcdef0123456789",
			lastCommitWhen: "2026-07-27T09:00:00Z",
			lastCommitMessage: "docs: explain the project"
		},
		{ name: "LICENSE", kind: "file" as const, size: 1024 },
		{ name: "docs", kind: "directory" as const, size: 0 },
		{ name: "linked-lib", kind: "symlink" as const, size: 0 },
		{ name: "dependency", kind: "submodule" as const, size: 0 }
	];

	const { Story } = defineMeta({
		title: "Repo/FileTree",
		component: FileTree,
		tags: ["autodocs"],
		args: {
			ownerHandle: "dawn",
			repoName: "tangled",
			ref: "main",
			entries
		}
	});
</script>

<Story name="File kinds and timestamps" />
<Story name="Commit message column" args={{ withMessage: true }} />
<Story name="Nested path links" args={{ path: "src/lib" }} />
<Story name="No entries" args={{ entries: [] }} />
