Skip to content

Commit b887b94

Browse files
feat(ref): added support bold text & list in md
1 parent b1b4766 commit b887b94

File tree

2 files changed

+46
-4
lines changed

2 files changed

+46
-4
lines changed

src/components/ParserOpenRPC/DetailsBox/MDContent.tsx

Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,51 @@
11
import React from "react";
22

3+
const parseLists = (content: string) => {
4+
const lines = content.split('\n');
5+
let result = '';
6+
let isFirstLevelOpen = false;
7+
let isSecondLevelOpen = false;
8+
lines.forEach((line) => {
9+
if (line.match(/^ {2}-\s+/)) {
10+
if (!isSecondLevelOpen) {
11+
result += '<ul>';
12+
isSecondLevelOpen = true;
13+
}
14+
result += `<li>${line.trim().substring(4)}</li>`;
15+
} else if (line.match(/^ -\s+/)) {
16+
if (isSecondLevelOpen) {
17+
result += '</ul>';
18+
isSecondLevelOpen = false;
19+
}
20+
if (!isFirstLevelOpen) {
21+
result += '<ul>';
22+
isFirstLevelOpen = true;
23+
}
24+
result += `<li>${line.trim().substring(2)}</li>`;
25+
} else {
26+
if (isSecondLevelOpen) {
27+
result += '</ul>';
28+
isSecondLevelOpen = false;
29+
}
30+
if (isFirstLevelOpen) {
31+
result += '</ul>';
32+
isFirstLevelOpen = false;
33+
}
34+
result += line;
35+
}
36+
});
37+
if (isSecondLevelOpen) result += '</ul>';
38+
if (isFirstLevelOpen) result += '</ul>';
39+
return result;
40+
};
41+
342
const parseMarkdown = (content: string) => {
4-
return content
5-
.replace(/\[(.*?)\]\((.*?)\)/g, '<a href="$2">$1</a>')
6-
.replace(/`(.*?)`/g, "<code>$1</code>");
43+
return parseLists(
44+
content
45+
.replace(/\[(.*?)\]\((.*?)\)/g, '<a href="$2">$1</a>')
46+
.replace(/`(.*?)`/g, '<code>$1</code>')
47+
.replace(/\*\*(.*?)\*\*/g, '<strong>$1</strong>')
48+
);
749
};
850

951
interface MDContentProps {

wallet/reference/new-reference.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ import { NETWORK_NAMES } from "@site/src/plugins/plugin-json-rpc"
1010

1111
<ParserOpenRPC
1212
network={NETWORK_NAMES.linea}
13-
method="eth_blockNumber"
13+
method="eth_sendRawTransaction"
1414
/>

0 commit comments

Comments
 (0)