hexo-theme-particlex 2.3.2 → 2.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/layout/menu.ejs +2 -2
 - package/layout/post.ejs +5 -6
 - package/layout/script.ejs +1 -1
 - package/package.json +1 -1
 - package/source/css/particlex.css +3 -11
 - package/source/js/functions.js +4 -7
 - package/source/js/particlex.js +8 -7
 
    
        package/layout/menu.ejs
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            <nav id="menu">
         
     | 
| 
       2 
2 
     | 
    
         
             
                <div class="desktop-menu">
         
     | 
| 
       3 
     | 
    
         
            -
                    <a href="<%- config.root %>">
         
     | 
| 
       4 
     | 
    
         
            -
                        <span 
     | 
| 
      
 3 
     | 
    
         
            +
                    <a class="title" href="<%- config.root %>">
         
     | 
| 
      
 4 
     | 
    
         
            +
                        <span><%= config.title.toUpperCase() %></span>
         
     | 
| 
       5 
5 
     | 
    
         
             
                    </a>
         
     | 
| 
       6 
6 
     | 
    
         
             
                    <% Object.keys(theme.menu).forEach(key => { %>
         
     | 
| 
       7 
7 
     | 
    
         
             
                    <a href="<%- url_for(theme.menu[key].src) %>">
         
     | 
    
        package/layout/post.ejs
    CHANGED
    
    | 
         @@ -40,22 +40,20 @@ 
     | 
|
| 
       40 
40 
     | 
    
         
             
                <%
         
     | 
| 
       41 
41 
     | 
    
         
             
                    const CryptoJS = crypto();
         
     | 
| 
       42 
42 
     | 
    
         
             
                    function sha(str) {
         
     | 
| 
       43 
     | 
    
         
            -
                        return CryptoJS.SHA256(str).toString( 
     | 
| 
      
 43 
     | 
    
         
            +
                        return CryptoJS.SHA256(str).toString();
         
     | 
| 
       44 
44 
     | 
    
         
             
                    }
         
     | 
| 
       45 
45 
     | 
    
         
             
                    function encrypt(str, key) {
         
     | 
| 
       46 
     | 
    
         
            -
                        return CryptoJS.AES.encrypt(str,  
     | 
| 
       47 
     | 
    
         
            -
                            mode: CryptoJS.mode.ECB,
         
     | 
| 
       48 
     | 
    
         
            -
                            padding: CryptoJS.pad.Pkcs7,
         
     | 
| 
       49 
     | 
    
         
            -
                        }).toString();
         
     | 
| 
      
 46 
     | 
    
         
            +
                        return CryptoJS.AES.encrypt(str, key).toString();
         
     | 
| 
       50 
47 
     | 
    
         
             
                    }
         
     | 
| 
       51 
48 
     | 
    
         
             
                %>
         
     | 
| 
       52 
     | 
    
         
            -
                <input id="crypto" class="input" placeholder="文章被加密,请输入密码" data-encrypt="<%- encrypt(page.content, page.password 
     | 
| 
      
 49 
     | 
    
         
            +
                <input id="crypto" class="input" placeholder="文章被加密,请输入密码" data-encrypt="<%- encrypt(page.content, page.password) %>" data-shasum="<%- sha(page.content) %>">
         
     | 
| 
       53 
50 
     | 
    
         
             
                <div class="content" v-pre style="opacity: 0"></div>
         
     | 
| 
       54 
51 
     | 
    
         
             
                <% } else { %>
         
     | 
| 
       55 
52 
     | 
    
         
             
                <div class="content" v-pre>
         
     | 
| 
       56 
53 
     | 
    
         
             
                    <%- page.content %>
         
     | 
| 
       57 
54 
     | 
    
         
             
                </div>
         
     | 
| 
       58 
55 
     | 
    
         
             
                <% } %>
         
     | 
| 
      
 56 
     | 
    
         
            +
                <% if (page.comments) { %>
         
     | 
| 
       59 
57 
     | 
    
         
             
                <% if (theme.gitalk.enable) { %>
         
     | 
| 
       60 
58 
     | 
    
         
             
                <div id="comment">
         
     | 
| 
       61 
59 
     | 
    
         
             
                    <div id="gitalk-container"></div>
         
     | 
| 
         @@ -76,4 +74,5 @@ 
     | 
|
| 
       76 
74 
     | 
    
         
             
                    <div id="twikoo-container"></div>
         
     | 
| 
       77 
75 
     | 
    
         
             
                </div>
         
     | 
| 
       78 
76 
     | 
    
         
             
                <% } %>
         
     | 
| 
      
 77 
     | 
    
         
            +
                <% } %>
         
     | 
| 
       79 
78 
     | 
    
         
             
            </div>
         
     | 
    
        package/layout/script.ejs
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            <script src="<%- url_for("/js/functions.js") %>"></script>
         
     | 
| 
       2 
2 
     | 
    
         
             
            <script src="<%- url_for("/js/particlex.js") %>"></script>
         
     | 
| 
       3 
     | 
    
         
            -
            <% if (type == "post") { %>
         
     | 
| 
      
 3 
     | 
    
         
            +
            <% if (type == "post" && page.comments) { %>
         
     | 
| 
       4 
4 
     | 
    
         
             
            <% if (theme.gitalk.enable) { %>
         
     | 
| 
       5 
5 
     | 
    
         
             
            <script src="https://cdn.staticfile.org/gitalk/1.8.0/gitalk.min.js"></script>
         
     | 
| 
       6 
6 
     | 
    
         
             
            <link rel="stylesheet" href="https://cdn.staticfile.org/gitalk/1.8.0/gitalk.min.css">
         
     | 
    
        package/package.json
    CHANGED
    
    
    
        package/source/css/particlex.css
    CHANGED
    
    | 
         @@ -406,22 +406,14 @@ 
     | 
|
| 
       406 
406 
     | 
    
         
             
            #menu .desktop-menu .title {
         
     | 
| 
       407 
407 
     | 
    
         
             
                color: #555;
         
     | 
| 
       408 
408 
     | 
    
         
             
                display: inline-block;
         
     | 
| 
       409 
     | 
    
         
            -
                 
     | 
| 
       410 
     | 
    
         
            -
                margin- 
     | 
| 
      
 409 
     | 
    
         
            +
                margin-left: 60px;
         
     | 
| 
      
 410 
     | 
    
         
            +
                margin-right: 5px;
         
     | 
| 
       411 
411 
     | 
    
         
             
            }
         
     | 
| 
       412 
412 
     | 
    
         
             
            #menu .desktop-menu a {
         
     | 
| 
       413 
413 
     | 
    
         
             
                color: #555;
         
     | 
| 
       414 
414 
     | 
    
         
             
                display: inline-block;
         
     | 
| 
       415 
415 
     | 
    
         
             
                margin-left: 30px;
         
     | 
| 
       416 
416 
     | 
    
         
             
            }
         
     | 
| 
       417 
     | 
    
         
            -
            #menu .desktop-menu a span img {
         
     | 
| 
       418 
     | 
    
         
            -
                height: 20px;
         
     | 
| 
       419 
     | 
    
         
            -
                top: 3px;
         
     | 
| 
       420 
     | 
    
         
            -
                width: 20px;
         
     | 
| 
       421 
     | 
    
         
            -
            }
         
     | 
| 
       422 
     | 
    
         
            -
            #menu .desktop-menu a span:nth-child(1) {
         
     | 
| 
       423 
     | 
    
         
            -
                margin-right: 5px;
         
     | 
| 
       424 
     | 
    
         
            -
            }
         
     | 
