UNPKG

galaxy-uniapp-mcp-server

Version:

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

95 lines 11.9 kB
{ "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" }