galaxy-uniapp-mcp-server
Version:
Galaxy组件库到UniApp组件转换MCP服务器 - 支持跨平台组件转换、兼容性分析和项目集成
94 lines • 10.7 kB
JSON
{
"id": "StealthWorm_pink-duck-62",
"name": "pink-duck-62",
"category": "loaders",
"author": "StealthWorm",
"description": "pink-duck-62 组件 (loading, interstellar, black hole, animation, gradient)",
"tags": [
"loading",
"interstellar",
"black hole",
"animation",
"gradient"
],
"original": {
"html": "<div class=\"loader\">\n <div class=\"blackhole\">\n <div class=\"blackhole-circle\"></div>\n <div class=\"blackhole-disc\"></div>\n </div>\n\n <div class=\"curve\">\n <svg viewBox=\"0 0 500 500\">\n <path id=\"loading\" d=\"M73.2,148.6c4-6.1,65.5-96.8,178.6-95.6c111.3,1.2,170.8,90.3,175.1,97\"></path>\n <text width=\"500\">\n <textPath xlink:href=\"#loading\">\n loading...\n </textPath>\n </text>\n </svg>\n </div>\n</div>",
"css": "/* From Uiverse.io by StealthWorm - Tags: loading, interstellar, black hole */\n.loader {\n display: flex;\n width: 8rem;\n height: 8rem;\n justify-content: center;\n align-items: center;\n position: relative;\n flex-direction: column;\n}\n\n.curve {\n width: 180%;\n height: 180%;\n position: absolute;\n animation: rotate 8s linear infinite;\n fill: transparent;\n}\n\n.curve text {\n letter-spacing: 20px;\n text-transform: uppercase;\n font: 1.5em \"Fira Sans\", sans-serif;\n fill: white;\n filter: drop-shadow(0 2px 8px black);\n}\n\n.blackhole {\n z-index: -1;\n display: flex;\n position: absolute;\n width: 8rem;\n height: 8rem;\n align-items: center;\n justify-content: center;\n}\n\n.blackhole-circle {\n z-index: 0;\n display: flex;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background: radial-gradient(circle at center, black 25%, white 35%, white 100%);\n box-shadow: 0px 0px 2rem #c2babb;\n align-items: center;\n justify-content: center;\n}\n\n.blackhole-circle::after {\n z-index: 0;\n position: absolute;\n content: \"\";\n display: flex;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n border: 4px solid white;\n background: radial-gradient(circle at center, black 35%, white 60%, white 100%);\n box-shadow: 0px 0px 5rem #c2babb;\n align-items: center;\n justify-content: center;\n filter: blur(4px);\n animation: pulseAnimation linear infinite 2s alternate-reverse;\n}\n\n.blackhole-circle::before {\n z-index: 1;\n content: \"\";\n display: flex;\n width: 4rem;\n height: 4rem;\n border: 2px solid #ffffff;\n box-shadow: 3px 3px 10px #c2babb, inset 0 0 1rem #ffffff;\n border-radius: 50%;\n top: 5rem;\n filter: blur(0.5px);\n animation: rotate linear infinite 3s;\n}\n\n.blackhole-disc {\n position: absolute;\n z-index: 0;\n display: flex;\n width: 5rem;\n height: 10rem;\n border-radius: 50%;\n background: radial-gradient(circle at center, #ffffff 80%, #353535 90%, white 100%);\n filter: blur(1rem) brightness(130%);\n border: 1rem solid white;\n box-shadow: 0px 0px 3rem #d7c4be;\n transform: rotate3d(1, 1, 1, 220deg);\n animation: pulseAnimation2 linear infinite 2s alternate-reverse;\n justify-content: center;\n align-items: center;\n}\n\n.blackhole-disc::before {\n content: \"\";\n position: absolute;\n z-index: 0;\n display: flex;\n width: 5rem;\n height: 10rem;\n border-radius: 50%;\n background: radial-gradient(circle at center, #ffffff 80%, #353535 90%, white 100%);\n filter: blur(3rem);\n border: 1rem solid white;\n box-shadow: 0px 0px 6rem #d7c4be;\n animation: pulseAnimation linear infinite 2s alternate-reverse;\n}\n\n@keyframes rotate {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\n@keyframes pulseAnimation {\n 0% {\n box-shadow: 0px 0px 3rem #c2babb;\n transform: scale(1);\n }\n\n 100% {\n box-shadow: 0px 0px 5rem #c2babb;\n transform: scale(1.09);\n }\n}\n\n@keyframes pulseAnimation2 {\n 0% {\n box-shadow: 0px 0px 3rem #c2babb;\n transform: rotate3d(1, 1, 1, 220deg) scale(1);\n }\n\n 100% {\n box-shadow: 0px 0px 5rem #c2babb;\n transform: rotate3d(1, 1, 1, 220deg) scale(.95);\n }\n}",
"file_path": "/mnt/persist/workspace/loaders/StealthWorm_pink-duck-62.html"
},
"uniapp": {
"template": "<view class=\"loader\"></view>\n <view class=\"blackhole\"></view>\n <view class=\"blackhole-circle\"></view>\n <view class=\"blackhole-disc\"></view>\n </div>\n\n <view class=\"curve\"></view>\n <view viewBox=\"0 0 500 500\"></view>\n <path id=\"loading\" d=\"M73.2,148.6c4-6.1,65.5-96.8,178.6-95.6c111.3,1.2,170.8,90.3,175.1,97\"></path>\n <text width=\"500\">\n <textPath xlink:href=\"#loading\">\n loading...\n </textPath>\n </text>\n </svg>\n </div>\n</div>",
"script": "export default {\n name: 'GalaxyPinkDuck62',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}",
"style": "\n/* From Uiverse.io by StealthWorm - Tags: loading, interstellar, black hole */\n.loader {\n display: flex;\n width: 8rem;\n height: 8rem;\n justify-content: center;\n align-items: center;\n position: relative;\n flex-direction: column;\n}\n\n.curve {\n width: 180%;\n height: 180%;\n position: absolute;\n animation: rotate 8s linear infinite;\n fill: transparent;\n}\n\n.curve text {\n letter-spacing: 40rpx;\n text-transform: uppercase;\n font: 1.5em \"Fira Sans\", sans-serif;\n fill: white;\n \n}\n\n.blackhole {\n z-index: -1;\n display: flex;\n position: absolute;\n width: 8rem;\n height: 8rem;\n align-items: center;\n justify-content: center;\n}\n\n.blackhole-circle {\n z-index: 0;\n display: flex;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background: radial-gradient(circle at center, black 25%, white 35%, white 100%);\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 2rem #c2babb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n align-items: center;\n justify-content: center;\n}\n\n.blackhole-circle::after {\n z-index: 0;\n position: absolute;\n content: \"\";\n display: flex;\n width: 100%;\n height: 100%;\n border-radius: 50%;\n border: 8rpx solid white;\n background: radial-gradient(circle at center, black 35%, white 60%, white 100%);\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 5rem #c2babb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n align-items: center;\n justify-content: center;\n \n animation: pulseAnimation linear infinite 2s alternate-reverse;\n}\n\n.blackhole-circle::before {\n z-index: 1;\n content: \"\";\n display: flex;\n width: 4rem;\n height: 4rem;\n border: 4rpx solid #ffffff;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 6rpx 6rpx 20rpx #c2babb, inset 0 0 1rem #ffffff;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n border-radius: 50%;\n top: 5rem;\n \n animation: rotate linear infinite 3s;\n}\n\n.blackhole-disc {\n position: absolute;\n z-index: 0;\n display: flex;\n width: 5rem;\n height: 10rem;\n border-radius: 50%;\n background: radial-gradient(circle at center, #ffffff 80%, #353535 90%, white 100%);\n \n border: 1rem solid white;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 3rem #d7c4be;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: rotate3d(1, 1, 1, 220deg);\n animation: pulseAnimation2 linear infinite 2s alternate-reverse;\n justify-content: center;\n align-items: center;\n}\n\n.blackhole-disc::before {\n content: \"\";\n position: absolute;\n z-index: 0;\n display: flex;\n width: 5rem;\n height: 10rem;\n border-radius: 50%;\n background: radial-gradient(circle at center, #ffffff 80%, #353535 90%, white 100%);\n \n border: 1rem solid white;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 6rem #d7c4be;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n animation: pulseAnimation linear infinite 2s alternate-reverse;\n}\n\n@keyframes rotate {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\n@keyframes pulseAnimation {\n 0% {\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 3rem #c2babb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: scale(1);\n }\n\n 100% {\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 5rem #c2babb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: scale(1.09);\n }\n}\n\n@keyframes pulseAnimation2 {\n 0% {\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 3rem #c2babb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: rotate3d(1, 1, 1, 220deg) scale(1);\n }\n\n 100% {\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 5rem #c2babb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: rotate3d(1, 1, 1, 220deg) scale(.95);\n }\n}\n\n",
"component_name": "GalaxyPinkDuck62"
},
"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 属性",
"不支持 filter 属性"
],
"alternatives": []
},
"mp-alipay": {
"supported": true,
"issues": [
"不支持 box-shadow 属性",
"不支持 filter 属性"
],
"alternatives": []
},
"app-plus": {
"supported": true,
"issues": [],
"alternatives": []
}
},
"performance": {
"complexity": "high",
"bundle_size": 3527,
"render_cost": "high",
"memory_usage": "high"
},
"dependencies": [],
"examples": [
{
"title": "",
"description": "",
"code": ""
}
],
"created_at": "2025-07-31T07:55:40.596Z",
"updated_at": "2025-07-31T07:55:40.596Z"
}