galaxy-uniapp-mcp-server
Version:
Galaxy组件库到UniApp组件转换MCP服务器 - 支持跨平台组件转换、兼容性分析和项目集成
121 lines • 8.5 kB
JSON
{
"id": "njesenberger_thin-owl-11",
"name": "thin-owl-11",
"category": "buttons",
"author": "njesenberger",
"description": "thin-owl-11 组件 (skeuomorphism, 3d, button, active, css, btn, animation, gradient)",
"tags": [
"skeuomorphism",
"3d",
"button",
"active",
"css",
"btn",
"animation",
"gradient"
],
"original": {
"html": "<button type=\"button\" class=\"button\">\n <div class=\"button-top\">3D Button</div>\n <div class=\"button-bottom\"></div>\n <div class=\"button-base\"></div>\n</button>",
"css": "/* From Uiverse.io by njesenberger - Tags: skeuomorphism, 3d, button, active, css, btn */\n.button {\n -webkit-appearance: none;\n appearance: none;\n position: relative;\n border-width: 0;\n padding: 0 8px 12px;\n min-width: 10em;\n box-sizing: border-box;\n background: transparent;\n font: inherit;\n cursor: pointer;\n}\n\n.button-top {\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 0;\n padding: 8px 16px;\n transform: translateY(0);\n text-align: center;\n color: #fff;\n text-shadow: 0 -1px rgba(0, 0, 0, .25);\n transition-property: transform;\n transition-duration: .2s;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.button:active .button-top {\n transform: translateY(6px);\n}\n\n.button-top::after {\n content: '';\n position: absolute;\n z-index: -1;\n border-radius: 4px;\n width: 100%;\n height: 100%;\n box-sizing: content-box;\n background-image: radial-gradient(#cd3f64, #9d3656);\n text-align: center;\n color: #fff;\n box-shadow: inset 0 0 0px 1px rgba(255, 255, 255, .2), 0 1px 2px 1px rgba(255, 255, 255, .2);\n transition-property: border-radius, padding, width, transform;\n transition-duration: .2s;\n}\n\n.button:active .button-top::after {\n border-radius: 6px;\n padding: 0 2px;\n}\n\n.button-bottom {\n position: absolute;\n z-index: -1;\n bottom: 4px;\n left: 4px;\n border-radius: 8px / 16px 16px 8px 8px;\n padding-top: 6px;\n width: calc(100% - 8px);\n height: calc(100% - 10px);\n box-sizing: content-box;\n background-color: #803;\n background-image: radial-gradient(4px 8px at 4px calc(100% - 8px), rgba(255, 255, 255, .25), transparent), radial-gradient(4px 8px at calc(100% - 4px) calc(100% - 8px), rgba(255, 255, 255, .25), transparent), radial-gradient(16px at -4px 0, white, transparent), radial-gradient(16px at calc(100% + 4px) 0, white, transparent);\n box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.5), inset 0 -1px 3px 3px rgba(0, 0, 0, .4);\n transition-property: border-radius, padding-top;\n transition-duration: .2s;\n}\n\n.button:active .button-bottom {\n border-radius: 10px 10px 8px 8px / 8px;\n padding-top: 0;\n}\n\n.button-base {\n position: absolute;\n z-index: -2;\n top: 4px;\n left: 0;\n border-radius: 12px;\n width: 100%;\n height: calc(100% - 4px);\n background-color: rgba(0, 0, 0, .15);\n box-shadow: 0 1px 1px 0 rgba(255, 255, 255, .75), inset 0 2px 2px rgba(0, 0, 0, .25);\n}",
"file_path": "/mnt/persist/workspace/Buttons/njesenberger_thin-owl-11.html"
},
"uniapp": {
"template": "<button type=\"button\" class=\"button\"></button>\n <view class=\"button-top\">3D Button</view>\n <view class=\"button-bottom\"></view>\n <view class=\"button-base\"></view>\n</button>",
"script": "export default {\n name: 'GalaxyThinOwl11',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}",
"style": "\n/* From Uiverse.io by njesenberger - Tags: skeuomorphism, 3d, button, active, css, btn */\n.button {\n -webkit-appearance: none;\n appearance: none;\n position: relative;\n border-width: 0;\n padding: 0 16rpx 24rpx;\n min-width: 10em;\n box-sizing: border-box;\n background: transparent;\n font: inherit;\n /* #ifdef H5 */\n cursor: pointer;\n /* #endif */\n}\n\n.button-top {\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n z-index: 0;\n padding: 16rpx 32rpx;\n transform: translateY(0);\n text-align: center;\n color: #fff;\n /* #ifdef H5 */\n text-shadow: 0 -2rpx rgba(0, 0, 0, .25);\n /* #endif */\n transition-property: transform;\n transition-duration: .2s;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.button:active .button-top {\n transform: translateY(12rpx);\n}\n\n.button-top::after {\n content: '';\n position: absolute;\n z-index: -1;\n border-radius: 8rpx;\n width: 100%;\n height: 100%;\n box-sizing: content-box;\n background-image: radial-gradient(#cd3f64, #9d3656);\n text-align: center;\n color: #fff;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: inset 0 0 0rpx 2rpx rgba(255, 255, 255, .2), 0 2rpx 4rpx 2rpx rgba(255, 255, 255, .2);\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transition-property: border-radius, padding, width, transform;\n transition-duration: .2s;\n}\n\n.button:active .button-top::after {\n border-radius: 12rpx;\n padding: 0 4rpx;\n}\n\n.button-bottom {\n position: absolute;\n z-index: -1;\n bottom: 8rpx;\n left: 8rpx;\n border-radius: 16rpx / 32rpx 32rpx 16rpx 16rpx;\n padding-top: 12rpx;\n width: calc(100% - 16rpx);\n height: calc(100% - 20rpx);\n box-sizing: content-box;\n background-color: #803;\n background-image: radial-gradient(8rpx 16rpx at 8rpx calc(100% - 16rpx), rgba(255, 255, 255, .25), transparent), radial-gradient(8rpx 16rpx at calc(100% - 8rpx) calc(100% - 16rpx), rgba(255, 255, 255, .25), transparent), radial-gradient(32rpx at -8rpx 0, white, transparent), radial-gradient(32rpx at calc(100% + 8rpx) 0, white, transparent);\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 4rpx 6rpx 0rpx rgba(0, 0, 0, 0.5), inset 0 -2rpx 6rpx 6rpx rgba(0, 0, 0, .4);\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transition-property: border-radius, padding-top;\n transition-duration: .2s;\n}\n\n.button:active .button-bottom {\n border-radius: 20rpx 20rpx 16rpx 16rpx / 16rpx;\n padding-top: 0;\n}\n\n.button-base {\n position: absolute;\n z-index: -2;\n top: 8rpx;\n left: 0;\n border-radius: 24rpx;\n width: 100%;\n height: calc(100% - 8rpx);\n background-color: rgba(0, 0, 0, .15);\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0 2rpx 2rpx 0 rgba(255, 255, 255, .75), inset 0 4rpx 4rpx rgba(0, 0, 0, .25);\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n}\n",
"component_name": "GalaxyThinOwl11"
},
"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 属性",
"不支持 text-shadow 属性",
"不支持 cursor 属性"
],
"alternatives": []
},
"mp-alipay": {
"supported": true,
"issues": [
"不支持 box-shadow 属性",
"不支持 text-shadow 属性",
"不支持 cursor 属性"
],
"alternatives": []
},
"app-plus": {
"supported": true,
"issues": [],
"alternatives": []
}
},
"performance": {
"complexity": "medium",
"bundle_size": 2543,
"render_cost": "medium",
"memory_usage": "medium"
},
"dependencies": [],
"examples": [
{
"title": "",
"description": "",
"code": ""
}
],
"created_at": "2025-07-31T07:55:37.512Z",
"updated_at": "2025-07-31T07:55:37.512Z"
}