Added DefinitionList and DefinitionItem components
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
.term {
|
||||
margin-block: var(--el-dt-vspace-top) var(--el-dt-vspace-bottom);
|
||||
padding: var(--el-dt-padding);
|
||||
|
||||
font-family: var(--el-dt-font-family), serif;
|
||||
font-size: var(--el-dt-font-size);
|
||||
font-weight: var(--el-dt-font-weight);
|
||||
line-height: var(--el-dt-line-height);
|
||||
color: var(--el-dt-color);
|
||||
text-transform: var(--el-dt-text-transform);
|
||||
letter-spacing: var(--el-dt-letter-spacing);
|
||||
|
||||
background: var(--el-dt-background);
|
||||
}
|
||||
|
||||
.def {
|
||||
margin-block: var(--el-dd-vspace-top) var(--el-dd-vspace-bottom);
|
||||
padding: var(--el-dd-indent);
|
||||
|
||||
font-family: var(--el-dd-font-family), sans-serif;
|
||||
font-size: var(--el-dd-font-size);
|
||||
line-height: var(--el-dd-line-height);
|
||||
color: var(--el-dd-color);
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
import { marked } from 'marked';
|
||||
|
||||
import styles from './DefinitionItem.module.css';
|
||||
|
||||
interface DefinitionItemProps {
|
||||
term: string;
|
||||
definitions: string[];
|
||||
}
|
||||
|
||||
export default function DefinitionItem({
|
||||
term,
|
||||
definitions,
|
||||
}: DefinitionItemProps) {
|
||||
return (
|
||||
<>
|
||||
<dt className={styles.term}>{term}</dt>
|
||||
{definitions.map((def, idx) => (
|
||||
<dd
|
||||
key={idx}
|
||||
className={styles.def}
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: marked.parseInline(def),
|
||||
}}
|
||||
/>
|
||||
))}
|
||||
</>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
.list {
|
||||
margin-block: var(--el-dl-vspace-top) var(--el-dl-vspace-bottom);
|
||||
font-size: var(--el-dl-font-size);
|
||||
line-height: var(--el-dl-line-height);
|
||||
}
|
||||
10
src/components/Content/DefinitionList/index.tsx
Normal file
10
src/components/Content/DefinitionList/index.tsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import React from 'react';
|
||||
|
||||
import styles from './DefinitionList.module.css';
|
||||
|
||||
interface DefinitionListProps {
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
export default function DefinitionList({ children }: DefinitionListProps) {
|
||||
return <dl className={styles.list}>{children}</dl>;
|
||||
}
|
||||
@@ -53,7 +53,7 @@
|
||||
}
|
||||
|
||||
.content {
|
||||
text-align: left;
|
||||
display: contents;
|
||||
}
|
||||
|
||||
.ref {
|
||||
|
||||
Reference in New Issue
Block a user