Initial commit
Some checks failed
定时更新GitHub源插件 / 自动更新GitHub插件 (push) Has been cancelled

This commit is contained in:
chorblack
2026-03-07 11:19:25 +08:00
commit e75f275ef4
4484 changed files with 645480 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

View File

@@ -0,0 +1,10 @@
{
"name": "mirages-modify",
"title": "Material Design Cards 2",
"version": "1.0.0",
"description": "仿 Mirages 的 HTML 卡片网格输出md3风格含 CSS/JS 注入。",
"inject": {
"css": true,
"js": true
}
}

View File

@@ -0,0 +1 @@
(function(){function closest(el,sel){if(!el)return null;if(el.closest)return el.closest(sel);while(el){if(el.matches&&el.matches(sel))return el;el=el.parentNode}return null}document.addEventListener('click',function(e){var card=closest(e.target,'.lp-mirages-card');if(!card)return;createRipple(e,card);var url=card.getAttribute('data-href');if(url){setTimeout(function(){window.open(url,'_blank','noopener')},90)}});document.addEventListener('keydown',function(e){var card=closest(e.target,'.lp-mirages-card');if(!card)return;if(e.key==='Enter'||e.key===' '){e.preventDefault();var url=card.getAttribute('data-href');if(url)window.open(url,'_blank','noopener')}});function createRipple(event,card){var container=card.querySelector('.lp-mirages-ripple-container');if(!container)return;var circle=document.createElement('span');var diameter=Math.max(card.clientWidth,card.clientHeight);var radius=diameter/2;var rect=card.getBoundingClientRect();var x=(event.clientX?event.clientX:rect.left+rect.width/2)-rect.left;var y=(event.clientY?event.clientY:rect.top+rect.height/2)-rect.top;circle.style.width=circle.style.height=diameter+'px';circle.style.left=(x-radius)+'px';circle.style.top=(y-radius)+'px';circle.className='lp-mirages-ripple';var old=container.getElementsByClassName('lp-mirages-ripple')[0];if(old)old.remove();container.appendChild(circle);setTimeout(function(){circle.remove()},650)}})();

View File

