mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-10-12 18:49:37 +02:00
Remove mdast-util-from-markdown
This commit is contained in:
@@ -63,7 +63,6 @@
|
|||||||
"elkjs": "^0.8.2",
|
"elkjs": "^0.8.2",
|
||||||
"khroma": "^2.0.0",
|
"khroma": "^2.0.0",
|
||||||
"lodash-es": "^4.17.21",
|
"lodash-es": "^4.17.21",
|
||||||
"mdast-util-from-markdown": "^1.3.0",
|
|
||||||
"non-layered-tidy-tree-layout": "^2.0.2",
|
"non-layered-tidy-tree-layout": "^2.0.2",
|
||||||
"rehype-sanitize": "^5.0.1",
|
"rehype-sanitize": "^5.0.1",
|
||||||
"rehype-stringify": "^9.0.3",
|
"rehype-stringify": "^9.0.3",
|
||||||
|
@@ -4,21 +4,10 @@ import remarkBreaks from 'remark-breaks';
|
|||||||
import remarkRehype from 'remark-rehype';
|
import remarkRehype from 'remark-rehype';
|
||||||
import rehypeSanitize from 'rehype-sanitize';
|
import rehypeSanitize from 'rehype-sanitize';
|
||||||
import rehypeStringify from 'rehype-stringify';
|
import rehypeStringify from 'rehype-stringify';
|
||||||
import { fromMarkdown } from 'mdast-util-from-markdown';
|
|
||||||
import type { Content } from 'mdast';
|
import type { Content } from 'mdast';
|
||||||
import { dedent } from 'ts-dedent';
|
|
||||||
|
|
||||||
function preprocessMarkdown(markdown: string): string {
|
|
||||||
// Replace multiple newlines with a single newline
|
|
||||||
const withoutMultipleNewlines = markdown.replace(/\n{2,}/g, '\n');
|
|
||||||
// Remove extra spaces at the beginning of each line
|
|
||||||
const withoutExtraSpaces = dedent(withoutMultipleNewlines);
|
|
||||||
return withoutExtraSpaces;
|
|
||||||
}
|
|
||||||
|
|
||||||
export function markdownToLines(markdown: string) {
|
export function markdownToLines(markdown: string) {
|
||||||
const preprocessedMarkdown = preprocessMarkdown(markdown);
|
const { children } = unified().use(remarkParse).use(remarkBreaks).parse(markdown);
|
||||||
const { children } = fromMarkdown(preprocessedMarkdown);
|
|
||||||
const lines: { content: string; type: string }[][] = [[]];
|
const lines: { content: string; type: string }[][] = [[]];
|
||||||
let currentLine = 0;
|
let currentLine = 0;
|
||||||
|
|
||||||
|
34
pnpm-lock.yaml
generated
34
pnpm-lock.yaml
generated
@@ -211,9 +211,6 @@ importers:
|
|||||||
lodash-es:
|
lodash-es:
|
||||||
specifier: ^4.17.21
|
specifier: ^4.17.21
|
||||||
version: 4.17.21
|
version: 4.17.21
|
||||||
mdast-util-from-markdown:
|
|
||||||
specifier: ^1.3.0
|
|
||||||
version: 1.3.0
|
|
||||||
non-layered-tidy-tree-layout:
|
non-layered-tidy-tree-layout:
|
||||||
specifier: ^2.0.2
|
specifier: ^2.0.2
|
||||||
version: 2.0.2
|
version: 2.0.2
|
||||||
@@ -402,7 +399,7 @@ importers:
|
|||||||
devDependencies:
|
devDependencies:
|
||||||
webpack:
|
webpack:
|
||||||
specifier: ^5.74.0
|
specifier: ^5.74.0
|
||||||
version: 5.75.0(esbuild@0.17.18)(webpack-cli@4.10.0)
|
version: 5.75.0(webpack-cli@4.10.0)
|
||||||
webpack-cli:
|
webpack-cli:
|
||||||
specifier: ^4.10.0
|
specifier: ^4.10.0
|
||||||
version: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
version: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
||||||
@@ -3741,7 +3738,7 @@ packages:
|
|||||||
webpack: 4.x.x || 5.x.x
|
webpack: 4.x.x || 5.x.x
|
||||||
webpack-cli: 4.x.x
|
webpack-cli: 4.x.x
|
||||||
dependencies:
|
dependencies:
|
||||||
webpack: 5.75.0(esbuild@0.17.18)(webpack-cli@4.10.0)
|
webpack: 5.75.0(webpack-cli@4.10.0)
|
||||||
webpack-cli: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
webpack-cli: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
@@ -4185,7 +4182,7 @@ packages:
|
|||||||
/axios@0.27.2(debug@4.3.4):
|
/axios@0.27.2(debug@4.3.4):
|
||||||
resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==}
|
resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==}
|
||||||
dependencies:
|
dependencies:
|
||||||
follow-redirects: 1.15.2(debug@4.3.4)
|
follow-redirects: 1.15.2
|
||||||
form-data: 4.0.0
|
form-data: 4.0.0
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- debug
|
- debug
|
||||||
@@ -6848,7 +6845,7 @@ packages:
|
|||||||
resolution: {integrity: sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==}
|
resolution: {integrity: sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/follow-redirects@1.15.2(debug@4.3.4):
|
/follow-redirects@1.15.2:
|
||||||
resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==}
|
resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==}
|
||||||
engines: {node: '>=4.0'}
|
engines: {node: '>=4.0'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@@ -6856,8 +6853,6 @@ packages:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
debug:
|
debug:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
|
||||||
debug: 4.3.4
|
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/foreground-child@2.0.0:
|
/foreground-child@2.0.0:
|
||||||
@@ -7511,7 +7506,7 @@ packages:
|
|||||||
engines: {node: '>=8.0.0'}
|
engines: {node: '>=8.0.0'}
|
||||||
dependencies:
|
dependencies:
|
||||||
eventemitter3: 4.0.7
|
eventemitter3: 4.0.7
|
||||||
follow-redirects: 1.15.2(debug@4.3.4)
|
follow-redirects: 1.15.2
|
||||||
requires-port: 1.0.0
|
requires-port: 1.0.0
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- debug
|
- debug
|
||||||
@@ -11279,7 +11274,7 @@ packages:
|
|||||||
/spdy-transport@3.0.0:
|
/spdy-transport@3.0.0:
|
||||||
resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==}
|
resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==}
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.4(supports-color@8.1.1)
|
debug: 4.3.4
|
||||||
detect-node: 2.1.0
|
detect-node: 2.1.0
|
||||||
hpack.js: 2.1.6
|
hpack.js: 2.1.6
|
||||||
obuf: 1.1.2
|
obuf: 1.1.2
|
||||||
@@ -11293,7 +11288,7 @@ packages:
|
|||||||
resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==}
|
resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==}
|
||||||
engines: {node: '>=6.0.0'}
|
engines: {node: '>=6.0.0'}
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.4(supports-color@8.1.1)
|
debug: 4.3.4
|
||||||
handle-thing: 2.0.1
|
handle-thing: 2.0.1
|
||||||
http-deceiver: 1.2.7
|
http-deceiver: 1.2.7
|
||||||
select-hose: 2.0.0
|
select-hose: 2.0.0
|
||||||
@@ -11582,7 +11577,7 @@ packages:
|
|||||||
iterm2-version: 4.2.0
|
iterm2-version: 4.2.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/terser-webpack-plugin@5.3.6(esbuild@0.17.18)(webpack@5.75.0):
|
/terser-webpack-plugin@5.3.6(webpack@5.75.0):
|
||||||
resolution: {integrity: sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==}
|
resolution: {integrity: sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==}
|
||||||
engines: {node: '>= 10.13.0'}
|
engines: {node: '>= 10.13.0'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@@ -11599,12 +11594,11 @@ packages:
|
|||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jridgewell/trace-mapping': 0.3.15
|
'@jridgewell/trace-mapping': 0.3.15
|
||||||
esbuild: 0.17.18
|
|
||||||
jest-worker: 27.5.1
|
jest-worker: 27.5.1
|
||||||
schema-utils: 3.1.1
|
schema-utils: 3.1.1
|
||||||
serialize-javascript: 6.0.0
|
serialize-javascript: 6.0.0
|
||||||
terser: 5.15.1
|
terser: 5.15.1
|
||||||
webpack: 5.75.0(esbuild@0.17.18)(webpack-cli@4.10.0)
|
webpack: 5.75.0(webpack-cli@4.10.0)
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/terser@5.15.1:
|
/terser@5.15.1:
|
||||||
@@ -12572,7 +12566,7 @@ packages:
|
|||||||
import-local: 3.1.0
|
import-local: 3.1.0
|
||||||
interpret: 2.2.0
|
interpret: 2.2.0
|
||||||
rechoir: 0.7.1
|
rechoir: 0.7.1
|
||||||
webpack: 5.75.0(esbuild@0.17.18)(webpack-cli@4.10.0)
|
webpack: 5.75.0(webpack-cli@4.10.0)
|
||||||
webpack-dev-server: 4.11.1(webpack-cli@4.10.0)(webpack@5.75.0)
|
webpack-dev-server: 4.11.1(webpack-cli@4.10.0)(webpack@5.75.0)
|
||||||
webpack-merge: 5.8.0
|
webpack-merge: 5.8.0
|
||||||
dev: true
|
dev: true
|
||||||
@@ -12588,7 +12582,7 @@ packages:
|
|||||||
mime-types: 2.1.35
|
mime-types: 2.1.35
|
||||||
range-parser: 1.2.1
|
range-parser: 1.2.1
|
||||||
schema-utils: 4.0.0
|
schema-utils: 4.0.0
|
||||||
webpack: 5.75.0(esbuild@0.17.18)(webpack-cli@4.10.0)
|
webpack: 5.75.0(webpack-cli@4.10.0)
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/webpack-dev-server@4.11.1(webpack-cli@4.10.0)(webpack@5.75.0):
|
/webpack-dev-server@4.11.1(webpack-cli@4.10.0)(webpack@5.75.0):
|
||||||
@@ -12629,7 +12623,7 @@ packages:
|
|||||||
serve-index: 1.9.1
|
serve-index: 1.9.1
|
||||||
sockjs: 0.3.24
|
sockjs: 0.3.24
|
||||||
spdy: 4.0.2
|
spdy: 4.0.2
|
||||||
webpack: 5.75.0(esbuild@0.17.18)(webpack-cli@4.10.0)
|
webpack: 5.75.0(webpack-cli@4.10.0)
|
||||||
webpack-cli: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
webpack-cli: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
||||||
webpack-dev-middleware: 5.3.3(webpack@5.75.0)
|
webpack-dev-middleware: 5.3.3(webpack@5.75.0)
|
||||||
ws: 8.9.0
|
ws: 8.9.0
|
||||||
@@ -12653,7 +12647,7 @@ packages:
|
|||||||
engines: {node: '>=10.13.0'}
|
engines: {node: '>=10.13.0'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/webpack@5.75.0(esbuild@0.17.18)(webpack-cli@4.10.0):
|
/webpack@5.75.0(webpack-cli@4.10.0):
|
||||||
resolution: {integrity: sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==}
|
resolution: {integrity: sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==}
|
||||||
engines: {node: '>=10.13.0'}
|
engines: {node: '>=10.13.0'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@@ -12684,7 +12678,7 @@ packages:
|
|||||||
neo-async: 2.6.2
|
neo-async: 2.6.2
|
||||||
schema-utils: 3.1.1
|
schema-utils: 3.1.1
|
||||||
tapable: 2.2.1
|
tapable: 2.2.1
|
||||||
terser-webpack-plugin: 5.3.6(esbuild@0.17.18)(webpack@5.75.0)
|
terser-webpack-plugin: 5.3.6(webpack@5.75.0)
|
||||||
watchpack: 2.4.0
|
watchpack: 2.4.0
|
||||||
webpack-cli: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
webpack-cli: 4.10.0(webpack-dev-server@4.11.1)(webpack@5.75.0)
|
||||||
webpack-sources: 3.2.3
|
webpack-sources: 3.2.3
|
||||||
|
Reference in New Issue
Block a user