galaxy-uniapp-mcp-server
Version:
Galaxy组件库到UniApp组件转换MCP服务器 - 支持跨平台组件转换、兼容性分析和项目集成
95 lines • 11.9 kB
JSON
{
"id": "Subaashbala_polite-newt-9",
"name": "polite-newt-9",
"category": "loaders",
"author": "Subaashbala",
"description": "polite-newt-9 组件 (loader, animated, loading animation, 3d loader, animation, gradient)",
"tags": [
"loader",
"animated",
"loading animation",
"3d loader",
"animation",
"gradient"
],
"original": {
"html": "<div class=\"loader\">\n <div class=\"modelViewPort\">\n <div class=\"eva\">\n <div class=\"head\">\n <div class=\"eyeChamber\">\n <div class=\"eye\"></div>\n <div class=\"eye\"></div>\n </div>\n </div>\n <div class=\"body\">\n <div class=\"hand\"></div>\n <div class=\"hand\"></div>\n <div class=\"scannerThing\"></div>\n <div class=\"scannerOrigin\"></div>\n </div>\n </div>\n </div>\n</div>",
"css": "/* From Uiverse.io by Subaashbala - Tags: loader, animated, loading animation, 3d loader */\n.modelViewPort {\n /* The black circle background around the model*/\n perspective: 1000px;\n width: 20rem;\n aspect-ratio: 1;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n background: #000;\n overflow: hidden;\n}\n.eva {\n --EVA-ROTATION-DURATION: 4s;\n transform-style: preserve-3d;\n animation: rotateRight var(--EVA-ROTATION-DURATION) linear infinite alternate;\n}\n.head {\n position: relative;\n width: 6rem;\n height: 4rem;\n border-radius: 48% 53% 45% 55% / 79% 79% 20% 22%;\n background: linear-gradient(to right, white 45%, gray);\n}\n.eyeChamber {\n width: 4.5rem;\n height: 2.75rem;\n position: relative;\n left: 50%;\n top: 55%;\n border-radius: 45% 53% 45% 48% / 62% 59% 35% 34%;\n background-color: #0c203c;\n box-shadow: 0px 0px 2px 2px white, inset 0px 0px 0px 2px black;\n transform: translate(-50%, -50%);\n animation: moveRight var(--EVA-ROTATION-DURATION) linear infinite alternate;\n}\n.eye {\n width: 1.2rem;\n height: 1.5rem;\n position: absolute;\n border-radius: 50%;\n}\n.eye:first-child {\n left: 12px;\n top: 50%;\n background: repeating-linear-gradient(\n 65deg,\n #9bdaeb 0px,\n #9bdaeb 1px,\n white 2px\n );\n box-shadow: inset 0px 0px 5px #04b8d5, 0px 0px 15px 1px #0bdaeb;\n transform: translate(0, -50%) rotate(-65deg);\n}\n.eye:nth-child(2) {\n right: 12px;\n top: 50%;\n background: repeating-linear-gradient(\n -65deg,\n #9bdaeb 0px,\n #9bdaeb 1px,\n white 2px\n );\n box-shadow: inset 0px 0px 5px #04b8d5, 0px 0px 15px 1px #0bdaeb;\n transform: translate(0, -50%) rotate(65deg);\n}\n.body {\n width: 6rem;\n height: 8rem;\n position: relative;\n margin-block-start: 0.25rem;\n border-radius: 47% 53% 45% 55% / 12% 9% 90% 88%;\n background: linear-gradient(to right, white 35%, gray);\n}\n.hand {\n position: absolute;\n left: -1.5rem;\n top: 0.75rem;\n width: 2rem;\n height: 5.5rem;\n border-radius: 40%;\n background: linear-gradient(to left, white 15%, gray);\n box-shadow: 5px 0px 5px rgba(0, 0, 0, 0.25);\n transform: rotateY(55deg) rotateZ(10deg);\n}\n.hand:first-child {\n animation: compensateRotation var(--EVA-ROTATION-DURATION) linear infinite\n alternate;\n}\n.hand:nth-child(2) {\n left: 92%;\n background: linear-gradient(to right, white 15%, gray);\n transform: rotateY(55deg) rotateZ(-10deg);\n animation: compensateRotationRight var(--EVA-ROTATION-DURATION) linear\n infinite alternate;\n}\n.scannerThing {\n width: 0;\n height: 0;\n position: absolute;\n left: 60%;\n top: 10%;\n border-top: 180px solid #9bdaeb;\n border-left: 250px solid transparent;\n border-right: 250px solid transparent;\n transform-origin: top left;\n mask: linear-gradient(to right, white, transparent 35%);\n animation: glow 2s cubic-bezier(0.86, 0, 0.07, 1) infinite;\n}\n.scannerOrigin {\n position: absolute;\n width: 8px;\n aspect-ratio: 1;\n border-radius: 50%;\n left: 60%;\n top: 10%;\n background: #9bdaeb;\n box-shadow: inset 0px 0px 5px rgba(0, 0, 0, 0.5);\n animation: moveRight var(--EVA-ROTATION-DURATION) linear infinite;\n}\n@keyframes rotateRight {\n from {\n transform: rotateY(0deg);\n }\n to {\n transform: rotateY(25deg);\n }\n}\n@keyframes moveRight {\n from {\n transform: translate(-50%, -50%);\n }\n to {\n transform: translate(-40%, -50%);\n }\n}\n@keyframes compensateRotation {\n from {\n transform: rotateY(55deg) rotateZ(10deg);\n }\n to {\n transform: rotatey(30deg) rotateZ(10deg);\n }\n}\n@keyframes compensateRotationRight {\n from {\n transform: rotateY(55deg) rotateZ(-10deg);\n }\n to {\n transform: rotateY(70deg) rotateZ(-10deg);\n }\n}\n@keyframes glow {\n from {\n opacity: 0;\n }\n 20% {\n opacity: 1;\n }\n 45% {\n transform: rotate(-25deg);\n }\n 75% {\n transform: rotate(5deg);\n }\n 100% {\n opacity: 0;\n }\n}",
"file_path": "/mnt/persist/workspace/loaders/Subaashbala_polite-newt-9.html"
},
"uniapp": {
"template": "<view class=\"loader\"></view>\n <view class=\"modelViewPort\"></view>\n <view class=\"eva\"></view>\n <view class=\"head\"></view>\n <view class=\"eyeChamber\"></view>\n <view class=\"eye\"></view>\n <view class=\"eye\"></view>\n </div>\n </div>\n <view class=\"body\"></view>\n <view class=\"hand\"></view>\n <view class=\"hand\"></view>\n <view class=\"scannerThing\"></view>\n <view class=\"scannerOrigin\"></view>\n </div>\n </div>\n </div>\n</div>",
"script": "export default {\n name: 'GalaxyPoliteNewt9',\n props: {\n // 根据组件类型动态生成props\n },\n data() {\n return {\n // 组件状态\n };\n },\n methods: {\n // 组件方法\n }\n}",
"style": "\n/* From Uiverse.io by Subaashbala - Tags: loader, animated, loading animation, 3d loader */\n.modelViewPort {\n /* The black circle background around the model*/\n perspective: 2000rpx;\n width: 20rem;\n aspect-ratio: 1;\n border-radius: 50%;\n display: flex;\n justify-content: center;\n align-items: center;\n background: #000;\n overflow: hidden;\n}\n.eva {\n --EVA-ROTATION-DURATION: 4s;\n transform-style: preserve-3d;\n animation: rotateRight var(--EVA-ROTATION-DURATION) linear infinite alternate;\n}\n.head {\n position: relative;\n width: 6rem;\n height: 4rem;\n border-radius: 48% 53% 45% 55% / 79% 79% 20% 22%;\n background: linear-gradient(to right, white 45%, gray);\n}\n.eyeChamber {\n width: 4.5rem;\n height: 2.75rem;\n position: relative;\n left: 50%;\n top: 55%;\n border-radius: 45% 53% 45% 48% / 62% 59% 35% 34%;\n background-color: #0c203c;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 0rpx 0rpx 4rpx 4rpx white, inset 0rpx 0rpx 0rpx 4rpx black;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: translate(-50%, -50%);\n animation: moveRight var(--EVA-ROTATION-DURATION) linear infinite alternate;\n}\n.eye {\n width: 1.2rem;\n height: 1.5rem;\n position: absolute;\n border-radius: 50%;\n}\n.eye:first-child {\n left: 24rpx;\n top: 50%;\n background: repeating-linear-gradient(\n 65deg,\n #9bdaeb 0rpx,\n #9bdaeb 2rpx,\n white 4rpx\n );\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: inset 0rpx 0rpx 10rpx #04b8d5, 0rpx 0rpx 30rpx 2rpx #0bdaeb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: translate(0, -50%) rotate(-65deg);\n}\n.eye:nth-child(2) {\n right: 24rpx;\n top: 50%;\n background: repeating-linear-gradient(\n -65deg,\n #9bdaeb 0rpx,\n #9bdaeb 2rpx,\n white 4rpx\n );\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: inset 0rpx 0rpx 10rpx #04b8d5, 0rpx 0rpx 30rpx 2rpx #0bdaeb;\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: translate(0, -50%) rotate(65deg);\n}\n.body {\n width: 6rem;\n height: 8rem;\n position: relative;\n margin-block-start: 0.25rem;\n border-radius: 47% 53% 45% 55% / 12% 9% 90% 88%;\n background: linear-gradient(to right, white 35%, gray);\n}\n.hand {\n position: absolute;\n left: -1.5rem;\n top: 0.75rem;\n width: 2rem;\n height: 5.5rem;\n border-radius: 40%;\n background: linear-gradient(to left, white 15%, gray);\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: 10rpx 0rpx 10rpx rgba(0, 0, 0, 0.25);\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n transform: rotateY(55deg) rotateZ(10deg);\n}\n.hand:first-child {\n animation: compensateRotation var(--EVA-ROTATION-DURATION) linear infinite\n alternate;\n}\n.hand:nth-child(2) {\n left: 92%;\n background: linear-gradient(to right, white 15%, gray);\n transform: rotateY(55deg) rotateZ(-10deg);\n animation: compensateRotationRight var(--EVA-ROTATION-DURATION) linear\n infinite alternate;\n}\n.scannerThing {\n width: 0;\n height: 0;\n position: absolute;\n left: 60%;\n top: 10%;\n border-top: 360rpx solid #9bdaeb;\n border-left: 500rpx solid transparent;\n border-right: 500rpx solid transparent;\n transform-origin: top left;\n \n animation: glow 2s cubic-bezier(0.86, 0, 0.07, 1) infinite;\n}\n.scannerOrigin {\n position: absolute;\n width: 16rpx;\n aspect-ratio: 1;\n border-radius: 50%;\n left: 60%;\n top: 10%;\n background: #9bdaeb;\n /* #ifdef H5 */\n /* #ifdef H5 */\n box-shadow: inset 0rpx 0rpx 10rpx rgba(0, 0, 0, 0.5);\n /* #endif */\n /* #ifdef MP */\n border: 1rpx solid rgba(0,0,0,0.1);\n /* #endif */\n /* #endif */\n animation: moveRight var(--EVA-ROTATION-DURATION) linear infinite;\n}\n@keyframes rotateRight {\n from {\n transform: rotateY(0deg);\n }\n to {\n transform: rotateY(25deg);\n }\n}\n@keyframes moveRight {\n from {\n transform: translate(-50%, -50%);\n }\n to {\n transform: translate(-40%, -50%);\n }\n}\n@keyframes compensateRotation {\n from {\n transform: rotateY(55deg) rotateZ(10deg);\n }\n to {\n transform: rotatey(30deg) rotateZ(10deg);\n }\n}\n@keyframes compensateRotationRight {\n from {\n transform: rotateY(55deg) rotateZ(-10deg);\n }\n to {\n transform: rotateY(70deg) rotateZ(-10deg);\n }\n}\n@keyframes glow {\n from {\n opacity: 0;\n }\n 20% {\n opacity: 1;\n }\n 45% {\n transform: rotate(-25deg);\n }\n 75% {\n transform: rotate(5deg);\n }\n 100% {\n opacity: 0;\n }\n}\n\n",
"component_name": "GalaxyPoliteNewt9"
},
"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 属性",
"不支持 mask 属性"
],
"alternatives": []
},
"mp-alipay": {
"supported": true,
"issues": [
"不支持 box-shadow 属性",
"不支持 mask 属性"
],
"alternatives": []
},
"app-plus": {
"supported": true,
"issues": [],
"alternatives": []
}
},
"performance": {
"complexity": "high",
"bundle_size": 4288,
"render_cost": "high",
"memory_usage": "high"
},
"dependencies": [],
"examples": [
{
"title": "",
"description": "",
"code": ""
}
],
"created_at": "2025-07-31T07:55:40.627Z",
"updated_at": "2025-07-31T07:55:40.627Z"
}