examples.ts 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  1. import type { RouteRecordRaw } from 'vue-router';
  2. import { BasicLayout } from '#/layouts';
  3. import { $t } from '#/locales';
  4. const routes: RouteRecordRaw[] = [
  5. {
  6. component: BasicLayout,
  7. meta: {
  8. icon: 'ion:layers-outline',
  9. keepAlive: true,
  10. order: 1000,
  11. title: $t('page.examples.title'),
  12. },
  13. name: 'Examples',
  14. path: '/examples',
  15. children: [
  16. {
  17. name: 'ModalExample',
  18. path: '/examples/modal',
  19. component: () => import('#/views/examples/modal/index.vue'),
  20. meta: {
  21. icon: 'system-uicons:window-content',
  22. title: $t('page.examples.modal.title'),
  23. },
  24. },
  25. {
  26. name: 'DrawerExample',
  27. path: '/examples/drawer',
  28. component: () => import('#/views/examples/drawer/index.vue'),
  29. meta: {
  30. icon: 'iconoir:drawer',
  31. title: $t('page.examples.drawer.title'),
  32. },
  33. },
  34. {
  35. name: 'EllipsisExample',
  36. path: '/examples/ellipsis',
  37. component: () => import('#/views/examples/ellipsis/index.vue'),
  38. meta: {
  39. icon: 'ion:ellipsis-horizontal',
  40. title: $t('page.examples.ellipsis.title'),
  41. },
  42. },
  43. {
  44. name: 'FormExample',
  45. path: '/examples/form',
  46. meta: {
  47. icon: 'mdi:form-select',
  48. title: $t('page.examples.form.title'),
  49. },
  50. children: [
  51. {
  52. name: 'FormBasicExample',
  53. path: '/examples/form/basic',
  54. component: () => import('#/views/examples/form/basic.vue'),
  55. meta: {
  56. title: $t('page.examples.form.basic'),
  57. },
  58. },
  59. {
  60. name: 'FormQueryExample',
  61. path: '/examples/form/query',
  62. component: () => import('#/views/examples/form/query.vue'),
  63. meta: {
  64. title: $t('page.examples.form.query'),
  65. },
  66. },
  67. {
  68. name: 'FormRulesExample',
  69. path: '/examples/form/rules',
  70. component: () => import('#/views/examples/form/rules.vue'),
  71. meta: {
  72. title: $t('page.examples.form.rules'),
  73. },
  74. },
  75. {
  76. name: 'FormDynamicExample',
  77. path: '/examples/form/dynamic',
  78. component: () => import('#/views/examples/form/dynamic.vue'),
  79. meta: {
  80. title: $t('page.examples.form.dynamic'),
  81. },
  82. },
  83. {
  84. name: 'FormCustomExample',
  85. path: '/examples/form/custom',
  86. component: () => import('#/views/examples/form/custom.vue'),
  87. meta: {
  88. title: $t('page.examples.form.custom'),
  89. },
  90. },
  91. {
  92. name: 'FormApiExample',
  93. path: '/examples/form/api',
  94. component: () => import('#/views/examples/form/api.vue'),
  95. meta: {
  96. title: $t('page.examples.form.api'),
  97. },
  98. },
  99. {
  100. name: 'FormMergeExample',
  101. path: '/examples/form/merge',
  102. component: () => import('#/views/examples/form/merge.vue'),
  103. meta: {
  104. title: $t('page.examples.form.merge'),
  105. },
  106. },
  107. ],
  108. },
  109. {
  110. name: 'VxeTableExample',
  111. path: '/examples/vxe-table',
  112. meta: {
  113. icon: 'lucide:table',
  114. title: $t('page.examples.vxeTable.title'),
  115. },
  116. children: [
  117. {
  118. name: 'VxeTableBasicExample',
  119. path: '/examples/vxe-table/basic',
  120. component: () => import('#/views/examples/vxe-table/basic.vue'),
  121. meta: {
  122. title: $t('page.examples.vxeTable.basic'),
  123. },
  124. },
  125. {
  126. name: 'VxeTableRemoteExample',
  127. path: '/examples/vxe-table/remote',
  128. component: () => import('#/views/examples/vxe-table/remote.vue'),
  129. meta: {
  130. title: $t('page.examples.vxeTable.remote'),
  131. },
  132. },
  133. {
  134. name: 'VxeTableTreeExample',
  135. path: '/examples/vxe-table/tree',
  136. component: () => import('#/views/examples/vxe-table/tree.vue'),
  137. meta: {
  138. title: $t('page.examples.vxeTable.tree'),
  139. },
  140. },
  141. {
  142. name: 'VxeTableFixedExample',
  143. path: '/examples/vxe-table/fixed',
  144. component: () => import('#/views/examples/vxe-table/fixed.vue'),
  145. meta: {
  146. title: $t('page.examples.vxeTable.fixed'),
  147. },
  148. },
  149. {
  150. name: 'VxeTableCustomCellExample',
  151. path: '/examples/vxe-table/custom-cell',
  152. component: () =>
  153. import('#/views/examples/vxe-table/custom-cell.vue'),
  154. meta: {
  155. title: $t('page.examples.vxeTable.custom-cell'),
  156. },
  157. },
  158. {
  159. name: 'VxeTableFormExample',
  160. path: '/examples/vxe-table/form',
  161. component: () => import('#/views/examples/vxe-table/form.vue'),
  162. meta: {
  163. title: $t('page.examples.vxeTable.form'),
  164. },
  165. },
  166. {
  167. name: 'VxeTableEditCellExample',
  168. path: '/examples/vxe-table/edit-cell',
  169. component: () => import('#/views/examples/vxe-table/edit-cell.vue'),
  170. meta: {
  171. title: $t('page.examples.vxeTable.editCell'),
  172. },
  173. },
  174. {
  175. name: 'VxeTableEditRowExample',
  176. path: '/examples/vxe-table/edit-row',
  177. component: () => import('#/views/examples/vxe-table/edit-row.vue'),
  178. meta: {
  179. title: $t('page.examples.vxeTable.editRow'),
  180. },
  181. },
  182. {
  183. name: 'VxeTableVirtualExample',
  184. path: '/examples/vxe-table/virtual',
  185. component: () => import('#/views/examples/vxe-table/virtual.vue'),
  186. meta: {
  187. title: $t('page.examples.vxeTable.virtual'),
  188. },
  189. },
  190. ],
  191. },
  192. {
  193. name: 'CaptchaExample',
  194. path: '/examples/captcha',
  195. meta: {
  196. icon: 'logos:recaptcha',
  197. title: $t('page.examples.captcha.title'),
  198. },
  199. children: [
  200. {
  201. name: 'DragVerifyExample',
  202. path: '/examples/captcha/slider',
  203. component: () =>
  204. import('#/views/examples/captcha/slider-captcha.vue'),
  205. meta: {
  206. title: $t('page.examples.captcha.sliderCaptcha'),
  207. },
  208. },
  209. {
  210. name: 'RotateVerifyExample',
  211. path: '/examples/captcha/slider-rotate',
  212. component: () =>
  213. import('#/views/examples/captcha/slider-rotate-captcha.vue'),
  214. meta: {
  215. title: $t('page.examples.captcha.sliderRotateCaptcha'),
  216. },
  217. },
  218. {
  219. name: 'CaptchaPointSelectionExample',
  220. path: '/examples/captcha/point-selection',
  221. component: () =>
  222. import('#/views/examples/captcha/point-selection-captcha.vue'),
  223. meta: {
  224. title: $t('page.examples.captcha.pointSelection'),
  225. },
  226. },
  227. ],
  228. },
  229. ],
  230. },
  231. ];
  232. export default routes;