aboutsummaryrefslogtreecommitdiff
path: root/src/theme/Admonition/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/theme/Admonition/index.js')
-rw-r--r--src/theme/Admonition/index.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/theme/Admonition/index.js b/src/theme/Admonition/index.js
new file mode 100644
index 00000000..c66baaea
--- /dev/null
+++ b/src/theme/Admonition/index.js
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+import React from 'react';
+import {processAdmonitionProps} from '@docusaurus/theme-common';
+import AdmonitionTypes from './Types';
+function getAdmonitionTypeComponent(type) {
+ const component = AdmonitionTypes[type];
+ if (component) {
+ return component;
+ }
+ console.warn(
+ `No admonition component found for admonition type "${type}". Using Info as fallback.`,
+ );
+ return AdmonitionTypes.info;
+}
+export default function Admonition(unprocessedProps) {
+ const props = processAdmonitionProps(unprocessedProps);
+ const AdmonitionTypeComponent = getAdmonitionTypeComponent(props.type);
+ return <AdmonitionTypeComponent {...props} />;
+}