mirror of
https://github.com/element-plus/element-plus.git
synced 2026-03-13 07:51:17 +08:00
refactor(docs): use markdown-it instead of marked (#4239)
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
<script lang="ts" setup>
|
||||
import { computed } from 'vue'
|
||||
import { parse } from 'marked'
|
||||
import MarkdownIt from 'markdown-it'
|
||||
|
||||
const md = new MarkdownIt()
|
||||
|
||||
const props = defineProps({
|
||||
content: { type: String, required: true },
|
||||
@@ -10,7 +12,8 @@ const attr = 'rel="noreferrer noopenner" target="_blank"'
|
||||
|
||||
const parsed = computed(() => {
|
||||
// Note this is relatively arbitrary so that this could be buggy.
|
||||
return parse(props.content)
|
||||
return md
|
||||
.render(props.content)
|
||||
.replace(
|
||||
/#([0-9]+) by/g,
|
||||
`<a href="https://github.com/element-plus/element-plus/pull/$1" ${attr}>#$1</a> by`
|
||||
|
||||
@@ -13,14 +13,12 @@
|
||||
"axios": "0.24.0",
|
||||
"clipboard-copy": "4.0.1",
|
||||
"element-plus": "npm:element-plus@latest",
|
||||
"marked": "4.0.0",
|
||||
"normalize.css": "8.0.1",
|
||||
"nprogress": "0.2.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@crowdin/cli": "3.7.1",
|
||||
"@types/markdown-it": "12.2.3",
|
||||
"@types/marked": "3.0.2",
|
||||
"cross-env": "7.0.3",
|
||||
"markdown-it": "12.2.0",
|
||||
"markdown-it-container": "3.0.0",
|
||||
|
||||
59
pnpm-lock.yaml
generated
59
pnpm-lock.yaml
generated
@@ -151,7 +151,6 @@ importers:
|
||||
specifiers:
|
||||
'@crowdin/cli': 3.7.1
|
||||
'@types/markdown-it': 12.2.3
|
||||
'@types/marked': 3.0.2
|
||||
'@vueuse/core': 6.7.6
|
||||
axios: 0.24.0
|
||||
clipboard-copy: 4.0.1
|
||||
@@ -159,28 +158,25 @@ importers:
|
||||
element-plus: npm:element-plus@latest
|
||||
markdown-it: 12.2.0
|
||||
markdown-it-container: 3.0.0
|
||||
marked: 4.0.0
|
||||
normalize.css: 8.0.1
|
||||
nprogress: 0.2.0
|
||||
vite-plugin-inspect: 0.3.10
|
||||
vitepress: 0.18.1
|
||||
dependencies:
|
||||
'@vueuse/core': 6.7.6_vue@3.2.21
|
||||
'@vueuse/core': 6.7.6
|
||||
axios: 0.24.0
|
||||
clipboard-copy: 4.0.1
|
||||
element-plus: 1.2.0-beta.1_vue@3.2.21
|
||||
marked: 4.0.0
|
||||
element-plus: 1.2.0-beta.1
|
||||
normalize.css: 8.0.1
|
||||
nprogress: 0.2.0
|
||||
devDependencies:
|
||||
'@crowdin/cli': 3.7.1
|
||||
'@types/markdown-it': 12.2.3
|
||||
'@types/marked': 3.0.2
|
||||
cross-env: 7.0.3
|
||||
markdown-it: 12.2.0
|
||||
markdown-it-container: 3.0.0
|
||||
vite-plugin-inspect: 0.3.10
|
||||
vitepress: 0.18.1_sass@1.43.4
|
||||
vitepress: 0.18.1
|
||||
|
||||
packages/components:
|
||||
specifiers: {}
|
||||
@@ -1749,10 +1745,6 @@ packages:
|
||||
'@types/mdurl': 1.0.2
|
||||
dev: true
|
||||
|
||||
/@types/marked/3.0.2:
|
||||
resolution: {integrity: sha512-mGYI9qFs+i5eYaytWKBbtEMbIkrXGKuhsDpDcj70ogKS2gk1NmgEy9Z3VEKz922Lfms6eITXXqv5idlX7C/irw==}
|
||||
dev: true
|
||||
|
||||
/@types/mdurl/1.0.2:
|
||||
resolution: {integrity: sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==}
|
||||
dev: true
|
||||
@@ -1976,7 +1968,7 @@ packages:
|
||||
peerDependencies:
|
||||
vite: ^2.5.10
|
||||
dependencies:
|
||||
vite: 2.6.10_sass@1.43.4
|
||||
vite: 2.6.10
|
||||
dev: true
|
||||
|
||||
/@vitejs/plugin-vue/1.9.4_vite@2.6.13:
|
||||
@@ -2147,7 +2139,7 @@ packages:
|
||||
vue-demi: 0.11.4_vue@3.2.21
|
||||
dev: false
|
||||
|
||||
/@vueuse/core/6.7.6_vue@3.2.21:
|
||||
/@vueuse/core/6.7.6:
|
||||
resolution: {integrity: sha512-oVyqARXnTvhf4m6xf/sHw+SNJWcRYJn8+L4TZTFBU9POf9GIzBN7iHD2Oc4K4rTWXGQzXfoFHgbrXyeMFCRoqA==}
|
||||
peerDependencies:
|
||||
'@vue/composition-api': ^1.1.0
|
||||
@@ -2158,9 +2150,8 @@ packages:
|
||||
vue:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@vueuse/shared': 6.7.6_vue@3.2.21
|
||||
vue: 3.2.21
|
||||
vue-demi: 0.11.4_vue@3.2.21
|
||||
'@vueuse/shared': 6.7.6
|
||||
vue-demi: 0.11.4
|
||||
dev: false
|
||||
|
||||
/@vueuse/shared/6.7.3_vue@3.2.21:
|
||||
@@ -2178,7 +2169,7 @@ packages:
|
||||
vue-demi: 0.11.4_vue@3.2.21
|
||||
dev: false
|
||||
|
||||
/@vueuse/shared/6.7.6_vue@3.2.21:
|
||||
/@vueuse/shared/6.7.6:
|
||||
resolution: {integrity: sha512-MfzTKkFK63PcjDdTpJRuJqylpyUdXpic9ueTRcgpPizqFpoYIuI6DkdYjub2Ch5+OYYhVnCqe8ynW6WzYo7DGQ==}
|
||||
peerDependencies:
|
||||
'@vue/composition-api': ^1.1.0
|
||||
@@ -2189,8 +2180,7 @@ packages:
|
||||
vue:
|
||||
optional: true
|
||||
dependencies:
|
||||
vue: 3.2.21
|
||||
vue-demi: 0.11.4_vue@3.2.21
|
||||
vue-demi: 0.11.4
|
||||
dev: false
|
||||
|
||||
/@zkochan/npm-conf/2.0.2:
|
||||
@@ -3918,20 +3908,19 @@ packages:
|
||||
resolution: {integrity: sha512-2jtSwgyiRzybHRxrc2nKI+39wH3AwQgn+sogQ+q814gv8hIFwrcZbV07Ea9f8AmK0ufPVZUvvAG1uZJ+obV4Jw==}
|
||||
dev: true
|
||||
|
||||
/element-plus/1.2.0-beta.1_vue@3.2.21:
|
||||
/element-plus/1.2.0-beta.1:
|
||||
resolution: {integrity: sha512-TvO2NPoCcG0PDph2SHz3xZ+wnTNJvlKHfb1P6uJsYMUhUCWtSaWGXE1kPQVnyi/tWYlQJG05CT4iO3B4+uEj9w==}
|
||||
peerDependencies:
|
||||
vue: ^3.2.0
|
||||
dependencies:
|
||||
'@element-plus/icons': 0.0.11
|
||||
'@popperjs/core': 2.10.2
|
||||
'@vueuse/core': 6.7.6_vue@3.2.21
|
||||
'@vueuse/core': 6.7.6
|
||||
async-validator: 4.0.7
|
||||
dayjs: 1.10.7
|
||||
lodash: 4.17.21
|
||||
memoize-one: 6.0.0
|
||||
normalize-wheel-es: 1.1.0
|
||||
vue: 3.2.21
|
||||
transitivePeerDependencies:
|
||||
- '@vue/composition-api'
|
||||
dev: false
|
||||
@@ -7207,12 +7196,6 @@ packages:
|
||||
uc.micro: 1.0.6
|
||||
dev: true
|
||||
|
||||
/marked/4.0.0:
|
||||
resolution: {integrity: sha512-K3C1JvtiXuXVLoxDQEJP4NMLBuThlTkthgUOCzqLghIpHfis1DIZZfPI3o4UgfFpQ0d+JvTql2h+szR9jQ1p1w==}
|
||||
engines: {node: '>= 12'}
|
||||
hasBin: true
|
||||
dev: false
|
||||
|
||||
/matchdep/2.0.0:
|
||||
resolution: {integrity: sha1-xvNINKDY28OzfCfui7yyfHd1WC4=}
|
||||
engines: {node: '>= 0.10.0'}
|
||||
@@ -10291,7 +10274,7 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/vite/2.6.10_sass@1.43.4:
|
||||
/vite/2.6.10:
|
||||
resolution: {integrity: sha512-XbevwpDJMs3lKiGEj0UQScsOCpwHIjFgfzPnFVkPgnxsF9oPv1uGyckLg58XkXv6LnO46KN9yZqJzINFmAxtUg==}
|
||||
engines: {node: '>=12.2.0'}
|
||||
hasBin: true
|
||||
@@ -10311,7 +10294,6 @@ packages:
|
||||
postcss: 8.3.11
|
||||
resolve: 1.20.0
|
||||
rollup: 2.58.3
|
||||
sass: 1.43.4
|
||||
optionalDependencies:
|
||||
fsevents: 2.3.2
|
||||
dev: true
|
||||
@@ -10341,7 +10323,7 @@ packages:
|
||||
fsevents: 2.3.2
|
||||
dev: true
|
||||
|
||||
/vitepress/0.18.1_sass@1.43.4:
|
||||
/vitepress/0.18.1:
|
||||
resolution: {integrity: sha512-uUY0N8pgiGDkrdzDPI4OeCke6J7c3l17lqsQZzcGvxxHlN6qHWR4EJ4usII91UZIlpBwZymh5kKI12mr3+KG1Q==}
|
||||
engines: {node: '>=12.0.0'}
|
||||
hasBin: true
|
||||
@@ -10371,7 +10353,7 @@ packages:
|
||||
polka: 0.5.2
|
||||
prismjs: 1.25.0
|
||||
sirv: 1.0.17
|
||||
vite: 2.6.10_sass@1.43.4
|
||||
vite: 2.6.10
|
||||
vue: 3.2.21
|
||||
transitivePeerDependencies:
|
||||
- less
|
||||
@@ -10504,6 +10486,19 @@ packages:
|
||||
vscode-typescript-languageservice: 0.28.10
|
||||
dev: true
|
||||
|
||||
/vue-demi/0.11.4:
|
||||
resolution: {integrity: sha512-/3xFwzSykLW2HiiLie43a+FFgNOcokbBJ+fzvFXd0r2T8MYohqvphUyDQ8lbAwzQ3Dlcrb1c9ykifGkhSIAk6A==}
|
||||
engines: {node: '>=12'}
|
||||
hasBin: true
|
||||
requiresBuild: true
|
||||
peerDependencies:
|
||||
'@vue/composition-api': ^1.0.0-rc.1
|
||||
vue: ^3.0.0-0 || ^2.6.0
|
||||
peerDependenciesMeta:
|
||||
'@vue/composition-api':
|
||||
optional: true
|
||||
dev: false
|
||||
|
||||
/vue-demi/0.11.4_vue@3.2.21:
|
||||
resolution: {integrity: sha512-/3xFwzSykLW2HiiLie43a+FFgNOcokbBJ+fzvFXd0r2T8MYohqvphUyDQ8lbAwzQ3Dlcrb1c9ykifGkhSIAk6A==}
|
||||
engines: {node: '>=12'}
|
||||
|
||||
Reference in New Issue
Block a user