├── src ├── pages │ ├── .gitkeep │ ├── post.vue │ └── index.vue ├── assets │ ├── .gitkeep │ └── css │ │ └── github-markdown.css ├── components │ ├── .gitkeep │ ├── main-footer.vue │ └── main-header.vue ├── static │ ├── .gitkeep │ └── config.json ├── utils │ └── utils.js ├── main.js ├── app.vue └── io.js ├── static ├── .gitkeep └── config.json ├── config ├── prod.env.js ├── dev.env.js └── index.js ├── .gitignore ├── index.html ├── docs ├── index.html └── static │ ├── config.json │ ├── js │ ├── manifest.js │ └── app.js │ └── css │ └── app.css ├── .github └── workflows │ └── nodejs.yml ├── README.md └── package.json /src/pages/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/assets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/components/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /config/prod.env.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | NODE_ENV: '"production"' 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | test/e2e/mock-template-build 4 | *.log -------------------------------------------------------------------------------- /config/dev.env.js: -------------------------------------------------------------------------------- 1 | var merge = require('webpack-merge') 2 | var prodEnv = require('./prod.env') 3 | 4 | module.exports = merge(prodEnv, { 5 | NODE_ENV: '"development"' 6 | }) 7 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | issvue 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- 1 | issvue
-------------------------------------------------------------------------------- /src/utils/utils.js: -------------------------------------------------------------------------------- 1 | export function timeFormat(_date) { 2 | const date = new Date(_date); 3 | const year = date.getFullYear(); 4 | const month = ('0' + (date.getMonth() + 1)).slice(-2) 5 | const day = ('0' + date.getDate()).slice(-2) 6 | const months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun ', 'Jul ', 'Aug ', 'Sep ', 'Oct', 'Nov', 'Dec']; 7 | return year + '-' + month + '-' + day; 8 | //return return months[date.getMonth()] +' '+ day+ ', ' + year; 9 | } -------------------------------------------------------------------------------- /.github/workflows/nodejs.yml: -------------------------------------------------------------------------------- 1 | name: Node CI 2 | 3 | on: [push] 4 | 5 | jobs: 6 | build: 7 | 8 | runs-on: ubuntu-latest 9 | 10 | strategy: 11 | matrix: 12 | node-version: [8.x, 10.x, 12.x] 13 | 14 | steps: 15 | - uses: actions/checkout@v1 16 | - name: Use Node.js ${{ matrix.node-version }} 17 | uses: actions/setup-node@v1 18 | with: 19 | node-version: ${{ matrix.node-version }} 20 | - name: npm install, build, and test 21 | run: | 22 | npm install 23 | npm run build --if-present 24 | npm test 25 | env: 26 | CI: true 27 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | import App from './app'; 3 | import VueRouter from 'vue-router' 4 | import Index from './pages/index.vue' 5 | import Post from './pages/post.vue' 6 | import {init} from './io'; 7 | import axios from 'axios'; 8 | 9 | 10 | Vue.use(VueRouter); 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | const routes = [ 19 | { path: '/', component: Index }, 20 | { path: '/post/:id', component: Post } 21 | ] 22 | 23 | const router = new VueRouter({ 24 | routes 25 | }) 26 | 27 | init() 28 | .then((cfg) => global.cfg = cfg) 29 | .then(function(){ 30 | new Vue({ 31 | el: '#app', 32 | router, 33 | render: h => h(App) 34 | }) 35 | }) 36 | 37 | 38 | -------------------------------------------------------------------------------- /static/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "blog": { 3 | "title": "Issvue", 4 | "welcome": "Welcome to issvue", 5 | "detail": "This is a client-side github-issue blog generator." 6 | }, 7 | "repo": { 8 | "user": "cogons", 9 | "repo": "blog", 10 | "read_only_token": "6c1f1612f103c435991969309947995904f4451c", 11 | "authors": ["cogons"] 12 | }, 13 | "nav": [{ 14 | "name": "Social", 15 | "url": "https://www.zhihu.com/people/mustaxu" 16 | }, 17 | { 18 | "name": "Github", 19 | "url": "https://github.com/cogons" 20 | }, 21 | { 22 | "name": "Star&Fork", 23 | "url": "https://github.com/cogons/issvue" 24 | } 25 | ], 26 | "pin": [4, 5] 27 | } -------------------------------------------------------------------------------- /docs/static/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "blog": { 3 | "title": "Issvue", 4 | "welcome": "Welcome to issvue", 5 | "detail": "This is a client-side github-issue blog generator." 6 | }, 7 | "repo": { 8 | "user": "cogons", 9 | "repo": "blog", 10 | "read_only_token": "6c1f1612f103c435991969309947995904f4451c", 11 | "authors":["cogons"] 12 | }, 13 | "nav": [ 14 | { 15 | "name": "Social", 16 | "url": "https://www.zhihu.com/people/mustaxu" 17 | }, 18 | { 19 | "name": "Github", 20 | "url": "https://github.com/cogons" 21 | }, 22 | { 23 | "name": "Star&Fork", 24 | "url": "https://github.com/cogons/issvue" 25 | } 26 | ], 27 | "pin":[5] 28 | } -------------------------------------------------------------------------------- /src/static/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "blog": { 3 | "title": "Issvue", 4 | "welcome": "Welcome to issvue", 5 | "detail": "This is a client-side github-issue blog generator." 6 | }, 7 | "repo": { 8 | "user": "cogons", 9 | "repo": "blog", 10 | "read_only_token": "6c1f1612f103c435991969309947995904f4451c", 11 | "authors":["cogons"] 12 | }, 13 | "nav": [ 14 | { 15 | "name": "Social", 16 | "url": "https://www.zhihu.com/people/mustaxu" 17 | }, 18 | { 19 | "name": "Github", 20 | "url": "https://github.com/cogons" 21 | }, 22 | { 23 | "name": "Star&Fork", 24 | "url": "https://github.com/cogons/issvue" 25 | } 26 | ], 27 | "pin":[5] 28 | } -------------------------------------------------------------------------------- /src/components/main-footer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | -------------------------------------------------------------------------------- /src/app.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 23 | 24 | 63 | -------------------------------------------------------------------------------- /docs/static/js/manifest.js: -------------------------------------------------------------------------------- 1 | !function(e){function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}var n=window.webpackJsonp;window.webpackJsonp=function(t,c,i){for(var u,a,s,f=0,l=[];f= 4.0.0", 57 | "npm": ">= 3.0.0" 58 | }, 59 | "browserslist": [ 60 | "> 1%", 61 | "last 2 versions", 62 | "not ie <= 8" 63 | ] 64 | } 65 | -------------------------------------------------------------------------------- /src/components/main-header.vue: -------------------------------------------------------------------------------- 1 | 26 | 27 | 51 | 116 | -------------------------------------------------------------------------------- /src/io.js: -------------------------------------------------------------------------------- 1 | import axios from 'axios'; 2 | 3 | 4 | var api = 'https://api.github.com/repos/'; 5 | 6 | export function init(){ 7 | 8 | const url = "./static/config.json"; 9 | 10 | if (!getSession('conf')) { 11 | return axios.get(url) 12 | .then((conf) => { 13 | console.dir('conf from axios') 14 | setSession('conf', conf.data) 15 | global.COURSES = 'xxxxx' 16 | return conf.data 17 | }) 18 | .catch((error) => { 19 | console.log(error); 20 | }); 21 | } 22 | else { 23 | return new Promise(function (resolve, reject) { 24 | console.dir('conf from ss') 25 | resolve(getSession('conf')); 26 | }); 27 | } 28 | } 29 | 30 | 31 | function setSession(key, val) { 32 | return sessionStorage.setItem(key, JSON.stringify(val)); 33 | } 34 | 35 | function getSession(key) { 36 | return JSON.parse(sessionStorage.getItem(key)) 37 | } 38 | 39 | export function getIssue() { 40 | const cfg = global.cfg 41 | const url = api + cfg.repo.user + '/' + cfg.repo.repo + '/issues' + '?token=' + cfg.repo.read_only_token; 42 | if (!getSession('res')) { 43 | return axios.get(url) 44 | .then((res) => { 45 | console.dir('from axios') 46 | setSession('res', res.data) 47 | return res.data 48 | }) 49 | .catch((error) => { 50 | console.log(error); 51 | }); 52 | } 53 | else { 54 | return new Promise(function (resolve, reject) { 55 | console.dir('from ss') 56 | resolve(getSession('res')); 57 | }); 58 | } 59 | } 60 | 61 | export function getComs(id) { 62 | const cfg = global.cfg 63 | const url = api + cfg.repo.user + '/' + cfg.repo.repo + '/issues/' + id + '/comments' + '?token=' + cfg.repo.read_only_token; 64 | if (!getSession('c' + id)) { 65 | return axios.get(url) 66 | .then((res) => { 67 | console.dir('from axios') 68 | setSession('c' + id, res.data) 69 | return res.data; 70 | }) 71 | .catch((error) => { 72 | console.log(error); 73 | }); 74 | } 75 | else { 76 | return new Promise(function (resolve, reject) { 77 | console.dir('from ss') 78 | resolve(getSession('c' + id)); 79 | }); 80 | } 81 | } -------------------------------------------------------------------------------- /src/pages/post.vue: -------------------------------------------------------------------------------- 1 | 21 | 22 | 23 | 77 | -------------------------------------------------------------------------------- /src/pages/index.vue: -------------------------------------------------------------------------------- 1 | 29 | 30 | 116 | -------------------------------------------------------------------------------- /docs/static/css/app.css: -------------------------------------------------------------------------------- 1 | *{box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;margin:0;padding:0}body{background:#2196f3;font-family:Lucida Grande,Lucida Sans Unicode,Hiragino Sans GB,WenQuanYi Micro Hei,Verdana,Aril,sans-serif;font-size:15px;color:#262626;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a,a:hover{color:#262626;text-decoration:none;transition:opacity .5s ease;-webkit-transition:opacity .5s ease;-moz-transition:opacity .5s ease}a:hover{opacity:.6}.container{margin:0 auto;margin-top:50px;max-width:80%;background-color:#2196f3;border-radius:6px}header[data-v-6c4c81f2]{border-radius:6px 6px 0 0;background:#2196f3;color:#fff;padding:20px 0}header a[data-v-6c4c81f2]{color:#fff}.meta[data-v-6c4c81f2]{text-align:center;min-height:400px;margin:auto;display:flex;flex-direction:column;align-content:center;justify-content:center;align-self:center}.meta h1[data-v-6c4c81f2]{font-size:30px}.meta p[data-v-6c4c81f2]{margin-top:40px;font-size:16px}nav[data-v-6c4c81f2]{top:30px;margin:0 auto;display:block;width:80%;overflow:auto;z-index:10;position:absolute}.logo[data-v-6c4c81f2]{float:left}nav ul[data-v-6c4c81f2]{float:right}nav li[data-v-6c4c81f2]{display:inline-block}nav li a[data-v-6c4c81f2]{padding:10px;margin:10px;border-bottom:3px solid transparent;transition:all .5s ease;background:#2196f3}nav li a[data-v-6c4c81f2]:hover{border-bottom:3px solid #fff;padding-bottom:12px;opacity:1}footer[data-v-aeb149d6]{text-align:center;font-size:14px;padding:50px 0;color:#fff}footer a[data-v-aeb149d6]{font-weight:700;color:#fff}.home[data-v-6e8c0b78]{padding:30px;border-radius:8px;background:#fff}.post[data-v-6e8c0b78]{padding:20px 30px;border-bottom:0 solid #eee;border-radius:8px}.post[data-v-6e8c0b78]:hover{background:#f7f9fb;transition:.5s;-moz-transition:.5s}.post a[data-v-6e8c0b78]{color:#333}.post a[data-v-6e8c0b78]:hover{color:#000;opacity:1;transition:.5s;-moz-transition:.5s}.meta[data-v-6e8c0b78]{margin-bottom:8px;font-size:13px}.date[data-v-6e8c0b78]{color:#999}.labels[data-v-6e8c0b78]{float:right}.labels a[data-v-6e8c0b78]{display:inline-block;padding:4px;color:#00c853}.top[data-v-6e8c0b78]{display:inline-block;background:#fff;margin:3px 6px 3px 0;padding:2px 4px;font-size:12px;border-radius:3px;color:#f05f5a;border:1px solid #f05f5a}hr[data-v-6e8c0b78]{border:1px solid #efefef;margin:30px}article[data-v-1966b86a]{padding:60px;border-radius:8px;background:#fff}.meta[data-v-1966b86a]{padding:30px 0 40px;text-align:center}.meta span[data-v-1966b86a]{display:block}.title[data-v-1966b86a]{text-align:center;font-size:22px;font-weight:700;padding:20px 0}.leave[data-v-1966b86a]{text-align:center;padding:80px 0 20px}.leave a[data-v-1966b86a]{padding:10px;color:#2196f3;font-size:12px;border-radius:6px;border:1px solid #2196f3}.com_area[data-v-1966b86a]{margin-top:20px}.com[data-v-1966b86a]{padding:10px 0;display:flex;align-items:center}.com img[data-v-1966b86a]{width:40px;height:40px;border-radius:20px}.com p[data-v-1966b86a]{padding:10px 20px;background:#f7f9fb;width:100%;margin:0 10px}article .content>h1[data-v-1966b86a]{font-size:16px}@font-face{font-family:octicons-link;src:url(data:font/woff;charset=utf-8;base64,d09GRgABAAAAAAZwABAAAAAACFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEU0lHAAAGaAAAAAgAAAAIAAAAAUdTVUIAAAZcAAAACgAAAAoAAQAAT1MvMgAAAyQAAABJAAAAYFYEU3RjbWFwAAADcAAAAEUAAACAAJThvmN2dCAAAATkAAAABAAAAAQAAAAAZnBnbQAAA7gAAACyAAABCUM+8IhnYXNwAAAGTAAAABAAAAAQABoAI2dseWYAAAFsAAABPAAAAZwcEq9taGVhZAAAAsgAAAA0AAAANgh4a91oaGVhAAADCAAAABoAAAAkCA8DRGhtdHgAAAL8AAAADAAAAAwGAACfbG9jYQAAAsAAAAAIAAAACABiATBtYXhwAAACqAAAABgAAAAgAA8ASm5hbWUAAAToAAABQgAAAlXu73sOcG9zdAAABiwAAAAeAAAAME3QpOBwcmVwAAAEbAAAAHYAAAB/aFGpk3jaTY6xa8JAGMW/O62BDi0tJLYQincXEypYIiGJjSgHniQ6umTsUEyLm5BV6NDBP8Tpts6F0v+k/0an2i+itHDw3v2+9+DBKTzsJNnWJNTgHEy4BgG3EMI9DCEDOGEXzDADU5hBKMIgNPZqoD3SilVaXZCER3/I7AtxEJLtzzuZfI+VVkprxTlXShWKb3TBecG11rwoNlmmn1P2WYcJczl32etSpKnziC7lQyWe1smVPy/Lt7Kc+0vWY/gAgIIEqAN9we0pwKXreiMasxvabDQMM4riO+qxM2ogwDGOZTXxwxDiycQIcoYFBLj5K3EIaSctAq2kTYiw+ymhce7vwM9jSqO8JyVd5RH9gyTt2+J/yUmYlIR0s04n6+7Vm1ozezUeLEaUjhaDSuXHwVRgvLJn1tQ7xiuVv/ocTRF42mNgZGBgYGbwZOBiAAFGJBIMAAizAFoAAABiAGIAznjaY2BkYGAA4in8zwXi+W2+MjCzMIDApSwvXzC97Z4Ig8N/BxYGZgcgl52BCSQKAA3jCV8CAABfAAAAAAQAAEB42mNgZGBg4f3vACQZQABIMjKgAmYAKEgBXgAAeNpjYGY6wTiBgZWBg2kmUxoDA4MPhGZMYzBi1AHygVLYQUCaawqDA4PChxhmh/8ODDEsvAwHgMKMIDnGL0x7gJQCAwMAJd4MFwAAAHjaY2BgYGaA4DAGRgYQkAHyGMF8NgYrIM3JIAGVYYDT+AEjAwuDFpBmA9KMDEwMCh9i/v8H8sH0/4dQc1iAmAkALaUKLgAAAHjaTY9LDsIgEIbtgqHUPpDi3gPoBVyRTmTddOmqTXThEXqrob2gQ1FjwpDvfwCBdmdXC5AVKFu3e5MfNFJ29KTQT48Ob9/lqYwOGZxeUelN2U2R6+cArgtCJpauW7UQBqnFkUsjAY/kOU1cP+DAgvxwn1chZDwUbd6CFimGXwzwF6tPbFIcjEl+vvmM/byA48e6tWrKArm4ZJlCbdsrxksL1AwWn/yBSJKpYbq8AXaaTb8AAHja28jAwOC00ZrBeQNDQOWO//sdBBgYGRiYWYAEELEwMTE4uzo5Zzo5b2BxdnFOcALxNjA6b2ByTswC8jYwg0VlNuoCTWAMqNzMzsoK1rEhNqByEyerg5PMJlYuVueETKcd/89uBpnpvIEVomeHLoMsAAe1Id4AAAAAAAB42oWQT07CQBTGv0JBhagk7HQzKxca2sJCE1hDt4QF+9JOS0nbaaYDCQfwCJ7Au3AHj+LO13FMmm6cl7785vven0kBjHCBhfpYuNa5Ph1c0e2Xu3jEvWG7UdPDLZ4N92nOm+EBXuAbHmIMSRMs+4aUEd4Nd3CHD8NdvOLTsA2GL8M9PODbcL+hD7C1xoaHeLJSEao0FEW14ckxC+TU8TxvsY6X0eLPmRhry2WVioLpkrbp84LLQPGI7c6sOiUzpWIWS5GzlSgUzzLBSikOPFTOXqly7rqx0Z1Q5BAIoZBSFihQYQOOBEdkCOgXTOHA07HAGjGWiIjaPZNW13/+lm6S9FT7rLHFJ6fQbkATOG1j2OFMucKJJsxIVfQORl+9Jyda6Sl1dUYhSCm1dyClfoeDve4qMYdLEbfqHf3O/AdDumsjAAB42mNgYoAAZQYjBmyAGYQZmdhL8zLdDEydARfoAqIAAAABAAMABwAKABMAB///AA8AAQAAAAAAAAAAAAAAAAABAAAAAA==) format("woff")}.markdown-body{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;color:#24292e;font-family:-apple-system,system-ui,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5;word-wrap:break-word}.markdown-body .pl-c{color:#969896}.markdown-body .pl-c1,.markdown-body .pl-s .pl-v{color:#0086b3}.markdown-body .pl-e,.markdown-body .pl-en{color:#795da3}.markdown-body .pl-s .pl-s1,.markdown-body .pl-smi{color:#333}.markdown-body .pl-ent{color:#63a35c}.markdown-body .pl-k{color:#a71d5d}.markdown-body .pl-pds,.markdown-body .pl-s,.markdown-body .pl-s .pl-pse .pl-s1,.markdown-body .pl-sr,.markdown-body .pl-sr .pl-cce,.markdown-body .pl-sr .pl-sra,.markdown-body .pl-sr .pl-sre{color:#183691}.markdown-body .pl-smw,.markdown-body .pl-v{color:#ed6a43}.markdown-body .pl-bu{color:#b52a1d}.markdown-body .pl-c2,.markdown-body .pl-ii{color:#f8f8f8;background-color:#b52a1d}.markdown-body .pl-c2:before{content:"^M"}.markdown-body .pl-sr .pl-cce{font-weight:700;color:#63a35c}.markdown-body .pl-ml{color:#693a17}.markdown-body .pl-mh,.markdown-body .pl-mh .pl-en,.markdown-body .pl-ms{font-weight:700;color:#1d3e81}.markdown-body .pl-mq{color:teal}.markdown-body .pl-mi{font-style:italic;color:#333}.markdown-body .pl-mb{font-weight:700;color:#333}.markdown-body .pl-md{color:#bd2c00;background-color:#ffecec}.markdown-body .pl-mi1{color:#55a532;background-color:#eaffea}.markdown-body .pl-mc{color:#ef9700;background-color:#ffe3b4}.markdown-body .pl-mi2{color:#d8d8d8;background-color:gray}.markdown-body .pl-mdr{font-weight:700;color:#795da3}.markdown-body .pl-mo{color:#1d3e81}.markdown-body .pl-ba{color:#595e62}.markdown-body .pl-sg{color:silver}.markdown-body .pl-corl{text-decoration:underline;color:#183691}.markdown-body .octicon{display:inline-block;vertical-align:text-top;fill:currentColor}.markdown-body a{background-color:transparent;-webkit-text-decoration-skip:objects}.markdown-body a:active,.markdown-body a:hover{outline-width:0}.markdown-body strong{font-weight:inherit;font-weight:bolder}.markdown-body h1{font-size:1.2em;margin:.67em 0}.markdown-body img{border-style:none}.markdown-body svg:not(:root){overflow:hidden}.markdown-body code,.markdown-body kbd,.markdown-body pre{font-family:monospace,monospace;font-size:1em}.markdown-body hr{box-sizing:content-box;overflow:visible}.markdown-body input{font:inherit;margin:0;overflow:visible}.markdown-body [type=checkbox]{box-sizing:border-box;padding:0}.markdown-body *{box-sizing:border-box}.markdown-body input{font-family:inherit;font-size:inherit;line-height:inherit}.markdown-body a{color:#0366d6;text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body strong{font-weight:600}.markdown-body hr{height:0;margin:15px 0;overflow:hidden;background:transparent;border-bottom:1px solid #dfe2e5}.markdown-body hr:after,.markdown-body hr:before{display:table;content:""}.markdown-body hr:after{clear:both}.markdown-body table{border-spacing:0;border-collapse:collapse}.markdown-body td,.markdown-body th{padding:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:0;margin-bottom:0}.markdown-body h1{font-size:20px;font-weight:600}.markdown-body h2{font-size:24px;font-weight:600}.markdown-body h3{font-size:20px;font-weight:600}.markdown-body h4{font-size:16px;font-weight:600}.markdown-body h5{font-size:14px;font-weight:600}.markdown-body h6{font-size:12px;font-weight:600}.markdown-body p{margin-top:0;margin-bottom:10px}.markdown-body blockquote{margin:0}.markdown-body ol,.markdown-body ul{padding-left:0;margin-top:0;margin-bottom:0}.markdown-body ol ol,.markdown-body ul ol{list-style-type:lower-roman}.markdown-body ol ol ol,.markdown-body ol ul ol,.markdown-body ul ol ol,.markdown-body ul ul ol{list-style-type:lower-alpha}.markdown-body dd{margin-left:0}.markdown-body code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:12px}.markdown-body pre{margin-top:0;margin-bottom:0;font:12px SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}.markdown-body .octicon{vertical-align:text-bottom}.markdown-body .pl-0{padding-left:0!important}.markdown-body .pl-1{padding-left:4px!important}.markdown-body .pl-2{padding-left:8px!important}.markdown-body .pl-3{padding-left:16px!important}.markdown-body .pl-4{padding-left:24px!important}.markdown-body .pl-5{padding-left:32px!important}.markdown-body .pl-6{padding-left:40px!important}.markdown-body:after,.markdown-body:before{display:table;content:""}.markdown-body:after{clear:both}.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 .anchor{float:left;padding-right:4px;margin-left:-20px;line-height:1}.markdown-body .anchor:focus{outline:none}.markdown-body blockquote,.markdown-body dl,.markdown-body ol,.markdown-body p,.markdown-body pre,.markdown-body table,.markdown-body ul{margin-top:0;margin-bottom:16px}.markdown-body hr{height:.25em;padding:0;margin:24px 0;background-color:#e1e4e8;border:0}.markdown-body blockquote{padding:0 1em;color:#6a737d;border-left:.25em solid #dfe2e5}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body kbd{font-size:11px;background-color:#fafbfc}.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 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:#1b1f23;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{font-size:2em}.markdown-body h1,.markdown-body h2{padding-bottom:.3em;border-bottom:1px solid #eaecef}.markdown-body h2{font-size:1.5em}.markdown-body h3{font-size:1.25em}.markdown-body h4{font-size:1em}.markdown-body h5{font-size:.875em}.markdown-body h6{font-size:.85em;color:#6a737d}.markdown-body ol,.markdown-body ul{padding-left:2em}.markdown-body ol ol,.markdown-body ol ul,.markdown-body ul ol,.markdown-body ul 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{display:block;width:100%;overflow:auto}.markdown-body table th{font-weight:600}.markdown-body table td,.markdown-body table th{padding:6px 13px;border:1px solid #dfe2e5}.markdown-body table tr{background-color:#fff;border-top:1px solid #c6cbd1}.markdown-body table tr:nth-child(2n){background-color:#f6f8fa}.markdown-body img{max-width:100%;box-sizing:content-box;background-color:#fff}.markdown-body code{padding:0;padding-top:.2em;padding-bottom:.2em;margin:0;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}.markdown-body code:after,.markdown-body code:before{letter-spacing:-.2em;content:"\A0"}.markdown-body pre{word-wrap:normal}.markdown-body pre>code{padding:0;margin:0;font-size:100%;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:3px}.markdown-body pre code{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown-body pre code:after,.markdown-body pre code:before{content:normal}.markdown-body .full-commit .btn-outline:not(:disabled):hover{color:#005cc5;border-color:#005cc5}.markdown-body kbd{display:inline-block;padding:3px 5px;font:11px SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;line-height:10px;color:#444d56;vertical-align:middle;background-color:#fcfcfc;border:1px solid #c6cbd1;border-bottom-color:#959da5;border-radius:3px;box-shadow:inset 0 -1px 0 #959da5}.markdown-body :checked+.radio-label{position:relative;z-index:1;border-color:#0366d6}.markdown-body .task-list-item{list-style-type:none}.markdown-body .task-list-item+.task-list-item{margin-top:3px}.markdown-body .task-list-item input{margin:0 .2em .25em -1.6em;vertical-align:middle}.markdown-body hr{border-bottom-color:#eee}.hljs{display:block;overflow-x:auto;padding:.5em;background:#fff;color:#000}.hljs-comment,.hljs-quote{color:#800}.hljs-keyword,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-title{color:#008}.hljs-template-variable,.hljs-variable{color:#660}.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-string{color:#080}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-meta,.hljs-number,.hljs-symbol{color:#066}.hljs-attr,.hljs-built_in,.hljs-builtin-name,.hljs-doctag,.hljs-params,.hljs-title,.hljs-type{color:#606}.hljs-attribute,.hljs-subst{color:#000}.hljs-formula{background-color:#eee;font-style:italic}.hljs-selector-class,.hljs-selector-id{color:#9b703f}.hljs-addition{background-color:#baeeba}.hljs-deletion{background-color:#ffc8bd}.hljs-doctag,.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic} -------------------------------------------------------------------------------- /src/assets/css/github-markdown.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: octicons-link; 3 | src: url(data:font/woff;charset=utf-8;base64,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) format('woff'); 4 | } 5 | 6 | .markdown-body { 7 | -ms-text-size-adjust: 100%; 8 | -webkit-text-size-adjust: 100%; 9 | line-height: 1.5; 10 | color: #24292e; 11 | font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; 12 | font-size: 14px; 13 | line-height: 1.5; 14 | word-wrap: break-word; 15 | } 16 | 17 | .markdown-body .pl-c { 18 | color: #969896; 19 | } 20 | 21 | .markdown-body .pl-c1, 22 | .markdown-body .pl-s .pl-v { 23 | color: #0086b3; 24 | } 25 | 26 | .markdown-body .pl-e, 27 | .markdown-body .pl-en { 28 | color: #795da3; 29 | } 30 | 31 | .markdown-body .pl-smi, 32 | .markdown-body .pl-s .pl-s1 { 33 | color: #333; 34 | } 35 | 36 | .markdown-body .pl-ent { 37 | color: #63a35c; 38 | } 39 | 40 | .markdown-body .pl-k { 41 | color: #a71d5d; 42 | } 43 | 44 | .markdown-body .pl-s, 45 | .markdown-body .pl-pds, 46 | .markdown-body .pl-s .pl-pse .pl-s1, 47 | .markdown-body .pl-sr, 48 | .markdown-body .pl-sr .pl-cce, 49 | .markdown-body .pl-sr .pl-sre, 50 | .markdown-body .pl-sr .pl-sra { 51 | color: #183691; 52 | } 53 | 54 | .markdown-body .pl-v, 55 | .markdown-body .pl-smw { 56 | color: #ed6a43; 57 | } 58 | 59 | .markdown-body .pl-bu { 60 | color: #b52a1d; 61 | } 62 | 63 | .markdown-body .pl-ii { 64 | color: #f8f8f8; 65 | background-color: #b52a1d; 66 | } 67 | 68 | .markdown-body .pl-c2 { 69 | color: #f8f8f8; 70 | background-color: #b52a1d; 71 | } 72 | 73 | .markdown-body .pl-c2::before { 74 | content: "^M"; 75 | } 76 | 77 | .markdown-body .pl-sr .pl-cce { 78 | font-weight: bold; 79 | color: #63a35c; 80 | } 81 | 82 | .markdown-body .pl-ml { 83 | color: #693a17; 84 | } 85 | 86 | .markdown-body .pl-mh, 87 | .markdown-body .pl-mh .pl-en, 88 | .markdown-body .pl-ms { 89 | font-weight: bold; 90 | color: #1d3e81; 91 | } 92 | 93 | .markdown-body .pl-mq { 94 | color: #008080; 95 | } 96 | 97 | .markdown-body .pl-mi { 98 | font-style: italic; 99 | color: #333; 100 | } 101 | 102 | .markdown-body .pl-mb { 103 | font-weight: bold; 104 | color: #333; 105 | } 106 | 107 | .markdown-body .pl-md { 108 | color: #bd2c00; 109 | background-color: #ffecec; 110 | } 111 | 112 | .markdown-body .pl-mi1 { 113 | color: #55a532; 114 | background-color: #eaffea; 115 | } 116 | 117 | .markdown-body .pl-mc { 118 | color: #ef9700; 119 | background-color: #ffe3b4; 120 | } 121 | 122 | .markdown-body .pl-mi2 { 123 | color: #d8d8d8; 124 | background-color: #808080; 125 | } 126 | 127 | .markdown-body .pl-mdr { 128 | font-weight: bold; 129 | color: #795da3; 130 | } 131 | 132 | .markdown-body .pl-mo { 133 | color: #1d3e81; 134 | } 135 | 136 | .markdown-body .pl-ba { 137 | color: #595e62; 138 | } 139 | 140 | .markdown-body .pl-sg { 141 | color: #c0c0c0; 142 | } 143 | 144 | .markdown-body .pl-corl { 145 | text-decoration: underline; 146 | color: #183691; 147 | } 148 | 149 | .markdown-body .octicon { 150 | display: inline-block; 151 | vertical-align: text-top; 152 | fill: currentColor; 153 | } 154 | 155 | .markdown-body a { 156 | background-color: transparent; 157 | -webkit-text-decoration-skip: objects; 158 | } 159 | 160 | .markdown-body a:active, 161 | .markdown-body a:hover { 162 | outline-width: 0; 163 | } 164 | 165 | .markdown-body strong { 166 | font-weight: inherit; 167 | } 168 | 169 | .markdown-body strong { 170 | font-weight: bolder; 171 | } 172 | 173 | .markdown-body h1 { 174 | font-size: 1.2em; 175 | margin: 0.67em 0; 176 | } 177 | 178 | .markdown-body img { 179 | border-style: none; 180 | } 181 | 182 | .markdown-body svg:not(:root) { 183 | overflow: hidden; 184 | } 185 | 186 | .markdown-body code, 187 | .markdown-body kbd, 188 | .markdown-body pre { 189 | font-family: monospace, monospace; 190 | font-size: 1em; 191 | } 192 | 193 | .markdown-body hr { 194 | box-sizing: content-box; 195 | height: 0; 196 | overflow: visible; 197 | } 198 | 199 | .markdown-body input { 200 | font: inherit; 201 | margin: 0; 202 | } 203 | 204 | .markdown-body input { 205 | overflow: visible; 206 | } 207 | 208 | .markdown-body [type="checkbox"] { 209 | box-sizing: border-box; 210 | padding: 0; 211 | } 212 | 213 | .markdown-body * { 214 | box-sizing: border-box; 215 | } 216 | 217 | .markdown-body input { 218 | font-family: inherit; 219 | font-size: inherit; 220 | line-height: inherit; 221 | } 222 | 223 | .markdown-body a { 224 | color: #0366d6; 225 | text-decoration: none; 226 | } 227 | 228 | .markdown-body a:hover { 229 | text-decoration: underline; 230 | } 231 | 232 | .markdown-body strong { 233 | font-weight: 600; 234 | } 235 | 236 | .markdown-body hr { 237 | height: 0; 238 | margin: 15px 0; 239 | overflow: hidden; 240 | background: transparent; 241 | border: 0; 242 | border-bottom: 1px solid #dfe2e5; 243 | } 244 | 245 | .markdown-body hr::before { 246 | display: table; 247 | content: ""; 248 | } 249 | 250 | .markdown-body hr::after { 251 | display: table; 252 | clear: both; 253 | content: ""; 254 | } 255 | 256 | .markdown-body table { 257 | border-spacing: 0; 258 | border-collapse: collapse; 259 | } 260 | 261 | .markdown-body td, 262 | .markdown-body th { 263 | padding: 0; 264 | } 265 | 266 | .markdown-body h1, 267 | .markdown-body h2, 268 | .markdown-body h3, 269 | .markdown-body h4, 270 | .markdown-body h5, 271 | .markdown-body h6 { 272 | margin-top: 0; 273 | margin-bottom: 0; 274 | } 275 | 276 | .markdown-body h1 { 277 | font-size: 20px; 278 | font-weight: 600; 279 | } 280 | 281 | .markdown-body h2 { 282 | font-size: 24px; 283 | font-weight: 600; 284 | } 285 | 286 | .markdown-body h3 { 287 | font-size: 20px; 288 | font-weight: 600; 289 | } 290 | 291 | .markdown-body h4 { 292 | font-size: 16px; 293 | font-weight: 600; 294 | } 295 | 296 | .markdown-body h5 { 297 | font-size: 14px; 298 | font-weight: 600; 299 | } 300 | 301 | .markdown-body h6 { 302 | font-size: 12px; 303 | font-weight: 600; 304 | } 305 | 306 | .markdown-body p { 307 | margin-top: 0; 308 | margin-bottom: 10px; 309 | } 310 | 311 | .markdown-body blockquote { 312 | margin: 0; 313 | } 314 | 315 | .markdown-body ul, 316 | .markdown-body ol { 317 | padding-left: 0; 318 | margin-top: 0; 319 | margin-bottom: 0; 320 | } 321 | 322 | .markdown-body ol ol, 323 | .markdown-body ul ol { 324 | list-style-type: lower-roman; 325 | } 326 | 327 | .markdown-body ul ul ol, 328 | .markdown-body ul ol ol, 329 | .markdown-body ol ul ol, 330 | .markdown-body ol ol ol { 331 | list-style-type: lower-alpha; 332 | } 333 | 334 | .markdown-body dd { 335 | margin-left: 0; 336 | } 337 | 338 | .markdown-body code { 339 | font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace; 340 | font-size: 12px; 341 | } 342 | 343 | .markdown-body pre { 344 | margin-top: 0; 345 | margin-bottom: 0; 346 | font: 12px "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace; 347 | } 348 | 349 | .markdown-body .octicon { 350 | vertical-align: text-bottom; 351 | } 352 | 353 | .markdown-body .pl-0 { 354 | padding-left: 0 !important; 355 | } 356 | 357 | .markdown-body .pl-1 { 358 | padding-left: 4px !important; 359 | } 360 | 361 | .markdown-body .pl-2 { 362 | padding-left: 8px !important; 363 | } 364 | 365 | .markdown-body .pl-3 { 366 | padding-left: 16px !important; 367 | } 368 | 369 | .markdown-body .pl-4 { 370 | padding-left: 24px !important; 371 | } 372 | 373 | .markdown-body .pl-5 { 374 | padding-left: 32px !important; 375 | } 376 | 377 | .markdown-body .pl-6 { 378 | padding-left: 40px !important; 379 | } 380 | 381 | .markdown-body::before { 382 | display: table; 383 | content: ""; 384 | } 385 | 386 | .markdown-body::after { 387 | display: table; 388 | clear: both; 389 | content: ""; 390 | } 391 | 392 | .markdown-body>*:first-child { 393 | margin-top: 0 !important; 394 | } 395 | 396 | .markdown-body>*:last-child { 397 | margin-bottom: 0 !important; 398 | } 399 | 400 | .markdown-body a:not([href]) { 401 | color: inherit; 402 | text-decoration: none; 403 | } 404 | 405 | .markdown-body .anchor { 406 | float: left; 407 | padding-right: 4px; 408 | margin-left: -20px; 409 | line-height: 1; 410 | } 411 | 412 | .markdown-body .anchor:focus { 413 | outline: none; 414 | } 415 | 416 | .markdown-body p, 417 | .markdown-body blockquote, 418 | .markdown-body ul, 419 | .markdown-body ol, 420 | .markdown-body dl, 421 | .markdown-body table, 422 | .markdown-body pre { 423 | margin-top: 0; 424 | margin-bottom: 16px; 425 | } 426 | 427 | .markdown-body hr { 428 | height: 0.25em; 429 | padding: 0; 430 | margin: 24px 0; 431 | background-color: #e1e4e8; 432 | border: 0; 433 | } 434 | 435 | .markdown-body blockquote { 436 | padding: 0 1em; 437 | color: #6a737d; 438 | border-left: 0.25em solid #dfe2e5; 439 | } 440 | 441 | .markdown-body blockquote>:first-child { 442 | margin-top: 0; 443 | } 444 | 445 | .markdown-body blockquote>:last-child { 446 | margin-bottom: 0; 447 | } 448 | 449 | .markdown-body kbd { 450 | display: inline-block; 451 | padding: 3px 5px; 452 | font-size: 11px; 453 | line-height: 10px; 454 | color: #444d56; 455 | vertical-align: middle; 456 | background-color: #fafbfc; 457 | border: solid 1px #c6cbd1; 458 | border-bottom-color: #959da5; 459 | border-radius: 3px; 460 | box-shadow: inset 0 -1px 0 #959da5; 461 | } 462 | 463 | .markdown-body h1, 464 | .markdown-body h2, 465 | .markdown-body h3, 466 | .markdown-body h4, 467 | .markdown-body h5, 468 | .markdown-body h6 { 469 | margin-top: 24px; 470 | margin-bottom: 16px; 471 | font-weight: 600; 472 | line-height: 1.25; 473 | } 474 | 475 | .markdown-body h1 .octicon-link, 476 | .markdown-body h2 .octicon-link, 477 | .markdown-body h3 .octicon-link, 478 | .markdown-body h4 .octicon-link, 479 | .markdown-body h5 .octicon-link, 480 | .markdown-body h6 .octicon-link { 481 | color: #1b1f23; 482 | vertical-align: middle; 483 | visibility: hidden; 484 | } 485 | 486 | .markdown-body h1:hover .anchor, 487 | .markdown-body h2:hover .anchor, 488 | .markdown-body h3:hover .anchor, 489 | .markdown-body h4:hover .anchor, 490 | .markdown-body h5:hover .anchor, 491 | .markdown-body h6:hover .anchor { 492 | text-decoration: none; 493 | } 494 | 495 | .markdown-body h1:hover .anchor .octicon-link, 496 | .markdown-body h2:hover .anchor .octicon-link, 497 | .markdown-body h3:hover .anchor .octicon-link, 498 | .markdown-body h4:hover .anchor .octicon-link, 499 | .markdown-body h5:hover .anchor .octicon-link, 500 | .markdown-body h6:hover .anchor .octicon-link { 501 | visibility: visible; 502 | } 503 | 504 | .markdown-body h1 { 505 | padding-bottom: 0.3em; 506 | font-size: 2em; 507 | border-bottom: 1px solid #eaecef; 508 | } 509 | 510 | .markdown-body h2 { 511 | padding-bottom: 0.3em; 512 | font-size: 1.5em; 513 | border-bottom: 1px solid #eaecef; 514 | } 515 | 516 | .markdown-body h3 { 517 | font-size: 1.25em; 518 | } 519 | 520 | .markdown-body h4 { 521 | font-size: 1em; 522 | } 523 | 524 | .markdown-body h5 { 525 | font-size: 0.875em; 526 | } 527 | 528 | .markdown-body h6 { 529 | font-size: 0.85em; 530 | color: #6a737d; 531 | } 532 | 533 | .markdown-body ul, 534 | .markdown-body ol { 535 | padding-left: 2em; 536 | } 537 | 538 | .markdown-body ul ul, 539 | .markdown-body ul ol, 540 | .markdown-body ol ol, 541 | .markdown-body ol ul { 542 | margin-top: 0; 543 | margin-bottom: 0; 544 | } 545 | 546 | .markdown-body li>p { 547 | margin-top: 16px; 548 | } 549 | 550 | .markdown-body li+li { 551 | margin-top: 0.25em; 552 | } 553 | 554 | .markdown-body dl { 555 | padding: 0; 556 | } 557 | 558 | .markdown-body dl dt { 559 | padding: 0; 560 | margin-top: 16px; 561 | font-size: 1em; 562 | font-style: italic; 563 | font-weight: 600; 564 | } 565 | 566 | .markdown-body dl dd { 567 | padding: 0 16px; 568 | margin-bottom: 16px; 569 | } 570 | 571 | .markdown-body table { 572 | display: block; 573 | width: 100%; 574 | overflow: auto; 575 | } 576 | 577 | .markdown-body table th { 578 | font-weight: 600; 579 | } 580 | 581 | .markdown-body table th, 582 | .markdown-body table td { 583 | padding: 6px 13px; 584 | border: 1px solid #dfe2e5; 585 | } 586 | 587 | .markdown-body table tr { 588 | background-color: #fff; 589 | border-top: 1px solid #c6cbd1; 590 | } 591 | 592 | .markdown-body table tr:nth-child(2n) { 593 | background-color: #f6f8fa; 594 | } 595 | 596 | .markdown-body img { 597 | max-width: 100%; 598 | box-sizing: content-box; 599 | background-color: #fff; 600 | } 601 | 602 | .markdown-body code { 603 | padding: 0; 604 | padding-top: 0.2em; 605 | padding-bottom: 0.2em; 606 | margin: 0; 607 | font-size: 85%; 608 | background-color: rgba(27,31,35,0.05); 609 | border-radius: 3px; 610 | } 611 | 612 | .markdown-body code::before, 613 | .markdown-body code::after { 614 | letter-spacing: -0.2em; 615 | content: "\00a0"; 616 | } 617 | 618 | .markdown-body pre { 619 | word-wrap: normal; 620 | } 621 | 622 | .markdown-body pre>code { 623 | padding: 0; 624 | margin: 0; 625 | font-size: 100%; 626 | word-break: normal; 627 | white-space: pre; 628 | background: transparent; 629 | border: 0; 630 | } 631 | 632 | .markdown-body .highlight { 633 | margin-bottom: 16px; 634 | } 635 | 636 | .markdown-body .highlight pre { 637 | margin-bottom: 0; 638 | word-break: normal; 639 | } 640 | 641 | .markdown-body .highlight pre, 642 | .markdown-body pre { 643 | padding: 16px; 644 | overflow: auto; 645 | font-size: 85%; 646 | line-height: 1.45; 647 | background-color: #f6f8fa; 648 | border-radius: 3px; 649 | } 650 | 651 | .markdown-body pre code { 652 | display: inline; 653 | max-width: auto; 654 | padding: 0; 655 | margin: 0; 656 | overflow: visible; 657 | line-height: inherit; 658 | word-wrap: normal; 659 | background-color: transparent; 660 | border: 0; 661 | } 662 | 663 | .markdown-body pre code::before, 664 | .markdown-body pre code::after { 665 | content: normal; 666 | } 667 | 668 | .markdown-body .full-commit .btn-outline:not(:disabled):hover { 669 | color: #005cc5; 670 | border-color: #005cc5; 671 | } 672 | 673 | .markdown-body kbd { 674 | display: inline-block; 675 | padding: 3px 5px; 676 | font: 11px "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace; 677 | line-height: 10px; 678 | color: #444d56; 679 | vertical-align: middle; 680 | background-color: #fcfcfc; 681 | border: solid 1px #c6cbd1; 682 | border-bottom-color: #959da5; 683 | border-radius: 3px; 684 | box-shadow: inset 0 -1px 0 #959da5; 685 | } 686 | 687 | .markdown-body :checked+.radio-label { 688 | position: relative; 689 | z-index: 1; 690 | border-color: #0366d6; 691 | } 692 | 693 | .markdown-body .task-list-item { 694 | list-style-type: none; 695 | } 696 | 697 | .markdown-body .task-list-item+.task-list-item { 698 | margin-top: 3px; 699 | } 700 | 701 | .markdown-body .task-list-item input { 702 | margin: 0 0.2em 0.25em -1.6em; 703 | vertical-align: middle; 704 | } 705 | 706 | .markdown-body hr { 707 | border-bottom-color: #eee; 708 | } 709 | -------------------------------------------------------------------------------- /docs/static/js/app.js: -------------------------------------------------------------------------------- 1 | webpackJsonp([1],{ 2 | 3 | /***/ 12: 4 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 5 | 6 | "use strict"; 7 | /* harmony export (immutable) */ __webpack_exports__["a"] = timeFormat; 8 | function timeFormat(_date) { 9 | const date = new Date(_date); 10 | const year = date.getFullYear(); 11 | const month = ('0' + (date.getMonth() + 1)).slice(-2); 12 | const day = ('0' + date.getDate()).slice(-2); 13 | const months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun ', 'Jul ', 'Aug ', 'Sep ', 'Oct', 'Nov', 'Dec']; 14 | return year + '-' + month + '-' + day; 15 | //return return months[date.getMonth()] +' '+ day+ ', ' + year; 16 | } 17 | 18 | /***/ }), 19 | 20 | /***/ 13: 21 | /***/ (function(module, exports, __webpack_require__) { 22 | 23 | 24 | /* styles */ 25 | __webpack_require__(49) 26 | 27 | var Component = __webpack_require__(2)( 28 | /* script */ 29 | __webpack_require__(35), 30 | /* template */ 31 | __webpack_require__(234), 32 | /* scopeId */ 33 | null, 34 | /* cssModules */ 35 | null 36 | ) 37 | 38 | module.exports = Component.exports 39 | 40 | 41 | /***/ }), 42 | 43 | /***/ 14: 44 | /***/ (function(module, exports, __webpack_require__) { 45 | 46 | 47 | /* styles */ 48 | __webpack_require__(48) 49 | 50 | var Component = __webpack_require__(2)( 51 | /* script */ 52 | __webpack_require__(38), 53 | /* template */ 54 | __webpack_require__(233), 55 | /* scopeId */ 56 | "data-v-6e8c0b78", 57 | /* cssModules */ 58 | null 59 | ) 60 | 61 | module.exports = Component.exports 62 | 63 | 64 | /***/ }), 65 | 66 | /***/ 15: 67 | /***/ (function(module, exports, __webpack_require__) { 68 | 69 | 70 | /* styles */ 71 | __webpack_require__(46) 72 | 73 | var Component = __webpack_require__(2)( 74 | /* script */ 75 | __webpack_require__(39), 76 | /* template */ 77 | __webpack_require__(231), 78 | /* scopeId */ 79 | "data-v-1966b86a", 80 | /* cssModules */ 81 | null 82 | ) 83 | 84 | module.exports = Component.exports 85 | 86 | 87 | /***/ }), 88 | 89 | /***/ 230: 90 | /***/ (function(module, exports, __webpack_require__) { 91 | 92 | 93 | /* styles */ 94 | __webpack_require__(50) 95 | 96 | var Component = __webpack_require__(2)( 97 | /* script */ 98 | __webpack_require__(36), 99 | /* template */ 100 | __webpack_require__(235), 101 | /* scopeId */ 102 | "data-v-aeb149d6", 103 | /* cssModules */ 104 | null 105 | ) 106 | 107 | module.exports = Component.exports 108 | 109 | 110 | /***/ }), 111 | 112 | /***/ 231: 113 | /***/ (function(module, exports) { 114 | 115 | module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; 116 | return _c('div', { 117 | staticClass: "container" 118 | }, [_c('main-header', { 119 | attrs: { 120 | "mytitle": _vm.post.title, 121 | "mydes": _vm.post.created_at 122 | } 123 | }), _vm._v(" "), _c('article', [_c('p', { 124 | staticClass: "content markdown-body", 125 | domProps: { 126 | "innerHTML": _vm._s(_vm.post.body) 127 | } 128 | }), _vm._v(" "), _c('div', { 129 | staticClass: "coms" 130 | }, [_c('div', { 131 | staticClass: "leave" 132 | }, [_c('a', { 133 | attrs: { 134 | "href": _vm.post.html_url 135 | } 136 | }, [_vm._v("leave a comment")])]), _vm._v(" "), _c('div', { 137 | staticClass: "com_area" 138 | }, _vm._l((_vm.coms), function(c) { 139 | return _c('div', { 140 | staticClass: "com" 141 | }, [_c('a', { 142 | attrs: { 143 | "href": c.html_url, 144 | "target": "_blank" 145 | } 146 | }, [_c('img', { 147 | attrs: { 148 | "src": c.user.avatar_url 149 | } 150 | })]), _vm._v(" "), _c('p', [_vm._v(_vm._s(c.body) + "\n ")])]) 151 | }))])])], 1) 152 | },staticRenderFns: []} 153 | 154 | /***/ }), 155 | 156 | /***/ 232: 157 | /***/ (function(module, exports) { 158 | 159 | module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; 160 | return _c('header', [_c('nav', [_c('ul', _vm._l((_vm.nav), function(item) { 161 | return _c('li', [_c('a', { 162 | attrs: { 163 | "href": item.url, 164 | "target": "_blank" 165 | } 166 | }, [_vm._v(_vm._s(item.name))])]) 167 | })), _vm._v(" "), _c('router-link', { 168 | staticClass: "logo", 169 | attrs: { 170 | "to": "/" 171 | } 172 | }, [_vm._v(_vm._s(_vm.blog.title))])], 1), _vm._v(" "), _c('section', { 173 | staticClass: "meta" 174 | }, [(_vm.mytitle) ? [_c('h1', [_vm._v(_vm._s(_vm.mytitle))]), _vm._v(" "), _c('p', [_vm._v(_vm._s(_vm.mydes))])] : [_c('h1', [_vm._v(_vm._s(_vm.blog.welcome))]), _vm._v(" "), _c('p', [_vm._v(_vm._s(_vm.blog.detail))])]], 2)]) 175 | },staticRenderFns: []} 176 | 177 | /***/ }), 178 | 179 | /***/ 233: 180 | /***/ (function(module, exports) { 181 | 182 | module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; 183 | return _c('div', { 184 | staticClass: "container" 185 | }, [_c('main-header'), _vm._v(" "), _c('div', { 186 | staticClass: "home" 187 | }, [_vm._l((_vm.pin_posts), function(p) { 188 | return _c('div', { 189 | staticClass: "post" 190 | }, [_c('div', { 191 | staticClass: "meta" 192 | }, [_c('span', { 193 | staticClass: "date" 194 | }, [_vm._v(_vm._s(p.date))]), _vm._v(" "), _c('span', { 195 | staticClass: "labels" 196 | }, _vm._l((p.labels), function(label) { 197 | return _c('a', [_vm._v(_vm._s(label.name))]) 198 | }))]), _vm._v(" "), _c('div', [_c('span', { 199 | staticClass: "top" 200 | }, [_vm._v("pin!")]), _vm._v(" "), _c('router-link', { 201 | attrs: { 202 | "to": { 203 | path: '/post/' + p.number 204 | } 205 | } 206 | }, [_vm._v(_vm._s(p.title))])], 1)]) 207 | }), _vm._v(" "), _c('hr'), _vm._v(" "), _vm._l((_vm.posts), function(p) { 208 | return _c('div', { 209 | staticClass: "post" 210 | }, [_c('div', { 211 | staticClass: "meta" 212 | }, [_c('span', { 213 | staticClass: "date" 214 | }, [_vm._v(_vm._s(p.date))]), _vm._v(" "), _c('span', { 215 | staticClass: "labels" 216 | }, _vm._l((p.labels), function(label) { 217 | return _c('a', [_vm._v(_vm._s(label.name))]) 218 | }))]), _vm._v(" "), _c('router-link', { 219 | attrs: { 220 | "to": { 221 | path: '/post/' + p.number 222 | } 223 | } 224 | }, [_vm._v(_vm._s(p.title))])], 1) 225 | })], 2)], 1) 226 | },staticRenderFns: []} 227 | 228 | /***/ }), 229 | 230 | /***/ 234: 231 | /***/ (function(module, exports) { 232 | 233 | module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; 234 | return _c('div', [_c('router-view'), _vm._v(" "), _c('main-footer')], 1) 235 | },staticRenderFns: []} 236 | 237 | /***/ }), 238 | 239 | /***/ 235: 240 | /***/ (function(module, exports) { 241 | 242 | module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h; 243 | return _c('footer', [_vm._v("\n Presented by "), _c('a', { 244 | attrs: { 245 | "href": "https://github.com/cogons/issvue" 246 | } 247 | }, [_vm._v("issvue")]), _vm._v(" & "), _c('a', { 248 | attrs: { 249 | "href": _vm.url 250 | } 251 | }, [_vm._v(_vm._s(_vm.owner))])]) 252 | },staticRenderFns: []} 253 | 254 | /***/ }), 255 | 256 | /***/ 35: 257 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 258 | 259 | "use strict"; 260 | Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); 261 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_main_header_vue__ = __webpack_require__(6); 262 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__components_main_header_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__components_main_header_vue__); 263 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_main_footer_vue__ = __webpack_require__(230); 264 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__components_main_footer_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__components_main_footer_vue__); 265 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios__ = __webpack_require__(3); 266 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_axios__); 267 | // 268 | // 269 | // 270 | // 271 | // 272 | // 273 | // 274 | 275 | 276 | 277 | 278 | 279 | /* harmony default export */ __webpack_exports__["default"] = ({ 280 | name: 'app', 281 | components: { 282 | MainHeader: __WEBPACK_IMPORTED_MODULE_0__components_main_header_vue___default.a, 283 | MainFooter: __WEBPACK_IMPORTED_MODULE_1__components_main_footer_vue___default.a 284 | } 285 | }); 286 | 287 | /***/ }), 288 | 289 | /***/ 36: 290 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 291 | 292 | "use strict"; 293 | Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); 294 | /* WEBPACK VAR INJECTION */(function(global) {// 295 | // 296 | // 297 | // 298 | // 299 | // 300 | 301 | //import config from '../config' 302 | /* harmony default export */ __webpack_exports__["default"] = ({ 303 | name: 'main-footer', 304 | data: function () { 305 | return { 306 | owner: 'issvue', 307 | url: 'https://github.com/' 308 | }; 309 | }, 310 | created: function () { 311 | 312 | const vm = this; 313 | const cfg = global.cfg; 314 | 315 | vm.owner = cfg.repo.user; 316 | vm.url += cfg.repo.user; 317 | } }); 318 | /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1))) 319 | 320 | /***/ }), 321 | 322 | /***/ 37: 323 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 324 | 325 | "use strict"; 326 | Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); 327 | /* WEBPACK VAR INJECTION */(function(global) {// 328 | // 329 | // 330 | // 331 | // 332 | // 333 | // 334 | // 335 | // 336 | // 337 | // 338 | // 339 | // 340 | // 341 | // 342 | // 343 | // 344 | // 345 | // 346 | // 347 | // 348 | // 349 | // 350 | // 351 | // 352 | // 353 | 354 | 355 | /* harmony default export */ __webpack_exports__["default"] = ({ 356 | name: 'main-header', 357 | props: ['mytitle', 'mydes'], 358 | data: function () { 359 | return { 360 | nav: {}, 361 | blog: {} 362 | }; 363 | }, 364 | created: function () { 365 | 366 | const vm = this; 367 | const cfg = global.cfg; 368 | 369 | vm.nav = cfg.nav; 370 | vm.blog = cfg.blog; 371 | } 372 | }); 373 | /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1))) 374 | 375 | /***/ }), 376 | 377 | /***/ 38: 378 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 379 | 380 | "use strict"; 381 | Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); 382 | /* WEBPACK VAR INJECTION */(function(global) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__io__ = __webpack_require__(4); 383 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__utils_utils__ = __webpack_require__(12); 384 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_main_header_vue__ = __webpack_require__(6); 385 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__components_main_header_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__components_main_header_vue__); 386 | // 387 | // 388 | // 389 | // 390 | // 391 | // 392 | // 393 | // 394 | // 395 | // 396 | // 397 | // 398 | // 399 | // 400 | // 401 | // 402 | // 403 | // 404 | // 405 | // 406 | // 407 | // 408 | // 409 | // 410 | // 411 | // 412 | // 413 | // 414 | // 415 | 416 | 417 | 418 | 419 | 420 | /* harmony default export */ __webpack_exports__["default"] = ({ 421 | name: 'home', 422 | components: { 423 | MainHeader: __WEBPACK_IMPORTED_MODULE_2__components_main_header_vue___default.a 424 | }, 425 | data: function () { 426 | return { 427 | posts: [], 428 | pin_posts: [] 429 | 430 | }; 431 | }, 432 | beforeCreate: function () { 433 | document.title = global.cfg.blog.title; 434 | }, 435 | mounted: function () { 436 | const vm = this; 437 | const cfg = global.cfg; 438 | __WEBPACK_IMPORTED_MODULE_0__io__["b" /* getIssue */]().then(this.filter); 439 | }, 440 | methods: { 441 | 442 | getPin: function (posts, pos) { 443 | let l = pos.length; 444 | return posts.filter(p => { 445 | if (p.number == pos[l - 1]) { 446 | return l--; 447 | } else return false; 448 | }); 449 | }, 450 | getAuthor: function () { 451 | var author = {}; 452 | cfg.repo.authors.map(function (x) { 453 | author[x] = true; 454 | }); 455 | return author; 456 | }, 457 | format: function (p) { 458 | var obj = { 459 | title: p.title, 460 | number: p.number, 461 | date: __WEBPACK_IMPORTED_MODULE_1__utils_utils__["a" /* timeFormat */](p.created_at), 462 | labels: p.labels 463 | }; 464 | return obj; 465 | }, 466 | filter: function (posts) { 467 | const vm = this; 468 | const cfg = global.cfg; 469 | var res = []; 470 | const author = this.getAuthor(); 471 | const pin = cfg.pin; 472 | var l = pin.length; 473 | posts.map(function (p) { 474 | if (author[p.user.login]) { 475 | if (p.number == cfg.pin[l - 1]) { 476 | 477 | vm.pin_posts.push({ 478 | title: p.title, 479 | number: p.number, 480 | date: __WEBPACK_IMPORTED_MODULE_1__utils_utils__["a" /* timeFormat */](p.created_at), 481 | labels: p.labels 482 | }); 483 | l--; 484 | } else { 485 | vm.posts.push({ 486 | title: p.title, 487 | number: p.number, 488 | date: __WEBPACK_IMPORTED_MODULE_1__utils_utils__["a" /* timeFormat */](p.created_at), 489 | labels: p.labels 490 | }); 491 | } 492 | } 493 | }); 494 | } 495 | } 496 | }); 497 | /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1))) 498 | 499 | /***/ }), 500 | 501 | /***/ 39: 502 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 503 | 504 | "use strict"; 505 | Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); 506 | /* WEBPACK VAR INJECTION */(function(global) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__io__ = __webpack_require__(4); 507 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__utils_utils__ = __webpack_require__(12); 508 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__assets_css_github_markdown_css__ = __webpack_require__(45); 509 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__assets_css_github_markdown_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__assets_css_github_markdown_css__); 510 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_marked__ = __webpack_require__(228); 511 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_marked___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_marked__); 512 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_highlight_js__ = __webpack_require__(52); 513 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_highlight_js___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_highlight_js__); 514 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_highlight_js_styles_googlecode_css__ = __webpack_require__(44); 515 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_highlight_js_styles_googlecode_css___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_highlight_js_styles_googlecode_css__); 516 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_main_header_vue__ = __webpack_require__(6); 517 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__components_main_header_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6__components_main_header_vue__); 518 | // 519 | // 520 | // 521 | // 522 | // 523 | // 524 | // 525 | // 526 | // 527 | // 528 | // 529 | // 530 | // 531 | // 532 | // 533 | // 534 | // 535 | // 536 | // 537 | // 538 | // 539 | // 540 | 541 | 542 | 543 | 544 | 545 | 546 | 547 | 548 | 549 | /* harmony default export */ __webpack_exports__["default"] = ({ 550 | name: 'post', 551 | components: { 552 | MainHeader: __WEBPACK_IMPORTED_MODULE_6__components_main_header_vue___default.a 553 | }, 554 | beforeCreate: function () { 555 | document.title = global.cfg.blog.title; 556 | }, 557 | data: function () { 558 | return { 559 | post: {}, 560 | coms: [] 561 | }; 562 | }, 563 | mounted: function () { 564 | const vm = this; 565 | const id = vm.$route.params.id; 566 | __WEBPACK_IMPORTED_MODULE_3_marked___default.a.setOptions({ 567 | highlight: code => __WEBPACK_IMPORTED_MODULE_4_highlight_js___default.a.highlightAuto(code).value 568 | }); 569 | __WEBPACK_IMPORTED_MODULE_0__io__["b" /* getIssue */](id).then(function (res) { 570 | vm.post = res.filter(p => { 571 | return p.number == id; 572 | })[0]; 573 | document.title = vm.post.title + " - " + global.cfg.blog.title; 574 | vm.post.body = __WEBPACK_IMPORTED_MODULE_3_marked___default()(vm.post.body); 575 | vm.post.created_at = __WEBPACK_IMPORTED_MODULE_1__utils_utils__["a" /* timeFormat */](vm.post.created_at); 576 | }); 577 | __WEBPACK_IMPORTED_MODULE_0__io__["c" /* getComs */](id).then(function (res) { 578 | vm.coms = res; 579 | }); 580 | } 581 | }); 582 | /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1))) 583 | 584 | /***/ }), 585 | 586 | /***/ 4: 587 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 588 | 589 | "use strict"; 590 | /* WEBPACK VAR INJECTION */(function(global) {/* harmony export (immutable) */ __webpack_exports__["a"] = init; 591 | /* harmony export (immutable) */ __webpack_exports__["b"] = getIssue; 592 | /* harmony export (immutable) */ __webpack_exports__["c"] = getComs; 593 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios__ = __webpack_require__(3); 594 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_axios__); 595 | 596 | 597 | var api = 'https://api.github.com/repos/'; 598 | 599 | function init() { 600 | 601 | const url = "./static/config.json"; 602 | 603 | if (!getSession('conf')) { 604 | return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get(url).then(conf => { 605 | console.dir('conf from axios'); 606 | setSession('conf', conf.data); 607 | global.COURSES = 'xxxxx'; 608 | return conf.data; 609 | }).catch(error => { 610 | console.log(error); 611 | }); 612 | } else { 613 | return new Promise(function (resolve, reject) { 614 | console.dir('conf from ss'); 615 | resolve(getSession('conf')); 616 | }); 617 | } 618 | } 619 | 620 | function setSession(key, val) { 621 | return sessionStorage.setItem(key, JSON.stringify(val)); 622 | } 623 | 624 | function getSession(key) { 625 | return JSON.parse(sessionStorage.getItem(key)); 626 | } 627 | 628 | function getIssue() { 629 | const cfg = global.cfg; 630 | const url = api + cfg.repo.user + '/' + cfg.repo.repo + '/issues' + '?token=' + cfg.repo.read_only_token; 631 | if (!getSession('res')) { 632 | return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get(url).then(res => { 633 | console.dir('from axios'); 634 | setSession('res', res.data); 635 | return res.data; 636 | }).catch(error => { 637 | console.log(error); 638 | }); 639 | } else { 640 | return new Promise(function (resolve, reject) { 641 | console.dir('from ss'); 642 | resolve(getSession('res')); 643 | }); 644 | } 645 | } 646 | 647 | function getComs(id) { 648 | const cfg = global.cfg; 649 | const url = api + cfg.repo.user + '/' + cfg.repo.repo + '/issues/' + id + '/comments' + '?token=' + cfg.repo.read_only_token; 650 | if (!getSession('c' + id)) { 651 | return __WEBPACK_IMPORTED_MODULE_0_axios___default.a.get(url).then(res => { 652 | console.dir('from axios'); 653 | setSession('c' + id, res.data); 654 | return res.data; 655 | }).catch(error => { 656 | console.log(error); 657 | }); 658 | } else { 659 | return new Promise(function (resolve, reject) { 660 | console.dir('from ss'); 661 | resolve(getSession('c' + id)); 662 | }); 663 | } 664 | } 665 | /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1))) 666 | 667 | /***/ }), 668 | 669 | /***/ 40: 670 | /***/ (function(module, __webpack_exports__, __webpack_require__) { 671 | 672 | "use strict"; 673 | Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); 674 | /* WEBPACK VAR INJECTION */(function(global) {/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_vue__ = __webpack_require__(17); 675 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__app__ = __webpack_require__(13); 676 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__app___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__app__); 677 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_vue_router__ = __webpack_require__(16); 678 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__pages_index_vue__ = __webpack_require__(14); 679 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__pages_index_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__pages_index_vue__); 680 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__pages_post_vue__ = __webpack_require__(15); 681 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__pages_post_vue___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__pages_post_vue__); 682 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__io__ = __webpack_require__(4); 683 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_axios__ = __webpack_require__(3); 684 | /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_axios___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_axios__); 685 | 686 | 687 | 688 | 689 | 690 | 691 | 692 | 693 | __WEBPACK_IMPORTED_MODULE_0_vue__["a" /* default */].use(__WEBPACK_IMPORTED_MODULE_2_vue_router__["a" /* default */]); 694 | 695 | const routes = [{ path: '/', component: __WEBPACK_IMPORTED_MODULE_3__pages_index_vue___default.a }, { path: '/post/:id', component: __WEBPACK_IMPORTED_MODULE_4__pages_post_vue___default.a }]; 696 | 697 | const router = new __WEBPACK_IMPORTED_MODULE_2_vue_router__["a" /* default */]({ 698 | routes 699 | }); 700 | 701 | __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_5__io__["a" /* init */])().then(cfg => global.cfg = cfg).then(function () { 702 | new __WEBPACK_IMPORTED_MODULE_0_vue__["a" /* default */]({ 703 | el: '#app', 704 | router, 705 | render: h => h(__WEBPACK_IMPORTED_MODULE_1__app___default.a) 706 | }); 707 | }); 708 | /* WEBPACK VAR INJECTION */}.call(__webpack_exports__, __webpack_require__(1))) 709 | 710 | /***/ }), 711 | 712 | /***/ 44: 713 | /***/ (function(module, exports) { 714 | 715 | // removed by extract-text-webpack-plugin 716 | 717 | /***/ }), 718 | 719 | /***/ 45: 720 | /***/ (function(module, exports) { 721 | 722 | // removed by extract-text-webpack-plugin 723 | 724 | /***/ }), 725 | 726 | /***/ 46: 727 | /***/ (function(module, exports) { 728 | 729 | // removed by extract-text-webpack-plugin 730 | 731 | /***/ }), 732 | 733 | /***/ 47: 734 | /***/ (function(module, exports) { 735 | 736 | // removed by extract-text-webpack-plugin 737 | 738 | /***/ }), 739 | 740 | /***/ 48: 741 | /***/ (function(module, exports) { 742 | 743 | // removed by extract-text-webpack-plugin 744 | 745 | /***/ }), 746 | 747 | /***/ 49: 748 | /***/ (function(module, exports) { 749 | 750 | // removed by extract-text-webpack-plugin 751 | 752 | /***/ }), 753 | 754 | /***/ 50: 755 | /***/ (function(module, exports) { 756 | 757 | // removed by extract-text-webpack-plugin 758 | 759 | /***/ }), 760 | 761 | /***/ 6: 762 | /***/ (function(module, exports, __webpack_require__) { 763 | 764 | 765 | /* styles */ 766 | __webpack_require__(47) 767 | 768 | var Component = __webpack_require__(2)( 769 | /* script */ 770 | __webpack_require__(37), 771 | /* template */ 772 | __webpack_require__(232), 773 | /* scopeId */ 774 | "data-v-6c4c81f2", 775 | /* cssModules */ 776 | null 777 | ) 778 | 779 | module.exports = Component.exports 780 | 781 | 782 | /***/ }) 783 | 784 | },[40]); --------------------------------------------------------------------------------