UNPKG

galaxy-uniapp-mcp-server

Version:

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

108 lines 12.3 kB
{ "id": "himanshu9682_wise-shrimp-26", "name": "wise-shrimp-26", "category": "buttons", "author": "himanshu9682", "description": "wise-shrimp-26 组件 (button, animation, interactive)", "tags": [ "button", "animation", "interactive" ], "original": { "html": "<div class=\"container\">\n <a href=\"#\" class=\"button type--C\">\n <div class=\"button__line\"></div>\n <div class=\"button__line\"></div>\n <span class=\"button__text\">ENTRY</span>\n <div class=\"button__drow1\"></div>\n <div class=\"button__drow2\"></div>\n </a>\n</div>", "css": "/* From Uiverse.io by himanshu9682 - Tags: button */\n.type--A {\n --line_color: #555555;\n --back_color: #ffecf6;\n}\n.type--B {\n --line_color: #1b1919;\n --back_color: #e9ecff;\n}\n.type--C {\n --line_color: #00135c;\n --back_color: #defffa;\n}\n.button {\n position: relative;\n z-index: 0;\n width: 240px;\n height: 56px;\n text-decoration: none;\n font-size: 14px;\n font-weight: bold;\n color: var(--line_color);\n letter-spacing: 2px;\n transition: all 0.3s ease;\n}\n.button__text {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.button::before,\n.button::after,\n.button__text::before,\n.button__text::after {\n content: \"\";\n position: absolute;\n height: 3px;\n border-radius: 2px;\n background: var(--line_color);\n transition: all 0.5s ease;\n}\n.button::before {\n top: 0;\n left: 54px;\n width: calc(100% - 56px * 2 - 16px);\n}\n.button::after {\n top: 0;\n right: 54px;\n width: 8px;\n}\n.button__text::before {\n bottom: 0;\n right: 54px;\n width: calc(100% - 56px * 2 - 16px);\n}\n.button__text::after {\n bottom: 0;\n left: 54px;\n width: 8px;\n}\n.button__line {\n position: absolute;\n top: 0;\n width: 56px;\n height: 100%;\n overflow: hidden;\n}\n.button__line::before {\n content: \"\";\n position: absolute;\n top: 0;\n width: 150%;\n height: 100%;\n box-sizing: border-box;\n border-radius: 300px;\n border: solid 3px var(--line_color);\n}\n.button__line:nth-child(1),\n.button__line:nth-child(1)::before {\n left: 0;\n}\n.button__line:nth-child(2),\n.button__line:nth-child(2)::before {\n right: 0;\n}\n.button:hover {\n letter-spacing: 6px;\n}\n.button:hover::before,\n.button:hover .button__text::before {\n width: 8px;\n}\n.button:hover::after,\n.button:hover .button__text::after {\n width: calc(100% - 56px * 2 - 16px);\n}\n.button__drow1,\n.button__drow2 {\n position: absolute;\n z-index: -1;\n border-radius: 16px;\n transform-origin: 16px 16px;\n}\n.button__drow1 {\n top: -16px;\n left: 40px;\n width: 32px;\n height: 0;\n transform: rotate(30deg);\n}\n.button__drow2 {\n top: 44px;\n left: 77px;\n width: 32px;\n height: 0;\n transform: rotate(-127deg);\n}\n.button__drow1::before,\n.button__drow1::after,\n.button__drow2::before,\n.button__drow2::after {\n content: \"\";\n position: absolute;\n}\n.button__drow1::before {\n bottom: 0;\n left: 0;\n width: 0;\n height: 32px;\n border-radius: 16px;\n transform-origin: 16px 16px;\n transform: rotate(-60deg);\n}\n.button__drow1::after {\n top: -10px;\n left: 45px;\n width: 0;\n height: 32px;\n border-radius: 16px;\n transform-origin: 16px 16px;\n transform: rotate(69deg);\n}\n.button__drow2::before {\n bottom: 0;\n left: 0;\n width: 0;\n height: 32px;\n border-radius: 16px;\n transform-origin: 16px 16px;\n transform: rotate(-146deg);\n}\n.button__drow2::after {\n bottom: 26px;\n left: -40px;\n width: 0;\n height: 32px;\n border-radius: 16px;\n transform-origin: 16px 16px;\n transform: rotate(-262deg);\n}\n.button__drow1,\n.button__drow1::before,\n.button__drow1::after,\n.button__drow2,\n.button__drow2::before,\n.button__drow2::after {\n background: var(--back_color);\n}\n.button:hover .button__drow1 {\n animation: drow1 ease-in 0.06s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow1::before {\n animation: drow2 linear 0.08s 0.06s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow1::after {\n animation: drow3 linear 0.03s 0.14s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow2 {\n animation: drow4 linear 0.06s 0.2s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow2::before {\n animation: drow3 linear 0.03s 0.26s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow2::after {\n animation: drow5 linear 0.06s 0.32s;\n animation-fill-mode: forwards;\n}\n@keyframes drow1 {\n 0% {\n height: 0;\n }\n 100% {\n height: 100px;\n }\n}\n@keyframes drow2 {\n 0% {\n width: 0;\n opacity: 0;\n }\n 10% {\n opacity: 0;\n }\n 11% {\n opacity: 1;\n }\n 100% {\n width: 120px;\n }\n}\n@keyframes drow3 {\n 0% {\n width: 0;\n }\n 100% {\n width: 80px;\n }\n}\n@keyframes drow4 {\n 0% {\n height: 0;\n }\n 100% {\n height: 120px;\n }\n}\n@keyframes drow5 {\n 0% {\n width: 0;\n }\n 100% {\n width: 124px;\n }\n}\n\n.container {\n width: 100%;\n height: 300px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n}\n.button:not(:last-child) {\n margin-bottom: 64px;\n}", "file_path": "/mnt/persist/workspace/Buttons/himanshu9682_wise-shrimp-26.html" }, "uniapp": { "template": "<view class=\"container\"></view>\n <navigator href=\"#\" class=\"button type--C\"></navigator>\n <view class=\"button__line\"></view>\n <view class=\"button__line\"></view>\n <text class=\"button__text\">ENTRY</text>\n <view class=\"button__drow1\"></view>\n <view class=\"button__drow2\"></view>\n </a>\n</div>", "script": "export default {\n name: 'GalaxyWiseShrimp26',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}", "style": "\n/* From Uiverse.io by himanshu9682 - Tags: button */\n.type--A {\n --line_color: #555555;\n --back_color: #ffecf6;\n}\n.type--B {\n --line_color: #1b1919;\n --back_color: #e9ecff;\n}\n.type--C {\n --line_color: #00135c;\n --back_color: #defffa;\n}\n.button {\n position: relative;\n z-index: 0;\n width: 480rpx;\n height: 112rpx;\n text-decoration: none;\n font-size: 28rpx;\n font-weight: bold;\n color: var(--line_color);\n letter-spacing: 4rpx;\n transition: all 0.3s ease;\n}\n.button__text {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n}\n.button::before,\n.button::after,\n.button__text::before,\n.button__text::after {\n content: \"\";\n position: absolute;\n height: 6rpx;\n border-radius: 4rpx;\n background: var(--line_color);\n transition: all 0.5s ease;\n}\n.button::before {\n top: 0;\n left: 108rpx;\n width: calc(100% - 112rpx * 2 - 32rpx);\n}\n.button::after {\n top: 0;\n right: 108rpx;\n width: 16rpx;\n}\n.button__text::before {\n bottom: 0;\n right: 108rpx;\n width: calc(100% - 112rpx * 2 - 32rpx);\n}\n.button__text::after {\n bottom: 0;\n left: 108rpx;\n width: 16rpx;\n}\n.button__line {\n position: absolute;\n top: 0;\n width: 112rpx;\n height: 100%;\n overflow: hidden;\n}\n.button__line::before {\n content: \"\";\n position: absolute;\n top: 0;\n width: 150%;\n height: 100%;\n box-sizing: border-box;\n border-radius: 600rpx;\n border: solid 6rpx var(--line_color);\n}\n.button__line:nth-child(1),\n.button__line:nth-child(1)::before {\n left: 0;\n}\n.button__line:nth-child(2),\n.button__line:nth-child(2)::before {\n right: 0;\n}\n.button:hover {\n letter-spacing: 12rpx;\n}\n.button:hover::before,\n.button:hover .button__text::before {\n width: 16rpx;\n}\n.button:hover::after,\n.button:hover .button__text::after {\n width: calc(100% - 112rpx * 2 - 32rpx);\n}\n.button__drow1,\n.button__drow2 {\n position: absolute;\n z-index: -1;\n border-radius: 32rpx;\n transform-origin: 32rpx 32rpx;\n}\n.button__drow1 {\n top: -32rpx;\n left: 80rpx;\n width: 64rpx;\n height: 0;\n transform: rotate(30deg);\n}\n.button__drow2 {\n top: 88rpx;\n left: 154rpx;\n width: 64rpx;\n height: 0;\n transform: rotate(-127deg);\n}\n.button__drow1::before,\n.button__drow1::after,\n.button__drow2::before,\n.button__drow2::after {\n content: \"\";\n position: absolute;\n}\n.button__drow1::before {\n bottom: 0;\n left: 0;\n width: 0;\n height: 64rpx;\n border-radius: 32rpx;\n transform-origin: 32rpx 32rpx;\n transform: rotate(-60deg);\n}\n.button__drow1::after {\n top: -20rpx;\n left: 90rpx;\n width: 0;\n height: 64rpx;\n border-radius: 32rpx;\n transform-origin: 32rpx 32rpx;\n transform: rotate(69deg);\n}\n.button__drow2::before {\n bottom: 0;\n left: 0;\n width: 0;\n height: 64rpx;\n border-radius: 32rpx;\n transform-origin: 32rpx 32rpx;\n transform: rotate(-146deg);\n}\n.button__drow2::after {\n bottom: 52rpx;\n left: -80rpx;\n width: 0;\n height: 64rpx;\n border-radius: 32rpx;\n transform-origin: 32rpx 32rpx;\n transform: rotate(-262deg);\n}\n.button__drow1,\n.button__drow1::before,\n.button__drow1::after,\n.button__drow2,\n.button__drow2::before,\n.button__drow2::after {\n background: var(--back_color);\n}\n.button:hover .button__drow1 {\n animation: drow1 ease-in 0.06s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow1::before {\n animation: drow2 linear 0.08s 0.06s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow1::after {\n animation: drow3 linear 0.03s 0.14s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow2 {\n animation: drow4 linear 0.06s 0.2s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow2::before {\n animation: drow3 linear 0.03s 0.26s;\n animation-fill-mode: forwards;\n}\n.button:hover .button__drow2::after {\n animation: drow5 linear 0.06s 0.32s;\n animation-fill-mode: forwards;\n}\n@keyframes drow1 {\n 0% {\n height: 0;\n }\n 100% {\n height: 200rpx;\n }\n}\n@keyframes drow2 {\n 0% {\n width: 0;\n opacity: 0;\n }\n 10% {\n opacity: 0;\n }\n 11% {\n opacity: 1;\n }\n 100% {\n width: 240rpx;\n }\n}\n@keyframes drow3 {\n 0% {\n width: 0;\n }\n 100% {\n width: 160rpx;\n }\n}\n@keyframes drow4 {\n 0% {\n height: 0;\n }\n 100% {\n height: 240rpx;\n }\n}\n@keyframes drow5 {\n 0% {\n width: 0;\n }\n 100% {\n width: 248rpx;\n }\n}\n\n.container {\n width: 100%;\n height: 600rpx;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n}\n.button:not(:last-child) {\n margin-bottom: 128rpx;\n}\n\n", "component_name": "GalaxyWiseShrimp26" }, "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": 4642, "render_cost": "high", "memory_usage": "high" }, "dependencies": [], "examples": [ { "title": "", "description": "", "code": "" } ], "created_at": "2025-07-31T07:55:36.929Z", "updated_at": "2025-07-31T07:55:36.929Z" }