| 
       425 
417 
     | 
    
         
             
            #menu .phone-menu {
         
     | 
| 
       426 
418 
     | 
    
         
             
                min-height: 50px;
         
     | 
| 
       427 
419 
     | 
    
         
             
                text-align: center;
         
     | 
| 
         @@ -740,7 +732,7 @@ blockquote { 
     | 
|
| 
       740 
732 
     | 
    
         
             
            }
         
     | 
| 
       741 
733 
     | 
    
         
             
            body {
         
     | 
| 
       742 
734 
     | 
    
         
             
                background: #f6f8fa;
         
     | 
| 
       743 
     | 
    
         
            -
                color: # 
     | 
| 
      
 735 
     | 
    
         
            +
                color: #000c;
         
     | 
| 
       744 
736 
     | 
    
         
             
                font: 500 14px Lexend, "Noto Sans SC", sans-serif;
         
     | 
| 
       745 
737 
     | 
    
         
             
                overflow-x: hidden;
         
     | 
| 
       746 
738 
     | 
    
         
             
                width: 100%;
         
     | 
    
        package/source/js/functions.js
    CHANGED
    
    | 
         @@ -54,15 +54,12 @@ function rendermath() { 
     | 
|
| 
       54 
54 
     | 
    
         
             
                    });
         
     | 
| 
       55 
55 
     | 
    
         
             
            }
         
     | 
| 
       56 
