Compare commits

...

10 Commits

Author SHA1 Message Date
Vanessa 0e30ef47fc ⬆️ 2023-12-14 14:31:09 +08:00
Vanessa 4f677e00c7 🎨 https://github.com/Vanessa219/vditor/issues/1513 2023-12-14 00:19:54 +08:00
Vanessa a2434b5564 ♻️ fix https://github.com/Vanessa219/vditor/pull/1502 2023-11-22 10:17:59 +08:00
Liu fa4bb0f236
perf: 优化代码块的渲染性能 (#1502) 2023-11-22 09:58:09 +08:00
Vanessa 289c47342f ⬆️ 2023-11-11 18:33:01 +08:00
Vanessa 35cb28863a 🐛 fix https://github.com/Vanessa219/vditor/issues/1491 2023-10-31 10:54:01 +08:00
Vanessa 4289103e1e Merge remote-tracking branch 'origin/master' 2023-10-31 10:53:39 +08:00
Vanessa e619983fa3 🐛 fix https://github.com/Vanessa219/vditor/issues/1491 2023-10-31 10:53:26 +08:00
dependabot[bot] e8aea7047e
⬆️ Bump @babel/traverse from 7.17.3 to 7.23.2 (#1483)
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.17.3 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 10:47:12 -05:00
dependabot[bot] e6abc0456a
⬆️ Bump postcss from 8.4.12 to 8.4.31 (#1480)
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.12 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.12...8.4.31)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-07 19:28:40 -05:00
10 changed files with 212 additions and 73 deletions

View File

@ -12,7 +12,11 @@
* [open issues](https://github.com/Vanessa219/vditor/issues)
### v3.9.7 / 2023-10
### v3.9.7 / 2023-12-14
* [改进带端口的超链接解析](https://github.com/Vanessa219/vditor/issues/1513) `改进功能`
* [优化代码块复制功能的渲染性能](https://github.com/Vanessa219/vditor/pull/1502) `开发重构`
* [tipPosition 设置在取消全屏后失效](https://github.com/Vanessa219/vditor/issues/1491) `修复缺陷`
### v3.9.6 / 2023-09-26

View File

@ -52,7 +52,7 @@ const initVditor = (language) => {
window.vditor = new Vditor('vditor', {
// _lutePath: `http://192.168.31.194:9090/lute.min.js?${new Date().getTime()}`,
_lutePath: 'src/js/lute/lute.min.js',
cdn: 'http://localhost:9000',
// cdn: 'http://localhost:9000',
toolbar,
lang: language,
mode: 'wysiwyg',

View File

@ -22,7 +22,7 @@
@Vanessa 通过 `@User` 可以在内容中提及用户,被提及的用户将会收到系统通知。
> NOTE:
>
>
> 1. @用户名之后需要有一个空格
> 2. 新手没有艾特的功能权限

View File

@ -20,11 +20,14 @@ const render = (fileName) => {
fetch(`/demo/markdown/${fileName}.md`).then(response => response.text()).then(markdown => {
Vditor.preview(previewElement, markdown, {
cdn: 'http://localhost:9000',
markdown: {
toc: true, listStyle: fileName === 'cute-list',
}, speech: {
},
speech: {
enable: true,
}, anchor: 1, after() {
},
anchor: 1, after() {
if (window.innerWidth <= 768) {
return
}
@ -32,7 +35,9 @@ const render = (fileName) => {
if (outlineElement.innerText.trim() !== '') {
outlineElement.style.display = 'block'
}
}, lazyLoadImage: 'https://unpkg.com/vditor/dist/images/img-loading.svg', renderers: {
},
lazyLoadImage: 'https://unpkg.com/vditor/dist/images/img-loading.svg',
renderers: {
renderHeading: (node, entering) => {
const id = Lute.GetHeadingID(node)
if (entering) {

View File

@ -51,8 +51,8 @@
color: #4285f4;
}
</style>
<link rel="stylesheet" href="https://unpkg.com/vditor@3.9.3/dist/index.css">
<script src="https://unpkg.com/vditor@3.9.3/dist/index.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/vditor@3.9.7/dist/index.css">
<script src="https://unpkg.com/vditor@3.9.7/dist/index.min.js"></script>
</head>
<body>
<div class="vditor-reset nav">

View File

@ -1,6 +1,6 @@
{
"name": "vditor",
"version": "3.9.6",
"version": "3.9.7",
"description": "♏ 易于使用的 Markdown 编辑器,为适配不同的应用场景而生",
"author": "Vanessa <v@b3log.org> (http://vanessa.b3log.org)",
"homepage": "https://b3log.org/vditor",

View File

@ -36,7 +36,7 @@ devDependencies:
version: 5.12.0(eslint@8.9.0)(typescript@3.9.10)
autoprefixer:
specifier: ^10.4.2
version: 10.4.2(postcss@8.4.12)
version: 10.4.2(postcss@8.4.31)
babel-loader:
specifier: ^8.2.2
version: 8.2.3(@babel/core@7.17.5)(webpack@5.76.0)
@ -81,10 +81,10 @@ devDependencies:
version: 2.6.0(webpack@5.76.0)
postcss:
specifier: ^8.4.12
version: 8.4.12
version: 8.4.31
postcss-loader:
specifier: ^5.2.0
version: 5.3.0(postcss@8.4.12)(webpack@5.76.0)
version: 5.3.0(postcss@8.4.31)(webpack@5.76.0)
prettier:
specifier: ^2.5.1
version: 2.5.1
@ -135,6 +135,14 @@ packages:
'@babel/highlight': 7.16.10
dev: true
/@babel/code-frame@7.22.13:
resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/highlight': 7.22.20
chalk: 2.4.2
dev: true
/@babel/compat-data@7.17.0:
resolution: {integrity: sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==}
engines: {node: '>=6.9.0'}
@ -152,7 +160,7 @@ packages:
'@babel/helpers': 7.17.2
'@babel/parser': 7.17.3
'@babel/template': 7.16.7
'@babel/traverse': 7.17.3
'@babel/traverse': 7.23.2
'@babel/types': 7.17.0
convert-source-map: 1.8.0
debug: 4.3.3
@ -172,6 +180,16 @@ packages:
source-map: 0.5.7
dev: true
/@babel/generator@7.23.0:
resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/types': 7.23.0
'@jridgewell/gen-mapping': 0.3.3
'@jridgewell/trace-mapping': 0.3.20
jsesc: 2.5.2
dev: true
/@babel/helper-annotate-as-pure@7.16.7:
resolution: {integrity: sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==}
engines: {node: '>=6.9.0'}
@ -238,7 +256,7 @@ packages:
'@babel/helper-compilation-targets': 7.16.7(@babel/core@7.17.5)
'@babel/helper-module-imports': 7.16.7
'@babel/helper-plugin-utils': 7.16.7
'@babel/traverse': 7.17.3
'@babel/traverse': 7.23.2
debug: 4.3.3
lodash.debounce: 4.0.8
resolve: 1.22.0
@ -254,6 +272,11 @@ packages:
'@babel/types': 7.17.0
dev: true
/@babel/helper-environment-visitor@7.22.20:
resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==}
engines: {node: '>=6.9.0'}
dev: true
/@babel/helper-explode-assignable-expression@7.16.7:
resolution: {integrity: sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==}
engines: {node: '>=6.9.0'}
@ -270,6 +293,14 @@ packages:
'@babel/types': 7.17.0
dev: true
/@babel/helper-function-name@7.23.0:
resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/template': 7.22.15
'@babel/types': 7.23.0
dev: true
/@babel/helper-get-function-arity@7.16.7:
resolution: {integrity: sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==}
engines: {node: '>=6.9.0'}
@ -284,6 +315,13 @@ packages:
'@babel/types': 7.17.0
dev: true
/@babel/helper-hoist-variables@7.22.5:
resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/types': 7.23.0
dev: true
/@babel/helper-member-expression-to-functions@7.16.7:
resolution: {integrity: sha512-VtJ/65tYiU/6AbMTDwyoXGPKHgTsfRarivm+YbB5uAzKUyuPjgZSgAFeG87FCigc7KNHu2Pegh1XIT3lXjvz3Q==}
engines: {node: '>=6.9.0'}
@ -308,7 +346,7 @@ packages:
'@babel/helper-split-export-declaration': 7.16.7
'@babel/helper-validator-identifier': 7.16.7
'@babel/template': 7.16.7
'@babel/traverse': 7.17.3
'@babel/traverse': 7.23.2
'@babel/types': 7.17.0
transitivePeerDependencies:
- supports-color
@ -344,7 +382,7 @@ packages:
'@babel/helper-environment-visitor': 7.16.7
'@babel/helper-member-expression-to-functions': 7.16.7
'@babel/helper-optimise-call-expression': 7.16.7
'@babel/traverse': 7.17.3
'@babel/traverse': 7.23.2
'@babel/types': 7.17.0
transitivePeerDependencies:
- supports-color
@ -371,11 +409,28 @@ packages:
'@babel/types': 7.17.0
dev: true
/@babel/helper-split-export-declaration@7.22.6:
resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/types': 7.23.0
dev: true
/@babel/helper-string-parser@7.22.5:
resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==}
engines: {node: '>=6.9.0'}
dev: true
/@babel/helper-validator-identifier@7.16.7:
resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==}
engines: {node: '>=6.9.0'}
dev: true
/@babel/helper-validator-identifier@7.22.20:
resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
engines: {node: '>=6.9.0'}
dev: true
/@babel/helper-validator-option@7.16.7:
resolution: {integrity: sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==}
engines: {node: '>=6.9.0'}
@ -387,7 +442,7 @@ packages:
dependencies:
'@babel/helper-function-name': 7.16.7
'@babel/template': 7.16.7
'@babel/traverse': 7.17.3
'@babel/traverse': 7.23.2
'@babel/types': 7.17.0
transitivePeerDependencies:
- supports-color
@ -398,7 +453,7 @@ packages:
engines: {node: '>=6.9.0'}
dependencies:
'@babel/template': 7.16.7
'@babel/traverse': 7.17.3
'@babel/traverse': 7.23.2
'@babel/types': 7.17.0
transitivePeerDependencies:
- supports-color
@ -413,6 +468,15 @@ packages:
js-tokens: 4.0.0
dev: true
/@babel/highlight@7.22.20:
resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/helper-validator-identifier': 7.22.20
chalk: 2.4.2
js-tokens: 4.0.0
dev: true
/@babel/parser@7.17.3:
resolution: {integrity: sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==}
engines: {node: '>=6.0.0'}
@ -421,6 +485,14 @@ packages:
'@babel/types': 7.17.0
dev: true
/@babel/parser@7.23.0:
resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==}
engines: {node: '>=6.0.0'}
hasBin: true
dependencies:
'@babel/types': 7.23.0
dev: true
/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.16.7(@babel/core@7.17.5):
resolution: {integrity: sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==}
engines: {node: '>=6.9.0'}
@ -1247,18 +1319,27 @@ packages:
'@babel/types': 7.17.0
dev: true
/@babel/traverse@7.17.3:
resolution: {integrity: sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==}
/@babel/template@7.22.15:
resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/code-frame': 7.16.7
'@babel/generator': 7.17.3
'@babel/helper-environment-visitor': 7.16.7
'@babel/helper-function-name': 7.16.7
'@babel/helper-hoist-variables': 7.16.7
'@babel/helper-split-export-declaration': 7.16.7
'@babel/parser': 7.17.3
'@babel/types': 7.17.0
'@babel/code-frame': 7.22.13
'@babel/parser': 7.23.0
'@babel/types': 7.23.0
dev: true
/@babel/traverse@7.23.2:
resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/code-frame': 7.22.13
'@babel/generator': 7.23.0
'@babel/helper-environment-visitor': 7.22.20
'@babel/helper-function-name': 7.23.0
'@babel/helper-hoist-variables': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
'@babel/parser': 7.23.0
'@babel/types': 7.23.0
debug: 4.3.3
globals: 11.12.0
transitivePeerDependencies:
@ -1273,6 +1354,15 @@ packages:
to-fast-properties: 2.0.0
dev: true
/@babel/types@7.23.0:
resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/helper-string-parser': 7.22.5
'@babel/helper-validator-identifier': 7.22.20
to-fast-properties: 2.0.0
dev: true
/@bcoe/v8-coverage@0.2.3:
resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
dev: true
@ -1530,15 +1620,45 @@ packages:
chalk: 4.1.2
dev: true
/@jridgewell/gen-mapping@0.3.3:
resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
engines: {node: '>=6.0.0'}
dependencies:
'@jridgewell/set-array': 1.1.2
'@jridgewell/sourcemap-codec': 1.4.11
'@jridgewell/trace-mapping': 0.3.20
dev: true
/@jridgewell/resolve-uri@3.0.5:
resolution: {integrity: sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==}
engines: {node: '>=6.0.0'}
dev: true
/@jridgewell/resolve-uri@3.1.1:
resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
engines: {node: '>=6.0.0'}
dev: true
/@jridgewell/set-array@1.1.2:
resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
engines: {node: '>=6.0.0'}
dev: true
/@jridgewell/sourcemap-codec@1.4.11:
resolution: {integrity: sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==}
dev: true
/@jridgewell/sourcemap-codec@1.4.15:
resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
dev: true
/@jridgewell/trace-mapping@0.3.20:
resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==}
dependencies:
'@jridgewell/resolve-uri': 3.1.1
'@jridgewell/sourcemap-codec': 1.4.15
dev: true
/@jridgewell/trace-mapping@0.3.4:
resolution: {integrity: sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==}
dependencies:
@ -2358,7 +2478,7 @@ packages:
hasBin: true
dev: true
/autoprefixer@10.4.2(postcss@8.4.12):
/autoprefixer@10.4.2(postcss@8.4.31):
resolution: {integrity: sha512-9fOPpHKuDW1w/0EKfRmVnxTDt8166MAnLI3mgZ1JCnhNtYWxcJ6Ud5CO/AVOZi/AvFa8DY9RTy3h3+tFBlrrdQ==}
engines: {node: ^10 || ^12 || >=14}
hasBin: true
@ -2370,7 +2490,7 @@ packages:
fraction.js: 4.1.3
normalize-range: 0.1.2
picocolors: 1.0.0
postcss: 8.4.12
postcss: 8.4.31
postcss-value-parser: 4.2.0
dev: true
@ -2884,7 +3004,7 @@ packages:
dev: true
/color-name@1.1.3:
resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=}
resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
dev: true
/color-name@1.1.4:
@ -3073,13 +3193,13 @@ packages:
peerDependencies:
webpack: ^4.27.0 || ^5.0.0
dependencies:
icss-utils: 5.1.0(postcss@8.4.12)
icss-utils: 5.1.0(postcss@8.4.31)
loader-utils: 2.0.2
postcss: 8.4.12
postcss-modules-extract-imports: 3.0.0(postcss@8.4.12)
postcss-modules-local-by-default: 4.0.0(postcss@8.4.12)
postcss-modules-scope: 3.0.0(postcss@8.4.12)
postcss-modules-values: 4.0.0(postcss@8.4.12)
postcss: 8.4.31
postcss-modules-extract-imports: 3.0.0(postcss@8.4.31)
postcss-modules-local-by-default: 4.0.0(postcss@8.4.31)
postcss-modules-scope: 3.0.0(postcss@8.4.31)
postcss-modules-values: 4.0.0(postcss@8.4.31)
postcss-value-parser: 4.2.0
schema-utils: 3.1.1
semver: 7.3.5
@ -4180,6 +4300,7 @@ packages:
/growly@1.3.0:
resolution: {integrity: sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==}
requiresBuild: true
dev: true
optional: true
@ -4200,7 +4321,7 @@ packages:
dev: true
/has-flag@3.0.0:
resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=}
resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
engines: {node: '>=4'}
dev: true
@ -4445,13 +4566,13 @@ packages:
safer-buffer: 2.1.2
dev: true
/icss-utils@5.1.0(postcss@8.4.12):
/icss-utils@5.1.0(postcss@8.4.31):
resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==}
engines: {node: ^10 || ^12 || >= 14}
peerDependencies:
postcss: ^8.1.0
dependencies:
postcss: 8.4.12
postcss: 8.4.31
dev: true
/identity-obj-proxy@3.0.0:
@ -5000,7 +5121,7 @@ packages:
resolution: {integrity: sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==}
engines: {node: '>= 10.14.2'}
dependencies:
'@babel/traverse': 7.17.3
'@babel/traverse': 7.23.2
'@jest/environment': 26.6.2
'@jest/source-map': 26.6.2
'@jest/test-result': 26.6.2
@ -5773,8 +5894,8 @@ packages:
thunky: 1.1.0
dev: true
/nanoid@3.3.1:
resolution: {integrity: sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==}
/nanoid@3.3.6:
resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==}
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
dev: true
@ -6236,7 +6357,7 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
/postcss-loader@5.3.0(postcss@8.4.12)(webpack@5.76.0):
/postcss-loader@5.3.0(postcss@8.4.31)(webpack@5.76.0):
resolution: {integrity: sha512-/+Z1RAmssdiSLgIZwnJHwBMnlABPgF7giYzTN2NOfr9D21IJZ4mQC1R2miwp80zno9M4zMD/umGI8cR+2EL5zw==}
engines: {node: '>= 10.13.0'}
peerDependencies:
@ -6245,50 +6366,50 @@ packages:
dependencies:
cosmiconfig: 7.0.1
klona: 2.0.5
postcss: 8.4.12
postcss: 8.4.31
semver: 7.3.5
webpack: 5.76.0(webpack-cli@4.9.2)
dev: true
/postcss-modules-extract-imports@3.0.0(postcss@8.4.12):
/postcss-modules-extract-imports@3.0.0(postcss@8.4.31):
resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==}
engines: {node: ^10 || ^12 || >= 14}
peerDependencies:
postcss: ^8.1.0
dependencies:
postcss: 8.4.12
postcss: 8.4.31
dev: true
/postcss-modules-local-by-default@4.0.0(postcss@8.4.12):
/postcss-modules-local-by-default@4.0.0(postcss@8.4.31):
resolution: {integrity: sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==}
engines: {node: ^10 || ^12 || >= 14}
peerDependencies:
postcss: ^8.1.0
dependencies:
icss-utils: 5.1.0(postcss@8.4.12)
postcss: 8.4.12
icss-utils: 5.1.0(postcss@8.4.31)
postcss: 8.4.31
postcss-selector-parser: 6.0.9
postcss-value-parser: 4.2.0
dev: true
/postcss-modules-scope@3.0.0(postcss@8.4.12):
/postcss-modules-scope@3.0.0(postcss@8.4.31):
resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==}
engines: {node: ^10 || ^12 || >= 14}
peerDependencies:
postcss: ^8.1.0
dependencies:
postcss: 8.4.12
postcss: 8.4.31
postcss-selector-parser: 6.0.9
dev: true
/postcss-modules-values@4.0.0(postcss@8.4.12):
/postcss-modules-values@4.0.0(postcss@8.4.31):
resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==}
engines: {node: ^10 || ^12 || >= 14}
peerDependencies:
postcss: ^8.1.0
dependencies:
icss-utils: 5.1.0(postcss@8.4.12)
postcss: 8.4.12
icss-utils: 5.1.0(postcss@8.4.31)
postcss: 8.4.31
dev: true
/postcss-selector-parser@6.0.9:
@ -6303,11 +6424,11 @@ packages:
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
dev: true
/postcss@8.4.12:
resolution: {integrity: sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==}
/postcss@8.4.31:
resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
engines: {node: ^10 || ^12 || >=14}
dependencies:
nanoid: 3.3.1
nanoid: 3.3.6
picocolors: 1.0.0
source-map-js: 1.0.2
dev: true
@ -6392,6 +6513,7 @@ packages:
/prr@1.0.1:
resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==}
requiresBuild: true
dev: true
/psl@1.8.0:
@ -6721,6 +6843,7 @@ packages:
/safer-buffer@2.1.2:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
requiresBuild: true
dev: true
/sane@4.1.0:
@ -6744,6 +6867,7 @@ packages:
/sax@1.2.4:
resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==}
requiresBuild: true
dev: true
optional: true
@ -6931,6 +7055,7 @@ packages:
/shellwords@0.1.1:
resolution: {integrity: sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==}
requiresBuild: true
dev: true
optional: true

File diff suppressed because one or more lines are too long

View File

@ -2,32 +2,32 @@ import {code160to32} from "../util/code160to32";
import {Constants} from "../constants";
export const codeRender = (element: HTMLElement) => {
element.querySelectorAll("pre > code").forEach((e: HTMLElement, index: number) => {
Array.from<HTMLElement>(element.querySelectorAll("pre > code")).filter((e, index) => {
if (e.parentElement.classList.contains("vditor-wysiwyg__pre") ||
e.parentElement.classList.contains("vditor-ir__marker--pre")) {
return;
return false;
}
if (e.classList.contains("language-mermaid") || e.classList.contains("language-flowchart") ||
e.classList.contains("language-echarts") || e.classList.contains("language-mindmap") ||
e.classList.contains("language-plantuml") || e.classList.contains("language-markmap") ||
e.classList.contains("language-abc") || e.classList.contains("language-graphviz") ||
e.classList.contains("language-math")) {
return;
return false;
}
if (e.style.maxHeight.indexOf("px") > -1) {
return;
return false;
}
// 避免预览区在渲染后由于代码块过多产生性能问题 https://github.com/b3log/vditor/issues/67
if (element.classList.contains("vditor-preview") && index > 5) {
return;
return false;
}
return true;
}).forEach((e) => {
let codeText = e.innerText;
if (e.classList.contains("highlight-chroma")) {
const codeElement = document.createElement("code");
codeElement.innerHTML = e.innerHTML;
const codeElement = e.cloneNode(true) as HTMLElement;
codeElement.querySelectorAll(".highlight-ln").forEach((item: HTMLElement) => {
item.remove();
});

View File

@ -9,7 +9,7 @@ export class Fullscreen extends MenuItem {
}
public _bindEvent(vditor: IVditor, menuItem: IMenuItem) {
this.element.children[0].addEventListener(getEventName(), function(event) {
this.element.children[0].addEventListener(getEventName(), function (event) {
event.preventDefault();
if (vditor.element.className.includes("vditor--fullscreen")) {
if (!menuItem.level) {
@ -22,6 +22,11 @@ export class Fullscreen extends MenuItem {
const svgElement = vditor.toolbar.elements[key].firstChild as HTMLElement;
if (svgElement) {
svgElement.className = svgElement.className.replace("__s", "__n");
vditor.options.toolbar.forEach(item => {
if (typeof item !== "string" && item.tipPosition && item.name === svgElement.dataset.type) {
svgElement.className = `vditor-tooltipped vditor-tooltipped__${item.tipPosition}`;
}
})
}
});
if (vditor.counter) {