| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 | 
							- <!doctype html>
 
- <html lang="en">
 
- <head>
 
-   <meta charset="UTF-8">
 
-   <meta name="viewport"
 
-         content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 
-   <meta http-equiv="X-UA-Compatible" content="ie=edge">
 
-   <title>Logseq Marketplace</title>
 
-   <link rel="stylesheet"
 
-         href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/4.0.0/github-markdown.min.css"
 
-         integrity="sha512-Oy18vBnbSJkXTndr2n6lDMO5NN31UljR8e/ICzVPrGpSud4Gkckb8yUpqhKuUNoE+o9gAb4O/rAxxw1ojyUVzg=="
 
-         crossorigin="anonymous" referrerpolicy="no-referrer"/>
 
-   <style>
 
-     html, body {
 
-       padding: 0;
 
-       margin: 0;
 
-       box-sizing: border-box;
 
-       font-family: sans-serif;
 
-       width: 100%;
 
-       min-height: 100%;
 
-     }
 
-  
 
-       html::-webkit-scrollbar-thumb {
 
-         background-color: rgba(0, 0, 0, 0.1);
 
-       }
 
-       html::-webkit-scrollbar {
 
-         background-color: rgba(0, 0, 0, 0.05);
 
-       }
 
-       html::-webkit-scrollbar-thumb:active {
 
-         background-color: rgba(0, 0, 0, 0.2);
 
-       }
 
-       html::-webkit-scrollbar {
 
-         width: 6px;
 
-         height: 8px;
 
-       }
 
-       html::-webkit-scrollbar-corner {
 
-         background: transparent;
 
-       }
 
-     
 
-     body {
 
-       display: flex;
 
-     }
 
-     #app {
 
-       display: flex;
 
-       justify-content: center;
 
-       flex: 1;
 
-       width: 900px;
 
-       min-height: 100%;
 
-       padding: 30px;
 
-       margin: 0 auto;
 
-       color: #333;
 
-     }
 
-     #app > strong {
 
-       padding-top: 30vh;
 
-       font-weight: 400;
 
-     }
 
-     pre {
 
-       max-width: 800px;
 
-     }
 
-   </style>
 
- </head>
 
- <body>
 
- <div id="app"></div>
 
- <script src="./js/marked.min.js"></script>
 
- <script>
 
-   ;(async function () {
 
-     const app = document.getElementById('app')
 
-     const url = new URL(location.href)
 
-     const setMsg = (msg) => app.innerHTML = `<strong>${msg}</strong>`
 
-     const repo = url.searchParams.get('repo')
 
-     if (!repo) {
 
-       return setMsg('Repo parameter not found!')
 
-     }
 
-     const setContent = (content) => app.innerHTML = `<main class="markdown-body">${content}</main>`
 
-     const endpoint = (repo, branch, file) => `https://raw.githubusercontent.com/${repo}/${branch}/${file}`
 
-     let content = ''
 
-     let points = [
 
-       endpoint(repo, 'master', 'README.md'), endpoint(repo, 'main', 'README.md'),
 
-       endpoint(repo, 'master', 'readme.md'), endpoint(repo, 'main', 'readme.md')]
 
-     let readme
 
-     setMsg('Loading ...')
 
-     for (let url of points) {
 
-       try {
 
-         const res = await fetch(url)
 
-         if (res.status !== 200) {
 
-           throw new Error(res.statusText)
 
-         }
 
-         content = await res.text()
 
-         readme = url
 
-         break
 
-       } catch (e) {
 
-         console.debug('Error:', url, e.message)
 
-       }
 
-     }
 
-     const fixLink = (link) => readme.replace(/README\.md$/i, link)
 
-     const isRelative = (href) => href && !href.startsWith('http') && !!href.match(/^([.\/]+|[^\/]+)/) && href.replace(/^[.\/]+/, '')
 
-     marked.use({
 
-       renderer: {
 
-         link (href, title, text) {
 
-           return `<a href="${href}" target="_blank" title="${title}">${text}</a>`
 
-         },
 
-         image (href, title, text) {
 
-           let link = isRelative(href)
 
-           if (link) {
 
-             link = fixLink(link)
 
-             return `<img style="max-width: 100%;" src="${link}" alt="${title}" />`
 
-           }
 
-           return false
 
-         }
 
-       }
 
-     })
 
-     content = marked(content).replace('src="./', `src="${fixLink('')}`)
 
-     setContent(content)
 
-   }())
 
- </script>
 
- </body>
 
- </html>
 
 
  |