@gadmin2n/schematics 0.0.69 → 0.0.71

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 (696) hide show
  1. package/dist/lib/application/files/gadmin2-game-angle-demo/config/prisma/canvas.prisma +45 -0
  2. package/dist/lib/application/files/gadmin2-game-angle-demo/config/prisma/example.prisma +24 -23
  3. package/dist/lib/application/files/gadmin2-game-angle-demo/config/prisma/system.prisma +93 -90
  4. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/Audit.ts +70 -0
  5. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/Event.ts +3 -3
  6. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/Page.ts +70 -0
  7. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/PageResource.ts +70 -0
  8. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/Resource.ts +70 -0
  9. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/RolePages.ts +70 -0
  10. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/RoleResource.ts +70 -0
  11. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/SavedQuery.ts +70 -0
  12. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/User.ts +70 -0
  13. package/dist/lib/application/files/gadmin2-game-angle-demo/readme.md +95 -2
  14. package/dist/lib/application/files/gadmin2-game-angle-demo/server/.eslintrc.js +4 -2
  15. package/dist/lib/application/files/gadmin2-game-angle-demo/server/.prettierignore +7 -1
  16. package/dist/lib/application/files/gadmin2-game-angle-demo/server/config/index.ts +1 -3
  17. package/dist/lib/application/files/gadmin2-game-angle-demo/server/gadmin-cli.json +1 -1
  18. package/dist/lib/application/files/gadmin2-game-angle-demo/server/package.json +6 -5
  19. package/dist/lib/application/files/gadmin2-game-angle-demo/server/scripts/lib/page-helpers.ts +157 -0
  20. package/dist/lib/application/files/gadmin2-game-angle-demo/server/scripts/page-manage.ts +290 -0
  21. package/dist/lib/application/files/gadmin2-game-angle-demo/server/scripts/permission-manage.ts +184 -0
  22. package/dist/lib/application/files/gadmin2-game-angle-demo/server/scripts/prismaModels.ts +143 -0
  23. package/dist/lib/application/files/gadmin2-game-angle-demo/server/scripts/sync-resources.ts +100 -0
  24. package/dist/lib/application/files/gadmin2-game-angle-demo/server/scripts/syncDataMngtPages.ts +119 -0
  25. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/index.ts +1 -3
  26. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/permissions.ts +109 -143
  27. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/main.ts +5 -2
  28. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.controller.spec.ts +20 -0
  29. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.controller.ts +81 -0
  30. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.dto.ts +49 -0
  31. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.module.ts +11 -0
  32. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.service.spec.ts +334 -0
  33. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.service.ts +249 -0
  34. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/index.ts +2 -1
  35. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.service.ts +2 -2
  36. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.service.ts +17 -4
  37. package/dist/lib/application/files/gadmin2-game-angle-demo/server/yarn.lock +7737 -0
  38. package/dist/lib/application/files/gadmin2-game-angle-demo/web/.env +1 -0
  39. package/dist/lib/application/files/gadmin2-game-angle-demo/web/.eslintrc.json +38 -0
  40. package/dist/lib/application/files/gadmin2-game-angle-demo/web/.npmrc +1 -0
  41. package/dist/lib/application/files/gadmin2-game-angle-demo/web/.prettierignore +2 -0
  42. package/dist/lib/application/files/gadmin2-game-angle-demo/web/dev-shell-entry.html +49 -0
  43. package/dist/lib/application/files/gadmin2-game-angle-demo/web/package.json +13 -2
  44. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/App.tsx +137 -111
  45. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/auditLogProvider.ts +46 -44
  46. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/authProvider.ts +32 -12
  47. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/BulkActions.tsx +74 -23
  48. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/ListPageHeader.tsx +9 -9
  49. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/RowActions.tsx +57 -31
  50. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/SearchBar.tsx +53 -24
  51. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/SqlModal.tsx +148 -72
  52. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/AgentContext.tsx +190 -16
  53. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/ElementInspector.tsx +914 -63
  54. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/agentAttributes.ts +17 -8
  55. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/index.ts +0 -10
  56. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/inspectorActions.ts +969 -46
  57. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/pagePathUtils.ts +66 -0
  58. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/promptGenerator.ts +85 -25
  59. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/propPatcher.ts +84 -0
  60. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/eventList/index.tsx +16 -20
  61. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/index.ts +4 -4
  62. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logButton/index.tsx +13 -13
  63. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logList/index.tsx +15 -16
  64. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/modalDiffViewer/index.tsx +15 -15
  65. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/index.tsx +2 -2
  66. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/BarChart/index.tsx +896 -0
  67. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartSwitcher/index.tsx +219 -0
  68. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartViewer/index.tsx +159 -0
  69. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Filter/index.tsx +192 -0
  70. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/LineChart/index.tsx +1034 -0
  71. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/NumCard.module.css +8 -0
  72. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/index.tsx +509 -0
  73. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumLineCard/index.tsx +66 -0
  74. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/PieChart/index.tsx +552 -0
  75. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/RadarChart/index.tsx +263 -0
  76. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Section/index.tsx +35 -0
  77. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Table/index.tsx +207 -0
  78. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/TreemapChart/index.tsx +382 -0
  79. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/WorldMap/index.tsx +135 -0
  80. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/chart-constants.ts +53 -0
  81. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/InfoIcon.tsx +8 -0
  82. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/index.ts +1 -0
  83. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/config.ts +31 -0
  84. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/nameMap.json +9 -0
  85. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/world.geo.json +39349 -0
  86. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/metric-info-tooltip/index.tsx +19 -0
  87. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/business/index.tsx +12 -12
  88. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/color-mode/index.tsx +22 -26
  89. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/custom-avatar.tsx +13 -9
  90. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/index.ts +4 -4
  91. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/header.tsx +22 -37
  92. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/index.ts +4 -4
  93. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/layout.tsx +10 -10
  94. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/logo.tsx +1 -1
  95. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/sider.tsx +113 -65
  96. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/title.tsx +14 -14
  97. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/offLayoutArea/index.tsx +1 -1
  98. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/pagination-total.tsx +2 -2
  99. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/index.ts +1 -1
  100. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/role-tag.tsx +21 -21
  101. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/text.tsx +17 -13
  102. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/config/http.ts +26 -5
  103. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/config/routeRegistry.tsx +221 -51
  104. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/constants/layout.ts +3 -3
  105. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddDataModal.tsx +199 -0
  106. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddPageModal.tsx +335 -0
  107. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DeleteDataConfirm.tsx +56 -0
  108. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DevShell.tsx +401 -0
  109. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/EditDataModal.tsx +129 -0
  110. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/SkillMenu.tsx +202 -0
  111. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/UndoConfirm.tsx +36 -0
  112. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/index.tsx +8 -0
  113. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/style.css +835 -0
  114. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/enums/audit-log.enum.ts +8 -8
  115. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/enums/index.ts +1 -1
  116. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/form.tsx +120 -70
  117. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-name-initials.ts +3 -3
  118. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-random-color.ts +11 -11
  119. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/http.ts +16 -19
  120. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/index.tsx +1 -1
  121. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/list.tsx +99 -73
  122. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/login.ts +22 -27
  123. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/page-tree.ts +74 -0
  124. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/show.tsx +95 -51
  125. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/utils.tsx +7 -3
  126. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/types.ts +15 -15
  127. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchDelete.ts +10 -10
  128. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperations.ts +8 -7
  129. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperationsCore.ts +10 -10
  130. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchUpdate.ts +10 -10
  131. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useDynamicResources.tsx +36 -27
  132. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useECharts.tsx +144 -0
  133. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useFetchData.ts +4 -4
  134. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useListPageState.ts +34 -34
  135. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRoles.ts +8 -4
  136. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRowSelection.ts +1 -1
  137. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useUserPageAccess.ts +55 -41
  138. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/i18n.ts +8 -8
  139. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/index.tsx +9 -2
  140. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/locales/en/common.json +193 -0
  141. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/locales/zh_CN/common.json +194 -0
  142. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/plugins/devShellPlugin.ts +81 -0
  143. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/components/action-cell.tsx +37 -37
  144. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/create.tsx +23 -31
  145. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/edit.tsx +34 -35
  146. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/index.ts +1 -1
  147. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/index.tsx +4 -6
  148. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/list.tsx +41 -34
  149. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/show.tsx +33 -20
  150. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasCell.tsx +87 -0
  151. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasEditPage.tsx +192 -0
  152. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasListPage.tsx +409 -0
  153. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasPage.tsx +1372 -0
  154. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasToolbar.tsx +384 -0
  155. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CodeFloatWindow.tsx +476 -0
  156. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/ComponentThumbnail.tsx +135 -0
  157. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/IsolatedLivePreview.tsx +101 -0
  158. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/LivePreview.tsx +236 -0
  159. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/PublishModal.tsx +200 -0
  160. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasApi.ts +92 -0
  161. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasConfigRegistry.tsx +25 -0
  162. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasContextMenuRegistry.tsx +875 -0
  163. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasDefaults.ts +126 -0
  164. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasI18n.ts +11 -0
  165. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/BarChartDataSourceModal.tsx +115 -0
  166. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/ChartViewerConfigModal.tsx +217 -0
  167. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/LineChartDataSourceModal.tsx +153 -0
  168. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/NumCardDataSourceModal.tsx +211 -0
  169. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/PromptModal.tsx +90 -0
  170. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/RadarChartDataSourceModal.tsx +87 -0
  171. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/TableDataSourceModal.tsx +204 -0
  172. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/demos.ts +1153 -0
  173. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/index.tsx +2 -0
  174. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/sectionCompactor.ts +45 -0
  175. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/types.ts +45 -0
  176. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas-page/index.tsx +108 -0
  177. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/create.tsx +105 -0
  178. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/edit.tsx +121 -0
  179. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/index.tsx +4 -0
  180. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/list.tsx +237 -0
  181. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/show.tsx +74 -0
  182. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/AssignRolesModal.tsx +29 -20
  183. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/CreatePageModal.tsx +3 -3
  184. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/EditPageModal.tsx +7 -3
  185. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageDetailDrawer.tsx +58 -23
  186. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageFormModal.tsx +206 -122
  187. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/hooks/usePageManagement.ts +8 -4
  188. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/index.ts +1 -1
  189. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/list.tsx +345 -190
  190. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/types.ts +1 -1
  191. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/permissionReadme/index.tsx +341 -340
  192. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/CreateModal.tsx +2 -2
  193. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/EditModal.tsx +2 -2
  194. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/ResourceDetailDrawer.tsx +41 -24
  195. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/modal.tsx +64 -36
  196. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/index.ts +2 -2
  197. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/list.tsx +78 -40
  198. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/CreateModal.tsx +3 -3
  199. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/EditModal.tsx +4 -4
  200. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/RoleDetailDrawer.tsx +19 -9
  201. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/modal.tsx +45 -47
  202. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/hooks/useRolePage.ts +4 -4
  203. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/index.ts +1 -1
  204. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/list.tsx +121 -147
  205. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/types.ts +1 -1
  206. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/create-modal.tsx +2 -2
  207. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/edit-modal.tsx +2 -2
  208. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/form-modal.tsx +25 -19
  209. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/index.ts +5 -5
  210. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/role-tag.tsx +10 -10
  211. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/show-drawer.tsx +31 -26
  212. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/index.ts +1 -1
  213. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/list.tsx +76 -71
  214. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/setupTests.ts +1 -1
  215. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/audit-log.ts +1 -1
  216. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/index.ts +3 -3
  217. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/role.ts +1 -1
  218. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/user.ts +1 -1
  219. package/dist/lib/application/files/gadmin2-game-angle-demo/web/vite.config.ts +42 -25
  220. package/dist/lib/application/files/gadmin2-game-angle-demo/web/yarn.lock +1193 -32
  221. package/package.json +1 -1
  222. package/src/lib/application/application.schema.d.ts +59 -0
  223. package/src/lib/application/files/gadmin2-game-angle-demo/.dockerignore +33 -0
  224. package/src/lib/application/files/gadmin2-game-angle-demo/.gitignore +46 -0
  225. package/src/lib/application/files/gadmin2-game-angle-demo/.husky/_/.gitignore +1 -0
  226. package/src/lib/application/files/gadmin2-game-angle-demo/.husky/_/husky.sh +36 -0
  227. package/src/lib/application/files/gadmin2-game-angle-demo/.husky/pre-commit +10 -0
  228. package/src/lib/application/files/gadmin2-game-angle-demo/Dockerfile +63 -0
  229. package/src/lib/application/files/gadmin2-game-angle-demo/Jenkinsfile +70 -0
  230. package/src/lib/application/files/gadmin2-game-angle-demo/config/.types.d.ts +143 -0
  231. package/src/lib/application/files/gadmin2-game-angle-demo/config/prisma/canvas.prisma +45 -0
  232. package/src/lib/application/files/gadmin2-game-angle-demo/config/prisma/example.prisma +34 -0
  233. package/src/lib/application/files/gadmin2-game-angle-demo/config/prisma/system.prisma +173 -0
  234. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Audit.ts +70 -0
  235. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Event.ts +70 -0
  236. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Game.ts +58 -0
  237. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/ITActivityDay.ts +70 -0
  238. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Log.ts +56 -0
  239. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Page.ts +70 -0
  240. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/PageResource.ts +70 -0
  241. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Resource.ts +70 -0
  242. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Role.ts +58 -0
  243. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/RolePages.ts +70 -0
  244. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/RoleResource.ts +70 -0
  245. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/SavedQuery.ts +70 -0
  246. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/User.ts +70 -0
  247. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/_common.ts +16 -0
  248. package/src/lib/application/files/gadmin2-game-angle-demo/readme.md +142 -0
  249. package/src/lib/application/files/gadmin2-game-angle-demo/server/.env +31 -0
  250. package/src/lib/application/files/gadmin2-game-angle-demo/server/.env.local +1 -0
  251. package/src/lib/application/files/gadmin2-game-angle-demo/server/.eslintrc.js +28 -0
  252. package/src/lib/application/files/gadmin2-game-angle-demo/server/.prettierignore +7 -0
  253. package/src/lib/application/files/gadmin2-game-angle-demo/server/.prettierrc +4 -0
  254. package/src/lib/application/files/gadmin2-game-angle-demo/server/README.md +55 -0
  255. package/src/lib/application/files/gadmin2-game-angle-demo/server/config/ac.config.ts +24 -0
  256. package/src/lib/application/files/gadmin2-game-angle-demo/server/config/index.ts +58 -0
  257. package/src/lib/application/files/gadmin2-game-angle-demo/server/gadmin-cli.json +25 -0
  258. package/src/lib/application/files/gadmin2-game-angle-demo/server/migrate-between-pg-schemas.js +1232 -0
  259. package/src/lib/application/files/gadmin2-game-angle-demo/server/package.json +143 -0
  260. package/src/lib/application/files/gadmin2-game-angle-demo/server/prisma/.generator.prisma +34 -0
  261. package/src/lib/application/files/gadmin2-game-angle-demo/server/prisma.config.ts +16 -0
  262. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/lib/page-helpers.ts +157 -0
  263. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/page-manage.ts +290 -0
  264. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/permission-manage.ts +184 -0
  265. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/prismaModels.ts +143 -0
  266. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/sync-resources.ts +100 -0
  267. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/syncDataMngtPages.ts +119 -0
  268. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/games.ts +1 -0
  269. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/index.ts +21 -0
  270. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/permissions.ts +244 -0
  271. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/users.ts +7 -0
  272. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/alias.config.ts +7 -0
  273. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.controller.spec.ts +22 -0
  274. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.controller.ts +192 -0
  275. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.module.ts +91 -0
  276. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.service.ts +189 -0
  277. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/auth.guard.ts +154 -0
  278. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/http-cache.interceptor.ts +21 -0
  279. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/logger.ts +19 -0
  280. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/roles.guard.ts +47 -0
  281. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/safe-log.util.ts +176 -0
  282. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/taihu.ts +175 -0
  283. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/tracing.ts +174 -0
  284. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/trim.pipe.ts +51 -0
  285. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/utils.ts +145 -0
  286. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/woaAuth.ts +95 -0
  287. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/main.ts +132 -0
  288. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.controller.spec.ts +20 -0
  289. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.controller.ts +190 -0
  290. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.module.ts +10 -0
  291. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.service.spec.ts +338 -0
  292. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.service.ts +83 -0
  293. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.controller.spec.ts +20 -0
  294. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.controller.ts +81 -0
  295. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.dto.ts +49 -0
  296. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.module.ts +11 -0
  297. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.service.spec.ts +334 -0
  298. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.service.ts +249 -0
  299. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.controller.spec.ts +20 -0
  300. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.controller.ts +188 -0
  301. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.module.ts +10 -0
  302. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.service.spec.ts +18 -0
  303. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.service.ts +83 -0
  304. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/index.ts +4 -0
  305. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.controller.spec.ts +20 -0
  306. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.controller.ts +250 -0
  307. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.module.ts +10 -0
  308. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.service.spec.ts +18 -0
  309. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.service.ts +1051 -0
  310. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.controller.spec.ts +20 -0
  311. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.controller.ts +196 -0
  312. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.module.ts +13 -0
  313. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.service.spec.ts +18 -0
  314. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.service.ts +219 -0
  315. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.controller.spec.ts +20 -0
  316. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.controller.ts +196 -0
  317. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.module.ts +10 -0
  318. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.service.spec.ts +18 -0
  319. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.service.ts +199 -0
  320. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.controller.spec.ts +20 -0
  321. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.controller.ts +210 -0
  322. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.module.ts +12 -0
  323. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.service.spec.ts +18 -0
  324. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.service.ts +862 -0
  325. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/roles-refresher.service.ts +133 -0
  326. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.controller.spec.ts +20 -0
  327. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.controller.ts +196 -0
  328. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.module.ts +10 -0
  329. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.service.spec.ts +18 -0
  330. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.service.ts +201 -0
  331. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.controller.spec.ts +20 -0
  332. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.controller.ts +196 -0
  333. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.module.ts +10 -0
  334. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.service.spec.ts +18 -0
  335. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.service.ts +216 -0
  336. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.controller.spec.ts +20 -0
  337. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.controller.ts +198 -0
  338. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.module.ts +10 -0
  339. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.service.spec.ts +18 -0
  340. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.service.ts +104 -0
  341. package/src/lib/application/files/gadmin2-game-angle-demo/server/start-prod.sh +130 -0
  342. package/src/lib/application/files/gadmin2-game-angle-demo/server/test/app.e2e-spec.ts +24 -0
  343. package/src/lib/application/files/gadmin2-game-angle-demo/server/test/jest-e2e.json +9 -0
  344. package/src/lib/application/files/gadmin2-game-angle-demo/server/tsconfig.build.json +4 -0
  345. package/src/lib/application/files/gadmin2-game-angle-demo/server/tsconfig.json +36 -0
  346. package/src/lib/application/files/gadmin2-game-angle-demo/server/yarn.lock +7737 -0
  347. package/src/lib/application/files/gadmin2-game-angle-demo/web/.env +2 -0
  348. package/src/lib/application/files/gadmin2-game-angle-demo/web/.eslintrc.json +38 -0
  349. package/src/lib/application/files/gadmin2-game-angle-demo/web/.npmrc +1 -0
  350. package/src/lib/application/files/gadmin2-game-angle-demo/web/.prettierignore +2 -0
  351. package/src/lib/application/files/gadmin2-game-angle-demo/web/.prettierrc +4 -0
  352. package/src/lib/application/files/gadmin2-game-angle-demo/web/README.MD +48 -0
  353. package/src/lib/application/files/gadmin2-game-angle-demo/web/dev-shell-entry.html +49 -0
  354. package/src/lib/application/files/gadmin2-game-angle-demo/web/index.html +19 -0
  355. package/src/lib/application/files/gadmin2-game-angle-demo/web/package.json +92 -0
  356. package/src/lib/application/files/gadmin2-game-angle-demo/web/postcss.config.cjs +6 -0
  357. package/src/lib/application/files/gadmin2-game-angle-demo/web/public/favicon.ico +0 -0
  358. package/src/lib/application/files/gadmin2-game-angle-demo/web/public/images/flags/en.svg +1 -0
  359. package/src/lib/application/files/gadmin2-game-angle-demo/web/public/images/flags/zh_CN.svg +11 -0
  360. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/App.tsx +137 -0
  361. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/auditLogProvider.ts +89 -0
  362. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/authProvider.ts +144 -0
  363. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/BulkActions.tsx +287 -0
  364. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/ListPageHeader.tsx +56 -0
  365. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/RowActions.tsx +318 -0
  366. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/SearchBar.tsx +323 -0
  367. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/SqlModal.tsx +495 -0
  368. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/VanillaJSONEditor/index.css +10 -0
  369. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/VanillaJSONEditor/index.jsx +53 -0
  370. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/AgentContext.tsx +375 -0
  371. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/ElementInspector.tsx +1133 -0
  372. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/agentAttributes.ts +70 -0
  373. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/index.ts +8 -0
  374. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/inspectorActions.ts +1034 -0
  375. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/pagePathUtils.ts +66 -0
  376. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/promptGenerator.ts +135 -0
  377. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/propPatcher.ts +84 -0
  378. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/eventList/index.tsx +58 -0
  379. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/index.ts +4 -0
  380. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logButton/index.tsx +96 -0
  381. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logList/index.tsx +72 -0
  382. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/modalDiffViewer/index.tsx +104 -0
  383. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/index.tsx +2 -0
  384. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/BarChart/index.tsx +896 -0
  385. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartSwitcher/index.tsx +219 -0
  386. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartViewer/index.tsx +159 -0
  387. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Filter/index.tsx +192 -0
  388. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/LineChart/index.tsx +1034 -0
  389. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/NumCard.module.css +8 -0
  390. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/index.tsx +509 -0
  391. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumLineCard/index.tsx +66 -0
  392. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/PieChart/index.tsx +552 -0
  393. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/RadarChart/index.tsx +263 -0
  394. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Section/index.tsx +35 -0
  395. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Table/index.tsx +207 -0
  396. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/TreemapChart/index.tsx +382 -0
  397. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/WorldMap/index.tsx +135 -0
  398. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/chart-constants.ts +53 -0
  399. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/InfoIcon.tsx +8 -0
  400. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/index.ts +1 -0
  401. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/config.ts +31 -0
  402. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/nameMap.json +9 -0
  403. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/world.geo.json +39349 -0
  404. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/metric-info-tooltip/index.tsx +19 -0
  405. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/business/index.tsx +65 -0
  406. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/color-mode/index.tsx +54 -0
  407. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/custom-avatar.tsx +42 -0
  408. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/index.ts +8 -0
  409. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/header.tsx +106 -0
  410. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/index.ts +4 -0
  411. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/layout.tsx +32 -0
  412. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/logo.tsx +19 -0
  413. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/sider.tsx +431 -0
  414. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/title.tsx +61 -0
  415. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/offLayoutArea/index.tsx +5 -0
  416. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/pagination-total.tsx +21 -0
  417. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/index.ts +1 -0
  418. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/role-tag.tsx +44 -0
  419. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/text.tsx +78 -0
  420. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/config/http.ts +49 -0
  421. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/config/routeRegistry.tsx +428 -0
  422. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/constants/layout.ts +16 -0
  423. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddDataModal.tsx +199 -0
  424. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddPageModal.tsx +335 -0
  425. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DeleteDataConfirm.tsx +56 -0
  426. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DevShell.tsx +401 -0
  427. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/EditDataModal.tsx +129 -0
  428. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/SkillMenu.tsx +202 -0
  429. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/UndoConfirm.tsx +36 -0
  430. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/index.tsx +8 -0
  431. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/style.css +835 -0
  432. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/enums/audit-log.enum.ts +13 -0
  433. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/enums/index.ts +1 -0
  434. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/form.tsx +471 -0
  435. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-name-initials.ts +8 -0
  436. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-random-color.ts +27 -0
  437. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/http.ts +84 -0
  438. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/index.tsx +8 -0
  439. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/list.tsx +491 -0
  440. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/login.ts +82 -0
  441. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/page-tree.ts +74 -0
  442. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/show.tsx +226 -0
  443. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/utils.tsx +9 -0
  444. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/index.ts +7 -0
  445. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/types.ts +138 -0
  446. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchDelete.ts +191 -0
  447. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperations.ts +153 -0
  448. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperationsCore.ts +193 -0
  449. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchUpdate.ts +182 -0
  450. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useDynamicResources.tsx +220 -0
  451. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useECharts.tsx +144 -0
  452. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useFetchData.ts +33 -0
  453. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useListPageState.ts +303 -0
  454. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRoles.ts +34 -0
  455. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRowSelection.ts +38 -0
  456. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useUserPageAccess.ts +353 -0
  457. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/i18n.ts +23 -0
  458. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/index.tsx +27 -0
  459. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/locales/en/common.json +321 -0
  460. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/locales/zh_CN/common.json +324 -0
  461. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/meta.json +4 -0
  462. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/plugins/devShellPlugin.ts +81 -0
  463. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/components/action-cell.css +3 -0
  464. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/components/action-cell.tsx +134 -0
  465. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/create.tsx +105 -0
  466. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/edit.tsx +121 -0
  467. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/index.ts +8 -0
  468. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/index.tsx +4 -0
  469. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/list.tsx +220 -0
  470. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/show.tsx +74 -0
  471. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasCell.tsx +87 -0
  472. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasEditPage.tsx +192 -0
  473. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasListPage.tsx +409 -0
  474. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasPage.tsx +1372 -0
  475. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasToolbar.tsx +384 -0
  476. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CodeFloatWindow.tsx +476 -0
  477. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/ComponentThumbnail.tsx +137 -0
  478. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/IsolatedLivePreview.tsx +101 -0
  479. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/LivePreview.tsx +236 -0
  480. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/PublishModal.tsx +200 -0
  481. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasApi.ts +92 -0
  482. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasConfigRegistry.tsx +25 -0
  483. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasContextMenuRegistry.tsx +875 -0
  484. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasDefaults.ts +126 -0
  485. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasI18n.ts +11 -0
  486. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/BarChartDataSourceModal.tsx +115 -0
  487. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/ChartViewerConfigModal.tsx +217 -0
  488. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/LineChartDataSourceModal.tsx +153 -0
  489. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/NumCardDataSourceModal.tsx +211 -0
  490. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/PromptModal.tsx +90 -0
  491. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/RadarChartDataSourceModal.tsx +87 -0
  492. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/TableDataSourceModal.tsx +204 -0
  493. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/demos.ts +1153 -0
  494. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/index.tsx +2 -0
  495. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/sectionCompactor.ts +45 -0
  496. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/types.ts +45 -0
  497. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas-page/index.tsx +108 -0
  498. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/create.tsx +105 -0
  499. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/edit.tsx +121 -0
  500. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/index.tsx +4 -0
  501. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/list.tsx +237 -0
  502. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/show.tsx +74 -0
  503. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/AssignRolesModal.tsx +177 -0
  504. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/CreatePageModal.tsx +42 -0
  505. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/EditPageModal.tsx +46 -0
  506. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageDetailDrawer.tsx +136 -0
  507. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageFormModal.tsx +815 -0
  508. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/hooks/usePageManagement.ts +40 -0
  509. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/index.ts +1 -0
  510. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/list.tsx +1370 -0
  511. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/queries.ts +17 -0
  512. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/types.ts +45 -0
  513. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/permissionReadme/index.tsx +1090 -0
  514. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/CreateModal.tsx +25 -0
  515. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/EditModal.tsx +28 -0
  516. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/ResourceDetailDrawer.tsx +177 -0
  517. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/modal.tsx +230 -0
  518. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/index.ts +2 -0
  519. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/list.tsx +250 -0
  520. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/queries.ts +10 -0
  521. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/types.ts +9 -0
  522. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/CreateModal.tsx +30 -0
  523. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/EditModal.tsx +47 -0
  524. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/RoleDetailDrawer.tsx +66 -0
  525. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/modal.tsx +300 -0
  526. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/hooks/useRolePage.ts +35 -0
  527. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/index.ts +1 -0
  528. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/list.tsx +405 -0
  529. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/queries.ts +8 -0
  530. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/types.ts +8 -0
  531. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/create-modal.tsx +17 -0
  532. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/edit-modal.tsx +19 -0
  533. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/form-modal.tsx +194 -0
  534. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/index.ts +5 -0
  535. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/role-tag.tsx +48 -0
  536. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/show-drawer.tsx +145 -0
  537. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/index.ts +1 -0
  538. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/list.tsx +377 -0
  539. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/queries.ts +14 -0
  540. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/setupTests.ts +5 -0
  541. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/antd.css +132 -0
  542. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/fc.css +58 -0
  543. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/index.css +128 -0
  544. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/show-drawer.module.css +18 -0
  545. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/show-page.module.css +21 -0
  546. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/audit-log.ts +1 -0
  547. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/index.ts +3 -0
  548. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/role.ts +7 -0
  549. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/user.ts +1 -0
  550. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/vite-env.d.ts +13 -0
  551. package/src/lib/application/files/gadmin2-game-angle-demo/web/tsconfig.json +28 -0
  552. package/src/lib/application/files/gadmin2-game-angle-demo/web/vite.config.ts +48 -0
  553. package/src/lib/application/files/gadmin2-game-angle-demo/web/yarn.lock +9482 -0
  554. package/src/lib/class/class.schema.d.ts +32 -0
  555. package/src/lib/class/files/js/__name__.js +1 -0
  556. package/src/lib/class/files/js/__name__.spec.js +7 -0
  557. package/src/lib/class/files/ts/__name__.spec.ts +7 -0
  558. package/src/lib/class/files/ts/__name__.ts +1 -0
  559. package/src/lib/client-app/angular/angular.schema.d.ts +32 -0
  560. package/src/lib/client-app/angular/files/angular.constants.ts +4 -0
  561. package/src/lib/client-app/angular/files/angular.module.ts +41 -0
  562. package/src/lib/client-app/angular/files/angular.providers.ts +27 -0
  563. package/src/lib/client-app/angular/files/angular.utils.ts +19 -0
  564. package/src/lib/client-app/angular/files/interfaces/angular-options.interface.ts +87 -0
  565. package/src/lib/client-app/angular/files/loaders/abstract.loader.ts +16 -0
  566. package/src/lib/client-app/angular/files/loaders/express.loader.ts +25 -0
  567. package/src/lib/client-app/angular/files/loaders/fastify.loader.ts +34 -0
  568. package/src/lib/client-app/angular/files/loaders/noop.loader.ts +12 -0
  569. package/src/lib/configuration/configuration.schema.d.ts +18 -0
  570. package/src/lib/configuration/files/js/nest-cli.json +6 -0
  571. package/src/lib/configuration/files/ts/nest-cli.json +5 -0
  572. package/src/lib/controller/controller.schema.d.ts +45 -0
  573. package/src/lib/controller/files/js/__name__.controller.js +4 -0
  574. package/src/lib/controller/files/js/__name__.controller.spec.js +18 -0
  575. package/src/lib/controller/files/ts/__name__.controller.spec.ts +18 -0
  576. package/src/lib/controller/files/ts/__name__.controller.ts +137 -0
  577. package/src/lib/decorator/decorator.schema.d.ts +24 -0
  578. package/src/lib/decorator/files/js/__name__.decorator.js +3 -0
  579. package/src/lib/decorator/files/ts/__name__.decorator.ts +3 -0
  580. package/src/lib/filter/files/js/__name__.filter.js +6 -0
  581. package/src/lib/filter/files/js/__name__.filter.spec.js +7 -0
  582. package/src/lib/filter/files/ts/__name__.filter.spec.ts +7 -0
  583. package/src/lib/filter/files/ts/__name__.filter.ts +6 -0
  584. package/src/lib/filter/filter.schema.d.ts +28 -0
  585. package/src/lib/gateway/files/js/__name__.gateway.js +9 -0
  586. package/src/lib/gateway/files/js/__name__.gateway.spec.js +18 -0
  587. package/src/lib/gateway/files/ts/__name__.gateway.spec.ts +18 -0
  588. package/src/lib/gateway/files/ts/__name__.gateway.ts +9 -0
  589. package/src/lib/gateway/gateway.schema.d.ts +36 -0
  590. package/src/lib/guard/files/js/__name__.guard.js +8 -0
  591. package/src/lib/guard/files/js/__name__.guard.spec.js +7 -0
  592. package/src/lib/guard/files/ts/__name__.guard.spec.ts +7 -0
  593. package/src/lib/guard/files/ts/__name__.guard.ts +11 -0
  594. package/src/lib/guard/guard.schema.d.ts +28 -0
  595. package/src/lib/interceptor/files/js/__name__.interceptor.js +8 -0
  596. package/src/lib/interceptor/files/js/__name__.interceptor.spec.js +7 -0
  597. package/src/lib/interceptor/files/ts/default/__name__.interceptor.spec.ts +7 -0
  598. package/src/lib/interceptor/files/ts/default/__name__.interceptor.ts +9 -0
  599. package/src/lib/interceptor/files/ts/generated/__name__.interceptor.spec.ts +7 -0
  600. package/src/lib/interceptor/files/ts/generated/__name__.interceptor.ts +13 -0
  601. package/src/lib/interceptor/interceptor.schema.d.ts +35 -0
  602. package/src/lib/interface/files/__name__.interface.ts +1 -0
  603. package/src/lib/interface/interface.schema.d.ts +20 -0
  604. package/src/lib/library/files/js/.babelrc +4 -0
  605. package/src/lib/library/files/js/jsconfig.json +9 -0
  606. package/src/lib/library/files/js/src/__name__.module.js +8 -0
  607. package/src/lib/library/files/js/src/__name__.service.js +4 -0
  608. package/src/lib/library/files/js/src/__name__.service.spec.js +18 -0
  609. package/src/lib/library/files/js/src/index.js +2 -0
  610. package/src/lib/library/files/ts/src/__name__.module.ts +8 -0
  611. package/src/lib/library/files/ts/src/__name__.service.spec.ts +18 -0
  612. package/src/lib/library/files/ts/src/__name__.service.ts +4 -0
  613. package/src/lib/library/files/ts/src/index.ts +2 -0
  614. package/src/lib/library/files/ts/tsconfig.lib.json +9 -0
  615. package/src/lib/library/library.schema.d.ts +24 -0
  616. package/src/lib/middleware/files/js/__name__.middleware.js +8 -0
  617. package/src/lib/middleware/files/js/__name__.middleware.spec.js +7 -0
  618. package/src/lib/middleware/files/ts/__name__.middleware.spec.ts +7 -0
  619. package/src/lib/middleware/files/ts/__name__.middleware.ts +8 -0
  620. package/src/lib/middleware/middleware.schema.d.ts +28 -0
  621. package/src/lib/module/files/js/__name__.module.js +4 -0
  622. package/src/lib/module/files/ts/__name__.module.ts +4 -0
  623. package/src/lib/module/module.schema.d.ts +40 -0
  624. package/src/lib/pipe/files/js/__name__.pipe.js +8 -0
  625. package/src/lib/pipe/files/js/__name__.pipe.spec.js +7 -0
  626. package/src/lib/pipe/files/ts/__name__.pipe.spec.ts +7 -0
  627. package/src/lib/pipe/files/ts/__name__.pipe.ts +8 -0
  628. package/src/lib/pipe/pipe.schema.d.ts +28 -0
  629. package/src/lib/prisma-resource/files/ts/__name__.controller.spec.ts +20 -0
  630. package/src/lib/prisma-resource/files/ts/__name__.controller.ts +63 -0
  631. package/src/lib/prisma-resource/files/ts/__name__.module.ts +9 -0
  632. package/src/lib/prisma-resource/files/ts/__name__.service.spec.ts +18 -0
  633. package/src/lib/prisma-resource/files/ts/__name__.service.ts +28 -0
  634. package/src/lib/prisma-resource/files/ts/dto/create-__name@singular__.dto.ts +1 -0
  635. package/src/lib/prisma-resource/files/ts/dto/create-__name@singular__.input.ts +7 -0
  636. package/src/lib/prisma-resource/files/ts/dto/update-__name@singular__.dto.ts +6 -0
  637. package/src/lib/prisma-resource/files/ts/dto/update-__name@singular__.input.ts +13 -0
  638. package/src/lib/prisma-resource/files/ts/entities/__name@singular@ent__.ts +7 -0
  639. package/src/lib/prisma-resource/prisma-resource.schema.d.ts +57 -0
  640. package/src/lib/provider/files/js/__name__.js +4 -0
  641. package/src/lib/provider/files/js/__name__.spec.js +18 -0
  642. package/src/lib/provider/files/ts/__name__.spec.ts +18 -0
  643. package/src/lib/provider/files/ts/__name__.ts +4 -0
  644. package/src/lib/provider/provider.schema.d.ts +48 -0
  645. package/src/lib/resolver/files/js/__name__.resolver.js +4 -0
  646. package/src/lib/resolver/files/js/__name__.resolver.spec.js +18 -0
  647. package/src/lib/resolver/files/ts/__name__.resolver.spec.ts +18 -0
  648. package/src/lib/resolver/files/ts/__name__.resolver.ts +4 -0
  649. package/src/lib/resolver/resolver.schema.d.ts +36 -0
  650. package/src/lib/resource/files/ts/__name__.controller.spec.ts +20 -0
  651. package/src/lib/resource/files/ts/__name__.controller.ts +63 -0
  652. package/src/lib/resource/files/ts/__name__.gateway.spec.ts +19 -0
  653. package/src/lib/resource/files/ts/__name__.gateway.ts +34 -0
  654. package/src/lib/resource/files/ts/__name__.graphql +24 -0
  655. package/src/lib/resource/files/ts/__name__.module.ts +9 -0
  656. package/src/lib/resource/files/ts/__name__.resolver.spec.ts +19 -0
  657. package/src/lib/resource/files/ts/__name__.resolver.ts +60 -0
  658. package/src/lib/resource/files/ts/__name__.service.spec.ts +18 -0
  659. package/src/lib/resource/files/ts/__name__.service.ts +28 -0
  660. package/src/lib/resource/files/ts/dto/create-__name@singular__.dto.ts +1 -0
  661. package/src/lib/resource/files/ts/dto/create-__name@singular__.input.ts +7 -0
  662. package/src/lib/resource/files/ts/dto/update-__name@singular__.dto.ts +6 -0
  663. package/src/lib/resource/files/ts/dto/update-__name@singular__.input.ts +13 -0
  664. package/src/lib/resource/files/ts/entities/__name@singular@ent__.ts +7 -0
  665. package/src/lib/resource/resource.schema.d.ts +57 -0
  666. package/src/lib/service/files/js/__name__.service.js +4 -0
  667. package/src/lib/service/files/js/__name__.service.spec.js +18 -0
  668. package/src/lib/service/files/ts/__name__.service.spec.ts +18 -0
  669. package/src/lib/service/files/ts/__name__.service.ts +4 -0
  670. package/src/lib/service/service.schema.d.ts +44 -0
  671. package/src/lib/sub-app/files/js/.babelrc +4 -0
  672. package/src/lib/sub-app/files/js/index.js +2 -0
  673. package/src/lib/sub-app/files/js/jsconfig.json +10 -0
  674. package/src/lib/sub-app/files/js/src/app.controller.js +15 -0
  675. package/src/lib/sub-app/files/js/src/app.controller.spec.js +22 -0
  676. package/src/lib/sub-app/files/js/src/app.module.js +10 -0
  677. package/src/lib/sub-app/files/js/src/app.service.js +8 -0
  678. package/src/lib/sub-app/files/js/src/main.js +8 -0
  679. package/src/lib/sub-app/files/js/test/app.e2e-spec.js +23 -0
  680. package/src/lib/sub-app/files/js/test/jest-e2e.json +5 -0
  681. package/src/lib/sub-app/files/ts/src/__name__.controller.spec.ts +22 -0
  682. package/src/lib/sub-app/files/ts/src/__name__.controller.ts +12 -0
  683. package/src/lib/sub-app/files/ts/src/__name__.module.ts +10 -0
  684. package/src/lib/sub-app/files/ts/src/__name__.service.ts +8 -0
  685. package/src/lib/sub-app/files/ts/src/main.ts +8 -0
  686. package/src/lib/sub-app/files/ts/test/app.e2e-spec.ts +24 -0
  687. package/src/lib/sub-app/files/ts/test/jest-e2e.json +9 -0
  688. package/src/lib/sub-app/files/ts/tsconfig.app.json +9 -0
  689. package/src/lib/sub-app/sub-app.schema.d.ts +21 -0
  690. package/src/lib/sub-app/workspace/js/.babelrc +4 -0
  691. package/src/lib/sub-app/workspace/js/index.js +2 -0
  692. package/src/lib/sub-app/workspace/js/jsconfig.json +10 -0
  693. package/src/lib/sub-app/workspace/ts/tsconfig.app.json +9 -0
  694. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/seedDataMngtPages.ts +0 -258
  695. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/AgentPanel.tsx +0 -497
  696. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/skills.ts +0 -464
