From 3221034c95607cd1bb389500ba38c35f95d68dc9 Mon Sep 17 00:00:00 2001
From: miloschwartz
Date: Sun, 27 Apr 2025 22:55:08 -0400
Subject: [PATCH] rearrange
---
.../{ => 02-Getting Started}/01-overview.md | 0
...choosing-a-vps.md => 07-choosing-a-vps.md} | 0
.../img/system-diagram.svg | 0
.../02-auto-provision.md | 2 +-
.../03-Pangolin/07-API/01-integration-api.md | 10 +-
packages/docusaurus/docusaurus.config.ts | 26 +--
packages/docusaurus/src/pages/index.tsx | 2 +-
packages/docusaurus/src/pages/pricing.tsx | 151 ++++++++++--------
8 files changed, 109 insertions(+), 82 deletions(-)
rename packages/docusaurus/docs/{ => 02-Getting Started}/01-overview.md (100%)
rename packages/docusaurus/docs/02-Getting Started/{01-choosing-a-vps.md => 07-choosing-a-vps.md} (100%)
rename packages/docusaurus/docs/{ => 02-Getting Started}/img/system-diagram.svg (100%)
diff --git a/packages/docusaurus/docs/01-overview.md b/packages/docusaurus/docs/02-Getting Started/01-overview.md
similarity index 100%
rename from packages/docusaurus/docs/01-overview.md
rename to packages/docusaurus/docs/02-Getting Started/01-overview.md
diff --git a/packages/docusaurus/docs/02-Getting Started/01-choosing-a-vps.md b/packages/docusaurus/docs/02-Getting Started/07-choosing-a-vps.md
similarity index 100%
rename from packages/docusaurus/docs/02-Getting Started/01-choosing-a-vps.md
rename to packages/docusaurus/docs/02-Getting Started/07-choosing-a-vps.md
diff --git a/packages/docusaurus/docs/img/system-diagram.svg b/packages/docusaurus/docs/02-Getting Started/img/system-diagram.svg
similarity index 100%
rename from packages/docusaurus/docs/img/system-diagram.svg
rename to packages/docusaurus/docs/02-Getting Started/img/system-diagram.svg
diff --git a/packages/docusaurus/docs/03-Pangolin/06-Identity Providers/02-auto-provision.md b/packages/docusaurus/docs/03-Pangolin/06-Identity Providers/02-auto-provision.md
index 997ecaf..aaf28e6 100644
--- a/packages/docusaurus/docs/03-Pangolin/06-Identity Providers/02-auto-provision.md
+++ b/packages/docusaurus/docs/03-Pangolin/06-Identity Providers/02-auto-provision.md
@@ -1,4 +1,4 @@
-# Auto Provision (Professional)
+# Auto Provision
:::note
diff --git a/packages/docusaurus/docs/03-Pangolin/07-API/01-integration-api.md b/packages/docusaurus/docs/03-Pangolin/07-API/01-integration-api.md
index 1322b45..94583f4 100644
--- a/packages/docusaurus/docs/03-Pangolin/07-API/01-integration-api.md
+++ b/packages/docusaurus/docs/03-Pangolin/07-API/01-integration-api.md
@@ -1,4 +1,4 @@
-# Integration API (Professional)
+# Integration API
:::note
@@ -22,6 +22,10 @@ Organization API keys can be created by organization admins from the Organizatio
When you create or edit an API key, you can select the permissions that the API key will have. This allows you to create API keys with only the permissions that you need.
+## Swagger Docs
+
+OpenAPI documentation is served via Swagger UI. You can access the documentation at `https://api.example.com/v1/docs`.
+
## Configure Integration API
The below example shows how to expose the Integration API. It will be accessible at `https://api.example.com/v1`.
@@ -69,7 +73,3 @@ http:
servers:
- url: "http://pangolin:3003" # Integration API
```
-
-## Swagger Docs
-
-OpenAPI documentation is served via Swagger UI. You can access the documentation at `https://api.example.com/v1/docs`.
diff --git a/packages/docusaurus/docusaurus.config.ts b/packages/docusaurus/docusaurus.config.ts
index 1da32ad..da177e8 100644
--- a/packages/docusaurus/docusaurus.config.ts
+++ b/packages/docusaurus/docusaurus.config.ts
@@ -50,17 +50,17 @@ const config: Config = {
blog: {
showReadingTime: true,
feedOptions: {
- type: ['rss', 'atom'],
- xslt: true,
+ type: ["rss", "atom"],
+ xslt: true
},
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
- // editUrl:
- // 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
+ // editUrl:
+ // 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
// Useful options to enforce blogging best practices
- onInlineTags: 'warn',
- onInlineAuthors: 'warn',
- onUntruncatedBlogPosts: 'warn',
+ onInlineTags: "warn",
+ onInlineAuthors: "warn",
+ onUntruncatedBlogPosts: "warn"
},
theme: {
customCss: "./src/css/custom.css"
@@ -102,9 +102,9 @@ const config: Config = {
type: "docSidebar",
sidebarId: "tutorialSidebar",
position: "left",
- label: "Docs",
+ label: "Docs"
},
- {to: '/pricing', label: 'Pricing', position: 'left'},
+ { to: "/pricing", label: "Pricing", position: "left" },
{
href: "https://fossorial.io",
label: "fossorial.io",
@@ -123,9 +123,9 @@ const config: Config = {
},
{
href: "https://support.fossorial.io",
- label: "Support Portal (Professional License)",
+ label: "Support Portal",
position: "left"
- },
+ }
]
},
// footer: {
@@ -198,18 +198,20 @@ const config: Config = {
docsPluginId: "classic", // configured for preset-classic
config: {
petstore: {
+ hideSendButton: true,
specPath: "./openapi.yml",
outputDir: "docs/03-Pangolin/07-API/02-Routes",
sidebarOptions: {
groupPathsBy: "tag",
categoryLinkSource: "tag",
+ sidebarCollapsible: true
}
} satisfies OpenApiPlugin.Options
}
}
]
],
- themes: ["docusaurus-theme-openapi-docs"], // export theme components
+ themes: ["docusaurus-theme-openapi-docs"] // export theme components
};
export default config;
diff --git a/packages/docusaurus/src/pages/index.tsx b/packages/docusaurus/src/pages/index.tsx
index 5cbfc87..e7dd356 100644
--- a/packages/docusaurus/src/pages/index.tsx
+++ b/packages/docusaurus/src/pages/index.tsx
@@ -3,7 +3,7 @@ import { useEffect } from "react";
export default function Home(): JSX.Element {
useEffect(() => {
// redirect to /overview
- window.location.href = "/overview";
+ window.location.href = "/Getting%20Started/overview";
});
return <>>;
diff --git a/packages/docusaurus/src/pages/pricing.tsx b/packages/docusaurus/src/pages/pricing.tsx
index b4852db..58e46c2 100644
--- a/packages/docusaurus/src/pages/pricing.tsx
+++ b/packages/docusaurus/src/pages/pricing.tsx
@@ -94,6 +94,9 @@ const PricingComponent = () => {
Check out the Supporter Program
+
+ Free
+
+
+ You can then create support tickets in the{" "}
+ support portal.
+
- What is the difference between this and the Supporter Program?
+
+ What is the difference between this and the Supporter Program?
+
The Supporter Program is a way to support the project and remove the
support marks. It is a one time donation. No features are unlocked.
@@ -419,93 +442,91 @@ const PricingComponent = () => {
const styles = {
container: {
display: "flex",
- flexDirection: "column",
+ flexDirection: "column" as const,
alignItems: "center",
padding: "24px",
backgroundColor: "var(--ifm-background-color)",
minHeight: "100vh",
- fontFamily: "system-ui, -apple-system, sans-serif"
+ fontFamily: "var(--ifm-font-family-base)"
},
heading: {
fontSize: "30px",
fontWeight: "bold",
marginBottom: "48px",
- color: "#111827"
+ color: "var(--ifm-font-color-base)"
},
pricingContainer: {
display: "flex",
- flexDirection: "row",
+ flexDirection: "row" as const,
justifyContent: "center",
gap: "24px",
width: "100%",
padding: "24px",
- flexWrap: "wrap"
+ flexWrap: "wrap" as const
},
card: {
- backgroundColor: "var(--ifm-card-background-color, white)",
+ backgroundColor: "var(--ifm-background-color)",
borderRadius: "8px",
- boxShadow: "0 1px 3px 0 rgba(0, 0, 0, 0.1)",
+ boxShadow: "var(--ifm-global-shadow-lw)",
padding: "24px",
- border: "1px solid var(--ifm-color-emphasis-300, #e5e7eb)",
- position: "relative",
- overflow: "hidden",
+ border: "1px solid var(--ifm-color-emphasis-300)",
+ position: "relative" as const,
+ overflow: "hidden" as const,
width: "300px",
flex: "1 1 300px",
maxWidth: "400px",
minHeight: "500px",
display: "flex",
- flexDirection: "column"
+ flexDirection: "column" as const
},
- // card that spans the entire width of the container with the same styles as the other cards and spacing on the sides
cardLarge: {
- backgroundColor: "var(--ifm-card-background-color, white)",
+ backgroundColor: "var(--ifm-background-color)",
borderRadius: "8px",
- boxShadow: "0 1px 3px 0 rgba(0, 0, 0, 0.1)",
+ boxShadow: "var(--ifm-global-shadow-lw)",
padding: "24px",
- border: "1px solid var(--ifm-color-emphasis-300, #e5e7eb)",
- position: "relative",
- overflow: "hidden",
+ border: "1px solid var(--ifm-color-emphasis-300)",
+ position: "relative" as const,
+ overflow: "hidden" as const,
width: "100%",
flex: "1 1 100%",
maxWidth: "1250px",
minHeight: "500px",
display: "flex",
- flexDirection: "column",
- // margin: "0 24px",
+ flexDirection: "column" as const,
marginBottom: "24px",
zIndex: "1"
},
highlightedCard: {
- backgroundColor: "var(--ifm-card-background-color, white)",
+ backgroundColor: "var(--ifm-background-color)",
borderRadius: "8px",
- boxShadow: "0 4px 6px -1px rgba(0, 0, 0, 0.1)",
+ boxShadow: "var(--ifm-global-shadow-lw)",
padding: "24px",
- border: "1px solid var(--ifm-color-primary, hsl(24.6, 95%, 53.1%))",
- position: "relative",
- overflow: "hidden",
+ border: "1px solid var(--ifm-color-primary)",
+ position: "relative" as const,
+ overflow: "hidden" as const,
width: "300px",
flex: "1 1 300px",
maxWidth: "400px",
minHeight: "500px",
display: "flex",
- flexDirection: "column",
+ flexDirection: "column" as const,
zIndex: "1"
},
freeTag: {
- position: "absolute",
+ position: "absolute" as const,
top: "0",
right: "0",
- backgroundColor: "var(--ifm-color-emphasis-200, #e5e7eb)",
+ backgroundColor: "var(--ifm-color-emphasis-200)",
padding: "4px 12px",
fontSize: "12px",
fontWeight: "600"
},
popularTag: {
- position: "absolute",
+ position: "absolute" as const,
top: "0",
right: "0",
- backgroundColor: "var(--ifm-color-primary, hsl(24.6, 95%, 53.1%))",
- color: "var(--ifm-color-white, white)",
+ backgroundColor: "var(--ifm-color-primary)",
+ color: "var(--ifm-color-white)",
padding: "4px 12px",
fontSize: "12px",
fontWeight: "600"
@@ -513,8 +534,8 @@ const styles = {
cardTitle: {
fontSize: "20px",
fontWeight: "bold",
- marginBottom: "16px"
- // color: 'var(--ifm-heading-color, #111827)'
+ marginBottom: "16px",
+ color: "var(--ifm-font-color-base)"
},
featureList: {
listStyleType: "none",
@@ -526,19 +547,20 @@ const styles = {
display: "flex",
alignItems: "center",
marginBottom: "8px",
- fontSize: "14px"
+ fontSize: "14px",
+ color: "var(--ifm-font-color-base)"
},
checkIcon: {
width: "16px",
height: "16px",
marginRight: "8px",
- color: "#10b981"
+ color: "var(--ifm-color-primary)"
},
buttonSecondary: {
width: "100%",
padding: "8px 16px",
- backgroundColor: "var(--ifm-color-emphasis-200, #e5e7eb)",
- color: "var(--ifm-color-emphasis-900, #111827)",
+ backgroundColor: "var(--ifm-color-emphasis-200)",
+ color: "var(--ifm-font-color-base)",
border: "none",
borderRadius: "6px",
fontWeight: "500",
@@ -550,8 +572,8 @@ const styles = {
buttonPrimary: {
width: "100%",
padding: "8px 16px",
- backgroundColor: "var(--ifm-color-primary, hsl(24.6, 95%, 53.1%))",
- color: "var(--ifm-color-white, white)",
+ backgroundColor: "var(--ifm-color-primary)",
+ color: "var(--ifm-color-white)",
border: "none",
borderRadius: "6px",
fontWeight: "500",
@@ -567,7 +589,8 @@ const styles = {
display: "block",
marginBottom: "8px",
fontWeight: "500",
- fontSize: "14px"
+ fontSize: "14px",
+ color: "var(--ifm-font-color-base)"
},
counterControls: {
display: "flex",
@@ -580,7 +603,7 @@ const styles = {
display: "flex",
alignItems: "center",
justifyContent: "center",
- backgroundColor: "var(--ifm-color-emphasis-200, #f3f4f6)",
+ backgroundColor: "var(--ifm-color-emphasis-200)",
border: "none",
borderRadius: "6px",
cursor: "pointer"
@@ -589,35 +612,37 @@ const styles = {
width: "48px",
height: "32px",
margin: "0 8px",
- textAlign: "center",
- border: "1px solid #d1d5db",
- borderRadius: "6px"
+ textAlign: "center" as const,
+ border: "1px solid var(--ifm-color-emphasis-300)",
+ borderRadius: "6px",
+ backgroundColor: "var(--ifm-background-color)",
+ color: "var(--ifm-font-color-base)"
},
priceDisplay: {
fontSize: "24px",
fontWeight: "bold",
- marginBottom: "16px"
- // color: 'var(--ifm-heading-color, #111827)'
+ marginBottom: "16px",
+ color: "var(--ifm-font-color-base)"
},
pricePeriod: {
fontSize: "14px",
fontWeight: "normal",
- color: "var(--ifm-color-emphasis-600, #6b7280)",
+ color: "var(--ifm-color-emphasis-600)",
marginLeft: "4px"
},
priceBreakdown: {
fontSize: "14px",
- color: "var(--ifm-color-emphasis-600, #6b7280)",
+ color: "var(--ifm-color-emphasis-600)",
marginBottom: "16px"
},
customPricing: {
fontSize: "20px",
fontWeight: "bold",
- marginBottom: "16px"
- // color: 'var(--ifm-heading-color, #111827)'
+ marginBottom: "16px",
+ color: "var(--ifm-font-color-base)"
},
textMuted: {
- color: "var(--ifm-color-emphasis-600, #6b7280)",
+ color: "var(--ifm-color-emphasis-600)",
fontSize: "14px",
marginBottom: "16px"
}