39 lines
1.3 KiB
JavaScript
39 lines
1.3 KiB
JavaScript
import { Popout } from 'shared/components/popout.mjs'
|
|
import { Highlight } from './highlight.mjs'
|
|
import { YouTube } from './youtube.mjs'
|
|
import { Figure } from './figure.mjs'
|
|
import { ReadMore } from './read-more.mjs'
|
|
import { Tab, Tabs } from './tabs.mjs'
|
|
import { TabbedExample as Example } from './tabbed-example.mjs'
|
|
import { Examples } from './examples.mjs'
|
|
import { HttpMethod, HttpStatusCode } from './http.mjs'
|
|
|
|
const Fixme = () => <p>FIXME</p>
|
|
|
|
export const MdxComponents = (app = false) => ({
|
|
// Custom components
|
|
Method: HttpMethod,
|
|
StatusCode: HttpStatusCode,
|
|
Comment: (props) => <Popout {...props} comment />,
|
|
Fixme: (props) => <Popout {...props} fixme />,
|
|
Link: (props) => <Popout {...props} link />,
|
|
Note: (props) => <Popout {...props} note />,
|
|
ReadMore: (props) => <ReadMore {...props} app={app} slug={app.slug} />,
|
|
Related: (props) => <Popout {...props} related />,
|
|
Tip: (props) => <Popout {...props} tip />,
|
|
Warning: (props) => <Popout {...props} warning />,
|
|
YouTube,
|
|
pre: (props) => <Highlight {...props} />,
|
|
img: Figure,
|
|
table: (props) => (
|
|
<table {...props} className="mdx-table table-auto w-full">
|
|
{props.children}
|
|
</table>
|
|
),
|
|
Tab,
|
|
Tabs,
|
|
Example: (props) => <Example {...props} app={app} />,
|
|
Examples: (props) => <Examples {...props} app={app} />,
|
|
PatternDocs: Fixme,
|
|
PatternOptions: Fixme,
|
|
})
|