mock.ts 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. import Mock from 'mockjs';
  2. import setupMock, { successResponseWrap } from '@/utils/setup-mock';
  3. setupMock({
  4. mock: false,
  5. setup() {
  6. // 最新项目
  7. Mock.mock(new RegExp('/api/user/my-project/list'), () => {
  8. const contributors = [
  9. {
  10. name: '秦臻宇',
  11. email: 'qingzhenyu@arco.design',
  12. avatar:
  13. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp',
  14. },
  15. {
  16. name: '于涛',
  17. email: 'yuebao@arco.design',
  18. avatar:
  19. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp',
  20. },
  21. {
  22. name: '宁波',
  23. email: 'ningbo@arco.design',
  24. avatar:
  25. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp',
  26. },
  27. {
  28. name: '郑曦月',
  29. email: 'zhengxiyue@arco.design',
  30. avatar:
  31. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/8361eeb82904210b4f55fab888fe8416.png~tplv-uwbnlip3yd-webp.webp',
  32. },
  33. {
  34. name: '宁波',
  35. email: 'ningbo@arco.design',
  36. avatar:
  37. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp',
  38. },
  39. ];
  40. const units = [
  41. {
  42. name: '企业级产品设计系统',
  43. description: 'Arco Design System',
  44. },
  45. {
  46. name: '火山引擎智能应用',
  47. description: 'The Volcano Engine',
  48. },
  49. {
  50. name: 'OCR文本识别',
  51. description: 'OCR text recognition',
  52. },
  53. {
  54. name: '内容资源管理',
  55. description: 'Content resource management ',
  56. },
  57. {
  58. name: '今日头条内容管理',
  59. description: 'Toutiao content management',
  60. },
  61. {
  62. name: '智能机器人',
  63. description: 'Intelligent Robot Project',
  64. },
  65. ];
  66. return successResponseWrap(
  67. new Array(6).fill(null).map((_item, index) => ({
  68. id: index,
  69. name: units[index].name,
  70. description: units[index].description,
  71. peopleNumber: Mock.Random.natural(10, 1000),
  72. contributors,
  73. }))
  74. );
  75. });
  76. // 最新动态
  77. Mock.mock(new RegExp('/api/user/latest-activity'), () => {
  78. return successResponseWrap(
  79. new Array(7).fill(null).map((_item, index) => ({
  80. id: index,
  81. title: '发布了项目 Arco Design System',
  82. description: '企业级产品设计系统',
  83. avatar:
  84. '//lf1-xgcdn-tos.pstatp.com/obj/vcloud/vadmin/start.8e0e4855ee346a46ccff8ff3e24db27b.png',
  85. }))
  86. );
  87. });
  88. // 访问量
  89. Mock.mock(new RegExp('/api/user/visits'), () => {
  90. return successResponseWrap([
  91. {
  92. name: '主页访问量',
  93. visits: 5670,
  94. growth: 206.32,
  95. },
  96. {
  97. name: '项目访问量',
  98. visits: 5670,
  99. growth: 206.32,
  100. },
  101. ]);
  102. });
  103. // 项目和团队列表
  104. Mock.mock(new RegExp('/api/user/project-and-team/list'), () => {
  105. return successResponseWrap([
  106. {
  107. id: 1,
  108. content: '他创建的项目',
  109. },
  110. {
  111. id: 2,
  112. content: '他参与的项目',
  113. },
  114. {
  115. id: 3,
  116. content: '他创建的团队',
  117. },
  118. {
  119. id: 4,
  120. content: '他加入的团队',
  121. },
  122. ]);
  123. });
  124. // 团队列表
  125. Mock.mock(new RegExp('/api/user/my-team/list'), () => {
  126. return successResponseWrap([
  127. {
  128. id: 1,
  129. avatar:
  130. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp',
  131. name: '火山引擎智能应用团队',
  132. peopleNumber: Mock.Random.natural(10, 100),
  133. },
  134. {
  135. id: 2,
  136. avatar:
  137. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp',
  138. name: '企业级产品设计团队',
  139. peopleNumber: Mock.Random.natural(5000, 6000),
  140. },
  141. {
  142. id: 3,
  143. avatar:
  144. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp',
  145. name: '前端/UE小分队',
  146. peopleNumber: Mock.Random.natural(10, 5000),
  147. },
  148. {
  149. id: 4,
  150. avatar:
  151. '//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/8361eeb82904210b4f55fab888fe8416.png~tplv-uwbnlip3yd-webp.webp',
  152. name: '内容识别插件小分队',
  153. peopleNumber: Mock.Random.natural(10, 100),
  154. },
  155. ]);
  156. });
  157. },
  158. });