@readme/markdown 6.75.0-beta.66 → 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.
@@ -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
@@ -65925,13 +65925,230 @@ const variables = ({ asMdx } = { asMdx: true }) => tree => {
65925
65925
 
65926
65926
  /* harmony default export */ const transform = ([callouts, code_tabs, transform_embeds, transform_images, gemoji_]);
65927
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
+
65928
66143
  ;// CONCATENATED MODULE: ./lib/ast-processor.ts
65929
66144
 
65930
66145
 
65931
66146
 
65932
66147
 
65933
66148
 
66149
+
65934
66150
  const remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform];
66151
+ const rehypePlugins = [rehypeSlug];
65935
66152
  const astProcessor = (opts = { components: {} }) => remark()
65936
66153
  .use(remarkMdx)
65937
66154
  .use(remarkPlugins)
@@ -77201,221 +77418,6 @@ function compileSync(vfileCompatible, compileOptions) {
77201
77418
  return core_createProcessor(options).processSync(file)
77202
77419
  }
77203
77420
 
77204
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/regex.js
77205
- // This module is generated by `script/`.
77206
- /* eslint-disable no-control-regex, no-misleading-character-class, no-useless-escape */
77207
- 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
77208
-
77209
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/index.js
77210
-
77211
-
77212
- const github_slugger_own = Object.hasOwnProperty
77213
-
77214
- /**
77215
- * Slugger.
77216
- */
77217
- class BananaSlug {
77218
- /**
77219
- * Create a new slug class.
77220
- */
77221
- constructor () {
77222
- /** @type {Record<string, number>} */
77223
- // eslint-disable-next-line no-unused-expressions
77224
- this.occurrences
77225
-
77226
- this.reset()
77227
- }
77228
-
77229
- /**
77230
- * Generate a unique slug.
77231
- *
77232
- * Tracks previously generated slugs: repeated calls with the same value
77233
- * will result in different slugs.
77234
- * Use the `slug` function to get same slugs.
77235
- *
77236
- * @param {string} value
77237
- * String of text to slugify
77238
- * @param {boolean} [maintainCase=false]
77239
- * Keep the current case, otherwise make all lowercase
77240
- * @return {string}
77241
- * A unique slug string
77242
- */
77243
- slug (value, maintainCase) {
77244
- const self = this
77245
- let result = slug(value, maintainCase === true)
77246
- const originalSlug = result
77247
-
77248
- while (github_slugger_own.call(self.occurrences, result)) {
77249
- self.occurrences[originalSlug]++
77250
- result = originalSlug + '-' + self.occurrences[originalSlug]
77251
- }
77252
-
77253
- self.occurrences[result] = 0
77254
-
77255
- return result
77256
- }
77257
-
77258
- /**
77259
- * Reset - Forget all previous slugs
77260
- *
77261
- * @return void
77262
- */
77263
- reset () {
77264
- this.occurrences = Object.create(null)
77265
- }
77266
- }
77267
-
77268
- /**
77269
- * Generate a slug.
77270
- *
77271
- * Does not track previously generated slugs: repeated calls with the same value
77272
- * will result in the exact same slug.
77273
- * Use the `GithubSlugger` class to get unique slugs.
77274
- *
77275
- * @param {string} value
77276
- * String of text to slugify
77277
- * @param {boolean} [maintainCase=false]
77278
- * Keep the current case, otherwise make all lowercase
77279
- * @return {string}
77280
- * A unique slug string
77281
- */
77282
- function slug (value, maintainCase) {
77283
- if (typeof value !== 'string') return ''
77284
- if (!maintainCase) value = value.toLowerCase()
77285
- return value.replace(regex_regex, '').replace(/ /g, '-')
77286
- }
77287
-
77288
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-heading-rank/lib/index.js
77289
- /**
77290
- * @typedef {import('hast').Nodes} Nodes
77291
- */
77292
-
77293
- /**
77294
- * Get the rank (`1` to `6`) of headings (`h1` to `h6`).
77295
- *
77296
- * @param {Nodes} node
77297
- * Node to check.
77298
- * @returns {number | undefined}
77299
- * Rank of the heading or `undefined` if not a heading.
77300
- */
77301
- function headingRank(node) {
77302
- const name = node.type === 'element' ? node.tagName.toLowerCase() : ''
77303
- const code =
77304
- name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
77305
- ? name.charCodeAt(1)
77306
- : 0
77307
- return code > 48 /* `0` */ && code < 55 /* `7` */
77308
- ? code - 48 /* `0` */
77309
- : undefined
77310
- }
77311
-
77312
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-to-string/lib/index.js
77313
- /**
77314
- * @typedef {import('hast').Nodes} Nodes
77315
- * @typedef {import('hast').Parents} Parents
77316
- */
77317
-
77318
- /**
77319
- * Get the plain-text value of a hast node.
77320
- *
77321
- * @param {Nodes} node
77322
- * Node to serialize.
77323
- * @returns {string}
77324
- * Serialized node.
77325
- */
77326
- function hast_util_to_string_lib_toString(node) {
77327
- // “The concatenation of data of all the Text node descendants of the context
77328
- // object, in tree order.”
77329
- if ('children' in node) {
77330
- return hast_util_to_string_lib_all(node)
77331
- }
77332
-
77333
- // “Context object’s data.”
77334
- return 'value' in node ? node.value : ''
77335
- }
77336
-
77337
- /**
77338
- * @param {Nodes} node
77339
- * Node.
77340
- * @returns {string}
77341
- * Serialized node.
77342
- */
77343
- function lib_one(node) {
77344
- if (node.type === 'text') {
77345
- return node.value
77346
- }
77347
-
77348
- return 'children' in node ? hast_util_to_string_lib_all(node) : ''
77349
- }
77350
-
77351
- /**
77352
- * @param {Parents} node
77353
- * Node.
77354
- * @returns {string}
77355
- * Serialized node.
77356
- */
77357
- function hast_util_to_string_lib_all(node) {
77358
- let index = -1
77359
- /** @type {Array<string>} */
77360
- const result = []
77361
-
77362
- while (++index < node.children.length) {
77363
- result[index] = lib_one(node.children[index])
77364
- }
77365
-
77366
- return result.join('')
77367
- }
77368
-
77369
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/lib/index.js
77370
- /**
77371
- * @typedef {import('hast').Root} Root
77372
- */
77373
-
77374
- /**
77375
- * @typedef Options
77376
- * Configuration (optional).
77377
- * @property {string} [prefix='']
77378
- * Prefix to add in front of `id`s (default: `''`).
77379
- */
77380
-
77381
-
77382
-
77383
-
77384
-
77385
-
77386
- /** @type {Options} */
77387
- const rehype_slug_lib_emptyOptions = {}
77388
- const slugs = new BananaSlug()
77389
-
77390
- /**
77391
- * Add `id`s to headings.
77392
- *
77393
- * @param {Options | null | undefined} [options]
77394
- * Configuration (optional).
77395
- * @returns
77396
- * Transform.
77397
- */
77398
- function rehypeSlug(options) {
77399
- const settings = options || rehype_slug_lib_emptyOptions
77400
- const prefix = settings.prefix || ''
77401
-
77402
- /**
77403
- * @param {Root} tree
77404
- * Tree.
77405
- * @returns {undefined}
77406
- * Nothing.
77407
- */
77408
- return function (tree) {
77409
- slugs.reset()
77410
-
77411
- visit(tree, 'element', function (node) {
77412
- if (headingRank(node) && !node.properties.id) {
77413
- node.properties.id = prefix + slugs.slug(hast_util_to_string_lib_toString(node))
77414
- }
77415
- })
77416
- }
77417
- }
77418
-
77419
77421
  ;// CONCATENATED MODULE: ./node_modules/estree-util-value-to-estree/node_modules/is-plain-obj/index.js
