UNPKG

galaxy-uniapp-mcp-server

Version:

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

90 lines 18.6 kB
{ "id": "elijahgummer_hungry-moth-59", "name": "hungry-moth-59", "category": "loaders", "author": "elijahgummer", "description": "hungry-moth-59 组件 (loading, loader, animated, svg, dog, animation, gradient)", "tags": [ "loading", "loader", "animated", "svg", "dog", "animation", "gradient" ], "original": { "html": "<div class=\"main\">\n <div class=\"dog\">\n <div class=\"dog__paws\">\n <div class=\"dog__bl-leg leg\">\n <div class=\"dog__bl-paw paw\"></div>\n <div class=\"dog__bl-top top\"></div>\n </div>\n <div class=\"dog__fl-leg leg\">\n <div class=\"dog__fl-paw paw\"></div>\n <div class=\"dog__fl-top top\"></div>\n </div>\n <div class=\"dog__fr-leg leg\">\n <div class=\"dog__fr-paw paw\"></div>\n <div class=\"dog__fr-top top\"></div>\n </div>\n </div>\n\n <div class=\"dog__body\">\n <div class=\"dog__tail\"></div>\n </div>\n\n <div class=\"dog__head\">\n <div class=\"dog__snout\">\n <div class=\"dog__nose\"></div>\n <div class=\"dog__eyes\">\n <div class=\"dog__eye-l\"></div>\n <div class=\"dog__eye-r\"></div>\n </div>\n </div>\n </div>\n\n <div class=\"dog__head-c\">\n <div class=\"dog__ear-l\"></div>\n <div class=\"dog__ear-r\"></div>\n </div>\n </div>\n</div>", "css": "/* From Uiverse.io by elijahgummer - Website: https://codepen.io/ruijadom/pen/jObpqNb - Name: ruijadom - Tags: loading, loader, animated, svg, dog */\n.main {\n position: relative;\n width: 23.5vmax;\n height: 23.5vmax;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.leg {\n position: absolute;\n bottom: 0;\n width: 2vmax;\n height: 2.125vmax;\n}\n\n.paw {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 1.95vmax;\n height: 1.875vmax;\n overflow: hidden;\n}\n\n.paw::before {\n content: \"\";\n position: absolute;\n width: 3.75vmax;\n height: 3.75vmax;\n border-radius: 50%;\n}\n\n.top {\n position: absolute;\n bottom: 0;\n left: 0.75vmax;\n height: 4.5vmax;\n width: 2.625vmax;\n border-top-left-radius: 1.425vmax;\n border-top-right-radius: 1.425vmax;\n transform-origin: bottom right;\n transform: rotateZ(90deg) translateX(-0.1vmax) translateY(1.5vmax);\n z-index: -1;\n background-image: linear-gradient(70deg, transparent 20%, #ff8b56 20%);\n}\n\n.dog {\n position: relative;\n width: 22.5vmax;\n height: 8.25vmax;\n}\n\n.dog::before {\n content: \"\";\n position: absolute;\n bottom: -0.75vmax;\n right: -0.15vmax;\n width: 100%;\n height: 1.5vmax;\n background-color: rgba(28, 49, 48, 0.1);\n border-radius: 50%;\n z-index: -1000;\n animation: shadow 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__head {\n position: absolute;\n left: 4.5vmax;\n bottom: 0;\n width: 9.75vmax;\n height: 8.25vmax;\n border-top-left-radius: 4.05vmax;\n border-top-right-radius: 4.05vmax;\n border-bottom-right-radius: 3.3vmax;\n border-bottom-left-radius: 3.3vmax;\n background-color: #ff8147;\n animation: head 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__head-c {\n position: absolute;\n left: 1.5vmax;\n bottom: 0;\n width: 9.75vmax;\n height: 8.25vmax;\n animation: head 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n z-index: -1;\n}\n\n.dog__snout {\n position: absolute;\n left: -1.5vmax;\n bottom: 0;\n width: 7.5vmax;\n height: 3.75vmax;\n border-top-right-radius: 3vmax;\n border-bottom-right-radius: 3vmax;\n border-bottom-left-radius: 4.5vmax;\n background-color: #d7dbd2;\n animation: snout 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__snout::before {\n content: \"\";\n position: absolute;\n left: -0.1125vmax;\n top: -0.15vmax;\n width: 1.875vmax;\n height: 1.125vmax;\n border-top-right-radius: 3vmax;\n border-bottom-right-radius: 3vmax;\n border-bottom-left-radius: 4.5vmax;\n background-color: #1c3130;\n animation: snout-b 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__nose {\n position: absolute;\n top: -1.95vmax;\n left: 40%;\n width: 0.75vmax;\n height: 2.4vmax;\n border-radius: 0.525vmax;\n transform-origin: bottom;\n transform: rotateZ(10deg);\n background-color: #d7dbd2;\n}\n\n.dog__eye-l,\n.dog__eye-r {\n position: absolute;\n top: -0.9vmax;\n width: 0.675vmax;\n height: 0.375vmax;\n border-radius: 50%;\n background-color: #1c3130;\n animation: eye 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__eye-l {\n left: 27%;\n}\n\n.dog__eye-r {\n left: 65%;\n}\n\n.dog__ear-l,\n.dog__ear-r {\n position: absolute;\n width: 10.5vmax;\n height: 3.375vmax;\n border-top-left-radius: 0vmax;\n border-top-right-radius: 0vmax;\n border-bottom-right-radius: 3.3vmax;\n border-bottom-left-radius: 3.3vmax;\n background-color: #e26538;\n}\n\n.dog__ear-l {\n top: 1.5vmax;\n left: 6vmax;\n transform-origin: bottom left;\n transform: rotateZ(-50deg);\n z-index: -1;\n animation: ear-l 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__ear-r {\n top: 1.5vmax;\n right: 3vmax;\n transform-origin: bottom right;\n transform: rotateZ(20deg);\n z-index: -2;\n animation: ear-r 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__body {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n position: absolute;\n bottom: 0.3vmax;\n left: 3.75vmax;\n width: 18.75vmax;\n height: 7.2vmax;\n border-top-left-radius: 3vmax;\n border-top-right-radius: 6vmax;\n border-bottom-right-radius: 1.5vmax;\n border-bottom-left-radius: 6vmax;\n background-color: #ff702e;\n z-index: -2;\n animation: body 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__tail {\n position: absolute;\n right: -3vmax;\n height: 1.5vmax;\n width: 4.5vmax;\n background-color: #e96839;\n border-radius: 1.5vmax;\n}\n\n.dog__paws {\n position: absolute;\n bottom: 0;\n left: 7.5vmax;\n width: 12vmax;\n height: 3vmax;\n}\n\n.dog__bl-leg {\n left: -3vmax;\n z-index: -10;\n}\n\n.dog__bl-paw::before {\n background-color: #bec4b6;\n}\n\n.dog__bl-top {\n background-image: linear-gradient(80deg, transparent 20%, #e96839 20%);\n}\n\n.dog__fl-leg {\n z-index: 10;\n left: 0;\n}\n\n.dog__fl-paw::before {\n background-color: #d7dbd2;\n}\n\n.dog__fr-leg {\n right: 0;\n}\n\n.dog__fr-paw::before {\n background-color: #d7dbd2;\n}\n\n/*==============================*/\n\n@keyframes head {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 90%,\n 100% {\n height: 8.25vmax;\n bottom: 0;\n transform-origin: bottom right;\n transform: rotateZ(0);\n }\n 5%,\n 15%,\n 22%,\n 24%,\n 30% {\n height: 8.1vmax;\n }\n 32%,\n 50% {\n height: 8.25vmax;\n }\n 55%,\n 60% {\n bottom: 0.75vmax;\n transform-origin: bottom right;\n transform: rotateZ(0);\n }\n 70%,\n 80% {\n bottom: 0.75vmax;\n transform-origin: bottom right;\n transform: rotateZ(10deg);\n }\n}\n\n@keyframes body {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 32%,\n 100% {\n height: 7.2vmax;\n }\n 5%,\n 15%,\n 22%,\n 24%,\n 30% {\n height: 7.05vmax;\n }\n}\n\n@keyframes ear-l {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 82%,\n 100% {\n transform: rotateZ(-50deg);\n }\n 5%,\n 15%,\n 22%,\n 24% {\n transform: rotateZ(-48deg);\n }\n 30%,\n 31% {\n transform: rotateZ(-30deg);\n }\n 32%,\n 80% {\n transform: rotateZ(-60deg);\n }\n}\n\n@keyframes ear-r {\n 0%,\n 10%,\n 20%,\n 26%,\n 28% {\n transform: rotateZ(20deg);\n }\n 5%,\n 15%,\n 22%,\n 24% {\n transform: rotateZ(18deg);\n }\n 30%,\n 31% {\n transform: rotateZ(10deg);\n }\n 32% {\n transform: rotateZ(25deg);\n }\n}\n\n@keyframes snout {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 82%,\n 100% {\n height: 3.75vmax;\n }\n 5%,\n 15%,\n 22%,\n 24% {\n height: 3.45vmax;\n }\n}\n\n@keyframes snout-b {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 98%,\n 100% {\n width: 1.875vmax;\n }\n 5%,\n 15%,\n 22%,\n 24% {\n width: 1.8vmax;\n }\n 34%,\n 98% {\n width: 1.275vmax;\n }\n}\n\n@keyframes shadow {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 30%,\n 84%,\n 100% {\n width: 99%;\n }\n 5%,\n 15%,\n 22%,\n 24% {\n width: 101%;\n }\n 34%,\n 81% {\n width: 96%;\n }\n}\n\n@keyframes eye {\n 0%,\n 30% {\n width: 0.675vmax;\n height: 0.3vmax;\n }\n 32%,\n 59%,\n 90%,\n 100% {\n width: 0.525vmax;\n height: 0.525vmax;\n transform: translateY(0);\n }\n 60%,\n 75% {\n transform: translateY(-0.3vmax);\n }\n 80%,\n 85% {\n transform: translateY(0.15vmax);\n }\n}", "file_path": "/mnt/persist/workspace/loaders/elijahgummer_hungry-moth-59.html" }, "uniapp": { "template": "<view class=\"main\"></view>\n <view class=\"dog\"></view>\n <view class=\"dog__paws\"></view>\n <view class=\"dog__bl-leg leg\"></view>\n <view class=\"dog__bl-paw paw\"></view>\n <view class=\"dog__bl-top top\"></view>\n </div>\n <view class=\"dog__fl-leg leg\"></view>\n <view class=\"dog__fl-paw paw\"></view>\n <view class=\"dog__fl-top top\"></view>\n </div>\n <view class=\"dog__fr-leg leg\"></view>\n <view class=\"dog__fr-paw paw\"></view>\n <view class=\"dog__fr-top top\"></view>\n </div>\n </div>\n\n <view class=\"dog__body\"></view>\n <view class=\"dog__tail\"></view>\n </div>\n\n <view class=\"dog__head\"></view>\n <view class=\"dog__snout\"></view>\n <view class=\"dog__nose\"></view>\n <view class=\"dog__eyes\"></view>\n <view class=\"dog__eye-l\"></view>\n <view class=\"dog__eye-r\"></view>\n </div>\n </div>\n </div>\n\n <view class=\"dog__head-c\"></view>\n <view class=\"dog__ear-l\"></view>\n <view class=\"dog__ear-r\"></view>\n </div>\n </div>\n</div>", "script": "export default {\n name: 'GalaxyHungryMoth59',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}", "style": "\n/* From Uiverse.io by elijahgummer - Website: https://codepen.io/ruijadom/pen/jObpqNb - Name: ruijadom - Tags: loading, loader, animated, svg, dog */\n.main {\n position: relative;\n width: 23.5vmax;\n height: 23.5vmax;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.leg {\n position: absolute;\n bottom: 0;\n width: 2vmax;\n height: 2.125vmax;\n}\n\n.paw {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 1.95vmax;\n height: 1.875vmax;\n overflow: hidden;\n}\n\n.paw::before {\n content: \"\";\n position: absolute;\n width: 3.75vmax;\n height: 3.75vmax;\n border-radius: 50%;\n}\n\n.top {\n position: absolute;\n bottom: 0;\n left: 0.75vmax;\n height: 4.5vmax;\n width: 2.625vmax;\n border-top-left-radius: 1.425vmax;\n border-top-right-radius: 1.425vmax;\n transform-origin: bottom right;\n transform: rotateZ(90deg) translateX(-0.1vmax) translateY(1.5vmax);\n z-index: -1;\n background-image: linear-gradient(70deg, transparent 20%, #ff8b56 20%);\n}\n\n.dog {\n position: relative;\n width: 22.5vmax;\n height: 8.25vmax;\n}\n\n.dog::before {\n content: \"\";\n position: absolute;\n bottom: -0.75vmax;\n right: -0.15vmax;\n width: 100%;\n height: 1.5vmax;\n background-color: rgba(28, 49, 48, 0.1);\n border-radius: 50%;\n z-index: -1000;\n animation: shadow 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__head {\n position: absolute;\n left: 4.5vmax;\n bottom: 0;\n width: 9.75vmax;\n height: 8.25vmax;\n border-top-left-radius: 4.05vmax;\n border-top-right-radius: 4.05vmax;\n border-bottom-right-radius: 3.3vmax;\n border-bottom-left-radius: 3.3vmax;\n background-color: #ff8147;\n animation: head 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__head-c {\n position: absolute;\n left: 1.5vmax;\n bottom: 0;\n width: 9.75vmax;\n height: 8.25vmax;\n animation: head 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n z-index: -1;\n}\n\n.dog__snout {\n position: absolute;\n left: -1.5vmax;\n bottom: 0;\n width: 7.5vmax;\n height: 3.75vmax;\n border-top-right-radius: 3vmax;\n border-bottom-right-radius: 3vmax;\n border-bottom-left-radius: 4.5vmax;\n background-color: #d7dbd2;\n animation: snout 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__snout::before {\n content: \"\";\n position: absolute;\n left: -0.1125vmax;\n top: -0.15vmax;\n width: 1.875vmax;\n height: 1.125vmax;\n border-top-right-radius: 3vmax;\n border-bottom-right-radius: 3vmax;\n border-bottom-left-radius: 4.5vmax;\n background-color: #1c3130;\n animation: snout-b 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__nose {\n position: absolute;\n top: -1.95vmax;\n left: 40%;\n width: 0.75vmax;\n height: 2.4vmax;\n border-radius: 0.525vmax;\n transform-origin: bottom;\n transform: rotateZ(10deg);\n background-color: #d7dbd2;\n}\n\n.dog__eye-l,\n.dog__eye-r {\n position: absolute;\n top: -0.9vmax;\n width: 0.675vmax;\n height: 0.375vmax;\n border-radius: 50%;\n background-color: #1c3130;\n animation: eye 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__eye-l {\n left: 27%;\n}\n\n.dog__eye-r {\n left: 65%;\n}\n\n.dog__ear-l,\n.dog__ear-r {\n position: absolute;\n width: 10.5vmax;\n height: 3.375vmax;\n border-top-left-radius: 0vmax;\n border-top-right-radius: 0vmax;\n border-bottom-right-radius: 3.3vmax;\n border-bottom-left-radius: 3.3vmax;\n background-color: #e26538;\n}\n\n.dog__ear-l {\n top: 1.5vmax;\n left: 6vmax;\n transform-origin: bottom left;\n transform: rotateZ(-50deg);\n z-index: -1;\n animation: ear-l 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__ear-r {\n top: 1.5vmax;\n right: 3vmax;\n transform-origin: bottom right;\n transform: rotateZ(20deg);\n z-index: -2;\n animation: ear-r 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__body {\n display: flex;\n justify-content: center;\n align-items: flex-end;\n position: absolute;\n bottom: 0.3vmax;\n left: 3.75vmax;\n width: 18.75vmax;\n height: 7.2vmax;\n border-top-left-radius: 3vmax;\n border-top-right-radius: 6vmax;\n border-bottom-right-radius: 1.5vmax;\n border-bottom-left-radius: 6vmax;\n background-color: #ff702e;\n z-index: -2;\n animation: body 10s cubic-bezier(0.3, 0.41, 0.18, 1.01) infinite;\n}\n\n.dog__tail {\n position: absolute;\n right: -3vmax;\n height: 1.5vmax;\n width: 4.5vmax;\n background-color: #e96839;\n border-radius: 1.5vmax;\n}\n\n.dog__paws {\n position: absolute;\n bottom: 0;\n left: 7.5vmax;\n width: 12vmax;\n height: 3vmax;\n}\n\n.dog__bl-leg {\n left: -3vmax;\n z-index: -10;\n}\n\n.dog__bl-paw::before {\n background-color: #bec4b6;\n}\n\n.dog__bl-top {\n background-image: linear-gradient(80deg, transparent 20%, #e96839 20%);\n}\n\n.dog__fl-leg {\n z-index: 10;\n left: 0;\n}\n\n.dog__fl-paw::before {\n background-color: #d7dbd2;\n}\n\n.dog__fr-leg {\n right: 0;\n}\n\n.dog__fr-paw::before {\n background-color: #d7dbd2;\n}\n\n/*==============================*/\n\n@keyframes head {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 90%,\n 100% {\n height: 8.25vmax;\n bottom: 0;\n transform-origin: bottom right;\n transform: rotateZ(0);\n }\n 5%,\n 15%,\n 22%,\n 24%,\n 30% {\n height: 8.1vmax;\n }\n 32%,\n 50% {\n height: 8.25vmax;\n }\n 55%,\n 60% {\n bottom: 0.75vmax;\n transform-origin: bottom right;\n transform: rotateZ(0);\n }\n 70%,\n 80% {\n bottom: 0.75vmax;\n transform-origin: bottom right;\n transform: rotateZ(10deg);\n }\n}\n\n@keyframes body {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 32%,\n 100% {\n height: 7.2vmax;\n }\n 5%,\n 15%,\n 22%,\n 24%,\n 30% {\n height: 7.05vmax;\n }\n}\n\n@keyframes ear-l {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 82%,\n 100% {\n transform: rotateZ(-50deg);\n }\n 5%,\n 15%,\n 22%,\n 24% {\n transform: rotateZ(-48deg);\n }\n 30%,\n 31% {\n transform: rotateZ(-30deg);\n }\n 32%,\n 80% {\n transform: rotateZ(-60deg);\n }\n}\n\n@keyframes ear-r {\n 0%,\n 10%,\n 20%,\n 26%,\n 28% {\n transform: rotateZ(20deg);\n }\n 5%,\n 15%,\n 22%,\n 24% {\n transform: rotateZ(18deg);\n }\n 30%,\n 31% {\n transform: rotateZ(10deg);\n }\n 32% {\n transform: rotateZ(25deg);\n }\n}\n\n@keyframes snout {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 82%,\n 100% {\n height: 3.75vmax;\n }\n 5%,\n 15%,\n 22%,\n 24% {\n height: 3.45vmax;\n }\n}\n\n@keyframes snout-b {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 98%,\n 100% {\n width: 1.875vmax;\n }\n 5%,\n 15%,\n 22%,\n 24% {\n width: 1.8vmax;\n }\n 34%,\n 98% {\n width: 1.275vmax;\n }\n}\n\n@keyframes shadow {\n 0%,\n 10%,\n 20%,\n 26%,\n 28%,\n 30%,\n 84%,\n 100% {\n width: 99%;\n }\n 5%,\n 15%,\n 22%,\n 24% {\n width: 101%;\n }\n 34%,\n 81% {\n width: 96%;\n }\n}\n\n@keyframes eye {\n 0%,\n 30% {\n width: 0.675vmax;\n height: 0.3vmax;\n }\n 32%,\n 59%,\n 90%,\n 100% {\n width: 0.525vmax;\n height: 0.525vmax;\n transform: translateY(0);\n }\n 60%,\n 75% {\n transform: translateY(-0.3vmax);\n }\n 80%,\n 85% {\n transform: translateY(0.15vmax);\n }\n}\n\n", "component_name": "GalaxyHungryMoth59" }, "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": [], "alternatives": [] }, "mp-alipay": { "supported": true, "issues": [], "alternatives": [] }, "app-plus": { "supported": true, "issues": [], "alternatives": [] } }, "performance": { "complexity": "high", "bundle_size": 7761, "render_cost": "high", "memory_usage": "high" }, "dependencies": [], "examples": [ { "title": "", "description": "", "code": "" } ], "created_at": "2025-07-31T07:55:41.359Z", "updated_at": "2025-07-31T07:55:41.359Z" }