Compare commits
4
Commits
adeb21be19
..
v1.0.3
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
14158047ac | ||
|
|
e5fb28ef31 | ||
|
|
e7b2b9add2 | ||
|
|
5574ffd1c8 |
+2
-2
@@ -7,8 +7,8 @@ When `auth.enabled: true`, every endpoint below except `/api/healthz`, `/api/aut
|
||||
header using a token from `triggershell users add-token`.
|
||||
|
||||
`triggershell run <scriptId>` is a first-party client of this exact REST + WS contract (see
|
||||
[Running scripts from the CLI](../README.md#running-scripts-from-the-cli)) - nothing below is
|
||||
CLI-specific.
|
||||
[Running scripts from the CLI](https://dev.pivoine.art/valknar/triggershell/src/branch/main/README.md#running-scripts-from-the-cli)) -
|
||||
nothing below is CLI-specific.
|
||||
|
||||
## Auth
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ export default async function DocPage({ params }: DocPageProps) {
|
||||
if (content === null) notFound();
|
||||
|
||||
return (
|
||||
<div className="mx-auto flex max-w-3xl flex-col gap-6">
|
||||
<div className="mx-auto flex max-w-5xl flex-col gap-6">
|
||||
<Link
|
||||
href="/docs"
|
||||
className="text-muted-foreground hover:text-foreground flex w-fit items-center gap-1 text-sm"
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
import { NotFoundContent } from "@/components/layout/not-found-content";
|
||||
|
||||
export default function NotFound() {
|
||||
return <NotFoundContent />;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
import { NotFoundContent } from "@/components/layout/not-found-content";
|
||||
|
||||
export default function NotFound() {
|
||||
return <NotFoundContent />;
|
||||
}
|
||||
@@ -2,6 +2,19 @@ import ReactMarkdown from "react-markdown";
|
||||
import remarkGfm from "remark-gfm";
|
||||
import { cn } from "@/lib/utils";
|
||||
|
||||
// GFM tables (the config reference's Field/Type/Default/Notes tables) are wider than a phone
|
||||
// screen and don't wrap - without their own scroll container the table forces the whole page
|
||||
// to scroll horizontally instead. The typography plugin's table styles still apply to `table`
|
||||
// here (its selectors match any descendant, not just direct children of `.prose`), so this
|
||||
// wrapper only adds the scroll boundary.
|
||||
function Table(props: React.ComponentProps<"table">) {
|
||||
return (
|
||||
<div className="overflow-x-auto">
|
||||
<table {...props} />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export function MarkdownViewer({ content }: { content: string }) {
|
||||
return (
|
||||
<div
|
||||
@@ -13,9 +26,14 @@ export function MarkdownViewer({ content }: { content: string }) {
|
||||
// elsewhere in the app (see the "no scripts configured" message on the dashboard).
|
||||
"prose-code:before:content-none prose-code:after:content-none",
|
||||
"prose-code:rounded prose-code:bg-muted prose-code:px-1.5 prose-code:py-0.5 prose-code:font-mono prose-code:font-normal prose-code:text-foreground",
|
||||
// Long unbroken strings (env var names, paths) in table cells or inline code would
|
||||
// otherwise force their column/line wider than the viewport instead of wrapping.
|
||||
"prose-td:break-words prose-th:break-words prose-code:break-words",
|
||||
)}
|
||||
>
|
||||
<ReactMarkdown remarkPlugins={[remarkGfm]}>{content}</ReactMarkdown>
|
||||
<ReactMarkdown remarkPlugins={[remarkGfm]} components={{ table: Table }}>
|
||||
{content}
|
||||
</ReactMarkdown>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
import Link from "next/link";
|
||||
import { Home } from "lucide-react";
|
||||
import { buttonVariants } from "@/components/ui/button";
|
||||
import { cn } from "@/lib/utils";
|
||||
|
||||
export function NotFoundContent() {
|
||||
return (
|
||||
<div className="mx-auto flex max-w-md flex-col items-center gap-3 py-24 text-center">
|
||||
<span className="text-primary font-mono text-6xl font-semibold tracking-tight">
|
||||
404
|
||||
</span>
|
||||
<h1 className="font-heading text-xl font-medium">Page not found</h1>
|
||||
<p className="text-muted-foreground text-sm">
|
||||
The page you’re looking for doesn’t exist or may have been
|
||||
moved.
|
||||
</p>
|
||||
<Link
|
||||
href="/"
|
||||
className={cn(
|
||||
buttonVariants({ variant: "outline", size: "sm" }),
|
||||
"mt-2",
|
||||
)}
|
||||
>
|
||||
<Home className="size-3.5" />
|
||||
Back to dashboard
|
||||
</Link>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user