From 231964080b26b3b3cab91b2c6144a784d3bef99d Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Sun, 14 Jun 2020 00:06:35 +0800 Subject: In-post APlayer now support multiple files --- assets/scss/_fuji-theme/_dark-diff.scss | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'assets') diff --git a/assets/scss/_fuji-theme/_dark-diff.scss b/assets/scss/_fuji-theme/_dark-diff.scss index 55f596f..d5821a8 100644 --- a/assets/scss/_fuji-theme/_dark-diff.scss +++ b/assets/scss/_fuji-theme/_dark-diff.scss @@ -33,3 +33,24 @@ table { .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon:hover path { fill: var(--color-focus) !important; } + +.aplayer .aplayer-list ol li { + border-top: 1px solid var(--color-bg) !important; +} + +.aplayer.aplayer-withlist .aplayer-info { + border-bottom: 1px solid var(--color-bg) !important; +} + +.aplayer .aplayer-list ol li.aplayer-list-light { + background-color: var(--color-codebg) !important; +} + +.aplayer .aplayer-list ol li:hover { + background-color: var(--color-codebg) !important; +} + +.aplayer .aplayer-list ol li .aplayer-list-author, +.aplayer .aplayer-list ol li .aplayer-list-index { + color: var(--color-font) !important; +} -- cgit v1.2.3 From 89fc2917985d3da944af8116e101748267d66104 Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Sun, 14 Jun 2020 23:17:37 +0800 Subject: Remove medium-zoom --- assets/js/fuji.js | 31 ------------------------------- 1 file changed, 31 deletions(-) (limited to 'assets') diff --git a/assets/js/fuji.js b/assets/js/fuji.js index 4bc9d56..b72c30e 100644 --- a/assets/js/fuji.js +++ b/assets/js/fuji.js @@ -10,23 +10,6 @@ function getNowTheme() { } } -// update medium-zoom theme -function updateMeidumTheme(mediumInst) { - let targetTheme = getNowTheme(); - if (mediumInst) { - mediumInst.detach(); - if (targetTheme === 'dark') { - mediumInst = mediumZoom('.img-zoomable', { - background: '#2f3136', - }); - } else { - mediumInst = mediumZoom('.img-zoomable', { - background: '#fffffd', - }); - } - } -} - // update utterances theme function updateUtterancesTheme(utterancesFrame) { let targetTheme = getNowTheme(); @@ -61,18 +44,6 @@ document.querySelector('.btn .btn-scroll-top').addEventListener('click', () => { document.documentElement.scrollTop = 0; }); -// init medium-zoom -var mediumInst; // medium-zoom instance -if (getNowTheme() === 'dark') { - mediumInst = mediumZoom('.img-zoomable', { - background: '#2f3136', - }); -} else { - mediumInst = mediumZoom('.img-zoomable', { - background: '#fffffd', - }); -} - // theme switch button document.querySelector('.btn .btn-toggle-mode').addEventListener('click', () => { let nowTheme = getNowTheme(); @@ -95,8 +66,6 @@ document.querySelector('.btn .btn-toggle-mode').addEventListener('click', () => localStorage.setItem('fuji_data-theme', systemTheme === 'light' ? 'auto' : 'light'); } - // update medium background - updateMeidumTheme(mediumInst); // switch comment area theme // if this page has comment area let commentArea = document.querySelector('.post-comment'); -- cgit v1.2.3 From d0569100c68fc2dd9c7fae4d91915fd49da8d71f Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Mon, 15 Jun 2020 14:13:02 +0800 Subject: Search page template --- assets/scss/_fuji-style/_content.scss | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'assets') diff --git a/assets/scss/_fuji-style/_content.scss b/assets/scss/_fuji-style/_content.scss index 03add33..bc3e579 100644 --- a/assets/scss/_fuji-style/_content.scss +++ b/assets/scss/_fuji-style/_content.scss @@ -85,6 +85,20 @@ .page-info { padding: 0 0.1rem 1.5rem 0.1rem; + + // search page part + .search-form { + display: flex; + } + + .search-input { + flex: 1 1 auto; + + input { + width: 100%; + max-width: 100%; + } + } } // single page part -- cgit v1.2.3 From a3376d1ad133455b73ca893e222c1aec89ae6d44 Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Mon, 15 Jun 2020 23:50:54 +0800 Subject: Update searching based on Fuse.js --- assets/js/fuji.js | 37 +++++++++++++++++++++++++++++++++++ assets/scss/_fuji-style/_content.scss | 4 ++++ 2 files changed, 41 insertions(+) (limited to 'assets') diff --git a/assets/js/fuji.js b/assets/js/fuji.js index b72c30e..d1be458 100644 --- a/assets/js/fuji.js +++ b/assets/js/fuji.js @@ -83,3 +83,40 @@ document.querySelector('.btn .btn-toggle-mode').addEventListener('click', () => } } }); + +// search by fuse.js +function searchAll(key, index) { + let fuse = new Fuse(index, { + keys: ['title', 'tags'], + }); + let result = fuse.search(key); + console.log(result); + if (result.length > 0) { + document.getElementById('search-result').innerHTML = template('search-result-template', result); + } +} + +let urlParams = new URLSearchParams(window.location.search); // get params from URL +if (urlParams.has('search')) { + let key = urlParams.get('search'); // get search keyword + document.querySelector('.search-input input').setAttribute('value', key); + // get search index from json + let xhr = new XMLHttpRequest(); + xhr.open('GET', '/index.json', true); + xhr.responseType = 'json'; + xhr.onerror = function (e) { + console.error(`${xhr.status} ${xhr.statusText}`); + }; + xhr.onload = function () { + if (xhr.readyState === 4) { + if (xhr.status === 200) { + // use index json to search + console.log(xhr.response); + searchAll(key, xhr.response); + } else { + console.error(`${xhr.status} ${xhr.statusText}`); + } + } + }; + xhr.send(null); +} diff --git a/assets/scss/_fuji-style/_content.scss b/assets/scss/_fuji-style/_content.scss index bc3e579..df223e9 100644 --- a/assets/scss/_fuji-style/_content.scss +++ b/assets/scss/_fuji-style/_content.scss @@ -169,3 +169,7 @@ article { #disqus_thread { padding: 1.25rem 0; } + +#search-result .post:first-child { + padding: 1.5rem 0; +} -- cgit v1.2.3 From e7587236dbe98775315619d4f3b8d3f335001583 Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Tue, 16 Jun 2020 00:47:55 +0800 Subject: Update tags in search template --- assets/js/fuji.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'assets') diff --git a/assets/js/fuji.js b/assets/js/fuji.js index d1be458..55e93b5 100644 --- a/assets/js/fuji.js +++ b/assets/js/fuji.js @@ -93,12 +93,14 @@ function searchAll(key, index) { console.log(result); if (result.length > 0) { document.getElementById('search-result').innerHTML = template('search-result-template', result); + } else { + document.getElementById('search-result').innerHTML = 'NOT FOUND'; } } let urlParams = new URLSearchParams(window.location.search); // get params from URL -if (urlParams.has('search')) { - let key = urlParams.get('search'); // get search keyword +if (urlParams.has('s')) { + let key = urlParams.get('s'); // get search keyword document.querySelector('.search-input input').setAttribute('value', key); // get search index from json let xhr = new XMLHttpRequest(); -- cgit v1.2.3 From c42924047c6f654c4723746790e041f8907ed378 Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Tue, 16 Jun 2020 14:00:53 +0800 Subject: Searching now works --- assets/js/fuji.js | 45 ++++++++++++++++++++++++++++------- assets/scss/_fuji-style/_content.scss | 42 +++++++++++++++++++++----------- assets/scss/_fuji-theme/_style.scss | 43 +++++++++++++++++++++++++++++++++ 3 files changed, 107 insertions(+), 23 deletions(-) (limited to 'assets') diff --git a/assets/js/fuji.js b/assets/js/fuji.js index 55e93b5..bf9eabc 100644 --- a/assets/js/fuji.js +++ b/assets/js/fuji.js @@ -85,38 +85,65 @@ document.querySelector('.btn .btn-toggle-mode').addEventListener('click', () => }); // search by fuse.js -function searchAll(key, index) { +function searchAll(key, index, counter) { let fuse = new Fuse(index, { - keys: ['title', 'tags'], + shouldSort: true, + distance: 10000, + keys: [ + { + name: 'title', + weight: 2.0, + }, + { + name: 'tags', + weight: 1.5, + }, + { + name: 'content', + weight: 1.0, + }, + ], }); let result = fuse.search(key); console.log(result); if (result.length > 0) { document.getElementById('search-result').innerHTML = template('search-result-template', result); + return [new Date().getTime() - counter, result.length]; } else { - document.getElementById('search-result').innerHTML = 'NOT FOUND'; + return 'notFound'; } } let urlParams = new URLSearchParams(window.location.search); // get params from URL if (urlParams.has('s')) { - let key = urlParams.get('s'); // get search keyword + let counter = new Date().getTime(); + let infoElements = document.querySelectorAll('.search-result-info'); + let key = urlParams.get('s'); // get search keyword, divided by space document.querySelector('.search-input input').setAttribute('value', key); // get search index from json let xhr = new XMLHttpRequest(); xhr.open('GET', '/index.json', true); xhr.responseType = 'json'; - xhr.onerror = function (e) { - console.error(`${xhr.status} ${xhr.statusText}`); + xhr.onerror = (e) => { + infoElements[2].removeAttribute('style'); }; - xhr.onload = function () { + xhr.onload = () => { if (xhr.readyState === 4) { if (xhr.status === 200) { // use index json to search console.log(xhr.response); - searchAll(key, xhr.response); + counter = searchAll(key, xhr.response, counter); + console.log(counter); + if (counter === 'notFound') { + infoElements[1].removeAttribute('style'); + } else { + infoElements[0].innerHTML = infoElements[0].innerHTML.replace('[TIME]', counter[0]); + infoElements[0].innerHTML = infoElements[0].innerHTML.replace('[NUM]', counter[1]); + infoElements[0].removeAttribute('style'); + } } else { - console.error(`${xhr.status} ${xhr.statusText}`); + console.error(`Failed to get index.json, ${xhr.status} ${xhr.statusText}`); + infoElements[2].removeAttribute('style'); } } }; diff --git a/assets/scss/_fuji-style/_content.scss b/assets/scss/_fuji-style/_content.scss index df223e9..d1cba1d 100644 --- a/assets/scss/_fuji-style/_content.scss +++ b/assets/scss/_fuji-style/_content.scss @@ -85,20 +85,6 @@ .page-info { padding: 0 0.1rem 1.5rem 0.1rem; - - // search page part - .search-form { - display: flex; - } - - .search-input { - flex: 1 1 auto; - - input { - width: 100%; - max-width: 100%; - } - } } // single page part @@ -170,6 +156,34 @@ article { padding: 1.25rem 0; } +// search page part + #search-result .post:first-child { padding: 1.5rem 0; } + +.search-result-info { + padding: 1rem 0.1rem; +} + +.search-input { + display: flex; + height: 2.5rem; + align-items: center; + padding-left: 0.5rem; + width: 100%; + + input { + width: 100%; + min-width: 0; + flex: 1 1 auto; + height: 2rem; + } + + button { + flex: 0 1 auto; + padding: 0 0.75rem; + word-break: keep-all; + height: 2.5rem; + } +} diff --git a/assets/scss/_fuji-theme/_style.scss b/assets/scss/_fuji-theme/_style.scss index 893a26c..f731fa2 100644 --- a/assets/scss/_fuji-theme/_style.scss +++ b/assets/scss/_fuji-theme/_style.scss @@ -312,3 +312,46 @@ code { color: var(--color-mute) !important; } } + +.search-result-info { + border-bottom: $divider; +} + +.search-input { + border-top: 2px solid; + border-left: 2px solid; + border-bottom: 2px solid; + border-right: none; + border-radius: 0.25rem; + border-color: var(--color-divider); + background-color: var(--color-bg); + + &:hover, + &:focus-within { + color: var(--color-primary); + border-color: var(--color-primary); + } + + input { + outline: none; + border: none; + color: inherit; + background-color: inherit; + } + + button { + outline: none; + border-top: 2px solid; + border-left: none; + border-right: 2px solid; + border-bottom: 2px solid; + border-radius: 0 0.25rem 0.25rem 0; + border-color: inherit; + color: inherit; + background-color: inherit; + + &:hover { + color: var(--color-secondary); + } + } +} -- cgit v1.2.3 From 03750a600a71df1276ccfcc7c817de5cb86e3e9f Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Tue, 16 Jun 2020 15:42:19 +0800 Subject: Fix meta text align in archives and search page --- assets/scss/_fuji-style/_content.scss | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'assets') diff --git a/assets/scss/_fuji-style/_content.scss b/assets/scss/_fuji-style/_content.scss index d1cba1d..10003ef 100644 --- a/assets/scss/_fuji-style/_content.scss +++ b/assets/scss/_fuji-style/_content.scss @@ -56,6 +56,11 @@ margin: 0.5rem 0.1rem 0 0.1rem; // little space flex-wrap: wrap; + span { + display: flex; + align-items: center; + } + span:not(:last-child) { padding-right: 1.5rem; } -- cgit v1.2.3 From f88c7b78f224bf746b831001ec8cef01693a4b3c Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Tue, 16 Jun 2020 16:09:04 +0800 Subject: Search page i18n --- assets/js/fuji.js | 14 ++++++++------ assets/scss/_fuji-style/_content.scss | 7 ++++++- 2 files changed, 14 insertions(+), 7 deletions(-) (limited to 'assets') diff --git a/assets/js/fuji.js b/assets/js/fuji.js index bf9eabc..14d63bc 100644 --- a/assets/js/fuji.js +++ b/assets/js/fuji.js @@ -105,7 +105,7 @@ function searchAll(key, index, counter) { ], }); let result = fuse.search(key); - console.log(result); + // console.log(result); if (result.length > 0) { document.getElementById('search-result').innerHTML = template('search-result-template', result); return [new Date().getTime() - counter, result.length]; @@ -124,16 +124,19 @@ if (urlParams.has('s')) { let xhr = new XMLHttpRequest(); xhr.open('GET', '/index.json', true); xhr.responseType = 'json'; - xhr.onerror = (e) => { + xhr.onerror = () => { infoElements[2].removeAttribute('style'); }; - xhr.onload = () => { + xhr.ontimeout = () => { + infoElements[2].removeAttribute('style'); + }; + xhr.onreadystatechange = () => { if (xhr.readyState === 4) { if (xhr.status === 200) { // use index json to search - console.log(xhr.response); + // console.log(xhr.response); counter = searchAll(key, xhr.response, counter); - console.log(counter); + // console.log(counter); if (counter === 'notFound') { infoElements[1].removeAttribute('style'); } else { @@ -142,7 +145,6 @@ if (urlParams.has('s')) { infoElements[0].removeAttribute('style'); } } else { - console.error(`Failed to get index.json, ${xhr.status} ${xhr.statusText}`); infoElements[2].removeAttribute('style'); } } diff --git a/assets/scss/_fuji-style/_content.scss b/assets/scss/_fuji-style/_content.scss index 10003ef..2cfd184 100644 --- a/assets/scss/_fuji-style/_content.scss +++ b/assets/scss/_fuji-style/_content.scss @@ -187,8 +187,13 @@ article { button { flex: 0 1 auto; - padding: 0 0.75rem; + padding: 0 0.5rem; word-break: keep-all; height: 2.5rem; + + ion-icon { + height: 100%; + font-size: 1.6rem; + } } } -- cgit v1.2.3 From bcd4d3fdb1b5e6a6ede2dbc4ea64fc47642a2173 Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Tue, 16 Jun 2020 16:29:16 +0800 Subject: Option darken image --- assets/scss/_fuji-theme/_dark-diff.scss | 4 ---- 1 file changed, 4 deletions(-) (limited to 'assets') diff --git a/assets/scss/_fuji-theme/_dark-diff.scss b/assets/scss/_fuji-theme/_dark-diff.scss index d5821a8..1af08fb 100644 --- a/assets/scss/_fuji-theme/_dark-diff.scss +++ b/assets/scss/_fuji-theme/_dark-diff.scss @@ -1,7 +1,3 @@ -img { - filter: brightness(60%); -} - table { th, td { -- cgit v1.2.3 From cf72ff2fc6e3d4d0da41d6e761847efc647f3a55 Mon Sep 17 00:00:00 2001 From: Jiawei Huang Date: Wed, 17 Jun 2020 13:53:30 -0700 Subject: Fix some typos in code comments No real code changes. --- assets/scss/_fuji-style/_sidebar.scss | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'assets') diff --git a/assets/scss/_fuji-style/_sidebar.scss b/assets/scss/_fuji-style/_sidebar.scss index 132a22f..b6621b9 100644 --- a/assets/scss/_fuji-style/_sidebar.scss +++ b/assets/scss/_fuji-style/_sidebar.scss @@ -4,11 +4,11 @@ .sidebar-item { &:not(:last-child) { - margin-bottom: 1rem; // space betreen sidebar items + margin-bottom: 1rem; // space between sidebar items } h3 { - margin-bottom: 0.25rem; // space betreen head3 & lists + margin-bottom: 0.25rem; // space between head3 & lists } ul { -- cgit v1.2.3