commit a37b7914f3db691d7ca524e46a32d4f554e37bfe Author: woon Date: Fri Mar 10 14:47:04 2023 +0800 first commit diff --git a/statics/css/github-markdown-light.css b/statics/css/github-markdown-light.css new file mode 100644 index 0000000..aaad4d1 --- /dev/null +++ b/statics/css/github-markdown-light.css @@ -0,0 +1,1007 @@ +.markdown-body { + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; + margin: 0; + color: #24292f; + background-color: #ffffff; + font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"; + font-size: 16px; + line-height: 1.5; + word-wrap: break-word; + } + + .markdown-body .octicon { + display: inline-block; + fill: currentColor; + vertical-align: text-bottom; + } + + .markdown-body h1:hover .anchor .octicon-link:before, + .markdown-body h2:hover .anchor .octicon-link:before, + .markdown-body h3:hover .anchor .octicon-link:before, + .markdown-body h4:hover .anchor .octicon-link:before, + .markdown-body h5:hover .anchor .octicon-link:before, + .markdown-body h6:hover .anchor .octicon-link:before { + width: 16px; + height: 16px; + content: ' '; + display: inline-block; + background-color: currentColor; + -webkit-mask-image: url("data:image/svg+xml,"); + mask-image: url("data:image/svg+xml,"); + } + + .markdown-body details, + .markdown-body figcaption, + .markdown-body figure { + display: block; + } + + .markdown-body summary { + display: list-item; + } + + .markdown-body [hidden] { + display: none !important; + } + + .markdown-body a { + background-color: transparent; + color: #0969da; + text-decoration: none; + } + + .markdown-body abbr[title] { + border-bottom: none; + text-decoration: underline dotted; + } + + .markdown-body b, + .markdown-body strong { + font-weight: 600; + } + + .markdown-body dfn { + font-style: italic; + } + + .markdown-body h1 { + margin: .67em 0; + font-weight: 600; + padding-bottom: .3em; + font-size: 2em; + border-bottom: 1px solid hsla(210,18%,87%,1); + } + + .markdown-body mark { + background-color: #fff8c5; + color: #24292f; + } + + .markdown-body small { + font-size: 90%; + } + + .markdown-body sub, + .markdown-body sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; + } + + .markdown-body sub { + bottom: -0.25em; + } + + .markdown-body sup { + top: -0.5em; + } + + .markdown-body img { + border-style: none; + max-width: 100%; + box-sizing: content-box; + background-color: #ffffff; + } + + .markdown-body code, + .markdown-body kbd, + .markdown-body pre, + .markdown-body samp { + font-family: monospace; + font-size: 1em; + } + + .markdown-body figure { + margin: 1em 40px; + } + + .markdown-body hr { + box-sizing: content-box; + overflow: hidden; + background: transparent; + border-bottom: 1px solid hsla(210,18%,87%,1); + height: .25em; + padding: 0; + margin: 24px 0; + background-color: #d0d7de; + border: 0; + } + + .markdown-body input { + font: inherit; + margin: 0; + overflow: visible; + font-family: inherit; + font-size: inherit; + line-height: inherit; + } + + .markdown-body [type=button], + .markdown-body [type=reset], + .markdown-body [type=submit] { + -webkit-appearance: button; + } + + .markdown-body [type=checkbox], + .markdown-body [type=radio] { + box-sizing: border-box; + padding: 0; + } + + .markdown-body [type=number]::-webkit-inner-spin-button, + .markdown-body [type=number]::-webkit-outer-spin-button { + height: auto; + } + + .markdown-body [type=search]::-webkit-search-cancel-button, + .markdown-body [type=search]::-webkit-search-decoration { + -webkit-appearance: none; + } + + .markdown-body ::-webkit-input-placeholder { + color: inherit; + opacity: .54; + } + + .markdown-body ::-webkit-file-upload-button { + -webkit-appearance: button; + font: inherit; + } + + .markdown-body a:hover { + text-decoration: underline; + } + + .markdown-body ::placeholder { + color: #6e7781; + opacity: 1; + } + + .markdown-body hr::before { + display: table; + content: ""; + } + + .markdown-body hr::after { + display: table; + clear: both; + content: ""; + } + + .markdown-body table { + border-spacing: 0; + border-collapse: collapse; + display: block; + width: max-content; + max-width: 100%; + overflow: auto; + } + + .markdown-body td, + .markdown-body th { + padding: 0; + } + + .markdown-body details summary { + cursor: pointer; + } + + .markdown-body details:not([open])>*:not(summary) { + display: none !important; + } + + .markdown-body a:focus, + .markdown-body [role=button]:focus, + .markdown-body input[type=radio]:focus, + .markdown-body input[type=checkbox]:focus { + outline: 2px solid #0969da; + outline-offset: -2px; + box-shadow: none; + } + + .markdown-body a:focus:not(:focus-visible), + .markdown-body [role=button]:focus:not(:focus-visible), + .markdown-body input[type=radio]:focus:not(:focus-visible), + .markdown-body input[type=checkbox]:focus:not(:focus-visible) { + outline: solid 1px transparent; + } + + .markdown-body a:focus-visible, + .markdown-body [role=button]:focus-visible, + .markdown-body input[type=radio]:focus-visible, + .markdown-body input[type=checkbox]:focus-visible { + outline: 2px solid #0969da; + outline-offset: -2px; + box-shadow: none; + } + + .markdown-body a:not([class]):focus, + .markdown-body a:not([class]):focus-visible, + .markdown-body input[type=radio]:focus, + .markdown-body input[type=radio]:focus-visible, + .markdown-body input[type=checkbox]:focus, + .markdown-body input[type=checkbox]:focus-visible { + outline-offset: 0; + } + + .markdown-body kbd { + display: inline-block; + padding: 3px 5px; + font: 11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace; + line-height: 10px; + color: #24292f; + vertical-align: middle; + background-color: #f6f8fa; + border: solid 1px rgba(175,184,193,0.2); + border-bottom-color: rgba(175,184,193,0.2); + border-radius: 6px; + box-shadow: inset 0 -1px 0 rgba(175,184,193,0.2); + } + + .markdown-body h1, + .markdown-body h2, + .markdown-body h3, + .markdown-body h4, + .markdown-body h5, + .markdown-body h6 { + margin-top: 24px; + margin-bottom: 16px; + font-weight: 600; + line-height: 1.25; + } + + .markdown-body h2 { + font-weight: 600; + padding-bottom: .3em; + font-size: 1.5em; + border-bottom: 1px solid hsla(210,18%,87%,1); + } + + .markdown-body h3 { + font-weight: 600; + font-size: 1.25em; + } + + .markdown-body h4 { + font-weight: 600; + font-size: 1em; + } + + .markdown-body h5 { + font-weight: 600; + font-size: .875em; + } + + .markdown-body h6 { + font-weight: 600; + font-size: .85em; + color: #57606a; + } + + .markdown-body p { + margin-top: 0; + margin-bottom: 10px; + } + + .markdown-body blockquote { + margin: 0; + padding: 0 1em; + color: #57606a; + border-left: .25em solid #d0d7de; + } + + .markdown-body ul, + .markdown-body ol { + margin-top: 0; + margin-bottom: 0; + padding-left: 2em; + } + + .markdown-body ol ol, + .markdown-body ul ol { + list-style-type: lower-roman; + } + + .markdown-body ul ul ol, + .markdown-body ul ol ol, + .markdown-body ol ul ol, + .markdown-body ol ol ol { + list-style-type: lower-alpha; + } + + .markdown-body dd { + margin-left: 0; + } + + .markdown-body tt, + .markdown-body code, + .markdown-body samp { + font-family: ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace; + font-size: 12px; + } + + .markdown-body pre { + margin-top: 0; + margin-bottom: 0; + font-family: ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace; + font-size: 12px; + word-wrap: normal; + } + + .markdown-body .octicon { + display: inline-block; + overflow: visible !important; + vertical-align: text-bottom; + fill: currentColor; + } + + .markdown-body input::-webkit-outer-spin-button, + .markdown-body input::-webkit-inner-spin-button { + margin: 0; + -webkit-appearance: none; + appearance: none; + } + + .markdown-body::before { + display: table; + content: ""; + } + + .markdown-body::after { + display: table; + clear: both; + content: ""; + } + + .markdown-body>*:first-child { + margin-top: 0 !important; + } + + .markdown-body>*:last-child { + margin-bottom: 0 !important; + } + + .markdown-body a:not([href]) { + color: inherit; + text-decoration: none; + } + + .markdown-body .absent { + color: #cf222e; + } + + .markdown-body .anchor { + float: left; + padding-right: 4px; + margin-left: -20px; + line-height: 1; + } + + .markdown-body .anchor:focus { + outline: none; + } + + .markdown-body p, + .markdown-body blockquote, + .markdown-body ul, + .markdown-body ol, + .markdown-body dl, + .markdown-body table, + .markdown-body pre, + .markdown-body details { + margin-top: 0; + margin-bottom: 16px; + } + + .markdown-body blockquote>:first-child { + margin-top: 0; + } + + .markdown-body blockquote>:last-child { + margin-bottom: 0; + } + + .markdown-body h1 .octicon-link, + .markdown-body h2 .octicon-link, + .markdown-body h3 .octicon-link, + .markdown-body h4 .octicon-link, + .markdown-body h5 .octicon-link, + .markdown-body h6 .octicon-link { + color: #24292f; + vertical-align: middle; + visibility: hidden; + } + + .markdown-body h1:hover .anchor, + .markdown-body h2:hover .anchor, + .markdown-body h3:hover .anchor, + .markdown-body h4:hover .anchor, + .markdown-body h5:hover .anchor, + .markdown-body h6:hover .anchor { + text-decoration: none; + } + + .markdown-body h1:hover .anchor .octicon-link, + .markdown-body h2:hover .anchor .octicon-link, + .markdown-body h3:hover .anchor .octicon-link, + .markdown-body h4:hover .anchor .octicon-link, + .markdown-body h5:hover .anchor .octicon-link, + .markdown-body h6:hover .anchor .octicon-link { + visibility: visible; + } + + .markdown-body h1 tt, + .markdown-body h1 code, + .markdown-body h2 tt, + .markdown-body h2 code, + .markdown-body h3 tt, + .markdown-body h3 code, + .markdown-body h4 tt, + .markdown-body h4 code, + .markdown-body h5 tt, + .markdown-body h5 code, + .markdown-body h6 tt, + .markdown-body h6 code { + padding: 0 .2em; + font-size: inherit; + } + + .markdown-body summary h1, + .markdown-body summary h2, + .markdown-body summary h3, + .markdown-body summary h4, + .markdown-body summary h5, + .markdown-body summary h6 { + display: inline-block; + } + + .markdown-body summary h1 .anchor, + .markdown-body summary h2 .anchor, + .markdown-body summary h3 .anchor, + .markdown-body summary h4 .anchor, + .markdown-body summary h5 .anchor, + .markdown-body summary h6 .anchor { + margin-left: -40px; + } + + .markdown-body summary h1, + .markdown-body summary h2 { + padding-bottom: 0; + border-bottom: 0; + } + + .markdown-body ul.no-list, + .markdown-body ol.no-list { + padding: 0; + list-style-type: none; + } + + .markdown-body ol[type=a] { + list-style-type: lower-alpha; + } + + .markdown-body ol[type=A] { + list-style-type: upper-alpha; + } + + .markdown-body ol[type=i] { + list-style-type: lower-roman; + } + + .markdown-body ol[type=I] { + list-style-type: upper-roman; + } + + .markdown-body ol[type="1"] { + list-style-type: decimal; + } + + .markdown-body div>ol:not([type]) { + list-style-type: decimal; + } + + .markdown-body ul ul, + .markdown-body ul ol, + .markdown-body ol ol, + .markdown-body ol ul { + margin-top: 0; + margin-bottom: 0; + } + + .markdown-body li>p { + margin-top: 16px; + } + + .markdown-body li+li { + margin-top: .25em; + } + + .markdown-body dl { + padding: 0; + } + + .markdown-body dl dt { + padding: 0; + margin-top: 16px; + font-size: 1em; + font-style: italic; + font-weight: 600; + } + + .markdown-body dl dd { + padding: 0 16px; + margin-bottom: 16px; + } + + .markdown-body table th { + font-weight: 600; + } + + .markdown-body table th, + .markdown-body table td { + padding: 6px 13px; + border: 1px solid #d0d7de; + } + + .markdown-body table tr { + background-color: #ffffff; + border-top: 1px solid hsla(210,18%,87%,1); + } + + .markdown-body table tr:nth-child(2n) { + background-color: #f6f8fa; + } + + .markdown-body table img { + background-color: transparent; + } + + .markdown-body img[align=right] { + padding-left: 20px; + } + + .markdown-body img[align=left] { + padding-right: 20px; + } + + .markdown-body .emoji { + max-width: none; + vertical-align: text-top; + background-color: transparent; + } + + .markdown-body span.frame { + display: block; + overflow: hidden; + } + + .markdown-body span.frame>span { + display: block; + float: left; + width: auto; + padding: 7px; + margin: 13px 0 0; + overflow: hidden; + border: 1px solid #d0d7de; + } + + .markdown-body span.frame span img { + display: block; + float: left; + } + + .markdown-body span.frame span span { + display: block; + padding: 5px 0 0; + clear: both; + color: #24292f; + } + + .markdown-body span.align-center { + display: block; + overflow: hidden; + clear: both; + } + + .markdown-body span.align-center>span { + display: block; + margin: 13px auto 0; + overflow: hidden; + text-align: center; + } + + .markdown-body span.align-center span img { + margin: 0 auto; + text-align: center; + } + + .markdown-body span.align-right { + display: block; + overflow: hidden; + clear: both; + } + + .markdown-body span.align-right>span { + display: block; + margin: 13px 0 0; + overflow: hidden; + text-align: right; + } + + .markdown-body span.align-right span img { + margin: 0; + text-align: right; + } + + .markdown-body span.float-left { + display: block; + float: left; + margin-right: 13px; + overflow: hidden; + } + + .markdown-body span.float-left span { + margin: 13px 0 0; + } + + .markdown-body span.float-right { + display: block; + float: right; + margin-left: 13px; + overflow: hidden; + } + + .markdown-body span.float-right>span { + display: block; + margin: 13px auto 0; + overflow: hidden; + text-align: right; + } + + .markdown-body code, + .markdown-body tt { + padding: .2em .4em; + margin: 0; + font-size: 85%; + white-space: break-spaces; + background-color: rgba(175,184,193,0.2); + border-radius: 6px; + } + + .markdown-body code br, + .markdown-body tt br { + display: none; + } + + .markdown-body del code { + text-decoration: inherit; + } + + .markdown-body samp { + font-size: 85%; + } + + .markdown-body pre code { + font-size: 100%; + } + + .markdown-body pre>code { + padding: 0; + margin: 0; + word-break: normal; + white-space: pre; + background: transparent; + border: 0; + } + + .markdown-body .highlight { + margin-bottom: 16px; + } + + .markdown-body .highlight pre { + margin-bottom: 0; + word-break: normal; + } + + .markdown-body .highlight pre, + .markdown-body pre { + padding: 16px; + overflow: auto; + font-size: 85%; + line-height: 1.45; + background-color: #f6f8fa; + border-radius: 6px; + } + + .markdown-body pre code, + .markdown-body pre tt { + display: inline; + max-width: auto; + padding: 0; + margin: 0; + overflow: visible; + line-height: inherit; + word-wrap: normal; + background-color: transparent; + border: 0; + } + + .markdown-body .csv-data td, + .markdown-body .csv-data th { + padding: 5px; + overflow: hidden; + font-size: 12px; + line-height: 1; + text-align: left; + white-space: nowrap; + } + + .markdown-body .csv-data .blob-num { + padding: 10px 8px 9px; + text-align: right; + background: #ffffff; + border: 0; + } + + .markdown-body .csv-data tr { + border-top: 0; + } + + .markdown-body .csv-data th { + font-weight: 600; + background: #f6f8fa; + border-top: 0; + } + + .markdown-body [data-footnote-ref]::before { + content: "["; + } + + .markdown-body [data-footnote-ref]::after { + content: "]"; + } + + .markdown-body .footnotes { + font-size: 12px; + color: #57606a; + border-top: 1px solid #d0d7de; + } + + .markdown-body .footnotes ol { + padding-left: 16px; + } + + .markdown-body .footnotes ol ul { + display: inline-block; + padding-left: 16px; + margin-top: 16px; + } + + .markdown-body .footnotes li { + position: relative; + } + + .markdown-body .footnotes li:target::before { + position: absolute; + top: -8px; + right: -8px; + bottom: -8px; + left: -24px; + pointer-events: none; + content: ""; + border: 2px solid #0969da; + border-radius: 6px; + } + + .markdown-body .footnotes li:target { + color: #24292f; + } + + .markdown-body .footnotes .data-footnote-backref g-emoji { + font-family: monospace; + } + + .markdown-body .pl-c { + color: #6e7781; + } + + .markdown-body .pl-c1, + .markdown-body .pl-s .pl-v { + color: #0550ae; + } + + .markdown-body .pl-e, + .markdown-body .pl-en { + color: #8250df; + } + + .markdown-body .pl-smi, + .markdown-body .pl-s .pl-s1 { + color: #24292f; + } + + .markdown-body .pl-ent { + color: #116329; + } + + .markdown-body .pl-k { + color: #cf222e; + } + + .markdown-body .pl-s, + .markdown-body .pl-pds, + .markdown-body .pl-s .pl-pse .pl-s1, + .markdown-body .pl-sr, + .markdown-body .pl-sr .pl-cce, + .markdown-body .pl-sr .pl-sre, + .markdown-body .pl-sr .pl-sra { + color: #0a3069; + } + + .markdown-body .pl-v, + .markdown-body .pl-smw { + color: #953800; + } + + .markdown-body .pl-bu { + color: #82071e; + } + + .markdown-body .pl-ii { + color: #f6f8fa; + background-color: #82071e; + } + + .markdown-body .pl-c2 { + color: #f6f8fa; + background-color: #cf222e; + } + + .markdown-body .pl-sr .pl-cce { + font-weight: bold; + color: #116329; + } + + .markdown-body .pl-ml { + color: #3b2300; + } + + .markdown-body .pl-mh, + .markdown-body .pl-mh .pl-en, + .markdown-body .pl-ms { + font-weight: bold; + color: #0550ae; + } + + .markdown-body .pl-mi { + font-style: italic; + color: #24292f; + } + + .markdown-body .pl-mb { + font-weight: bold; + color: #24292f; + } + + .markdown-body .pl-md { + color: #82071e; + background-color: #ffebe9; + } + + .markdown-body .pl-mi1 { + color: #116329; + background-color: #dafbe1; + } + + .markdown-body .pl-mc { + color: #953800; + background-color: #ffd8b5; + } + + .markdown-body .pl-mi2 { + color: #eaeef2; + background-color: #0550ae; + } + + .markdown-body .pl-mdr { + font-weight: bold; + color: #8250df; + } + + .markdown-body .pl-ba { + color: #57606a; + } + + .markdown-body .pl-sg { + color: #8c959f; + } + + .markdown-body .pl-corl { + text-decoration: underline; + color: #0a3069; + } + + .markdown-body g-emoji { + display: inline-block; + min-width: 1ch; + font-family: "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"; + font-size: 1em; + font-style: normal !important; + font-weight: 400; + line-height: 1; + vertical-align: -0.075em; + } + + .markdown-body g-emoji img { + width: 1em; + height: 1em; + } + + .markdown-body .task-list-item { + list-style-type: none; + } + + .markdown-body .task-list-item label { + font-weight: 400; + } + + .markdown-body .task-list-item.enabled label { + cursor: pointer; + } + + .markdown-body .task-list-item+.task-list-item { + margin-top: 4px; + } + + .markdown-body .task-list-item .handle { + display: none; + } + + .markdown-body .task-list-item-checkbox { + margin: 0 .2em .25em -1.4em; + vertical-align: middle; + } + + .markdown-body .contains-task-list:dir(rtl) .task-list-item-checkbox { + margin: 0 -1.6em .25em .2em; + } + + .markdown-body .contains-task-list { + position: relative; + } + + .markdown-body .contains-task-list:hover .task-list-item-convert-container, + .markdown-body .contains-task-list:focus-within .task-list-item-convert-container { + display: block; + width: auto; + height: 24px; + overflow: visible; + clip: auto; + } + + .markdown-body ::-webkit-calendar-picker-indicator { + filter: invert(50%); + } + \ No newline at end of file diff --git a/statics/css/style.css b/statics/css/style.css new file mode 100644 index 0000000..6f6a239 --- /dev/null +++ b/statics/css/style.css @@ -0,0 +1 @@ +*,::before,::after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}*{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59, 130, 246, 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}::moz-focus-inner{border-style:none;padding:0}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type='search']{-webkit-appearance:textfield;outline-offset:-2px}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}a{color:inherit;text-decoration:inherit}body{margin:0;font-family:inherit;line-height:inherit}b,strong{font-weight:bolder}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;padding:0;line-height:inherit;color:inherit}button,select{text-transform:none}button,[type='button'],[type='reset'],[type='submit']{-webkit-appearance:button}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}button{background-color:transparent;background-image:none}button,[role="button"]{cursor:pointer}code,kbd,samp,pre{font-size:1em}fieldset{margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}img{border-style:solid}input::placeholder{opacity:1;color:#9ca3af}input::webkit-input-placeholder{opacity:1;color:#9ca3af}input::-moz-placeholder{opacity:1;color:#9ca3af}input:-ms-input-placeholder{opacity:1;color:#9ca3af}input::-ms-input-placeholder{opacity:1;color:#9ca3af}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}legend{padding:0}ol,ul{list-style:none;margin:0;padding:0}progress{vertical-align:baseline}pre,code,kbd,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}summary{display:list-item}table{text-indent:0;border-color:inherit;border-collapse:collapse}textarea{resize:vertical}textarea::placeholder{opacity:1;color:#9ca3af}textarea::webkit-input-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}textarea:-ms-input-placeholder{opacity:1;color:#9ca3af}textarea::-ms-input-placeholder{opacity:1;color:#9ca3af}.space-y-10 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.space-y-3 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.75rem * var(--tw-space-y-reverse))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgba(243, 244, 246, var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgba(0, 0, 0, var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgba(255, 255, 255, var(--tw-bg-opacity))}.bg-green-100{--tw-bg-opacity:1;background-color:rgba(209, 250, 229, var(--tw-bg-opacity))}.grid{display:-ms-grid;display:grid}.font-light{font-weight:300}.h-6{height:1.5rem}.h-auto{height:auto}.h-48{height:12rem}.h-30{height:7.5rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-5xl{font-size:3rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:0.875rem;line-height:1.25rem}.leading-snug{line-height:1.375}.mx-auto{margin-left:auto;margin-right:auto}.overflow-clip{overflow:clip}.p-2{padding:0.5rem}.px-2{padding-left:0.5rem;padding-right:0.5rem}.py-3{padding-top:0.75rem;padding-bottom:0.75rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-gray-100{--tw-shadow-color:rgba(243, 244, 246, 1);--tw-shadow:var(--tw-shadow-colored)}.text-gray-300{--tw-text-opacity:1;color:rgba(209, 213, 219, var(--tw-text-opacity))}.text-red-400{--tw-text-opacity:1;color:rgba(248, 113, 113, var(--tw-text-opacity))}.hover\:text-black:hover{--tw-text-opacity:1;color:rgba(0, 0, 0, var(--tw-text-opacity))}.tracking-wide{letter-spacing:0.025em}.w-full{width:100%}.w-auto{width:auto}.w-90{width:22.5rem}.gap-3{grid-gap:0.75rem;gap:0.75rem}.grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.col-span-1{-ms-grid-column-span:span 1 / span 1;grid-column:span 1 / span 1}@media (min-width: 768px){.md\:space-y-10 > :not([hidden]) ~ :not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:mx-auto{margin-left:auto;margin-right:auto}.md\:max-w-90{max-width:22.5rem}.md\:px-2{padding-left:0.5rem;padding-right:0.5rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-1{padding-top:0.25rem;padding-bottom:0.25rem}.md\:w-4\/5{width:80%}.md\:w-full{width:100%}} \ No newline at end of file diff --git a/statics/js/stuck.js b/statics/js/stuck.js new file mode 100644 index 0000000..9c53768 --- /dev/null +++ b/statics/js/stuck.js @@ -0,0 +1 @@ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.StuckJs=e():t.StuckJs=e()}(this,function(){return function(t){var e={};function i(n){if(e[n])return e[n].exports;var r=e[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}return i.m=t,i.c=e,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)i.d(n,r,function(e){return t[e]}.bind(null,r));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=4)}([function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.noop=function(){},e.stableSort=function(t,e){return t.map(function(t,e){return{item:t,index:e}}).sort(function(t,i){var n=e(t.item,i.item);return 0!==n?n:t.index-i.index}).map(function(t){return t.item})}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(0),r=function(){function t(e,i,r){var s=this;void 0===i&&(i=!0),void 0===r&&(r=n.noop),this.$$shouldPlacehold=!0,this.original=e,this.onUpdate="function"==typeof r?r:n.noop,this.initialComputedStyles=window.getComputedStyle(this.original),this.initiallyHidden="none"===this.initialComputedStyles.display,this.initiallyHidden&&this.execWhileStucking(function(){s.initialComputedStyles=window.getComputedStyle(s.original)}),this.element=t.createPlaceholderElement(),this.applyInitialStyles(),t.wrap(this.original,this.element),this.cachedRect=this.updateRect(),i&&(this.observer=t.createObserver(this.original,function(){return s.update()}))}return Object.defineProperty(t.prototype,"shouldPlacehold",{get:function(){return!this.initiallyHidden&&this.$$shouldPlacehold},set:function(t){this.shouldPlacehold!==t&&(this.$$shouldPlacehold=t,this.update(!0))},enumerable:!0,configurable:!0}),t.prototype.update=function(t){void 0===t&&(t=!1),this.shouldPlacehold?this.applyStyles(t):this.removeStyles(),this.onUpdate()},t.prototype.updateRect=function(){var t=this;return this.cachedRect=this.element.getBoundingClientRect(),this.initiallyHidden&&this.execWhileStucking(function(){t.cachedRect=t.element.getBoundingClientRect()}),this.cachedRect},t.prototype.destroy=function(){this.observer&&(this.observer.disconnect(),delete this.observer),t.unwrap(this.original),delete this.element,delete this.original,delete this.cachedRect,delete this.onUpdate},t.prototype.execWhileStucking=function(t){var e=this.original.dataset.stuck;this.original.dataset.stuck="true",t(),this.original.dataset.stuck=e},t.prototype.applyInitialStyles=function(){this.initialComputedStyles&&!this.initiallyHidden&&(this.element.style.margin=this.initialComputedStyles.margin,this.element.style.minWidth=this.initialComputedStyles.minWidth,this.element.style.minHeight=this.initialComputedStyles.minHeight,this.element.style.width=this.initialComputedStyles.width,this.element.style.height=this.initialComputedStyles.height)},t.prototype.applyStyles=function(t){if(void 0===t&&(t=!1),this.original&&this.element){var e=this.original.getBoundingClientRect(),i=e.width,n=e.height,r=i!==this.cachedRect.width,s=n!==this.cachedRect.height;(t||r||s)&&((t||r)&&(this.element.style.width=i+"px"),(t||s)&&(this.element.style.height=n+"px"),this.updateRect())}},t.prototype.removeStyles=function(){this.original&&this.element&&(this.element.style.width="",this.element.style.height="")},t.createObserver=function(t,e){if(!t)throw new TypeError("[Stuck.js] Could not create mutation observer on targetNode "+String(t)+". This should be HTMLElement");var i=function(t){var e=t.type;return"childList"===e||"attributes"===e},n=new MutationObserver(function(t){t.some(i)&&e()});return n.observe(t,{attributes:!0,attributeFilter:["style","class"],childList:!0,subtree:!0}),n},t.unwrap=function(t){var e=t.parentNode;if(e instanceof HTMLElement){e.insertAdjacentElement("beforebegin",t);var i=e.parentNode;i instanceof HTMLElement&&i.removeChild(e)}return t},t.wrap=function(t,e){return t.parentNode!==e&&(t.insertAdjacentElement("beforebegin",e),e.appendChild(t)),e},t.createPlaceholderElement=function(t){return void 0===t&&(t="div"),document.createElement(t)},t}();e.default=r},function(t,e,i){"use strict";var n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,i=1,n=arguments.length;i=e&&!this.isStickToBottom?(this.top=e-this.rect.height,void(this.isStickToBottom=!0)):this.isStickToBottom?this.rect.top>=this.marginTop?(this.top=this.marginTop,void(this.isStickToBottom=!1)):void(this.rect.topt.top)this.isSticky=!0;else if(this.isSticky){if(t.top>=this.marginTop)return void(this.isSticky=!1);this.rect=this.element.getBoundingClientRect(),this.rect.left!==t.left&&(this.element.style.left=t.left+"px"),this.computePositionTopFromRect(this.rect)}},t}();e.default=a},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t){this.$$stickies=[],this.$$activated=!1,this.$$bulkUpdateRequestId=null,this.$$window=t,this.bulkUpdate=this.bulkUpdate.bind(this),this.bulkPlaceholderUpdate=this.bulkPlaceholderUpdate.bind(this)}return t.getInstance=function(e){return this.$$instance||(this.$$instance=new t(e)),this.$$instance},t.prototype.register=function(t){return this.$$stickies=this.$$stickies.concat([t]),this},t.prototype.unregister=function(t){return this.$$stickies=this.$$stickies.filter(function(e){return e!==t}),this.$$stickies.length<1&&this.deactivate(),this},t.prototype.bulkUpdate=function(){var t=this;return this.$$bulkUpdateRequestId&&this.$$window.cancelAnimationFrame(this.$$bulkUpdateRequestId),this.$$bulkUpdateRequestId=this.$$window.requestAnimationFrame(function(){t.$$stickies.forEach(function(t){return t.update()})}),this},t.prototype.destroyAll=function(){return this.$$stickies.forEach(function(t){return t.destroy()}),this.$$stickies=[],this.deactivate(),this},t.prototype.activate=function(){return!this.$$activated&&this.$$stickies.length>0&&(this.$$window.addEventListener("scroll",this.bulkUpdate),this.$$window.addEventListener("resize",this.bulkPlaceholderUpdate),this.$$activated=!0),this.bulkUpdate(),this},t.prototype.deactivate=function(){return this.$$activated&&(this.$$window.removeEventListener("scroll",this.bulkUpdate),this.$$window.removeEventListener("resize",this.bulkPlaceholderUpdate),this.$$activated=!1),this},t.prototype.bulkPlaceholderUpdate=function(){var t=this;this.$$bulkUpdateRequestId&&this.$$window.cancelAnimationFrame(this.$$bulkUpdateRequestId),this.$$bulkUpdateRequestId=this.$$window.requestAnimationFrame(function(){t.$$stickies.forEach(function(t){t.placeholder.update(),t.update()})})},t}();e.getStickyManagerInstance=function(t){return n.getInstance(t)}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(1);e.Placeholder=n.default;var r=i(2);e.Sticky=r.default;var s=i(5);e.Stuck=s.default,e.default=s.default},function(t,e,i){"use strict";var n=this&&this.__assign||function(){return(n=Object.assign||function(t){for(var e,i=1,n=arguments.length;i0&&this.update(),this},t.prototype.update=function(){return this.$$stackingStickies=this.stackingStickies.filter(function(t,e,i){return i.indexOf(t)===e}).map(function(t){return{instance:t,rect:t.placeholder.updateRect()}}).sort(function(t,e){var i=t.rect,n=e.rect;return i.top-n.top}).reduce(function(t,e){var i=t.instances,n=t.ceiling,r=e.instance;return r.marginTop=r.options.marginTop+n,{instances:i.concat([r]),ceiling:r.rect.height+r.marginTop}},{instances:[],ceiling:0}).instances,n.getStickyManagerInstance(this.$$window).bulkUpdate(),this.$$stickies=r.stableSort(this.stickies,function(t,e){return t.placeholder.cachedRect.top-e.placeholder.cachedRect.top}),this},t}();e.getStuckManagerInstance=function(t){return s.getInstance(t)}}])}); \ No newline at end of file diff --git a/tmpl/article.html b/tmpl/article.html new file mode 100644 index 0000000..ddd26f9 --- /dev/null +++ b/tmpl/article.html @@ -0,0 +1,64 @@ +{{define "article.html"}} + {{template "base.html" .}} +{{end}} + +{{define "ext_css"}} + + +{{end}} + +{{define "body"}} + + +
+
+ +
+
+
+
+ {{.content}} +
+
+
+
+
+
+ +
+
+
+
+
+{{end}} + +{{define "ext_js"}} + + + +{{end}} + + + + diff --git a/tmpl/index.html b/tmpl/index.html new file mode 100644 index 0000000..7b66293 --- /dev/null +++ b/tmpl/index.html @@ -0,0 +1,72 @@ +{{define "index.html"}} + {{template "base.html" .}} +{{end}} + +{{define "body"}} + + +
+
+ +
+
+ + + {{range .list}} +
+
+ +
+
+ {{.Date}} +
+
+
+
+ {{end}} + +
+
+
+
+{{end}} + +{{define "ext_js"}} + + +{{end}} diff --git a/tmpl/layouts/base.html b/tmpl/layouts/base.html new file mode 100644 index 0000000..c433a0f --- /dev/null +++ b/tmpl/layouts/base.html @@ -0,0 +1,27 @@ + + + + + + + + {{.title}} + + + {{block "ext_css" .}}{{end}} + + +
+ winxg +
+
+
+ {{block "body" .}} {{end}} +
+ +
+ + +{{block "ext_js" .}}{{end}} + +