56 
     | 
    
         
             
            function sha(str) {
         
     | 
| 
       57 
     | 
    
         
            -
                return CryptoJS.SHA256(str).toString( 
     | 
| 
      
 57 
     | 
    
         
            +
                return CryptoJS.SHA256(str).toString();
         
     | 
| 
       58 
58 
     | 
    
         
             
            }
         
     | 
| 
       59 
     | 
    
         
            -
            function decrypt( 
     | 
| 
      
 59 
     | 
    
         
            +
            function decrypt(str, key, shasum) {
         
     | 
| 
       60 
60 
     | 
    
         
             
                try {
         
     | 
| 
       61 
     | 
    
         
            -
                    let res = CryptoJS.AES.decrypt( 
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
                        padding: CryptoJS.pad.Pkcs7,
         
     | 
| 
       64 
     | 
    
         
            -
                    }).toString(CryptoJS.enc.Utf8);
         
     | 
| 
       65 
     | 
    
         
            -
                    return { decrypt: res, check: sha(res) == check };
         
     | 
| 
      
 61 
     | 
    
         
            +
                    let res = CryptoJS.AES.decrypt(str, key).toString(CryptoJS.enc.Utf8);
         
     | 
| 
      
 62 
     | 
    
         
            +
                    return { decrypt: res, check: sha(res) === shasum };
         
     | 
| 
       66 
63 
     | 
    
         
             
                } catch {
         
     | 
| 
       67 
64 
     | 
    
         
             
                    return { check: false };
         
     | 
| 
       68 
65 
     | 
    
         
             
                }
         
     | 
    
        package/source/js/particlex.js
    CHANGED
    
    | 
         @@ -45,14 +45,17 @@ const app = Vue.createApp({ 
     | 
|
| 
       45 
45 
     | 
    
         
             
                        });
         
     | 
| 
       46 
46 
     | 
    
         
             
                    }
         
     | 
| 
       47 
47 
     | 
    
         
             
                    window.addEventListener("scroll", this.handlescroll, true);
         
     | 
| 
       48 
     | 
    
         
            -
                     
     | 
| 
       49 
     | 
    
         
            -
                    showimg();
         
     | 
| 
       50 
     | 
    
         
            -
                    rendermath();
         
     | 
| 
      
 48 
     | 
    
         
            +
                    this.render();
         
     | 
| 
       51 
49 
     | 
    
         
             
                },
         
     | 
| 
       52 
50 
     | 
    
         
             
                methods: {
         
     | 
| 
       53 
51 
     | 
    
         
             
                    homeclick() {
         
     | 
| 
       54 
52 
     | 
    
         
             
                        window.scrollTo({ top: window.innerHeight, behavior: "smooth" });
         
     | 
| 
       55 
53 
     | 
    
         
             
                    },
         
     | 
| 
      
 54 
     | 
    
         
            +
                    render() {
         
     | 
| 
      
 55 
     | 
    
         
            +
                        highlight();
         
     | 
| 
      
 56 
     | 
    
         
            +
                        showimg();
         
     | 
| 
      
 57 
     | 
    
         
            +
                        rendermath();
         
     | 
| 
      
 58 
     | 
    
         
            +
                    },
         
     | 
| 
       56 
59 
     | 
    
         
             
                    handlescroll() {
         
     | 
| 
       57 
60 
     | 
    
         
             
                        let newlocal = document.documentElement.scrollTop;
         
     | 
| 
       58 
61 
     | 
    
         
             
                        let menu = document.getElementById("menu");
         
     | 
| 
         @@ -71,16 +74,14 @@ const app = Vue.createApp({ 
     | 
|
| 
       71 
74 
     | 
    
         
             
                    handlecrypto() {
         
     | 
| 
       72 
75 
     | 
    
         
             
                        let input = document.getElementById("crypto"),
         
     | 
| 
       73 
76 
     | 
    
         
             
                            content = document.getElementsByClassName("content")[0];
         
     | 
| 
       74 
     | 
    
         
            -
                        let res = decrypt(input.dataset.encrypt, input.value, input.dataset. 
     | 
| 
      
 77 
     | 
    
         
            +
                        let res = decrypt(input.dataset.encrypt, input.value, input.dataset.shasum);
         
     | 
| 
       75 
78 
     | 
    
         
             
                        if (res.check) {
         
     | 
| 
       76 
79 
     | 
    
         
             
                            input.disabled = true;
         
     | 
| 
       77 
80 
     | 
    
         
             
                            input.classList.remove("fail");
         
     | 
| 
       78 
81 
     | 
    
         
             
                            input.classList.add("success");
         
     | 
| 
       79 
82 
     | 
    
         
             
                            content.innerHTML = res.decrypt;
         
     | 
| 
       80 
83 
     | 
    
         
             
                            content.style.opacity = 1;
         
     | 
| 
       81 
     | 
    
         
            -
                             
     | 
| 
       82 
     | 
    
         
            -
                            showimg();
         
     | 
| 
       83 
     | 
    
         
            -
                            rendermath();
         
     | 
| 
      
 84 
     | 
    
         
            +
                            this.render();
         
     | 
| 
       84 
85 
     | 
    
         
             
                        } else input.classList.add("fail");
         
     | 
| 
       85 
86 
     | 
    
         
             
                    },
         
     | 
| 
       86 
87 
     | 
    
         
             
                    handlesearch() {
         
     |