77420
77422
  function is_plain_obj_isPlainObject(value) {
77421
77423
  if (typeof value !== 'object' || value === null) {
@@ -78580,7 +78582,7 @@ const compile_remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform, trans
78580
78582
  const compile_compile = (text, _a = {}) => {
78581
78583
  var { components } = _a, opts = compile_rest(_a, ["components"]);
78582
78584
  try {
78583
- const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [rehypeSlug, [rehypeToc, { components }]] }, opts));
78585
+ const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [...rehypePlugins, [rehypeToc, { components }]] }, opts));
78584
78586
  return String(vfile).replace(/await import\(_resolveDynamicMdxSpecifier\(('react'|"react")\)\)/, 'arguments[0].imports.React');
78585
78587
  }
78586
78588
  catch (error) {
@@ -89025,7 +89027,7 @@ const hast = (text, opts = {}) => {
89025
89027
  memo[name] = lib_mdast(doc);
89026
89028
  return memo;
89027
89029
  }, {});
89028
- 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);
89029
89031
  return processor.runSync(processor.parse(text));
89030
89032
  };
89031
89033
  const hastFromHtml = (html) => {
package/dist/main.node.js CHANGED
@@ -67378,13 +67378,230 @@ const variables = ({ asMdx } = { asMdx: true }) => tree => {
67378
67378
 
67379
67379
  /* harmony default export */ const transform = ([callouts, code_tabs, transform_embeds, transform_images, gemoji_]);
67380
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
+
67381
67596
  ;// CONCATENATED MODULE: ./lib/ast-processor.ts
67382
67597
 
67383
67598
 
67384
67599
 
67385
67600
 
67386
67601
 
67602
+
67387
67603
  const remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform];
67604
+ const rehypePlugins = [rehypeSlug];
67388
67605
  const astProcessor = (opts = { components: {} }) => remark()
67389
67606
  .use(remarkMdx)
67390
67607
  .use(remarkPlugins)
@@ -78654,221 +78871,6 @@ function compileSync(vfileCompatible, compileOptions) {
78654
78871
  return core_createProcessor(options).processSync(file)
78655
78872
  }
78656
78873
 
78657
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/regex.js
78658
- // This module is generated by `script/`.
78659
- /* eslint-disable no-control-regex, no-misleading-character-class, no-useless-escape */
78660
- 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
78661
-
78662
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/github-slugger/index.js
78663
-
78664
-
78665
- const github_slugger_own = Object.hasOwnProperty
78666
-
78667
- /**
78668
- * Slugger.
78669
- */
78670
- class BananaSlug {
78671
- /**
78672
- * Create a new slug class.
78673
- */
78674
- constructor () {
78675
- /** @type {Record<string, number>} */
78676
- // eslint-disable-next-line no-unused-expressions
78677
- this.occurrences
78678
-
78679
- this.reset()
78680
- }
78681
-
78682
- /**
78683
- * Generate a unique slug.
78684
- *
78685
- * Tracks previously generated slugs: repeated calls with the same value
78686
- * will result in different slugs.
78687
- * Use the `slug` function to get same slugs.
78688
- *
78689
- * @param {string} value
78690
- * String of text to slugify
78691
- * @param {boolean} [maintainCase=false]
78692
- * Keep the current case, otherwise make all lowercase
78693
- * @return {string}
78694
- * A unique slug string
78695
- */
78696
- slug (value, maintainCase) {
78697
- const self = this
78698
- let result = slug(value, maintainCase === true)
78699
- const originalSlug = result
78700
-
78701
- while (github_slugger_own.call(self.occurrences, result)) {
78702
- self.occurrences[originalSlug]++
78703
- result = originalSlug + '-' + self.occurrences[originalSlug]
78704
- }
78705
-
78706
- self.occurrences[result] = 0
78707
-
78708
- return result
78709
- }
78710
-
78711
- /**
78712
- * Reset - Forget all previous slugs
78713
- *
78714
- * @return void
78715
- */
78716
- reset () {
78717
- this.occurrences = Object.create(null)
78718
- }
78719
- }
78720
-
78721
- /**
78722
- * Generate a slug.
78723
- *
78724
- * Does not track previously generated slugs: repeated calls with the same value
78725
- * will result in the exact same slug.
78726
- * Use the `GithubSlugger` class to get unique slugs.
78727
- *
78728
- * @param {string} value
78729
- * String of text to slugify
78730
- * @param {boolean} [maintainCase=false]
78731
- * Keep the current case, otherwise make all lowercase
78732
- * @return {string}
78733
- * A unique slug string
78734
- */
78735
- function slug (value, maintainCase) {
78736
- if (typeof value !== 'string') return ''
78737
- if (!maintainCase) value = value.toLowerCase()
78738
- return value.replace(regex_regex, '').replace(/ /g, '-')
78739
- }
78740
-
78741
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-heading-rank/lib/index.js
78742
- /**
78743
- * @typedef {import('hast').Nodes} Nodes
78744
- */
78745
-
78746
- /**
78747
- * Get the rank (`1` to `6`) of headings (`h1` to `h6`).
78748
- *
78749
- * @param {Nodes} node
78750
- * Node to check.
78751
- * @returns {number | undefined}
78752
- * Rank of the heading or `undefined` if not a heading.
78753
- */
78754
- function headingRank(node) {
78755
- const name = node.type === 'element' ? node.tagName.toLowerCase() : ''
78756
- const code =
78757
- name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
78758
- ? name.charCodeAt(1)
78759
- : 0
78760
- return code > 48 /* `0` */ && code < 55 /* `7` */
78761
- ? code - 48 /* `0` */
78762
- : undefined
78763
- }
78764
-
78765
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/node_modules/hast-util-to-string/lib/index.js
78766
- /**
78767
- * @typedef {import('hast').Nodes} Nodes
78768
- * @typedef {import('hast').Parents} Parents
78769
- */
78770
-
78771
- /**
78772
- * Get the plain-text value of a hast node.
78773
- *
78774
- * @param {Nodes} node
78775
- * Node to serialize.
78776
- * @returns {string}
78777
- * Serialized node.
78778
- */
78779
- function hast_util_to_string_lib_toString(node) {
78780
- // “The concatenation of data of all the Text node descendants of the context
78781
- // object, in tree order.”
78782
- if ('children' in node) {
78783
- return hast_util_to_string_lib_all(node)
78784
- }
78785
-
78786
- // “Context object’s data.”
78787
- return 'value' in node ? node.value : ''
78788
- }
78789
-
78790
- /**
78791
- * @param {Nodes} node
78792
- * Node.
78793
- * @returns {string}
78794
- * Serialized node.
78795
- */
78796
- function lib_one(node) {
78797
- if (node.type === 'text') {
78798
- return node.value
78799
- }
78800
-
78801
- return 'children' in node ? hast_util_to_string_lib_all(node) : ''
78802
- }
78803
-
78804
- /**
78805
- * @param {Parents} node
78806
- * Node.
78807
- * @returns {string}
78808
- * Serialized node.
78809
- */
78810
- function hast_util_to_string_lib_all(node) {
78811
- let index = -1
78812
- /** @type {Array<string>} */
78813
- const result = []
78814
-
78815
- while (++index < node.children.length) {
78816
- result[index] = lib_one(node.children[index])
78817
- }
78818
-
78819
- return result.join('')
78820
- }
78821
-
78822
- ;// CONCATENATED MODULE: ./node_modules/rehype-slug/lib/index.js
78823
- /**
78824
- * @typedef {import('hast').Root} Root
78825
- */
78826
-
78827
- /**
78828
- * @typedef Options
78829
- * Configuration (optional).
78830
- * @property {string} [prefix='']
78831
- * Prefix to add in front of `id`s (default: `''`).
78832
- */
78833
-
78834
-
78835
-
78836
-
78837
-
78838
-
78839
- /** @type {Options} */
78840
- const rehype_slug_lib_emptyOptions = {}
78841
- const slugs = new BananaSlug()
78842
-
78843
- /**
78844
- * Add `id`s to headings.
78845
- *
78846
- * @param {Options | null | undefined} [options]
78847
- * Configuration (optional).
78848
- * @returns
78849
- * Transform.
78850
- */
78851
- function rehypeSlug(options) {
78852
- const settings = options || rehype_slug_lib_emptyOptions
78853
- const prefix = settings.prefix || ''
78854
-
78855
- /**
78856
- * @param {Root} tree
78857
- * Tree.
78858
- * @returns {undefined}
78859
- * Nothing.
78860
- */
78861
- return function (tree) {
78862
- slugs.reset()
78863
-
78864
- visit(tree, 'element', function (node) {
78865
- if (headingRank(node) && !node.properties.id) {
78866
- node.properties.id = prefix + slugs.slug(hast_util_to_string_lib_toString(node))
78867
- }
78868
- })
78869
- }
78870
- }
78871
-
78872
78874
  ;// CONCATENATED MODULE: ./node_modules/estree-util-value-to-estree/node_modules/is-plain-obj/index.js
78873
78875
  function is_plain_obj_isPlainObject(value) {
78874
78876
  if (typeof value !== 'object' || value === null) {
@@ -80033,7 +80035,7 @@ const compile_remarkPlugins = [remarkFrontmatter, remarkGfm, ...transform, trans
80033
80035
  const compile_compile = (text, _a = {}) => {
80034
80036
  var { components } = _a, opts = compile_rest(_a, ["components"]);
80035
80037
  try {
80036
- const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [rehypeSlug, [rehypeToc, { components }]] }, opts));
80038
+ const vfile = compileSync(text, Object.assign({ outputFormat: 'function-body', providerImportSource: '#', remarkPlugins: compile_remarkPlugins, rehypePlugins: [...rehypePlugins, [rehypeToc, { components }]] }, opts));
80037
80039
  return String(vfile).replace(/await import\(_resolveDynamicMdxSpecifier\(('react'|"react")\)\)/, 'arguments[0].imports.React');
80038
80040
  }
80039
80041
  catch (error) {
@@ -90478,7 +90480,7 @@ const hast = (text, opts = {}) => {
90478
90480
  memo[name] = lib_mdast(doc);
90479
90481
  return memo;
90480
90482
  }, {});
90481
- 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);
90482
90484
  return processor.runSync(processor.parse(text));
90483
90485
  };
90484
90486
  const hastFromHtml = (html) => {
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.66",
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": "450KB"
140
+ "maxSize": "1MB"
141
141
  },
142
142
  {
143
143
  "path": "dist/main.node.js",
144
- "maxSize": "250KB"
144
+ "maxSize": "750KB"
145
145
  }
146
146
  ]
147
147
  }