@@ -0,0 +1,1034 @@
1
+ import { AgentType } from './agentAttributes';
2
+
3
+ export interface QuickSelectOption {
4
+ label: string;
5
+ value: string;
6
+ }
7
+
8
+ export interface InspectorAction {
9
+ label: string;
10
+ /** Skill folder name (e.g. "ui-config-update"). null if no matching skill. */
11
+ skill: string | null;
12
+ /** Prompt template. Use {resource} and {field} as placeholders. */
13
+ promptTemplate?: string;
14
+ /**
15
+ * Optional text prepended BEFORE the user's input (for requiresInput actions).
16
+ * e.g. "修改为:" → generates "修改为:\n{userInput}"
17
+ * Defaults to "修改为:" if not set and no promptSuffix is present.
18
+ */
19
+ promptPrefix?: string;
20
+ /**
21
+ * Optional text appended AFTER the user's input (for requiresInput actions).
22
+ * Use this to add constraint notes or guidelines that should follow the user's request,
23
+ * e.g. "注意:BulkActions 是公共组件,不可直接修改其源码。"
24
+ */
25
+ promptSuffix?: string;
26
+ /** If true, show a free-text input instead of pre-filled prompt (for "其他" catch-all) */
27
+ freeInput?: boolean;
28
+ /**
29
+ * If true, show a modal asking the user to fill in supplementary details
30
+ * before sending the prompt. The user's input is appended to promptTemplate.
31
+ */
32
+ requiresInput?: boolean;
33
+ /** Placeholder text shown in the supplementary-input modal */
34
+ inputPlaceholder?: string;
35
+ /**
36
+ * If true, show a confirmation dialog before sending the prompt.
37
+ * Use this for destructive or hard-to-reverse actions.
38
+ */
39
+ requiresConfirm?: boolean;
40
+ /** Description shown inside the confirmation dialog */
41
+ confirmDescription?: string;
42
+ /**
43
+ * If set, renders a dynamic sub-menu listing fields not yet shown on the page.
44
+ * User picks a field, then sees a confirmation dialog — no textarea needed.
45
+ * 'add-after' / 'add-before' controls the generated prompt wording.
46
+ */
47
+ fieldSubMenu?: 'add-after' | 'add-before';
48
+ /** Sub-menu children — renders as a nested Ant Design sub-menu */
49
+ children?: InspectorAction[];
50
+
51
+ // ── 快捷操作类型(不走 agent)──────────────────────────────────────────────
52
+
53
+ /** 快捷输入框:弹出输入框,用户填入新值,前端直接替换 JSX code 中的 prop */
54
+ quickInput?: boolean;
55
+ quickInputPlaceholder?: string;
56
+
57
+ /** 快捷下拉:弹出 Select,用户选择后前端直接替换 prop 值 */
58
+ quickSelect?: boolean;
59
+ quickSelectOptions?: QuickSelectOption[];
60
+
61
+ /**
62
+ * 快捷开关:点击后直接切换 boolean prop,无需弹框。
63
+ * labelWhenActive: 当 prop 为 true 时显示的 label。
64
+ * labelWhenInactive: 当 prop 为 false 时显示的 label。
65
+ * defaultValue: prop 缺省时认为的初始值。
66
+ */
67
+ quickToggle?: boolean;
68
+ labelWhenActive?: string;
69
+ labelWhenInactive?: string;
70
+ defaultValue?: boolean;
71
+
72
+ /** 弹出自由对话框:走 agent 自由对话(skill 为 null) */
73
+ openDialog?: boolean;
74
+ dialogPlaceholder?: string;
75
+
76
+ /** 所有快捷操作共用:要操作的 prop 名称 */
77
+ propName?: string;
78
+
79
+ /**
80
+ * If set, this item triggers a named action callback in SkillMenu
81
+ * instead of sending a prompt to the agent.
82
+ */
83
+ actionKey?: 'editData' | 'deleteData' | 'addData' | 'addPage';
84
+ }
85
+
86
+ /**
87
+ * SkillMenu 快捷操作配置。
88
+ * 每个 key 对应一类页面,SkillMenu 根据当前页面类型按需读取。
89
+ *
90
+ * 现有 key:
91
+ * page — "本页面" 固定区块(数据管理页可用)
92
+ * project — "本项目" 固定区块(始终显示)
93
+ * formPage — 表单页专属(pageType === 'create' | 'edit')
94
+ *
95
+ * 扩展示例(未来按需添加):
96
+ * listPage — 列表页专属
97
+ * showPage — 详情页专属
98
+ */
99
+ export const SKILL_MENU_CONFIG: Record<string, InspectorAction[]> = {
100
+ /** "本项目" 固定区块,始终显示 */
101
+ project: [
102
+ {
103
+ label: '添加新的数据表',
104
+ skill: null,
105
+ actionKey: 'addData',
106
+ },
107
+ {
108
+ label: '添加新页面',
109
+ skill: null,
110
+ actionKey: 'addPage',
111
+ },
112
+ ],
113
+
114
+ /** "本页面" 固定区块,所有gadmin2的CRUD数据管理页可用 */
115
+ page: [
116
+ {
117
+ label: '修改数据表',
118
+ skill: null,
119
+ actionKey: 'editData',
120
+ },
121
+ {
122
+ label: '删除数据表及页面',
123
+ skill: null,
124
+ actionKey: 'deleteData',
125
+ },
126
+ ],
127
+
128
+ /** 表单页(create / edit)专属操作 */
129
+ formPage: [
130
+ {
131
+ label: '将表单改为多步骤向导',
132
+ skill: 'form-wizard-steps',
133
+ requiresInput: true,
134
+ inputPlaceholder:
135
+ '请描述步骤划分,例如:\n第一步:基本信息(名称、类型)\n第二步:配置参数\n第三步:确认提交',
136
+ },
137
+ {
138
+ label: "将创建页改为'只编辑不新增'",
139
+ skill: 'form-singleton-form',
140
+ requiresConfirm: true,
141
+ confirmDescription:
142
+ '将把当前创建页改为单例表单模式:只保留编辑功能,不允许新增记录。',
143
+ },
144
+ {
145
+ label: '保存成功后弹提示/跳转',
146
+ skill: 'form-post-save-alert',
147
+ requiresInput: true,
148
+ inputPlaceholder:
149
+ '请描述保存后的行为,例如:\n- 显示"保存成功"提示后跳转回列表页\n- 弹窗显示提交编号,关闭后留在当前页',
150
+ },
151
+ {
152
+ label: '在表单顶部添加说明横幅',
153
+ skill: 'form-help-alert',
154
+ requiresInput: true,
155
+ inputPlaceholder:
156
+ '请输入横幅说明文字,例如:\n此表单提交后不可修改,请仔细核对后再提交。',
157
+ },
158
+ {
159
+ label: '在表单底部添加文档链接',
160
+ skill: 'form-external-help-links',
161
+ requiresInput: true,
162
+ inputPlaceholder:
163
+ '请提供链接文字和 URL,例如:\n链接文字"查看配置文档",URL: https://docs.example.com\n链接文字"权限申请指引",URL: https://wiki.example.com/permissions',
164
+ },
165
+ {
166
+ label: '表单根据当前业务隔离数据',
167
+ skill: 'form-business-isolation',
168
+ requiresConfirm: true,
169
+ confirmDescription:
170
+ '将为当前表单添加业务隔离逻辑:新建/编辑时自动注入当前业务标识(studio_id)。注意:列表页的数据过滤需另行配置 permanentFilter(参考 list-search-filter skill)。',
171
+ },
172
+ ],
173
+
174
+ // listPage: [...], // 未来扩展
175
+ // showPage: [...], // 未来扩展
176
+ };
177
+
178
+ export interface InspectedElementInfo {
179
+ type: AgentType;
180
+ field?: string;
181
+ resource: string;
182
+ file?: string;
183
+ meta?: Record<string, any>;
184
+ /** Click position for menu placement */
185
+ x: number;
186
+ y: number;
187
+ }
188
+
189
+ function col(resource: string, field: string): string {
190
+ return `${resource} 列表中的 "${field}" 列`;
191
+ }
192
+
193
+ function formF(resource: string, field: string): string {
194
+ return `${resource} 表单中的 "${field}" 字段`;
195
+ }
196
+
197
+ function showF(resource: string, field: string): string {
198
+ return `${resource} 详情页的 "${field}" 字段`;
199
+ }
200
+
201
+ export function getInspectorActions(
202
+ info: InspectedElementInfo,
203
+ ): InspectorAction[] {
204
+ const { type, resource, field } = info;
205
+ const r = resource;
206
+ const f = field || '';
207
+
208
+ switch (type) {
209
+ case 'list-column':
210
+ return [
211
+ {
212
+ label: '不显示(仅页面)',
213
+ skill: 'ui-config-update',
214
+ promptTemplate: `隐藏 ${col(r, f)}(仅页面不显示)`,
215
+ requiresConfirm: true,
216
+ confirmDescription: `将从 ${r} 列表页面中隐藏 "${f}" 列。数据库字段不受影响,可随时恢复显示。`,
217
+ },
218
+ {
219
+ label: '修改字段值展示样式',
220
+ skill: 'list-column-render',
221
+ promptTemplate: `自定义 ${col(r, f)} 的渲染样式`,
222
+ requiresInput: true,
223
+ inputPlaceholder:
224
+ '请描述样式要求,例如:用颜色区分状态,ACTIVE 显示绿色,INACTIVE 显示红色',
225
+ },
226
+ {
227
+ label: '修改表头描述(label)',
228
+ skill: 'page-i18n',
229
+ promptTemplate: `修改 ${col(r, f)} 的显示名称(通过 i18n 翻译文件)`,
230
+ requiresInput: true,
231
+ inputPlaceholder:
232
+ '请分别提供中文和英文名称,例如:\n中文:审核状态\n英文:Review Status\n(翻译 key:resources.{resourceName}.fields.{fieldName})',
233
+ },
234
+ {
235
+ label: '固定列',
236
+ skill: 'list-column-fixed',
237
+ promptTemplate: `将 ${col(r, f)} 固定到左侧/右侧`,
238
+ requiresInput: true,
239
+ inputPlaceholder: '请指定固定方向:左 / 右',
240
+ },
241
+ {
242
+ label: '支持行内编辑',
243
+ skill: 'list-column-inline-edit',
244
+ promptTemplate: `为 ${col(r, f)} 启用行内编辑`,
245
+ requiresConfirm: true,
246
+ confirmDescription: `将为 ${r} 列表的 "${f}" 列开启行内编辑,用户可直接在表格中修改该字段的值。`,
247
+ },
248
+ {
249
+ label: '添加表头排序',
250
+ skill: 'ui-config-update',
251
+ promptTemplate: `为 ${col(r, f)} 添加排序`,
252
+ requiresConfirm: true,
253
+ confirmDescription: `将为 ${r} 列表的 "${f}" 列添加点击排序功能。`,
254
+ },
255
+ {
256
+ label: '移除表头排序',
257
+ skill: 'ui-config-update',
258
+ promptTemplate: `移除 ${col(r, f)} 的排序`,
259
+ requiresConfirm: true,
260
+ confirmDescription: `将移除 ${r} 列表 "${f}" 列的排序功能。`,
261
+ },
262
+ {
263
+ label: '添加表头搜索',
264
+ skill: 'ui-config-update',
265
+ promptTemplate: `为 ${col(r, f)} 添加搜索过滤`,
266
+ requiresConfirm: true,
267
+ confirmDescription: `将为 ${r} 列表的 "${f}" 列添加表头搜索过滤。`,
268
+ },
269
+ {
270
+ label: '移除表头搜索',
271
+ skill: 'ui-config-update',
272
+ promptTemplate: `移除 ${col(r, f)} 的搜索过滤`,
273
+ requiresConfirm: true,
274
+ confirmDescription: `将移除 ${r} 列表 "${f}" 列的表头搜索过滤。`,
275
+ },
276
+ {
277
+ label: '在其后面添加展示字段',
278
+ skill: 'ui-config-update',
279
+ promptTemplate: `在 ${r} ${col(r, f)} 后面添加展示字段`,
280
+ fieldSubMenu: 'add-after',
281
+ },
282
+ {
283
+ label: '在其前面添加展示字段',
284
+ skill: 'ui-config-update',
285
+ promptTemplate: `在 ${r} ${col(r, f)} 前面添加展示字段`,
286
+ fieldSubMenu: 'add-before',
287
+ },
288
+ {
289
+ label: '在列中添加关联字段',
290
+ skill: 'list-extend-prisma-select',
291
+ promptTemplate: `为 ${col(r, f)} 添加关联字段展示`,
292
+ requiresInput: true,
293
+ inputPlaceholder:
294
+ '请描述要添加的关联字段,例如:添加 author.name 作者姓名',
295
+ },
296
+ {
297
+ label: '自定义',
298
+ skill: null,
299
+ requiresInput: true,
300
+ promptTemplate: `对 ${r} 列表中的 "${f}" 列进行修改`,
301
+ promptPrefix: '要求:\n',
302
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
303
+ },
304
+ ];
305
+
306
+ case 'form-field':
307
+ return [
308
+ {
309
+ label: '不显示',
310
+ skill: 'ui-config-update',
311
+ promptTemplate: `隐藏 ${formF(r, f)}(仅页面不显示)`,
312
+ requiresConfirm: true,
313
+ confirmDescription: `将从 ${r} 表单中隐藏 "${f}" 字段。数据库字段不受影响,可随时恢复显示。`,
314
+ },
315
+ {
316
+ label: '彻底删除字段',
317
+ skill: 'prisma-schema-update',
318
+ promptTemplate: `彻底删除 ${formF(r, f)}:先用 prisma-schema-update 从数据库删除字段,再用 ui-config-update 从页面配置中移除该字段`,
319
+ requiresConfirm: true,
320
+ confirmDescription: `将从数据库和表单页面中彻底删除 "${f}" 字段。此操作不可逆,字段的历史数据也将全部清除。`,
321
+ },
322
+ {
323
+ label: '修改描述(label)',
324
+ skill: 'page-i18n',
325
+ promptTemplate: `修改 ${formF(r, f)} 的显示名称(通过 i18n 翻译文件)`,
326
+ requiresInput: true,
327
+ inputPlaceholder:
328
+ '请分别提供中文和英文名称,例如:\n中文:游戏名称\n英文:Game Name\n(翻译 key:resources.{resourceName}.fields.{fieldName})',
329
+ },
330
+ {
331
+ label: '字段旁添加帮助提示(含链接)',
332
+ skill: 'form-field-tooltip',
333
+ promptTemplate: `为 ${formF(r, f)} 添加 Tooltip 帮助提示(可包含链接)`,
334
+ requiresInput: true,
335
+ inputPlaceholder:
336
+ '请描述提示内容,例如:\n提示文字"详见配置文档",链接 https://docs.example.com\n或纯文字:此字段用于关联上游系统的唯一标识',
337
+ },
338
+ {
339
+ label: '字段联动(显/隐)',
340
+ skill: 'form-field-dependencies',
341
+ promptTemplate: `为 ${formF(r, f)} 添加联动依赖(显/隐依赖其他字段)`,
342
+ requiresInput: true,
343
+ inputPlaceholder:
344
+ '请描述联动条件,例如:当"类型"字段值为"高级"时才显示此字段',
345
+ },
346
+ {
347
+ label: '自定义校验逻辑',
348
+ skill: 'form-custom-validator',
349
+ promptTemplate: `为 ${formF(r, f)} 添加自定义校验规则`,
350
+ requiresInput: true,
351
+ inputPlaceholder: '请描述校验规则,例如:必须是正整数且不超过 100',
352
+ },
353
+ {
354
+ label: '改为级联选择器',
355
+ skill: 'form-cascader-component',
356
+ promptTemplate: `将 ${formF(r, f)} 替换为级联选择器`,
357
+ requiresInput: true,
358
+ inputPlaceholder:
359
+ '请描述级联层级和数据来源,例如:省 → 市 → 区,数据来自 /api/regions',
360
+ },
361
+ {
362
+ label: '改为自动补全输入方式',
363
+ skill: 'prisma-schema-update',
364
+ promptTemplate: `将 ${formF(r, f)} 改为 @FormItem(AutoComplete),建议值从后端已有数据动态加载`,
365
+ requiresConfirm: true,
366
+ confirmDescription: `将把 ${formF(r, f)} 的表单控件改为自动补全输入框(AutoComplete)。用户可以自由输入任意新值,同时系统会自动将该字段的历史值作为输入建议。`,
367
+ },
368
+ {
369
+ label: '修改字段类型',
370
+ skill: 'prisma-schema-update',
371
+ promptTemplate: `修改 ${formF(r, f)} 的表单控件类型(@FormItem 注解)`,
372
+ requiresInput: true,
373
+ inputPlaceholder:
374
+ '请说明要改为什么控件类型,例如:改为下拉选择(Select DRAFT|PUBLISHED)、改为开关(Boolean)、改为多行文本(Text)、改为数字输入框(Number)',
375
+ },
376
+ {
377
+ label: '在其后面添加输入字段',
378
+ skill: 'ui-config-update',
379
+ promptTemplate: `在 ${formF(r, f)} 后面添加输入字段`,
380
+ fieldSubMenu: 'add-after',
381
+ },
382
+ {
383
+ label: '在其前面添加输入字段',
384
+ skill: 'ui-config-update',
385
+ promptTemplate: `在 ${formF(r, f)} 前面添加输入字段`,
386
+ fieldSubMenu: 'add-before',
387
+ },
388
+ {
389
+ label: '字段选项从关联接口动态加载',
390
+ skill: 'form-load-related-data',
391
+ promptTemplate: `为 ${formF(r, f)} 的选项从关联接口动态加载`,
392
+ requiresInput: true,
393
+ inputPlaceholder:
394
+ '请描述数据来源接口,例如:从 /api/games 加载游戏列表作为下拉选项',
395
+ },
396
+ {
397
+ label: '提交前/回填时转换字段数据',
398
+ skill: 'form-data-transform',
399
+ promptTemplate: `为 ${formF(r, f)} 添加数据转换逻辑(提交前或回填时)`,
400
+ requiresInput: true,
401
+ inputPlaceholder:
402
+ '请描述转换规则,例如:提交前将数组转为逗号分隔字符串,回填时再拆回数组',
403
+ },
404
+ {
405
+ label: '自定义',
406
+ skill: null,
407
+ requiresInput: true,
408
+ promptTemplate: `对 ${r} 表单中的 "${f}" 字段进行修改`,
409
+ promptPrefix: '要求:\n',
410
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
411
+ },
412
+ ];
413
+
414
+ case 'show-field':
415
+ return [
416
+ {
417
+ label: '不显示',
418
+ skill: 'ui-config-update',
419
+ promptTemplate: `隐藏 ${showF(r, f)}`,
420
+ requiresConfirm: true,
421
+ confirmDescription: `将从 ${r} 详情页中隐藏 "${f}" 字段。数据库字段不受影响,可随时恢复显示。`,
422
+ },
423
+ {
424
+ label: '修改字段值展示样式',
425
+ skill: 'show-field-render',
426
+ promptTemplate: `自定义 ${showF(r, f)} 的显示方式`,
427
+ requiresInput: true,
428
+ inputPlaceholder:
429
+ '请描述样式要求,例如:将 JSON 格式化展示,或用颜色标签渲染状态',
430
+ },
431
+ {
432
+ label: '修改描述(label)',
433
+ skill: 'page-i18n',
434
+ promptTemplate: `修改 ${showF(r, f)} 的标签名称(通过 i18n 翻译文件)`,
435
+ requiresInput: true,
436
+ inputPlaceholder:
437
+ '请分别提供中文和英文名称,例如:\n中文:审核状态\n英文:Review Status\n(翻译 key:resources.{resourceName}.fields.{fieldName})',
438
+ },
439
+ {
440
+ label: '在其后面添加展示字段',
441
+ skill: 'ui-config-update',
442
+ promptTemplate: `在 ${r} "${showF(r, f)}" 后面添加展示字段`,
443
+ fieldSubMenu: 'add-after',
444
+ },
445
+ {
446
+ label: '在其前面添加展示字段',
447
+ skill: 'ui-config-update',
448
+ promptTemplate: `在 ${r} "${showF(r, f)}" 前面添加展示字段`,
449
+ fieldSubMenu: 'add-before',
450
+ },
451
+ {
452
+ label: '自定义',
453
+ skill: null,
454
+ requiresInput: true,
455
+ promptTemplate: `对 ${r} 详情页的 "${f}" 字段进行修改`,
456
+ promptPrefix: '要求:\n',
457
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
458
+ },
459
+ ];
460
+
461
+ case 'list-search-bar':
462
+ return [
463
+ {
464
+ label: '增加 模糊匹配 过滤',
465
+ skill: 'list-search-filter',
466
+ promptTemplate: `为 ${r} 搜索栏添加模糊匹配过滤(通过修改ui配置)`,
467
+ requiresInput: true,
468
+ inputPlaceholder: '请填写要添加模糊搜索的字段名,例如:name、title',
469
+ },
470
+ {
471
+ label: '增加 下拉 过滤',
472
+ skill: 'list-search-filter',
473
+ promptTemplate: `为 ${r} 搜索栏添加 Select 下拉过滤`,
474
+ requiresInput: true,
475
+ inputPlaceholder:
476
+ '请填写字段名及选项来源,例如:字段 status,选项 ACTIVE|INACTIVE;或字段 gameId,选项来自关联表 game 的 name 字段',
477
+ },
478
+ {
479
+ label: '增加 checkbox 过滤',
480
+ skill: 'list-search-filter',
481
+ promptTemplate: `为 ${r} 搜索栏添加 Checkbox 多选过滤`,
482
+ requiresInput: true,
483
+ inputPlaceholder:
484
+ '请填写字段名及选项,例如:字段 category,选项:技术|产品|运营',
485
+ },
486
+ {
487
+ label: '增加 radio 过滤',
488
+ skill: 'list-search-filter',
489
+ promptTemplate: `为 ${r} 搜索栏添加 Radio 单选过滤`,
490
+ requiresInput: true,
491
+ inputPlaceholder:
492
+ '请填写字段名及选项,例如:字段 type,选项:全部|在线|离线',
493
+ },
494
+ {
495
+ label: '添加固定过滤(不可清除)',
496
+ skill: 'list-search-filter',
497
+ promptTemplate: `为 ${r} 列表页添加不可被用户清除的固定过滤条件(permanentFilter)`,
498
+ requiresInput: true,
499
+ inputPlaceholder:
500
+ '请描述固定过滤条件,例如:始终只显示 status=ACTIVE 的数据,或按当前用户 ID 过滤',
501
+ },
502
+ {
503
+ label: '移除 过滤字段',
504
+ skill: 'list-search-filter',
505
+ promptTemplate: `从 ${r} 搜索栏删除过滤字段`,
506
+ requiresInput: true,
507
+ inputPlaceholder: '请填写要删除的过滤字段名',
508
+ },
509
+ {
510
+ label: '修改描述(label)',
511
+ skill: 'page-i18n',
512
+ promptTemplate: `修改 ${r} 搜索栏某个过滤字段的显示名称(通过 i18n 翻译文件)`,
513
+ requiresInput: true,
514
+ inputPlaceholder:
515
+ '请填写字段名,并分别提供中文和英文名称,例如:\n字段:status\n中文:审核状态\n英文:Review Status\n(翻译 key:resources.{resourceName}.fields.{fieldName})',
516
+ },
517
+ {
518
+ label: '自定义',
519
+ skill: null,
520
+ requiresInput: true,
521
+ promptTemplate: `对 ${r} 列表页的搜索栏进行修改`,
522
+ promptPrefix: '要求:\n',
523
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
524
+ },
525
+ ];
526
+
527
+ case 'list-header':
528
+ return [
529
+ {
530
+ label: '新建按钮',
531
+ skill: null,
532
+ children: [
533
+ {
534
+ label: '按条件显示',
535
+ skill: 'list-createbtn-customization',
536
+ promptTemplate: `为 ${r} 列表页工具栏新建按钮添加条件显示逻辑`,
537
+ requiresInput: true,
538
+ inputPlaceholder:
539
+ '请描述显示条件,例如:仅角色为 GPU_ADMIN 时才显示新建按钮',
540
+ },
541
+ {
542
+ label: '修改描述(label)',
543
+ skill: 'page-i18n',
544
+ promptTemplate: `修改 ${r} 列表页工具栏新建按钮的显示名称(通过 i18n 翻译文件)`,
545
+ requiresInput: true,
546
+ inputPlaceholder:
547
+ '请分别提供中文和英文,例如:\n中文:新建游戏\n英文:Create Game',
548
+ },
549
+ {
550
+ label: '移除',
551
+ skill: 'list-createbtn-customization',
552
+ promptTemplate: `从 ${r} 列表页工具栏移除新建按钮`,
553
+ requiresConfirm: true,
554
+ confirmDescription: `将从 ${r} 列表页工具栏中移除新建按钮,用户将无法从该页面新建记录。`,
555
+ },
556
+ ],
557
+ },
558
+ {
559
+ label: '导入按钮',
560
+ skill: null,
561
+ children: [
562
+ {
563
+ label: '按条件显示',
564
+ skill: 'list-import-customization',
565
+ promptTemplate: `为 ${r} 列表页工具栏添加按条件显示的 导入按钮`,
566
+ requiresInput: true,
567
+ inputPlaceholder: '请描述显示条件',
568
+ },
569
+ {
570
+ label: '修改描述(label)',
571
+ skill: 'page-i18n',
572
+ promptTemplate: `修改 ${r} 列表页工具栏导入按钮的显示名称(通过 i18n 翻译文件)`,
573
+ requiresInput: true,
574
+ inputPlaceholder: '请分别提供中文和英文',
575
+ },
576
+ {
577
+ label: '移除',
578
+ skill: 'list-import-customization',
579
+ promptTemplate: `从 ${r} 列表页工具栏移除 CSV 导入`,
580
+ requiresConfirm: true,
581
+ confirmDescription: `将从 ${r} 列表页工具栏中移除 CSV 导入按钮。`,
582
+ },
583
+ {
584
+ label: '自定义导入行为',
585
+ skill: 'list-import-customization',
586
+ requiresInput: true,
587
+ promptTemplate: `修改 ${r} 列表页工具栏的导入行为`,
588
+ },
589
+ ],
590
+ },
591
+ {
592
+ label: '导出按钮',
593
+ skill: null,
594
+ children: [
595
+ {
596
+ label: '按条件显示',
597
+ skill: 'list-export-customization',
598
+ promptTemplate: `为 ${r} 列表页工具栏添加按条件显示的 导出按钮`,
599
+ requiresInput: true,
600
+ inputPlaceholder: '请描述显示条件',
601
+ },
602
+ {
603
+ label: '修改描述(label)',
604
+ skill: 'page-i18n',
605
+ promptTemplate: `修改 ${r} 列表页工具栏导出按钮的显示名称(通过 i18n 翻译文件)`,
606
+ requiresInput: true,
607
+ inputPlaceholder: '请分别提供中文和英文',
608
+ },
609
+ {
610
+ label: '移除',
611
+ skill: 'list-export-customization',
612
+ promptTemplate: `从 ${r} 列表页工具栏移除 导出按钮`,
613
+ requiresConfirm: true,
614
+ confirmDescription: `将从 ${r} 列表页工具栏中移除 导出按钮。`,
615
+ },
616
+ {
617
+ label: '自定义导出行为',
618
+ requiresInput: true,
619
+ skill: 'list-export-customization',
620
+ promptTemplate: `修改 ${r} 列表页工具栏的导出行为`,
621
+ },
622
+ ],
623
+ },
624
+ {
625
+ label: '刷新按钮',
626
+ skill: null,
627
+ children: [
628
+ {
629
+ label: '添加',
630
+ skill: 'list-refresh-customization',
631
+ promptTemplate: `为 ${r} 列表页工具栏添加刷新按钮`,
632
+ requiresConfirm: true,
633
+ confirmDescription: `将在 ${r} 列表页工具栏中添加刷新按钮。`,
634
+ },
635
+ {
636
+ label: '修改描述(label)',
637
+ skill: 'page-i18n',
638
+ promptTemplate: `修改 ${r} 列表页工具栏刷新按钮的显示名称(通过 i18n 翻译文件)`,
639
+ requiresInput: true,
640
+ inputPlaceholder: '请分别提供中文和英文',
641
+ },
642
+ {
643
+ label: '移除',
644
+ skill: 'list-refresh-customization',
645
+ promptTemplate: `从 ${r} 列表页工具栏移除刷新按钮`,
646
+ requiresConfirm: true,
647
+ confirmDescription: `将从 ${r} 列表页工具栏中移除刷新按钮。`,
648
+ },
649
+ ],
650
+ },
651
+ {
652
+ label: '全只读模式',
653
+ skill: 'list-readonly-mode',
654
+ promptTemplate: `将 ${r} 列表页设置为全只读模式(移除所有写操作)`,
655
+ requiresConfirm: true,
656
+ confirmDescription: `将 ${r} 列表页设为只读模式,移除新建、编辑、删除等所有写操作入口。`,
657
+ },
658
+ {
659
+ label: '添加列显示/隐藏控制面板',
660
+ skill: 'list-column-visibility',
661
+ promptTemplate: `为 ${r} 列表页工具栏添加列显示/隐藏控制面板`,
662
+ requiresConfirm: true,
663
+ confirmDescription: `将在 ${r} 列表页工具栏中添加列显示/隐藏控制面板,用户可自定义显示哪些列。`,
664
+ },
665
+ {
666
+ label: '自定义',
667
+ skill: null,
668
+ requiresInput: true,
669
+ promptTemplate: `对 ${r} 列表页的工具栏区域(ListPageHeader 组件)进行修改`,
670
+ promptPrefix: '要求:\n',
671
+ promptSuffix: `注意:ListPageHeader 是公共组件,不可直接修改其源码。\n请优先通过调整列表页中 ListPageHeader 的 render props 来实现;\n如果 render props 无法满足需求,再在列表页内创建局部组件来替代。`,
672
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
673
+ },
674
+ ];
675
+
676
+ case 'list-row-actions':
677
+ return [
678
+ {
679
+ label: '添加操作按钮',
680
+ skill: 'list-custom-row-actions',
681
+ promptTemplate: `为 ${r} 列表页行操作添加自定义按钮(通过CHANGE_STATUS配置 或者 自定义行操作)`,
682
+ requiresInput: true,
683
+ inputPlaceholder:
684
+ '请描述按钮的名称、修改的状态字段和变更目标的值,例如:添加"发布"按钮,将 status 字段从 PENDING 改为 APPROVED' +
685
+ '\n或者\n' +
686
+ '请描述按钮名称和要调用的接口,例如:添加"审核"按钮,点击后调用 POST /api/approve/:id',
687
+ },
688
+ {
689
+ label: '添加 跳转至外部链接 按钮',
690
+ skill: 'list-row-action-external',
691
+ promptTemplate: `为 ${r} 列表页行操作添加跳转链接按钮`,
692
+ requiresInput: true,
693
+ inputPlaceholder:
694
+ '请描述按钮名称和跳转目标,例如:添加"查看报表"按钮,跳转到 /reports/:id',
695
+ },
696
+ {
697
+ label: '添加 跳转至站内页面 按钮',
698
+ skill: 'list-row-action-link',
699
+ promptTemplate: `为 ${r} 列表页行操作添加站内页面跳转按钮`,
700
+ requiresInput: true,
701
+ inputPlaceholder:
702
+ '请描述按钮名称和目标页面,例如:添加"查看详情"按钮,跳转到 /orders/:id/detail',
703
+ },
704
+ {
705
+ label: '按条件显示 编辑 按钮 ',
706
+ skill: 'ui-config-update',
707
+ promptTemplate: `为 ${r} 列表页的 编辑 按钮添加条件显示逻辑(EDIT)`,
708
+ requiresInput: true,
709
+ inputPlaceholder:
710
+ '请描述隐藏条件,例如:当 status 为 PUBLISHED 时隐藏 编辑 按钮',
711
+ },
712
+ {
713
+ label: '自定义',
714
+ skill: null,
715
+ requiresInput: true,
716
+ promptTemplate: `对 ${r} 列表页的行操作区域(RowActions 组件)进行修改`,
717
+ promptPrefix: '要求:\n',
718
+ promptSuffix: `注意:RowActions 是公共组件,不可直接修改其源码。\n请优先通过调整列表页中 RowActions 的 render props 来实现;\n如果 render props 无法满足需求,再在列表页内创建局部组件来替代。`,
719
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
720
+ },
721
+ ];
722
+
723
+ case 'list-bulk-actions':
724
+ return [
725
+ {
726
+ label: '"批量删除"功能',
727
+ skill: null,
728
+ children: [
729
+ {
730
+ label: '添加',
731
+ skill: 'list-bulk-actions-batch-delete-promise',
732
+ promptTemplate: `为 ${r} 列表页添加批量删除`,
733
+ requiresConfirm: true,
734
+ confirmDescription: `将为 ${r} 列表页添加批量删除功能,用户可勾选多行后一键删除。`,
735
+ },
736
+ {
737
+ label: '移除',
738
+ skill: 'list-bulk-actions-batch-delete-promise',
739
+ promptTemplate: `从 ${r} 列表页移除批量删除`,
740
+ requiresConfirm: true,
741
+ confirmDescription: `将从 ${r} 列表页移除批量删除功能。`,
742
+ },
743
+ ],
744
+ },
745
+ {
746
+ label: '"批量编辑"功能',
747
+ skill: null,
748
+ children: [
749
+ {
750
+ label: '添加(固定值,如状态)',
751
+ skill: 'list-bulk-actions-batch-modify-modal',
752
+ promptTemplate: `为 ${r} 列表页添加批量编辑弹窗(固定值)`,
753
+ requiresInput: true,
754
+ inputPlaceholder:
755
+ '请描述要批量修改的字段和固定值,例如:将 status 批量设为 PUBLISHED',
756
+ },
757
+ {
758
+ label: '添加(用户输入)',
759
+ skill: 'list-bulk-actions-batch-modify-modal',
760
+ promptTemplate: `为 ${r} 列表页添加批量编辑弹窗(用户输入)`,
761
+ requiresInput: true,
762
+ inputPlaceholder:
763
+ '请描述要批量编辑的字段,例如:让用户输入 remark 后批量更新',
764
+ },
765
+ {
766
+ label: '移除',
767
+ skill: 'list-bulk-actions-batch-modify-modal',
768
+ promptTemplate: `从 ${r} 列表页移除批量编辑弹窗`,
769
+ requiresConfirm: true,
770
+ confirmDescription: `将从 ${r} 列表页移除批量编辑弹窗。`,
771
+ },
772
+ ],
773
+ },
774
+ {
775
+ label: '"批量导出"功能',
776
+ skill: null,
777
+ children: [
778
+ {
779
+ label: '添加',
780
+ skill: 'ui-config-update',
781
+ promptTemplate: `开启 ${r} 列表页的批量导出功能`,
782
+ requiresConfirm: true,
783
+ confirmDescription: `将开启 ${r} 列表页的批量导出功能,用户可勾选多行后执行批量导出。`,
784
+ },
785
+ {
786
+ label: '移除',
787
+ skill: 'ui-config-update',
788
+ promptTemplate: `从 ${r} 列表页移除批量导出`,
789
+ requiresConfirm: true,
790
+ confirmDescription: `将从 ${r} 列表页移除批量导出功能。`,
791
+ },
792
+ ],
793
+ },
794
+ {
795
+ label: '自定义',
796
+ skill: null,
797
+ requiresInput: true,
798
+ promptTemplate: `对 ${r} 列表页的批量操作区域(BulkActions 组件)进行修改`,
799
+ promptPrefix: '要求:\n',
800
+ promptSuffix: `注意:BulkActions 是公共组件,不可直接修改其源码。\n请优先通过调整列表页中 BulkActions 的 render props(如 renderDeleteButton、extraActions 等)来实现;\n如果 render props 无法满足需求,再在列表页内创建局部组件来替代。`,
801
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
802
+ },
803
+ ];
804
+
805
+ case 'app-title':
806
+ return [
807
+ {
808
+ label: '修改标题文字',
809
+ skill: 'header-customization',
810
+ promptTemplate: `修改网站标题文字`,
811
+ requiresInput: true,
812
+ inputPlaceholder:
813
+ '请描述修改内容,例如:\n- 改为"xxx 管理后台"\n- 隐藏标题只保留 Logo',
814
+ },
815
+ {
816
+ label: '修改Logo',
817
+ skill: 'header-customization',
818
+ promptTemplate: `修改网站 Logo`,
819
+ requiresInput: true,
820
+ inputPlaceholder:
821
+ '请描述修改内容,例如:\n- 替换为图片 Logo(提供图片路径或 URL)\n- 修改 Logo 颜色\n- 隐藏 Logo',
822
+ },
823
+ {
824
+ label: '自定义',
825
+ skill: null,
826
+ requiresInput: true,
827
+ promptTemplate: `对页面标题和 Logo 区域进行修改`,
828
+ promptPrefix: '要求:\n',
829
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
830
+ },
831
+ ];
832
+
833
+ case 'app-header':
834
+ return [
835
+ {
836
+ label: '修改业务(游戏)选择器',
837
+ skill: 'header-customization',
838
+ promptTemplate: `修改顶部导航的业务(游戏)选择器`,
839
+ requiresInput: true,
840
+ inputPlaceholder:
841
+ '请描述修改内容,例如:\n- 隐藏选择器\n- 修改宽度为 200px\n- 默认选中第一项',
842
+ },
843
+ {
844
+ label: '修改语言切换',
845
+ skill: 'header-customization',
846
+ promptTemplate: `修改顶部导航的语言切换`,
847
+ requiresInput: true,
848
+ inputPlaceholder:
849
+ '请描述修改内容,例如:\n- 隐藏语言切换\n- 只保留中文,移除多语言切换',
850
+ },
851
+ {
852
+ label: '修改用户信息(头像/用户名)',
853
+ skill: 'header-customization',
854
+ promptTemplate: `修改顶部导航的用户信息区`,
855
+ requiresInput: true,
856
+ inputPlaceholder:
857
+ '请描述修改内容,例如:\n- 隐藏用户名,只显示头像\n- 隐藏头像和用户名\n- 点击用户名跳转到个人主页',
858
+ },
859
+ {
860
+ label: '修改整体样式',
861
+ skill: 'header-customization',
862
+ promptTemplate: `修改顶部导航的整体样式`,
863
+ requiresInput: true,
864
+ inputPlaceholder:
865
+ '请描述修改内容,例如:\n- 背景色改为深色 #001529\n- 高度改为 48px\n- 左侧添加系统标题文字',
866
+ },
867
+ {
868
+ label: '自定义',
869
+ skill: null,
870
+ requiresInput: true,
871
+ promptTemplate: `对顶部导航栏(App Header 组件)进行修改`,
872
+ promptPrefix: '要求:\n',
873
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
874
+ },
875
+ ];
876
+
877
+ case 'show-header':
878
+ return [
879
+ {
880
+ label: '编辑按钮',
881
+ skill: null,
882
+ children: [
883
+ {
884
+ label: '显示(按条件)',
885
+ skill: 'show-readonly-header',
886
+ promptTemplate: `为 ${r} 详情页编辑按钮添加条件显示逻辑`,
887
+ requiresInput: true,
888
+ inputPlaceholder:
889
+ '请描述显示条件,例如:仅角色为 ADMIN 时才显示编辑按钮',
890
+ },
891
+ {
892
+ label: '修改描述(label)',
893
+ skill: 'page-i18n',
894
+ promptTemplate: `修改 ${r} 详情页编辑按钮的显示名称(通过 i18n 翻译文件)`,
895
+ requiresInput: true,
896
+ inputPlaceholder:
897
+ '请分别提供中文和英文,例如:\n中文:修改\n英文:Edit',
898
+ },
899
+ {
900
+ label: '移除',
901
+ skill: 'show-readonly-header',
902
+ promptTemplate: `从 ${r} 详情页移除编辑按钮`,
903
+ requiresConfirm: true,
904
+ confirmDescription: `将从 ${r} 详情页移除编辑按钮,用户将无法从详情页跳转到编辑页。`,
905
+ },
906
+ ],
907
+ },
908
+ {
909
+ label: '复制按钮',
910
+ skill: null,
911
+ children: [
912
+ {
913
+ label: '添加',
914
+ skill: 'show-readonly-header',
915
+ promptTemplate: `为 ${r} 详情页添加复制按钮`,
916
+ requiresConfirm: true,
917
+ confirmDescription: `将为 ${r} 详情页添加复制按钮,用户可一键复制当前记录。`,
918
+ },
919
+ {
920
+ label: '显示(按条件)',
921
+ skill: 'show-readonly-header',
922
+ promptTemplate: `为 ${r} 详情页复制按钮添加条件显示逻辑`,
923
+ requiresInput: true,
924
+ inputPlaceholder: '请描述显示条件',
925
+ },
926
+ {
927
+ label: '修改描述(label)',
928
+ skill: 'page-i18n',
929
+ promptTemplate: `修改 ${r} 详情页复制按钮的显示名称(通过 i18n 翻译文件)`,
930
+ requiresInput: true,
931
+ inputPlaceholder:
932
+ '请分别提供中文和英文,例如:\n中文:复制\n英文:Clone',
933
+ },
934
+ {
935
+ label: '移除',
936
+ skill: 'show-readonly-header',
937
+ promptTemplate: `从 ${r} 详情页移除复制按钮`,
938
+ requiresConfirm: true,
939
+ confirmDescription: `将从 ${r} 详情页移除复制按钮。`,
940
+ },
941
+ ],
942
+ },
943
+ {
944
+ label: '删除按钮',
945
+ skill: null,
946
+ children: [
947
+ {
948
+ label: '显示(按条件)',
949
+ skill: 'show-readonly-header',
950
+ promptTemplate: `为 ${r} 详情页删除按钮添加条件显示逻辑`,
951
+ requiresInput: true,
952
+ inputPlaceholder:
953
+ '请描述显示条件,例如:当 status 为 PUBLISHED 时隐藏删除按钮',
954
+ },
955
+ {
956
+ label: '修改描述(label)',
957
+ skill: 'page-i18n',
958
+ promptTemplate: `修改 ${r} 详情页删除按钮的显示名称(通过 i18n 翻译文件)`,
959
+ requiresInput: true,
960
+ inputPlaceholder:
961
+ '请分别提供中文和英文,例如:\n中文:删除\n英文:Delete',
962
+ },
963
+ {
964
+ label: '移除',
965
+ skill: 'show-readonly-header',
966
+ promptTemplate: `从 ${r} 详情页移除删除按钮`,
967
+ requiresConfirm: true,
968
+ confirmDescription: `将从 ${r} 详情页移除删除按钮。`,
969
+ },
970
+ ],
971
+ },
972
+ {
973
+ label: '刷新按钮',
974
+ skill: null,
975
+ children: [
976
+ {
977
+ label: '添加',
978
+ skill: 'show-readonly-header',
979
+ promptTemplate: `为 ${r} 详情页添加刷新按钮`,
980
+ requiresConfirm: true,
981
+ confirmDescription: `将为 ${r} 详情页添加刷新按钮。`,
982
+ },
983
+ {
984
+ label: '修改描述(label)',
985
+ skill: 'page-i18n',
986
+ promptTemplate: `修改 ${r} 详情页刷新按钮的显示名称(通过 i18n 翻译文件)`,
987
+ requiresInput: true,
988
+ inputPlaceholder:
989
+ '请分别提供中文和英文,例如:\n中文:刷新\n英文:Refresh',
990
+ },
991
+ {
992
+ label: '移除',
993
+ skill: 'show-readonly-header',
994
+ promptTemplate: `从 ${r} 详情页移除刷新按钮`,
995
+ requiresConfirm: true,
996
+ confirmDescription: `将从 ${r} 详情页移除刷新按钮。`,
997
+ },
998
+ ],
999
+ },
1000
+ {
1001
+ label: '添加 自定义操作按钮(可调接口)',
1002
+ skill: 'show-readonly-header',
1003
+ promptTemplate: `为 ${r} 详情页工具栏添加自定义操作按钮`,
1004
+ promptPrefix: '要求:\n',
1005
+ requiresInput: true,
1006
+ inputPlaceholder:
1007
+ '请描述按钮名称和要调用的接口,例如:添加"审核通过"按钮,点击后调用 POST /api/approve/:id',
1008
+ },
1009
+ {
1010
+ label: '全只读模式(移除所有写操作)',
1011
+ skill: 'show-readonly-header',
1012
+ promptTemplate: `将 ${r} 详情页设为只读模式,移除编辑、复制、删除按钮`,
1013
+ requiresConfirm: true,
1014
+ confirmDescription: `将 ${r} 详情页设为只读模式,移除编辑、复制、删除按钮,用户只能查看不能修改。`,
1015
+ },
1016
+ {
1017
+ label: '自定义',
1018
+ skill: null,
1019
+ requiresInput: true,
1020
+ promptTemplate: `对 ${r} 详情页的操作工具栏(show header 区域)进行修改`,
1021
+ promptPrefix: '要求:\n',
1022
+ inputPlaceholder: '请描述你希望 AI 执行的自定义操作',
1023
+ },
1024
+ ];
1025
+
1026
+ case 'canvas-component': {
1027
+ // Canvas 组件的操作已迁移到右键菜单,检查元素面板不再显示
1028
+ return [];
1029
+ }
1030
+
1031
+ default:
1032
+ return [];
1033
+ }
1034
+ }