@gadmin2n/schematics 0.0.69 → 0.0.70

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 (223) 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/.prettierignore +2 -0
  41. package/dist/lib/application/files/gadmin2-game-angle-demo/web/dev-shell-entry.html +49 -0
  42. package/dist/lib/application/files/gadmin2-game-angle-demo/web/package.json +13 -2
  43. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/App.tsx +137 -111
  44. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/auditLogProvider.ts +46 -44
  45. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/authProvider.ts +32 -12
  46. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/BulkActions.tsx +74 -23
  47. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/ListPageHeader.tsx +9 -9
  48. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/RowActions.tsx +57 -31
  49. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/SearchBar.tsx +53 -24
  50. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/SqlModal.tsx +148 -72
  51. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/AgentContext.tsx +190 -16
  52. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/ElementInspector.tsx +914 -63
  53. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/agentAttributes.ts +17 -8
  54. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/index.ts +0 -10
  55. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/inspectorActions.ts +969 -46
  56. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/pagePathUtils.ts +66 -0
  57. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/promptGenerator.ts +85 -25
  58. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/propPatcher.ts +84 -0
  59. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/eventList/index.tsx +16 -20
  60. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/index.ts +4 -4
  61. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logButton/index.tsx +13 -13
  62. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logList/index.tsx +15 -16
  63. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/modalDiffViewer/index.tsx +15 -15
  64. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/index.tsx +2 -2
  65. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/BarChart/index.tsx +896 -0
  66. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartSwitcher/index.tsx +219 -0
  67. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartViewer/index.tsx +159 -0
  68. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Filter/index.tsx +192 -0
  69. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/LineChart/index.tsx +1034 -0
  70. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/NumCard.module.css +8 -0
  71. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/index.tsx +509 -0
  72. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumLineCard/index.tsx +66 -0
  73. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/PieChart/index.tsx +552 -0
  74. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/RadarChart/index.tsx +263 -0
  75. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Section/index.tsx +35 -0
  76. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Table/index.tsx +207 -0
  77. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/TreemapChart/index.tsx +382 -0
  78. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/WorldMap/index.tsx +135 -0
  79. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/chart-constants.ts +53 -0
  80. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/InfoIcon.tsx +8 -0
  81. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/index.ts +1 -0
  82. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/config.ts +31 -0
  83. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/nameMap.json +9 -0
  84. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/world.geo.json +39349 -0
  85. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/metric-info-tooltip/index.tsx +19 -0
  86. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/business/index.tsx +12 -12
  87. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/color-mode/index.tsx +22 -26
  88. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/custom-avatar.tsx +13 -9
  89. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/index.ts +4 -4
  90. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/header.tsx +22 -37
  91. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/index.ts +4 -4
  92. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/layout.tsx +10 -10
  93. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/logo.tsx +1 -1
  94. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/sider.tsx +113 -65
  95. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/title.tsx +14 -14
  96. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/offLayoutArea/index.tsx +1 -1
  97. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/pagination-total.tsx +2 -2
  98. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/index.ts +1 -1
  99. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/role-tag.tsx +21 -21
  100. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/text.tsx +17 -13
  101. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/config/http.ts +26 -5
  102. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/config/routeRegistry.tsx +221 -51
  103. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/constants/layout.ts +3 -3
  104. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddDataModal.tsx +199 -0
  105. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddPageModal.tsx +335 -0
  106. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DeleteDataConfirm.tsx +56 -0
  107. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DevShell.tsx +401 -0
  108. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/EditDataModal.tsx +129 -0
  109. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/SkillMenu.tsx +202 -0
  110. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/UndoConfirm.tsx +36 -0
  111. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/index.tsx +8 -0
  112. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/style.css +835 -0
  113. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/enums/audit-log.enum.ts +8 -8
  114. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/enums/index.ts +1 -1
  115. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/form.tsx +120 -70
  116. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-name-initials.ts +3 -3
  117. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-random-color.ts +11 -11
  118. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/http.ts +16 -19
  119. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/index.tsx +1 -1
  120. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/list.tsx +99 -73
  121. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/login.ts +22 -27
  122. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/page-tree.ts +74 -0
  123. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/show.tsx +95 -51
  124. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/utils.tsx +7 -3
  125. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/types.ts +15 -15
  126. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchDelete.ts +10 -10
  127. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperations.ts +8 -7
  128. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperationsCore.ts +10 -10
  129. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchUpdate.ts +10 -10
  130. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useDynamicResources.tsx +36 -27
  131. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useECharts.tsx +144 -0
  132. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useFetchData.ts +4 -4
  133. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useListPageState.ts +34 -34
  134. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRoles.ts +8 -4
  135. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRowSelection.ts +1 -1
  136. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useUserPageAccess.ts +55 -41
  137. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/i18n.ts +8 -8
  138. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/index.tsx +9 -2
  139. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/locales/en/common.json +193 -0
  140. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/locales/zh_CN/common.json +194 -0
  141. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/plugins/devShellPlugin.ts +81 -0
  142. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/components/action-cell.tsx +37 -37
  143. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/create.tsx +23 -31
  144. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/edit.tsx +34 -35
  145. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/index.ts +1 -1
  146. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/index.tsx +4 -6
  147. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/list.tsx +41 -34
  148. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/show.tsx +33 -20
  149. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasCell.tsx +87 -0
  150. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasEditPage.tsx +192 -0
  151. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasListPage.tsx +409 -0
  152. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasPage.tsx +1372 -0
  153. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasToolbar.tsx +384 -0
  154. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CodeFloatWindow.tsx +476 -0
  155. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/ComponentThumbnail.tsx +135 -0
  156. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/IsolatedLivePreview.tsx +101 -0
  157. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/LivePreview.tsx +236 -0
  158. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/PublishModal.tsx +200 -0
  159. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasApi.ts +92 -0
  160. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasConfigRegistry.tsx +25 -0
  161. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasContextMenuRegistry.tsx +875 -0
  162. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasDefaults.ts +126 -0
  163. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasI18n.ts +11 -0
  164. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/BarChartDataSourceModal.tsx +115 -0
  165. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/ChartViewerConfigModal.tsx +217 -0
  166. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/LineChartDataSourceModal.tsx +153 -0
  167. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/NumCardDataSourceModal.tsx +211 -0
  168. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/PromptModal.tsx +90 -0
  169. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/RadarChartDataSourceModal.tsx +87 -0
  170. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/TableDataSourceModal.tsx +204 -0
  171. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/demos.ts +1153 -0
  172. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/index.tsx +2 -0
  173. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/sectionCompactor.ts +45 -0
  174. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/types.ts +45 -0
  175. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas-page/index.tsx +108 -0
  176. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/create.tsx +105 -0
  177. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/edit.tsx +121 -0
  178. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/index.tsx +4 -0
  179. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/list.tsx +237 -0
  180. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/show.tsx +74 -0
  181. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/AssignRolesModal.tsx +29 -20
  182. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/CreatePageModal.tsx +3 -3
  183. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/EditPageModal.tsx +7 -3
  184. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageDetailDrawer.tsx +58 -23
  185. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageFormModal.tsx +206 -122
  186. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/hooks/usePageManagement.ts +8 -4
  187. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/index.ts +1 -1
  188. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/list.tsx +345 -190
  189. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/types.ts +1 -1
  190. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/permissionReadme/index.tsx +341 -340
  191. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/CreateModal.tsx +2 -2
  192. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/EditModal.tsx +2 -2
  193. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/ResourceDetailDrawer.tsx +41 -24
  194. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/modal.tsx +64 -36
  195. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/index.ts +2 -2
  196. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/list.tsx +78 -40
  197. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/CreateModal.tsx +3 -3
  198. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/EditModal.tsx +4 -4
  199. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/RoleDetailDrawer.tsx +19 -9
  200. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/modal.tsx +45 -47
  201. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/hooks/useRolePage.ts +4 -4
  202. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/index.ts +1 -1
  203. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/list.tsx +121 -147
  204. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/types.ts +1 -1
  205. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/create-modal.tsx +2 -2
  206. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/edit-modal.tsx +2 -2
  207. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/form-modal.tsx +25 -19
  208. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/index.ts +5 -5
  209. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/role-tag.tsx +10 -10
  210. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/show-drawer.tsx +31 -26
  211. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/index.ts +1 -1
  212. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/list.tsx +76 -71
  213. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/setupTests.ts +1 -1
  214. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/audit-log.ts +1 -1
  215. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/index.ts +3 -3
  216. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/role.ts +1 -1
  217. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/types/user.ts +1 -1
  218. package/dist/lib/application/files/gadmin2-game-angle-demo/web/vite.config.ts +42 -25
  219. package/dist/lib/application/files/gadmin2-game-angle-demo/web/yarn.lock +1193 -32
  220. package/package.json +1 -1
  221. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/seedDataMngtPages.ts +0 -258
  222. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/AgentPanel.tsx +0 -497
  223. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/skills.ts +0 -464
