@jhuix/showdowns 0.6.18 → 0.7.0

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
@@ -232,6 +232,10 @@ Table header can be eliminated.
232
232
 
233
233
  [Container](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#container)
234
234
 
235
+ [CSS defined](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#css-defined)
236
+
237
+ [Inline Image](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#inline-image)
238
+
235
239
  [Table of Contents](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#table-of-contents)
236
240
 
237
241
  [LaTeX math and AsciiMath](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#latex-math-and-asciimath)
@@ -260,7 +264,11 @@ Table header can be eliminated.
260
264
 
261
265
  [Kroki](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#kroki)
262
266
 
263
- [Tex](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#tex)
267
+ [Plotly](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#plotly)
268
+
269
+ [AntV Infographic](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#antv-infographic)
270
+
271
+ [ZenUML](https://github.com/jhuix/showdowns/blob/master/docs/showdowns-features.md#zenuml)
264
272
 
265
273
  See more information, refer to the following document:
266
274
 
@@ -391,7 +399,7 @@ Put the following line into your HTML page \<header> or \<body>:
391
399
 
392
400
  #### defaultOptions
393
401
 
394
- Type: {showdown: object, plantuml: object, mermaid: object, katex: object, kroki: object, vega: object, toc: object, tex: object, shiki: object }
402
+ Type: {showdown: object, plantuml: object, mermaid: object, katex: object, kroki: object, vega: object, toc: object, tex: object, shiki: object, gnuplot: object }
395
403
 
396
404
  Default options is described below:
397
405
 
@@ -418,7 +426,8 @@ Default options is described below:
418
426
  kroki: { serverUrl: 'kroki.io', imageFormat: 'svg' },
419
427
  vega: { theme: 'vox' },
420
428
  tex: { serverUrl: 'tex.io', buildType: 'pdflatex' },
421
- shiki: { theme: 'ayu-dark' }
429
+ shiki: { theme: 'ayu-dark' },
430
+ gnuplot: {}
422
431
  };
423
432
 
424
433
  - showdown: showdown options object
@@ -535,6 +544,14 @@ Default options is described below:
535
544
  }) => string
536
545
  }
537
546
 
547
+ - gnuplot: gnuplot options object
548
+
549
+ For more gnuplot options:
550
+
551
+ {
552
+ svgRender: (id:string, code:string) => string
553
+ }
554
+
538
555
  #### defaultExtensions
539
556
 
540
557
  Type: Array of showdown extensions
@@ -543,6 +560,7 @@ Default extensions is described below:
543
560
 
544
561
  defaultExtensions = {
545
562
  'showdown-toc': showdownToc(options.toc),
563
+ 'showdown-image': showdownImage(),
546
564
  'showdown-align': showdownAlign(),
547
565
  'showdown-footnotes': showdownFootnotes(),
548
566
  'showdown-container': showdownContainer(),
@@ -561,6 +579,7 @@ Default async extensions is described below:
561
579
 
562
580
  defaultAsyncExtensions = {
563
581
  'showdown-toc': getExtension('showdown-toc', showdownToc),
582
+ 'showdown-image': showdownAsyncImage(),
564
583
  'showdown-plantuml': showdownPlantuml(plantumlOptions),
565
584
  'showdown-mermaid': showdownMermaid(mermaidOptions),
566
585
  'showdown-mathjax': showdownMathJax(mathjaxOptions),
@@ -574,6 +593,8 @@ Default async extensions is described below:
574
593
  'showdown-railroad': showdownRailroad(),
575
594
  'showdown-abc': showdownAbc(),
576
595
  'showdown-echarts': showdownEcharts(),
596
+ 'showdown-gnuplot': showdownShiki(gnuplotOptions),
597
+ 'showdown-antv': showdownAntV(),
577
598
  'showdown-sequence': getExtension('showdown-sequence', showdownSequence),
578
599
  'showdown-shiki': showdownShiki(shikiOptions),
579
600
  'showdow-css': showdownCss(),
@@ -597,8 +618,28 @@ Default: null
597
618
 
598
619
  Output showdown.convertor native object in current showdowns Instance.
599
620
 
621
+ #### eventBus
622
+
623
+ Type: EventBus
624
+
625
+ Default: EventBus
626
+
627
+ A internal event bus object, its method is as follows:
628
+
629
+ - on(event: string, callback: (...args: any[]) => any) -- Register event method
630
+ - off(event: string, callback: (...args: any[]) => any) -- Close event method
631
+ - emit(event: string, ...data: ...any[]) => number -- Emit event method
632
+
600
633
  ### Methods
601
634
 
635
+ #### onEvent
636
+
637
+ Type: {event: string, callback: (...args: any[]) => any} => void
638
+
639
+ Register event to showdowns engine. Currently supporting the following events:
640
+
641
+ - 'resetImagePath': (id: string, src: string, callback: (imagePath: string) => void) -- Reset image path event for inline image
642
+
602
643
  #### setFlavor
603
644
 
604
645
  Type: {name: string} => void
@@ -738,15 +779,21 @@ A function to init that be created showdown.convertor instance or update default
738
779
  #### makeHtml
739
780
 
740
781
  Type: interface script {
741
- outer?:[
742
- {name:string, src:string, module?:boolean|'import'|'link'}
743
- ],
782
+ outer?:[{
783
+ name:string,
784
+ src:string,
785
+ module?:boolean|'import'|'link'
786
+ }],
744
787
  id?:string,
745
788
  code?:string,
746
789
  module?:boolean,
747
- inner?:[
748
- {id:string, code:string, module?:boolean}
749
- ]
790
+ host?:string | HTMLElement
791
+ inner?:[{
792
+ id:string,
793
+ code:string,
794
+ module?:boolean,
795
+ host?:string | HTMLElement
796
+ }]
750
797
  }
751
798
 
752
799
  Type: interface csslink {
@@ -754,12 +801,7 @@ Type: interface csslink {
754
801
  link: string
755
802
  }
756
803
 
757
- Type: ({type:'zip', content: string, output: 'dom'} | string,
758
- (csstypes?: {
759
- hasKatex: boolean;
760
- hasRailroad: boolean;
761
- hasSequence: boolean
762
- }) => void) => Promise\<{html: string | HTMLElement[], scripts: script[], cssLinks: csslink[]}>
804
+ Type: ({type:'zip', content: string, output: 'dom'} | string) => Promise\<{html: string | HTMLElement[], scripts: script[], cssLinks: csslink[]}>
763
805
 
764
806
  A async function to make markdown to html that showdown.convertor converte it in current showdowns instance.
765
807
 
package/demo/index.html CHANGED
@@ -15,8 +15,6 @@
15
15
 
16
16
  html {
17
17
  box-sizing: border-box;
18
- font-size: 62.5%;
19
- line-height: 1.5;
20
18
  height: 100%;
21
19
  }
22
20
 
@@ -33,7 +31,6 @@
33
31
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji,
34
32
  Segoe UI Emoji;
35
33
  -webkit-font-smoothing: antialiased;
36
- font-size: 1.5rem;
37
34
  }
38
35
 
39
36
  code {
@@ -1,23 +1,23 @@
1
1
  /*!
2
- * css of showdowns v0.6.18
2
+ * css of showdowns v0.7.0
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;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}
5
+ */.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:1.875rem;overflow:hidden;position:fixed;right:1.25rem;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:1rem;overflow:hidden;padding:.625rem}.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 .iconfont{color:#0089ff}.showdown-toc .toc-view ul{display:block;margin-left:1.25rem;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:.875rem;padding:.375rem;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:.25rem}.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:.25rem}.showdown-toc .toc-view .toc-multi-title{font-weight:600}.showdown-toc .toc-view .toc-title-1{font-size:1rem;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:.625rem}.main-toc-column{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}
6
6
 
7
7
  /*!
8
- * css of showdowns v0.6.18
8
+ * css of showdowns v0.7.0
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.18
14
+ * css of showdowns v0.7.0
15
15
  * Copyright (c) 2019-present, Jhuix (Hui Jin) <jhuix0117@gmail.com>
16
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}
17
+ */.codeblock-tools{background-color:hsla(0,0%,100%,.5);border-radius:4px;gap:.5rem;position:absolute;right:10px;top:10px}.codeblock-tools,.tools-icon{align-items:center;box-sizing:border-box;display:flex;height:22px}.tools-icon{background:transparent;border:none;border-radius:3px;font-size:16px;line-height:normal;padding:3px;position:relative;width:22px}.tools-icon svg{height:100%;vertical-align:middle;width:100%}.tools-button-lang{-webkit-user-select:none;-moz-user-select:none;user-select:none}.tools-button-copy,.tools-button-theme{cursor:pointer}.codeblock-tools [data-title]:before{background:transparent;border:6px solid transparent;border-bottom-color:#69738a;-o-border-image:initial;border-image:initial;content:"";margin-right:-6px;margin-top:-12px;position:absolute;z-index:1002}.codeblock-tools [data-title]:after{background:#69738a;border-radius:2px;color:#fff;content:attr(data-title);font-size:12px;line-height:12px;margin-right:-18px;padding:8px 10px;white-space:nowrap}.codeblock-tools [data-title]:after,.codeblock-tools [data-title]:before{display:none;opacity:0;pointer-events:none;position:absolute;right:50%;top:110%;transform:translateZ(0);transition:opacity .3s;z-index:1001}.codeblock-tools:not(.show-theme-options) [data-title]:hover:not(:active):after,.codeblock-tools:not(.show-theme-options) [data-title]:hover:not(:active):before{display:block;opacity:1}.codeblock-container{position:relative}.codeblock-container .toolbar-hover{opacity:0;transition:opacity .3s}.codeblock-container:hover .toolbar-hover{opacity:1}.tools-message{background-color:#f6f8fa;border-radius:4px;color:#24292e;display:flex;flex:1;font-size:.75rem;height:100%;justify-content:center;line-height:22px;text-align:center;width:auto}.tools-message-icon{padding:5px}.tools-message.hidden .tools-message-icon{color:transparent}.tools-message:not(.hidden) .tools-message-icon{color:#00b96b}.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-content{font-size:.75rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.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}
18
18
 
19
19
  /*!
20
- * css of showdowns v0.6.18
20
+ * css of showdowns v0.7.0
21
21
  * Copyright (c) 2019-present, Jhuix (Hui Jin) <jhuix0117@gmail.com>
22
22
  * Released under the MIT License.
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}
23
+ */.none{height:0;overflow:hidden;position:absolute;width:0}.hidden{display:none!important}.showdowns{flex-grow:1;margin-left:1rem;margin-right:1rem;min-width:300px;position:relative}.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:not(.inline-image){-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:2rem}.showdowns h2{font-size:1.5rem}.showdowns h3{font-size:1.375rem}.showdowns h4{font-size:1.25rem}.showdowns h5{font-size:1.125rem}.showdowns h6{color:#6a737d;font-size:1rem}.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;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}