@@ -0,0 +1 @@
.lp-mirages-item{display:inline-block;vertical-align:top;float:none;width:100%;margin:0;padding:0 10px 18px 10px;box-sizing:border-box;list-style:none}@media (min-width:520px){.lp-mirages-item{width:49%}}@media (min-width:960px){.lp-mirages-item{width:32.33%}}@media (min-width:1400px){.lp-mirages-item{width:24.5%}}.lp-mirages-card{position:relative;overflow:hidden;box-sizing:border-box;padding:16px 14px 14px 14px;border-radius:14px;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 24px rgba(0,0,0,.08);cursor:pointer;user-select:none;-webkit-user-select:none;transform:translateZ(0);transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease;color:#111827;text-decoration:none;height:100%;min-height:180px;display:flex;flex-direction:column;align-items:center}.lp-mirages-card:hover{transform:translateY(-3px);background:#fbfdff;border-color:rgba(0,0,0,.1);box-shadow:0 14px 40px rgba(0,0,0,.12)}.lp-mirages-card:hover .lp-mirages-media{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.12)}.lp-mirages-card:active{transform:scale(.985)}.lp-mirages-media{width:92px;height:92px;border-radius:16px;overflow:hidden;background:#f3f4f6;box-shadow:0 6px 18px rgba(0,0,0,.08);transition:transform .18s ease,box-shadow .18s ease}.lp-mirages-avatar{width:100%;height:100%;max-width:100%!important;max-height:100%!important;display:block;object-fit:cover;border:0;margin:0!important;padding:0}.lp-mirages-title{margin-top:12px;font-size:15px;font-weight:700;line-height:1.3;width:100%;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-mirages-desc{margin-top:8px;font-size:12px;line-height:1.6;color:#4b5563;width:100%;text-align:center;line-clamp:2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}.lp-mirages-meta{margin-top:auto;width:100%;display:flex;justify-content:center;padding-top:12px}.lp-mirages-chip{display:inline-flex;align-items:center;height:22px;padding:0 10px;border-radius:999px;background:rgba(0,0,0,.06);color:#374151;font-size:11px;font-weight:600}.lp-mirages-state-layer{position:absolute;inset:0;pointer-events:none;background:0 0;transition:background-color .18s ease}.lp-mirages-card:hover .lp-mirages-state-layer{background:rgba(0,0,0,.03)}.lp-mirages-ripple-container{position:absolute;inset:0;overflow:hidden;pointer-events:none}.lp-mirages-ripple{position:absolute;border-radius:50%;transform:scale(0);animation:lp-mirages-ripple .6s ease-out;background:rgba(0,0,0,.18)}@keyframes lp-mirages-ripple{to{transform:scale(4);opacity:0}}[data-theme=dark] .lp-mirages-card,body.dark .lp-mirages-card,body.dark-mode .lp-mirages-card,body.theme-dark .lp-mirages-card,html.dark .lp-mirages-card,html.dark-mode .lp-mirages-card,html.theme-dark .lp-mirages-card{background:#1f2228;border-color:rgba(255,255,255,.08);color:#e5e7eb;box-shadow:0 10px 28px rgba(0,0,0,.45)}[data-theme=dark] .lp-mirages-card:hover,body.dark .lp-mirages-card:hover,body.dark-mode .lp-mirages-card:hover,body.theme-dark .lp-mirages-card:hover,html.dark .lp-mirages-card:hover,html.dark-mode .lp-mirages-card:hover,html.theme-dark .lp-mirages-card:hover{background:#23262d;border-color:rgba(255,255,255,.14);box-shadow:0 16px 42px rgba(0,0,0,.55)}[data-theme=dark] .lp-mirages-desc,body.dark .lp-mirages-desc,body.dark-mode .lp-mirages-desc,body.theme-dark .lp-mirages-desc,html.dark .lp-mirages-desc,html.dark-mode .lp-mirages-desc,html.theme-dark .lp-mirages-desc{color:#cbd5e1}[data-theme=dark] .lp-mirages-chip,body.dark .lp-mirages-chip,body.dark-mode .lp-mirages-chip,body.theme-dark .lp-mirages-chip,html.dark .lp-mirages-chip,html.dark-mode .lp-mirages-chip,html.theme-dark .lp-mirages-chip{background:rgba(255,255,255,.1);color:#e5e7eb}[data-theme=dark] .lp-mirages-card:hover .lp-mirages-state-layer,body.dark .lp-mirages-card:hover .lp-mirages-state-layer,body.dark-mode .lp-mirages-card:hover .lp-mirages-state-layer,body.theme-dark .lp-mirages-card:hover .lp-mirages-state-layer,html.dark .lp-mirages-card:hover .lp-mirages-state-layer,html.dark-mode .lp-mirages-card:hover .lp-mirages-state-layer,html.theme-dark .lp-mirages-card:hover .lp-mirages-state-layer{background:rgba(255,255,255,.05)}.entry-content ul,.links-box,.post-content ul{display:flow-root}.entry-content ul:after,.links-box:after,.post-content ul:after,ul:after{content:"";display:table;clear:both}

View File

@@ -0,0 +1 @@
<li class="lp-mirages-item"><div class="lp-mirages-card" role="link" tabindex="0" data-href="{url}" aria-label="{name}"><div class="lp-mirages-state-layer"></div><div class="lp-mirages-ripple-container"></div><div class="lp-mirages-media"><img class="lp-mirages-avatar" src="{image}" alt="{name}" loading="lazy"></div><div class="lp-mirages-title">{name}</div><div class="lp-mirages-desc">{description}</div><div class="lp-mirages-meta"><span class="lp-mirages-chip">{sort}</span></div></div></li>