@@ -0,0 +1,384 @@
1
+ import React, { useState, useCallback } from 'react';
2
+ import { Button, Tooltip, Popover } from 'antd';
3
+ import {
4
+ DownOutlined,
5
+ UpOutlined,
6
+ SaveOutlined,
7
+ ArrowLeftOutlined,
8
+ RocketOutlined,
9
+ AppstoreOutlined,
10
+ EyeOutlined,
11
+ } from '@ant-design/icons';
12
+ import ComponentThumbnail from './ComponentThumbnail';
13
+ import { CANVAS_COMPONENTS, CANVAS_DEFAULTS } from './canvasDefaults';
14
+ import { useTranslation } from 'react-i18next';
15
+ import { getComponentLabel, getVariantLabel } from './canvasI18n';
16
+
17
+ interface CanvasToolbarProps {
18
+ isDirty: boolean;
19
+ canvasName: string;
20
+ isPublished: boolean;
21
+ onSave: () => void;
22
+ onBack: () => void;
23
+ onPublish: () => void;
24
+ onUnpublish: () => void;
25
+ onPreview: () => void;
26
+ }
27
+
28
+ const CanvasToolbar: React.FC<CanvasToolbarProps> = ({
29
+ isDirty,
30
+ canvasName,
31
+ isPublished,
32
+ onSave,
33
+ onBack,
34
+ onPublish,
35
+ onUnpublish,
36
+ onPreview,
37
+ }) => {
38
+ const { t } = useTranslation();
39
+ const [expanded, setExpanded] = useState(false);
40
+ const [everExpanded, setEverExpanded] = useState(false);
41
+
42
+ const handleToggle = useCallback(() => {
43
+ setExpanded((prev) => {
44
+ if (!prev) setEverExpanded(true);
45
+ return !prev;
46
+ });
47
+ }, []);
48
+
49
+ const handleVariantDragStart = useCallback(
50
+ (e: React.DragEvent, componentType: string, variantCode: string) => {
51
+ e.dataTransfer.setData('componentType', componentType);
52
+ e.dataTransfer.setData('variantCode', variantCode);
53
+ e.dataTransfer.setData(
54
+ `x-component-type/${componentType.toLowerCase()}`,
55
+ '',
56
+ );
57
+ e.dataTransfer.effectAllowed = 'copy';
58
+ },
59
+ [],
60
+ );
61
+
62
+ return (
63
+ <div
64
+ style={{
65
+ background: '#fff',
66
+ borderBottom: '1px solid #eaeaea',
67
+ flexShrink: 0,
68
+ boxShadow: '0 1px 8px rgba(0,0,0,0.04)',
69
+ }}
70
+ >
71
+ {/* ── Header row ── */}
72
+ <div
73
+ style={{
74
+ height: 52,
75
+ padding: '0 24px',
76
+ display: 'flex',
77
+ alignItems: 'center',
78
+ }}
79
+ >
80
+ {/* 左侧: 返回 + 名称 */}
81
+ <div
82
+ style={{ flex: 1, display: 'flex', alignItems: 'center', gap: 14 }}
83
+ >
84
+ <Tooltip title={t('canvas.backToList')}>
85
+ <Button
86
+ size="small"
87
+ type="text"
88
+ icon={<ArrowLeftOutlined style={{ color: '#595959' }} />}
89
+ onClick={onBack}
90
+ style={{
91
+ borderRadius: '50%',
92
+ width: 32,
93
+ height: 32,
94
+ display: 'flex',
95
+ alignItems: 'center',
96
+ justifyContent: 'center',
97
+ }}
98
+ />
99
+ </Tooltip>
100
+ <span
101
+ style={{
102
+ fontWeight: 600,
103
+ fontSize: 15,
104
+ color: '#1a1a1a',
105
+ letterSpacing: '0.2px',
106
+ padding: '4px 10px',
107
+ }}
108
+ >
109
+ {canvasName}
110
+ </span>
111
+ </div>
112
+
113
+ {/* 中间: 组件库按钮 */}
114
+ <div
115
+ style={{
116
+ display: 'flex',
117
+ alignItems: 'center',
118
+ justifyContent: 'center',
119
+ }}
120
+ >
121
+ <Button
122
+ size="small"
123
+ icon={<AppstoreOutlined />}
124
+ onClick={handleToggle}
125
+ style={{
126
+ fontSize: 13,
127
+ fontWeight: 500,
128
+ borderRadius: 8,
129
+ border: 'none',
130
+ ...(expanded
131
+ ? {
132
+ background: '#4361ee',
133
+ color: '#fff',
134
+ boxShadow: '0 2px 8px rgba(67,97,238,0.3)',
135
+ }
136
+ : {
137
+ background: '#f0f1f5',
138
+ color: '#444',
139
+ }),
140
+ transition: 'all 200ms ease',
141
+ }}
142
+ >
143
+ {t('canvas.componentLib')}{' '}
144
+ {expanded ? <UpOutlined /> : <DownOutlined />}
145
+ </Button>
146
+ </div>
147
+
148
+ {/* 右侧: 保存 + 发布 */}
149
+ <div
150
+ style={{
151
+ flex: 1,
152
+ display: 'flex',
153
+ alignItems: 'center',
154
+ justifyContent: 'flex-end',
155
+ gap: 10,
156
+ }}
157
+ >
158
+ <Button
159
+ size="small"
160
+ icon={<SaveOutlined />}
161
+ onClick={onSave}
162
+ style={{
163
+ borderRadius: 8,
164
+ border: 'none',
165
+ fontWeight: 500,
166
+ ...(isDirty
167
+ ? {
168
+ background: '#4361ee',
169
+ color: '#fff',
170
+ boxShadow: '0 2px 8px rgba(67,97,238,0.3)',
171
+ }
172
+ : {
173
+ background: '#f0f1f5',
174
+ color: '#999',
175
+ }),
176
+ transition: 'all 200ms ease',
177
+ }}
178
+ >
179
+ {isDirty ? t('canvas.saveDirty') : t('canvas.save')}
180
+ </Button>
181
+ <Button
182
+ size="small"
183
+ icon={<EyeOutlined />}
184
+ onClick={onPreview}
185
+ style={{
186
+ borderRadius: 8,
187
+ border: '1px solid #e0e0e0',
188
+ background: 'transparent',
189
+ color: '#555',
190
+ fontWeight: 500,
191
+ transition: 'all 200ms ease',
192
+ }}
193
+ onMouseEnter={(e) => {
194
+ e.currentTarget.style.background = '#f7f7f8';
195
+ e.currentTarget.style.borderColor = '#ccc';
196
+ }}
197
+ onMouseLeave={(e) => {
198
+ e.currentTarget.style.background = 'transparent';
199
+ e.currentTarget.style.borderColor = '#e0e0e0';
200
+ }}
201
+ >
202
+ {t('canvas.preview')}
203
+ </Button>
204
+ <Button
205
+ size="small"
206
+ icon={<RocketOutlined />}
207
+ onClick={isPublished ? onUnpublish : onPublish}
208
+ danger={isPublished}
209
+ style={{
210
+ borderRadius: 8,
211
+ border: isPublished ? '1px solid #ff4d4f' : '1px solid #e0e0e0',
212
+ background: isPublished ? '#fff2f0' : 'transparent',
213
+ color: isPublished ? '#ff4d4f' : '#555',
214
+ fontWeight: 500,
215
+ transition: 'all 200ms ease',
216
+ }}
217
+ >
218
+ {isPublished ? t('canvas.unpublish') : t('canvas.publish')}
219
+ </Button>
220
+ </div>
221
+ </div>
222
+
223
+ {/* ── Thumbnail row (collapsible, lazy-mounted) ── */}
224
+ {everExpanded && (
225
+ <div
226
+ style={{
227
+ display: 'flex',
228
+ alignItems: 'center',
229
+ gap: 24,
230
+ padding: expanded ? '16px 24px 20px' : '0 24px',
231
+ overflowX: expanded ? 'auto' : 'hidden',
232
+ overflowY: 'hidden',
233
+ borderTop: expanded ? '1px solid #f0f0f0' : 'none',
234
+ maxHeight: expanded ? 280 : 0,
235
+ opacity: expanded ? 1 : 0,
236
+ transition:
237
+ 'max-height 250ms cubic-bezier(0.4, 0, 0.2, 1), opacity 200ms ease, padding 250ms cubic-bezier(0.4, 0, 0.2, 1)',
238
+ }}
239
+ >
240
+ {CANVAS_COMPONENTS.map((type) => {
241
+ const def = CANVAS_DEFAULTS[type];
242
+ const variants = def?.variants ?? [];
243
+
244
+ const popoverContent = (
245
+ <div
246
+ style={{
247
+ display: 'flex',
248
+ alignItems: 'center',
249
+ gap: 16,
250
+ padding: 4,
251
+ }}
252
+ >
253
+ {variants.map((v) => (
254
+ <div
255
+ key={v.name}
256
+ draggable
257
+ onDragStart={(e) => handleVariantDragStart(e, type, v.code)}
258
+ style={{
259
+ display: 'flex',
260
+ flexDirection: 'column',
261
+ alignItems: 'center',
262
+ gap: 6,
263
+ cursor: 'grab',
264
+ userSelect: 'none',
265
+ flexShrink: 0,
266
+ }}
267
+ >
268
+ <div
269
+ style={{
270
+ border: '1px solid #e8e8e8',
271
+ borderRadius: 8,
272
+ overflow: 'hidden',
273
+ background: '#fff',
274
+ transition: 'all 180ms ease',
275
+ }}
276
+ onMouseEnter={(e) => {
277
+ const el = e.currentTarget;
278
+ el.style.borderColor = '#4361ee';
279
+ el.style.boxShadow = '0 4px 12px rgba(67,97,238,0.15)';
280
+ el.style.transform = 'translateY(-3px) scale(1.02)';
281
+ }}
282
+ onMouseLeave={(e) => {
283
+ const el = e.currentTarget;
284
+ el.style.borderColor = '#e8e8e8';
285
+ el.style.boxShadow = 'none';
286
+ el.style.transform = 'translateY(0) scale(1)';
287
+ }}
288
+ >
289
+ <ComponentThumbnail
290
+ componentType={type}
291
+ code={v.code}
292
+ width={124}
293
+ />
294
+ </div>
295
+ <span
296
+ style={{
297
+ fontSize: 10,
298
+ color: '#666',
299
+ fontWeight: 500,
300
+ textAlign: 'center',
301
+ pointerEvents: 'none',
302
+ }}
303
+ >
304
+ {getVariantLabel(v.label, t)}
305
+ </span>
306
+ </div>
307
+ ))}
308
+ </div>
309
+ );
310
+
311
+ return (
312
+ <Popover
313
+ key={type}
314
+ content={popoverContent}
315
+ title={
316
+ <span
317
+ style={{ fontSize: 12, fontWeight: 600, color: '#333' }}
318
+ >
319
+ {getComponentLabel(type, t)}
320
+ </span>
321
+ }
322
+ trigger="hover"
323
+ placement="bottomLeft"
324
+ mouseEnterDelay={0.2}
325
+ mouseLeaveDelay={0.3}
326
+ >
327
+ <div
328
+ style={{
329
+ display: 'flex',
330
+ flexDirection: 'column',
331
+ alignItems: 'center',
332
+ gap: 8,
333
+ cursor: 'grab',
334
+ userSelect: 'none',
335
+ flexShrink: 0,
336
+ width: 140,
337
+ }}
338
+ >
339
+ <div
340
+ style={{
341
+ border: '1px solid #eaeaea',
342
+ borderRadius: 10,
343
+ overflow: 'hidden',
344
+ background: '#fff',
345
+ transition: 'all 200ms cubic-bezier(0.4, 0, 0.2, 1)',
346
+ }}
347
+ onMouseEnter={(e) => {
348
+ const el = e.currentTarget;
349
+ el.style.borderColor = '#4361ee';
350
+ el.style.boxShadow = '0 4px 16px rgba(67,97,238,0.12)';
351
+ el.style.transform = 'translateY(-3px) scale(1.03)';
352
+ }}
353
+ onMouseLeave={(e) => {
354
+ const el = e.currentTarget;
355
+ el.style.borderColor = '#eaeaea';
356
+ el.style.boxShadow = 'none';
357
+ el.style.transform = 'translateY(0) scale(1)';
358
+ }}
359
+ >
360
+ <ComponentThumbnail componentType={type} width={140} />
361
+ </div>
362
+ <span
363
+ style={{
364
+ fontSize: 11,
365
+ color: '#888',
366
+ fontWeight: 500,
367
+ letterSpacing: '0.3px',
368
+ textAlign: 'center',
369
+ pointerEvents: 'none',
370
+ }}
371
+ >
372
+ {getComponentLabel(type, t)}
373
+ </span>
374
+ </div>
375
+ </Popover>
376
+ );
377
+ })}
378
+ </div>
379
+ )}
380
+ </div>
381
+ );
382
+ };
383
+
384
+ export default CanvasToolbar;