diff --git a/bitcron-pro-plus/assets/media/css/katex.css b/bitcron-pro-plus/assets/media/css/katex.css new file mode 100644 index 0000000..e766c2f --- /dev/null +++ b/bitcron-pro-plus/assets/media/css/katex.css @@ -0,0 +1,1003 @@ +@font-face { + font-family: KaTeX_AMS; + src: url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"), url(fonts/KaTeX_AMS-Regular.woff) format("woff"), url(fonts/KaTeX_AMS-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Caligraphic; + src: url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"), url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"), url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype"); + font-weight: 700; + font-style: normal +} +@font-face { + font-family: KaTeX_Caligraphic; + src: url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"), url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"), url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Fraktur; + src: url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"), url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"), url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype"); + font-weight: 700; + font-style: normal +} +@font-face { + font-family: KaTeX_Fraktur; + src: url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"), url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"), url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Main; + src: url(fonts/KaTeX_Main-Bold.woff2) format("woff2"), url(fonts/KaTeX_Main-Bold.woff) format("woff"), url(fonts/KaTeX_Main-Bold.ttf) format("truetype"); + font-weight: 700; + font-style: normal +} +@font-face { + font-family: KaTeX_Main; + src: url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"), url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"), url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype"); + font-weight: 700; + font-style: italic +} +@font-face { + font-family: KaTeX_Main; + src: url(fonts/KaTeX_Main-Italic.woff2) format("woff2"), url(fonts/KaTeX_Main-Italic.woff) format("woff"), url(fonts/KaTeX_Main-Italic.ttf) format("truetype"); + font-weight: 400; + font-style: italic +} +@font-face { + font-family: KaTeX_Main; + src: url(fonts/KaTeX_Main-Regular.woff2) format("woff2"), url(fonts/KaTeX_Main-Regular.woff) format("woff"), url(fonts/KaTeX_Main-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Math; + src: url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"), url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"), url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype"); + font-weight: 700; + font-style: italic +} +@font-face { + font-family: KaTeX_Math; + src: url(fonts/KaTeX_Math-Italic.woff2) format("woff2"), url(fonts/KaTeX_Math-Italic.woff) format("woff"), url(fonts/KaTeX_Math-Italic.ttf) format("truetype"); + font-weight: 400; + font-style: italic +} +@font-face { + font-family: "KaTeX_SansSerif"; + src: url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"), url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"), url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype"); + font-weight: 700; + font-style: normal +} +@font-face { + font-family: "KaTeX_SansSerif"; + src: url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"), url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"), url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype"); + font-weight: 400; + font-style: italic +} +@font-face { + font-family: "KaTeX_SansSerif"; + src: url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"), url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"), url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Script; + src: url(fonts/KaTeX_Script-Regular.woff2) format("woff2"), url(fonts/KaTeX_Script-Regular.woff) format("woff"), url(fonts/KaTeX_Script-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Size1; + src: url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size1-Regular.woff) format("woff"), url(fonts/KaTeX_Size1-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Size2; + src: url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size2-Regular.woff) format("woff"), url(fonts/KaTeX_Size2-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Size3; + src: url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size3-Regular.woff) format("woff"), url(fonts/KaTeX_Size3-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Size4; + src: url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"), url(fonts/KaTeX_Size4-Regular.woff) format("woff"), url(fonts/KaTeX_Size4-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +@font-face { + font-family: KaTeX_Typewriter; + src: url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"), url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"), url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype"); + font-weight: 400; + font-style: normal +} +.katex { + font: normal 1.21em KaTeX_Main, Times New Roman, serif; + line-height: 1.2; + text-indent: 0; + text-rendering: auto +} +.katex * { + -ms-high-contrast-adjust: none!important +} +.katex .katex-version:after { + content: "0.11.1" +} +.katex .katex-mathml { + position: absolute; + clip: rect(1px, 1px, 1px, 1px); + padding: 0; + border: 0; + height: 1px; + width: 1px; + overflow: hidden +} +.katex .katex-html > .newline { + display: block +} +.katex .base { + position: relative; + white-space: nowrap; + width: min-content +} +.katex .base, +.katex .strut { + display: inline-block +} +.katex .textbf { + font-weight: 700 +} +.katex .textit { + font-style: italic +} +.katex .textrm { + font-family: KaTeX_Main +} +.katex .textsf { + font-family: KaTeX_SansSerif +} +.katex .texttt { + font-family: KaTeX_Typewriter +} +.katex .mathdefault { + font-family: KaTeX_Math; + font-style: italic +} +.katex .mathit { + font-family: KaTeX_Main; + font-style: italic +} +.katex .mathrm { + font-style: normal +} +.katex .mathbf { + font-family: KaTeX_Main; + font-weight: 700 +} +.katex .boldsymbol { + font-family: KaTeX_Math; + font-weight: 700; + font-style: italic +} +.katex .amsrm, +.katex .mathbb, +.katex .textbb { + font-family: KaTeX_AMS +} +.katex .mathcal { + font-family: KaTeX_Caligraphic +} +.katex .mathfrak, +.katex .textfrak { + font-family: KaTeX_Fraktur +} +.katex .mathtt { + font-family: KaTeX_Typewriter +} +.katex .mathscr, +.katex .textscr { + font-family: KaTeX_Script +} +.katex .mathsf, +.katex .textsf { + font-family: KaTeX_SansSerif +} +.katex .mathboldsf, +.katex .textboldsf { + font-family: KaTeX_SansSerif; + font-weight: 700 +} +.katex .mathitsf, +.katex .textitsf { + font-family: KaTeX_SansSerif; + font-style: italic +} +.katex .mainrm { + font-family: KaTeX_Main; + font-style: normal +} +.katex .vlist-t { + display: inline-table; + table-layout: fixed +} +.katex .vlist-r { + display: table-row +} +.katex .vlist { + display: table-cell; + vertical-align: bottom; + position: relative +} +.katex .vlist > span { + display: block; + height: 0; + position: relative +} +.katex .vlist > span > span { + display: inline-block +} +.katex .vlist > span > .pstrut { + overflow: hidden; + width: 0 +} +.katex .vlist-t2 { + margin-right: -2px +} +.katex .vlist-s { + display: table-cell; + vertical-align: bottom; + font-size: 1px; + width: 2px; + min-width: 2px +} +.katex .msupsub { + text-align: left +} +.katex .mfrac > span > span { + text-align: center +} +.katex .mfrac .frac-line { + display: inline-block; + width: 100%; + border-bottom-style: solid +} +.katex .hdashline, +.katex .hline, +.katex .mfrac .frac-line, +.katex .overline .overline-line, +.katex .rule, +.katex .underline .underline-line { + min-height: 1px +} +.katex .mspace { + display: inline-block +} +.katex .clap, +.katex .llap, +.katex .rlap { + width: 0; + position: relative +} +.katex .clap > .inner, +.katex .llap > .inner, +.katex .rlap > .inner { + position: absolute +} +.katex .clap > .fix, +.katex .llap > .fix, +.katex .rlap > .fix { + display: inline-block +} +.katex .llap > .inner { + right: 0 +} +.katex .clap > .inner, +.katex .rlap > .inner { + left: 0 +} +.katex .clap > .inner > span { + margin-left: -50%; + margin-right: 50% +} +.katex .rule { + display: inline-block; + border: 0 solid; + position: relative +} +.katex .hline, +.katex .overline .overline-line, +.katex .underline .underline-line { + display: inline-block; + width: 100%; + border-bottom-style: solid +} +.katex .hdashline { + display: inline-block; + width: 100%; + border-bottom-style: dashed +} +.katex .sqrt > .root { + margin-left: .27777778em; + margin-right: -.55555556em +} +.katex .fontsize-ensurer.reset-size1.size1, +.katex .sizing.reset-size1.size1 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size1.size2, +.katex .sizing.reset-size1.size2 { + font-size: 1.2em +} +.katex .fontsize-ensurer.reset-size1.size3, +.katex .sizing.reset-size1.size3 { + font-size: 1.4em +} +.katex .fontsize-ensurer.reset-size1.size4, +.katex .sizing.reset-size1.size4 { + font-size: 1.6em +} +.katex .fontsize-ensurer.reset-size1.size5, +.katex .sizing.reset-size1.size5 { + font-size: 1.8em +} +.katex .fontsize-ensurer.reset-size1.size6, +.katex .sizing.reset-size1.size6 { + font-size: 2em +} +.katex .fontsize-ensurer.reset-size1.size7, +.katex .sizing.reset-size1.size7 { + font-size: 2.4em +} +.katex .fontsize-ensurer.reset-size1.size8, +.katex .sizing.reset-size1.size8 { + font-size: 2.88em +} +.katex .fontsize-ensurer.reset-size1.size9, +.katex .sizing.reset-size1.size9 { + font-size: 3.456em +} +.katex .fontsize-ensurer.reset-size1.size10, +.katex .sizing.reset-size1.size10 { + font-size: 4.148em +} +.katex .fontsize-ensurer.reset-size1.size11, +.katex .sizing.reset-size1.size11 { + font-size: 4.976em +} +.katex .fontsize-ensurer.reset-size2.size1, +.katex .sizing.reset-size2.size1 { + font-size: .83333333em +} +.katex .fontsize-ensurer.reset-size2.size2, +.katex .sizing.reset-size2.size2 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size2.size3, +.katex .sizing.reset-size2.size3 { + font-size: 1.16666667em +} +.katex .fontsize-ensurer.reset-size2.size4, +.katex .sizing.reset-size2.size4 { + font-size: 1.33333333em +} +.katex .fontsize-ensurer.reset-size2.size5, +.katex .sizing.reset-size2.size5 { + font-size: 1.5em +} +.katex .fontsize-ensurer.reset-size2.size6, +.katex .sizing.reset-size2.size6 { + font-size: 1.66666667em +} +.katex .fontsize-ensurer.reset-size2.size7, +.katex .sizing.reset-size2.size7 { + font-size: 2em +} +.katex .fontsize-ensurer.reset-size2.size8, +.katex .sizing.reset-size2.size8 { + font-size: 2.4em +} +.katex .fontsize-ensurer.reset-size2.size9, +.katex .sizing.reset-size2.size9 { + font-size: 2.88em +} +.katex .fontsize-ensurer.reset-size2.size10, +.katex .sizing.reset-size2.size10 { + font-size: 3.45666667em +} +.katex .fontsize-ensurer.reset-size2.size11, +.katex .sizing.reset-size2.size11 { + font-size: 4.14666667em +} +.katex .fontsize-ensurer.reset-size3.size1, +.katex .sizing.reset-size3.size1 { + font-size: .71428571em +} +.katex .fontsize-ensurer.reset-size3.size2, +.katex .sizing.reset-size3.size2 { + font-size: .85714286em +} +.katex .fontsize-ensurer.reset-size3.size3, +.katex .sizing.reset-size3.size3 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size3.size4, +.katex .sizing.reset-size3.size4 { + font-size: 1.14285714em +} +.katex .fontsize-ensurer.reset-size3.size5, +.katex .sizing.reset-size3.size5 { + font-size: 1.28571429em +} +.katex .fontsize-ensurer.reset-size3.size6, +.katex .sizing.reset-size3.size6 { + font-size: 1.42857143em +} +.katex .fontsize-ensurer.reset-size3.size7, +.katex .sizing.reset-size3.size7 { + font-size: 1.71428571em +} +.katex .fontsize-ensurer.reset-size3.size8, +.katex .sizing.reset-size3.size8 { + font-size: 2.05714286em +} +.katex .fontsize-ensurer.reset-size3.size9, +.katex .sizing.reset-size3.size9 { + font-size: 2.46857143em +} +.katex .fontsize-ensurer.reset-size3.size10, +.katex .sizing.reset-size3.size10 { + font-size: 2.96285714em +} +.katex .fontsize-ensurer.reset-size3.size11, +.katex .sizing.reset-size3.size11 { + font-size: 3.55428571em +} +.katex .fontsize-ensurer.reset-size4.size1, +.katex .sizing.reset-size4.size1 { + font-size: .625em +} +.katex .fontsize-ensurer.reset-size4.size2, +.katex .sizing.reset-size4.size2 { + font-size: .75em +} +.katex .fontsize-ensurer.reset-size4.size3, +.katex .sizing.reset-size4.size3 { + font-size: .875em +} +.katex .fontsize-ensurer.reset-size4.size4, +.katex .sizing.reset-size4.size4 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size4.size5, +.katex .sizing.reset-size4.size5 { + font-size: 1.125em +} +.katex .fontsize-ensurer.reset-size4.size6, +.katex .sizing.reset-size4.size6 { + font-size: 1.25em +} +.katex .fontsize-ensurer.reset-size4.size7, +.katex .sizing.reset-size4.size7 { + font-size: 1.5em +} +.katex .fontsize-ensurer.reset-size4.size8, +.katex .sizing.reset-size4.size8 { + font-size: 1.8em +} +.katex .fontsize-ensurer.reset-size4.size9, +.katex .sizing.reset-size4.size9 { + font-size: 2.16em +} +.katex .fontsize-ensurer.reset-size4.size10, +.katex .sizing.reset-size4.size10 { + font-size: 2.5925em +} +.katex .fontsize-ensurer.reset-size4.size11, +.katex .sizing.reset-size4.size11 { + font-size: 3.11em +} +.katex .fontsize-ensurer.reset-size5.size1, +.katex .sizing.reset-size5.size1 { + font-size: .55555556em +} +.katex .fontsize-ensurer.reset-size5.size2, +.katex .sizing.reset-size5.size2 { + font-size: .66666667em +} +.katex .fontsize-ensurer.reset-size5.size3, +.katex .sizing.reset-size5.size3 { + font-size: .77777778em +} +.katex .fontsize-ensurer.reset-size5.size4, +.katex .sizing.reset-size5.size4 { + font-size: .88888889em +} +.katex .fontsize-ensurer.reset-size5.size5, +.katex .sizing.reset-size5.size5 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size5.size6, +.katex .sizing.reset-size5.size6 { + font-size: 1.11111111em +} +.katex .fontsize-ensurer.reset-size5.size7, +.katex .sizing.reset-size5.size7 { + font-size: 1.33333333em +} +.katex .fontsize-ensurer.reset-size5.size8, +.katex .sizing.reset-size5.size8 { + font-size: 1.6em +} +.katex .fontsize-ensurer.reset-size5.size9, +.katex .sizing.reset-size5.size9 { + font-size: 1.92em +} +.katex .fontsize-ensurer.reset-size5.size10, +.katex .sizing.reset-size5.size10 { + font-size: 2.30444444em +} +.katex .fontsize-ensurer.reset-size5.size11, +.katex .sizing.reset-size5.size11 { + font-size: 2.76444444em +} +.katex .fontsize-ensurer.reset-size6.size1, +.katex .sizing.reset-size6.size1 { + font-size: .5em +} +.katex .fontsize-ensurer.reset-size6.size2, +.katex .sizing.reset-size6.size2 { + font-size: .6em +} +.katex .fontsize-ensurer.reset-size6.size3, +.katex .sizing.reset-size6.size3 { + font-size: .7em +} +.katex .fontsize-ensurer.reset-size6.size4, +.katex .sizing.reset-size6.size4 { + font-size: .8em +} +.katex .fontsize-ensurer.reset-size6.size5, +.katex .sizing.reset-size6.size5 { + font-size: .9em +} +.katex .fontsize-ensurer.reset-size6.size6, +.katex .sizing.reset-size6.size6 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size6.size7, +.katex .sizing.reset-size6.size7 { + font-size: 1.2em +} +.katex .fontsize-ensurer.reset-size6.size8, +.katex .sizing.reset-size6.size8 { + font-size: 1.44em +} +.katex .fontsize-ensurer.reset-size6.size9, +.katex .sizing.reset-size6.size9 { + font-size: 1.728em +} +.katex .fontsize-ensurer.reset-size6.size10, +.katex .sizing.reset-size6.size10 { + font-size: 2.074em +} +.katex .fontsize-ensurer.reset-size6.size11, +.katex .sizing.reset-size6.size11 { + font-size: 2.488em +} +.katex .fontsize-ensurer.reset-size7.size1, +.katex .sizing.reset-size7.size1 { + font-size: .41666667em +} +.katex .fontsize-ensurer.reset-size7.size2, +.katex .sizing.reset-size7.size2 { + font-size: .5em +} +.katex .fontsize-ensurer.reset-size7.size3, +.katex .sizing.reset-size7.size3 { + font-size: .58333333em +} +.katex .fontsize-ensurer.reset-size7.size4, +.katex .sizing.reset-size7.size4 { + font-size: .66666667em +} +.katex .fontsize-ensurer.reset-size7.size5, +.katex .sizing.reset-size7.size5 { + font-size: .75em +} +.katex .fontsize-ensurer.reset-size7.size6, +.katex .sizing.reset-size7.size6 { + font-size: .83333333em +} +.katex .fontsize-ensurer.reset-size7.size7, +.katex .sizing.reset-size7.size7 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size7.size8, +.katex .sizing.reset-size7.size8 { + font-size: 1.2em +} +.katex .fontsize-ensurer.reset-size7.size9, +.katex .sizing.reset-size7.size9 { + font-size: 1.44em +} +.katex .fontsize-ensurer.reset-size7.size10, +.katex .sizing.reset-size7.size10 { + font-size: 1.72833333em +} +.katex .fontsize-ensurer.reset-size7.size11, +.katex .sizing.reset-size7.size11 { + font-size: 2.07333333em +} +.katex .fontsize-ensurer.reset-size8.size1, +.katex .sizing.reset-size8.size1 { + font-size: .34722222em +} +.katex .fontsize-ensurer.reset-size8.size2, +.katex .sizing.reset-size8.size2 { + font-size: .41666667em +} +.katex .fontsize-ensurer.reset-size8.size3, +.katex .sizing.reset-size8.size3 { + font-size: .48611111em +} +.katex .fontsize-ensurer.reset-size8.size4, +.katex .sizing.reset-size8.size4 { + font-size: .55555556em +} +.katex .fontsize-ensurer.reset-size8.size5, +.katex .sizing.reset-size8.size5 { + font-size: .625em +} +.katex .fontsize-ensurer.reset-size8.size6, +.katex .sizing.reset-size8.size6 { + font-size: .69444444em +} +.katex .fontsize-ensurer.reset-size8.size7, +.katex .sizing.reset-size8.size7 { + font-size: .83333333em +} +.katex .fontsize-ensurer.reset-size8.size8, +.katex .sizing.reset-size8.size8 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size8.size9, +.katex .sizing.reset-size8.size9 { + font-size: 1.2em +} +.katex .fontsize-ensurer.reset-size8.size10, +.katex .sizing.reset-size8.size10 { + font-size: 1.44027778em +} +.katex .fontsize-ensurer.reset-size8.size11, +.katex .sizing.reset-size8.size11 { + font-size: 1.72777778em +} +.katex .fontsize-ensurer.reset-size9.size1, +.katex .sizing.reset-size9.size1 { + font-size: .28935185em +} +.katex .fontsize-ensurer.reset-size9.size2, +.katex .sizing.reset-size9.size2 { + font-size: .34722222em +} +.katex .fontsize-ensurer.reset-size9.size3, +.katex .sizing.reset-size9.size3 { + font-size: .40509259em +} +.katex .fontsize-ensurer.reset-size9.size4, +.katex .sizing.reset-size9.size4 { + font-size: .46296296em +} +.katex .fontsize-ensurer.reset-size9.size5, +.katex .sizing.reset-size9.size5 { + font-size: .52083333em +} +.katex .fontsize-ensurer.reset-size9.size6, +.katex .sizing.reset-size9.size6 { + font-size: .5787037em +} +.katex .fontsize-ensurer.reset-size9.size7, +.katex .sizing.reset-size9.size7 { + font-size: .69444444em +} +.katex .fontsize-ensurer.reset-size9.size8, +.katex .sizing.reset-size9.size8 { + font-size: .83333333em +} +.katex .fontsize-ensurer.reset-size9.size9, +.katex .sizing.reset-size9.size9 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size9.size10, +.katex .sizing.reset-size9.size10 { + font-size: 1.20023148em +} +.katex .fontsize-ensurer.reset-size9.size11, +.katex .sizing.reset-size9.size11 { + font-size: 1.43981481em +} +.katex .fontsize-ensurer.reset-size10.size1, +.katex .sizing.reset-size10.size1 { + font-size: .24108004em +} +.katex .fontsize-ensurer.reset-size10.size2, +.katex .sizing.reset-size10.size2 { + font-size: .28929605em +} +.katex .fontsize-ensurer.reset-size10.size3, +.katex .sizing.reset-size10.size3 { + font-size: .33751205em +} +.katex .fontsize-ensurer.reset-size10.size4, +.katex .sizing.reset-size10.size4 { + font-size: .38572806em +} +.katex .fontsize-ensurer.reset-size10.size5, +.katex .sizing.reset-size10.size5 { + font-size: .43394407em +} +.katex .fontsize-ensurer.reset-size10.size6, +.katex .sizing.reset-size10.size6 { + font-size: .48216008em +} +.katex .fontsize-ensurer.reset-size10.size7, +.katex .sizing.reset-size10.size7 { + font-size: .57859209em +} +.katex .fontsize-ensurer.reset-size10.size8, +.katex .sizing.reset-size10.size8 { + font-size: .69431051em +} +.katex .fontsize-ensurer.reset-size10.size9, +.katex .sizing.reset-size10.size9 { + font-size: .83317261em +} +.katex .fontsize-ensurer.reset-size10.size10, +.katex .sizing.reset-size10.size10 { + font-size: 1em +} +.katex .fontsize-ensurer.reset-size10.size11, +.katex .sizing.reset-size10.size11 { + font-size: 1.19961427em +} +.katex .fontsize-ensurer.reset-size11.size1, +.katex .sizing.reset-size11.size1 { + font-size: .20096463em +} +.katex .fontsize-ensurer.reset-size11.size2, +.katex .sizing.reset-size11.size2 { + font-size: .24115756em +} +.katex .fontsize-ensurer.reset-size11.size3, +.katex .sizing.reset-size11.size3 { + font-size: .28135048em +} +.katex .fontsize-ensurer.reset-size11.size4, +.katex .sizing.reset-size11.size4 { + font-size: .32154341em +} +.katex .fontsize-ensurer.reset-size11.size5, +.katex .sizing.reset-size11.size5 { + font-size: .36173633em +} +.katex .fontsize-ensurer.reset-size11.size6, +.katex .sizing.reset-size11.size6 { + font-size: .40192926em +} +.katex .fontsize-ensurer.reset-size11.size7, +.katex .sizing.reset-size11.size7 { + font-size: .48231511em +} +.katex .fontsize-ensurer.reset-size11.size8, +.katex .sizing.reset-size11.size8 { + font-size: .57877814em +} +.katex .fontsize-ensurer.reset-size11.size9, +.katex .sizing.reset-size11.size9 { + font-size: .69453376em +} +.katex .fontsize-ensurer.reset-size11.size10, +.katex .sizing.reset-size11.size10 { + font-size: .83360129em +} +.katex .fontsize-ensurer.reset-size11.size11, +.katex .sizing.reset-size11.size11 { + font-size: 1em +} +.katex .delimsizing.size1 { + font-family: KaTeX_Size1 +} +.katex .delimsizing.size2 { + font-family: KaTeX_Size2 +} +.katex .delimsizing.size3 { + font-family: KaTeX_Size3 +} +.katex .delimsizing.size4 { + font-family: KaTeX_Size4 +} +.katex .delimsizing.mult .delim-size1 > span { + font-family: KaTeX_Size1 +} +.katex .delimsizing.mult .delim-size4 > span { + font-family: KaTeX_Size4 +} +.katex .nulldelimiter { + display: inline-block; + width: .12em +} +.katex .delimcenter, +.katex .op-symbol { + position: relative +} +.katex .op-symbol.small-op { + font-family: KaTeX_Size1 +} +.katex .op-symbol.large-op { + font-family: KaTeX_Size2 +} +.katex .op-limits > .vlist-t { + text-align: center +} +.katex .accent > .vlist-t { + text-align: center +} +.katex .accent .accent-body { + position: relative +} +.katex .accent .accent-body:not(.accent-full) { + width: 0 +} +.katex .overlay { + display: block +} +.katex .mtable .vertical-separator { + display: inline-block; + min-width: 1px +} +.katex .mtable .arraycolsep { + display: inline-block +} +.katex .mtable .col-align-c > .vlist-t { + text-align: center +} +.katex .mtable .col-align-l > .vlist-t { + text-align: left +} +.katex .mtable .col-align-r > .vlist-t { + text-align: right +} +.katex .svg-align { + text-align: left +} +.katex svg { + display: block; + position: absolute; + width: 100%; + height: inherit; + fill: currentColor; + stroke: currentColor; + fill-rule: nonzero; + fill-opacity: 1; + stroke-width: 1; + stroke-linecap: butt; + stroke-linejoin: miter; + stroke-miterlimit: 4; + stroke-dasharray: none; + stroke-dashoffset: 0; + stroke-opacity: 1 +} +.katex svg path { + stroke: none +} +.katex img { + border-style: none; + min-width: 0; + min-height: 0; + max-width: none; + max-height: none +} +.katex .stretchy { + width: 100%; + display: block; + position: relative; + overflow: hidden +} +.katex .stretchy:after, +.katex .stretchy:before { + content: "" +} +.katex .hide-tail { + width: 100%; + position: relative; + overflow: hidden +} +.katex .halfarrow-left { + position: absolute; + left: 0; + width: 50.2%; + overflow: hidden +} +.katex .halfarrow-right { + position: absolute; + right: 0; + width: 50.2%; + overflow: hidden +} +.katex .brace-left { + position: absolute; + left: 0; + width: 25.1%; + overflow: hidden +} +.katex .brace-center { + position: absolute; + left: 25%; + width: 50%; + overflow: hidden +} +.katex .brace-right { + position: absolute; + right: 0; + width: 25.1%; + overflow: hidden +} +.katex .x-arrow-pad { + padding: 0 .5em +} +.katex .mover, +.katex .munder, +.katex .x-arrow { + text-align: center +} +.katex .boxpad { + padding: 0 .3em +} +.katex .fbox, +.katex .fcolorbox { + box-sizing: border-box; + border: .04em solid +} +.katex .cancel-pad { + padding: 0 .2em +} +.katex .cancel-lap { + margin-left: -.2em; + margin-right: -.2em +} +.katex .sout { + border-bottom-style: solid; + border-bottom-width: .08em +} +.katex-display { + display: block; + margin: 1em 0; + text-align: center +} +.katex-display > .katex { + display: block; + text-align: center; + white-space: nowrap +} +.katex-display > .katex > .katex-html { + display: block; + position: relative +} +.katex-display > .katex > .katex-html > .tag { + position: absolute; + right: 0 +} +.katex-display.leqno > .katex > .katex-html > .tag { + left: 0; + right: auto +} +.katex-display.fleqn > .katex { + text-align: left +} \ No newline at end of file diff --git a/bitcron-pro-plus/assets/media/gridea-search/ejs.min.js b/bitcron-pro-plus/assets/media/gridea-search/ejs.min.js new file mode 100644 index 0000000..3645a8c --- /dev/null +++ b/bitcron-pro-plus/assets/media/gridea-search/ejs.min.js @@ -0,0 +1 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.ejs=f()}})(function(){var define,module,exports;return function(){function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o1;if(options.cache){if(!filename){throw new Error("cache option requires a filename")}func=exports.cache.get(filename);if(func){return func}if(!hasTemplate){template=fileLoader(filename).toString().replace(_BOM,"")}}else if(!hasTemplate){if(!filename){throw new Error("Internal EJS error: no file name or template "+"provided")}template=fileLoader(filename).toString().replace(_BOM,"")}func=exports.compile(template,options);if(options.cache){exports.cache.set(filename,func)}return func}function tryHandleCache(options,data,cb){var result;if(!cb){if(typeof exports.promiseImpl=="function"){return new exports.promiseImpl(function(resolve,reject){try{result=handleCache(options)(data);resolve(result)}catch(err){reject(err)}})}else{throw new Error("Please provide a callback function")}}else{try{result=handleCache(options)(data)}catch(err){return cb(err)}cb(null,result)}}function fileLoader(filePath){return exports.fileLoader(filePath)}function includeFile(path,options){var opts=utils.shallowCopy({},options);opts.filename=getIncludePath(path,opts);return handleCache(opts)}function includeSource(path,options){var opts=utils.shallowCopy({},options);var includePath;var template;includePath=getIncludePath(path,opts);template=fileLoader(includePath).toString().replace(_BOM,"");opts.filename=includePath;var templ=new Template(template,opts);templ.generateSource();return{source:templ.source,filename:includePath,template:template}}function rethrow(err,str,flnm,lineno,esc){var lines=str.split("\n");var start=Math.max(lineno-3,0);var end=Math.min(lines.length,lineno+3);var filename=esc(flnm);var context=lines.slice(start,end).map(function(line,i){var curr=i+start+1;return(curr==lineno?" >> ":" ")+curr+"| "+line}).join("\n");err.path=filename;err.message=(filename||"ejs")+":"+lineno+"\n"+context+"\n\n"+err.message;throw err}function stripSemi(str){return str.replace(/;(\s*$)/,"$1")}exports.compile=function compile(template,opts){var templ;if(opts&&opts.scope){if(!scopeOptionWarned){console.warn("`scope` option is deprecated and will be removed in EJS 3");scopeOptionWarned=true}if(!opts.context){opts.context=opts.scope}delete opts.scope}templ=new Template(template,opts);return templ.compile()};exports.render=function(template,d,o){var data=d||{};var opts=o||{};if(arguments.length==2){utils.shallowCopyFromList(opts,data,_OPTS_PASSABLE_WITH_DATA)}return handleCache(opts,template)(data)};exports.renderFile=function(){var args=Array.prototype.slice.call(arguments);var filename=args.shift();var cb;var opts={filename:filename};var data;var viewOpts;if(typeof arguments[arguments.length-1]=="function"){cb=args.pop()}if(args.length){data=args.shift();if(args.length){utils.shallowCopy(opts,args.pop())}else{if(data.settings){if(data.settings.views){opts.views=data.settings.views}if(data.settings["view cache"]){opts.cache=true}viewOpts=data.settings["view options"];if(viewOpts){utils.shallowCopy(opts,viewOpts)}}utils.shallowCopyFromList(opts,data,_OPTS_PASSABLE_WITH_DATA_EXPRESS)}opts.filename=filename}else{data={}}return tryHandleCache(opts,data,cb)};exports.Template=Template;exports.clearCache=function(){exports.cache.reset()};function Template(text,opts){opts=opts||{};var options={};this.templateText=text;this.mode=null;this.truncate=false;this.currentLine=1;this.source="";this.dependencies=[];options.client=opts.client||false;options.escapeFunction=opts.escape||opts.escapeFunction||utils.escapeXML;options.compileDebug=opts.compileDebug!==false;options.debug=!!opts.debug;options.filename=opts.filename;options.openDelimiter=opts.openDelimiter||exports.openDelimiter||_DEFAULT_OPEN_DELIMITER;options.closeDelimiter=opts.closeDelimiter||exports.closeDelimiter||_DEFAULT_CLOSE_DELIMITER;options.delimiter=opts.delimiter||exports.delimiter||_DEFAULT_DELIMITER;options.strict=opts.strict||false;options.context=opts.context;options.cache=opts.cache||false;options.rmWhitespace=opts.rmWhitespace;options.root=opts.root;options.outputFunctionName=opts.outputFunctionName;options.localsName=opts.localsName||exports.localsName||_DEFAULT_LOCALS_NAME;options.views=opts.views;options.async=opts.async;if(options.strict){options._with=false}else{options._with=typeof opts._with!="undefined"?opts._with:true}this.opts=options;this.regex=this.createRegex()}Template.modes={EVAL:"eval",ESCAPED:"escaped",RAW:"raw",COMMENT:"comment",LITERAL:"literal"};Template.prototype={createRegex:function(){var str=_REGEX_STRING;var delim=utils.escapeRegExpChars(this.opts.delimiter);var open=utils.escapeRegExpChars(this.opts.openDelimiter);var close=utils.escapeRegExpChars(this.opts.closeDelimiter);str=str.replace(/%/g,delim).replace(//g,close);return new RegExp(str)},compile:function(){var src;var fn;var opts=this.opts;var prepended="";var appended="";var escapeFn=opts.escapeFunction;var ctor;if(!this.source){this.generateSource();prepended+=" var __output = [], __append = __output.push.bind(__output);"+"\n";if(opts.outputFunctionName){prepended+=" var "+opts.outputFunctionName+" = __append;"+"\n"}if(opts._with!==false){prepended+=" with ("+opts.localsName+" || {}) {"+"\n";appended+=" }"+"\n"}appended+=' return __output.join("");'+"\n";this.source=prepended+this.source+appended}if(opts.compileDebug){src="var __line = 1"+"\n"+" , __lines = "+JSON.stringify(this.templateText)+"\n"+" , __filename = "+(opts.filename?JSON.stringify(opts.filename):"undefined")+";"+"\n"+"try {"+"\n"+this.source+"} catch (e) {"+"\n"+" rethrow(e, __lines, __filename, __line, escapeFn);"+"\n"+"}"+"\n"}else{src=this.source}if(opts.client){src="escapeFn = escapeFn || "+escapeFn.toString()+";"+"\n"+src;if(opts.compileDebug){src="rethrow = rethrow || "+rethrow.toString()+";"+"\n"+src}}if(opts.strict){src='"use strict";\n'+src}if(opts.debug){console.log(src)}try{if(opts.async){try{ctor=new Function("return (async function(){}).constructor;")()}catch(e){if(e instanceof SyntaxError){throw new Error("This environment does not support async/await")}else{throw e}}}else{ctor=Function}fn=new ctor(opts.localsName+", escapeFn, include, rethrow",src)}catch(e){if(e instanceof SyntaxError){if(opts.filename){e.message+=" in "+opts.filename}e.message+=" while compiling ejs\n\n";e.message+="If the above error is not helpful, you may want to try EJS-Lint:\n";e.message+="https://github.com/RyanZim/EJS-Lint";if(!e.async){e.message+="\n";e.message+="Or, if you meant to create an async function, pass async: true as an option."}}throw e}if(opts.client){fn.dependencies=this.dependencies;return fn}var returnedFn=function(data){var include=function(path,includeData){var d=utils.shallowCopy({},data);if(includeData){d=utils.shallowCopy(d,includeData)}return includeFile(path,opts)(d)};return fn.apply(opts.context,[data||{},escapeFn,include,rethrow])};returnedFn.dependencies=this.dependencies;return returnedFn},generateSource:function(){var opts=this.opts;if(opts.rmWhitespace){this.templateText=this.templateText.replace(/[\r\n]+/g,"\n").replace(/^\s+|\s+$/gm,"")}this.templateText=this.templateText.replace(/[ \t]*<%_/gm,"<%_").replace(/_%>[ \t]*/gm,"_%>");var self=this;var matches=this.parseTemplateText();var d=this.opts.delimiter;var o=this.opts.openDelimiter;var c=this.opts.closeDelimiter;if(matches&&matches.length){matches.forEach(function(line,index){var opening;var closing;var include;var includeOpts;var includeObj;var includeSrc;if(line.indexOf(o+d)===0&&line.indexOf(o+d+d)!==0){closing=matches[index+2];if(!(closing==d+c||closing=="-"+d+c||closing=="_"+d+c)){throw new Error('Could not find matching close tag for "'+line+'".')}}if(include=line.match(/^\s*include\s+(\S+)/)){opening=matches[index-1];if(opening&&(opening==o+d||opening==o+d+"-"||opening==o+d+"_")){includeOpts=utils.shallowCopy({},self.opts);includeObj=includeSource(include[1],includeOpts);if(self.opts.compileDebug){includeSrc=" ; (function(){"+"\n"+" var __line = 1"+"\n"+" , __lines = "+JSON.stringify(includeObj.template)+"\n"+" , __filename = "+JSON.stringify(includeObj.filename)+";"+"\n"+" try {"+"\n"+includeObj.source+" } catch (e) {"+"\n"+" rethrow(e, __lines, __filename, __line, escapeFn);"+"\n"+" }"+"\n"+" ; }).call(this)"+"\n"}else{includeSrc=" ; (function(){"+"\n"+includeObj.source+" ; }).call(this)"+"\n"}self.source+=includeSrc;self.dependencies.push(exports.resolveInclude(include[1],includeOpts.filename));return}}self.scanLine(line)})}},parseTemplateText:function(){var str=this.templateText;var pat=this.regex;var result=pat.exec(str);var arr=[];var firstPos;while(result){firstPos=result.index;if(firstPos!==0){arr.push(str.substring(0,firstPos));str=str.slice(firstPos)}arr.push(result[0]);str=str.slice(result[0].length);result=pat.exec(str)}if(str){arr.push(str)}return arr},_addOutput:function(line){if(this.truncate){line=line.replace(/^(?:\r\n|\r|\n)/,"");this.truncate=false}if(!line){return line}line=line.replace(/\\/g,"\\\\");line=line.replace(/\n/g,"\\n");line=line.replace(/\r/g,"\\r");line=line.replace(/"/g,'\\"');this.source+=' ; __append("'+line+'")'+"\n"},scanLine:function(line){var self=this;var d=this.opts.delimiter;var o=this.opts.openDelimiter;var c=this.opts.closeDelimiter;var newLineCount=0;newLineCount=line.split("\n").length-1;switch(line){case o+d:case o+d+"_":this.mode=Template.modes.EVAL;break;case o+d+"=":this.mode=Template.modes.ESCAPED;break;case o+d+"-":this.mode=Template.modes.RAW;break;case o+d+"#":this.mode=Template.modes.COMMENT;break;case o+d+d:this.mode=Template.modes.LITERAL;this.source+=' ; __append("'+line.replace(o+d+d,o+d)+'")'+"\n";break;case d+d+c:this.mode=Template.modes.LITERAL;this.source+=' ; __append("'+line.replace(d+d+c,d+c)+'")'+"\n";break;case d+c:case"-"+d+c:case"_"+d+c:if(this.mode==Template.modes.LITERAL){this._addOutput(line)}this.mode=null;this.truncate=line.indexOf("-")===0||line.indexOf("_")===0;break;default:if(this.mode){switch(this.mode){case Template.modes.EVAL:case Template.modes.ESCAPED:case Template.modes.RAW:if(line.lastIndexOf("//")>line.lastIndexOf("\n")){line+="\n"}}switch(this.mode){case Template.modes.EVAL:this.source+=" ; "+line+"\n";break;case Template.modes.ESCAPED:this.source+=" ; __append(escapeFn("+stripSemi(line)+"))"+"\n";break;case Template.modes.RAW:this.source+=" ; __append("+stripSemi(line)+")"+"\n";break;case Template.modes.COMMENT:break;case Template.modes.LITERAL:this._addOutput(line);break}}else{this._addOutput(line)}}if(self.opts.compileDebug&&newLineCount){this.currentLine+=newLineCount;this.source+=" ; __line = "+this.currentLine+"\n"}}};exports.escapeXML=utils.escapeXML;exports.__express=exports.renderFile;if(require.extensions){require.extensions[".ejs"]=function(module,flnm){var filename=flnm||module.filename;var options={filename:filename,client:true};var template=fileLoader(filename).toString();var fn=exports.compile(template,options);module._compile("module.exports = "+fn.toString()+";",filename)}}exports.VERSION=_VERSION_STRING;exports.name=_NAME;if(typeof window!="undefined"){window.ejs=exports}},{"../package.json":6,"./utils":2,fs:3,path:4}],2:[function(require,module,exports){"use strict";var regExpChars=/[|\\{}()[\]^$+*?.]/g;exports.escapeRegExpChars=function(string){if(!string){return""}return String(string).replace(regExpChars,"\\$&")};var _ENCODE_HTML_RULES={"&":"&","<":"<",">":">",'"':""","'":"'"};var _MATCH_HTML=/[&<>'"]/g;function encode_char(c){return _ENCODE_HTML_RULES[c]||c}var escapeFuncStr="var _ENCODE_HTML_RULES = {\n"+' "&": "&"\n'+' , "<": "<"\n'+' , ">": ">"\n'+' , \'"\': """\n'+' , "\'": "'"\n'+" }\n"+" , _MATCH_HTML = /[&<>'\"]/g;\n"+"function encode_char(c) {\n"+" return _ENCODE_HTML_RULES[c] || c;\n"+"};\n";exports.escapeXML=function(markup){return markup==undefined?"":String(markup).replace(_MATCH_HTML,encode_char)};exports.escapeXML.toString=function(){return Function.prototype.toString.call(this)+";\n"+escapeFuncStr};exports.shallowCopy=function(to,from){from=from||{};for(var p in from){to[p]=from[p]}return to};exports.shallowCopyFromList=function(to,from,list){for(var i=0;i=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;var splitPath=function(filename){return splitPathRe.exec(filename).slice(1)};exports.resolve=function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:process.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){continue}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=normalizeArray(filter(resolvedPath.split("/"),function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."};exports.normalize=function(path){var isAbsolute=exports.isAbsolute(path),trailingSlash=substr(path,-1)==="/";path=normalizeArray(filter(path.split("/"),function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path};exports.isAbsolute=function(path){return path.charAt(0)==="/"};exports.join=function(){var paths=Array.prototype.slice.call(arguments,0);return exports.normalize(filter(paths,function(p,index){if(typeof p!=="string"){throw new TypeError("Arguments to path.join must be strings")}return p}).join("/"))};exports.relative=function(from,to){from=exports.resolve(from).substr(1);to=exports.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i1){for(var i=1;i (http://fleegix.org)",contributors:["Timothy Gu (https://timothygu.github.io)"],license:"Apache-2.0",main:"./lib/ejs.js",repository:{type:"git",url:"git://github.com/mde/ejs.git"},bugs:"https://github.com/mde/ejs/issues",homepage:"https://github.com/mde/ejs",dependencies:{},devDependencies:{browserify:"^13.1.1",eslint:"^4.14.0","git-directory-deploy":"^1.5.1",istanbul:"~0.4.3",jake:"^8.0.16",jsdoc:"^3.4.0","lru-cache":"^4.0.1",mocha:"^5.0.5","uglify-js":"^3.3.16"},engines:{node:">=0.10.0"},scripts:{test:"jake test",lint:'eslint "**/*.js" Jakefile',coverage:"istanbul cover node_modules/mocha/bin/_mocha",doc:"jake doc",devdoc:"jake doc[dev]"}}},{}]},{},[1])(1)}); diff --git a/bitcron-pro-plus/assets/media/gridea-search/fuse.js b/bitcron-pro-plus/assets/media/gridea-search/fuse.js new file mode 100644 index 0000000..01b0be7 --- /dev/null +++ b/bitcron-pro-plus/assets/media/gridea-search/fuse.js @@ -0,0 +1,9 @@ +/*! + * Fuse.js v3.4.6 - Lightweight fuzzy-search (http://fusejs.io) + * + * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me) + * All Rights Reserved. Apache Software License 2.0 + * + * http://www.apache.org/licenses/LICENSE-2.0 + */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("Fuse",[],t):"object"==typeof exports?exports.Fuse=t():e.Fuse=t()}(this,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t){e.exports=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===Object.prototype.toString.call(e)}},function(e,t,n){function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{limit:!1};this._log('---------\nSearch pattern: "'.concat(e,'"'));var n=this._prepareSearchers(e),r=n.tokenSearchers,o=n.fullSearcher,i=this._search(r,o),a=i.weights,s=i.results;return this._computeScore(a,s),this.options.shouldSort&&this._sort(s),t.limit&&"number"==typeof t.limit&&(s=s.slice(0,t.limit)),this._format(s)}},{key:"_prepareSearchers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=[];if(this.options.tokenize)for(var n=e.split(this.options.tokenSeparator),r=0,o=n.length;r0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,n=this.list,r={},o=[];if("string"==typeof n[0]){for(var i=0,a=n.length;i1)throw new Error("Key weight has to be > 0 and <= 1");d=d.name}else s[d]={weight:1};this._analyze({key:d,value:this.options.getFn(l,d),record:l,index:c},{resultMap:r,results:o,tokenSearchers:e,fullSearcher:t})}return{weights:s,results:o}}},{key:"_analyze",value:function(e,t){var n=e.key,r=e.arrayIndex,o=void 0===r?-1:r,i=e.value,a=e.record,c=e.index,h=t.tokenSearchers,l=void 0===h?[]:h,u=t.fullSearcher,f=void 0===u?[]:u,d=t.resultMap,v=void 0===d?{}:d,p=t.results,g=void 0===p?[]:p;if(null!=i){var y=!1,m=-1,k=0;if("string"==typeof i){this._log("\nKey: ".concat(""===n?"-":n));var S=f.search(i);if(this._log('Full text: "'.concat(i,'", score: ').concat(S.score)),this.options.tokenize){for(var x=i.split(this.options.tokenSeparator),b=[],M=0;M-1&&(P=(P+m)/2),this._log("Score average:",P);var F=!this.options.tokenize||!this.options.matchAllTokens||k>=l.length;if(this._log("\nCheck Matches: ".concat(F)),(y||S.isMatch)&&F){var T=v[c];T?T.output.push({key:n,arrayIndex:o,value:i,score:P,matchedIndices:S.matchedIndices}):(v[c]={item:a,output:[{key:n,arrayIndex:o,value:i,score:P,matchedIndices:S.matchedIndices}]},g.push(v[c]))}}else if(s(i))for(var z=0,E=i.length;z-1&&(a.arrayIndex=i.arrayIndex),t.matches.push(a)}}}),this.options.includeScore&&o.push(function(e,t){t.score=e.score});for(var i=0,a=e.length;in)return o(e,this.pattern,r);var a=this.options,s=a.location,c=a.distance,h=a.threshold,l=a.findAllMatches,u=a.minMatchCharLength;return i(e,this.pattern,this.patternAlphabet,{location:s,distance:c,threshold:h,findAllMatches:l,minMatchCharLength:u})}}])&&r(t.prototype,n),s&&r(t,s),e}();e.exports=s},function(e,t){var n=/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g;e.exports=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/ +/g,o=new RegExp(t.replace(n,"\\$&").replace(r,"|")),i=e.match(o),a=!!i,s=[];if(a)for(var c=0,h=i.length;c=P;z-=1){var E=z-1,K=n[e.charAt(E)];if(K&&(x[E]=1),T[z]=(T[z+1]<<1|1)&K,0!==I&&(T[z]|=(L[z+1]|L[z])<<1|1|L[z+1]),T[z]&C&&(w=r(t,{errors:I,currentLocation:E,expectedLocation:g,distance:h}))<=m){if(m=w,(k=E)<=g)break;P=Math.max(1,2*g-k)}}if(r(t,{errors:I+1,currentLocation:g,expectedLocation:g,distance:h})>m)break;L=T}return{isMatch:k>=0,score:0===w?.001:w,matchedIndices:o(x,p)}}},function(e,t){e.exports=function(e,t){var n=t.errors,r=void 0===n?0:n,o=t.currentLocation,i=void 0===o?0:o,a=t.expectedLocation,s=void 0===a?0:a,c=t.distance,h=void 0===c?100:c,l=r/e.length,u=Math.abs(s-i);return h?l+u/h:u?1:l}},function(e,t){e.exports=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=[],r=-1,o=-1,i=0,a=e.length;i=t&&n.push([r,o]),r=-1)}return e[i-1]&&i-r>=t&&n.push([r,i-1]),n}},function(e,t){e.exports=function(e){for(var t={},n=e.length,r=0;r -1) { + var urlSearch = url.split('?'); + var paramList = urlSearch[1].split('&'); + for (var i = paramList.length - 1; i >= 0; i--) { + var tep = paramList[i].split('='); + if (tep[0] == param) { + return tep[1]; + } + } + } +}; + +//原生js Ajax 异步GET请求 +function ajax(obj) { + var xhr = new XMLHttpRequest(); + xhr.open('get', obj.url, true); + xhr.send(null); + xhr.onreadystatechange = function () { + //异步请求:响应状态为4,数据加载完毕 + if (xhr.readyState == 4) + callback(); + } + function callback() { + if (xhr.status == 200) { + obj.success(xhr.responseText); + } else { + obj.error(xhr.status); + } + } +} + +//模糊搜索 https://github.com/krisk/fuse +function fuzzySearch(data, phrase) { + var phrase_len = phrase.length; + var min_len = 4; + var max_len = 32; + //根据搜索的词数决定匹配大小,最小匹配词数不能大于词数,最大匹配词数不能小于词数 + if(phrase_len<4){ + min_len = phrase_len; + } + if(phrase_len<=0){ + min_len = 99999999; + max_len = 99999999; + } + if(phrase_len>32){ + max_len = phrase_len; + } + + var options = { + shouldSort: true, + includeMatches: true, + threshold: 0.5,// 匹配算法阈值。阈值为0.0需要完全匹配(字母和位置),阈值为1.0将匹配任何内容。 + location: 0,// 确定文本中预期找到的模式的大致位置。 + distance: 1000, + maxPatternLength: max_len, // 模式的最大长度 + minMatchCharLength: min_len, // 模式的最小字符长度 + // 搜索标题与内容 + keys: [ + 'title', + 'content', + 'tags.name' + ] + }; + var fuse = new Fuse(data, options); + var fuzzyResult = fuse.search(phrase); + return fuzzyResult; +} + +//检查缓存是否最新 +function checkCache() { + var infosCache = JSON.parse(localStorage.getItem('InfosCache')); + var contentsCache = JSON.parse(localStorage.getItem('ContentsCache')); + if (infosCache && contentsCache) { + var cachedTime = infosCache.utils.now.toString(); + var updateTime = document.getElementById('gridea-search-form').getAttribute('data-update'); + if (cachedTime === updateTime) { + return true; + } + } + localStorage.removeItem('InfosCache'); + localStorage.removeItem('ContentsCache'); + return false; +} + +//获取博客全文api +function getContents(callback) { + if (checkCache()) { + var contentsCache = JSON.parse(localStorage.getItem('ContentsCache')); + callback(contentsCache); + } + else { + ajax({ + url: '/api-content/index.html', + success: function (data) { + callback(JSON.parse(data)); + localStorage.setItem('ContentsCache', data); + } + }); + } +} + +//获取博客信息api +function getInfos(callback) { + if (checkCache()) { + var infosCache = JSON.parse(localStorage.getItem('InfosCache')); + callback(infosCache); + } + else { + ajax({ + url: '/api-info/index.html', + success: function (data) { + callback(JSON.parse(data)); + localStorage.setItem('InfosCache', data); + } + }); + } +} + +//根据一段文本调用模糊搜索 +function searchBy(phrase, callback) { + var result = ''; + var getFuzzyResult = function (data) { + result = fuzzySearch(data.posts, phrase); + callback(result); + } + //根据全文内容获取搜索结果 + getContents(getFuzzyResult); +} + +//显示无搜索结果 +function showNoResult() { + var resultDIV = document.getElementById('gridea-search-result'); + var noResult = resultDIV.getElementsByClassName('no-result')[0]; + noResult.style.display = 'block'; + resultDIV.innerHTML = noResult.outerHTML; +} + +//根据URL参数执行搜索 +function searchByParam(resultHandler) { + var phrase = getParam(window.location.href, 'q'); + if (phrase === '' || typeof (phrase) === 'undefined') { + showNoResult(); + } else { + searchBy(decodeURI(phrase), resultHandler); + } +} + +//获取搜索结果列表模板的URL +function getTemplateURL() { + var scripts = document.getElementsByTagName('script'); + var templateURL = ''; + for (var i = 0; i < scripts.length; i++) { + if (scripts[i].type === 'text/ejs') { + templateURL = scripts[i].src; + return templateURL; + } + } +} + +//渲染搜索结果列表 +function renderResult(searchedInfos) { + if (searchedInfos.posts.length > 0) { + ajax({ + url: getTemplateURL(), + success: function (data) { + var resultDIV = document.getElementById('gridea-search-result'); + resultDIV.innerHTML = ejs.compile(data)(searchedInfos); + } + }); + } else { + showNoResult(); + } +} + +//搜索结果关键字高亮 +function keywordsHighlight(searchedContent) { + var searchedPostContent = searchedContent.item.content;//搜索结果内容预览 + var preview = ''; + for (var i = 0; i < searchedContent.matches.length; i++) { + if (searchedContent.matches[i].key === 'content') {//如果匹配到文章内容,截取关键字 + var indices = searchedContent.matches[i].indices[0]; + var beforeKeyword = searchedPostContent.substring(indices[0] - 10, indices[0]);//关键字前20字 + var keyword = searchedPostContent.substring(indices[0], indices[1] + 1);//关键字 + var afterKeyword = searchedPostContent.substring(indices[1] + 1, indices[1] + 70);//关键字后80字 + preview = beforeKeyword + '' + + keyword + '' + afterKeyword; + } else {//没有匹配到文章内容,则是标题 + preview = searchedPostContent.substring(0, 80); + } + } + return preview + '...'; +} + +//循环匹配搜索到的内容与展示信息 +function getResult(infos, searchedContents) { + var searchedInfos = JSON.parse(JSON.stringify(infos));//对象深拷贝 + searchedInfos.posts = []; + for (var i = 0; i < infos.posts.length; i++) { + for (var j = 0; j < searchedContents.length; j++) { + if (searchedContents[j].item.link === infos.posts[i].link) { + infos.posts[i].searchedPreview = keywordsHighlight(searchedContents[j]);//预览关键字高亮 + infos.posts[i].content = searchedContents[j].item.content;//content注入 + searchedInfos.posts.push(infos.posts[i]);//push到所需结果中 + } + } + } + return searchedInfos; +} + +//主方法 +function grideaSearch() { + //搜索结果回调 + var resultHandler = function (searchedContents) { + getInfos(function (infos) { + //console.log(infos); + //console.log(searchedContents); + var searchedInfos = getResult(infos, searchedContents); + renderResult(searchedInfos); + }); + } + searchByParam(resultHandler); +} + +//页面加载完执行 +window.onload = function () { + grideaSearch(); +} diff --git a/bitcron-pro-plus/assets/media/gridea-search/result-template.ejs b/bitcron-pro-plus/assets/media/gridea-search/result-template.ejs new file mode 100644 index 0000000..ae34866 --- /dev/null +++ b/bitcron-pro-plus/assets/media/gridea-search/result-template.ejs @@ -0,0 +1,22 @@ +
+ <% posts.forEach(function(post,seq) { %> + + <% }); %> +
diff --git a/bitcron-pro-plus/assets/media/images/custom-array-imguploud-1666488314977-uploadimg.jpg b/bitcron-pro-plus/assets/media/images/custom-array-imguploud-1666488314977-uploadimg.jpg new file mode 100644 index 0000000..66fca18 Binary files /dev/null and b/bitcron-pro-plus/assets/media/images/custom-array-imguploud-1666488314977-uploadimg.jpg differ diff --git a/bitcron-pro-plus/assets/media/images/custom-array-imguploud-1666488314981-uploadimg.jpg b/bitcron-pro-plus/assets/media/images/custom-array-imguploud-1666488314981-uploadimg.jpg new file mode 100644 index 0000000..c36fb05 Binary files /dev/null and b/bitcron-pro-plus/assets/media/images/custom-array-imguploud-1666488314981-uploadimg.jpg differ diff --git a/bitcron-pro-plus/assets/media/images/scroll.png b/bitcron-pro-plus/assets/media/images/scroll.png new file mode 100644 index 0000000..75bbb9f Binary files /dev/null and b/bitcron-pro-plus/assets/media/images/scroll.png differ diff --git a/bitcron-pro-plus/assets/media/js/magnify.min.js b/bitcron-pro-plus/assets/media/js/magnify.min.js new file mode 100644 index 0000000..fbee27a --- /dev/null +++ b/bitcron-pro-plus/assets/media/js/magnify.min.js @@ -0,0 +1,8 @@ +/** + * Minified by jsDelivr using Terser v3.14.1. + * Original file: /gh/qyxtim/Static@5.2/magnify.js + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +function ImgInfo(t){this.pageW=t.pageW,this.pageH=t.pageH,this.pageScale=this.pageH/this.pageW}function WxScale(t){this.moveData={ifStart:!1,startX:1,startY:1},this.scaleData={ifStart:!1,startDist:1},this.init(t),this.bindEvent()}ImgInfo.prototype={constructor:ImgInfo,reset:function(t){this.img=t;var i=this.img.getBoundingClientRect();this.scale=i.height/i.width,this.ifFullByHeight=this.scale>this.pageScale,this.ifFullByHeight?this.setHeight(this.pageH):this.setWidth(this.pageW),this.startAnitScale=.2},setWidth:function(t){this.w=t,this.h=this.w*this.scale,this.x=(this.pageW-this.w)/2,this.y=(this.pageH-this.h)/2},setHeight:function(t){this.h=this.pageH,this.w=this.h/this.scale,this.y=0,this.x=(this.pageW-this.w)/2},endScale:function(){this.w>this.pageW||this.h>this.pageH||(this.ifFullByHeight?this.setHeight(this.pageH):this.setWidth(this.pageW))},moveX:function(t){this.x>0||this.x+this.wthis.pageH&&this.y>0||this.h>this.pageH&&this.y+this.h0?this.x=this.ifFullByHeight&&this.wthis.pageH&&this.y>0?this.y=0:this.h>this.pageH&&this.y+this.h=1)return this.startAnitScale=1,this.startAnitDraw(t),void(this.startAnitScale=.2);requestAnimationFrame(function(){i.startAnit(t)})},startAnitDraw:function(t){t.clearRect(0,0,this.pageW,this.pageH),t.save();var i=this.w*this.startAnitScale,s=this.h*this.startAnitScale;t.translate((this.pageW-i)/2,(this.pageH-s)/2),t.beginPath(),t.drawImage(this.img,0,0,i,s),t.closePath(),t.restore()},draw:function(t){t.clearRect(0,0,this.pageW,this.pageH),t.save(),t.beginPath(),t.drawImage(this.img,this.x,this.y,this.w,this.h),t.closePath(),t.restore()}},WxScale.prototype={constructor:WxScale,init:function(t){this.fullPage=t.fullPage,this.canvas=t.canvas,this.fullPage.style.display="block";var i=this.canvas.getBoundingClientRect();this.w=this.canvas.width=i.width,this.h=this.canvas.height=i.height,this.ctx=canvas.getContext("2d"),this.img=new ImgInfo({pageW:this.w,pageH:this.h}),this.fullPage.style.display="none"},start:function(t){this.fullPage.style.display="block",this.img.reset(t),this.img.startAnit(this.ctx)},bindEvent:function(){var t=this;this.fullPage.addEventListener("touchstart",function(i){t.touchstart(i)},!1),this.fullPage.addEventListener("touchmove",function(i){t.touchmove(i)},!1),this.fullPage.addEventListener("touchend",function(i){t.touchend(i)},!1),this.fullPage.addEventListener("click",function(){this.style.display="none"},!1)},touchstart:function(t){1==t.touches.length?(this.moveData.ifStart=!0,this.moveData.startX=t.touches[0].pageX,this.moveData.startY=t.touches[0].pageY):t.touches.length>=2&&(this.scaleData.ifStart=!0,this.scaleData.startDist=this.getDistance(t.touches[0],t.touches[1]),this.imgBaseWidth=this.img.w)},touchmove:function(t){if(t.preventDefault(),this.moveData.ifStart&&1==t.touches.length){var i=t.touches[0].pageX-this.moveData.startX,s=t.touches[0].pageY-this.moveData.startY;this.moveData.startX=t.touches[0].pageX,this.moveData.startY=t.touches[0].pageY,this.img.move(i,s)}else if(this.scaleData.ifStart&&t.touches.length>=2){var h=(this.getDistance(t.touches[0],t.touches[1])/this.scaleData.startDist).toFixed(2);this.img.setWidth(this.imgBaseWidth*h)}this.img.draw(this.ctx)},touchend:function(t){this.scaleData.ifStart?(this.scaleData.ifStart=!1,this.moveData.ifStart=!1,this.img.endScale(),this.img.draw(this.ctx)):this.moveData.ifStart&&(this.moveData.ifStart=!1,this.img.endMove(),this.img.draw(this.ctx))},getDistance:function(t,i){var s=i.pageX-t.pageX,h=i.pageY-t.pageY;return Math.sqrt(s*s+h*h)}}; +//# sourceMappingURL=/sm/490b9a025d6da3b9ef6e620d9299cefe2338732611a09e67cb1328f1cb347de9.map \ No newline at end of file diff --git a/bitcron-pro-plus/assets/media/js/prism.js b/bitcron-pro-plus/assets/media/js/prism.js new file mode 100644 index 0000000..964d459 --- /dev/null +++ b/bitcron-pro-plus/assets/media/js/prism.js @@ -0,0 +1,11 @@ +var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(u){var c=/\blang(?:uage)?-([\w-]+)\b/i,n=0,C={manual:u.Prism&&u.Prism.manual,disableWorkerMessageHandler:u.Prism&&u.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof _?new _(e.type,C.util.encode(e.content),e.alias):Array.isArray(e)?e.map(C.util.encode):e.replace(/&/g,"&").replace(/e.length)return;if(!(k instanceof _)){if(h&&y!=n.length-1){if(c.lastIndex=v,!(O=c.exec(e)))break;for(var b=O.index+(f&&O[1]?O[1].length:0),w=O.index+O[0].length,A=y,P=v,x=n.length;A"+r.content+""},!u.document)return u.addEventListener&&(C.disableWorkerMessageHandler||u.addEventListener("message",function(e){var n=JSON.parse(e.data),r=n.language,t=n.code,a=n.immediateClose;u.postMessage(C.highlight(t,C.languages[r],r)),a&&u.close()},!1)),C;var e=C.util.currentScript();if(e&&(C.filename=e.src,e.hasAttribute("data-manual")&&(C.manual=!0)),!C.manual){function r(){C.manual||C.highlightAll()}var t=document.readyState;"loading"===t||"interactive"===t&&e&&e.defer?document.addEventListener("DOMContentLoaded",r):window.requestAnimationFrame?window.requestAnimationFrame(r):window.setTimeout(r,16)}return C}(_self);"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism); +Prism.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:(?!)*\]\s*)?>/i,greedy:!0},cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add("wrap",function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&/,"&"))}),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(a,e){var s={};s["language-"+e]={pattern:/(^$)/i,lookbehind:!0,inside:Prism.languages[e]},s.cdata=/^$/i;var n={"included-cdata":{pattern://i,inside:s}};n["language-"+e]={pattern:/[\s\S]+/,inside:Prism.languages[e]};var t={};t[a]={pattern:RegExp("(<__[\\s\\S]*?>)(?:\\s*|[\\s\\S])*?(?=<\\/__>)".replace(/__/g,a),"i"),lookbehind:!0,greedy:!0,inside:n},Prism.languages.insertBefore("markup","cdata",t)}}),Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup; +!function(s){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;s.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/,inside:{rule:/@[\w-]+/}},url:{pattern:RegExp("url\\((?:"+t.source+"|[^\n\r()]*)\\)","i"),inside:{function:/^url/i,punctuation:/^\(|\)$/}},selector:RegExp("[^{}\\s](?:[^{};\"']|"+t.source+")*?(?=\\s*\\{)"),string:{pattern:t,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:,]/},s.languages.css.atrule.inside.rest=s.languages.css;var e=s.languages.markup;e&&(e.tag.addInlined("style","css"),s.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:e.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:s.languages.css}},alias:"language-css"}},e.tag))}(Prism); +Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}; +Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/--|\+\+|\*\*=?|=>|&&|\|\||[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?[.?]?|[~:]/}),Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*(?:$|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),Prism.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\${|}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}}}),Prism.languages.markup&&Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.js=Prism.languages.javascript; +!function(e){var t=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|null|open|opens|package|private|protected|provides|public|requires|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,a=/\b[A-Z](?:\w*[a-z]\w*)?\b/;e.languages.java=e.languages.extend("clike",{"class-name":[a,/\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/],keyword:t,function:[e.languages.clike.function,{pattern:/(\:\:)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0}}),e.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"}}),e.languages.insertBefore("java","class-name",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0},namespace:{pattern:/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(?:\.[a-z]\w*)+/,lookbehind:!0,inside:{punctuation:/\./}},generics:{pattern:/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,inside:{"class-name":a,keyword:t,punctuation:/[<>(),.:]/,operator:/[?&|]/}}})}(Prism); +Prism.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},"string-interpolation":{pattern:/(?:f|rf|fr)(?:("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:{{)*){(?!{)(?:[^{}]|{(?!{)(?:[^{}]|{(?!{)(?:[^{}])+})+})+}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|rb|br)?("""|''')[\s\S]+?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|rb|br)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^\s*)@\w+(?:\.\w+)*/im,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:True|False|None)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},Prism.languages.python["string-interpolation"].inside.interpolation.inside.rest=Prism.languages.python,Prism.languages.py=Prism.languages.python; +Prism.languages.c=Prism.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),Prism.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete Prism.languages.c.boolean; +!function(){if("undefined"!=typeof self&&self.Prism&&self.document){var r=[],i={},a=function(){};Prism.plugins.toolbar={};var t=Prism.plugins.toolbar.registerButton=function(t,a){var e;e="function"==typeof a?a:function(t){var e;return"function"==typeof a.onClick?((e=document.createElement("button")).type="button",e.addEventListener("click",function(){a.onClick.call(this,t)})):"string"==typeof a.url?(e=document.createElement("a")).href=a.url:e=document.createElement("span"),a.className&&e.classList.add(a.className),e.textContent=a.text,e},t in i?console.warn('There is a button with the key "'+t+'" registered already.'):r.push(i[t]=e)},e=Prism.plugins.toolbar.hook=function(n){var t=n.element.parentNode;if(t&&/pre/i.test(t.nodeName)&&!t.parentNode.classList.contains("code-toolbar")){var e=document.createElement("div");e.classList.add("code-toolbar"),t.parentNode.insertBefore(e,t),e.appendChild(t);var o=document.createElement("div");o.classList.add("toolbar"),document.body.hasAttribute("data-toolbar-order")&&(r=document.body.getAttribute("data-toolbar-order").split(",").map(function(t){return i[t]||a})),r.forEach(function(t){var e=t(n);if(e){var a=document.createElement("div");a.classList.add("toolbar-item"),a.appendChild(e),o.appendChild(a)}}),e.appendChild(o)}};t("label",function(t){var e=t.element.parentNode;if(e&&/pre/i.test(e.nodeName)&&e.hasAttribute("data-label")){var a,n,o=e.getAttribute("data-label");try{n=document.querySelector("template#"+o)}catch(t){}return n?a=n.content:(e.hasAttribute("data-url")?(a=document.createElement("a")).href=e.getAttribute("data-url"):a=document.createElement("span"),a.textContent=o),a}}),Prism.hooks.add("complete",e)}}(); +!function(){if("undefined"!=typeof self&&self.Prism&&self.document)if(Prism.plugins.toolbar){var r=window.ClipboardJS||void 0;r||"function"!=typeof require||(r=require("clipboard"));var i=[];if(!r){var o=document.createElement("script"),e=document.querySelector("head");o.onload=function(){if(r=window.ClipboardJS)for(;i.length;)i.pop()()},o.src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js",e.appendChild(o)}Prism.plugins.toolbar.registerButton("copy-to-clipboard",function(e){var t=document.createElement("button");return t.textContent="Copy",r?o():i.push(o),t;function o(){var o=new r(t,{text:function(){return e.code}});o.on("success",function(){t.textContent="Copied!",n()}),o.on("error",function(){t.textContent="Press Ctrl+C to copy",n()})}function n(){setTimeout(function(){t.textContent="Copy"},5e3)}})}else console.warn("Copy to Clipboard plugin loaded before Toolbar plugin.")}(); +Prism.languages.json={property:{pattern:/"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,greedy:!0},string:{pattern:/"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,greedy:!0},comment:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,number:/-?\d+\.?\d*(?:e[+-]?\d+)?/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:true|false)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}}; diff --git a/bitcron-pro-plus/assets/styles/components/darkmode.less b/bitcron-pro-plus/assets/styles/components/darkmode.less new file mode 100644 index 0000000..9c7e22f --- /dev/null +++ b/bitcron-pro-plus/assets/styles/components/darkmode.less @@ -0,0 +1,81 @@ +.darkmode .darkmode-layer { + position: fixed; + pointer-events: none; + background: #fff !important; + mix-blend-mode: difference; + width: 100%; + height: 100%; + top: 0; + left: 0; + -webkit-transition: all 1s ease-in-out; + -o-transition: all 1s ease-in-out; + transition: all 1s ease-in-out +} +.darkmode .darkmode-background { + background: #fff !important; + position: fixed; + pointer-events: none; + z-index: -1; + width: 100%; + height: 100%; + top: 0; + left: 0 +} +.darkmode .gs_md_bdy { + background: #000 !important +} +.darkmode .gs_md_hdr { + background: #000 !important +} +.darkmode .search-input { + background: #000 !important; + border-bottom-color: inherit +} +.darkmode img { + mix-blend-mode: difference; + filter: grayscale(30%) +} +.darkmode pre { + background-color: #000 !important +} +.darkmode .line-number { + color: #c1c1c1 +} +.darkmode .hidden_nav { + background-color: #000 !important; + box-shadow: 0 10px 20px 0 +} +.darkmode .katex { + color: #c1c1c1 +} +.switch_default[type=checkbox] { + display: none +} +.switch_default + label { + background-color: #e6e6e6 !important; + border-radius: 7px; + cursor: pointer; + display: inline-block; + height: 14px; + position: relative; + box-shadow: .2px .2px 1px .5px #b4b4b4; + width: 30px +} +.switch_default + label:after { + background-color: #fff !important; + border-radius: 50%; + content: ""; + height: 12px; + left: 1px; + position: absolute; + top: .5px; + width: 12px; + box-shadow: .2px .2px 1px .5px #b4b4b4 +} +.switch_default:checked + label { + background-color: #1abc9c !important; + box-shadow: none +} +.switch_default:checked + label:after { + left: 17px +} \ No newline at end of file diff --git a/bitcron-pro-plus/assets/styles/components/highlight.less b/bitcron-pro-plus/assets/styles/components/highlight.less new file mode 100644 index 0000000..fbc8c92 --- /dev/null +++ b/bitcron-pro-plus/assets/styles/components/highlight.less @@ -0,0 +1,107 @@ +code[class*=language-], +pre[class*=language-] { + color: #657b83; + text-align: left; + white-space: pre; + word-spacing: normal; + word-wrap: normal; + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + font-size: 1em; + font-family: Consolas, Monaco, Andale Mono, Ubuntu Mono, monospace; + line-height: 1.5; + word-break: normal; + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none +} +code[class*=language-]::-moz-selection, +code[class*=language-]::-moz-selection, +pre[class*=language-]::-moz-selection, +pre[class*=language-]::-moz-selection { + background: #073642 +} +code[class*=language-]::selection, +code[class*=language-]::selection, +pre[class*=language-]::selection, +pre[class*=language-]::selection { + background: #073642 +} +pre[class*=language-] { + overflow: auto; + margin: .5em 0; + padding: 1em; + border-radius: .3em +} +pre[class*=language-] span { + font-size: 1em; + line-height: 1.5 +} +:not(pre) > code[class*=language-], +pre[class*=language-] { + background-color: #fdf6e3 !important +} +:not(pre) > code[class*=language-] { + padding: .1em; + border-radius: .3em +} +.token.cdata, +.token.comment, +.token.doctype, +.token.prolog { + color: #93a1a1 +} +.token.punctuation { + color: #586e75 +} +.namespace { + opacity: .7 +} +.token.boolean, +.token.constant, +.token.deleted, +.token.number, +.token.property, +.token.symbol, +.token.tag { + color: #268bd2 +} +.token.attr-name, +.token.builtin, +.token.char, +.token.inserted, +.token.selector, +.token.string, +.token.url { + color: #2aa198 +} +.token.entity { + background: #eee8d5; + color: #657b83 +} +.token.atrule, +.token.attr-value, +.token.keyword { + color: #859900 +} +.token.class-name, +.token.function { + color: #b58900 +} +.token.important, +.token.regex, +.token.variable { + color: #cb4b16 +} +.token.bold, +.token.important { + font-weight: 700 +} +.token.italic { + font-style: italic +} +.token.entity { + cursor: help +} \ No newline at end of file diff --git a/bitcron-pro-plus/assets/styles/components/toc.less b/bitcron-pro-plus/assets/styles/components/toc.less new file mode 100644 index 0000000..310eaa0 --- /dev/null +++ b/bitcron-pro-plus/assets/styles/components/toc.less @@ -0,0 +1,41 @@ +.toc-container .markdownIt-TOC { + position: sticky; + top: 32px; + width: 250px; + font-size: 12px; + list-style: none; + padding-left: 0 +} +.toc-container .markdownIt-TOC:before { + content: ""; + position: absolute; + top: 0; + left: 8px; + bottom: 0; + width: 1px; + opacity: .5 +} +.toc-container ul { + list-style: none +} +.toc-container li { + padding-left: 16px +} +.toc-container li a { + color: #868e96; + padding: 4px; + display: block; + transition: all .3s +} +.toc-container li a:hover { + background: #fafafa +} +.toc-container li a.current { + color: #006cff; + background: #fafafa +} +.currentToc { + background-color: white !important; + color: red !important; + border-radius: 5px +} \ No newline at end of file diff --git a/bitcron-pro-plus/assets/styles/main.less b/bitcron-pro-plus/assets/styles/main.less new file mode 100644 index 0000000..51ef784 --- /dev/null +++ b/bitcron-pro-plus/assets/styles/main.less @@ -0,0 +1,896 @@ +html { + -webkit-font-smoothing: antialiased; + scroll-behavior: smooth; +} +body { + overflow-x: none; + margin: 0 auto; + width: 100%; + background-color: #faf9f7 !important; + color: #3e3e3e; + word-spacing: 0; + letter-spacing: 0; + font-size: 16px; + font-family: Helvetica, Tahoma, Arial, "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei"; + font-family: Helvetica, Tahoma, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei"; + text-rendering: optimizeLegibility; + line-height: 2.1; + scroll-behavior: smooth; +} +a { + text-decoration: none +} +a:link, +a:visited { + border-bottom: 1px #ddd; + color: #888; + opacity: 1; + transition: all .15s linear; + -ms-transition: all .15s linear +} +a:active, +a:hover { + color: #e42b2b; + text-decoration: none !important +} +code { + word-wrap: break-word; + padding: 2px 4px; + border-radius: 4px; + margin: 0 2px; + color: #e96900 +} +::-webkit-scrollbar { + width: 6px; + height: 6px +} +::-webkit-scrollbar-track { + border-radius: 3px; + background: rgba(0, 0, 0, 0.06); + -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.08) +} +::-webkit-scrollbar-thumb { + border-radius: 3px; + background: rgba(0, 0, 0, 0.12); + -webkit-box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.2) +} +.weaklink a { + margin: 0; + border: none !important; + color: #444; + text-decoration: none; + cursor: pointer +} +.weaklink a:active, +.weaklink a:hover { + color: #333 !important; + text-decoration: none !important +} +.sm_margin { + margin: -20px 0 -15px !important +} +.warn { + overflow: hidden; + margin: 10px 0; + padding: 15px 15px 15px 35px; + border: 1px solid #eac946; + background: #fff4b9 -1px -1px no-repeat; + color: #ad9948; + font-size: 14px +} +.header { + margin: 0 auto; + padding: 6.3em 0 4em; + max-width: 50pc; + background-size: cover; + -webkit-background-size: cover +} +.header .logo_title { + text-align: left +} +.header .logo_title .title img { + float: left; + margin: .7em .5em 0 0; + width: 30px; + transition: all ease .4s; +} +.header .logo_title .title img:hover { + position: relative; + -webkit-transform: translateY(-.75em); + -moz-transform: translateY(-.75em); + -ms-transform: translateY(-.75em); + -o-transform: translateY(-.75em); + transform: translateY(-.75em); +} +.header .logo_title .title h1 { + float: left; + color: #333; + letter-spacing: 1px; + font-weight: 700; + font-size: 23px; + line-height: 1 +} +.header .logo_title .title a { + text-decoration: none +} +.header .logo_title .title .navbar .normal_nav { + float: right; + line-height: 1 +} +.header .logo_title .title .navbar .normal_nav a { + color: #666; + font-weight: 400; + font-size: 14px +} +.header .logo_title .title .navbar .normal_nav a:active, +.header .logo_title .title .navbar .normal_nav a:hover { + color: #333; + text-decoration: none; + font-weight: 600 +} +.header .logo_title .title .navbar .normal_nav ul { + list-style-type: none; + padding-inline-start: 0; + padding-right: 1.3em; + float: left +} +.header .logo_title .title .navbar .normal_nav li { + display: inline; + margin-right: 1.5em +} +.header .logo_title .title .navbar .normal_nav li:last-of-type { + display: inline; + margin-right: 0 +} +.header .logo_title .title .navbar .hamberger { + float: right; + display: none; + color: #888; + font-size: 22px; + cursor: pointer +} +.header .hidden_nav { + margin: 4.5em auto -4em; + padding: .5em; + background-color: #fff !important; + box-shadow: 0 10px 20px 0 hsla(0, 0%, 93%, .86); + line-height: 1; + text-align: center +} +.header .hidden_nav a { + border: 0; + color: #666; + font-weight: 400; + font-size: 14px +} +.header .hidden_nav a:active, +.header .hidden_nav a:hover { + color: #333; + text-decoration: none; + font-weight: 600 +} +.header .hidden_nav ul { + padding-left: 1.6em; + list-style-type: none +} +.header .hidden_nav li { + display: inline; + margin-right: 1.2em +} +.main { + overflow: visible; + width: 100% +} +.main-inner { + margin: 3.3em auto 0; + padding: 3.3em 0 2.7em; + max-width: 50pc; + background: #fff !important; + box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19) !important; + border-radius: 10px +} +.main-inner .content { + margin: 0 auto; + padding: 0 3.3em; + height: auto +} +.featureImg { + border: 3px; + background-repeat: no-repeat; + height: 100%; + width: 100%; + display: inline-block; + border-radius: 5px; + padding-top: 32px +} +.post { + margin-top: 50px; + background-color: #fff !important +} +.post .post_title h2 { + padding-bottom: 5px; + color: #444; + letter-spacing: 1px; + font-weight: 600; + line-height: 1.3 +} +.post .post_title a { + color: #444; + text-decoration: none; + letter-spacing: 1px +} +.post .post_footer { + padding: 0 0 45px; + border-bottom: 1px solid #f2f2f2 +} +.post .post_footer .info { + margin-top: 10px; + height: 25px; + max-width: 100%; + color: #aaa; + font-size: 9pt +} +.post .post_footer .info .context, +.post .post_footer .info .date_info, +.post .post_footer .info .tags_info { + margin-right: 15px +} +.post .post_footer .info .mobile { + display: none; + margin-right: 15px +} +.post .post_footer .info .tag { + margin-right: 4px +} +.post .post_footer .info a { + color: #bbb; + text-decoration: none +} +.post .post_footer .info i { + margin-right: 3px +} +.post .post_details { + margin-top: 10px; + margin-right: 9pt; + padding: 0 0 20px; + height: 25px; + max-width: 100%; + color: #bbb; + font-size: 9pt +} +.post .post_details a { + color: #bbb; + text-decoration: none +} +.post .post_details i { + margin-right: 3px +} +.footer { + margin: 0 auto; + padding-top: 3em; + max-width: 700px; + text-align: center +} +.footer .site_footer { + margin-top: 0 !important; + border-top: 0 +} +.copypost { + color: #ccc; + font-size: 12px; + text-align: center +} +.footer .copyright { + padding: 3.5em 0 .5em; + color: #a1a1a1 +} +.footer .copyright div span { + color: #e1e1e1 +} +.footer .copyright div a:active, +.footer .copyright div a:hover { + border: 0; + color: #333; + text-decoration: none +} +.footer .mysocials { + padding: 0; + list-style: none; + text-align: center +} +.footer .mysocials a { + border: none !important; + color: #ccc !important; + font-size: 1.4em !important +} +.footer .mysocials a:active, +.footer .mysocials a:hover { + border: none !important; + color: #333 !important; + text-decoration: none !important +} +.tags-container .tag { + display: inline-block; + margin: 0 8px 8px 0; + padding: 4px 15px; + border-radius: 5px; + background: #d1dbe0 +} +.list_with_title { + margin: 0; + padding: 0; + color: #666 +} +.list_with_title li { + padding: 0; + list-style-type: none +} +.list_with_title .listing_title { + margin-bottom: 5px; + padding-top: 10px; + color: #444; + font-weight: 700; + font-size: 2em; + line-height: 2.2em +} +.list_with_title .listing { + margin: 0 0 25px; + padding: 0 +} +.list_with_title .listing .listing_post { + padding-bottom: 10px; + font-size: 1em +} +.list_with_title .listing .listing_post .post_date { + float: right; + color: #c5c5c5 +} +.list_with_title .listing .listing_post a { + border: 0; + color: #666 +} +.list_with_title .listing .listing_post a:hover { + color: #e42b2b +} +.four_o_four { + margin-bottom: 15px +} +.four_o_four h2 { + color: #444; + font-size: 2em +} +.four_o_four p { + margin-bottom: 30px; + line-height: 2.4em +} +.four_o_four span { + color: #333; + letter-spacing: 4px +} +.about h2 { + margin-top: 2em; + margin-bottom: 5px; + color: #444; + font-size: 2em +} +.about h2:first-of-type { + margin-top: 1.2em +} +.about p { + margin-bottom: -.8em; + font-size: 1em +} +.about p:last-of-type { + margin-bottom: 60px; + font-size: 1em +} +@media(max-width:1199px) { + .toc-container { + display: none + } + .katex { + display: block !important + } + .post_date { + float: none !important + } + .navbar .normal_nav { + display: none + } + .navbar .hamberger { + display: block !important + } +} +@media screen and (min-width:500px) and (max-width:800px) { + .header { + padding: 4em 0 3em + } + .header, + .main-inner { + max-width: 92% + } + .content { + padding: 0 2.5em !important + } + .post { + margin-top: 35px + } + .sm_margin { + margin: 0 + } + .navbar li { + margin-right: 1.4em !important + } + .footer .copyright { + padding: 3em 0 .5em + } +} +@media screen and (max-width:499px) { + .header { + padding: 2em 0 + } + .header, + .main-inner { + max-width: 92% + } + .content { + padding: 0 2.5em !important + } + .post { + margin-top: 35px + } + .sm_margin { + margin: 0 + } + .navbar li { + margin-right: 1.4em !important + } + .footer .copyright { + padding: 3em 0 .5em + } +} +@media screen and (max-width:390px) { + .main-inner { + padding: 2em 0 1.5em; + max-width: 92% + } + .post { + margin-top: 35px + } + .sm_margin { + margin: 0 + } + .content { + padding: 0 1.6em !important + } + .footer { + padding-top: 1.5em + } + .footer .copyright { + padding: 1.5em 0 .2em + } + .info .context { + display: none + } + .info .mobile { + display: inline !important + } +} +@media screen and (max-width:320px) { + .navbar li { + margin-right: .5em !important + } +} +.animated { + animation-fill-mode: both +} +.animated, +.animated.hinge { + animation-duration: 1s +} +@keyframes fadeInDown { + 0% { + opacity: 0; + transform: translateY(-20px) + } + to { + opacity: 1; + transform: translateY(0) + } +} +.fadeInDown { + animation-name: fadeInDown +} +.plain_content .p_part { + margin: 1em 0 2.5em +} +.paginator { + padding: 25px 0 +} +.paginator .paginator_container { + margin: 0; + padding: 0; + height: 13px +} +.paginator a { + color: #888; + font-size: 13px; + border: 0 +} +.paginator a:hover, +.paginator a:active { + color: #333; + text-decoration: none +} +.paginator .pre { + float: left +} +.paginator .next { + float: right +} +.md_block { + font-size: 1pc; + word-wrap: break-word; + flex-shrink: 0; + width: 100% +} +.katex { + overflow-x: auto; + overflow-y: hidden +} +.md_block p { + margin: 1.5em 0; + color: inherit; + font-size: inherit; + line-height: inherit +} +.md_block h2, +.md_block h3 { + margin: 1.5em 0; + font-weight: 700 +} +.md_block h2 { + margin: 15px -25px; + padding: 0 25px; + line-height: 35px +} +.md_block h2::before { + content: "#"; + margin-right: 5px; + color: #2d96bd; +} +.md_block h3 { + margin: 15px -25px; + padding: 0 25px; + line-height: 30px +} +.md_block h3::before { + content: "#"; + margin-right: 5px; + color: #83af9b; +} +.md_block img { + display: block; + margin: 0 auto; + padding: 4px 0; + height: auto; + max-width: 100%; + border: 0; + color: inherit; + font-size: inherit; + line-height: inherit; + background-size: cover; + background-position: center top; + transition: transform .5s; +} +.md_block li { + margin-bottom: .5em; + margin-left: 3px; +} +.md_block a { + margin: 0; + color: #1e6bb8; + text-decoration: none; + overflow-wrap: break-word +} +.md_block a, +.md_block hr { + padding: 0; + font-size: inherit; + line-height: inherit +} +.md_block hr { + margin: 1.5rem 0; + height: 1px; + border-top: 1px dashed #a5a5a5; + border-right: 0; + border-bottom: 0; + border-left: 0; + border-image: initial; + color: inherit +} +.md_block blockquote { + margin-bottom: 7px; + padding: 2em 25px 2em 30px; + position: relative; + color: #819198; + font-size: .9em +} +.md_block blockquote:before { + content: open-quote; + font-size: 3em; + position: absolute; + left: 0; + top: 0 +} +.md_block blockquote:after { + content: close-quote; + font-size: 3em; + line-height: 1; + position: absolute; + right: 0; + bottom: 0 +} +.md_block pre { + border-radius: 2px; + font-size: inherit; + font-family: Consolas, Inconsolata, Courier, monospace; + line-height: inherit +} +.md_block table { + box-sizing: border-box; + margin: 1em 0; + width: 100%; + max-width: 100%; + border-style: solid; + border-width: 1px; + background-color: transparent; + line-height: 1.7; + border-spacing: 0; + word-break: normal +} +.md_block tbody { + border: 0 +} +.md_block table tr { + border: 0; + border-top: 1px solid #ccc; + background-color: #fff !important +} +.md_block table tr:nth-child(2n) { + background-color: #f8f8f8 !important +} +.md_block table tr td, +.md_block table tr th { + padding: .5em 1em; + border: 1px solid #ccc; + text-align: left; + font-size: 1em +} +.md_block table tr th { + background-color: #f0f0f0 !important; + font-weight: 700 +} +.md_block strong { + font-weight: 700 +} +.md_block del, +.md_block em { + font-style: italic +} +.md_block strong em { + font-weight: 700 +} +.md_block figcaption { + margin: 0; + margin-top: 10px; + padding: 0; + color: #999; + text-align: center; + font-size: .7em; + line-height: inherit +} +.site_footer { + clear: both; + margin: 50px 0 15px; + padding-top: 15px; + border-top: 1px solid #eee; + color: #999; + text-align: center; + font-size: 9pt; + font-family: Hiragino Sans GB, STHeiti, Microsoft YaHei, WenQuanYi Micro Hei, SimSun, sans-serif +} +.site_footer a { + margin: 0 9pt; + color: #999; + font-size: 9pt +} +.site_footer a:hover { + border-bottom: 1px dashed #ccc; + color: #333 +} +div.code-toolbar { + position: relative +} +div.code-toolbar > .toolbar { + position: absolute; + top: .3em; + right: .2em; + opacity: 0; + transition: opacity .3s ease-in-out +} +div.code-toolbar:focus-within > .toolbar, +div.code-toolbar:hover > .toolbar { + opacity: 1 +} +div.code-toolbar > .toolbar .toolbar-item { + display: inline-block +} +div.code-toolbar > .toolbar a { + cursor: pointer +} +div.code-toolbar > .toolbar button { + overflow: visible; + padding: 0; + border: 0; + background: 0; + color: inherit; + font: inherit; + line-height: normal; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none +} +div.code-toolbar > .toolbar a, +div.code-toolbar > .toolbar button, +div.code-toolbar > .toolbar span { + padding: 0 .5em; + border-radius: .5em; + background: #f5f2f0; + background: hsla(0, 0%, 88%, .2); + box-shadow: 0 2px 0 0 rgba(0, 0, 0, .2); + color: #bbb; + font-size: .8em +} +div.code-toolbar > .toolbar a:focus, +div.code-toolbar > .toolbar a:hover, +div.code-toolbar > .toolbar button:focus, +div.code-toolbar > .toolbar button:hover, +div.code-toolbar > .toolbar span:focus, +div.code-toolbar > .toolbar span:hover { + color: inherit; + text-decoration: none +} +.md_block code { + overflow-x: auto +} +pre .line-number, +pre code { + display: block; + padding: 0 .5em; + color: #000; + font: Courier New, Courier, Monospace; + font-size: .8em +} +pre .line-number { + float: left; + margin: 0 1em 0 -1em; + border-right: 1px solid; + text-align: right +} +pre .line-number span { + display: block; + padding: 0 .5em 0 1em +} +pre .cl { + display: block +} +.no-js { + display: none +} +.search-input { + position: relative; + top: -3px; + left: -2px; + width: 160px; + height: 26px; + padding: 0 0 2px 27px; + font-size: 16px; + background: url(https://i.loli.net/2020/01/12/X3cnLxGjo7Wb8Jk.png) 6px 3px no-repeat; + background-color: white !important; + background-size: 20px; + border: 0; + border-radius: 15px; + border-bottom-color: currentcolor; + border-bottom-style: none; + border-bottom-width: medium; + outline: 0; + color: #424242; + border-bottom: 2px #beb1b1; + transition: border-color .2s +} +.search-input:hover { + width: 180px +} +#eof { + text-align: center; + font-size: 1.5em; + line-height: 1em; + margin: 2em auto; + font-weight: 100; + color: #c2c6cc; + font-family: Microsoft Yahei, sans-serif +} +#eof:before { + content: '——'; + margin-right: 20px +} +#eof:after { + content: '——'; + margin-left: 20px +} +#fullPage { + display: none; + background: rgba(255, 255, 255, 0.5) !important; + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 19930428; +} +#fullPage img { + display: block; + width: 100%; +} +#canvas { + width: 100%; + height: 100%; + background: none; + display: block; +} + +.md_block ol { + padding-inline-start: 1rem +} +.round-shape-one { + width: 20px; + height: 20px; + border: 3px solid #fe8f8f; + border-radius: 50%; + top: 15%; + left: 0; + -webkit-animation: animationFramesOne 15s infinite linear; + animation: animationFramesOne 15s infinite linear +} +@keyframes animationFramesOne { + 0% { + transform: translate(0) rotate(0deg) + } + 20% { + transform: translate(73px, -1px) rotate(36deg) + } + 40% { + transform: translate(141px, 72px) rotate(72deg) + } + 60% { + transform: translate(83px, 122px) rotate(108deg) + } + 80% { + transform: translate(-40px, 72px) rotate(144deg) + } + to { + transform: translate(0) rotate(0deg) + } +} +#scrollUp { + background-image: url(../media/images/scroll.png); + bottom: 20px; + right: 20px; + width: 38px; + height: 38px +} + +@import './components/darkmode'; +@import './components/toc'; +@import './components/highlight'; \ No newline at end of file diff --git a/bitcron-pro-plus/config.json b/bitcron-pro-plus/config.json new file mode 100644 index 0000000..5377ffb --- /dev/null +++ b/bitcron-pro-plus/config.json @@ -0,0 +1,361 @@ +{ + "name": "Bitcron Pro Plus", + "version": "2.0.1", + "author": "Serence, Wu-jiyan", + "repository": "https://github.com/Wu-jiyan/gridea-theme-bitcron-pro-plus/", + "customConfig": [ + { + "name": "github", + "label": "Github", + "group": "社交", + "value": "", + "type": "input", + "note": "链接地址" + }, + { + "name": "twitter", + "label": "Twitter", + "group": "社交", + "value": "", + "type": "input", + "note": "链接地址" + }, + { + "name": "zhihu", + "label": "知乎", + "group": "社交", + "value": "", + "type": "input", + "note": "链接地址" + }, + { + "name": "weibo", + "label": "微博", + "group": "社交", + "value": "", + "type": "input", + "note": "链接地址" + }, + { + "name": "telegram", + "label": "Telegram", + "group": "社交", + "value": "", + "type": "input", + "note": "链接地址" + }, + { + "name": "rss", + "label": "Rss", + "group": "社交", + "value": "", + "type": "input", + "note": "链接地址" + }, + { + "name": "envelope", + "label": "Mail", + "group": "社交", + "value": "", + "type": "input", + "note": "链接地址" + }, + { + "name": "CustomCSS", + "label": " 自定义CSS", + "group": "个性化", + "value": "", + "type": "textarea", + "note": "自定义放在标签中的CSS" + }, + { + "name": "Santa", + "label": " 是否需要圣诞装饰 ", + "group": " 特殊功能 ", + "value": true, + "type": "switch", + "note": " 雪花以及圣诞老人效果 " + }, + { + "name": "Spring", + "label": " 是否需要春节灯笼特效 ", + "group": " 特殊功能 ", + "value": true, + "type": "switch", + "note": " 春节灯笼特效 " + }, + { + "name": "Live2D", + "label": " 是否启用Live2D看板娘", + "group": " 特殊功能 ", + "value": true, + "type": "switch", + "note": "Live2D看板娘特效" + }, + + { + "name": "valine", + "label": "Valine评论系统", + "group": "Valine评论系统", + "type": "switch", + "value": false, + "note": "启用valine评论系统,需先关闭Gridea自带的评论系统开关。" + }, + { + "name": "appId", + "label": "APP_ID", + "group": "Valine评论系统", + "type": "input", + "value": "", + "note": "从Leancloud上获得的APP_ID" + }, + { + "name": "appKey", + "label": "APP_KEY", + "group": "Valine评论系统", + "type": "input", + "value": "", + "note": "从Leancloud上获得的APP_KEY" + }, + { + "name": "placeholder", + "label": "占位提示符", + "group": "Valine评论系统", + "type": "input", + "value": "Just Go Go", + "note": "评论区占位提示符" + }, + + + { + "name": "Aplayer", + "label": " 是否启用音乐播放器", + "group": "音乐播放器", + "value": true, + "type": "switch", + "note": "网页左下角的音乐播放器APlayer" + }, + { + "name": "Playfrom", + "label": "播放平台", + "group": "音乐播放器", + "value": "netease", + "type": "select", + "options": [ + { + "label": "网易云音乐", + "value": "netease" + }, + { + "label": "qq音乐", + "value": "tencent" + }, + { + "label": "虾米音乐", + "value": "xiami" + }, + { + "label": "酷狗音乐", + "value": "kugou" + }, + { + "label": "百度音乐", + "value": "baidu" + } + ], + + "note": "播放器的音乐平台,支持大多平台" + }, + { + "name": "Playtype", + "label": "播放类型", + "group": "音乐播放器", + "value": "song", + "type": "select", + "options": [ + { + "label": "单曲", + "value": "song" + }, + { + "label": "专辑", + "value": "album" + }, + { + "label": "歌单", + "value": "playlist" + }, + { + "label": "搜索", + "value": "search" + } + ], + + "note": "播放器的播放类型" + }, + { + "name": "Playid", + "label": "播放id", + "group": "音乐播放器", + "value": "", + "type": "input", + "note": "就是音乐网址链接?后的数字,如:5208409284" + }, + { + "name": "Playmode", + "label": "播放模式", + "group": "音乐播放器", + "value": "random", + "type": "select", + "options": [ + { + "label": "随机", + "value": "random" + }, + { + "label": "单曲", + "value": "single" + }, + { + "label": "列表循环", + "value": "curculation" + }, + { + "label": "列表", + "value": "order" + } + ], + + "note": "播放顺序" + }, + { + "name": "Playauto", + "label": "自动播放", + "group": "音乐播放器", + "value": "true", + "type": "select", + "options": [ + { + "label": "开启", + "value": "true" + }, + { + "label": "关闭", + "value": "false" + } + ], + + "note": "是否自动播放" + }, + + { + "name": "Sweetalert", + "label": " 是否启用网页弹窗", + "group": "网页弹窗", + "value": true, + "type": "switch", + "note": "网页加载完成后的弹窗" + }, + { + "name": "alerticon", + "label": "弹窗图标", + "group": "网页弹窗", + "value": "info", + "type": "select", + "options": [ + { + "label": "无", + "value": "info" + }, + { + "label": "成功", + "value": "success" + }, + { + "label": "错误", + "value": "error" + }, + { + "label": "警告", + "value": "warning" + } + ], + + "note": "弹窗最上方的图标" + }, + { + "name": "alerttitle", + "label": "弹窗标题", + "group": "网页弹窗", + "type": "input", + "value": "弹窗", + "note": "弹窗的标题" + }, + { + "name": "alerttext", + "label": "弹窗内容", + "group": "网页弹窗", + "type": "textarea", + "value": "欢迎来到我的博客~", + "note": "弹窗的内容" + }, + + { + "name": "imguploud", + "label": "图床", + "group": "图床", + "type": "array", + "value": [], + "arrayItems": [ + { "label": "请上传", "name": "uploadimg", "type": "picture-upload", "value": "" } + ], + "note": "测试中,暂未实现" + }, + { + "name": "friends", + "label": "友链", + "group": "友链", + "type": "array", + "value": [], + "arrayItems": [ + { "label": "名称", "name": "siteName", "type": "input", "value": "" }, + { "label": "链接", "name": "siteLink", "type": "input", "value": "" }, + { "label": "Logo", "name": "siteLogo", "type": "input", "value": "" }, + { "label": "描述", "name": "description", "type": "textarea", "value": "" } + ], + "note": "" + }, + { + "name": "frienddesc", + "label": "页面描述", + "group": "友链", + "type": "markdown", + "value": "", + "note": "友链页面的描述信息(Markdown 格式)" + }, + { + "name": "about", + "label": "关于", + "group": "关于", + "type": "markdown", + "value": "", + "note": "关于页面的内容(Markdown 格式)" + }, + { + "name": "ga", + "label": "跟踪 ID", + "group": "谷歌统计", + "value": "", + "type": "input", + "note": "UA-xxxxxxxxx-x" + }, + { + "name": "gasense", + "label": "Google Adsense 代码", + "group": "谷歌统计", + "value": "", + "type": "textarea", + "note": "" + } + ] +} \ No newline at end of file diff --git a/bitcron-pro-plus/templates/_blocks/disqus.ejs b/bitcron-pro-plus/templates/_blocks/disqus.ejs new file mode 100644 index 0000000..c690260 --- /dev/null +++ b/bitcron-pro-plus/templates/_blocks/disqus.ejs @@ -0,0 +1,17 @@ + + + +
+ + diff --git a/bitcron-pro-plus/templates/_blocks/footer.ejs b/bitcron-pro-plus/templates/_blocks/footer.ejs new file mode 100644 index 0000000..f8ed34e --- /dev/null +++ b/bitcron-pro-plus/templates/_blocks/footer.ejs @@ -0,0 +1,24 @@ +<% if (site.customConfig.Aplayer){ %> + + +
+ +<% } %> + + + + +<% if (site.customConfig.Sweetalert) { %> + + +<% } %> \ No newline at end of file diff --git a/bitcron-pro-plus/templates/_blocks/gitalk.ejs b/bitcron-pro-plus/templates/_blocks/gitalk.ejs new file mode 100644 index 0000000..be2d06f --- /dev/null +++ b/bitcron-pro-plus/templates/_blocks/gitalk.ejs @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/bitcron-pro-plus/templates/_blocks/head.ejs b/bitcron-pro-plus/templates/_blocks/head.ejs new file mode 100644 index 0000000..f88e281 --- /dev/null +++ b/bitcron-pro-plus/templates/_blocks/head.ejs @@ -0,0 +1,31 @@ + + + + + + + + +<%= siteTitle %> + + + +<% if (site.customConfig.ga) { %> + + +<% } %> +<% if (site.customConfig.Live2D){ %> + +<% } %> + + + diff --git a/bitcron-pro-plus/templates/_blocks/header.ejs b/bitcron-pro-plus/templates/_blocks/header.ejs new file mode 100644 index 0000000..e0e0fc6 --- /dev/null +++ b/bitcron-pro-plus/templates/_blocks/header.ejs @@ -0,0 +1,20 @@ +
+
logo

<%= themeConfig.siteName %>

+<% if (site.customConfig.Santa) { %> + +
+<% } %> +
+
+
+
+ +<% if (site.customConfig.Spring) { %> + +
春节
+<% } %> + diff --git a/bitcron-pro-plus/templates/_blocks/valine.ejs b/bitcron-pro-plus/templates/_blocks/valine.ejs new file mode 100644 index 0000000..b2bd84e --- /dev/null +++ b/bitcron-pro-plus/templates/_blocks/valine.ejs @@ -0,0 +1,15 @@ + +
+ + + + + diff --git a/bitcron-pro-plus/templates/about.ejs b/bitcron-pro-plus/templates/about.ejs new file mode 100644 index 0000000..466e336 --- /dev/null +++ b/bitcron-pro-plus/templates/about.ejs @@ -0,0 +1,36 @@ + + + <%- include('./_blocks/head', { siteTitle: `关于 - ${themeConfig.siteName}` }) %> + + + +
+ <%- include('./_blocks/header') %> +
+
+
+
+ <%- site.customConfig.about %> +
+
+
+
+ <% if (typeof commentSetting !== 'undefined' && commentSetting.showComment) { %> + <% if (commentSetting.commentPlatform === 'gitalk') { %> + <%- include('./_blocks/gitalk') %> + <% } %> + <% if (commentSetting.commentPlatform === 'disqus') { %> + <%- include('./_blocks/disqus') %> + <% } %> + <% } %> + + <% if(typeof site.customConfig['valine']!=='undefined' && site.customConfig['valine']) { %> + <%- include('./_blocks/valine') %> + <% } %> + + + <%- include('./_blocks/footer') %> +
+
+ + diff --git a/bitcron-pro-plus/templates/api-content.ejs b/bitcron-pro-plus/templates/api-content.ejs new file mode 100644 index 0000000..a5b65ac --- /dev/null +++ b/bitcron-pro-plus/templates/api-content.ejs @@ -0,0 +1,24 @@ +<%- outputContent();%><% -%> +<% +function refineContent(str){ + return str.replace(/(<(\/?)(\w+)[^>]*>)|()/g ,'')//去除html标签如

和注释 + .replace(/\s+/g,'')//压缩空格换行等只保留一个空格 +} + +function outputContent(){ +let articlesContent={ + posts:[] +}; +site.posts.forEach(function(post, index){ + if(!post.hideInList){ + let postContent={ + title:post.title, + content:refineContent(post.content), + link:post.link + }; + articlesContent.posts.push(postContent); + } +}) +return JSON.stringify(articlesContent); +} +%> \ No newline at end of file diff --git a/bitcron-pro-plus/templates/api-info.ejs b/bitcron-pro-plus/templates/api-info.ejs new file mode 100644 index 0000000..d71ee58 --- /dev/null +++ b/bitcron-pro-plus/templates/api-info.ejs @@ -0,0 +1,42 @@ +<%- outputInfo();%><% -%> +<% +function refineInfo(str){ + return str.replace(/(<(\/?)(\w+)[^>]*>)|()/g ,'')//去除html标签如

和注释 + .replace(/\s+/g,' ')//压缩空格换行等只保留一个空格 +} + +function outputInfo(){ + //全站信息 + let siteInfo={ + posts:[],//必选,不可更改 + tags:site.tags, + menus:site.menus, + themeConfig:site.themeConfig, + customConfig:site.customConfig, + utils:site.utils//必选,不可更改 + }; +site.posts.forEach(function(post, index){ + if(!post.hideInList){//排除隐藏文章 + //文章信息 + let postInfo={ + //content:post.content,//防止文件过大,尽量不选,在./api-content.ejs中已包含 + fileName:post.fileName, + abstract:post.abstract, + description:refineInfo(post.description), + title:post.title, + tags:post.tags, + feature:post.feature, + link:post.link, + stats:post.stats, + isTop:post.isTop, + toc:post.toc, + date:post.date, + dateFormat:post.dateFormat + }; + siteInfo.posts.push(postInfo); + } +}) + +return JSON.stringify(siteInfo); +} +%> diff --git a/bitcron-pro-plus/templates/archives.ejs b/bitcron-pro-plus/templates/archives.ejs new file mode 100644 index 0000000..5a6ca4b --- /dev/null +++ b/bitcron-pro-plus/templates/archives.ejs @@ -0,0 +1,15 @@ + + + +<%- include('./_blocks/head', { siteTitle: `Archives | ${themeConfig.siteName}`} ) %> + + +<%- include('./_blocks/header') %> +
+<% let years = []; posts.forEach((item) => { const year = item.date.substring(0, 4); if (!years.includes(year)) { years.push(year); } }); %> +<% years.forEach(function(year) { %> +
<%- year %>
<%posts.forEach(function(post){%><%if(post.date.indexOf(year)!==-1){%>
<%=post.title%>
<%}%><%});%>

<% }); %>
+<%if(pagination.prev){%><%}%><%if(pagination.next){%><%}%>
+<%- include('./_blocks/footer') %> + + \ No newline at end of file diff --git a/bitcron-pro-plus/templates/friends.ejs b/bitcron-pro-plus/templates/friends.ejs new file mode 100644 index 0000000..8b8b433 --- /dev/null +++ b/bitcron-pro-plus/templates/friends.ejs @@ -0,0 +1,77 @@ + + + + <%- include('./_blocks/head', { siteTitle:` 友情链接 | ${themeConfig.siteName}` }) %> + + +
+ + <%- include('./_blocks/header') %> + +
+
+
+

友情链接

+ +
+
+ + <% if (site.customConfig.friends) { %> + <% site.customConfig.friends.forEach(function(friend) { %> + + +
+

+ + +
+ <% }); %> + + + + <% } %> + +
+
+ + + + <% if (typeof commentSetting !== 'undefined' && commentSetting.showComment) { %> + <% if (commentSetting.commentPlatform === 'gitalk') { %> +
+ <% } %> + + <% if (commentSetting.commentPlatform === 'disqus') { %> +
+ <% } %> + <% } %> + +
+ +
+
+
+ + <%- include('./_blocks/footer') %> + + diff --git a/bitcron-pro-plus/templates/index.ejs b/bitcron-pro-plus/templates/index.ejs new file mode 100644 index 0000000..a86ec90 --- /dev/null +++ b/bitcron-pro-plus/templates/index.ejs @@ -0,0 +1,30 @@ + + + +<%- include('./_blocks/head', { siteTitle: themeConfig.siteName }) %> + + + +<%- include('./_blocks/header') %> +
+
+
+
+<% posts.forEach(function(post) { %> +
+<%if(post.isTop){ %>
TOP
<%}%> +
+

<%= post.title %> +

+
+

<%- post.abstract %>

+
<% }); %> +
+
+
+
+
+<%- include('./_blocks/footer') %> + + \ No newline at end of file diff --git a/bitcron-pro-plus/templates/post.ejs b/bitcron-pro-plus/templates/post.ejs new file mode 100644 index 0000000..f7fe8b9 --- /dev/null +++ b/bitcron-pro-plus/templates/post.ejs @@ -0,0 +1,59 @@ + + + +<%- include('./_blocks/head', { siteTitle: `${post.title} | ${themeConfig.siteName}` }) %> + + + +<%- include('./_blocks/header') %> +
+
+

<%= post.title %>

+ +
<%= post.dateFormat %> Views<% post.tags.forEach(function(tag, index) { %> <%= tag.name %><% if (index !== post.tags.length - 1) { %> | <% } %><%});%><%= post.stats.words %>字<%= post.stats.text %> +<%if(post.isTop){ %>置顶<%}%>
+<% if (themeConfig.showFeatureImage && post.feature) { %> +featureimg +<% } %> +
+
+
+<%- post.content %> + +
+
+
<%- post.toc %>
+
+
+
+
EOF
+
+
+<% if (typeof commentSetting !== 'undefined' && commentSetting.showComment) { %> + <% if (commentSetting.commentPlatform === 'gitalk') { %> +
+ <%- include('./_blocks/gitalk') %> + <% } %> + + <% if (commentSetting.commentPlatform === 'disqus') { %> + <%- include('./_blocks/disqus') %> + <% } %> + + <% if(typeof site.customConfig['valine']!=='undefined' && site.customConfig['valine']) { %> + <%- include('./_blocks/valine') %> + <% } %> + +<% } %> +
+
+<%- include('./_blocks/footer') %> + + + \ No newline at end of file diff --git a/bitcron-pro-plus/templates/search.ejs b/bitcron-pro-plus/templates/search.ejs new file mode 100644 index 0000000..9201059 --- /dev/null +++ b/bitcron-pro-plus/templates/search.ejs @@ -0,0 +1,27 @@ + + + + <%- include('./_blocks/head', { siteTitle: themeConfig.siteName }) %> + + + + + + + +
+ <%- include('./_blocks/header') %> +
+
+

搜索中......

+ +
+
+
+ <%- include('./_blocks/footer') %> + + \ No newline at end of file diff --git a/bitcron-pro-plus/templates/tag.ejs b/bitcron-pro-plus/templates/tag.ejs new file mode 100644 index 0000000..256b76d --- /dev/null +++ b/bitcron-pro-plus/templates/tag.ejs @@ -0,0 +1,19 @@ + + +<%- include('./_blocks/head', { siteTitle: `${tag.name} | ${themeConfig.siteName}` }) %> + + +<%- include('./_blocks/header') %> +
+<%posts.forEach(function(post){%> +
+<%if(post.isTop){ %>
TOP
<%}%> +

<%=post.title%>

+

<%-post.abstract%>

+
+<%});%> +
+<%- include('./_blocks/footer') %> + + \ No newline at end of file diff --git a/bitcron-pro-plus/templates/tags.ejs b/bitcron-pro-plus/templates/tags.ejs new file mode 100644 index 0000000..63fb3e6 --- /dev/null +++ b/bitcron-pro-plus/templates/tags.ejs @@ -0,0 +1,18 @@ + + + +<%- include('./_blocks/head', { siteTitle: `Tags | ${themeConfig.siteName}` }) %> + + + +<%- include('./_blocks/header') %> +
+
<% tags.forEach((tag, index) => { %> +<%= tag.name %> +<% if (index == tags.length - 1) { %> <% } %> +<% }); %> + +
+<%- include('./_blocks/footer') %> + + \ No newline at end of file