@jhuix/showdowns 0.6.16 → 0.6.18

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/README.md CHANGED
@@ -236,6 +236,8 @@ Table header can be eliminated.
236
236
 
237
237
  [LaTeX math and AsciiMath](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#latex-math-and-asciimath)
238
238
 
239
+ [Code Block Theme](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#code-block-theme)
240
+
239
241
  [Mermaid](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#mermaid)
240
242
 
241
243
  [Plantuml](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#plantuml)
@@ -258,6 +260,8 @@ Table header can be eliminated.
258
260
 
259
261
  [Kroki](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#kroki)
260
262
 
263
+ [Tex](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#tex)
264
+
261
265
  See more information, refer to the following document:
262
266
 
263
267
  [Extensions Examples](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md)
@@ -352,8 +356,16 @@ Put the following line into your HTML page \<header> or \<body>:
352
356
  })
353
357
  .then(function(text) {
354
358
  md = md + `\n\n## Showdown's Markdown syntax\n\n` + text;
355
- showdowns.makeHtml(md).then(obj => {
356
- element.innerHTML = obj.html;
359
+ showdowns.makeHtml({content: md, output: 'dom'}).then(res => {
360
+ if (typeof res === 'string') {
361
+ element.innerHTML = res;
362
+ }else if (Array.isArray(res.html)) {
363
+ element.replaceChildren();
364
+ res.html.forEach((e)=>{
365
+ element.appendChild(e);
366
+ })
367
+ showdowns.completedHtml(res.scripts, '.showdowns');
368
+ }
357
369
  showdowns.completedHtml(obj.scripts, '.showdowns');
358
370
  }).catch(err =>{
359
371
  element.innerHTML = '';
@@ -379,13 +391,14 @@ Put the following line into your HTML page \<header> or \<body>:
379
391
 
380
392
  #### defaultOptions
381
393
 
382
- Type: {showdown: object, plantuml: object, mermaid: object, katex: object, kroki: object, vega: object }
394
+ Type: {showdown: object, plantuml: object, mermaid: object, katex: object, kroki: object, vega: object, toc: object, tex: object, shiki: object }
383
395
 
384
396
  Default options is described below:
385
397
 
386
398
  defaultOptions = {
387
399
  showdown: {
388
400
  flavor: 'github',
401
+ mathEngine: 'mathjax',
389
402
  },
390
403
  toc: { chapterNumber: true, title: '', toc: '[\\[【]Table[ -]Of[ -]Contents[\\]】]|[\\[【]目录[\\]】]|[\\[【]TOC[\\]】]|\\{\\{TOC\\}\\}' },
391
404
  plantuml: { imageFormat: 'svg' },
@@ -402,12 +415,18 @@ Default options is described below:
402
415
  { left: '@@', right: '@@', display: true, asciimath: true },
403
416
  { left: "\\$", right: "\\$", display: false, asciimath: true }
404
417
  ]},
405
- kroki: { serverUrl: 'kroki.io' },
406
- vega: { theme: 'vox' }
418
+ kroki: { serverUrl: 'kroki.io', imageFormat: 'svg' },
419
+ vega: { theme: 'vox' },
420
+ tex: { serverUrl: 'tex.io', buildType: 'pdflatex' },
421
+ shiki: { theme: 'ayu-dark' }
407
422
  };
408
423
 
409
424
  - showdown: showdown options object
410
425
 
426
+ `flavor` - [Flavor of showdown](https://github.com/showdownjs/showdown/blob/master/README.md#flavors), default is 'github'.
427
+
428
+ `mathEngine` - Math render engine for 'mathjax' or 'katex', default is 'mathjax'.
429
+
411
430
  For more showdown options, refer to the following document:
412
431
 
413
432
  [Showdown Options](https://github.com/showdownjs/showdown/blob/master/README.md#options)
@@ -433,7 +452,10 @@ Default options is described below:
433
452
 
434
453
  {
435
454
  umlWebSite: "www.plantuml.com/plantuml",
436
- imageFormat: "svg" | "png" | "jpg"
455
+ imageFormat: "svg" | "png" | "jpg",
456
+ svgRender: (id:string, code:string, options: {
457
+ count?: number
458
+ }) => string
437
459
  }
438
460
 
439
461
  - mermaid: mermaid options object
@@ -475,7 +497,11 @@ Default options is described below:
475
497
 
476
498
  {
477
499
  serverUrl: "kroki.io",
478
- imageFormat: "svg"
500
+ imageFormat: "svg",
501
+ svgRender: (id:string, code:string, options: {
502
+ diagramType: string,
503
+ imageFormat: string
504
+ }) => string
479
505
  }
480
506
 
481
507
  - vega: vega-embed options object
@@ -484,6 +510,31 @@ Default options is described below:
484
510
 
485
511
  [Vega-embed Options](https://github.com/vega/vega-embed#options)
486
512
 
513
+ - shiki: shiki options object
514
+
515
+ For more shiki options:
516
+
517
+ {
518
+ theme: "ayu-dark"
519
+ }
520
+
521
+ The theme of shiki see [ShiKi Style](https://shiki.style/themes).
522
+
523
+ - tex: tex options object
524
+
525
+ For more tex options:
526
+
527
+ {
528
+ serverUrl: "tex.io",
529
+ buildType: "pdflatex",
530
+ svgRender: (id:string, code:string, options: {
531
+ build: string,
532
+ zoom?: number,
533
+ width?: string,
534
+ height?: string
535
+ }) => string
536
+ }
537
+
487
538
  #### defaultExtensions
488
539
 
489
540
  Type: Array of showdown extensions
@@ -491,7 +542,7 @@ Type: Array of showdown extensions
491
542
  Default extensions is described below:
492
543
 
493
544
  defaultExtensions = {
494
- 'showdown-toc': showdownToc(),
545
+ 'showdown-toc': showdownToc(options.toc),
495
546
  'showdown-align': showdownAlign(),
496
547
  'showdown-footnotes': showdownFootnotes(),
497
548
  'showdown-container': showdownContainer(),
@@ -510,10 +561,12 @@ Default async extensions is described below:
510
561
 
511
562
  defaultAsyncExtensions = {
512
563
  'showdown-toc': getExtension('showdown-toc', showdownToc),
513
- 'showdown-plantuml': showdownPlantuml(plantumlOptions()),
514
- 'showdown-mermaid': showdownMermaid(mermaidOptions()),
515
- 'showdown-katex': showdownKatex(katexOptions()),
516
- 'showdown-kroki': showdownKroki(krokiOptions()),
564
+ 'showdown-plantuml': showdownPlantuml(plantumlOptions),
565
+ 'showdown-mermaid': showdownMermaid(mermaidOptions),
566
+ 'showdown-mathjax': showdownMathJax(mathjaxOptions),
567
+ 'showdown-tex': showdownTex(texOptions),
568
+ 'showdown-katex': showdownKatex(katexOptions),
569
+ 'showdown-kroki': showdownKroki(krokiOptions),
517
570
  'showdown-flowchart': showdownFlowchart(),
518
571
  'showdown-viz': showdownViz(),
519
572
  'showdown-vega': showdownVega(vegaOptions),
@@ -522,6 +575,7 @@ Default async extensions is described below:
522
575
  'showdown-abc': showdownAbc(),
523
576
  'showdown-echarts': showdownEcharts(),
524
577
  'showdown-sequence': getExtension('showdown-sequence', showdownSequence),
578
+ 'showdown-shiki': showdownShiki(shikiOptions),
525
579
  'showdow-css': showdownCss(),
526
580
  }
527
581
 
@@ -607,7 +661,15 @@ Type: (options: object) => object
607
661
 
608
662
  A function to set default options of showdown. When showdown.convertor instance be created, it can update options of the showdown and convertor.convertor.
609
663
 
610
- See [showdown options of defaultOptions](#defaultoptions).
664
+ See [showdown options of defaultOptions](https://shiki.style/themes).
665
+
666
+ #### setLanuageTheme
667
+
668
+ Type: (theme: string) => object
669
+
670
+ A function to set default theme of [ShiKi](https://github.com/shikijs/shiki). When showdown.convertor instance be created, it can update options of the showdown and convertor.convertor.
671
+
672
+ See [ShiKi Style](https://shiki.style/themes).
611
673
 
612
674
  #### setExtensionlOptions
613
675
 
@@ -677,27 +739,33 @@ A function to init that be created showdown.convertor instance or update default
677
739
 
678
740
  Type: interface script {
679
741
  outer?:[
680
- {name:string, src:string}
742
+ {name:string, src:string, module?:boolean|'import'|'link'}
681
743
  ],
682
744
  id?:string,
683
745
  code?:string,
746
+ module?:boolean,
684
747
  inner?:[
685
- {id:string, code:string}
748
+ {id:string, code:string, module?:boolean}
686
749
  ]
687
750
  }
688
751
 
689
- Type: ({type:'zip', content: string} | string,
752
+ Type: interface csslink {
753
+ id: string,
754
+ link: string
755
+ }
756
+
757
+ Type: ({type:'zip', content: string, output: 'dom'} | string,
690
758
  (csstypes?: {
691
759
  hasKatex: boolean;
692
760
  hasRailroad: boolean;
693
761
  hasSequence: boolean
694
- }) => void) => Promise\<{html: string, scripts: [script]}>
762
+ }) => void) => Promise\<{html: string | HTMLElement[], scripts: script[], cssLinks: csslink[]}>
695
763
 
696
764
  A async function to make markdown to html that showdown.convertor converte it in current showdowns instance.
697
765
 
698
766
  #### completedHtml
699
767
 
700
- Type: ( scripts?: [script] | string, scriptContainer?: HTMLElement | string) => Promise\<boolean>
768
+ Type: ( scripts?: script[] | string, scriptContainer?: HTMLElement | string) => Promise\<boolean>
701
769
 
702
770
  A async function to completed markdown to html that append scripts to dom.
703
771
 
package/demo/index.html CHANGED
@@ -114,12 +114,18 @@
114
114
  .then(function(text) {
115
115
  md = md + `\n\n# Showdown's Markdown syntax\n\n` + text;
116
116
  showdowns
117
- .makeHtml(md, csstypes => {
117
+ .makeHtml({content: md, output: 'dom'}, csstypes => {
118
118
  mdCssTypes = csstypes;
119
119
  })
120
120
  .then(res => {
121
121
  if (typeof res === 'object') {
122
- element.innerHTML = res.html;
122
+ if (typeof res.html === 'string') {
123
+ element.innerHTML = res.html;
124
+ } else {
125
+ res.html.forEach((e)=>{
126
+ element.appendChild(e);
127
+ });
128
+ }
123
129
  showdowns.completedHtml(res.scripts);
124
130
  } else {
125
131
  element.innerHTML = res;
@@ -138,7 +144,13 @@
138
144
  })
139
145
  .then(res => {
140
146
  if (typeof res === 'object') {
141
- element.innerHTML = res.html;
147
+ if (typeof res.html === 'string') {
148
+ element.innerHTML = res.html;
149
+ } else {
150
+ res.html.forEach((e)=>{
151
+ element.appendChild(e);
152
+ });
153
+ }
142
154
  showdowns.completedHtml(res.scripts, '.showdowns');
143
155
  } else {
144
156
  element.innerHTML = res;
@@ -1,17 +1,23 @@
1
1
  /*!
2
- * css of showdowns v0.6.16
2
+ * css of showdowns v0.6.18
3
3
  * Copyright (c) 2019-present, Jhuix (Hui Jin) <jhuix0117@gmail.com>
4
4
  * Released under the MIT License.
5
- */.showdowns{flex-grow:1;margin-left:1rem;min-width:300px;position:relative}.showdowns blockquote,.showdowns dd,.showdowns div,.showdowns dl,.showdowns dt,.showdowns form,.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6,.showdowns li,.showdowns ol,.showdowns p,.showdowns pre,.showdowns td,.showdowns th,.showdowns ul{margin:0;padding:0}.showdowns div.paragraph.align-right,.showdowns h1.align-right,.showdowns h2.align-right,.showdowns h3.align-right,.showdowns h4.align-right,.showdowns h5.align-right,.showdowns h6.align-right,.showdowns li.align-right,.showdowns p.align-right{text-align:right}.showdowns div.paragraph.align-center,.showdowns h1.align-center,.showdowns h2.align-center,.showdowns h3.align-center,.showdowns h4.align-center,.showdowns h5.align-center,.showdowns h6.align-center,.showdowns li.align-center,.showdowns p.align-center{text-align:center}.showdowns a{color:#0366d6;line-height:inherit;text-decoration:none}.showdowns a img{border:none}.showdowns a:hover{cursor:pointer;text-decoration:underline}.showdowns img{-ms-interpolation-mode:bicubic;display:inherit;height:auto;margin:0 auto;max-width:100%}.showdowns p{font-family:inherit;font-size:1em;font-weight:400;line-height:1.5;margin-bottom:1.25em;text-rendering:optimizeLegibility}.showdowns p.lead{font-size:1.21875em;line-height:1.5}.showdowns p aside{font-size:.875em;font-style:italic;line-height:1.5}.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6{font-style:normal;font-weight:600;line-height:1.25;margin-bottom:1rem;margin-top:1.5rem;text-rendering:optimizeLegibility}.showdowns h1 small,.showdowns h2 small,.showdowns h3 small,.showdowns h4 small,.showdowns h5 small,.showdowns h6 small{font-size:60%;line-height:0}.showdowns h1,.showdowns h2{border-bottom:1px solid #d6d6d6;padding-bottom:.3em}.showdowns h1{font-size:3.2rem}.showdowns h2{font-size:2.8rem}.showdowns h3{font-size:2.4rem}.showdowns h4{font-size:2rem}.showdowns h5{font-size:1.8rem}.showdowns h6{color:#6a737d;font-size:1.6rem}.showdowns .subheader{color:#6f6f6f;font-weight:400;line-height:1.4;margin-bottom:.5em;margin-top:.2em}.showdowns hr{border:solid #ddd;border-width:1px 0 0;clear:both;height:0;margin:1.25em 0 1.1875em}.showdowns em,.showdowns i{font-style:italic;line-height:inherit}.showdowns b,.showdowns strong{font-weight:600;line-height:inherit}.showdowns small{font-size:60%;line-height:inherit}.showdowns code{border-style:solid;border-width:1px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-weight:400;padding:.125em .3125em .0625em}.showdowns dl,.showdowns ol,.showdowns ul{font-family:inherit;font-size:1em;line-height:1.5;list-style-position:outside;margin-bottom:1.25em}.showdowns ul{margin-left:1.1em}.showdowns ul.no-bullet{margin-left:0}.showdowns ul.no-bullet li ol,.showdowns ul.no-bullet li ul{list-style:none;margin-bottom:0;margin-left:1.25em}.showdowns ul li ol,.showdowns ul li ul{margin-bottom:0;margin-left:1.25em}.showdowns ul.circle li ul,.showdowns ul.disc li ul,.showdowns ul.square li ul{list-style:inherit}.showdowns ul.square{list-style-type:square;margin-left:1.1em}.showdowns ul.circle{list-style-type:circle;margin-left:1.1em}.showdowns ul.disc{list-style-type:disc;margin-left:1.1em}.showdowns ul.no-bullet{list-style:none}.showdowns ol{margin-left:1.4em}.showdowns ol li ol,.showdowns ol li ul{margin-bottom:0;margin-left:1.25em}.showdowns dl dt{font-weight:600;margin-bottom:.3em}.showdowns dl dd{margin-bottom:.75em}.showdowns abbr,.showdowns acronym{color:#222;cursor:help;font-size:90%;text-transform:uppercase}.showdowns abbr{text-transform:none}.showdowns abbr[title]{border-bottom:1px dotted #5c5c5c}.showdowns blockquote{border-left:4px solid #d6d6d6;color:#5c5c5c;line-height:1.5;margin:0 0 16px;padding:0 15px}.showdowns blockquote cite{color:#555;display:block;font-size:.8125em}.showdowns blockquote cite:before{content:"\2014 \0020"}.showdowns blockquote cite a,.showdowns blockquote cite a:visited{color:#555}.showdowns pre{word-wrap:break-word;border:1px solid #dfdfdf;margin-bottom:1.5em;margin-top:1.5em;padding:.125em .3125em .0625em;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;white-space:pre-wrap}.showdowns pre code{background-color:transparent;border:0;padding:0}.showdowns table{background:#fff;border-collapse:collapse;border-spacing:0;margin-bottom:1.25em;overflow:auto;table-layout:auto}.showdowns table caption{background:transparent;color:#222;font-weight:600}.showdowns table thead{background:#f5f5f5}.showdowns table thead tr td,.showdowns table thead tr th{border:1px solid #d6d6d6;color:#222;font-weight:600;line-height:1.125em;padding:.5em .625em .625em}.showdowns table tfoot{background:#f5f5f5}.showdowns table tfoot tr td,.showdowns table tfoot tr th{border:1px solid #d6d6d6;color:#222;font-weight:600;line-height:1.125em;padding:.5em .625em .625em}.showdowns table tr td,.showdowns table tr th{border:1px solid #d6d6d6;color:#222;line-height:1.125em;padding:.5625em .625em}.showdowns table tr.alt,.showdowns table tr.even,.showdowns table tr:nth-of-type(2n){background:#f9f9f9}.showdowns table tbody tr td,.showdowns table tbody tr th{border:1px solid #d6d6d6;line-height:1.125em}.showdowns .flow,.showdowns .flowchart,.showdowns .mermaid,.showdowns .plantuml,.showdowns .sequence,.showdowns .wavedrom{background-color:#f9f9f9}.showdowns .diagram-center:not(.asciimath):not(.latex):not(.mermaid){display:flex;justify-content:center;margin:auto}.showdowns .diagram-right:not(.asciimath):not(.latex):not(.mermaid){display:flex;justify-content:right;margin:auto 0 auto auto}.showdowns .diagram-center.mermaid{text-align:center}.showdowns .diagram-right.mermaid{text-align:right}.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex,.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex-display,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex,.showdowns .latex:not(.diagram-center):not(.diagram-right) .katex-display{text-align:unset}.showdowns .asciimath.diagram-center .katex,.showdowns .asciimath.diagram-center .katex-display,.showdowns .latex.diagram-center .katex,.showdowns .latex.diagram-center .katex-display{text-align:center}.showdowns .asciimath.diagram-right .katex,.showdowns .asciimath.diagram-right .katex-display,.showdowns .latex.diagram-right .katex,.showdowns .latex.diagram-right .katex-display{text-align:right}
5
+ */.showdowns{flex-grow:1;margin-left:1rem;margin-right:1rem;min-width:300px;position:relative}.showdowns blockquote,.showdowns dd,.showdowns div,.showdowns dl,.showdowns dt,.showdowns form,.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6,.showdowns li,.showdowns ol,.showdowns p,.showdowns pre,.showdowns td,.showdowns th,.showdowns ul{margin:0;padding:0}.showdowns div.paragraph.align-right,.showdowns h1.align-right,.showdowns h2.align-right,.showdowns h3.align-right,.showdowns h4.align-right,.showdowns h5.align-right,.showdowns h6.align-right,.showdowns li.align-right,.showdowns p.align-right{text-align:right}.showdowns div.paragraph.align-center,.showdowns h1.align-center,.showdowns h2.align-center,.showdowns h3.align-center,.showdowns h4.align-center,.showdowns h5.align-center,.showdowns h6.align-center,.showdowns li.align-center,.showdowns p.align-center{text-align:center}.showdowns a{color:#0366d6;line-height:inherit;text-decoration:none}.showdowns a img{border:none}.showdowns a:hover{cursor:pointer;text-decoration:underline}.showdowns img{-ms-interpolation-mode:bicubic;display:inherit;height:auto;margin:0 auto;max-width:100%}.showdowns p{font-family:inherit;font-size:1em;font-weight:400;line-height:1.5;margin-bottom:1.25em;text-rendering:optimizeLegibility}.showdowns p.lead{font-size:1.21875em;line-height:1.5}.showdowns p aside{font-size:.875em;font-style:italic;line-height:1.5}.showdowns h1,.showdowns h2,.showdowns h3,.showdowns h4,.showdowns h5,.showdowns h6{font-style:normal;font-weight:600;line-height:1.25;margin-bottom:1rem;margin-top:1.5rem;text-rendering:optimizeLegibility}.showdowns h1 small,.showdowns h2 small,.showdowns h3 small,.showdowns h4 small,.showdowns h5 small,.showdowns h6 small{font-size:60%;line-height:0}.showdowns h1,.showdowns h2{border-bottom:1px solid #d6d6d6;padding-bottom:.3em}.showdowns h1{font-size:3.2rem}.showdowns h2{font-size:2.8rem}.showdowns h3{font-size:2.4rem}.showdowns h4{font-size:2rem}.showdowns h5{font-size:1.8rem}.showdowns h6{color:#6a737d;font-size:1.6rem}.showdowns .subheader{color:#6f6f6f;font-weight:400;line-height:1.4;margin-bottom:.5em;margin-top:.2em}.showdowns hr{border:solid #ddd;border-width:1px 0 0;clear:both;height:0;margin:1.25em 0 1.1875em}.showdowns em,.showdowns i{font-style:italic;line-height:inherit}.showdowns b,.showdowns strong{font-weight:600;line-height:inherit}.showdowns small{font-size:60%;line-height:inherit}.showdowns code{border-style:solid;border-width:1px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-weight:400;padding:.125em .3125em .0625em}.showdowns dl,.showdowns ol,.showdowns ul{font-family:inherit;font-size:1em;line-height:1.5;list-style-position:outside;margin-bottom:1.25em}.showdowns ul{margin-left:1.1em}.showdowns ul.no-bullet{margin-left:0}.showdowns ul.no-bullet li ol,.showdowns ul.no-bullet li ul{list-style:none;margin-bottom:0;margin-left:1.25em}.showdowns ul li ol,.showdowns ul li ul{margin-bottom:0;margin-left:1.25em}.showdowns ul.circle li ul,.showdowns ul.disc li ul,.showdowns ul.square li ul{list-style:inherit}.showdowns ul.square{list-style-type:square;margin-left:1.1em}.showdowns ul.circle{list-style-type:circle;margin-left:1.1em}.showdowns ul.disc{list-style-type:disc;margin-left:1.1em}.showdowns ul.no-bullet{list-style:none}.showdowns ol{margin-left:1.4em}.showdowns ol li ol,.showdowns ol li ul{margin-bottom:0;margin-left:1.25em}.showdowns dl dt{font-weight:600;margin-bottom:.3em}.showdowns dl dd{margin-bottom:.75em}.showdowns abbr,.showdowns acronym{color:#222;cursor:help;font-size:90%;text-transform:uppercase}.showdowns abbr{text-transform:none}.showdowns abbr[title]{border-bottom:1px dotted #5c5c5c}.showdowns blockquote{border-left:4px solid #d6d6d6;color:#5c5c5c;line-height:1.5;margin:0 0 16px;padding:0 15px}.showdowns blockquote cite{color:#555;display:block;font-size:.8125em}.showdowns blockquote cite:before{content:"\2014 \0020"}.showdowns blockquote cite a,.showdowns blockquote cite a:visited{color:#555}.showdowns pre{word-wrap:break-word;border:1px solid #dfdfdf;margin-bottom:1.5em;margin-top:1.5em;padding:.125em .3125em .0625em;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;white-space:pre-wrap}.showdowns pre code{background-color:transparent;border:0;padding:0}.showdowns table{background:#fff;border-collapse:collapse;border-spacing:0;margin-bottom:1.25em;overflow:auto;table-layout:auto}.showdowns table caption{background:transparent;color:#222;font-weight:600}.showdowns table thead{background:#f5f5f5}.showdowns table thead tr td,.showdowns table thead tr th{border:1px solid #d6d6d6;color:#222;font-weight:600;line-height:1.125em;padding:.5em .625em .625em}.showdowns table tfoot{background:#f5f5f5}.showdowns table tfoot tr td,.showdowns table tfoot tr th{border:1px solid #d6d6d6;color:#222;font-weight:600;line-height:1.125em;padding:.5em .625em .625em}.showdowns table tr td,.showdowns table tr th{border:1px solid #d6d6d6;color:#222;line-height:1.125em;padding:.5625em .625em}.showdowns table tr.alt,.showdowns table tr.even,.showdowns table tr:nth-of-type(2n){background:#f9f9f9}.showdowns table tbody tr td,.showdowns table tbody tr th{border:1px solid #d6d6d6;line-height:1.125em}.showdowns .flow,.showdowns .flowchart,.showdowns .mermaid,.showdowns .plantuml,.showdowns .sequence,.showdowns .wavedrom{background-color:#f9f9f9}.showdowns .diagram-left:not(.asciimath):not(.katex):not(.mermaid):not(.abc){display:flex;justify-content:left}.showdowns .diagram-center:not(.asciimath):not(.katex):not(.mermaid):not(.abc){display:flex;justify-content:center;margin:auto}.showdowns .diagram-right:not(.asciimath):not(.katex):not(.mermaid):not(.abc){display:flex;justify-content:right;margin:auto 0 auto auto}.showdowns .diagram-center.abc{margin:auto}.showdowns .diagram-right.abc{margin:auto 0 auto auto}.showdowns .diagram-left.mermaid{text-align:left}.showdowns .diagram-center.mermaid{text-align:center}.showdowns .diagram-right.mermaid{text-align:right}.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex,.showdowns .asciimath:not(.diagram-center):not(.diagram-right) .katex-display,.showdowns .katex:not(.diagram-center):not(.diagram-right) .katex,.showdowns .katex:not(.diagram-center):not(.diagram-right) .katex-display{text-align:unset}.showdowns .asciimath.diagram-center .katex,.showdowns .asciimath.diagram-center .katex-display,.showdowns .katex.diagram-center .katex,.showdowns .katex.diagram-center .katex-display{text-align:center}.showdowns .asciimath.diagram-right .katex,.showdowns .asciimath.diagram-right .katex-display,.showdowns .katex.diagram-right .katex,.showdowns .katex.diagram-right .katex-display{text-align:right}
6
6
 
7
7
  /*!
8
- * css of showdowns v0.6.16
8
+ * css of showdowns v0.6.18
9
9
  * Copyright (c) 2019-present, Jhuix (Hui Jin) <jhuix0117@gmail.com>
10
10
  * Released under the MIT License.
11
11
  */.showdowns .showdown-container{border:1px solid #eee;border-radius:.25rem;margin-bottom:1rem;padding:.75rem 1.25rem;position:relative}.showdowns .showdown-container.container{border-left-width:.25rem;border-right-width:.25rem}.showdowns .showdown-container.container.tip{border-left-color:#5bc0de;border-right-color:#5bc0de}.showdowns .showdown-container.container.info{border-left-color:#cce5ff;border-right-color:#cce5ff}.showdowns .showdown-container.container.warning{border-left-color:#f0ad4e;border-right-color:#f0ad4e}.showdowns .showdown-container.container.error{border-left-color:#d9534f;border-right-color:#d9534f}.showdowns .showdown-container.container.success{border-left-color:#67c23a;border-right-color:#67c23a}.showdowns .showdown-container.alert{border:1px solid transparent;transition:opacity .2s}.showdowns .showdown-container.alert.alert-tip{background-color:#5bc0de}.showdowns .showdown-container.alert.alert-info{background-color:#cce5ff}.showdowns .showdown-container.alert.alert-warning{background-color:#f0ad4e}.showdowns .showdown-container.alert.alert-error{background-color:#d9534f}.showdowns .showdown-container.alert.alert-success{background-color:#67c23a}.showdowns .showdown-container .container-title{font-size:1.25rem;font-weight:700;line-height:1.2}
12
12
 
13
13
  /*!
14
- * css of showdowns v0.6.16
14
+ * css of showdowns v0.6.18
15
+ * Copyright (c) 2019-present, Jhuix (Hui Jin) <jhuix0117@gmail.com>
16
+ * Released under the MIT License.
17
+ */.codeblock-tools{align-items:center;background-color:#f5f5f5;border-bottom:1px solid #f0f0f0;display:flex;height:25px;position:absolute;z-index:3}.codeblock-tools .start-nav{align-items:center;display:flex;flex:1;overflow:hidden;padding-left:11px}.codeblock-tools .end-nav{align-items:center;display:flex;justify-content:flex-end;padding-right:11px}.tools-divider{box-sizing:border-box;color:#262626;list-style:none;margin:0;padding:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tools-divider-vertical{border-left:1px solid rgba(0,0,0,.2);display:inline-block;height:16px;margin:0 6px;position:relative;vertical-align:middle}.tools-icon{align-items:center;background-position:50%;background-repeat:no-repeat;display:inline-flex;font-size:16px;height:1em;justify-content:center;width:1em}.svg-icon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:inherit;display:inline-block;flex:1;font-style:normal;line-height:0;text-align:center}.codeblock-tools-button{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:24px;justify-content:center;transition:all .3s;width:24px}.codeblock-tools-button:hover{background-color:#d8dad9;border-radius:4px}.tools-select{align-items:center;box-sizing:border-box;color:#262626;cursor:pointer;display:flex;height:24px;list-style:none;margin:0;padding:0;position:relative;width:auto}.tools-select-selector{background:0 0;border-color:transparent;border-radius:4px;cursor:pointer;display:inline-flex;padding:0 5px 0 8px;text-align:right}.tools-select-selection-item{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tools-select-selector .tools-select-selection-item{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tools-select-arrow{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#262626;display:inline-flex;font-size:16px;font-style:normal;height:16px;position:inherit;text-align:center;width:16px}.tools-codeblock{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tools-select:hover{background-color:#d8dad9;border-radius:6px}.select-items{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.15);display:flex;flex-direction:column;left:auto;line-height:1.5em;max-height:245px;overflow-x:hidden;overflow-y:auto;position:absolute;right:0;top:-999px;z-index:99}.options-item{color:#585a5a;cursor:pointer;display:block;font-weight:400;line-height:22px;padding:4px 8px;position:relative}.options-item .select-item-content{display:inline-block;overflow:hidden;padding:5px 8px 5px 18px;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.selected-item .select-item-content{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxwYXRoIGlkPSJhIiBkPSJNMCAwaDEydjE2SDB6Ii8+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PG1hc2sgaWQ9ImIiIGZpbGw9IiNmZmYiPjx1c2UgeGxpbms6aHJlZj0iI2EiLz48L21hc2s+PHBhdGggc3Ryb2tlPSIjNTk1OTU5IiBzdHJva2Utd2lkdGg9IjEuMzc1IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIG1hc2s9InVybCgjYikiIGQ9Im0xLjY4OCA3Ljg2MSA0LjMwMiA0LjI2NCA4LjMyMy04LjI1Ii8+PC9nPjwvc3ZnPg==);background-position:0;background-repeat:no-repeat}.options-item:hover{background-color:#f6f8fa;color:#24292e}.tools-message{color:#8a8f8d;display:flex;flex:1;justify-content:center}.tools-message-notice{display:flex;text-align:center}.tools-message-notice.show{animation-duration:.3s;animation-name:MessageMoveIn}@keyframes MessageMoveIn{0%{max-height:0;opacity:0}to{max-height:24px;opacity:1}}.tools-message-icon{align-items:center;color:#00b96b;display:flex;font-size:16px;margin-right:4px;position:relative}.tools-message-content{-webkit-user-select:none;-moz-user-select:none;user-select:none}
18
+
19
+ /*!
20
+ * css of showdowns v0.6.18
15
21
  * Copyright (c) 2019-present, Jhuix (Hui Jin) <jhuix0117@gmail.com>
16
22
  * Released under the MIT License.
17
23
  */.hidden{display:none!important}.divider{align-items:center;background:#d2d2d2;cursor:col-resize;display:none;justify-content:center;position:relative;transition:background .3s;width:2px}.divider:hover{background:#f59102}.icon{fill:currentColor;height:1em;overflow:hidden;vertical-align:-.15em;width:1em}.toc-switch{box-sizing:border-box;color:#3e69d7;cursor:pointer;font-size:3rem;overflow:hidden;position:fixed;right:2rem;text-align:center;top:0;transition:height .2s linear;z-index:110}.total-toc{-moz-column-break-after:page;box-sizing:border-box;break-after:page;display:flex;flex-direction:column;flex-shrink:0;order:-1;page-break-after:always;width:100%}.total-toc .toc-view ul li div i:not(.toc-chapter){cursor:pointer}.showdown-toc .toc-pin{align-items:center;border-bottom:1px solid #d2d2d2;display:flex;flex-direction:row;flex-shrink:0;font-size:2rem;overflow:hidden;padding:1rem}.showdown-toc .toc-pin-text{font-weight:700;margin-right:8px;white-space:nowrap}.showdown-toc .toc-fold-wrap{align-items:center;display:flex;flex-grow:1;justify-content:flex-start;position:relative}.showdown-toc .toc-icon{background-position:50%;background-repeat:no-repeat;cursor:pointer}.showdown-toc .toc-close{margin-left:auto}.showdown-toc .toc-icon:hover{color:#0089ff}.showdown-toc .toc-view{overflow:auto}.showdown-toc .toc-view .toc-chapter{color:#0089ff}.showdown-toc .toc-view ul{display:block;margin-left:2rem;padding-left:0;position:relative}.showdown-toc .toc-view ul li{box-sizing:border-box;display:flex;flex-direction:column;list-style:none;width:100%}.showdown-toc .toc-view ul li div{display:flex;flex-direction:row}.showdown-toc .toc-view ul li div i{align-items:center;display:inline-flex;margin-left:0;position:relative}.showdown-toc .toc-view ul li div a{color:currentColor;cursor:pointer;font-size:1.4rem;padding:.6rem;text-decoration:none;white-space:nowrap}.showdown-toc .toc-view ul li div:hover a,.showdown-toc .toc-view ul li div:hover i{color:#f59102}.showdown-toc .toc-view ul li div:hover a{border-radius:.5rem}.showdown-toc .toc-view ul li div:focus a,.showdown-toc .toc-view ul li div:focus i{color:#0089ff}.showdown-toc .toc-view ul li div:focus a{border-radius:.5rem}.showdown-toc .toc-view ul ul{margin-top:.24rem}.showdown-toc .toc-view .toc-multi-title{font-weight:600}.showdown-toc .toc-view .toc-title-1{font-size:1.6rem;font-weight:800}.main-toc-row{display:flex;flex-direction:column;flex-grow:1}.main-toc-row .toc-view{flex-grow:1}.toc-view::-webkit-scrollbar-thumb{background-color:#f59102}@media not print{.main-toc-row{flex-direction:row}.main-toc-row .total-toc{background:#ffffffd2;border-radius:10px;box-shadow:0 5px 11px #3333;box-sizing:border-box;margin-right:12px;max-height:100vh;max-width:50%;min-height:300px;min-width:256px;overflow:hidden;position:fixed;right:0;top:0;transition:all .3s;white-space:nowrap;width:25%;z-index:11}.main-toc-row .toc-view{overflow:auto}}@media print{.main-toc-row .total-toc{max-width:unset!important;order:-1!important;overflow:unset!important;width:100%!important}}.showdown-toc .toc-view{display:flex;width:100%}.showdown-toc .toc-view .toc-main{flex-grow:1;margin-left:1rem}.main-toc-column{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}