Files
EpicNext-Cms/e2e/ui/fixtures/furniture-jobs-harness.tsx
T
Simo 13bd3695cb
CI / check (push) Successful in 2m5s
CI / deploy (push) Successful in 1m8s
CI / publish-container (push) Successful in 1m4s
feat(studio): recover matching Nitro sources and persist import phases
2026-09-11 10:22:06 +02:00

48 lines
1.3 KiB
TypeScript

import { useState } from "react";
import { FurnitureJobHistory } from "@/components/admin/studio/furniture-jobs";
import { useFurnitureJobs } from "@/components/admin/studio/use-furniture-jobs";
export function FurnitureJobsHarness() {
const [completions, setCompletions] = useState(0);
const history = useFurnitureJobs(
() => setCompletions((value) => value + 1),
true,
);
return (
<section aria-label="Import history hook">
<button
type="button"
onClick={() => {
void history.refresh();
void history.refresh();
}}
>
Refresh twice
</button>
<button
type="button"
disabled={history.loading || !history.nextCursor}
onClick={() => void history.navigate("next")}
>
Next page
</button>
<button
type="button"
disabled={history.loading || history.page === 1}
onClick={() => void history.navigate("previous")}
>
Previous page
</button>
{window.location.search.includes("progress") && (
<FurnitureJobHistory state={history} expanded />
)}
<output aria-label="Page">{history.page}</output>
<output aria-label="Completions">{completions}</output>
<output aria-label="Loading">{String(history.loading)}</output>
<output aria-label="Jobs">
{history.jobs.map((job) => `${job.id}:${job.state}`).join(",")}
</output>
</section>
);
}