@readme/markdown 6.75.0-beta.65 → 6.75.0-beta.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/Image/index.tsx +34 -36
- package/dist/lib/ast-processor.d.ts +2 -0
- package/dist/main.js +241 -234
- package/dist/main.node.js +241 -234
- package/package.json +3 -3
|
@@ -16,7 +16,7 @@ interface ImageProps {
|
|
|
16
16
|
|
|
17
17
|
const Image = (Props: ImageProps) => {
|
|
18
18
|
const {
|
|
19
|
-
align = '',
|
|
19
|
+
align = 'center',
|
|
20
20
|
alt = '',
|
|
21
21
|
border = false,
|
|
22
22
|
caption,
|
|
@@ -25,7 +25,7 @@ const Image = (Props: ImageProps) => {
|
|
|
25
25
|
src,
|
|
26
26
|
title = '',
|
|
27
27
|
width = 'auto',
|
|
28
|
-
lazy =
|
|
28
|
+
lazy = true,
|
|
29
29
|
children,
|
|
30
30
|
} = Props;
|
|
31
31
|
|
|
@@ -60,55 +60,53 @@ const Image = (Props: ImageProps) => {
|
|
|
60
60
|
|
|
61
61
|
if (caption) {
|
|
62
62
|
return (
|
|
63
|
-
<
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
<
|
|
63
|
+
<figure>
|
|
64
|
+
<span
|
|
65
|
+
aria-label={alt}
|
|
66
|
+
className={`img lightbox ${lightbox ? 'open' : 'closed'}`}
|
|
67
|
+
onClick={toggle}
|
|
68
|
+
onKeyDown={handleKeyDown}
|
|
69
|
+
role={'button'}
|
|
70
|
+
tabIndex={0}
|
|
71
|
+
>
|
|
72
|
+
<span className="lightbox-inner">
|
|
73
73
|
<img
|
|
74
74
|
src={src}
|
|
75
75
|
width={width}
|
|
76
76
|
height={height}
|
|
77
77
|
title={title}
|
|
78
|
-
className={`img img-align-center
|
|
78
|
+
className={`img img-align-center${border ? ' border' : ''}`}
|
|
79
79
|
alt={alt}
|
|
80
80
|
loading={lazy ? 'lazy' : 'eager'}
|
|
81
81
|
/>
|
|
82
82
|
<figcaption>{children || caption}</figcaption>
|
|
83
|
-
</
|
|
83
|
+
</span>
|
|
84
84
|
</span>
|
|
85
|
-
</
|
|
85
|
+
</figure>
|
|
86
86
|
);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
return (
|
|
90
|
-
<
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
>
|
|
99
|
-
<
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
/>
|
|
109
|
-
</span>
|
|
90
|
+
<span
|
|
91
|
+
aria-label={alt}
|
|
92
|
+
className={`img lightbox ${lightbox ? 'open' : 'closed'}`}
|
|
93
|
+
onClick={toggle}
|
|
94
|
+
onKeyDown={handleKeyDown}
|
|
95
|
+
role={'button'}
|
|
96
|
+
tabIndex={0}
|
|
97
|
+
>
|
|
98
|
+
<span className="lightbox-inner">
|
|
99
|
+
<img
|
|
100
|
+
src={src}
|
|
101
|
+
width={width}
|
|
102
|
+
height={height}
|
|
103
|
+
title={title}
|
|
104
|
+
className={`img img-align-${align}${border ? ' border' : ''}`}
|
|
105
|
+
alt={alt}
|
|
106
|
+
loading={lazy ? 'lazy' : 'eager'}
|
|
107
|
+
/>
|
|
110
108
|
</span>
|
|
111
|
-
</
|
|
109
|
+
</span>
|
|
112
110
|
);
|
|
113
111
|
};
|
|
114
112
|
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import remarkFrontmatter from 'remark-frontmatter';
|
|
2
2
|
import remarkGfm from 'remark-gfm';
|
|
3
|
+
import rehypeSlug from 'rehype-slug';
|
|
3
4
|
export type MdastOpts = {
|
|
4
5
|
components?: Record<string, string>;
|
|
5
6
|
};
|
|
6
7
|
export declare const remarkPlugins: ((() => (tree: any) => void) | typeof remarkFrontmatter | typeof remarkGfm)[];
|
|
8
|
+
export declare const rehypePlugins: (typeof rehypeSlug)[];
|
|
7
9
|
declare const astProcessor: (opts?: MdastOpts) => import("unified").Processor<import("mdast").Root, import("mdast").Root, import("mdast").Root, import("mdast").Root, string>;
|
|
8
10
|
export default astProcessor;
|
package/dist/main.js
CHANGED
|
@@ -14444,7 +14444,7 @@ const CreateHeading = (depth) => (props) => external_amd_react_commonjs_react_co
|
|
|
14444
14444
|
;// CONCATENATED MODULE: ./components/Image/index.tsx
|
|
14445
14445
|
|
|
14446
14446
|
const Image = (Props) => {
|
|
14447
|
-
const { align = '', alt = '', border = false, caption, className = '', height = 'auto', src, title = '', width = 'auto', lazy =
|
|
14447
|
+
const { align = 'center', alt = '', border = false, caption, className = '', height = 'auto', src, title = '', width = 'auto', lazy = true, children, } = Props;
|
|
14448
14448
|
const [lightbox, setLightbox] = external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.useState(false);
|
|
14449
14449
|
if (className === 'emoji') {
|
|
14450
14450
|
return external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, alt: alt, loading: lazy ? 'lazy' : 'eager' });
|
|
@@ -14472,16 +14472,15 @@ const Image = (Props) => {
|
|
|
14472
14472
|
setLightbox(!lightbox);
|
|
14473
14473
|
};
|
|
14474
14474
|
if (caption) {
|
|
14475
|
-
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14476
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { className:
|
|
14477
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14478
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-center
|
|
14475
|
+
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("figure", null,
|
|
14476
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { "aria-label": alt, className: `img lightbox ${lightbox ? 'open' : 'closed'}`, onClick: toggle, onKeyDown: handleKeyDown, role: 'button', tabIndex: 0 },
|
|
14477
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { className: "lightbox-inner" },
|
|
14478
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-center${border ? ' border' : ''}`, alt: alt, loading: lazy ? 'lazy' : 'eager' }),
|
|
14479
14479
|
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("figcaption", null, children || caption)))));
|
|
14480
14480
|
}
|
|
14481
|
-
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14482
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", {
|
|
14483
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14484
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-${align} ${border ? 'border' : ''}`, alt: alt, loading: lazy ? 'lazy' : 'eager' })))));
|
|
14481
|
+
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { "aria-label": alt, className: `img lightbox ${lightbox ? 'open' : 'closed'}`, onClick: toggle, onKeyDown: handleKeyDown, role: 'button', tabIndex: 0 },
|
|
14482
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { className: "lightbox-inner" },
|
|
14483
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-${align}${border ? ' border' : ''}`, alt: alt, loading: lazy ? 'lazy' : 'eager' }))));
|
|
14485
14484
|
};
|
|
14486
14485
|
/* harmony default export */ const components_Image = (Image);
|
|
14487
14486
|
|
|
@@ -65926,13 +65925,230 @@ const variables = ({ asMdx } = { asMdx: true }) => tree => {
|
|
|
65926
65925
|
|
|
65927
65926
|
/* harmony default export */ const transform = ([callouts, code_tabs, transform_embeds, transform_images, gemoji_]);
|
|
65928
65927
|
|
|
65928
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/regex.js
|
|
65929
|
+
// This module is generated by `script/`.
|
|
65930
|
+
/* eslint-disable no-control-regex, no-misleading-character-class, no-useless-escape */
|
|
65931
|
+
const regex_regex = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g
|
|
65932
|
+
|
|
65933
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/index.js
|
|
65934
|
+
|
|
65935
|
+
|
|
65936
|
+
const github_slugger_own = Object.hasOwnProperty
|
|
65937
|
+
|
|
65938
|
+
/**
|
|
65939
|
+
* Slugger.
|
|
65940
|
+
*/
|
|
65941
|
+
class BananaSlug {
|
|
65942
|
+
/**
|
|
65943
|
+
* Create a new slug class.
|
|
65944
|
+
*/
|
|
65945
|
+
constructor () {
|
|
65946
|
+
/** @type {Record<string, number>} */
|
|
65947
|
+
// eslint-disable-next-line no-unused-expressions
|
|
65948
|
+
this.occurrences
|
|
65949
|
+
|
|
65950
|
+
this.reset()
|
|
65951
|
+
}
|
|
65952
|
+
|
|
65953
|
+
/**
|
|
65954
|
+
* Generate a unique slug.
|
|
65955
|
+
*
|
|
65956
|
+
* Tracks previously generated slugs: repeated calls with the same value
|
|
65957
|
+
* will result in different slugs.
|
|
65958
|
+
* Use the `slug` function to get same slugs.
|
|
65959
|
+
*
|
|
65960
|
+
* @param {string} value
|
|
65961
|
+
* String of text to slugify
|
|
65962
|
+
* @param {boolean} [maintainCase=false]
|
|
65963
|
+
* Keep the current case, otherwise make all lowercase
|
|
65964
|
+
* @return {string}
|
|
65965
|
+
* A unique slug string
|
|
65966
|
+
*/
|
|
65967
|
+
slug (value, maintainCase) {
|
|
65968
|
+
const self = this
|
|
65969
|
+
let result = slug(value, maintainCase === true)
|
|
65970
|
+
const originalSlug = result
|
|
65971
|
+
|
|
65972
|
+
while (github_slugger_own.call(self.occurrences, result)) {
|
|
65973
|
+
self.occurrences[originalSlug]++
|
|
65974
|
+
result = originalSlug + '-' + self.occurrences[originalSlug]
|
|
65975
|
+
}
|
|
65976
|
+
|
|
65977
|
+
self.occurrences[result] = 0
|
|
65978
|
+
|
|
65979
|
+
return result
|
|
65980
|
+
}
|
|
65981
|
+
|
|
65982
|
+
/**
|
|
65983
|
+
* Reset - Forget all previous slugs
|
|
65984
|
+
*
|
|
65985
|
+
* @return void
|
|
65986
|
+
*/
|
|
65987
|
+
reset () {
|
|
65988
|
+
this.occurrences = Object.create(null)
|
|
65989
|
+
}
|
|
65990
|
+
}
|
|
65991
|
+
|
|
65992
|
+
/**
|
|
65993
|
+
* Generate a slug.
|
|
65994
|
+
*
|
|
65995
|
+
* Does not track previously generated slugs: repeated calls with the same value
|
|
65996
|
+
* will result in the exact same slug.
|
|
65997
|
+
* Use the `GithubSlugger` class to get unique slugs.
|
|
65998
|
+
*
|
|
65999
|
+
* @param {string} value
|
|
66000
|
+
* String of text to slugify
|
|
66001
|
+
* @param {boolean} [maintainCase=false]
|
|
66002
|
+
* Keep the current case, otherwise make all lowercase
|
|
66003
|
+
* @return {string}
|
|
66004
|
+
* A unique slug string
|
|
66005
|
+
*/
|
|
66006
|
+
function slug (value, maintainCase) {
|
|
66007
|
+
if (typeof value !== 'string') return ''
|
|
66008
|
+
if (!maintainCase) value = value.toLowerCase()
|
|
66009
|
+
return value.replace(regex_regex, '').replace(/ /g, '-')
|
|
66010
|
+
}
|
|
66011
|
+
|
|
66012
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-heading-rank/lib/index.js
|
|
66013
|
+
/**
|
|
66014
|
+
* @typedef {import('hast').Nodes} Nodes
|
|
66015
|
+
*/
|
|
66016
|
+
|
|
66017
|
+
/**
|
|
66018
|
+
* Get the rank (`1` to `6`) of headings (`h1` to `h6`).
|
|
66019
|
+
*
|
|
66020
|
+
* @param {Nodes} node
|
|
66021
|
+
* Node to check.
|
|
66022
|
+
* @returns {number | undefined}
|
|
66023
|
+
* Rank of the heading or `undefined` if not a heading.
|
|
66024
|
+
*/
|
|
66025
|
+
function headingRank(node) {
|
|
66026
|
+
const name = node.type === 'element' ? node.tagName.toLowerCase() : ''
|
|
66027
|
+
const code =
|
|
66028
|
+
name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
|
|
66029
|
+
? name.charCodeAt(1)
|
|
66030
|
+
: 0
|
|
66031
|
+
return code > 48 /* `0` */ && code < 55 /* `7` */
|
|
66032
|
+
? code - 48 /* `0` */
|
|
66033
|
+
: undefined
|
|
66034
|
+
}
|
|
66035
|
+
|
|
66036
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-to-string/lib/index.js
|
|
66037
|
+
/**
|
|
66038
|
+
* @typedef {import('hast').Nodes} Nodes
|
|
66039
|
+
* @typedef {import('hast').Parents} Parents
|
|
66040
|
+
*/
|
|
66041
|
+
|
|
66042
|
+
/**
|
|
66043
|
+
* Get the plain-text value of a hast node.
|
|
66044
|
+
*
|
|
66045
|
+
* @param {Nodes} node
|
|
66046
|
+
* Node to serialize.
|
|
66047
|
+
* @returns {string}
|
|
66048
|
+
* Serialized node.
|
|
66049
|
+
*/
|
|
66050
|
+
function hast_util_to_string_lib_toString(node) {
|
|
66051
|
+
// “The concatenation of data of all the Text node descendants of the context
|
|
66052
|
+
// object, in tree order.”
|
|
66053
|
+
if ('children' in node) {
|
|
66054
|
+
return hast_util_to_string_lib_all(node)
|
|
66055
|
+
}
|
|
66056
|
+
|
|
66057
|
+
// “Context object’s data.”
|
|
66058
|
+
return 'value' in node ? node.value : ''
|
|
66059
|
+
}
|
|
66060
|
+
|
|
66061
|
+
/**
|
|
66062
|
+
* @param {Nodes} node
|
|
66063
|
+
* Node.
|
|
66064
|
+
* @returns {string}
|
|
66065
|
+
* Serialized node.
|
|
66066
|
+
*/
|
|
66067
|
+
function lib_one(node) {
|
|
66068
|
+
if (node.type === 'text') {
|
|
66069
|
+
return node.value
|
|
66070
|
+
}
|
|
66071
|
+
|
|
66072
|
+
return 'children' in node ? hast_util_to_string_lib_all(node) : ''
|
|
66073
|
+
}
|
|
66074
|
+
|
|
66075
|
+
/**
|
|
66076
|
+
* @param {Parents} node
|
|
66077
|
+
* Node.
|
|
66078
|
+
* @returns {string}
|
|
66079
|
+
* Serialized node.
|
|
66080
|
+
*/
|
|
66081
|
+
function hast_util_to_string_lib_all(node) {
|
|
66082
|
+
let index = -1
|
|
66083
|
+
/** @type {Array<string>} */
|
|
66084
|
+
const result = []
|
|
66085
|
+
|
|
66086
|
+
while (++index < node.children.length) {
|
|
66087
|
+
result[index] = lib_one(node.children[index])
|
|
66088
|
+
}
|
|
66089
|
+
|
|
66090
|
+
return result.join('')
|
|
66091
|
+
}
|
|
66092
|
+
|
|
66093
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/lib/index.js
|
|
66094
|
+
/**
|
|
66095
|
+
* @typedef {import('hast').Root} Root
|
|
66096
|
+
*/
|
|
66097
|
+
|
|
66098
|
+
/**
|
|
66099
|
+
* @typedef Options
|
|
66100
|
+
* Configuration (optional).
|
|
66101
|
+
* @property {string} [prefix='']
|
|
66102
|
+
* Prefix to add in front of `id`s (default: `''`).
|
|
66103
|
+
*/
|
|
66104
|
+
|
|
66105
|
+
|
|
66106
|
+
|
|
66107
|
+
|
|
66108
|
+
|
|
66109
|
+
|
|
66110
|
+
/** @type {Options} */
|
|
66111
|
+
const rehype_slug_lib_emptyOptions = {}
|
|
66112
|
+
const slugs = new BananaSlug()
|
|
66113
|
+
|
|
66114
|
+
/**
|
|
66115
|
+
* Add `id`s to headings.
|
|
66116
|
+
*
|
|
66117
|
+
* @param {Options | null | undefined} [options]
|
|
66118
|
+
* Configuration (optional).
|
|
66119
|
+
* @returns
|
|
66120
|
+
* Transform.
|
|
66121
|
+
*/
|
|
66122
|
+
function rehypeSlug(options) {
|
|
66123
|
+
const settings = options || rehype_slug_lib_emptyOptions
|
|
66124
|
+
const prefix = settings.prefix || ''
|
|
66125
|
+
|
|
66126
|
+
/**
|
|
66127
|
+
* @param {Root} tree
|
|
66128
|
+
* Tree.
|
|
66129
|
+
* @returns {undefined}
|
|
66130
|
+
* Nothing.
|
|
66131
|
+
*/
|
|
66132
|
+
return function (tree) {
|
|
66133
|
+
slugs.reset()
|
|
66134
|
+
|
|
66135
|
+
visit(tree, 'element', function (node) {
|
|
66136
|
+
if (headingRank(node) && !node.properties.id) {
|
|
66137
|
+
node.properties.id = prefix + slugs.slug(hast_util_to_string_lib_toString(node))
|
|
66138
|
+
}
|
|
66139
|
+
})
|
|
66140
|
+
}
|
|
66141
|
+
}
|
|
66142
|
+
|
|
65929
66143
|
;// CONCATENATED MODULE: ./lib/ast-processor.ts
|
|
65930
66144
|
|
|
65931
66145
|
|
|
65932
66146
|
|
|
65933
66147
|
|
|
65934
66148
|
|
|
66149
|
+
|
|
65935
66150
|
const remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform];
|
|
66151
|
+
const rehypePlugins = [rehypeSlug];
|
|
65936
66152
|
const astProcessor = (opts = { components: {} }) => remark()
|
|
65937
66153
|
.use(remarkMdx)
|
|
65938
66154
|
.use(remarkPlugins)
|
|
@@ -77202,221 +77418,6 @@ function compileSync(vfileCompatible, compileOptions) {
|
|
|
77202
77418
|
return core_createProcessor(options).processSync(file)
|
|
77203
77419
|
}
|
|
77204
77420
|
|
|
77205
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/regex.js
|
|
77206
|
-
// This module is generated by `script/`.
|
|
77207
|
-
/* eslint-disable no-control-regex, no-misleading-character-class, no-useless-escape */
|
|
77208
|
-
const regex_regex = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g
|
|
77209
|
-
|
|
77210
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/index.js
|
|
77211
|
-
|
|
77212
|
-
|
|
77213
|
-
const github_slugger_own = Object.hasOwnProperty
|
|
77214
|
-
|
|
77215
|
-
/**
|
|
77216
|
-
* Slugger.
|
|
77217
|
-
*/
|
|
77218
|
-
class BananaSlug {
|
|
77219
|
-
/**
|
|
77220
|
-
* Create a new slug class.
|
|
77221
|
-
*/
|
|
77222
|
-
constructor () {
|
|
77223
|
-
/** @type {Record<string, number>} */
|
|
77224
|
-
// eslint-disable-next-line no-unused-expressions
|
|
77225
|
-
this.occurrences
|
|
77226
|
-
|
|
77227
|
-
this.reset()
|
|
77228
|
-
}
|
|
77229
|
-
|
|
77230
|
-
/**
|
|
77231
|
-
* Generate a unique slug.
|
|
77232
|
-
*
|
|
77233
|
-
* Tracks previously generated slugs: repeated calls with the same value
|
|
77234
|
-
* will result in different slugs.
|
|
77235
|
-
* Use the `slug` function to get same slugs.
|
|
77236
|
-
*
|
|
77237
|
-
* @param {string} value
|
|
77238
|
-
* String of text to slugify
|
|
77239
|
-
* @param {boolean} [maintainCase=false]
|
|
77240
|
-
* Keep the current case, otherwise make all lowercase
|
|
77241
|
-
* @return {string}
|
|
77242
|
-
* A unique slug string
|
|
77243
|
-
*/
|
|
77244
|
-
slug (value, maintainCase) {
|
|
77245
|
-
const self = this
|
|
77246
|
-
let result = slug(value, maintainCase === true)
|
|
77247
|
-
const originalSlug = result
|
|
77248
|
-
|
|
77249
|
-
while (github_slugger_own.call(self.occurrences, result)) {
|
|
77250
|
-
self.occurrences[originalSlug]++
|
|
77251
|
-
result = originalSlug + '-' + self.occurrences[originalSlug]
|
|
77252
|
-
}
|
|
77253
|
-
|
|
77254
|
-
self.occurrences[result] = 0
|
|
77255
|
-
|
|
77256
|
-
return result
|
|
77257
|
-
}
|
|
77258
|
-
|
|
77259
|
-
/**
|
|
77260
|
-
* Reset - Forget all previous slugs
|
|
77261
|
-
*
|
|
77262
|
-
* @return void
|
|
77263
|
-
*/
|
|
77264
|
-
reset () {
|
|
77265
|
-
this.occurrences = Object.create(null)
|
|
77266
|
-
}
|
|
77267
|
-
}
|
|
77268
|
-
|
|
77269
|
-
/**
|
|
77270
|
-
* Generate a slug.
|
|
77271
|
-
*
|
|
77272
|
-
* Does not track previously generated slugs: repeated calls with the same value
|
|
77273
|
-
* will result in the exact same slug.
|
|
77274
|
-
* Use the `GithubSlugger` class to get unique slugs.
|
|
77275
|
-
*
|
|
77276
|
-
* @param {string} value
|
|
77277
|
-
* String of text to slugify
|
|
77278
|
-
* @param {boolean} [maintainCase=false]
|
|
77279
|
-
* Keep the current case, otherwise make all lowercase
|
|
77280
|
-
* @return {string}
|
|
77281
|
-
* A unique slug string
|
|
77282
|
-
*/
|
|
77283
|
-
function slug (value, maintainCase) {
|
|
77284
|
-
if (typeof value !== 'string') return ''
|
|
77285
|
-
if (!maintainCase) value = value.toLowerCase()
|
|
77286
|
-
return value.replace(regex_regex, '').replace(/ /g, '-')
|
|
77287
|
-
}
|
|
77288
|
-
|
|
77289
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-heading-rank/lib/index.js
|
|
77290
|
-
/**
|
|
77291
|
-
* @typedef {import('hast').Nodes} Nodes
|
|
77292
|
-
*/
|
|
77293
|
-
|
|
77294
|
-
/**
|
|
77295
|
-
* Get the rank (`1` to `6`) of headings (`h1` to `h6`).
|
|
77296
|
-
*
|
|
77297
|
-
* @param {Nodes} node
|
|
77298
|
-
* Node to check.
|
|
77299
|
-
* @returns {number | undefined}
|
|
77300
|
-
* Rank of the heading or `undefined` if not a heading.
|
|
77301
|
-
*/
|
|
77302
|
-
function headingRank(node) {
|
|
77303
|
-
const name = node.type === 'element' ? node.tagName.toLowerCase() : ''
|
|
77304
|
-
const code =
|
|
77305
|
-
name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
|
|
77306
|
-
? name.charCodeAt(1)
|
|
77307
|
-
: 0
|
|
77308
|
-
return code > 48 /* `0` */ && code < 55 /* `7` */
|
|
77309
|
-
? code - 48 /* `0` */
|
|
77310
|
-
: undefined
|
|
77311
|
-
}
|
|
77312
|
-
|
|
77313
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-to-string/lib/index.js
|
|
77314
|
-
/**
|
|
77315
|
-
* @typedef {import('hast').Nodes} Nodes
|
|
77316
|
-
* @typedef {import('hast').Parents} Parents
|
|
77317
|
-
*/
|
|
77318
|
-
|
|
77319
|
-
/**
|
|
77320
|
-
* Get the plain-text value of a hast node.
|
|
77321
|
-
*
|
|
77322
|
-
* @param {Nodes} node
|
|
77323
|
-
* Node to serialize.
|
|
77324
|
-
* @returns {string}
|
|
77325
|
-
* Serialized node.
|
|
77326
|
-
*/
|
|
77327
|
-
function hast_util_to_string_lib_toString(node) {
|
|
77328
|
-
// “The concatenation of data of all the Text node descendants of the context
|
|
77329
|
-
// object, in tree order.”
|
|
77330
|
-
if ('children' in node) {
|
|
77331
|
-
return hast_util_to_string_lib_all(node)
|
|
77332
|
-
}
|
|
77333
|
-
|
|
77334
|
-
// “Context object’s data.”
|
|
77335
|
-
return 'value' in node ? node.value : ''
|
|
77336
|
-
}
|
|
77337
|
-
|
|
77338
|
-
/**
|
|
77339
|
-
* @param {Nodes} node
|
|
77340
|
-
* Node.
|
|
77341
|
-
* @returns {string}
|
|
77342
|
-
* Serialized node.
|
|
77343
|
-
*/
|
|
77344
|
-
function lib_one(node) {
|
|
77345
|
-
if (node.type === 'text') {
|
|
77346
|
-
return node.value
|
|
77347
|
-
}
|
|
77348
|
-
|
|
77349
|
-
return 'children' in node ? hast_util_to_string_lib_all(node) : ''
|
|
77350
|
-
}
|
|
77351
|
-
|
|
77352
|
-
/**
|
|
77353
|
-
* @param {Parents} node
|
|
77354
|
-
* Node.
|
|
77355
|
-
* @returns {string}
|
|
77356
|
-
* Serialized node.
|
|
77357
|
-
*/
|
|
77358
|
-
function hast_util_to_string_lib_all(node) {
|
|
77359
|
-
let index = -1
|
|
77360
|
-
/** @type {Array<string>} */
|
|
77361
|
-
const result = []
|
|
77362
|
-
|
|
77363
|
-
while (++index < node.children.length) {
|
|
77364
|
-
result[index] = lib_one(node.children[index])
|
|
77365
|
-
}
|
|
77366
|
-
|
|
77367
|
-
return result.join('')
|
|
77368
|
-
}
|
|
77369
|
-
|
|
77370
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/lib/index.js
|
|
77371
|
-
/**
|
|
77372
|
-
* @typedef {import('hast').Root} Root
|
|
77373
|
-
*/
|
|
77374
|
-
|
|
77375
|
-
/**
|
|
77376
|
-
* @typedef Options
|
|
77377
|
-
* Configuration (optional).
|
|
77378
|
-
* @property {string} [prefix='']
|
|
77379
|
-
* Prefix to add in front of `id`s (default: `''`).
|
|
77380
|
-
*/
|
|
77381
|
-
|
|
77382
|
-
|
|
77383
|
-
|
|
77384
|
-
|
|
77385
|
-
|
|
77386
|
-
|
|
77387
|
-
/** @type {Options} */
|
|
77388
|
-
const rehype_slug_lib_emptyOptions = {}
|
|
77389
|
-
const slugs = new BananaSlug()
|
|
77390
|
-
|
|
77391
|
-
/**
|
|
77392
|
-
* Add `id`s to headings.
|
|
77393
|
-
*
|
|
77394
|
-
* @param {Options | null | undefined} [options]
|
|
77395
|
-
* Configuration (optional).
|
|
77396
|
-
* @returns
|
|
77397
|
-
* Transform.
|
|
77398
|
-
*/
|
|
77399
|
-
function rehypeSlug(options) {
|
|
77400
|
-
const settings = options || rehype_slug_lib_emptyOptions
|
|
77401
|
-
const prefix = settings.prefix || ''
|
|
77402
|
-
|
|
77403
|
-
/**
|
|
77404
|
-
* @param {Root} tree
|
|
77405
|
-
* Tree.
|
|
77406
|
-
* @returns {undefined}
|
|
77407
|
-
* Nothing.
|
|
77408
|
-
*/
|
|
77409
|
-
return function (tree) {
|
|
77410
|
-
slugs.reset()
|
|
77411
|
-
|
|
77412
|
-
visit(tree, 'element', function (node) {
|
|
77413
|
-
if (headingRank(node) && !node.properties.id) {
|
|
77414
|
-
node.properties.id = prefix + slugs.slug(hast_util_to_string_lib_toString(node))
|
|
77415
|
-
}
|
|
77416
|
-
})
|
|
77417
|
-
}
|
|
77418
|
-
}
|
|
77419
|
-
|
|
77420
77421
|
;// CONCATENATED MODULE: ./node_modules/estree-util-value-to-estree/node_modules/is-plain-obj/index.js
|
|
77421
77422
|
function is_plain_obj_isPlainObject(value) {
|
|
77422
77423
|
if (typeof value !== 'object' || value === null) {
|
|
@@ -78581,7 +78582,7 @@ const compile_remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform, trans
|
|
|
78581
78582
|
const compile_compile = (text, _a = {}) => {
|
|
78582
78583
|
var { components } = _a, opts = compile_rest(_a, ["components"]);
|
|
78583
78584
|
try {
|
|
78584
|
-
const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [
|
|
78585
|
+
const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [...rehypePlugins, [rehypeToc, { components }]] }, opts));
|
|
78585
78586
|
return String(vfile).replace(/await import\(_resolveDynamicMdxSpecifier\(('react'|"react")\)\)/, 'arguments[0].imports.React');
|
|
78586
78587
|
}
|
|
78587
78588
|
catch (error) {
|
|
@@ -89026,7 +89027,7 @@ const hast = (text, opts = {}) => {
|
|
|
89026
89027
|
memo[name] = lib_mdast(doc);
|
|
89027
89028
|
return memo;
|
|
89028
89029
|
}, {});
|
|
89029
|
-
const processor = ast_processor(opts).use(inject_components({ components })).use(remarkRehype);
|
|
89030
|
+
const processor = ast_processor(opts).use(inject_components({ components })).use(remarkRehype).use(rehypePlugins);
|
|
89030
89031
|
return processor.runSync(processor.parse(text));
|
|
89031
89032
|
};
|
|
89032
89033
|
const hastFromHtml = (html) => {
|
|
@@ -94430,16 +94431,23 @@ const compatibility_html = (node) => {
|
|
|
94430
94431
|
return xml.replace(/<html.*<body>(.*)<\/body><\/html>/ms, '$1');
|
|
94431
94432
|
};
|
|
94432
94433
|
const figureToImageBlock = (node) => {
|
|
94433
|
-
const _a = node.children.find((child) => child.type === 'image'), { align, width, src, alt, title } = _a, image = compatibility_rest(_a, ["align", "width", "src", "alt", "title"]);
|
|
94434
|
+
const _a = node.children.find((child) => child.type === 'image'), { align, width, src, url, alt, title } = _a, image = compatibility_rest(_a, ["align", "width", "src", "url", "alt", "title"]);
|
|
94434
94435
|
const { className } = image.data.hProperties;
|
|
94435
94436
|
const figcaption = node.children.find((child) => child.type === 'figcaption');
|
|
94436
|
-
const caption = figcaption
|
|
94437
|
-
|
|
94438
|
-
|
|
94439
|
-
|
|
94440
|
-
|
|
94437
|
+
const caption = figcaption
|
|
94438
|
+
? toMarkdown({
|
|
94439
|
+
type: 'paragraph',
|
|
94440
|
+
children: figcaption.children,
|
|
94441
|
+
}).trim()
|
|
94442
|
+
: null;
|
|
94443
|
+
const attributes = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (align && { align })), (alt && { alt })), (className && { border: className === 'border' })), (caption && { caption })), (title && { title })), (width && { width })), { src: src || url });
|
|
94441
94444
|
return `<Image ${formatProps(attributes)} />`;
|
|
94442
94445
|
};
|
|
94446
|
+
const embedToEmbedBlock = (node) => {
|
|
94447
|
+
const _a = node.data.hProperties, { html } = _a, embed = compatibility_rest(_a, ["html"]);
|
|
94448
|
+
const attributes = Object.assign(Object.assign({}, embed), (html && { html: encodeURIComponent(html) }));
|
|
94449
|
+
return `<Embed ${formatProps(attributes)} />`;
|
|
94450
|
+
};
|
|
94443
94451
|
const compatibility = (node) => {
|
|
94444
94452
|
var _a, _b;
|
|
94445
94453
|
switch (node.type) {
|
|
@@ -94456,8 +94464,7 @@ const compatibility = (node) => {
|
|
|
94456
94464
|
case 'figure':
|
|
94457
94465
|
return figureToImageBlock(node);
|
|
94458
94466
|
case 'embed':
|
|
94459
|
-
|
|
94460
|
-
return `<Embed ${attributes} />`;
|
|
94467
|
+
return embedToEmbedBlock(node);
|
|
94461
94468
|
default:
|
|
94462
94469
|
throw new Error('Unhandled node type!');
|
|
94463
94470
|
}
|
package/dist/main.node.js
CHANGED
|
@@ -14334,7 +14334,7 @@ const CreateHeading = (depth) => (props) => external_amd_react_commonjs_react_co
|
|
|
14334
14334
|
;// CONCATENATED MODULE: ./components/Image/index.tsx
|
|
14335
14335
|
|
|
14336
14336
|
const Image = (Props) => {
|
|
14337
|
-
const { align = '', alt = '', border = false, caption, className = '', height = 'auto', src, title = '', width = 'auto', lazy =
|
|
14337
|
+
const { align = 'center', alt = '', border = false, caption, className = '', height = 'auto', src, title = '', width = 'auto', lazy = true, children, } = Props;
|
|
14338
14338
|
const [lightbox, setLightbox] = external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.useState(false);
|
|
14339
14339
|
if (className === 'emoji') {
|
|
14340
14340
|
return external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, alt: alt, loading: lazy ? 'lazy' : 'eager' });
|
|
@@ -14362,16 +14362,15 @@ const Image = (Props) => {
|
|
|
14362
14362
|
setLightbox(!lightbox);
|
|
14363
14363
|
};
|
|
14364
14364
|
if (caption) {
|
|
14365
|
-
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14366
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { className:
|
|
14367
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14368
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-center
|
|
14365
|
+
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("figure", null,
|
|
14366
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { "aria-label": alt, className: `img lightbox ${lightbox ? 'open' : 'closed'}`, onClick: toggle, onKeyDown: handleKeyDown, role: 'button', tabIndex: 0 },
|
|
14367
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { className: "lightbox-inner" },
|
|
14368
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-center${border ? ' border' : ''}`, alt: alt, loading: lazy ? 'lazy' : 'eager' }),
|
|
14369
14369
|
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("figcaption", null, children || caption)))));
|
|
14370
14370
|
}
|
|
14371
|
-
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14372
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", {
|
|
14373
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("
|
|
14374
|
-
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-${align} ${border ? 'border' : ''}`, alt: alt, loading: lazy ? 'lazy' : 'eager' })))));
|
|
14371
|
+
return (external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { "aria-label": alt, className: `img lightbox ${lightbox ? 'open' : 'closed'}`, onClick: toggle, onKeyDown: handleKeyDown, role: 'button', tabIndex: 0 },
|
|
14372
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("span", { className: "lightbox-inner" },
|
|
14373
|
+
external_amd_react_commonjs_react_commonjs2_react_root_React_umd_react_.createElement("img", { src: src, width: width, height: height, title: title, className: `img img-align-${align}${border ? ' border' : ''}`, alt: alt, loading: lazy ? 'lazy' : 'eager' }))));
|
|
14375
14374
|
};
|
|
14376
14375
|
/* harmony default export */ const components_Image = (Image);
|
|
14377
14376
|
|
|
@@ -67379,13 +67378,230 @@ const variables = ({ asMdx } = { asMdx: true }) => tree => {
|
|
|
67379
67378
|
|
|
67380
67379
|
/* harmony default export */ const transform = ([callouts, code_tabs, transform_embeds, transform_images, gemoji_]);
|
|
67381
67380
|
|
|
67381
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/regex.js
|
|
67382
|
+
// This module is generated by `script/`.
|
|
67383
|
+
/* eslint-disable no-control-regex, no-misleading-character-class, no-useless-escape */
|
|
67384
|
+
const regex_regex = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g
|
|
67385
|
+
|
|
67386
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/index.js
|
|
67387
|
+
|
|
67388
|
+
|
|
67389
|
+
const github_slugger_own = Object.hasOwnProperty
|
|
67390
|
+
|
|
67391
|
+
/**
|
|
67392
|
+
* Slugger.
|
|
67393
|
+
*/
|
|
67394
|
+
class BananaSlug {
|
|
67395
|
+
/**
|
|
67396
|
+
* Create a new slug class.
|
|
67397
|
+
*/
|
|
67398
|
+
constructor () {
|
|
67399
|
+
/** @type {Record<string, number>} */
|
|
67400
|
+
// eslint-disable-next-line no-unused-expressions
|
|
67401
|
+
this.occurrences
|
|
67402
|
+
|
|
67403
|
+
this.reset()
|
|
67404
|
+
}
|
|
67405
|
+
|
|
67406
|
+
/**
|
|
67407
|
+
* Generate a unique slug.
|
|
67408
|
+
*
|
|
67409
|
+
* Tracks previously generated slugs: repeated calls with the same value
|
|
67410
|
+
* will result in different slugs.
|
|
67411
|
+
* Use the `slug` function to get same slugs.
|
|
67412
|
+
*
|
|
67413
|
+
* @param {string} value
|
|
67414
|
+
* String of text to slugify
|
|
67415
|
+
* @param {boolean} [maintainCase=false]
|
|
67416
|
+
* Keep the current case, otherwise make all lowercase
|
|
67417
|
+
* @return {string}
|
|
67418
|
+
* A unique slug string
|
|
67419
|
+
*/
|
|
67420
|
+
slug (value, maintainCase) {
|
|
67421
|
+
const self = this
|
|
67422
|
+
let result = slug(value, maintainCase === true)
|
|
67423
|
+
const originalSlug = result
|
|
67424
|
+
|
|
67425
|
+
while (github_slugger_own.call(self.occurrences, result)) {
|
|
67426
|
+
self.occurrences[originalSlug]++
|
|
67427
|
+
result = originalSlug + '-' + self.occurrences[originalSlug]
|
|
67428
|
+
}
|
|
67429
|
+
|
|
67430
|
+
self.occurrences[result] = 0
|
|
67431
|
+
|
|
67432
|
+
return result
|
|
67433
|
+
}
|
|
67434
|
+
|
|
67435
|
+
/**
|
|
67436
|
+
* Reset - Forget all previous slugs
|
|
67437
|
+
*
|
|
67438
|
+
* @return void
|
|
67439
|
+
*/
|
|
67440
|
+
reset () {
|
|
67441
|
+
this.occurrences = Object.create(null)
|
|
67442
|
+
}
|
|
67443
|
+
}
|
|
67444
|
+
|
|
67445
|
+
/**
|
|
67446
|
+
* Generate a slug.
|
|
67447
|
+
*
|
|
67448
|
+
* Does not track previously generated slugs: repeated calls with the same value
|
|
67449
|
+
* will result in the exact same slug.
|
|
67450
|
+
* Use the `GithubSlugger` class to get unique slugs.
|
|
67451
|
+
*
|
|
67452
|
+
* @param {string} value
|
|
67453
|
+
* String of text to slugify
|
|
67454
|
+
* @param {boolean} [maintainCase=false]
|
|
67455
|
+
* Keep the current case, otherwise make all lowercase
|
|
67456
|
+
* @return {string}
|
|
67457
|
+
* A unique slug string
|
|
67458
|
+
*/
|
|
67459
|
+
function slug (value, maintainCase) {
|
|
67460
|
+
if (typeof value !== 'string') return ''
|
|
67461
|
+
if (!maintainCase) value = value.toLowerCase()
|
|
67462
|
+
return value.replace(regex_regex, '').replace(/ /g, '-')
|
|
67463
|
+
}
|
|
67464
|
+
|
|
67465
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-heading-rank/lib/index.js
|
|
67466
|
+
/**
|
|
67467
|
+
* @typedef {import('hast').Nodes} Nodes
|
|
67468
|
+
*/
|
|
67469
|
+
|
|
67470
|
+
/**
|
|
67471
|
+
* Get the rank (`1` to `6`) of headings (`h1` to `h6`).
|
|
67472
|
+
*
|
|
67473
|
+
* @param {Nodes} node
|
|
67474
|
+
* Node to check.
|
|
67475
|
+
* @returns {number | undefined}
|
|
67476
|
+
* Rank of the heading or `undefined` if not a heading.
|
|
67477
|
+
*/
|
|
67478
|
+
function headingRank(node) {
|
|
67479
|
+
const name = node.type === 'element' ? node.tagName.toLowerCase() : ''
|
|
67480
|
+
const code =
|
|
67481
|
+
name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
|
|
67482
|
+
? name.charCodeAt(1)
|
|
67483
|
+
: 0
|
|
67484
|
+
return code > 48 /* `0` */ && code < 55 /* `7` */
|
|
67485
|
+
? code - 48 /* `0` */
|
|
67486
|
+
: undefined
|
|
67487
|
+
}
|
|
67488
|
+
|
|
67489
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-to-string/lib/index.js
|
|
67490
|
+
/**
|
|
67491
|
+
* @typedef {import('hast').Nodes} Nodes
|
|
67492
|
+
* @typedef {import('hast').Parents} Parents
|
|
67493
|
+
*/
|
|
67494
|
+
|
|
67495
|
+
/**
|
|
67496
|
+
* Get the plain-text value of a hast node.
|
|
67497
|
+
*
|
|
67498
|
+
* @param {Nodes} node
|
|
67499
|
+
* Node to serialize.
|
|
67500
|
+
* @returns {string}
|
|
67501
|
+
* Serialized node.
|
|
67502
|
+
*/
|
|
67503
|
+
function hast_util_to_string_lib_toString(node) {
|
|
67504
|
+
// “The concatenation of data of all the Text node descendants of the context
|
|
67505
|
+
// object, in tree order.”
|
|
67506
|
+
if ('children' in node) {
|
|
67507
|
+
return hast_util_to_string_lib_all(node)
|
|
67508
|
+
}
|
|
67509
|
+
|
|
67510
|
+
// “Context object’s data.”
|
|
67511
|
+
return 'value' in node ? node.value : ''
|
|
67512
|
+
}
|
|
67513
|
+
|
|
67514
|
+
/**
|
|
67515
|
+
* @param {Nodes} node
|
|
67516
|
+
* Node.
|
|
67517
|
+
* @returns {string}
|
|
67518
|
+
* Serialized node.
|
|
67519
|
+
*/
|
|
67520
|
+
function lib_one(node) {
|
|
67521
|
+
if (node.type === 'text') {
|
|
67522
|
+
return node.value
|
|
67523
|
+
}
|
|
67524
|
+
|
|
67525
|
+
return 'children' in node ? hast_util_to_string_lib_all(node) : ''
|
|
67526
|
+
}
|
|
67527
|
+
|
|
67528
|
+
/**
|
|
67529
|
+
* @param {Parents} node
|
|
67530
|
+
* Node.
|
|
67531
|
+
* @returns {string}
|
|
67532
|
+
* Serialized node.
|
|
67533
|
+
*/
|
|
67534
|
+
function hast_util_to_string_lib_all(node) {
|
|
67535
|
+
let index = -1
|
|
67536
|
+
/** @type {Array<string>} */
|
|
67537
|
+
const result = []
|
|
67538
|
+
|
|
67539
|
+
while (++index < node.children.length) {
|
|
67540
|
+
result[index] = lib_one(node.children[index])
|
|
67541
|
+
}
|
|
67542
|
+
|
|
67543
|
+
return result.join('')
|
|
67544
|
+
}
|
|
67545
|
+
|
|
67546
|
+
;// CONCATENATED MODULE: ./node_modules/rehype-slug/lib/index.js
|
|
67547
|
+
/**
|
|
67548
|
+
* @typedef {import('hast').Root} Root
|
|
67549
|
+
*/
|
|
67550
|
+
|
|
67551
|
+
/**
|
|
67552
|
+
* @typedef Options
|
|
67553
|
+
* Configuration (optional).
|
|
67554
|
+
* @property {string} [prefix='']
|
|
67555
|
+
* Prefix to add in front of `id`s (default: `''`).
|
|
67556
|
+
*/
|
|
67557
|
+
|
|
67558
|
+
|
|
67559
|
+
|
|
67560
|
+
|
|
67561
|
+
|
|
67562
|
+
|
|
67563
|
+
/** @type {Options} */
|
|
67564
|
+
const rehype_slug_lib_emptyOptions = {}
|
|
67565
|
+
const slugs = new BananaSlug()
|
|
67566
|
+
|
|
67567
|
+
/**
|
|
67568
|
+
* Add `id`s to headings.
|
|
67569
|
+
*
|
|
67570
|
+
* @param {Options | null | undefined} [options]
|
|
67571
|
+
* Configuration (optional).
|
|
67572
|
+
* @returns
|
|
67573
|
+
* Transform.
|
|
67574
|
+
*/
|
|
67575
|
+
function rehypeSlug(options) {
|
|
67576
|
+
const settings = options || rehype_slug_lib_emptyOptions
|
|
67577
|
+
const prefix = settings.prefix || ''
|
|
67578
|
+
|
|
67579
|
+
/**
|
|
67580
|
+
* @param {Root} tree
|
|
67581
|
+
* Tree.
|
|
67582
|
+
* @returns {undefined}
|
|
67583
|
+
* Nothing.
|
|
67584
|
+
*/
|
|
67585
|
+
return function (tree) {
|
|
67586
|
+
slugs.reset()
|
|
67587
|
+
|
|
67588
|
+
visit(tree, 'element', function (node) {
|
|
67589
|
+
if (headingRank(node) && !node.properties.id) {
|
|
67590
|
+
node.properties.id = prefix + slugs.slug(hast_util_to_string_lib_toString(node))
|
|
67591
|
+
}
|
|
67592
|
+
})
|
|
67593
|
+
}
|
|
67594
|
+
}
|
|
67595
|
+
|
|
67382
67596
|
;// CONCATENATED MODULE: ./lib/ast-processor.ts
|
|
67383
67597
|
|
|
67384
67598
|
|
|
67385
67599
|
|
|
67386
67600
|
|
|
67387
67601
|
|
|
67602
|
+
|
|
67388
67603
|
const remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform];
|
|
67604
|
+
const rehypePlugins = [rehypeSlug];
|
|
67389
67605
|
const astProcessor = (opts = { components: {} }) => remark()
|
|
67390
67606
|
.use(remarkMdx)
|
|
67391
67607
|
.use(remarkPlugins)
|
|
@@ -78655,221 +78871,6 @@ function compileSync(vfileCompatible, compileOptions) {
|
|
|
78655
78871
|
return core_createProcessor(options).processSync(file)
|
|
78656
78872
|
}
|
|
78657
78873
|
|
|
78658
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/regex.js
|
|
78659
|
-
// This module is generated by `script/`.
|
|
78660
|
-
/* eslint-disable no-control-regex, no-misleading-character-class, no-useless-escape */
|
|
78661
|
-
const regex_regex = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g
|
|
78662
|
-
|
|
78663
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/index.js
|
|
78664
|
-
|
|
78665
|
-
|
|
78666
|
-
const github_slugger_own = Object.hasOwnProperty
|
|
78667
|
-
|
|
78668
|
-
/**
|
|
78669
|
-
* Slugger.
|
|
78670
|
-
*/
|
|
78671
|
-
class BananaSlug {
|
|
78672
|
-
/**
|
|
78673
|
-
* Create a new slug class.
|
|
78674
|
-
*/
|
|
78675
|
-
constructor () {
|
|
78676
|
-
/** @type {Record<string, number>} */
|
|
78677
|
-
// eslint-disable-next-line no-unused-expressions
|
|
78678
|
-
this.occurrences
|
|
78679
|
-
|
|
78680
|
-
this.reset()
|
|
78681
|
-
}
|
|
78682
|
-
|
|
78683
|
-
/**
|
|
78684
|
-
* Generate a unique slug.
|
|
78685
|
-
*
|
|
78686
|
-
* Tracks previously generated slugs: repeated calls with the same value
|
|
78687
|
-
* will result in different slugs.
|
|
78688
|
-
* Use the `slug` function to get same slugs.
|
|
78689
|
-
*
|
|
78690
|
-
* @param {string} value
|
|
78691
|
-
* String of text to slugify
|
|
78692
|
-
* @param {boolean} [maintainCase=false]
|
|
78693
|
-
* Keep the current case, otherwise make all lowercase
|
|
78694
|
-
* @return {string}
|
|
78695
|
-
* A unique slug string
|
|
78696
|
-
*/
|
|
78697
|
-
slug (value, maintainCase) {
|
|
78698
|
-
const self = this
|
|
78699
|
-
let result = slug(value, maintainCase === true)
|
|
78700
|
-
const originalSlug = result
|
|
78701
|
-
|
|
78702
|
-
while (github_slugger_own.call(self.occurrences, result)) {
|
|
78703
|
-
self.occurrences[originalSlug]++
|
|
78704
|
-
result = originalSlug + '-' + self.occurrences[originalSlug]
|
|
78705
|
-
}
|
|
78706
|
-
|
|
78707
|
-
self.occurrences[result] = 0
|
|
78708
|
-
|
|
78709
|
-
return result
|
|
78710
|
-
}
|
|
78711
|
-
|
|
78712
|
-
/**
|
|
78713
|
-
* Reset - Forget all previous slugs
|
|
78714
|
-
*
|
|
78715
|
-
* @return void
|
|
78716
|
-
*/
|
|
78717
|
-
reset () {
|
|
78718
|
-
this.occurrences = Object.create(null)
|
|
78719
|
-
}
|
|
78720
|
-
}
|
|
78721
|
-
|
|
78722
|
-
/**
|
|
78723
|
-
* Generate a slug.
|
|
78724
|
-
*
|
|
78725
|
-
* Does not track previously generated slugs: repeated calls with the same value
|
|
78726
|
-
* will result in the exact same slug.
|
|
78727
|
-
* Use the `GithubSlugger` class to get unique slugs.
|
|
78728
|
-
*
|
|
78729
|
-
* @param {string} value
|
|
78730
|
-
* String of text to slugify
|
|
78731
|
-
* @param {boolean} [maintainCase=false]
|
|
78732
|
-
* Keep the current case, otherwise make all lowercase
|
|
78733
|
-
* @return {string}
|
|
78734
|
-
* A unique slug string
|
|
78735
|
-
*/
|
|
78736
|
-
function slug (value, maintainCase) {
|
|
78737
|
-
if (typeof value !== 'string') return ''
|
|
78738
|
-
if (!maintainCase) value = value.toLowerCase()
|
|
78739
|
-
return value.replace(regex_regex, '').replace(/ /g, '-')
|
|
78740
|
-
}
|
|
78741
|
-
|
|
78742
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-heading-rank/lib/index.js
|
|
78743
|
-
/**
|
|
78744
|
-
* @typedef {import('hast').Nodes} Nodes
|
|
78745
|
-
*/
|
|
78746
|
-
|
|
78747
|
-
/**
|
|
78748
|
-
* Get the rank (`1` to `6`) of headings (`h1` to `h6`).
|
|
78749
|
-
*
|
|
78750
|
-
* @param {Nodes} node
|
|
78751
|
-
* Node to check.
|
|
78752
|
-
* @returns {number | undefined}
|
|
78753
|
-
* Rank of the heading or `undefined` if not a heading.
|
|
78754
|
-
*/
|
|
78755
|
-
function headingRank(node) {
|
|
78756
|
-
const name = node.type === 'element' ? node.tagName.toLowerCase() : ''
|
|
78757
|
-
const code =
|
|
78758
|
-
name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
|
|
78759
|
-
? name.charCodeAt(1)
|
|
78760
|
-
: 0
|
|
78761
|
-
return code > 48 /* `0` */ && code < 55 /* `7` */
|
|
78762
|
-
? code - 48 /* `0` */
|
|
78763
|
-
: undefined
|
|
78764
|
-
}
|
|
78765
|
-
|
|
78766
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-to-string/lib/index.js
|
|
78767
|
-
/**
|
|
78768
|
-
* @typedef {import('hast').Nodes} Nodes
|
|
78769
|
-
* @typedef {import('hast').Parents} Parents
|
|
78770
|
-
*/
|
|
78771
|
-
|
|
78772
|
-
/**
|
|
78773
|
-
* Get the plain-text value of a hast node.
|
|
78774
|
-
*
|
|
78775
|
-
* @param {Nodes} node
|
|
78776
|
-
* Node to serialize.
|
|
78777
|
-
* @returns {string}
|
|
78778
|
-
* Serialized node.
|
|
78779
|
-
*/
|
|
78780
|
-
function hast_util_to_string_lib_toString(node) {
|
|
78781
|
-
// “The concatenation of data of all the Text node descendants of the context
|
|
78782
|
-
// object, in tree order.”
|
|
78783
|
-
if ('children' in node) {
|
|
78784
|
-
return hast_util_to_string_lib_all(node)
|
|
78785
|
-
}
|
|
78786
|
-
|
|
78787
|
-
// “Context object’s data.”
|
|
78788
|
-
return 'value' in node ? node.value : ''
|
|
78789
|
-
}
|
|
78790
|
-
|
|
78791
|
-
/**
|
|
78792
|
-
* @param {Nodes} node
|
|
78793
|
-
* Node.
|
|
78794
|
-
* @returns {string}
|
|
78795
|
-
* Serialized node.
|
|
78796
|
-
*/
|
|
78797
|
-
function lib_one(node) {
|
|
78798
|
-
if (node.type === 'text') {
|
|
78799
|
-
return node.value
|
|
78800
|
-
}
|
|
78801
|
-
|
|
78802
|
-
return 'children' in node ? hast_util_to_string_lib_all(node) : ''
|
|
78803
|
-
}
|
|
78804
|
-
|
|
78805
|
-
/**
|
|
78806
|
-
* @param {Parents} node
|
|
78807
|
-
* Node.
|
|
78808
|
-
* @returns {string}
|
|
78809
|
-
* Serialized node.
|
|
78810
|
-
*/
|
|
78811
|
-
function hast_util_to_string_lib_all(node) {
|
|
78812
|
-
let index = -1
|
|
78813
|
-
/** @type {Array<string>} */
|
|
78814
|
-
const result = []
|
|
78815
|
-
|
|
78816
|
-
while (++index < node.children.length) {
|
|
78817
|
-
result[index] = lib_one(node.children[index])
|
|
78818
|
-
}
|
|
78819
|
-
|
|
78820
|
-
return result.join('')
|
|
78821
|
-
}
|
|
78822
|
-
|
|
78823
|
-
;// CONCATENATED MODULE: ./node_modules/rehype-slug/lib/index.js
|
|
78824
|
-
/**
|
|
78825
|
-
* @typedef {import('hast').Root} Root
|
|
78826
|
-
*/
|
|
78827
|
-
|
|
78828
|
-
/**
|
|
78829
|
-
* @typedef Options
|
|
78830
|
-
* Configuration (optional).
|
|
78831
|
-
* @property {string} [prefix='']
|
|
78832
|
-
* Prefix to add in front of `id`s (default: `''`).
|
|
78833
|
-
*/
|
|
78834
|
-
|
|
78835
|
-
|
|
78836
|
-
|
|
78837
|
-
|
|
78838
|
-
|
|
78839
|
-
|
|
78840
|
-
/** @type {Options} */
|
|
78841
|
-
const rehype_slug_lib_emptyOptions = {}
|
|
78842
|
-
const slugs = new BananaSlug()
|
|
78843
|
-
|
|
78844
|
-
/**
|
|
78845
|
-
* Add `id`s to headings.
|
|
78846
|
-
*
|
|
78847
|
-
* @param {Options | null | undefined} [options]
|
|
78848
|
-
* Configuration (optional).
|
|
78849
|
-
* @returns
|
|
78850
|
-
* Transform.
|
|
78851
|
-
*/
|
|
78852
|
-
function rehypeSlug(options) {
|
|
78853
|
-
const settings = options || rehype_slug_lib_emptyOptions
|
|
78854
|
-
const prefix = settings.prefix || ''
|
|
78855
|
-
|
|
78856
|
-
/**
|
|
78857
|
-
* @param {Root} tree
|
|
78858
|
-
* Tree.
|
|
78859
|
-
* @returns {undefined}
|
|
78860
|
-
* Nothing.
|
|
78861
|
-
*/
|
|
78862
|
-
return function (tree) {
|
|
78863
|
-
slugs.reset()
|
|
78864
|
-
|
|
78865
|
-
visit(tree, 'element', function (node) {
|
|
78866
|
-
if (headingRank(node) && !node.properties.id) {
|
|
78867
|
-
node.properties.id = prefix + slugs.slug(hast_util_to_string_lib_toString(node))
|
|
78868
|
-
}
|
|
78869
|
-
})
|
|
78870
|
-
}
|
|
78871
|
-
}
|
|
78872
|
-
|
|
78873
78874
|
;// CONCATENATED MODULE: ./node_modules/estree-util-value-to-estree/node_modules/is-plain-obj/index.js
|
|
78874
78875
|
function is_plain_obj_isPlainObject(value) {
|
|
78875
78876
|
if (typeof value !== 'object' || value === null) {
|
|
@@ -80034,7 +80035,7 @@ const compile_remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform, trans
|
|
|
80034
80035
|
const compile_compile = (text, _a = {}) => {
|
|
80035
80036
|
var { components } = _a, opts = compile_rest(_a, ["components"]);
|
|
80036
80037
|
try {
|
|
80037
|
-
const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [
|
|
80038
|
+
const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [...rehypePlugins, [rehypeToc, { components }]] }, opts));
|
|
80038
80039
|
return String(vfile).replace(/await import\(_resolveDynamicMdxSpecifier\(('react'|"react")\)\)/, 'arguments[0].imports.React');
|
|
80039
80040
|
}
|
|
80040
80041
|
catch (error) {
|
|
@@ -90479,7 +90480,7 @@ const hast = (text, opts = {}) => {
|
|
|
90479
90480
|
memo[name] = lib_mdast(doc);
|
|
90480
90481
|
return memo;
|
|
90481
90482
|
}, {});
|
|
90482
|
-
const processor = ast_processor(opts).use(inject_components({ components })).use(remarkRehype);
|
|
90483
|
+
const processor = ast_processor(opts).use(inject_components({ components })).use(remarkRehype).use(rehypePlugins);
|
|
90483
90484
|
return processor.runSync(processor.parse(text));
|
|
90484
90485
|
};
|
|
90485
90486
|
const hastFromHtml = (html) => {
|
|
@@ -95883,16 +95884,23 @@ const compatibility_html = (node) => {
|
|
|
95883
95884
|
return xml.replace(/<html.*<body>(.*)<\/body><\/html>/ms, '$1');
|
|
95884
95885
|
};
|
|
95885
95886
|
const figureToImageBlock = (node) => {
|
|
95886
|
-
const _a = node.children.find((child) => child.type === 'image'), { align, width, src, alt, title } = _a, image = compatibility_rest(_a, ["align", "width", "src", "alt", "title"]);
|
|
95887
|
+
const _a = node.children.find((child) => child.type === 'image'), { align, width, src, url, alt, title } = _a, image = compatibility_rest(_a, ["align", "width", "src", "url", "alt", "title"]);
|
|
95887
95888
|
const { className } = image.data.hProperties;
|
|
95888
95889
|
const figcaption = node.children.find((child) => child.type === 'figcaption');
|
|
95889
|
-
const caption = figcaption
|
|
95890
|
-
|
|
95891
|
-
|
|
95892
|
-
|
|
95893
|
-
|
|
95890
|
+
const caption = figcaption
|
|
95891
|
+
? toMarkdown({
|
|
95892
|
+
type: 'paragraph',
|
|
95893
|
+
children: figcaption.children,
|
|
95894
|
+
}).trim()
|
|
95895
|
+
: null;
|
|
95896
|
+
const attributes = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (align && { align })), (alt && { alt })), (className && { border: className === 'border' })), (caption && { caption })), (title && { title })), (width && { width })), { src: src || url });
|
|
95894
95897
|
return `<Image ${formatProps(attributes)} />`;
|
|
95895
95898
|
};
|
|
95899
|
+
const embedToEmbedBlock = (node) => {
|
|
95900
|
+
const _a = node.data.hProperties, { html } = _a, embed = compatibility_rest(_a, ["html"]);
|
|
95901
|
+
const attributes = Object.assign(Object.assign({}, embed), (html && { html: encodeURIComponent(html) }));
|
|
95902
|
+
return `<Embed ${formatProps(attributes)} />`;
|
|
95903
|
+
};
|
|
95896
95904
|
const compatibility = (node) => {
|
|
95897
95905
|
var _a, _b;
|
|
95898
95906
|
switch (node.type) {
|
|
@@ -95909,8 +95917,7 @@ const compatibility = (node) => {
|
|
|
95909
95917
|
case 'figure':
|
|
95910
95918
|
return figureToImageBlock(node);
|
|
95911
95919
|
case 'embed':
|
|
95912
|
-
|
|
95913
|
-
return `<Embed ${attributes} />`;
|
|
95920
|
+
return embedToEmbedBlock(node);
|
|
95914
95921
|
default:
|
|
95915
95922
|
throw new Error('Unhandled node type!');
|
|
95916
95923
|
}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@readme/markdown",
|
|
3
3
|
"description": "ReadMe's React-based Markdown parser",
|
|
4
4
|
"author": "Rafe Goldberg <rafe@readme.io>",
|
|
5
|
-
"version": "6.75.0-beta.
|
|
5
|
+
"version": "6.75.0-beta.67",
|
|
6
6
|
"main": "dist/main.node.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"browser": "dist/main.js",
|
|
@@ -137,11 +137,11 @@
|
|
|
137
137
|
"files": [
|
|
138
138
|
{
|
|
139
139
|
"path": "dist/main.js",
|
|
140
|
-
"maxSize": "
|
|
140
|
+
"maxSize": "1MB"
|
|
141
141
|
},
|
|
142
142
|
{
|
|
143
143
|
"path": "dist/main.node.js",
|
|
144
|
-
"maxSize": "
|
|
144
|
+
"maxSize": "750KB"
|
|
145
145
|
}
|
|
146
146
|
]
|
|
147
147
|
}
|