The Node.js® Website
1'use strict';
2
3import Blockquote from './components/Common/Blockquote';
4import Button from './components/Common/Button';
5import DownloadButton from './components/Downloads/DownloadButton';
6import DownloadLink from './components/Downloads/DownloadLink';
7import DownloadReleasesTable from './components/Downloads/DownloadReleasesTable';
8import BitnessDropdown from './components/Downloads/Release/BitnessDropdown';
9import BlogPostLink from './components/Downloads/Release/BlogPostLink';
10import ReleaseDownloadButton from './components/Downloads/Release/DownloadButton';
11import LinkWithArrow from './components/Downloads/Release/LinkWithArrow';
12import NpmLink from './components/Downloads/Release/NpmLink';
13import OperatingSystemDropdown from './components/Downloads/Release/OperatingSystemDropdown';
14import PlatformDropdown from './components/Downloads/Release/PlatformDropdown';
15import ReleaseCodeBox from './components/Downloads/Release/ReleaseCodeBox';
16import ReleaseStatus from './components/Downloads/Release/ReleaseStatus';
17import ReleaseVersion from './components/Downloads/Release/ReleaseVersion';
18import SourceButton from './components/Downloads/Release/SourceButton';
19import VerifyingBinariesLink from './components/Downloads/Release/VerifyingBinariesLink';
20import VersionDropdown from './components/Downloads/Release/VersionDropdown';
21import Link from './components/Link';
22import UpcomingMeetings from './components/MDX/Calendar/UpcomingMeetings';
23import MDXCodeBox from './components/MDX/CodeBox';
24import MDXCodeTabs from './components/MDX/CodeTabs';
25import MDXImage from './components/MDX/Image';
26import SearchPage from './components/MDX/SearchPage';
27import WithBadge from './components/withBadge';
28import WithBanner from './components/withBanner';
29import WithNodeRelease from './components/withNodeRelease';
30
31/**
32 * A full list of React Components that we want to pass through to MDX
33 *
34 * @satisfies {import('mdx/types').MDXComponents}
35 */
36export const mdxComponents = {
37 DownloadReleasesTable: DownloadReleasesTable,
38 // HOC for getting Node.js Release Metadata
39 WithNodeRelease: WithNodeRelease,
40 // HOC for providing Banner Data
41 WithBanner: WithBanner,
42 // HOC for providing Badge Data
43 WithBadge: WithBadge,
44 // Renders MDX CodeTabs
45 CodeTabs: MDXCodeTabs,
46 // Renders a Download Button
47 DownloadButton: DownloadButton,
48 // Renders a Download Link
49 DownloadLink: DownloadLink,
50 // Renders a Button Component for `button` tags
51 Button: Button,
52 // Renders a Search Page
53 SearchPage: SearchPage,
54 // Renders an container for Upcoming Node.js Meetings
55 UpcomingMeetings: UpcomingMeetings,
56 // Links with External Arrow
57 LinkWithArrow: LinkWithArrow,
58 // Group of components that enable you to select versions for Node.js
59 // releases and download selected versions. Uses `releaseProvider` as a provider
60 Release: {
61 // Renders a drop-down menu from which the version can select
62 VersionDropdown: VersionDropdown,
63 // Renders a drop-down menu from which the platform can select
64 PlatformDropdown: PlatformDropdown,
65 // Renders a drop-down menu from which the bitness can select
66 BitnessDropdown: BitnessDropdown,
67 // Renders a drop-down menu from which the operating system can select
68 OperatingSystemDropdown: OperatingSystemDropdown,
69 // Renders a link to the npm version of the selected release
70 NpmLink: NpmLink,
71 // Renders a release version of the selected release
72 Version: ReleaseVersion,
73 // Renders a release status of the selected release
74 Status: ReleaseStatus,
75 // Renders a Blog Post Link for the selected release
76 BlogPostLink: BlogPostLink,
77 // Renders a Verifying Binaries Link
78 VerifyingBinariesLink: VerifyingBinariesLink,
79 // Renders a Download Button for the selected release
80 DownloadButton: ReleaseDownloadButton,
81 // Renders a Source Download Button for the selected release
82 SourceButton: SourceButton,
83 // Renders a Release CodeBox
84 ReleaseCodeBox: ReleaseCodeBox,
85 },
86};
87
88/**
89 * A full list of wired HTML elements into custom React Components
90 *
91 * @type {import('mdx/types').MDXComponents}
92 */
93export const htmlComponents = {
94 // Renders a Link Component for `a` tags
95 a: Link,
96 // Renders a Blockquote Component for `blockquote` tags
97 blockquote: Blockquote,
98 // Renders a CodeBox Component for `pre` tags
99 pre: MDXCodeBox,
100 // Renders an Image Component for `img` tags
101 img: MDXImage,
102};