UNPKG

galaxy-uniapp-mcp-server

Version:

Galaxy组件库到UniApp组件转换MCP服务器 - 支持跨平台组件转换、兼容性分析和项目集成

96 lines 15.8 kB
{ "id": "Nawsome_wet-mayfly-23", "name": "wet-mayfly-23", "category": "loaders", "author": "Nawsome", "description": "wet-mayfly-23 组件 (loader, hamster, wheel, svg, animal, animation, gradient)", "tags": [ "loader", "hamster", "wheel", "svg", "animal", "animation", "gradient" ], "original": { "html": "<div aria-label=\"Orange and tan hamster running in a metal wheel\" role=\"img\" class=\"wheel-and-hamster\">\n\t<div class=\"wheel\"></div>\n\t<div class=\"hamster\">\n\t\t<div class=\"hamster__body\">\n\t\t\t<div class=\"hamster__head\">\n\t\t\t\t<div class=\"hamster__ear\"></div>\n\t\t\t\t<div class=\"hamster__eye\"></div>\n\t\t\t\t<div class=\"hamster__nose\"></div>\n\t\t\t</div>\n\t\t\t<div class=\"hamster__limb hamster__limb--fr\"></div>\n\t\t\t<div class=\"hamster__limb hamster__limb--fl\"></div>\n\t\t\t<div class=\"hamster__limb hamster__limb--br\"></div>\n\t\t\t<div class=\"hamster__limb hamster__limb--bl\"></div>\n\t\t\t<div class=\"hamster__tail\"></div>\n\t\t</div>\n\t</div>\n\t<div class=\"spoke\"></div>\n</div>", "css": "/* From Uiverse.io by Nawsome - Tags: loader, hamster, wheel, svg, animal */\n.wheel-and-hamster {\n --dur: 1s;\n position: relative;\n width: 12em;\n height: 12em;\n font-size: 14px;\n}\n\n.wheel,\n.hamster,\n.hamster div,\n.spoke {\n position: absolute;\n}\n\n.wheel,\n.spoke {\n border-radius: 50%;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.wheel {\n background: radial-gradient(100% 100% at center,hsla(0,0%,60%,0) 47.8%,hsl(0,0%,60%) 48%);\n z-index: 2;\n}\n\n.hamster {\n animation: hamster var(--dur) ease-in-out infinite;\n top: 50%;\n left: calc(50% - 3.5em);\n width: 7em;\n height: 3.75em;\n transform: rotate(4deg) translate(-0.8em,1.85em);\n transform-origin: 50% 0;\n z-index: 1;\n}\n\n.hamster__head {\n animation: hamsterHead var(--dur) ease-in-out infinite;\n background: hsl(30,90%,55%);\n border-radius: 70% 30% 0 100% / 40% 25% 25% 60%;\n box-shadow: 0 -0.25em 0 hsl(30,90%,80%) inset,\n\t\t0.75em -1.55em 0 hsl(30,90%,90%) inset;\n top: 0;\n left: -2em;\n width: 2.75em;\n height: 2.5em;\n transform-origin: 100% 50%;\n}\n\n.hamster__ear {\n animation: hamsterEar var(--dur) ease-in-out infinite;\n background: hsl(0,90%,85%);\n border-radius: 50%;\n box-shadow: -0.25em 0 hsl(30,90%,55%) inset;\n top: -0.25em;\n right: -0.25em;\n width: 0.75em;\n height: 0.75em;\n transform-origin: 50% 75%;\n}\n\n.hamster__eye {\n animation: hamsterEye var(--dur) linear infinite;\n background-color: hsl(0,0%,0%);\n border-radius: 50%;\n top: 0.375em;\n left: 1.25em;\n width: 0.5em;\n height: 0.5em;\n}\n\n.hamster__nose {\n background: hsl(0,90%,75%);\n border-radius: 35% 65% 85% 15% / 70% 50% 50% 30%;\n top: 0.75em;\n left: 0;\n width: 0.2em;\n height: 0.25em;\n}\n\n.hamster__body {\n animation: hamsterBody var(--dur) ease-in-out infinite;\n background: hsl(30,90%,90%);\n border-radius: 50% 30% 50% 30% / 15% 60% 40% 40%;\n box-shadow: 0.1em 0.75em 0 hsl(30,90%,55%) inset,\n\t\t0.15em -0.5em 0 hsl(30,90%,80%) inset;\n top: 0.25em;\n left: 2em;\n width: 4.5em;\n height: 3em;\n transform-origin: 17% 50%;\n transform-style: preserve-3d;\n}\n\n.hamster__limb--fr,\n.hamster__limb--fl {\n clip-path: polygon(0 0,100% 0,70% 80%,60% 100%,0% 100%,40% 80%);\n top: 2em;\n left: 0.5em;\n width: 1em;\n height: 1.5em;\n transform-origin: 50% 0;\n}\n\n.hamster__limb--fr {\n animation: hamsterFRLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,80%) 80%,hsl(0,90%,75%) 80%);\n transform: rotate(15deg) translateZ(-1px);\n}\n\n.hamster__limb--fl {\n animation: hamsterFLLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,90%) 80%,hsl(0,90%,85%) 80%);\n transform: rotate(15deg);\n}\n\n.hamster__limb--br,\n.hamster__limb--bl {\n border-radius: 0.75em 0.75em 0 0;\n clip-path: polygon(0 0,100% 0,100% 30%,70% 90%,70% 100%,30% 100%,40% 90%,0% 30%);\n top: 1em;\n left: 2.8em;\n width: 1.5em;\n height: 2.5em;\n transform-origin: 50% 30%;\n}\n\n.hamster__limb--br {\n animation: hamsterBRLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,80%) 90%,hsl(0,90%,75%) 90%);\n transform: rotate(-25deg) translateZ(-1px);\n}\n\n.hamster__limb--bl {\n animation: hamsterBLLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,90%) 90%,hsl(0,90%,85%) 90%);\n transform: rotate(-25deg);\n}\n\n.hamster__tail {\n animation: hamsterTail var(--dur) linear infinite;\n background: hsl(0,90%,85%);\n border-radius: 0.25em 50% 50% 0.25em;\n box-shadow: 0 -0.2em 0 hsl(0,90%,75%) inset;\n top: 1.5em;\n right: -0.5em;\n width: 1em;\n height: 0.5em;\n transform: rotate(30deg) translateZ(-1px);\n transform-origin: 0.25em 0.25em;\n}\n\n.spoke {\n animation: spoke var(--dur) linear infinite;\n background: radial-gradient(100% 100% at center,hsl(0,0%,60%) 4.8%,hsla(0,0%,60%,0) 5%),\n\t\tlinear-gradient(hsla(0,0%,55%,0) 46.9%,hsl(0,0%,65%) 47% 52.9%,hsla(0,0%,65%,0) 53%) 50% 50% / 99% 99% no-repeat;\n}\n\n/* Animations */\n@keyframes hamster {\n from, to {\n transform: rotate(4deg) translate(-0.8em,1.85em);\n }\n\n 50% {\n transform: rotate(0) translate(-0.8em,1.85em);\n }\n}\n\n@keyframes hamsterHead {\n from, 25%, 50%, 75%, to {\n transform: rotate(0);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(8deg);\n }\n}\n\n@keyframes hamsterEye {\n from, 90%, to {\n transform: scaleY(1);\n }\n\n 95% {\n transform: scaleY(0);\n }\n}\n\n@keyframes hamsterEar {\n from, 25%, 50%, 75%, to {\n transform: rotate(0);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(12deg);\n }\n}\n\n@keyframes hamsterBody {\n from, 25%, 50%, 75%, to {\n transform: rotate(0);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(-2deg);\n }\n}\n\n@keyframes hamsterFRLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(50deg) translateZ(-1px);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(-30deg) translateZ(-1px);\n }\n}\n\n@keyframes hamsterFLLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(-30deg);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(50deg);\n }\n}\n\n@keyframes hamsterBRLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(-60deg) translateZ(-1px);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(20deg) translateZ(-1px);\n }\n}\n\n@keyframes hamsterBLLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(20deg);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(-60deg);\n }\n}\n\n@keyframes hamsterTail {\n from, 25%, 50%, 75%, to {\n transform: rotate(30deg) translateZ(-1px);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(10deg) translateZ(-1px);\n }\n}\n\n@keyframes spoke {\n from {\n transform: rotate(0);\n }\n\n to {\n transform: rotate(-1turn);\n }\n}", "file_path": "/mnt/persist/workspace/loaders/Nawsome_wet-mayfly-23.html" }, "uniapp": { "template": "<view aria-label=\"Orange and tan hamster running in a metal wheel\" role=\"img\" class=\"wheel-and-hamster\"></view>\n\t<view class=\"wheel\"></view>\n\t<view class=\"hamster\"></view>\n\t\t<view class=\"hamster__body\"></view>\n\t\t\t<view class=\"hamster__head\"></view>\n\t\t\t\t<view class=\"hamster__ear\"></view>\n\t\t\t\t<view class=\"hamster__eye\"></view>\n\t\t\t\t<view class=\"hamster__nose\"></view>\n\t\t\t</div>\n\t\t\t<view class=\"hamster__limb hamster__limb--fr\"></view>\n\t\t\t<view class=\"hamster__limb hamster__limb--fl\"></view>\n\t\t\t<view class=\"hamster__limb hamster__limb--br\"></view>\n\t\t\t<view class=\"hamster__limb hamster__limb--bl\"></view>\n\t\t\t<view class=\"hamster__tail\"></view>\n\t\t</div>\n\t</div>\n\t<view class=\"spoke\"></view>\n</div>", "script": "export default {\n name: 'GalaxyWetMayfly23',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}", "style": "\n/* From Uiverse.io by Nawsome - Tags: loader, hamster, wheel, svg, animal */\n.wheel-and-hamster {\n --dur: 1s;\n position: relative;\n width: 12em;\n height: 12em;\n font-size: 28rpx;\n}\n\n.wheel,\n.hamster,\n.hamster div,\n.spoke {\n position: absolute;\n}\n\n.wheel,\n.spoke {\n border-radius: 50%;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.wheel {\n background: radial-gradient(100% 100% at center,hsla(0,0%,60%,0) 47.8%,hsl(0,0%,60%) 48%);\n z-index: 2;\n}\n\n.hamster {\n animation: hamster var(--dur) ease-in-out infinite;\n top: 50%;\n left: calc(50% - 3.5em);\n width: 7em;\n height: 3.75em;\n transform: rotate(4deg) translate(-0.8em,1.85em);\n transform-origin: 50% 0;\n z-index: 1;\n}\n\n.hamster__head {\n animation: hamsterHead var(--dur) ease-in-out infinite;\n background: hsl(30,90%,55%);\n border-radius: 70% 30% 0 100% / 40% 25% 25% 60%;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0 -0.25em 0 hsl(30,90%,80%) inset,\n\t\t0.75em -1.55em 0 hsl(30,90%,90%) inset;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n top: 0;\n left: -2em;\n width: 2.75em;\n height: 2.5em;\n transform-origin: 100% 50%;\n}\n\n.hamster__ear {\n animation: hamsterEar var(--dur) ease-in-out infinite;\n background: hsl(0,90%,85%);\n border-radius: 50%;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: -0.25em 0 hsl(30,90%,55%) inset;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n top: -0.25em;\n right: -0.25em;\n width: 0.75em;\n height: 0.75em;\n transform-origin: 50% 75%;\n}\n\n.hamster__eye {\n animation: hamsterEye var(--dur) linear infinite;\n background-color: hsl(0,0%,0%);\n border-radius: 50%;\n top: 0.375em;\n left: 1.25em;\n width: 0.5em;\n height: 0.5em;\n}\n\n.hamster__nose {\n background: hsl(0,90%,75%);\n border-radius: 35% 65% 85% 15% / 70% 50% 50% 30%;\n top: 0.75em;\n left: 0;\n width: 0.2em;\n height: 0.25em;\n}\n\n.hamster__body {\n animation: hamsterBody var(--dur) ease-in-out infinite;\n background: hsl(30,90%,90%);\n border-radius: 50% 30% 50% 30% / 15% 60% 40% 40%;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0.1em 0.75em 0 hsl(30,90%,55%) inset,\n\t\t0.15em -0.5em 0 hsl(30,90%,80%) inset;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n top: 0.25em;\n left: 2em;\n width: 4.5em;\n height: 3em;\n transform-origin: 17% 50%;\n transform-style: preserve-3d;\n}\n\n.hamster__limb--fr,\n.hamster__limb--fl {\n \n top: 2em;\n left: 0.5em;\n width: 1em;\n height: 1.5em;\n transform-origin: 50% 0;\n}\n\n.hamster__limb--fr {\n animation: hamsterFRLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,80%) 80%,hsl(0,90%,75%) 80%);\n transform: rotate(15deg) translateZ(-2rpx);\n}\n\n.hamster__limb--fl {\n animation: hamsterFLLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,90%) 80%,hsl(0,90%,85%) 80%);\n transform: rotate(15deg);\n}\n\n.hamster__limb--br,\n.hamster__limb--bl {\n border-radius: 0.75em 0.75em 0 0;\n \n top: 1em;\n left: 2.8em;\n width: 1.5em;\n height: 2.5em;\n transform-origin: 50% 30%;\n}\n\n.hamster__limb--br {\n animation: hamsterBRLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,80%) 90%,hsl(0,90%,75%) 90%);\n transform: rotate(-25deg) translateZ(-2rpx);\n}\n\n.hamster__limb--bl {\n animation: hamsterBLLimb var(--dur) linear infinite;\n background: linear-gradient(hsl(30,90%,90%) 90%,hsl(0,90%,85%) 90%);\n transform: rotate(-25deg);\n}\n\n.hamster__tail {\n animation: hamsterTail var(--dur) linear infinite;\n background: hsl(0,90%,85%);\n border-radius: 0.25em 50% 50% 0.25em;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0 -0.2em 0 hsl(0,90%,75%) inset;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n top: 1.5em;\n right: -0.5em;\n width: 1em;\n height: 0.5em;\n transform: rotate(30deg) translateZ(-2rpx);\n transform-origin: 0.25em 0.25em;\n}\n\n.spoke {\n animation: spoke var(--dur) linear infinite;\n background: radial-gradient(100% 100% at center,hsl(0,0%,60%) 4.8%,hsla(0,0%,60%,0) 5%),\n\t\tlinear-gradient(hsla(0,0%,55%,0) 46.9%,hsl(0,0%,65%) 47% 52.9%,hsla(0,0%,65%,0) 53%) 50% 50% / 99% 99% no-repeat;\n}\n\n/* Animations */\n@keyframes hamster {\n from, to {\n transform: rotate(4deg) translate(-0.8em,1.85em);\n }\n\n 50% {\n transform: rotate(0) translate(-0.8em,1.85em);\n }\n}\n\n@keyframes hamsterHead {\n from, 25%, 50%, 75%, to {\n transform: rotate(0);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(8deg);\n }\n}\n\n@keyframes hamsterEye {\n from, 90%, to {\n transform: scaleY(1);\n }\n\n 95% {\n transform: scaleY(0);\n }\n}\n\n@keyframes hamsterEar {\n from, 25%, 50%, 75%, to {\n transform: rotate(0);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(12deg);\n }\n}\n\n@keyframes hamsterBody {\n from, 25%, 50%, 75%, to {\n transform: rotate(0);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(-2deg);\n }\n}\n\n@keyframes hamsterFRLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(50deg) translateZ(-2rpx);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(-30deg) translateZ(-2rpx);\n }\n}\n\n@keyframes hamsterFLLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(-30deg);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(50deg);\n }\n}\n\n@keyframes hamsterBRLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(-60deg) translateZ(-2rpx);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(20deg) translateZ(-2rpx);\n }\n}\n\n@keyframes hamsterBLLimb {\n from, 25%, 50%, 75%, to {\n transform: rotate(20deg);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(-60deg);\n }\n}\n\n@keyframes hamsterTail {\n from, 25%, 50%, 75%, to {\n transform: rotate(30deg) translateZ(-2rpx);\n }\n\n 12.5%, 37.5%, 62.5%, 87.5% {\n transform: rotate(10deg) translateZ(-2rpx);\n }\n}\n\n@keyframes spoke {\n from {\n transform: rotate(0);\n }\n\n to {\n transform: rotate(-1turn);\n }\n}\n", "component_name": "GalaxyWetMayfly23" }, "platforms": { "h5": true, "mp-weixin": true, "mp-alipay": true, "mp-baidu": true, "mp-toutiao": true, "app-plus": true }, "props": [ { "name": "disabled", "type": "Boolean", "default": false, "required": false, "description": "是否禁用" } ], "events": [], "slots": [ { "name": "", "description": "", "props": [] } ], "compatibility": { "h5": { "supported": true, "issues": [], "alternatives": [] }, "mp-weixin": { "supported": true, "issues": [ "不支持 box-shadow 属性", "不支持 clip-path 属性" ], "alternatives": [] }, "mp-alipay": { "supported": true, "issues": [ "不支持 box-shadow 属性", "不支持 clip-path 属性" ], "alternatives": [] }, "app-plus": { "supported": true, "issues": [], "alternatives": [] } }, "performance": { "complexity": "high", "bundle_size": 6220, "render_cost": "high", "memory_usage": "high" }, "dependencies": [], "examples": [ { "title": "", "description": "", "code": "" } ], "created_at": "2025-07-31T07:55:39.883Z", "updated_at": "2025-07-31T07:55:39.883Z" }