docs: prep for v2 documentation (#6710)

This PR includes documentation that preps for v2 docs (but doesn't introduce new docs).

_Note: The number of file changes in the PR is due to find-and-replace within the `references` which is unavoidable. Let me know if I should move it to another PR._

## Changes

- Change Medusa version in base OAS used for v2.
- Fix to docblock generator related to not catching all path parameters.
- Added typedoc plugin that generates ER Diagrams, which will be used specifically for data model references in commerce modules.
- Changed OAS tool to output references in `www/apps/api-reference/specs-v2` directory when the `--v2` option is used.
- Added a version switcher to the API reference to switch between V1 and V2. This switcher is enabled by an environment variable, so it won't be visible/usable at the moment.
- Upgraded docusaurus to v3.0.1
- Added new Vale rules to ensure correct spelling of Medusa Admin and module names.
- Added new components to the `docs-ui` package that will be used in future documentation changes.
This commit is contained in:
Shahed Nasser
2024-03-18 07:47:35 +00:00
committed by GitHub
parent 56a6ec0227
commit bb87db8342
2008 changed files with 15716 additions and 10536 deletions
+4 -79
View File
@@ -1,6 +1,6 @@
"use client"
import { Text, clx } from "@medusajs/ui"
import { clx } from "@medusajs/ui"
import { useMDXComponent } from "next-contentlayer/hooks"
import * as React from "react"
@@ -12,46 +12,14 @@ import { PackageInstall } from "@/components/package-install"
import { Feedback } from "@/components/feedback"
import { FigmaIcon } from "@/components/figma-icon"
import { ComponentReference } from "@/components/component-reference"
import clsx from "clsx"
import { NextLink, Card, BorderedIcon, CodeMdx, CodeBlock } from "docs-ui"
import { Link, Card, BorderedIcon, MDXComponents, CodeBlock } from "docs-ui"
interface MdxProps {
code: string
}
const components = {
h1: ({ className, ...props }: React.HTMLAttributes<HTMLHeadingElement>) => {
return (
<h1
className={clx("h1-docs text-medusa-fg-base", className)}
{...props}
/>
)
},
h2: ({ className, ...props }: React.HTMLAttributes<HTMLHeadingElement>) => {
return (
<h2
className={clx("h2-docs mb-4 mt-16 text-medusa-fg-base", className)}
{...props}
/>
)
},
h3: ({ className, ...props }: React.HTMLAttributes<HTMLHeadingElement>) => {
return (
<h3
className={clx("h3-docs mb-2 mt-10 text-medusa-fg-base", className)}
{...props}
/>
)
},
p: ({ className, ...props }: React.HTMLAttributes<HTMLParagraphElement>) => {
return (
<Text
className={clx("text-medusa-fg-subtle mb-docs_1.5", className)}
{...props}
/>
)
},
...MDXComponents,
a: ({
className,
href,
@@ -60,7 +28,7 @@ const components = {
const isInternal = href && href?.startsWith("/")
if (isInternal) {
return <NextLink className={className} href={href} {...props} />
return <Link className={className} href={href} {...props} />
}
return (
@@ -76,49 +44,6 @@ const components = {
/>
)
},
code: CodeMdx,
ul: ({
className,
children,
...props
}: React.HTMLAttributes<HTMLUListElement>) => {
return (
<ul
{...props}
className={clsx("list-disc px-docs_1 mb-docs_1.5", className)}
>
{children}
</ul>
)
},
ol: ({
className,
children,
...props
}: React.HTMLAttributes<HTMLOListElement>) => {
return (
<ol
{...props}
className={clsx("list-decimal px-docs_1 mb-docs_1.5", className)}
>
{children}
</ol>
)
},
li: ({
className,
children,
...props
}: React.HTMLAttributes<HTMLElement>) => {
return (
<li className={clx("text-medusa-fg-subtle", className)} {...props}>
<Text>{children}</Text>
</li>
)
},
hr: ({ className, ...props }: React.HTMLAttributes<HTMLHRElement>) => {
return <hr className={clx("mb-4", className)} {...props} />
},
HookValues,
CodeBlock,
ComponentExample,
@@ -1,5 +1,5 @@
import { clx } from "@medusajs/ui"
import { CodeTabs } from "docs-ui"
import { LegacyCodeTabs } from "docs-ui"
type PackageInstallProps = {
packageName: string
@@ -21,7 +21,7 @@ const PackageInstall = ({
const pnpm = `pnpm add ${devDependency ? "-D " : ""}${pkg}`
return (
<CodeTabs
<LegacyCodeTabs
tabs={[
{ code: { lang: "bash", source: npm }, label: "npm", value: "npm" },
{ code: { lang: "bash", source: yarn }, label: "yarn", value: "yarn" },