@lovrabet/cli 1.2.4 → 1.2.5-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/lib/add-page/input-page-router.js +1 -1
  2. package/lib/add-page/main.js +1 -1
  3. package/lib/add-page/select-page-template.js +1 -1
  4. package/lib/api/api-doc-ui.js +1 -1
  5. package/lib/api/api-doc.js +1 -1
  6. package/lib/api/api-pull-ui.js +1 -1
  7. package/lib/api/fetch-model-list.js +1 -1
  8. package/lib/api/generate-api-file.js +1 -1
  9. package/lib/api/main.js +1 -1
  10. package/lib/api/pull-silent.js +1 -1
  11. package/lib/app-menu/app-menu-sync-ui.js +1 -1
  12. package/lib/app-menu/create-menu.js +1 -1
  13. package/lib/app-menu/get-local-pages.js +1 -1
  14. package/lib/app-menu/get-online-menu-list.js +1 -1
  15. package/lib/app-menu/use-get-online-menu-list.js +1 -1
  16. package/lib/app-menu/utils.js +1 -1
  17. package/lib/app-menu/valid-url.js +1 -1
  18. package/lib/app-menu-update-cdn/current-content.js +1 -1
  19. package/lib/app-menu-update-cdn/input-cdn-asset.js +1 -1
  20. package/lib/app-menu-update-cdn/main.js +1 -1
  21. package/lib/app-menu-update-cdn/update-menu-cdn-url.js +1 -1
  22. package/lib/auth/auth-server-ui.js +1 -1
  23. package/lib/auth/auth-server.js +1 -1
  24. package/lib/auth/constant.js +1 -1
  25. package/lib/auth/get-cookie.js +1 -1
  26. package/lib/auth/is-session-valid.js +1 -1
  27. package/lib/auth/logout.js +1 -1
  28. package/lib/cli.js +1 -1
  29. package/lib/cmd/build-watch.js +1 -1
  30. package/lib/cmd/build.js +1 -1
  31. package/lib/cmd/logs.js +1 -1
  32. package/lib/cmd/preview.js +1 -1
  33. package/lib/cmd/start.js +1 -1
  34. package/lib/config/config-help.js +1 -1
  35. package/lib/config/main.js +1 -1
  36. package/lib/constant/domain.js +1 -1
  37. package/lib/constant/env.js +1 -1
  38. package/lib/create-app/enhanced-guided-create.js +1 -1
  39. package/lib/create-app/format-elapsed.js +1 -1
  40. package/lib/create-app/main.js +1 -1
  41. package/lib/create-app/task-finished.js +1 -1
  42. package/lib/create-app/task-loading.js +1 -1
  43. package/lib/create-app/task-running.js +1 -1
  44. package/lib/create-app/task-time.js +1 -1
  45. package/lib/create-app/use-copy-project-template.js +1 -1
  46. package/lib/create-app/use-format-code.js +1 -1
  47. package/lib/create-app/use-install-dependencies.js +1 -1
  48. package/lib/help.js +1 -1
  49. package/lib/init/main.js +1 -1
  50. package/lib/mcp/claude.js +1 -0
  51. package/lib/mcp/cursor.js +1 -1
  52. package/lib/mcp/main.js +1 -1
  53. package/lib/skills/main.js +1 -0
  54. package/lib/utils/check-sdk-version.js +1 -1
  55. package/lib/utils/config.js +1 -1
  56. package/lib/utils/copy-directory.js +1 -1
  57. package/lib/utils/http-client.js +1 -1
  58. package/lib/utils/logger.js +1 -1
  59. package/lib/utils/router-updater.js +1 -1
  60. package/lib/utils/sleep.js +1 -1
  61. package/lib/utils/template-replacer.js +1 -1
  62. package/package.json +1 -1
  63. package/templates/projects/sub-app-react-demo/index.html +22 -34
  64. package/templates/projects/sub-app-react-demo/public/logo.svg +1 -0
  65. package/templates/projects/sub-app-react-demo/src/api/api.ts +1 -1
  66. package/templates/projects/sub-app-react-demo/src/api/client.ts +1 -1
  67. package/templates/projects/sub-app-react-demo/src/layouts/MainLayout.tsx +44 -71
  68. package/templates/projects/sub-app-react-demo/src/pages/index.tsx +387 -927
  69. package/templates/projects/sub-app-react-demo/src/pages/sdk-demo/index.tsx +1 -1
  70. package/templates/projects/sub-app-react-demo/src/pages/workbench/index.module.css +293 -0
  71. package/templates/projects/sub-app-react-demo/src/pages/workbench/index.tsx +100 -414
  72. package/templates/projects/sub-app-react-demo/src/style.css +21 -15
  73. package/templates/projects/sub-app-react-demo/vite.config.ts +18 -13
  74. package/templates/rules/lovrabet_rules.mdc.tpl +636 -43
  75. package/templates/skills/.claude/skills/lovrabet/SKILL.md +258 -0
  76. package/templates/skills/.cursor/commands/lovrabet.md +248 -0
  77. package/templates/skills/.cursorrules +109 -0
  78. package/templates/skills/.shared/README.md +45 -0
  79. package/templates/skills/.shared/guides/01-filter-query/guide.md +300 -0
  80. package/templates/skills/.shared/guides/02-mcp-sql-workflow/guide.md +272 -0
  81. package/templates/skills/.shared/guides/03-antd-style/guide.md +227 -0
  82. package/templates/skills/.shared/guides/04-troubleshooting/guide.md +426 -0
  83. package/templates/skills/.shared/guides/05-api-integration/guide.md +327 -0
  84. package/templates/skills/.shared/guides/06-menu-management/guide.md +305 -0
  85. package/templates/skills/.shared/guides/07-backend-function/guide.md +679 -0
  86. package/templates/skills/.windsurf/workflows/lovrabet.md +257 -0
  87. package/templates/projects/sub-app-react-demo/.vscode/extensions.json +0 -3
  88. package/templates/projects/sub-app-react-demo/.vscode/settings.json +0 -57
  89. package/templates/projects/sub-app-react-demo/src/pages/intro/index.tsx +0 -560
