galaxy-uniapp-mcp-server
Version:
Galaxy组件库到UniApp组件转换MCP服务器 - 支持跨平台组件转换、兼容性分析和项目集成
114 lines • 10.5 kB
JSON
{
"id": "gharsh11032000_loud-puma-8",
"name": "loud-puma-8",
"category": "buttons",
"author": "gharsh11032000",
"description": "loud-puma-8 组件 (animation, button, hover, menu, hover effect, css effect, hover button, button hover effect, interactive)",
"tags": [
"animation",
"button",
"hover",
"menu",
"hover effect",
"css effect",
"hover button",
"button hover effect",
"interactive"
],
"original": {
"html": "<div class=\"menu\">\n <div class=\"item\">\n <a href=\"#\" class=\"link\">\n <span> Our Services </span>\n <svg viewBox=\"0 0 360 360\" xml:space=\"preserve\">\n <g id=\"SVGRepo_iconCarrier\">\n <path id=\"XMLID_225_\" d=\"M325.607,79.393c-5.857-5.857-15.355-5.858-21.213,0.001l-139.39,139.393L25.607,79.393 c-5.857-5.857-15.355-5.858-21.213,0.001c-5.858,5.858-5.858,15.355,0,21.213l150.004,150c2.813,2.813,6.628,4.393,10.606,4.393 s7.794-1.581,10.606-4.394l149.996-150C331.465,94.749,331.465,85.251,325.607,79.393z\"></path>\n </g>\n </svg>\n </a>\n <div class=\"submenu\">\n <div class=\"submenu-item\">\n <a href=\"#\" class=\"submenu-link\"> Development </a>\n </div>\n <div class=\"submenu-item\">\n <a href=\"#\" class=\"submenu-link\"> Design </a>\n </div>\n <div class=\"submenu-item\">\n <a href=\"#\" class=\"submenu-link\"> Marketing </a>\n </div>\n <div class=\"submenu-item\">\n <a href=\"#\" class=\"submenu-link\"> SEO </a>\n </div>\n </div>\n </div>\n</div>",
"css": "/* From Uiverse.io by gharsh11032000 - Tags: animation, button, hover, menu, hover effect, css effect, hover button, button hover effect */\n.menu {\n font-size: 16px;\n line-height: 1.6;\n color: #000000;\n width: fit-content;\n display: flex;\n list-style: none;\n}\n\n.menu a {\n text-decoration: none;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n.menu .link {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 12px;\n padding: 12px 36px;\n border-radius: 16px;\n overflow: hidden;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.menu .link::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: #0a3cff;\n z-index: -1;\n transform: scaleX(0);\n transform-origin: left;\n transition: transform 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.menu .link svg {\n width: 14px;\n height: 14px;\n fill: #000000;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.menu .item {\n position: relative;\n}\n\n.menu .item .submenu {\n display: flex;\n flex-direction: column;\n align-items: center;\n position: absolute;\n top: 100%;\n border-radius: 0 0 16px 16px;\n left: 0;\n width: 100%;\n overflow: hidden;\n border: 1px solid #cccccc;\n opacity: 0;\n visibility: hidden;\n transform: translateY(-12px);\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n z-index: 1;\n pointer-events: none;\n list-style: none;\n}\n\n.menu .item:hover .submenu {\n opacity: 1;\n visibility: visible;\n transform: translateY(0);\n pointer-events: auto;\n border-top: transparent;\n border-color: #0a3cff;\n}\n\n.menu .item:hover .link {\n color: #ffffff;\n border-radius: 16px 16px 0 0;\n}\n\n.menu .item:hover .link::after {\n transform: scaleX(1);\n transform-origin: right;\n}\n\n.menu .item:hover .link svg {\n fill: #ffffff;\n transform: rotate(-180deg);\n}\n\n.submenu .submenu-item {\n width: 100%;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.submenu .submenu-link {\n display: block;\n padding: 12px 24px;\n width: 100%;\n position: relative;\n text-align: center;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.submenu .submenu-item:last-child .submenu-link {\n border-bottom: none;\n}\n\n.submenu .submenu-link::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n transform: scaleX(0);\n width: 100%;\n height: 100%;\n background-color: #0a3cff;\n z-index: -1;\n transform-origin: left;\n transition: transform 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.submenu .submenu-link:hover:before {\n transform: scaleX(1);\n transform-origin: right;\n}\n\n.submenu .submenu-link:hover {\n color: #ffffff;\n}",
"file_path": "/mnt/persist/workspace/Buttons/gharsh11032000_loud-puma-8.html"
},
"uniapp": {
"template": "<view class=\"menu\"></view>\n <view class=\"item\"></view>\n <navigator href=\"#\" class=\"link\"></navigator>\n <text> Our Services </text>\n <view viewBox=\"0 0 360 360\" xml:space=\"preserve\"></view>\n <g id=\"SVGRepo_iconCarrier\">\n <path id=\"XMLID_225_\" d=\"M325.607,79.393c-5.857-5.857-15.355-5.858-21.213,0.001l-139.39,139.393L25.607,79.393 c-5.857-5.857-15.355-5.858-21.213,0.001c-5.858,5.858-5.858,15.355,0,21.213l150.004,150c2.813,2.813,6.628,4.393,10.606,4.393 s7.794-1.581,10.606-4.394l149.996-150C331.465,94.749,331.465,85.251,325.607,79.393z\"></path>\n </g>\n </svg>\n </a>\n <view class=\"submenu\"></view>\n <view class=\"submenu-item\"></view>\n <navigator href=\"#\" class=\"submenu-link\"> Development </navigator>\n </div>\n <view class=\"submenu-item\"></view>\n <navigator href=\"#\" class=\"submenu-link\"> Design </navigator>\n </div>\n <view class=\"submenu-item\"></view>\n <navigator href=\"#\" class=\"submenu-link\"> Marketing </navigator>\n </div>\n <view class=\"submenu-item\"></view>\n <navigator href=\"#\" class=\"submenu-link\"> SEO </navigator>\n </div>\n </div>\n </div>\n</div>",
"script": "export default {\n name: 'GalaxyLoudPuma8',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}",
"style": "\n/* From Uiverse.io by gharsh11032000 - Tags: animation, button, hover, menu, hover effect, css effect, hover button, button hover effect */\n.menu {\n font-size: 32rpx;\n line-height: 1.6;\n color: #000000;\n width: fit-content;\n display: flex;\n list-style: none;\n}\n\n.menu a {\n text-decoration: none;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n.menu .link {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 24rpx;\n padding: 24rpx 72rpx;\n border-radius: 32rpx;\n overflow: hidden;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.menu .link::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: #0a3cff;\n z-index: -1;\n transform: scaleX(0);\n transform-origin: left;\n transition: transform 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.menu .link svg {\n width: 28rpx;\n height: 28rpx;\n fill: #000000;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.menu .item {\n position: relative;\n}\n\n.menu .item .submenu {\n display: flex;\n flex-direction: column;\n align-items: center;\n position: absolute;\n top: 100%;\n border-radius: 0 0 32rpx 32rpx;\n left: 0;\n width: 100%;\n overflow: hidden;\n border: 2rpx solid #cccccc;\n opacity: 0;\n visibility: hidden;\n transform: translateY(-24rpx);\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n z-index: 1;\n pointer-events: none;\n list-style: none;\n}\n\n.menu .item:hover .submenu {\n opacity: 1;\n visibility: visible;\n transform: translateY(0);\n pointer-events: auto;\n border-top: transparent;\n border-color: #0a3cff;\n}\n\n.menu .item:hover .link {\n color: #ffffff;\n border-radius: 32rpx 32rpx 0 0;\n}\n\n.menu .item:hover .link::after {\n transform: scaleX(1);\n transform-origin: right;\n}\n\n.menu .item:hover .link svg {\n fill: #ffffff;\n transform: rotate(-180deg);\n}\n\n.submenu .submenu-item {\n width: 100%;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.submenu .submenu-link {\n display: block;\n padding: 24rpx 48rpx;\n width: 100%;\n position: relative;\n text-align: center;\n transition: all 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.submenu .submenu-item:last-child .submenu-link {\n border-bottom: none;\n}\n\n.submenu .submenu-link::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n transform: scaleX(0);\n width: 100%;\n height: 100%;\n background-color: #0a3cff;\n z-index: -1;\n transform-origin: left;\n transition: transform 0.48s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.submenu .submenu-link:hover:before {\n transform: scaleX(1);\n transform-origin: right;\n}\n\n.submenu .submenu-link:hover {\n color: #ffffff;\n}\n\n",
"component_name": "GalaxyLoudPuma8"
},
"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": "是否禁用"
},
{
"name": "text",
"type": "String",
"default": "按钮",
"required": false,
"description": "按钮文字"
},
{
"name": "type",
"type": "String",
"default": "primary",
"required": false,
"description": "按钮类型"
}
],
"events": [
{
"name": "click",
"description": "点击事件",
"parameters": [
"event"
]
}
],
"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": 3719,
"render_cost": "high",
"memory_usage": "high"
},
"dependencies": [],
"examples": [
{
"title": "",
"description": "",
"code": ""
}
],
"created_at": "2025-07-31T07:55:36.844Z",
"updated_at": "2025-07-31T07:55:36.844Z"
}