galaxy-uniapp-mcp-server
Version:
Galaxy组件库到UniApp组件转换MCP服务器 - 支持跨平台组件转换、兼容性分析和项目集成
117 lines • 18.1 kB
JSON
{
"id": "devkatyall_fuzzy-warthog-26",
"name": "fuzzy-warthog-26",
"category": "buttons",
"author": "devkatyall",
"description": "fuzzy-warthog-26 组件 (login, button, sign-up, dropdown, animation, interactive)",
"tags": [
"login",
"button",
"sign-up",
"dropdown",
"animation",
"interactive"
],
"original": {
"html": "<label class=\"popup\">\n <input type=\"checkbox\">\n <div tabindex=\"0\" class=\"burger\">\n <svg viewBox=\"0 0 24 24\" fill=\"white\" height=\"20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 2c2.757 0 5 2.243 5 5.001 0 2.756-2.243 5-5 5s-5-2.244-5-5c0-2.758 2.243-5.001 5-5.001zm0-2c-3.866 0-7 3.134-7 7.001 0 3.865 3.134 7 7 7s7-3.135 7-7c0-3.867-3.134-7.001-7-7.001zm6.369 13.353c-.497.498-1.057.931-1.658 1.302 2.872 1.874 4.378 5.083 4.972 7.346h-19.387c.572-2.29 2.058-5.503 4.973-7.358-.603-.374-1.162-.811-1.658-1.312-4.258 3.072-5.611 8.506-5.611 10.669h24c0-2.142-1.44-7.557-5.631-10.647z\"></path>\n </svg>\n </div>\n <nav class=\"popup-window\">\n <legend>Quick Start</legend>\n <ul>\n <li>\n <button>\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.2\" stroke-linecap=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M19 4v6.406l-3.753 3.741-6.463-6.462 3.7-3.685h6.516zm2-2h-12.388l1.497 1.5-4.171 4.167 9.291 9.291 4.161-4.193 1.61 1.623v-12.388zm-5 4c.552 0 1 .449 1 1s-.448 1-1 1-1-.449-1-1 .448-1 1-1zm0-1c-1.104 0-2 .896-2 2s.896 2 2 2 2-.896 2-2-.896-2-2-2zm6.708.292l-.708.708v3.097l2-2.065-1.292-1.74zm-12.675 9.294l-1.414 1.414h-2.619v2h-2v2h-2v-2.17l5.636-5.626-1.417-1.407-6.219 6.203v5h6v-2h2v-2h2l1.729-1.729-1.696-1.685z\"></path>\n </svg>\n <span>Log In</span>\n </button>\n </li>\n <li>\n <button>\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2.598 9h-1.055c1.482-4.638 5.83-8 10.957-8 6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5c-5.127 0-9.475-3.362-10.957-8h1.055c1.443 4.076 5.334 7 9.902 7 5.795 0 10.5-4.705 10.5-10.5s-4.705-10.5-10.5-10.5c-4.568 0-8.459 2.923-9.902 7zm12.228 3l-4.604-3.747.666-.753 6.112 5-6.101 5-.679-.737 4.608-3.763h-14.828v-1h14.826z\"></path>\n </svg>\n <span>Sign Up</span>\n </button>\n </li>\n </ul>\n </nav>\n</label>",
"css": "/* From Uiverse.io by devkatyall - Website: https://uiverse.io/Galahhad/old-falcon-43 - Tags: login, button, sign-up, dropdown */\n/* The design is inspired from Galahhad*/\n\n.popup {\n --burger-line-width: 1.125em;\n --burger-line-height: 0.125em;\n --burger-offset: 0.625em;\n --burger-bg: #00bf63;\n --burger-color: #333;\n --burger-line-border-radius: 0.1875em;\n --burger-diameter: 3.125em;\n --burger-btn-border-radius: calc(var(--burger-diameter) / 2);\n --burger-line-transition: 0.3s;\n --burger-transition: all 0.1s ease-in-out;\n --burger-hover-scale: 1.1;\n --burger-active-scale: 0.95;\n --burger-enable-outline-color: var(--burger-bg);\n --burger-enable-outline-width: 0.125em;\n --burger-enable-outline-offset: var(--burger-enable-outline-width);\n /* nav */\n --nav-padding-x: 0.25em;\n --nav-padding-y: 0.625em;\n --nav-border-radius: 0.375em;\n --nav-border-color: #ccc;\n --nav-border-width: 0.0625em;\n --nav-shadow-color: rgba(0, 0, 0, 0.2);\n --nav-shadow-width: 0 1px 5px;\n --nav-bg: #eee;\n --nav-font-family: \"Poppins\", sans-serif;\n --nav-default-scale: 0.8;\n --nav-active-scale: 1;\n --nav-position-left: 0;\n --nav-position-right: unset;\n /* if you want to change sides just switch one property */\n /* from properties to \"unset\" and the other to 0 */\n /* title */\n --nav-title-size: 0.625em;\n --nav-title-color: #777;\n --nav-title-padding-x: 1rem;\n --nav-title-padding-y: 0.25em;\n /* nav button */\n --nav-button-padding-x: 1rem;\n --nav-button-padding-y: 0.375em;\n --nav-button-border-radius: 0.375em;\n --nav-button-font-size: 17px;\n --nav-button-hover-bg: #00bf63;\n --nav-button-hover-text-color: #fff;\n --nav-button-distance: 0.875em;\n /* underline */\n --underline-border-width: 0.0625em;\n --underline-border-color: #ccc;\n --underline-margin-y: 0.3125em;\n}\n\n/* popup settings 👆 */\n\n.popup {\n display: inline-block;\n text-rendering: optimizeLegibility;\n position: relative;\n}\n\n.popup input {\n display: none;\n}\n\n.burger {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: center;\n background: var(--burger-bg);\n width: var(--burger-diameter);\n height: var(--burger-diameter);\n border-radius: var(--burger-btn-border-radius);\n border: none;\n cursor: pointer;\n overflow: hidden;\n transition: var(--burger-transition);\n outline: var(--burger-enable-outline-width) solid transparent;\n outline-offset: 0;\n}\n\n.popup-window {\n transform: scale(var(--nav-default-scale));\n visibility: hidden;\n opacity: 0;\n position: absolute;\n padding: var(--nav-padding-y) var(--nav-padding-x);\n background: var(--nav-bg);\n font-family: var(--nav-font-family);\n color: var(--nav-text-color);\n border-radius: var(--nav-border-radius);\n box-shadow: var(--nav-shadow-width) var(--nav-shadow-color);\n border: var(--nav-border-width) solid var(--nav-border-color);\n top: calc(\n var(--burger-diameter) + var(--burger-enable-outline-width) +\n var(--burger-enable-outline-offset)\n );\n left: var(--nav-position-left);\n right: var(--nav-position-right);\n transition: var(--burger-transition);\n margin-top: 10px;\n}\n\n.popup-window legend {\n padding: var(--nav-title-padding-y) var(--nav-title-padding-x);\n margin: 0;\n color: var(--nav-title-color);\n font-size: var(--nav-title-size);\n text-transform: uppercase;\n}\n\n.popup-window ul {\n margin: 0;\n padding: 0;\n list-style-type: none;\n}\n\n.popup-window ul button {\n outline: none;\n width: 100%;\n border: none;\n background: none;\n display: flex;\n align-items: center;\n color: var(--burger-color);\n font-size: var(--nav-button-font-size);\n padding: var(--nav-button-padding-y) var(--nav-button-padding-x);\n white-space: nowrap;\n border-radius: var(--nav-button-border-radius);\n cursor: pointer;\n column-gap: var(--nav-button-distance);\n}\n\n.popup-window ul li:nth-child(1) svg,\n.popup-window ul li:nth-child(2) svg {\n color: #00bf63;\n}\n\n.popup-window ul li:nth-child(4) svg,\n.popup-window ul li:nth-child(5) svg {\n color: rgb(153, 153, 153);\n}\n\n.popup-window ul li:nth-child(7) svg {\n color: red;\n}\n\n.popup-window hr {\n margin: var(--underline-margin-y) 0;\n border: none;\n border-bottom: var(--underline-border-width) solid\n var(--underline-border-color);\n}\n\n/* actions */\n\n.popup-window ul button:hover,\n.popup-window ul button:focus-visible,\n.popup-window ul button:hover svg,\n.popup-window ul button:focus-visible svg {\n color: var(--nav-button-hover-text-color);\n background: var(--nav-button-hover-bg);\n}\n\n.burger:hover {\n transform: scale(var(--burger-hover-scale));\n}\n\n.burger:active {\n transform: scale(var(--burger-active-scale));\n}\n\n.burger:focus:not(:hover) {\n outline-color: var(--burger-enable-outline-color);\n outline-offset: var(--burger-enable-outline-offset);\n}\n\n.popup input:checked + .burger span:nth-child(1) {\n top: 50%;\n transform: translateY(-50%) rotate(45deg);\n}\n\n.popup input:checked + .burger span:nth-child(2) {\n bottom: 50%;\n transform: translateY(50%) rotate(-45deg);\n}\n\n.popup input:checked + .burger span:nth-child(3) {\n transform: translateX(\n calc(var(--burger-diameter) * -1 - var(--burger-line-width))\n );\n}\n\n.popup input:checked ~ nav {\n transform: scale(var(--nav-active-scale));\n visibility: visible;\n opacity: 1;\n}",
"file_path": "/mnt/persist/workspace/Buttons/devkatyall_fuzzy-warthog-26.html"
},
"uniapp": {
"template": "<label class=\"popup\"></label>\n <input type=\"checkbox\"></input>\n <view tabindex=\"0\" class=\"burger\"></view>\n <view viewBox=\"0 0 24 24\" fill=\"white\" height=\"20\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\"></view>\n <path d=\"M12 2c2.757 0 5 2.243 5 5.001 0 2.756-2.243 5-5 5s-5-2.244-5-5c0-2.758 2.243-5.001 5-5.001zm0-2c-3.866 0-7 3.134-7 7.001 0 3.865 3.134 7 7 7s7-3.135 7-7c0-3.867-3.134-7.001-7-7.001zm6.369 13.353c-.497.498-1.057.931-1.658 1.302 2.872 1.874 4.378 5.083 4.972 7.346h-19.387c.572-2.29 2.058-5.503 4.973-7.358-.603-.374-1.162-.811-1.658-1.312-4.258 3.072-5.611 8.506-5.611 10.669h24c0-2.142-1.44-7.557-5.631-10.647z\"></path>\n </svg>\n </div>\n <view class=\"popup-window\"></view>\n <legend>Quick Start</legend>\n <view></view>\n <view></view>\n <button></button>\n <view width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.2\" stroke-linecap=\"round\" xmlns=\"http://www.w3.org/2000/svg\"></view>\n <path d=\"M19 4v6.406l-3.753 3.741-6.463-6.462 3.7-3.685h6.516zm2-2h-12.388l1.497 1.5-4.171 4.167 9.291 9.291 4.161-4.193 1.61 1.623v-12.388zm-5 4c.552 0 1 .449 1 1s-.448 1-1 1-1-.449-1-1 .448-1 1-1zm0-1c-1.104 0-2 .896-2 2s.896 2 2 2 2-.896 2-2-.896-2-2-2zm6.708.292l-.708.708v3.097l2-2.065-1.292-1.74zm-12.675 9.294l-1.414 1.414h-2.619v2h-2v2h-2v-2.17l5.636-5.626-1.417-1.407-6.219 6.203v5h6v-2h2v-2h2l1.729-1.729-1.696-1.685z\"></path>\n </svg>\n <text>Log In</text>\n </button>\n </li>\n <view></view>\n <button></button>\n <view width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1\" stroke-linecap=\"round\" xmlns=\"http://www.w3.org/2000/svg\"></view>\n <path d=\"M2.598 9h-1.055c1.482-4.638 5.83-8 10.957-8 6.347 0 11.5 5.153 11.5 11.5s-5.153 11.5-11.5 11.5c-5.127 0-9.475-3.362-10.957-8h1.055c1.443 4.076 5.334 7 9.902 7 5.795 0 10.5-4.705 10.5-10.5s-4.705-10.5-10.5-10.5c-4.568 0-8.459 2.923-9.902 7zm12.228 3l-4.604-3.747.666-.753 6.112 5-6.101 5-.679-.737 4.608-3.763h-14.828v-1h14.826z\"></path>\n </svg>\n <text>Sign Up</text>\n </button>\n </li>\n </ul>\n </nav>\n</label>",
"script": "export default {\n name: 'GalaxyFuzzyWarthog26',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}",
"style": "\n/* From Uiverse.io by devkatyall - Website: https://uiverse.io/Galahhad/old-falcon-43 - Tags: login, button, sign-up, dropdown */\n/* The design is inspired from Galahhad*/\n\n.popup {\n --burger-line-width: 1.125em;\n --burger-line-height: 0.125em;\n --burger-offset: 0.625em;\n --burger-bg: #00bf63;\n --burger-color: #333;\n --burger-line-border-radius: 0.1875em;\n --burger-diameter: 3.125em;\n --burger-btn-border-radius: calc(var(--burger-diameter) / 2);\n --burger-line-transition: 0.3s;\n --burger-transition: all 0.1s ease-in-out;\n --burger-hover-scale: 1.1;\n --burger-active-scale: 0.95;\n --burger-enable-outline-color: var(--burger-bg);\n --burger-enable-outline-width: 0.125em;\n --burger-enable-outline-offset: var(--burger-enable-outline-width);\n /* nav */\n --nav-padding-x: 0.25em;\n --nav-padding-y: 0.625em;\n --nav-border-radius: 0.375em;\n --nav-border-color: #ccc;\n --nav-border-width: 0.0625em;\n --nav-shadow-color: rgba(0, 0, 0, 0.2);\n --nav-shadow-width: 0 2rpx 10rpx;\n --nav-bg: #eee;\n --nav-font-family: \"Poppins\", sans-serif;\n --nav-default-scale: 0.8;\n --nav-active-scale: 1;\n --nav-position-left: 0;\n --nav-position-right: unset;\n /* if you want to change sides just switch one property */\n /* from properties to \"unset\" and the other to 0 */\n /* title */\n --nav-title-size: 0.625em;\n --nav-title-color: #777;\n --nav-title-padding-x: 1rem;\n --nav-title-padding-y: 0.25em;\n /* nav button */\n --nav-button-padding-x: 1rem;\n --nav-button-padding-y: 0.375em;\n --nav-button-border-radius: 0.375em;\n --nav-button-font-size: 34rpx;\n --nav-button-hover-bg: #00bf63;\n --nav-button-hover-text-color: #fff;\n --nav-button-distance: 0.875em;\n /* underline */\n --underline-border-width: 0.0625em;\n --underline-border-color: #ccc;\n --underline-margin-y: 0.3125em;\n}\n\n/* popup settings 👆 */\n\n.popup {\n display: inline-block;\n text-rendering: optimizeLegibility;\n position: relative;\n}\n\n.popup input {\n display: none;\n}\n\n.burger {\n display: flex;\n position: relative;\n align-items: center;\n justify-content: center;\n background: var(--burger-bg);\n width: var(--burger-diameter);\n height: var(--burger-diameter);\n border-radius: var(--burger-btn-border-radius);\n border: none;\n /* #ifdef H5 */\n cursor: pointer;\n /* #endif */\n overflow: hidden;\n transition: var(--burger-transition);\n outline: var(--burger-enable-outline-width) solid transparent;\n outline-offset: 0;\n}\n\n.popup-window {\n transform: scale(var(--nav-default-scale));\n visibility: hidden;\n opacity: 0;\n position: absolute;\n padding: var(--nav-padding-y) var(--nav-padding-x);\n background: var(--nav-bg);\n font-family: var(--nav-font-family);\n color: var(--nav-text-color);\n border-radius: var(--nav-border-radius);\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: var(--nav-shadow-width) var(--nav-shadow-color);\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n border: var(--nav-border-width) solid var(--nav-border-color);\n top: calc(\n var(--burger-diameter) + var(--burger-enable-outline-width) +\n var(--burger-enable-outline-offset)\n );\n left: var(--nav-position-left);\n right: var(--nav-position-right);\n transition: var(--burger-transition);\n margin-top: 20rpx;\n}\n\n.popup-window legend {\n padding: var(--nav-title-padding-y) var(--nav-title-padding-x);\n margin: 0;\n color: var(--nav-title-color);\n font-size: var(--nav-title-size);\n text-transform: uppercase;\n}\n\n.popup-window ul {\n margin: 0;\n padding: 0;\n list-style-type: none;\n}\n\n.popup-window ul button {\n outline: none;\n width: 100%;\n border: none;\n background: none;\n display: flex;\n align-items: center;\n color: var(--burger-color);\n font-size: var(--nav-button-font-size);\n padding: var(--nav-button-padding-y) var(--nav-button-padding-x);\n white-space: nowrap;\n border-radius: var(--nav-button-border-radius);\n /* #ifdef H5 */\n cursor: pointer;\n /* #endif */\n column-gap: var(--nav-button-distance);\n}\n\n.popup-window ul li:nth-child(1) svg,\n.popup-window ul li:nth-child(2) svg {\n color: #00bf63;\n}\n\n.popup-window ul li:nth-child(4) svg,\n.popup-window ul li:nth-child(5) svg {\n color: rgb(153, 153, 153);\n}\n\n.popup-window ul li:nth-child(7) svg {\n color: red;\n}\n\n.popup-window hr {\n margin: var(--underline-margin-y) 0;\n border: none;\n border-bottom: var(--underline-border-width) solid\n var(--underline-border-color);\n}\n\n/* actions */\n\n.popup-window ul button:hover,\n.popup-window ul button:focus-visible,\n.popup-window ul button:hover svg,\n.popup-window ul button:focus-visible svg {\n color: var(--nav-button-hover-text-color);\n background: var(--nav-button-hover-bg);\n}\n\n.burger:hover {\n transform: scale(var(--burger-hover-scale));\n}\n\n.burger:active {\n transform: scale(var(--burger-active-scale));\n}\n\n.burger:focus:not(:hover) {\n outline-color: var(--burger-enable-outline-color);\n outline-offset: var(--burger-enable-outline-offset);\n}\n\n.popup input:checked + .burger span:nth-child(1) {\n top: 50%;\n transform: translateY(-50%) rotate(45deg);\n}\n\n.popup input:checked + .burger span:nth-child(2) {\n bottom: 50%;\n transform: translateY(50%) rotate(-45deg);\n}\n\n.popup input:checked + .burger span:nth-child(3) {\n transform: translateX(\n calc(var(--burger-diameter) * -1 - var(--burger-line-width))\n );\n}\n\n.popup input:checked ~ nav {\n transform: scale(var(--nav-active-scale));\n visibility: visible;\n opacity: 1;\n}\n\n",
"component_name": "GalaxyFuzzyWarthog26"
},
"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": [
"不支持 box-shadow 属性",
"不支持 cursor 属性"
],
"alternatives": []
},
"mp-alipay": {
"supported": true,
"issues": [
"不支持 box-shadow 属性",
"不支持 cursor 属性"
],
"alternatives": []
},
"app-plus": {
"supported": true,
"issues": [],
"alternatives": []
}
},
"performance": {
"complexity": "high",
"bundle_size": 7333,
"render_cost": "high",
"memory_usage": "high"
},
"dependencies": [],
"examples": [
{
"title": "",
"description": "",
"code": ""
}
],
"created_at": "2025-07-31T07:55:36.328Z",
"updated_at": "2025-07-31T07:55:36.328Z"
}