@@ -1,560 +0,0 @@
1
- import React from "react";
2
- import {
3
- Typography,
4
- Card,
5
- Row,
6
- Col,
7
- Space,
8
- Tag,
9
- Divider,
10
- Button,
11
- Steps,
12
- Alert,
13
- } from "antd";
14
- import {
15
- RocketOutlined,
16
- ToolOutlined,
17
- ApiOutlined,
18
- CloudServerOutlined,
19
- RobotOutlined,
20
- ThunderboltOutlined,
21
- FileTextOutlined,
22
- LinkOutlined,
23
- CheckCircleOutlined,
24
- PlayCircleOutlined,
25
- CodeOutlined,
26
- SettingOutlined,
27
- SyncOutlined,
28
- BuildOutlined,
29
- BulbOutlined,
30
- QuestionCircleOutlined,
31
- } from "@ant-design/icons";
32
-
33
- const { Title, Paragraph, Text } = Typography;
34
-
35
- function IntroPage() {
36
- return (
37
- <div style={{ maxWidth: "1400px", margin: "0 auto" }}>
38
- {/* 欢迎横幅 */}
39
- <Card
40
- style={{
41
- background: "linear-gradient(135deg, #667eea 0%, #764ba2 100%)",
42
- border: "none",
43
- }}
44
- >
45
- <Row align="middle" gutter={24}>
46
- <Col xs={24} md={16}>
47
- <Title level={1} style={{ color: "#fff", margin: 0 }}>
48
- <RocketOutlined /> 欢迎使用 Lovrabet BaaS 开发体系
49
- </Title>
50
- <Paragraph
51
- style={{
52
- color: "#fff",
53
- fontSize: 16,
54
- marginTop: 16,
55
- marginBottom: 0,
56
- }}
57
- >
58
- 完整的工具链让您快速构建企业级应用:
59
- <Text strong style={{ color: "#fff" }}>
60
- CLI 脚手架
61
- </Text>{" "}
62
- +{" "}
63
- <Text strong style={{ color: "#fff" }}>
64
- SDK 数据访问
65
- </Text>{" "}
66
- +{" "}
67
- <Text strong style={{ color: "#fff" }}>
68
- MCP AI 辅助
69
- </Text>
70
- </Paragraph>
71
- </Col>
72
- <Col xs={24} md={8} style={{ textAlign: "right" }}>
73
- <Space>
74
- <Button
75
- type="primary"
76
- size="large"
77
- icon={<PlayCircleOutlined />}
78
- href="https://open.lovrabet.com/docs/lovrabet-cli/quickstart"
79
- target="_blank"
80
- style={{
81
- background: "#fff",
82
- color: "#667eea",
83
- border: "none",
84
- }}
85
- >
86
- 快速开始
87
- </Button>
88
- <Button
89
- size="large"
90
- icon={<FileTextOutlined />}
91
- href="https://open.lovrabet.com"
92
- target="_blank"
93
- style={{
94
- background: "rgba(255,255,255,0.2)",
95
- color: "#fff",
96
- border: "1px solid rgba(255,255,255,0.3)",
97
- }}
98
- >
99
- 查看文档
100
- </Button>
101
- </Space>
102
- </Col>
103
- </Row>
104
- </Card>
105
-
106
- {/* Lovrabet 面向技术人员的开放平台能做什么 */}
107
- <Card style={{ marginTop: 24 }}>
108
- <Title level={2}>
109
- <BulbOutlined style={{ color: "#1890ff", marginRight: 8 }} />
110
- Lovrabet 面向技术人员的开放平台能做什么
111
- </Title>
112
- <Paragraph style={{ fontSize: 16, color: "#666" }}>
113
- Lovrabet 开放平台为技术人员提供完整的二次开发能力,让您能够基于
114
- Lovrabet 的 AI 能力构建企业级应用。
115
- </Paragraph>
116
- <Row gutter={[16, 16]} style={{ marginTop: 24 }}>
117
- <Col xs={24} sm={12} md={8}>
118
- <Card hoverable>
119
- <div style={{ textAlign: "center" }}>
120
- <ToolOutlined
121
- style={{ fontSize: 48, color: "#1890ff", marginBottom: 16 }}
122
- />
123
- <Title level={4}>快速创建项目</Title>
124
- <Paragraph>
125
- 使用 CLI 工具一键创建标准化的前端项目,自动配置路由、构建工具等
126
- </Paragraph>
127
- </div>
128
- </Card>
129
- </Col>
130
- <Col xs={24} sm={12} md={8}>
131
- <Card hoverable>
132
- <div style={{ textAlign: "center" }}>
133
- <ApiOutlined
134
- style={{ fontSize: 48, color: "#52c41a", marginBottom: 16 }}
135
- />
136
- <Title level={4}>简化数据访问</Title>
137
- <Paragraph>
138
- 通过 SDK 轻松访问 Lovrabet 平台的数据,支持类型安全的 API
139
- 调用
140
- </Paragraph>
141
- </div>
142
- </Card>
143
- </Col>
144
- <Col xs={24} sm={12} md={8}>
145
- <Card hoverable>
146
- <div style={{ textAlign: "center" }}>
147
- <RobotOutlined
148
- style={{ fontSize: 48, color: "#fa8c16", marginBottom: 16 }}
149
- />
150
- <Title level={4}>AI 辅助开发</Title>
151
- <Paragraph>
152
- 通过 MCP 让 AI 深度理解您的数据结构,实现智能代码生成
153
- </Paragraph>
154
- </div>
155
- </Card>
156
- </Col>
157
- </Row>
158
- </Card>
159
-
160
- {/* 为什么需要二次开发 */}
161
- <Card style={{ marginTop: 24 }}>
162
- <Title level={2}>
163
- <QuestionCircleOutlined style={{ color: "#1890ff", marginRight: 8 }} />
164
- 为什么需要二次开发
165
- </Title>
166
- <Paragraph style={{ fontSize: 16, color: "#666", marginBottom: 24 }}>
167
- 虽然 Lovrabet 平台提供了强大的 AI
168
- 能力,但在某些场景下,您仍然需要进行二次开发来满足特定的业务需求。
169
- </Paragraph>
170
-
171
- <Alert
172
- message="以下场景必须通过二次开发才能实现"
173
- type="info"
174
- style={{ marginBottom: 24 }}
175
- />
176
-
177
- <Row gutter={[16, 16]}>
178
- <Col xs={24} md={12}>
179
- <Card size="small" style={{ height: "100%" }}>
180
- <Title level={4}>
181
- <CodeOutlined style={{ color: "#1890ff", marginRight: 8 }} />
182
- 1. 复杂业务逻辑
183
- </Title>
184
- <Paragraph>
185
- 当业务逻辑超出平台标准能力时,需要自定义开发:
186
- </Paragraph>
187
- <ul>
188
- <li>
189
- <strong>批量操作</strong>:批量修改、批量导入导出等
190
- </li>
191
- <li>
192
- <strong>复杂校验</strong>:写入数据表之前有复杂的业务逻辑校验
193
- </li>
194
- <li>
195
- <strong>特殊算法</strong>:字段值有特殊算法处理,例如加盐的
196
- MD5 加密
197
- </li>
198
- </ul>
199
- <div style={{ marginTop: 16, padding: 12, background: "#f5f5f5", borderRadius: 4 }}>
200
- <Text code>
201
- {`// 示例:复杂业务逻辑
202
- if (data.password) {
203
- data.password = md5(data.password + salt);
204
- }
205
- // 自定义校验逻辑
206
- validateBusinessRules(data);`}
207
- </Text>
208
- </div>
209
- </Card>
210
- </Col>
211
- <Col xs={24} md={12}>
212
- <Card size="small" style={{ height: "100%" }}>
213
- <Title level={4}>
214
- <BuildOutlined style={{ color: "#52c41a", marginRight: 8 }} />
215
- 2. 个性化页面设计
216
- </Title>
217
- <Paragraph>
218
- 需要定制化的页面展示和交互:
219
- </Paragraph>
220
- <ul>
221
- <li>
222
- <strong>数据大屏</strong>:可视化数据展示,实时监控
223
- </li>
224
- <li>
225
- <strong>自定义 UI</strong>:独特的页面设计和交互体验
226
- </li>
227
- <li>
228
- <strong>特殊布局</strong>:不符合标准模板的页面结构
229
- </li>
230
- </ul>
231
- </Card>
232
- </Col>
233
- <Col xs={24} md={12}>
234
- <Card size="small" style={{ height: "100%" }}>
235
- <Title level={4}>
236
- <CloudServerOutlined
237
- style={{ color: "#fa8c16", marginRight: 8 }}
238
- />
239
- 3. H5、小程序开发
240
- </Title>
241
- <Paragraph>
242
- 移动端应用开发需求:
243
- </Paragraph>
244
- <Alert
245
- message="当前 Lovrabet 体系暂不支持 H5/小程序开发(计划 2026 年 Q2 可支持)"
246
- type="warning"
247
- style={{ marginTop: 16 }}
248
- />
249
- <Paragraph style={{ marginTop: 16 }}>
250
- 如需开发 H5 或小程序,需要通过二次开发实现。
251
- </Paragraph>
252
- </Card>
253
- </Col>
254
- <Col xs={24} md={12}>
255
- <Card size="small" style={{ height: "100%" }}>
256
- <Title level={4}>
257
- <SyncOutlined style={{ color: "#eb2f96", marginRight: 8 }} />
258
- 4. 其他扩展需求
259
- </Title>
260
- <Paragraph>其他需要自定义开发的场景:</Paragraph>
261
- <ul>
262
- <li>
263
- <strong>第三方集成</strong>:与外部系统对接
264
- </li>
265
- <li>
266
- <strong>行业算法</strong>:特定行业的业务算法
267
- </li>
268
- <li>
269
- <strong>特殊功能</strong>:平台未提供的功能模块
270
- </li>
271
- </ul>
272
- </Card>
273
- </Col>
274
- </Row>
275
- </Card>
276
-
277
- {/* 三个核心工具 */}
278
- <Card style={{ marginTop: 24 }}>
279
- <Title level={2}>
280
- <ThunderboltOutlined style={{ color: "#1890ff", marginRight: 8 }} />
281
- 三个核心工具
282
- </Title>
283
- <Row gutter={[24, 24]} style={{ marginTop: 24 }}>
284
- <Col xs={24} md={8}>
285
- <Card
286
- hoverable
287
- style={{
288
- border: "2px solid #1890ff",
289
- height: "100%",
290
- }}
291
- >
292
- <div style={{ textAlign: "center", marginBottom: 16 }}>
293
- <ToolOutlined style={{ fontSize: 64, color: "#1890ff" }} />
294
- </div>
295
- <Title level={3} style={{ textAlign: "center" }}>
296
- Lovrabet CLI
297
- </Title>
298
- <Paragraph style={{ textAlign: "center" }}>
299
- 脚手架工具,快速创建和管理前端应用项目
300
- </Paragraph>
301
- <Divider />
302
- <Space direction="vertical" style={{ width: "100%" }}>
303
- <div>
304
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
305
- <Text>一键创建项目</Text>
306
- </div>
307
- <div>
308
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
309
- <Text>自动生成 API 配置</Text>
310
- </div>
311
- <div>
312
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
313
- <Text>菜单智能同步</Text>
314
- </div>
315
- </Space>
316
- <div style={{ marginTop: 16, textAlign: "center" }}>
317
- <Button
318
- type="primary"
319
- href="https://open.lovrabet.com/docs/category/lovrabet-cli"
320
- target="_blank"
321
- >
322
- 查看文档 <LinkOutlined />
323
- </Button>
324
- </div>
325
- </Card>
326
- </Col>
327
- <Col xs={24} md={8}>
328
- <Card
329
- hoverable
330
- style={{
331
- border: "2px solid #52c41a",
332
- height: "100%",
333
- }}
334
- >
335
- <div style={{ textAlign: "center", marginBottom: 16 }}>
336
- <ApiOutlined style={{ fontSize: 64, color: "#52c41a" }} />
337
- </div>
338
- <Title level={3} style={{ textAlign: "center" }}>
339
- Lovrabet SDK
340
- </Title>
341
- <Paragraph style={{ textAlign: "center" }}>
342
- Node.js SDK,简化前端 API 集成和数据访问
343
- </Paragraph>
344
- <Divider />
345
- <Space direction="vertical" style={{ width: "100%" }}>
346
- <div>
347
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
348
- <Text>类型安全的 API</Text>
349
- </div>
350
- <div>
351
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
352
- <Text>自动处理认证</Text>
353
- </div>
354
- <div>
355
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
356
- <Text>支持复杂查询</Text>
357
- </div>
358
- </Space>
359
- <div style={{ marginTop: 16, textAlign: "center" }}>
360
- <Button
361
- type="primary"
362
- href="https://open.lovrabet.com/docs/category/lovrabet-node-sdk"
363
- target="_blank"
364
- >
365
- 查看文档 <LinkOutlined />
366
- </Button>
367
- </div>
368
- </Card>
369
- </Col>
370
- <Col xs={24} md={8}>
371
- <Card
372
- hoverable
373
- style={{
374
- border: "2px solid #fa8c16",
375
- height: "100%",
376
- }}
377
- >
378
- <div style={{ textAlign: "center", marginBottom: 16 }}>
379
- <RobotOutlined style={{ fontSize: 64, color: "#fa8c16" }} />
380
- </div>
381
- <Title level={3} style={{ textAlign: "center" }}>
382
- Lovrabet MCP
383
- </Title>
384
- <Paragraph style={{ textAlign: "center" }}>
385
- AI 辅助开发服务,让 AI 深度理解您的数据结构
386
- </Paragraph>
387
- <Divider />
388
- <Space direction="vertical" style={{ width: "100%" }}>
389
- <div>
390
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
391
- <Text>智能代码生成</Text>
392
- </div>
393
- <div>
394
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
395
- <Text>理解业务上下文</Text>
396
- </div>
397
- <div>
398
- <CheckCircleOutlined style={{ color: "#52c41a", marginRight: 8 }} />
399
- <Text>提升开发效率</Text>
400
- </div>
401
- </Space>
402
- <div style={{ marginTop: 16, textAlign: "center" }}>
403
- <Button
404
- type="primary"
405
- href="https://open.lovrabet.com/docs/mcp/intro"
406
- target="_blank"
407
- >
408
- 查看文档 <LinkOutlined />
409
- </Button>
410
- </div>
411
- </Card>
412
- </Col>
413
- </Row>
414
- </Card>
415
-
416
- {/* 5分钟快速开始 */}
417
- <Card style={{ marginTop: 24 }}>
418
- <Title level={2}>
419
- <PlayCircleOutlined style={{ color: "#1890ff", marginRight: 8 }} />
420
- 5 分钟快速开始
421
- </Title>
422
- <Steps
423
- direction="vertical"
424
- size="small"
425
- items={[
426
- {
427
- title: "安装 CLI 工具",
428
- description: (
429
- <div>
430
- <Text code>npm install -g @lovrabet/cli</Text>
431
- </div>
432
- ),
433
- icon: <SettingOutlined />,
434
- },
435
- {
436
- title: "创建项目",
437
- description: (
438
- <div>
439
- <Text code>lovrabet create my-app</Text>
440
- </div>
441
- ),
442
- icon: <BuildOutlined />,
443
- },
444
- {
445
- title: "生成 API 配置",
446
- description: (
447
- <div>
448
- <Text code>lovrabet api pull --appcode your-app-code</Text>
449
- </div>
450
- ),
451
- icon: <SyncOutlined />,
452
- },
453
- {
454
- title: "开始开发",
455
- description: (
456
- <div>
457
- <Text code>cd my-app && npm start</Text>
458
- </div>
459
- ),
460
- icon: <RocketOutlined />,
461
- },
462
- ]}
463
- />
464
- </Card>
465
-
466
- {/* Bilibili 视频 */}
467
- <Card style={{ marginTop: 24 }}>
468
- <Title level={2}>
469
- <PlayCircleOutlined style={{ color: "#1890ff", marginRight: 8 }} />
470
- 视频教程
471
- </Title>
472
- <div
473
- style={{
474
- position: "relative",
475
- width: "100%",
476
- paddingBottom: "56.25%", // 16:9 aspect ratio
477
- height: 0,
478
- overflow: "hidden",
479
- borderRadius: 8,
480
- background: "#000",
481
- marginTop: 16,
482
- }}
483
- >
484
- <iframe
485
- src="//player.bilibili.com/player.html?isOutside=true&aid=115291971391698&bvid=BV1rBn2zvE8W&cid=32740478316&p=1"
486
- scrolling="no"
487
- frameBorder="0"
488
- allowFullScreen={true}
489
- style={{
490
- position: "absolute",
491
- top: 0,
492
- left: 0,
493
- width: "100%",
494
- height: "100%",
495
- border: "none",
496
- }}
497
- ></iframe>
498
- </div>
499
- </Card>
500
-
501
- {/* 文档和资源 */}
502
- <Card style={{ marginTop: 24 }}>
503
- <Title level={2}>
504
- <FileTextOutlined style={{ color: "#1890ff", marginRight: 8 }} />
505
- 文档和资源
506
- </Title>
507
- <Row gutter={[16, 16]} style={{ marginTop: 24 }}>
508
- <Col xs={24} sm={12} md={8}>
509
- <Card hoverable>
510
- <FileTextOutlined style={{ fontSize: 32, color: "#1890ff" }} />
511
- <Title level={4}>CLI 文档</Title>
512
- <Paragraph>
513
- <a
514
- href="https://open.lovrabet.com/docs/category/lovrabet-cli"
515
- target="_blank"
516
- rel="noopener noreferrer"
517
- >
518
- 查看完整文档 <LinkOutlined />
519
- </a>
520
- </Paragraph>
521
- </Card>
522
- </Col>
523
- <Col xs={24} sm={12} md={8}>
524
- <Card hoverable>
525
- <FileTextOutlined style={{ fontSize: 32, color: "#52c41a" }} />
526
- <Title level={4}>SDK 文档</Title>
527
- <Paragraph>
528
- <a
529
- href="https://open.lovrabet.com/docs/category/lovrabet-node-sdk"
530
- target="_blank"
531
- rel="noopener noreferrer"
532
- >
533
- 查看完整文档 <LinkOutlined />
534
- </a>
535
- </Paragraph>
536
- </Card>
537
- </Col>
538
- <Col xs={24} sm={12} md={8}>
539
- <Card hoverable>
540
- <FileTextOutlined style={{ fontSize: 32, color: "#fa8c16" }} />
541
- <Title level={4}>MCP 文档</Title>
542
- <Paragraph>
543
- <a
544
- href="https://open.lovrabet.com/docs/mcp/intro"
545
- target="_blank"
546
- rel="noopener noreferrer"
547
- >
548
- 查看完整文档 <LinkOutlined />
549
- </a>
550
- </Paragraph>
551
- </Card>
552
- </Col>
553
- </Row>
554
- </Card>
555
- </div>
556
- );
557
- }
558
-
559
- export default IntroPage;
560
-