docs: DRY up docs footer timestamp; add link to open issue (#5928)

Fixes #4707
This commit is contained in:
Jamil
2024-07-21 07:20:00 -07:00
committed by GitHub
parent ab8d6dca1e
commit 1205cf8700
61 changed files with 120 additions and 411 deletions

View File

@@ -1,7 +1,16 @@
import fs from "fs";
import path from "path";
import LastUpdated from "@/components/LastUpdated";
import DocsSidebar from "@/components/DocsSidebar";
import Banner from "./banner.mdx";
export default function Layout({ children }: { children: React.ReactNode }) {
// timestamps.json was generated during build
const timestampsFile = path.resolve("timestamps.json");
const timestampsData = fs.readFileSync(timestampsFile, "utf-8");
const timestamps = JSON.parse(timestampsData);
return (
<div className="flex">
<DocsSidebar />
@@ -11,6 +20,9 @@ export default function Layout({ children }: { children: React.ReactNode }) {
<Banner />
{children}
</article>
<div className="mt-8 flex flex-wrap justify-end text-sm text-neutral-600">
<LastUpdated timestamps={timestamps} />
</div>
</div>
</main>
</div>

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Backup and Restore • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Viewing Logs • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Administer • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Troubleshooting Guide • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Uninstall Firezone • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Upgrading • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Architecture: Core Components • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Architecture: Critical Sequences • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Architecture: Overview • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Architecture: Security Controls • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Architecture: Stack • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Directory Sync • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Email Authentication • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Microsoft Entra ID Authentication • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Google Workspace Authentication • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "JumpCloud Authentication • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "FusionAuth • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "OIDC Authentication • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Okta Authentication • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Authentication Overview • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Service Accounts • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Docker Compose • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import { Metadata } from "next";
import _Page from "./_page";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Automate • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import { Metadata } from "next";
import _Page from "./_page";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Deploy Firezone on AWS • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import { Metadata } from "next";
import _Page from "./_page";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Deploy Firezone on Azure • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import { Metadata } from "next";
import _Page from "./_page";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Deploy Firezone on GCP • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Clients • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Configure DNS • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Gateways • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Groups • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import { Metadata } from "next";
import _Page from "./_page";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Deploy • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Policies • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Resources • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Sites • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Users • Firezone Deploy Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,16 @@
import fs from "fs";
import path from "path";
import LastUpdated from "@/components/LastUpdated";
import DocsFeedback from "@/components/DocsFeedback";
import KbSidebar from "@/components/KbSidebar";
export default function Layout({ children }: { children: React.ReactNode }) {
// timestamps.json was generated during build
const timestampsFile = path.resolve("timestamps.json");
const timestampsData = fs.readFileSync(timestampsFile, "utf-8");
const timestamps = JSON.parse(timestampsData);
return (
<div className="flex">
<KbSidebar />
@@ -9,6 +19,10 @@ export default function Layout({ children }: { children: React.ReactNode }) {
<article className="max-w-full md:max-w-md lg:max-w-3xl xl:max-w-4xl tracking-[-0.01em] format format-sm md:format-md lg:format-lg format-firezone">
{children}
</article>
<div className="mt-8 flex justify-between flex-wrap text-sm text-neutral-600">
<DocsFeedback />
<LastUpdated timestamps={timestamps} />
</div>
</div>
</main>
</div>

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Docs • Firezone",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Quickstart • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "FAQ • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import { Metadata } from "next";
import Content from "./readme.mdx";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Glossary • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,5 +1,4 @@
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
import _Page from "./_page";
export const metadata: Metadata = {
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases: NAT Gateway • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases: Postgres Access • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases: Private Network Access • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases: Public SaaS Access • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases: Scale VPC Access • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases: Secure DNS • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import _Page from "./_page";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Use Cases: Private Web App Access • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Android & ChromeOS Client • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "iOS Client • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Linux Headless Client • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Linux GUI Client • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "macOS Client • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "User Guides • Firezone Docs",
@@ -9,10 +8,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import Content from "./readme.mdx";
import { Metadata } from "next";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Windows Client • Firezone Docs",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<Content />
<LastUpdated dirname={__dirname} />
</>
);
return <Content />;
}

View File

@@ -1,6 +1,5 @@
import { Metadata } from "next";
import _Page from "./_page";
import LastUpdated from "@/components/LastUpdated";
export const metadata: Metadata = {
title: "Support • Firezone",
@@ -8,10 +7,5 @@ export const metadata: Metadata = {
};
export default function Page() {
return (
<>
<_Page />
<LastUpdated dirname={__dirname} />
</>
);
return <_Page />;
}

View File

@@ -0,0 +1,23 @@
"use client";
import Link from "next/link";
import { usePathname } from "next/navigation";
export default function DocsFeedback() {
const pathname = usePathname();
const issueUrl = new URL(
`https://www.github.com/firezone/firezone/issues/new?title=docs: Feedback for page \`${pathname}\``
);
return (
<div>
Found a problem with this page?{" "}
<Link
href={issueUrl}
className="text-accent-500 underline hover:no-underline"
>
Open an issue
</Link>
</div>
);
}

View File

@@ -1,27 +1,19 @@
import fs from "fs";
import path from "path";
"use client";
export default function LastUpdated({ dirname }: { dirname: string }) {
// timestamps.json was generated during build
const timestampsFile = path.resolve("timestamps.json");
const timestampsData = fs.readFileSync(timestampsFile, "utf-8");
const timestamps = JSON.parse(timestampsData);
import { usePathname } from "next/navigation";
// Hack to get the path to the readme file
const filePath = path.join(
"src",
dirname.split(".next/server")[1],
"readme.mdx"
);
type Timestamps = { [key: string]: string };
const timestamp = timestamps[filePath];
export default function LastUpdated({
timestamps,
}: {
timestamps: Timestamps;
}) {
const pathname = usePathname();
const timestamp = timestamps[pathname];
if (timestamp) {
return (
<div className="flex justify-end text-sm text-gray-500">
Last updated: {timestamp}
</div>
);
return <div>Last updated: {timestamp}</div>;
} else {
return null;
}

View File

@@ -10,6 +10,10 @@ find src -name "*.mdx" | while read -r f; do
# Get the last modified date
last_modified=$(git log -1 --format="%ad" --date=format:'%B %d, %Y' -- "$f")
# Strip src/app prefix and /readme.mdx suffix to turn file path into URL path
f=${f#"src/app"}
f=${f%"/readme.mdx"}
if [ -s "$json_file" ]; then
echo ",\"$f\":\"$last_modified\"" >>"$json_file"
else