@gadmin2n/schematics 0.0.71 → 0.0.74

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 (640) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.js +2 -0
  3. package/dist/lib/application/files/gadmin2-game-angle-demo/config/prisma/job.prisma +62 -0
  4. package/dist/lib/application/files/gadmin2-game-angle-demo/config/prisma/workflow.prisma +171 -0
  5. package/{src/lib/application/files/gadmin2-game-angle-demo/config/ui/ITActivityDay.ts → dist/lib/application/files/gadmin2-game-angle-demo/config/ui/AgendaJob.ts} +11 -21
  6. package/dist/lib/application/files/gadmin2-game-angle-demo/config/ui/Event.ts +1 -1
  7. package/{src/lib/application/files/gadmin2-game-angle-demo/config/ui/User.ts → dist/lib/application/files/gadmin2-game-angle-demo/config/ui/WorkflowEventOutbox.ts} +9 -17
  8. package/{src/lib/application/files/gadmin2-game-angle-demo/config/ui/Audit.ts → dist/lib/application/files/gadmin2-game-angle-demo/config/ui/WorkflowNodeInstance.ts} +4 -12
  9. package/{src/lib/application/files/gadmin2-game-angle-demo/config/ui/SavedQuery.ts → dist/lib/application/files/gadmin2-game-angle-demo/config/ui/WorkflowNodeType.ts} +4 -12
  10. package/dist/lib/application/files/gadmin2-game-angle-demo/server/.env +5 -0
  11. package/dist/lib/application/files/gadmin2-game-angle-demo/server/gadmin-cli.json +9 -1
  12. package/dist/lib/application/files/gadmin2-game-angle-demo/server/package-lock.json +15579 -0
  13. package/dist/lib/application/files/gadmin2-game-angle-demo/server/package.json +7 -4
  14. package/dist/lib/application/files/gadmin2-game-angle-demo/server/prisma.config.ts +14 -7
  15. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/index.ts +4 -0
  16. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/permissions.ts +60 -2
  17. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/workflow-node-types.ts +746 -0
  18. package/dist/lib/application/files/gadmin2-game-angle-demo/server/seed/workflows.ts +786 -0
  19. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/app.module.ts +2 -0
  20. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agenda/agenda.controller.ts +112 -0
  21. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agenda/agenda.module.ts +10 -0
  22. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agenda/agenda.service.ts +648 -0
  23. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agendaJob/agendaJob.controller.spec.ts +20 -0
  24. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agendaJob/agendaJob.controller.ts +145 -0
  25. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agendaJob/agendaJob.module.ts +10 -0
  26. package/{src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.service.spec.ts → dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agendaJob/agendaJob.service.spec.ts} +71 -65
  27. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/agendaJob/agendaJob.service.ts +83 -0
  28. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/index.ts +2 -1
  29. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/temporal.module.ts +9 -0
  30. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/temporal.service.ts +100 -0
  31. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow-execution.dto.ts +19 -0
  32. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow-export.dto.ts +43 -0
  33. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow-export.service.ts +317 -0
  34. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow-node-type.controller.ts +16 -0
  35. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow-node-type.service.ts +13 -0
  36. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow.controller.ts +220 -0
  37. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow.dto.ts +82 -0
  38. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow.module.ts +16 -0
  39. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflow/workflow.service.ts +505 -0
  40. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowEventOutbox/workflowEventOutbox.controller.spec.ts +22 -0
  41. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowEventOutbox/workflowEventOutbox.controller.ts +147 -0
  42. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowEventOutbox/workflowEventOutbox.module.ts +10 -0
  43. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowEventOutbox/workflowEventOutbox.service.spec.ts +356 -0
  44. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowEventOutbox/workflowEventOutbox.service.ts +110 -0
  45. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeInstance/workflowNodeInstance.controller.spec.ts +22 -0
  46. package/{src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.controller.ts → dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeInstance/workflowNodeInstance.controller.ts} +62 -42
  47. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeInstance/workflowNodeInstance.module.ts +10 -0
  48. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/{canvas/canvas.service.spec.ts → workflowNodeInstance/workflowNodeInstance.service.spec.ts} +98 -76
  49. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeInstance/workflowNodeInstance.service.ts +168 -0
  50. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeType/workflowNodeType.controller.spec.ts +22 -0
  51. package/{src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.controller.ts → dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeType/workflowNodeType.controller.ts} +44 -41
  52. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeType/workflowNodeType.module.ts +10 -0
  53. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeType/workflowNodeType.service.spec.ts +348 -0
  54. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/modules/workflowNodeType/workflowNodeType.service.ts +106 -0
  55. package/dist/lib/application/files/gadmin2-game-angle-demo/server/yarn.lock +191 -16
  56. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/README.md +278 -0
  57. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/config/development-sql.yaml +5 -0
  58. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/docker-compose.yml +25 -0
  59. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/package.json +13 -0
  60. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/sql/create-event-trigger.sql +87 -0
  61. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/.env +7 -0
  62. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/SANDBOX.md +122 -0
  63. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/package-lock.json +4285 -0
  64. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/package.json +28 -0
  65. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/__tests__/activities/code-execute.test.ts +44 -0
  66. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/__tests__/activities/http-request.test.ts +87 -0
  67. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/__tests__/helpers.test.ts +225 -0
  68. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/__tests__/node-type-consistency.test.ts +101 -0
  69. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/activities/code-execute.ts +51 -0
  70. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/activities/db-execute.ts +85 -0
  71. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/activities/db-query.ts +35 -0
  72. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/activities/http-request.ts +54 -0
  73. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/activities/index.ts +6 -0
  74. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/activities/reporting.ts +62 -0
  75. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/activities/send-notification.ts +47 -0
  76. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/config.ts +13 -0
  77. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/dsl/condition.ts +101 -0
  78. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/dsl/context.ts +58 -0
  79. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/dsl/graph.ts +184 -0
  80. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/dsl/helpers.ts +133 -0
  81. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/dsl/node-types.ts +57 -0
  82. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/dsl/types.ts +77 -0
  83. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/index.ts +36 -0
  84. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/outbox-poller.ts +226 -0
  85. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/src/workflows/dsl-workflow.ts +411 -0
  86. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/tsconfig.json +19 -0
  87. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/vitest.config.ts +8 -0
  88. package/dist/lib/application/files/gadmin2-game-angle-demo/temporal/worker/yarn.lock +1905 -0
  89. package/dist/lib/application/files/gadmin2-game-angle-demo/web/.env +1 -0
  90. package/dist/lib/application/files/gadmin2-game-angle-demo/web/package-lock.json +17555 -0
  91. package/dist/lib/application/files/gadmin2-game-angle-demo/web/package.json +5 -2
  92. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/App.tsx +1 -0
  93. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/inspectorActions.ts +130 -3
  94. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/sider.tsx +5 -1
  95. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/title.tsx +1 -1
  96. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/config/routeRegistry.tsx +78 -0
  97. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DevShell.tsx +146 -45
  98. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/SkillMenu.tsx +1 -1
  99. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/list.tsx +48 -2
  100. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/show.tsx +43 -2
  101. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/locales/en/common.json +15 -12
  102. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/locales/zh_CN/common.json +15 -12
  103. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/agenda/index.tsx +789 -0
  104. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/agenda/show.tsx +669 -0
  105. package/{src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game → dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/agendaJob}/create.tsx +13 -10
  106. package/{src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit → dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/agendaJob}/edit.tsx +13 -10
  107. package/{src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game → dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/agendaJob}/list.tsx +29 -21
  108. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/agendaJob/show.tsx +70 -0
  109. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasListPage.tsx +0 -1
  110. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasPage.tsx +169 -62
  111. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasToolbar.tsx +120 -148
  112. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CodeFloatWindow.tsx +74 -181
  113. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/ComponentThumbnail.tsx +3 -1
  114. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/LivePreview.tsx +15 -13
  115. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasConfigRegistry.tsx +2 -2
  116. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasContextMenuRegistry.tsx +349 -14
  117. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasDefaults.ts +18 -17
  118. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/BarChartDataSourceModal.tsx +10 -4
  119. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/LineChartDataSourceModal.tsx +10 -4
  120. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/{ChartViewerConfigModal.tsx → MultiChartConfigModal.tsx} +30 -18
  121. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/MultiChartDataSourceModal.tsx +427 -0
  122. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/NumCardDataSourceModal.tsx +10 -4
  123. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/PromptModal.tsx +6 -14
  124. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/RadarChartDataSourceModal.tsx +10 -4
  125. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/TableDataSourceModal.tsx +10 -4
  126. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/canvasModalProps.ts +24 -0
  127. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/demos.ts +45 -63
  128. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/CustomNode.tsx +99 -0
  129. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/ExportModal.tsx +87 -0
  130. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/FlowRenderer.tsx +322 -0
  131. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/ImportModal.tsx +175 -0
  132. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/NodeEditModal.tsx +60 -0
  133. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/NodePropertyPanel.tsx +1150 -0
  134. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/RunWorkflowModal.tsx +101 -0
  135. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/StatusCards.tsx +198 -0
  136. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/components/VersionPanel.tsx +81 -0
  137. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/editor.tsx +566 -0
  138. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/hooks/useWorkflowAgent.ts +224 -0
  139. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/index.tsx +524 -0
  140. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/instance-detail.tsx +343 -0
  141. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/instances.tsx +243 -0
  142. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/node-instances/components/CreateNodeInstanceModal.tsx +363 -0
  143. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/node-instances/components/DynamicConfigForm.tsx +154 -0
  144. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/node-instances/components/NodeInstanceForm.tsx +176 -0
  145. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/node-instances/create.tsx +77 -0
  146. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/node-instances/edit.tsx +112 -0
  147. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/node-instances/index.tsx +305 -0
  148. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/node-instances/show.tsx +282 -0
  149. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/show.tsx +469 -0
  150. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflow/types.ts +92 -0
  151. package/{src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit → dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflowEventOutbox}/create.tsx +18 -12
  152. package/{src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game → dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflowEventOutbox}/edit.tsx +18 -12
  153. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflowEventOutbox/list.tsx +254 -0
  154. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflowEventOutbox/show.tsx +74 -0
  155. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/vite-env.d.ts +12 -0
  156. package/dist/lib/application/files/gadmin2-game-angle-demo/web/yarn.lock +1501 -1199
  157. package/package.json +1 -1
  158. package/dist/lib/application/files/gadmin2-game-angle-demo/server/src/app.controller.spec.ts +0 -22
  159. package/dist/lib/application/files/gadmin2-game-angle-demo/web/.npmrc +0 -1
  160. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/BarChart/index.tsx +0 -896
  161. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartSwitcher/index.tsx +0 -219
  162. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartViewer/index.tsx +0 -159
  163. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Filter/index.tsx +0 -192
  164. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/LineChart/index.tsx +0 -1034
  165. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/NumCard.module.css +0 -8
  166. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/index.tsx +0 -509
  167. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumLineCard/index.tsx +0 -66
  168. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/PieChart/index.tsx +0 -552
  169. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/RadarChart/index.tsx +0 -263
  170. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Section/index.tsx +0 -35
  171. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Table/index.tsx +0 -207
  172. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/TreemapChart/index.tsx +0 -382
  173. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/WorldMap/index.tsx +0 -135
  174. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/chart-constants.ts +0 -53
  175. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/InfoIcon.tsx +0 -8
  176. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/index.ts +0 -1
  177. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/config.ts +0 -31
  178. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/nameMap.json +0 -9
  179. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/world.geo.json +0 -39349
  180. package/dist/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/metric-info-tooltip/index.tsx +0 -19
  181. package/src/lib/application/application.schema.d.ts +0 -59
  182. package/src/lib/application/files/gadmin2-game-angle-demo/.dockerignore +0 -33
  183. package/src/lib/application/files/gadmin2-game-angle-demo/.gitignore +0 -46
  184. package/src/lib/application/files/gadmin2-game-angle-demo/.husky/_/.gitignore +0 -1
  185. package/src/lib/application/files/gadmin2-game-angle-demo/.husky/_/husky.sh +0 -36
  186. package/src/lib/application/files/gadmin2-game-angle-demo/.husky/pre-commit +0 -10
  187. package/src/lib/application/files/gadmin2-game-angle-demo/Dockerfile +0 -63
  188. package/src/lib/application/files/gadmin2-game-angle-demo/Jenkinsfile +0 -70
  189. package/src/lib/application/files/gadmin2-game-angle-demo/config/.types.d.ts +0 -143
  190. package/src/lib/application/files/gadmin2-game-angle-demo/config/prisma/canvas.prisma +0 -45
  191. package/src/lib/application/files/gadmin2-game-angle-demo/config/prisma/example.prisma +0 -34
  192. package/src/lib/application/files/gadmin2-game-angle-demo/config/prisma/system.prisma +0 -173
  193. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Event.ts +0 -70
  194. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Game.ts +0 -58
  195. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Log.ts +0 -56
  196. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Page.ts +0 -70
  197. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/PageResource.ts +0 -70
  198. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Resource.ts +0 -70
  199. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/Role.ts +0 -58
  200. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/RolePages.ts +0 -70
  201. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/RoleResource.ts +0 -70
  202. package/src/lib/application/files/gadmin2-game-angle-demo/config/ui/_common.ts +0 -16
  203. package/src/lib/application/files/gadmin2-game-angle-demo/readme.md +0 -142
  204. package/src/lib/application/files/gadmin2-game-angle-demo/server/.env +0 -31
  205. package/src/lib/application/files/gadmin2-game-angle-demo/server/.env.local +0 -1
  206. package/src/lib/application/files/gadmin2-game-angle-demo/server/.eslintrc.js +0 -28
  207. package/src/lib/application/files/gadmin2-game-angle-demo/server/.prettierignore +0 -7
  208. package/src/lib/application/files/gadmin2-game-angle-demo/server/.prettierrc +0 -4
  209. package/src/lib/application/files/gadmin2-game-angle-demo/server/README.md +0 -55
  210. package/src/lib/application/files/gadmin2-game-angle-demo/server/config/ac.config.ts +0 -24
  211. package/src/lib/application/files/gadmin2-game-angle-demo/server/config/index.ts +0 -58
  212. package/src/lib/application/files/gadmin2-game-angle-demo/server/gadmin-cli.json +0 -25
  213. package/src/lib/application/files/gadmin2-game-angle-demo/server/migrate-between-pg-schemas.js +0 -1232
  214. package/src/lib/application/files/gadmin2-game-angle-demo/server/package.json +0 -143
  215. package/src/lib/application/files/gadmin2-game-angle-demo/server/prisma/.generator.prisma +0 -34
  216. package/src/lib/application/files/gadmin2-game-angle-demo/server/prisma.config.ts +0 -16
  217. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/lib/page-helpers.ts +0 -157
  218. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/page-manage.ts +0 -290
  219. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/permission-manage.ts +0 -184
  220. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/prismaModels.ts +0 -143
  221. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/sync-resources.ts +0 -100
  222. package/src/lib/application/files/gadmin2-game-angle-demo/server/scripts/syncDataMngtPages.ts +0 -119
  223. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/games.ts +0 -1
  224. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/index.ts +0 -21
  225. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/permissions.ts +0 -244
  226. package/src/lib/application/files/gadmin2-game-angle-demo/server/seed/users.ts +0 -7
  227. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/alias.config.ts +0 -7
  228. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.controller.spec.ts +0 -22
  229. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.controller.ts +0 -192
  230. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.module.ts +0 -91
  231. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/app.service.ts +0 -189
  232. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/auth.guard.ts +0 -154
  233. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/http-cache.interceptor.ts +0 -21
  234. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/logger.ts +0 -19
  235. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/roles.guard.ts +0 -47
  236. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/safe-log.util.ts +0 -176
  237. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/taihu.ts +0 -175
  238. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/tracing.ts +0 -174
  239. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/trim.pipe.ts +0 -51
  240. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/utils.ts +0 -145
  241. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/lib/woaAuth.ts +0 -95
  242. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/main.ts +0 -132
  243. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.controller.spec.ts +0 -20
  244. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.controller.ts +0 -190
  245. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.module.ts +0 -10
  246. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.service.spec.ts +0 -338
  247. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/audit/audit.service.ts +0 -83
  248. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.controller.spec.ts +0 -20
  249. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.controller.ts +0 -81
  250. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.dto.ts +0 -49
  251. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.module.ts +0 -11
  252. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/canvas/canvas.service.ts +0 -249
  253. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.controller.spec.ts +0 -20
  254. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.controller.ts +0 -188
  255. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.module.ts +0 -10
  256. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.service.spec.ts +0 -18
  257. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/game/game.service.ts +0 -83
  258. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/index.ts +0 -4
  259. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.controller.spec.ts +0 -20
  260. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.controller.ts +0 -250
  261. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.module.ts +0 -10
  262. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.service.spec.ts +0 -18
  263. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/page/page.service.ts +0 -1051
  264. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.controller.spec.ts +0 -20
  265. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.module.ts +0 -13
  266. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.service.spec.ts +0 -18
  267. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/pageResource/pageResource.service.ts +0 -219
  268. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.controller.spec.ts +0 -20
  269. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.controller.ts +0 -196
  270. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.module.ts +0 -10
  271. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.service.spec.ts +0 -18
  272. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/resource/resource.service.ts +0 -199
  273. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.controller.spec.ts +0 -20
  274. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.controller.ts +0 -210
  275. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.module.ts +0 -12
  276. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.service.spec.ts +0 -18
  277. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/role.service.ts +0 -862
  278. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/role/roles-refresher.service.ts +0 -133
  279. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.controller.spec.ts +0 -20
  280. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.controller.ts +0 -196
  281. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.module.ts +0 -10
  282. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.service.spec.ts +0 -18
  283. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/rolePages/rolePages.service.ts +0 -201
  284. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.controller.spec.ts +0 -20
  285. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.module.ts +0 -10
  286. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.service.spec.ts +0 -18
  287. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/roleResource/roleResource.service.ts +0 -216
  288. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.controller.spec.ts +0 -20
  289. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.controller.ts +0 -198
  290. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.module.ts +0 -10
  291. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.service.spec.ts +0 -18
  292. package/src/lib/application/files/gadmin2-game-angle-demo/server/src/modules/user/user.service.ts +0 -104
  293. package/src/lib/application/files/gadmin2-game-angle-demo/server/start-prod.sh +0 -130
  294. package/src/lib/application/files/gadmin2-game-angle-demo/server/test/app.e2e-spec.ts +0 -24
  295. package/src/lib/application/files/gadmin2-game-angle-demo/server/test/jest-e2e.json +0 -9
  296. package/src/lib/application/files/gadmin2-game-angle-demo/server/tsconfig.build.json +0 -4
  297. package/src/lib/application/files/gadmin2-game-angle-demo/server/tsconfig.json +0 -36
  298. package/src/lib/application/files/gadmin2-game-angle-demo/server/yarn.lock +0 -7737
  299. package/src/lib/application/files/gadmin2-game-angle-demo/web/.env +0 -2
  300. package/src/lib/application/files/gadmin2-game-angle-demo/web/.eslintrc.json +0 -38
  301. package/src/lib/application/files/gadmin2-game-angle-demo/web/.npmrc +0 -1
  302. package/src/lib/application/files/gadmin2-game-angle-demo/web/.prettierignore +0 -2
  303. package/src/lib/application/files/gadmin2-game-angle-demo/web/.prettierrc +0 -4
  304. package/src/lib/application/files/gadmin2-game-angle-demo/web/README.MD +0 -48
  305. package/src/lib/application/files/gadmin2-game-angle-demo/web/dev-shell-entry.html +0 -49
  306. package/src/lib/application/files/gadmin2-game-angle-demo/web/index.html +0 -19
  307. package/src/lib/application/files/gadmin2-game-angle-demo/web/package.json +0 -92
  308. package/src/lib/application/files/gadmin2-game-angle-demo/web/postcss.config.cjs +0 -6
  309. package/src/lib/application/files/gadmin2-game-angle-demo/web/public/favicon.ico +0 -0
  310. package/src/lib/application/files/gadmin2-game-angle-demo/web/public/images/flags/en.svg +0 -1
  311. package/src/lib/application/files/gadmin2-game-angle-demo/web/public/images/flags/zh_CN.svg +0 -11
  312. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/App.tsx +0 -137
  313. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/auditLogProvider.ts +0 -89
  314. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/authProvider.ts +0 -144
  315. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/BulkActions.tsx +0 -287
  316. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/ListPageHeader.tsx +0 -56
  317. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/RowActions.tsx +0 -318
  318. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/SearchBar.tsx +0 -323
  319. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/SqlModal.tsx +0 -495
  320. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/VanillaJSONEditor/index.css +0 -10
  321. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/VanillaJSONEditor/index.jsx +0 -53
  322. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/AgentContext.tsx +0 -375
  323. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/ElementInspector.tsx +0 -1133
  324. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/agentAttributes.ts +0 -70
  325. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/index.ts +0 -8
  326. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/inspectorActions.ts +0 -1034
  327. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/pagePathUtils.ts +0 -66
  328. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/promptGenerator.ts +0 -135
  329. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/agentPanel/propPatcher.ts +0 -84
  330. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/eventList/index.tsx +0 -58
  331. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/index.ts +0 -4
  332. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logButton/index.tsx +0 -96
  333. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/logList/index.tsx +0 -72
  334. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/components/modalDiffViewer/index.tsx +0 -104
  335. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/auditLog/index.tsx +0 -2
  336. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/BarChart/index.tsx +0 -896
  337. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartSwitcher/index.tsx +0 -219
  338. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/ChartViewer/index.tsx +0 -159
  339. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Filter/index.tsx +0 -192
  340. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/LineChart/index.tsx +0 -1034
  341. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/NumCard.module.css +0 -8
  342. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumCard/index.tsx +0 -509
  343. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/NumLineCard/index.tsx +0 -66
  344. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/PieChart/index.tsx +0 -552
  345. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/RadarChart/index.tsx +0 -263
  346. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Section/index.tsx +0 -35
  347. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/Table/index.tsx +0 -207
  348. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/TreemapChart/index.tsx +0 -382
  349. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/WorldMap/index.tsx +0 -135
  350. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/chart-constants.ts +0 -53
  351. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/InfoIcon.tsx +0 -8
  352. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/icon/index.ts +0 -1
  353. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/config.ts +0 -31
  354. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/nameMap.json +0 -9
  355. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/map/world.geo.json +0 -39349
  356. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/canvas/metric-info-tooltip/index.tsx +0 -19
  357. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/business/index.tsx +0 -65
  358. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/contexts/color-mode/index.tsx +0 -54
  359. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/custom-avatar.tsx +0 -42
  360. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/index.ts +0 -8
  361. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/header.tsx +0 -106
  362. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/index.ts +0 -4
  363. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/layout.tsx +0 -32
  364. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/logo.tsx +0 -19
  365. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/sider.tsx +0 -431
  366. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/layout/title.tsx +0 -61
  367. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/offLayoutArea/index.tsx +0 -5
  368. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/pagination-total.tsx +0 -21
  369. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/index.ts +0 -1
  370. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/tags/role-tag.tsx +0 -44
  371. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/components/text.tsx +0 -78
  372. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/config/http.ts +0 -49
  373. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/config/routeRegistry.tsx +0 -428
  374. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/constants/layout.ts +0 -16
  375. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddDataModal.tsx +0 -199
  376. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/AddPageModal.tsx +0 -335
  377. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DeleteDataConfirm.tsx +0 -56
  378. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/DevShell.tsx +0 -401
  379. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/EditDataModal.tsx +0 -129
  380. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/SkillMenu.tsx +0 -202
  381. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/UndoConfirm.tsx +0 -36
  382. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/index.tsx +0 -8
  383. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/dev-shell/style.css +0 -835
  384. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/enums/audit-log.enum.ts +0 -13
  385. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/enums/index.ts +0 -1
  386. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/form.tsx +0 -471
  387. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-name-initials.ts +0 -8
  388. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/get-random-color.ts +0 -27
  389. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/http.ts +0 -84
  390. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/index.tsx +0 -8
  391. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/list.tsx +0 -491
  392. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/login.ts +0 -82
  393. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/page-tree.ts +0 -74
  394. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/show.tsx +0 -226
  395. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/helpers/utils.tsx +0 -9
  396. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/index.ts +0 -7
  397. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/types.ts +0 -138
  398. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchDelete.ts +0 -191
  399. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperations.ts +0 -153
  400. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchOperationsCore.ts +0 -193
  401. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useBatchUpdate.ts +0 -182
  402. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useDynamicResources.tsx +0 -220
  403. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useECharts.tsx +0 -144
  404. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useFetchData.ts +0 -33
  405. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useListPageState.ts +0 -303
  406. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRoles.ts +0 -34
  407. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useRowSelection.ts +0 -38
  408. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/hooks/useUserPageAccess.ts +0 -353
  409. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/i18n.ts +0 -23
  410. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/index.tsx +0 -27
  411. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/locales/en/common.json +0 -321
  412. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/locales/zh_CN/common.json +0 -324
  413. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/meta.json +0 -4
  414. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/plugins/devShellPlugin.ts +0 -81
  415. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/components/action-cell.css +0 -3
  416. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/components/action-cell.tsx +0 -134
  417. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/index.ts +0 -8
  418. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/list.tsx +0 -220
  419. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit/show.tsx +0 -74
  420. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasCell.tsx +0 -87
  421. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasEditPage.tsx +0 -192
  422. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasListPage.tsx +0 -409
  423. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasPage.tsx +0 -1372
  424. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CanvasToolbar.tsx +0 -384
  425. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/CodeFloatWindow.tsx +0 -476
  426. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/ComponentThumbnail.tsx +0 -137
  427. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/IsolatedLivePreview.tsx +0 -101
  428. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/LivePreview.tsx +0 -236
  429. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/PublishModal.tsx +0 -200
  430. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasApi.ts +0 -92
  431. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasConfigRegistry.tsx +0 -25
  432. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasContextMenuRegistry.tsx +0 -875
  433. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasDefaults.ts +0 -126
  434. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/canvasI18n.ts +0 -11
  435. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/BarChartDataSourceModal.tsx +0 -115
  436. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/ChartViewerConfigModal.tsx +0 -217
  437. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/LineChartDataSourceModal.tsx +0 -153
  438. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/NumCardDataSourceModal.tsx +0 -211
  439. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/PromptModal.tsx +0 -90
  440. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/RadarChartDataSourceModal.tsx +0 -87
  441. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/components/TableDataSourceModal.tsx +0 -204
  442. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/demos.ts +0 -1153
  443. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/index.tsx +0 -2
  444. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/sectionCompactor.ts +0 -45
  445. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas/types.ts +0 -45
  446. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/canvas-page/index.tsx +0 -108
  447. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game/show.tsx +0 -74
  448. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/AssignRolesModal.tsx +0 -177
  449. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/CreatePageModal.tsx +0 -42
  450. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/EditPageModal.tsx +0 -46
  451. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageDetailDrawer.tsx +0 -136
  452. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/Components/PageFormModal.tsx +0 -815
  453. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/hooks/usePageManagement.ts +0 -40
  454. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/index.ts +0 -1
  455. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/list.tsx +0 -1370
  456. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/queries.ts +0 -17
  457. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/page/types.ts +0 -45
  458. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/permissionReadme/index.tsx +0 -1090
  459. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/CreateModal.tsx +0 -25
  460. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/EditModal.tsx +0 -28
  461. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/ResourceDetailDrawer.tsx +0 -177
  462. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/Components/modal.tsx +0 -230
  463. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/index.ts +0 -2
  464. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/list.tsx +0 -250
  465. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/queries.ts +0 -10
  466. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/resource/types.ts +0 -9
  467. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/CreateModal.tsx +0 -30
  468. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/EditModal.tsx +0 -47
  469. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/RoleDetailDrawer.tsx +0 -66
  470. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/Components/modal.tsx +0 -300
  471. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/hooks/useRolePage.ts +0 -35
  472. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/index.ts +0 -1
  473. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/list.tsx +0 -405
  474. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/queries.ts +0 -8
  475. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/role/types.ts +0 -8
  476. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/create-modal.tsx +0 -17
  477. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/edit-modal.tsx +0 -19
  478. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/form-modal.tsx +0 -194
  479. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/index.ts +0 -5
  480. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/role-tag.tsx +0 -48
  481. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/components/show-drawer.tsx +0 -145
  482. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/index.ts +0 -1
  483. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/list.tsx +0 -377
  484. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/user/queries.ts +0 -14
  485. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/setupTests.ts +0 -5
  486. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/antd.css +0 -132
  487. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/fc.css +0 -58
  488. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/index.css +0 -128
  489. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/show-drawer.module.css +0 -18
  490. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/styles/show-page.module.css +0 -21
  491. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/audit-log.ts +0 -1
  492. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/index.ts +0 -3
  493. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/role.ts +0 -7
  494. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/types/user.ts +0 -1
  495. package/src/lib/application/files/gadmin2-game-angle-demo/web/src/vite-env.d.ts +0 -13
  496. package/src/lib/application/files/gadmin2-game-angle-demo/web/tsconfig.json +0 -28
  497. package/src/lib/application/files/gadmin2-game-angle-demo/web/vite.config.ts +0 -48
  498. package/src/lib/application/files/gadmin2-game-angle-demo/web/yarn.lock +0 -9482
  499. package/src/lib/class/class.schema.d.ts +0 -32
  500. package/src/lib/class/files/js/__name__.js +0 -1
  501. package/src/lib/class/files/js/__name__.spec.js +0 -7
  502. package/src/lib/class/files/ts/__name__.spec.ts +0 -7
  503. package/src/lib/class/files/ts/__name__.ts +0 -1
  504. package/src/lib/client-app/angular/angular.schema.d.ts +0 -32
  505. package/src/lib/client-app/angular/files/angular.constants.ts +0 -4
  506. package/src/lib/client-app/angular/files/angular.module.ts +0 -41
  507. package/src/lib/client-app/angular/files/angular.providers.ts +0 -27
  508. package/src/lib/client-app/angular/files/angular.utils.ts +0 -19
  509. package/src/lib/client-app/angular/files/interfaces/angular-options.interface.ts +0 -87
  510. package/src/lib/client-app/angular/files/loaders/abstract.loader.ts +0 -16
  511. package/src/lib/client-app/angular/files/loaders/express.loader.ts +0 -25
  512. package/src/lib/client-app/angular/files/loaders/fastify.loader.ts +0 -34
  513. package/src/lib/client-app/angular/files/loaders/noop.loader.ts +0 -12
  514. package/src/lib/configuration/configuration.schema.d.ts +0 -18
  515. package/src/lib/configuration/files/js/nest-cli.json +0 -6
  516. package/src/lib/configuration/files/ts/nest-cli.json +0 -5
  517. package/src/lib/controller/controller.schema.d.ts +0 -45
  518. package/src/lib/controller/files/js/__name__.controller.js +0 -4
  519. package/src/lib/controller/files/js/__name__.controller.spec.js +0 -18
  520. package/src/lib/controller/files/ts/__name__.controller.spec.ts +0 -18
  521. package/src/lib/controller/files/ts/__name__.controller.ts +0 -137
  522. package/src/lib/decorator/decorator.schema.d.ts +0 -24
  523. package/src/lib/decorator/files/js/__name__.decorator.js +0 -3
  524. package/src/lib/decorator/files/ts/__name__.decorator.ts +0 -3
  525. package/src/lib/filter/files/js/__name__.filter.js +0 -6
  526. package/src/lib/filter/files/js/__name__.filter.spec.js +0 -7
  527. package/src/lib/filter/files/ts/__name__.filter.spec.ts +0 -7
  528. package/src/lib/filter/files/ts/__name__.filter.ts +0 -6
  529. package/src/lib/filter/filter.schema.d.ts +0 -28
  530. package/src/lib/gateway/files/js/__name__.gateway.js +0 -9
  531. package/src/lib/gateway/files/js/__name__.gateway.spec.js +0 -18
  532. package/src/lib/gateway/files/ts/__name__.gateway.spec.ts +0 -18
  533. package/src/lib/gateway/files/ts/__name__.gateway.ts +0 -9
  534. package/src/lib/gateway/gateway.schema.d.ts +0 -36
  535. package/src/lib/guard/files/js/__name__.guard.js +0 -8
  536. package/src/lib/guard/files/js/__name__.guard.spec.js +0 -7
  537. package/src/lib/guard/files/ts/__name__.guard.spec.ts +0 -7
  538. package/src/lib/guard/files/ts/__name__.guard.ts +0 -11
  539. package/src/lib/guard/guard.schema.d.ts +0 -28
  540. package/src/lib/interceptor/files/js/__name__.interceptor.js +0 -8
  541. package/src/lib/interceptor/files/js/__name__.interceptor.spec.js +0 -7
  542. package/src/lib/interceptor/files/ts/default/__name__.interceptor.spec.ts +0 -7
  543. package/src/lib/interceptor/files/ts/default/__name__.interceptor.ts +0 -9
  544. package/src/lib/interceptor/files/ts/generated/__name__.interceptor.spec.ts +0 -7
  545. package/src/lib/interceptor/files/ts/generated/__name__.interceptor.ts +0 -13
  546. package/src/lib/interceptor/interceptor.schema.d.ts +0 -35
  547. package/src/lib/interface/files/__name__.interface.ts +0 -1
  548. package/src/lib/interface/interface.schema.d.ts +0 -20
  549. package/src/lib/library/files/js/.babelrc +0 -4
  550. package/src/lib/library/files/js/jsconfig.json +0 -9
  551. package/src/lib/library/files/js/src/__name__.module.js +0 -8
  552. package/src/lib/library/files/js/src/__name__.service.js +0 -4
  553. package/src/lib/library/files/js/src/__name__.service.spec.js +0 -18
  554. package/src/lib/library/files/js/src/index.js +0 -2
  555. package/src/lib/library/files/ts/src/__name__.module.ts +0 -8
  556. package/src/lib/library/files/ts/src/__name__.service.spec.ts +0 -18
  557. package/src/lib/library/files/ts/src/__name__.service.ts +0 -4
  558. package/src/lib/library/files/ts/src/index.ts +0 -2
  559. package/src/lib/library/files/ts/tsconfig.lib.json +0 -9
  560. package/src/lib/library/library.schema.d.ts +0 -24
  561. package/src/lib/middleware/files/js/__name__.middleware.js +0 -8
  562. package/src/lib/middleware/files/js/__name__.middleware.spec.js +0 -7
  563. package/src/lib/middleware/files/ts/__name__.middleware.spec.ts +0 -7
  564. package/src/lib/middleware/files/ts/__name__.middleware.ts +0 -8
  565. package/src/lib/middleware/middleware.schema.d.ts +0 -28
  566. package/src/lib/module/files/js/__name__.module.js +0 -4
  567. package/src/lib/module/files/ts/__name__.module.ts +0 -4
  568. package/src/lib/module/module.schema.d.ts +0 -40
  569. package/src/lib/pipe/files/js/__name__.pipe.js +0 -8
  570. package/src/lib/pipe/files/js/__name__.pipe.spec.js +0 -7
  571. package/src/lib/pipe/files/ts/__name__.pipe.spec.ts +0 -7
  572. package/src/lib/pipe/files/ts/__name__.pipe.ts +0 -8
  573. package/src/lib/pipe/pipe.schema.d.ts +0 -28
  574. package/src/lib/prisma-resource/files/ts/__name__.controller.spec.ts +0 -20
  575. package/src/lib/prisma-resource/files/ts/__name__.controller.ts +0 -63
  576. package/src/lib/prisma-resource/files/ts/__name__.module.ts +0 -9
  577. package/src/lib/prisma-resource/files/ts/__name__.service.spec.ts +0 -18
  578. package/src/lib/prisma-resource/files/ts/__name__.service.ts +0 -28
  579. package/src/lib/prisma-resource/files/ts/dto/create-__name@singular__.dto.ts +0 -1
  580. package/src/lib/prisma-resource/files/ts/dto/create-__name@singular__.input.ts +0 -7
  581. package/src/lib/prisma-resource/files/ts/dto/update-__name@singular__.dto.ts +0 -6
  582. package/src/lib/prisma-resource/files/ts/dto/update-__name@singular__.input.ts +0 -13
  583. package/src/lib/prisma-resource/files/ts/entities/__name@singular@ent__.ts +0 -7
  584. package/src/lib/prisma-resource/prisma-resource.schema.d.ts +0 -57
  585. package/src/lib/provider/files/js/__name__.js +0 -4
  586. package/src/lib/provider/files/js/__name__.spec.js +0 -18
  587. package/src/lib/provider/files/ts/__name__.spec.ts +0 -18
  588. package/src/lib/provider/files/ts/__name__.ts +0 -4
  589. package/src/lib/provider/provider.schema.d.ts +0 -48
  590. package/src/lib/resolver/files/js/__name__.resolver.js +0 -4
  591. package/src/lib/resolver/files/js/__name__.resolver.spec.js +0 -18
  592. package/src/lib/resolver/files/ts/__name__.resolver.spec.ts +0 -18
  593. package/src/lib/resolver/files/ts/__name__.resolver.ts +0 -4
  594. package/src/lib/resolver/resolver.schema.d.ts +0 -36
  595. package/src/lib/resource/files/ts/__name__.controller.spec.ts +0 -20
  596. package/src/lib/resource/files/ts/__name__.controller.ts +0 -63
  597. package/src/lib/resource/files/ts/__name__.gateway.spec.ts +0 -19
  598. package/src/lib/resource/files/ts/__name__.gateway.ts +0 -34
  599. package/src/lib/resource/files/ts/__name__.graphql +0 -24
  600. package/src/lib/resource/files/ts/__name__.module.ts +0 -9
  601. package/src/lib/resource/files/ts/__name__.resolver.spec.ts +0 -19
  602. package/src/lib/resource/files/ts/__name__.resolver.ts +0 -60
  603. package/src/lib/resource/files/ts/__name__.service.spec.ts +0 -18
  604. package/src/lib/resource/files/ts/__name__.service.ts +0 -28
  605. package/src/lib/resource/files/ts/dto/create-__name@singular__.dto.ts +0 -1
  606. package/src/lib/resource/files/ts/dto/create-__name@singular__.input.ts +0 -7
  607. package/src/lib/resource/files/ts/dto/update-__name@singular__.dto.ts +0 -6
  608. package/src/lib/resource/files/ts/dto/update-__name@singular__.input.ts +0 -13
  609. package/src/lib/resource/files/ts/entities/__name@singular@ent__.ts +0 -7
  610. package/src/lib/resource/resource.schema.d.ts +0 -57
  611. package/src/lib/service/files/js/__name__.service.js +0 -4
  612. package/src/lib/service/files/js/__name__.service.spec.js +0 -18
  613. package/src/lib/service/files/ts/__name__.service.spec.ts +0 -18
  614. package/src/lib/service/files/ts/__name__.service.ts +0 -4
  615. package/src/lib/service/service.schema.d.ts +0 -44
  616. package/src/lib/sub-app/files/js/.babelrc +0 -4
  617. package/src/lib/sub-app/files/js/index.js +0 -2
  618. package/src/lib/sub-app/files/js/jsconfig.json +0 -10
  619. package/src/lib/sub-app/files/js/src/app.controller.js +0 -15
  620. package/src/lib/sub-app/files/js/src/app.controller.spec.js +0 -22
  621. package/src/lib/sub-app/files/js/src/app.module.js +0 -10
  622. package/src/lib/sub-app/files/js/src/app.service.js +0 -8
  623. package/src/lib/sub-app/files/js/src/main.js +0 -8
  624. package/src/lib/sub-app/files/js/test/app.e2e-spec.js +0 -23
  625. package/src/lib/sub-app/files/js/test/jest-e2e.json +0 -5
  626. package/src/lib/sub-app/files/ts/src/__name__.controller.spec.ts +0 -22
  627. package/src/lib/sub-app/files/ts/src/__name__.controller.ts +0 -12
  628. package/src/lib/sub-app/files/ts/src/__name__.module.ts +0 -10
  629. package/src/lib/sub-app/files/ts/src/__name__.service.ts +0 -8
  630. package/src/lib/sub-app/files/ts/src/main.ts +0 -8
  631. package/src/lib/sub-app/files/ts/test/app.e2e-spec.ts +0 -24
  632. package/src/lib/sub-app/files/ts/test/jest-e2e.json +0 -9
  633. package/src/lib/sub-app/files/ts/tsconfig.app.json +0 -9
  634. package/src/lib/sub-app/sub-app.schema.d.ts +0 -21
  635. package/src/lib/sub-app/workspace/js/.babelrc +0 -4
  636. package/src/lib/sub-app/workspace/js/index.js +0 -2
  637. package/src/lib/sub-app/workspace/js/jsconfig.json +0 -10
  638. package/src/lib/sub-app/workspace/ts/tsconfig.app.json +0 -9
  639. /package/{src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/audit → dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/agendaJob}/index.tsx +0 -0
  640. /package/{src/lib/application/files/gadmin2-game-angle-demo/web/src/routes/game → dist/lib/application/files/gadmin2-game-angle-demo/web/src/routes/workflowEventOutbox}/index.tsx +0 -0
@@ -1,1090 +0,0 @@
1
- import { Alert, Card, Collapse, Divider, Table, Tabs, Typography } from 'antd';
2
-
3
- const { Title, Paragraph, Text } = Typography;
4
-
5
- // ─── 核心概念 ────────────────────────────────────────────────────────────────
6
-
7
- const coreConceptColumns = [
8
- { title: '概念', dataIndex: 'concept', key: 'concept', width: 160 },
9
- { title: '数据库表', dataIndex: 'table', key: 'table', width: 140 },
10
- { title: '说明', dataIndex: 'description', key: 'description' },
11
- ];
12
-
13
- const coreConceptData = [
14
- {
15
- key: 'page',
16
- concept: 'Page(页面/菜单)',
17
- table: 't_page',
18
- description:
19
- '定义系统中的所有菜单项,支持树形结构(parentId)。每个 Page 有唯一的 code,对应前端路由注册表中的 key。',
20
- },
21
- {
22
- key: 'resource',
23
- concept: 'Resource(资源)',
24
- table: 't_resource',
25
- description:
26
- '定义后端 API 资源,每个资源对应一组 CRUD 权限(readAny, createAny, updateAny, deleteAny)。',
27
- },
28
- {
29
- key: 'role',
30
- concept: 'Role(角色)',
31
- table: 't_role',
32
- description:
33
- '角色是权限分配的基本单位。一个用户拥有一个角色,角色决定了可见菜单和 API 权限。',
34
- },
35
- {
36
- key: 'role_pages',
37
- concept: 'RolePages(角色-页面)',
38
- table: 't_role_pages',
39
- description: '角色与页面的关联表,决定角色可以看到哪些菜单项。',
40
- },
41
- {
42
- key: 'role_resource',
43
- concept: 'RoleResource(角色-资源)',
44
- table: 't_role_resource',
45
- description:
46
- '角色与资源的关联表,定义角色对每个资源的具体权限(读/写/改/删)。',
47
- },
48
- {
49
- key: 'page_resource',
50
- concept: 'PageResource(页面-资源)',
51
- table: 't_page_resource',
52
- description:
53
- '页面与资源的关联表,记录每个页面需要哪些 API 资源。用于批量为角色分配权限。',
54
- },
55
- ];
56
-
57
- // ─── t_page 字段说明 ─────────────────────────────────────────────────────────
58
-
59
- const pageFieldColumns = [
60
- { title: '字段', dataIndex: 'field', key: 'field', width: 180 },
61
- { title: '说明', dataIndex: 'description', key: 'description' },
62
- { title: '示例', dataIndex: 'example', key: 'example', width: 260 },
63
- ];
64
-
65
- const pageFieldData = [
66
- {
67
- key: 'code',
68
- field: 'code',
69
- description: '页面唯一标识,原生页面必须与 routeRegistry 的 key 一致',
70
- example: 'software_dashboard',
71
- },
72
- {
73
- key: 'zhName',
74
- field: 'zhName / enName',
75
- description: '菜单显示的中英文名称',
76
- example: '软件看板 / Software Dashboard',
77
- },
78
- {
79
- key: 'path',
80
- field: 'path',
81
- description:
82
- 'URL 完整路径。原生页面会被 routeRegistry 覆盖,iframe/外部链接页面以此作为菜单跳转路径',
83
- example: '/office/software-dashboard',
84
- },
85
- {
86
- key: 'parentId',
87
- field: 'parentId',
88
- description: '父菜单 ID,用于构建树形菜单结构',
89
- example: 'office 页面的 ID',
90
- },
91
- {
92
- key: 'sortOrder',
93
- field: 'sortOrder',
94
- description: '同级菜单的排序权重,数字越小越靠前',
95
- example: '10',
96
- },
97
- {
98
- key: 'iframeUrl',
99
- field: 'iframeUrl',
100
- description:
101
- 'iframe 嵌入地址。设置后页面以 iframe 方式渲染,支持 {{locale}} 模板变量',
102
- example: 'https://analytics.example.com?lang={{locale}}',
103
- },
104
- {
105
- key: 'externalRedirectUrl',
106
- field: 'externalRedirectUrl',
107
- description:
108
- '外部跳转地址。设置后点击菜单在新窗口打开目标 URL,支持 {{locale}} 模板变量',
109
- example: 'https://wiki.example.com/page',
110
- },
111
- {
112
- key: 'isVirtual',
113
- field: 'isVirtual',
114
- description: '虚拟页面标记,设为 true 时不在侧边栏显示菜单项',
115
- example: 'false',
116
- },
117
- ];
118
-
119
- // ─── 常见问题 ────────────────────────────────────────────────────────────────
120
-
121
- const faqItems = [
122
- {
123
- key: '1',
124
- label: '菜单不显示?',
125
- children: (
126
- <ol>
127
- <li>
128
- 检查 <Text code>routeRegistry.tsx</Text> 中是否注册了路由,且 key 与
129
- t_page 的 code 一致
130
- </li>
131
- <li>
132
- 检查 <Text code>t_page</Text> 表中是否创建了记录(进入 Page Management
133
- 查看)
134
- </li>
135
- <li>检查当前用户的角色是否分配了该页面(进入 Role Management 查看)</li>
136
- <li>
137
- 检查 <Text code>parentId</Text>{' '}
138
- 是否正确——父级页面也需要分配给角色,否则整个子树不可见
139
- </li>
140
- </ol>
141
- ),
142
- },
143
- {
144
- key: '2',
145
- label: '页面显示空白?',
146
- children: (
147
- <ol>
148
- <li>
149
- 检查 <Text code>routeRegistry.tsx</Text> 中的{' '}
150
- <Text code>component</Text> 是否正确导入
151
- </li>
152
- <li>确认页面组件文件已正确导出(export 名称是否与 import 一致)</li>
153
- <li>打开浏览器 DevTools Console 查看是否有 JS 加载错误</li>
154
- </ol>
155
- ),
156
- },
157
- {
158
- key: '3',
159
- label: 'API 返回 403?',
160
- children: (
161
- <Paragraph>
162
- 后端权限由 <Text code>t_role_resource</Text> 控制。进入 Role
163
- Management,检查角色是否分配了对应资源的权限(readAny / createAny /
164
- updateAny / deleteAny)。注意:前端菜单可见不代表有 API
165
- 权限,两者独立配置。
166
- </Paragraph>
167
- ),
168
- },
169
- {
170
- key: '4',
171
- label: 'iframe 页面加载失败?',
172
- children: (
173
- <ol>
174
- <li>
175
- 检查目标网站是否允许被 iframe 嵌入(X-Frame-Options /
176
- Content-Security-Policy 头)
177
- </li>
178
- <li>
179
- 确认 <Text code>iframeUrl</Text> 与{' '}
180
- <Text code>externalRedirectUrl</Text> 未同时填写(两者互斥)
181
- </li>
182
- <li>
183
- 如果目标网站禁止 iframe 嵌入,改用{' '}
184
- <Text code>externalRedirectUrl</Text> 以新窗口方式打开
185
- </li>
186
- </ol>
187
- ),
188
- },
189
- {
190
- key: '5',
191
- label: '如何添加子菜单?',
192
- children: (
193
- <Paragraph>
194
- 在 <Text code>t_page</Text> 中创建记录时将 <Text code>parentId</Text>{' '}
195
- 设为父菜单的 ID。如果是原生页面,在 <Text code>routeRegistry.tsx</Text>{' '}
196
- 中也需要将路由放入父路由的 <Text code>children</Text> 对象中。
197
- </Paragraph>
198
- ),
199
- },
200
- {
201
- key: '6',
202
- label: '{{locale}} 模板变量怎么用?',
203
- children: (
204
- <Paragraph>
205
- 在 <Text code>iframeUrl</Text> 或 <Text code>externalRedirectUrl</Text>{' '}
206
- 中使用 <Text code>{'{{locale}}'}</Text>
207
- ,系统会在运行时自动替换为当前语言(
208
- <Text code>en</Text> 或 <Text code>zh_CN</Text>)。例如:
209
- <Text code>
210
- https://example.com/docs?lang=zh_CN https://example.com/docs?lang=en
211
- </Text>
212
- </Paragraph>
213
- ),
214
- },
215
- ];
216
-
217
- // ─── 原生页面注册步骤 ────────────────────────────────────────────────────────
218
-
219
- const nativeStepColumns = [
220
- { title: '步骤', dataIndex: 'step', key: 'step', width: 80 },
221
- { title: '操作', dataIndex: 'action', key: 'action', width: 200 },
222
- { title: '说明', dataIndex: 'detail', key: 'detail' },
223
- ];
224
-
225
- const nativeStepData = [
226
- {
227
- key: '1',
228
- step: '1',
229
- action: '创建页面组件',
230
- detail:
231
- '在 src/routes/ 下创建页面组件文件,如 src/routes/office/my-feature/index.tsx,导出页面组件。',
232
- },
233
- {
234
- key: '2',
235
- step: '2',
236
- action: '在 routeRegistry 注册路由',
237
- detail:
238
- '在 src/config/routeRegistry.tsx 中添加路由条目。key 即为 page code,配置 path(相对路径)和 component(lazy import)。如有子路由放入 children。',
239
- },
240
- {
241
- key: '3',
242
- step: '3',
243
- action: '在 Page Management 创建记录',
244
- detail:
245
- '进入 /admin/permission/page-list,新建页面。code 必须与 routeRegistry 中的 key 完全一致,设置 parentId 为父菜单 ID。',
246
- },
247
- {
248
- key: '4',
249
- step: '4',
250
- action: '关联资源(可选)',
251
- detail:
252
- '如果页面需要 API 权限控制,在页面记录中关联对应的 Resource,用于后续批量分配权限。',
253
- },
254
- {
255
- key: '5',
256
- step: '5',
257
- action: '为角色分配页面',
258
- detail:
259
- '进入 /admin/permission/role-list,编辑目标角色,勾选新添加的页面。',
260
- },
261
- ];
262
-
263
- // ─── 对比表 ──────────────────────────────────────────────────────────────────
264
-
265
- const comparisonColumns = [
266
- { title: '', dataIndex: 'item', key: 'item', width: 160 },
267
- { title: '原生页面', dataIndex: 'native', key: 'native' },
268
- { title: '外部链接', dataIndex: 'external', key: 'external' },
269
- { title: 'iframe 嵌入', dataIndex: 'iframe', key: 'iframe' },
270
- { title: '动态菜单', dataIndex: 'dynamic', key: 'dynamic' },
271
- ];
272
-
273
- const comparisonData = [
274
- {
275
- key: 'scene',
276
- item: '适用场景',
277
- native: '内部开发的完整功能页面',
278
- external: '跳转到外部系统(Wiki、文档等)',
279
- iframe: '在应用内嵌入外部页面(报表等)',
280
- dynamic: '同一组件多实例(如工作室列表)',
281
- },
282
- {
283
- key: 'registry',
284
- item: '需要修改前端页面',
285
- native: '是(config/routeRegistry.tsx)',
286
- external: '否',
287
- iframe: '否',
288
- dynamic: '是(config/dynamicMenus.ts 配置)',
289
- },
290
- {
291
- key: 'component',
292
- item: '需要写页面组件',
293
- native: '是',
294
- external: '否',
295
- iframe: '否',
296
- dynamic: '是(共享组件)',
297
- },
298
- {
299
- key: 'tpage',
300
- item: '需要 t_page 记录',
301
- native: '是(code = routeRegistry key)',
302
- external: '是(填 externalRedirectUrl)',
303
- iframe: '是(填 iframeUrl)',
304
- dynamic: '是(父级目录)',
305
- },
306
- {
307
- key: 'url',
308
- item: '关键 t_page 字段',
309
- native: 'code, path, parentId',
310
- external: 'externalRedirectUrl',
311
- iframe: 'iframeUrl',
312
- dynamic: 'code(如 invested / native)',
313
- },
314
- {
315
- key: 'behavior',
316
- item: '用户体验',
317
- native: '应用内完整渲染',
318
- external: '新窗口打开 + 自动返回',
319
- iframe: '应用框架内嵌入',
320
- dynamic: '应用内完整渲染',
321
- },
322
- {
323
- key: 'template',
324
- item: '支持 {{locale}}',
325
- native: '—',
326
- external: '是',
327
- iframe: '是',
328
- dynamic: '—',
329
- },
330
- ];
331
-
332
- // ─── 组件 ────────────────────────────────────────────────────────────────────
333
-
334
- export const PermissionReadmePage = () => {
335
- return (
336
- <div>
337
- <Typography>
338
- <Title level={2}>菜单管理说明</Title>
339
- <Paragraph>
340
- 本页面介绍系统的菜单、路由与权限管理机制,帮助管理员理解如何添加和配置不同类型的菜单项。
341
- </Paragraph>
342
- </Typography>
343
-
344
- {/* ── 架构概览 ──────────────────────────────────────────────── */}
345
- <Card title="菜单系统架构" style={{ marginBottom: 24 }}>
346
- <Paragraph>
347
- 系统的菜单管理涉及<Text strong>前端路由注册</Text>和
348
- <Text strong>数据库页面配置</Text>两个部分的协作。 未匹配到
349
- routeRegistry 的路由会进入 <Text code>WildcardPage</Text> 通配组件,
350
- 由它根据 t_page 的配置决定渲染 iframe、打开外部链接或显示 404。
351
- </Paragraph>
352
- <Alert
353
- type="info"
354
- showIcon
355
- message="数据流"
356
- description={
357
- <div>
358
- <Text code>routeRegistry.tsx</Text>(前端路由定义:Route
359
- Path、React组件) + <Text code>t_page</Text>(数据库菜单配置) →{' '}
360
- <Text code>侧边栏菜单渲染</Text> + <Text code>路由匹配</Text>
361
- <br />
362
- <br />
363
- 路由匹配优先级:<Text code>routeRegistry</Text> 原生路由 &gt;{' '}
364
- <Text code>WildcardPage (/*)</Text> 通配路由
365
- <br />
366
- <br />
367
- WildcardPage 处理:查询 t_page → 有 <Text code>iframeUrl</Text> →
368
- 渲染 iframe | 有 <Text code>externalRedirectUrl</Text> →
369
- 新窗口打开 | 否则 → 404
370
- </div>
371
- }
372
- style={{ marginBottom: 16 }}
373
- />
374
- </Card>
375
-
376
- {/* ── 核心概念 ──────────────────────────────────────────────── */}
377
- <Card title="核心概念" style={{ marginBottom: 24 }}>
378
- <Table
379
- columns={coreConceptColumns}
380
- dataSource={coreConceptData}
381
- pagination={false}
382
- size="small"
383
- bordered
384
- />
385
- <Divider />
386
- <Title level={5}>t_page 关键字段</Title>
387
- <Table
388
- columns={pageFieldColumns}
389
- dataSource={pageFieldData}
390
- pagination={false}
391
- size="small"
392
- bordered
393
- />
394
- </Card>
395
-
396
- {/* ── 四种注册方式 ──────────────────────────────────────────── */}
397
- <Card title="菜单注册方式" style={{ marginBottom: 24 }}>
398
- <Alert
399
- type="info"
400
- showIcon
401
- message="四种方式对比"
402
- style={{ marginBottom: 16 }}
403
- description={
404
- <Table
405
- columns={comparisonColumns}
406
- dataSource={comparisonData}
407
- pagination={false}
408
- size="small"
409
- bordered
410
- scroll={{ x: 800 }}
411
- />
412
- }
413
- />
414
-
415
- <Tabs
416
- items={[
417
- {
418
- key: 'native',
419
- label: '原生页面',
420
- children: (
421
- <>
422
- <Paragraph>
423
- 原生页面是最常见的方式——编写 React 组件,在{' '}
424
- <Text code>routeRegistry.tsx</Text> 中注册路由,再在 t_page
425
- 中创建对应记录。
426
- </Paragraph>
427
- <Alert
428
- type="warning"
429
- showIcon
430
- message="关键约束"
431
- description={
432
- <>
433
- routeRegistry 中的 key(如{' '}
434
- <Text code>software_dashboard</Text>)必须与 t_page 的{' '}
435
- <Text code>code</Text>{' '}
436
- 字段完全一致,否则菜单无法正常显示。
437
- </>
438
- }
439
- style={{ marginBottom: 16 }}
440
- />
441
- <Title level={5}>注册步骤</Title>
442
- <Table
443
- columns={nativeStepColumns}
444
- dataSource={nativeStepData}
445
- pagination={false}
446
- size="small"
447
- bordered
448
- />
449
- <Divider />
450
- <Title level={5}>routeRegistry 示例</Title>
451
- <pre
452
- style={{
453
- background: '#f5f5f5',
454
- padding: 16,
455
- borderRadius: 6,
456
- overflow: 'auto',
457
- fontSize: 13,
458
- lineHeight: 1.6,
459
- }}
460
- >{`// src/config/routeRegistry.tsx
461
- office: {
462
- path: "/office",
463
- children: {
464
- // key "my_feature" 即为 t_page 中的 code
465
- my_feature: {
466
- path: "my-feature-dashboard",
467
- component: lazy(() => import("@/routes/office/my-feature")),
468
- },
469
- },
470
- },`}</pre>
471
-
472
- <Divider />
473
- <Title level={5}>下划线前缀(_ 开头)的子路由</Title>
474
- <Paragraph>
475
- routeRegistry 中以 <Text code>_</Text> 开头的 key 是
476
- <Text strong>内部子路由</Text>,
477
- <Text strong>无需在 t_page 中注册</Text>。 它们由父级页面的
478
- code 统一管理权限,属于同一个页面模块的不同视图。
479
- </Paragraph>
480
-
481
- <Title level={5}>CRUD 子路由</Title>
482
- <Paragraph>
483
- 最常见的 <Text code>_</Text> 前缀子路由,
484
- 用于同一模块的列表/新建/编辑/详情视图,不出现在侧边栏中:
485
- </Paragraph>
486
- <Table
487
- columns={[
488
- {
489
- title: 'Key',
490
- dataIndex: 'key',
491
- key: 'key',
492
- width: 100,
493
- },
494
- {
495
- title: '典型 path',
496
- dataIndex: 'path',
497
- key: 'path',
498
- width: 140,
499
- },
500
- { title: '用途', dataIndex: 'usage', key: 'usage' },
501
- ]}
502
- dataSource={[
503
- {
504
- key: '_list',
505
- path: '""(index: true)',
506
- usage:
507
- '列表页,作为父路由的默认子路由(index route),访问父路径时自动渲染',
508
- },
509
- {
510
- key: '_create',
511
- path: '"create"',
512
- usage: '新建页,如 /admin/staff/create',
513
- },
514
- {
515
- key: '_edit',
516
- path: '"edit/:id"',
517
- usage: '编辑页,如 /admin/staff/edit/123',
518
- },
519
- {
520
- key: '_show',
521
- path: '"show/:id"',
522
- usage: '详情页,如 /admin/staff/show/123',
523
- },
524
- {
525
- key: '_index',
526
- path: '""(index: true)',
527
- usage: '与 _list 类似,用于非 CRUD 场景的默认子路由',
528
- },
529
- ]}
530
- pagination={false}
531
- size="small"
532
- bordered
533
- />
534
-
535
- <Divider />
536
- <Title level={5}>动态参数路由 + Sidebar-only 菜单条目</Title>
537
- <Paragraph>
538
- 当多个菜单项共享同一个页面组件、只通过 URL
539
- 参数区分内容时,使用{' '}
540
- <Text strong>动态参数路由 + Sidebar-only 条目</Text>
541
- 的组合模式:
542
- </Paragraph>
543
- <ul>
544
- <li>
545
- 动态参数路由(如 <Text code>_tab</Text> /{' '}
546
- <Text code>_region</Text>) - 负责实际渲染,
547
- <Text strong>不注册 t_page</Text>
548
- </li>
549
- <li>
550
- Sidebar-only 条目(如 <Text code>apac</Text>、
551
- <Text code>security_event</Text>
552
- )— 只有 path、没有 component,
553
- <Text strong>需要注册 t_page</Text>,
554
- 出现在侧边栏菜单中。用户点击后 URL
555
- 匹配到动态参数路由,由共享组件渲染。
556
- </li>
557
- </ul>
558
- <pre
559
- style={{
560
- background: '#f5f5f5',
561
- padding: 16,
562
- borderRadius: 6,
563
- overflow: 'auto',
564
- fontSize: 13,
565
- lineHeight: 1.6,
566
- }}
567
- >{`// 示例:RTO 看板按区域分子菜单
568
- // t_page 需注册:overview, apac, amer, emea
569
- // _index 和 _region 无需注册
570
-
571
- overview: {
572
- path: "rto-dashboard",
573
- children: {
574
- _index: { // 默认视图,无需注册 t_page
575
- path: "",
576
- index: true,
577
- component: lazy(() => import("@/routes/office/rto")),
578
- },
579
- _region: { // 动态参数路由,无需注册 t_page
580
- path: ":region", // 匹配 /office/rto-dashboard/apac 等
581
- component: lazy(() => import("@/routes/office/rto")),
582
- },
583
- // Sidebar-only 条目:需注册 t_page,出现在侧边栏菜单
584
- apac: { path: "apac" }, // 无 component,点击后由 _region 渲染
585
- amer: { path: "amer" },
586
- emea: { path: "emea" },
587
- },
588
- },`}</pre>
589
-
590
- <Alert
591
- type="info"
592
- showIcon
593
- message="命名约定总结"
594
- description={
595
- <ul style={{ margin: 0, paddingLeft: 20 }}>
596
- <li>
597
- <Text strong>不以 _ 开头</Text>的 key → 页面
598
- code,需在 t_page 中注册。有 component
599
- 的是原生页面,无 component 的是 sidebar-only 菜单条目
600
- </li>
601
- <li>
602
- <Text strong>以 _ 开头</Text>的 key →
603
- 内部子路由,不注册
604
- t_page,不出现在侧边栏,权限跟随父级页面
605
- </li>
606
- </ul>
607
- }
608
- style={{ marginTop: 16, marginBottom: 16 }}
609
- />
610
-
611
- <Title level={5}>CRUD 模块完整示例</Title>
612
- <pre
613
- style={{
614
- background: '#f5f5f5',
615
- padding: 16,
616
- borderRadius: 6,
617
- overflow: 'auto',
618
- fontSize: 13,
619
- lineHeight: 1.6,
620
- }}
621
- >{`// 只需在 t_page 中注册 "staff"(code="staff"),
622
- // 下面 4 个 _ 开头的子路由无需注册,自动跟随 staff 的权限。
623
- staff: {
624
- path: "staff",
625
- children: {
626
- _list: {
627
- path: "",
628
- index: true, // 访问 /admin/staff 时渲染列表页
629
- component: lazy(() => import("@/routes/administration/staff")
630
- .then((m) => ({ default: m.StaffListPage }))),
631
- },
632
- _create: {
633
- path: "create", // /admin/staff/create
634
- component: lazy(() => import("@/routes/administration/staff")
635
- .then((m) => ({ default: m.StaffCreatePage }))),
636
- },
637
- _edit: {
638
- path: "edit/:id", // /admin/staff/edit/123
639
- component: lazy(() => import("@/routes/administration/staff")
640
- .then((m) => ({ default: m.StaffEditPage }))),
641
- },
642
- _show: {
643
- path: "show/:id", // /admin/staff/show/123
644
- component: lazy(() => import("@/routes/administration/staff")
645
- .then((m) => ({ default: m.StaffShowPage }))),
646
- },
647
- },
648
- },`}</pre>
649
- </>
650
- ),
651
- },
652
- {
653
- key: 'external',
654
- label: '外部链接',
655
- children: (
656
- <>
657
- <Paragraph>
658
- 外部链接方式<Text strong>无需编写任何前端代码</Text>
659
- ,只需在 Page Management 中创建一条 t_page 记录,并填写{' '}
660
- <Text code>externalRedirectUrl</Text> 字段即可。
661
- 点击菜单时系统会在新窗口打开目标 URL,并自动返回前一个页面。
662
- </Paragraph>
663
- <Title level={5}>注册步骤</Title>
664
- <ol>
665
- <li>
666
- 进入 <Text code>/admin/permission/page-list</Text>
667
- ,新建页面记录
668
- </li>
669
- <li>
670
- 填写 <Text code>code</Text>、<Text code>zhName</Text>、
671
- <Text code>path</Text>(任意唯一路径即可)、
672
- <Text code>parentId</Text>
673
- </li>
674
- <li>
675
- 在 <Text code>External Redirect URL</Text>{' '}
676
- 字段填入目标地址
677
- </li>
678
- <li>为角色分配该页面</li>
679
- </ol>
680
- <Alert
681
- type="info"
682
- showIcon
683
- message="模板变量"
684
- description={
685
- <>
686
- URL 中可使用 <Text code>{'{{locale}}'}</Text>{' '}
687
- 模板变量,运行时会替换为当前语言(en / zh)。例如:
688
- <br />
689
- <Text code>
690
- https://wiki.example.com/page?lang={'{{locale}}'}
691
- </Text>
692
- </>
693
- }
694
- style={{ marginTop: 16 }}
695
- />
696
- <Divider />
697
- <Title level={5}>工作流程</Title>
698
- <pre
699
- style={{
700
- background: '#f5f5f5',
701
- padding: 16,
702
- borderRadius: 6,
703
- overflow: 'auto',
704
- fontSize: 13,
705
- lineHeight: 1.6,
706
- }}
707
- >{`用户点击菜单
708
- → 前端路由跳转到 page.path
709
- → 未匹配到 routeRegistry,进入 WildcardPage
710
- → WildcardPage 查询 t_page,发现 externalRedirectUrl
711
- → window.open(url, "_blank") 新窗口打开
712
- → window.history.back() 自动返回`}</pre>
713
- </>
714
- ),
715
- },
716
- {
717
- key: 'iframe',
718
- label: 'iframe 嵌入',
719
- children: (
720
- <>
721
- <Paragraph>
722
- iframe 方式同样<Text strong>无需编写前端代码</Text>
723
- ,在 Page Management 中填写 <Text code>iframeUrl</Text>{' '}
724
- 字段即可。页面会在应用框架(侧边栏、顶栏)内以 iframe
725
- 全屏嵌入目标网页。
726
- </Paragraph>
727
- <Title level={5}>注册步骤</Title>
728
- <ol>
729
- <li>
730
- 进入 <Text code>/admin/permission/page-list</Text>
731
- ,新建页面记录
732
- </li>
733
- <li>
734
- 填写 <Text code>code</Text>、<Text code>zhName</Text>、
735
- <Text code>path</Text>(任意唯一路径即可)、
736
- <Text code>parentId</Text>
737
- </li>
738
- <li>
739
- 在 <Text code>Iframe URL</Text> 字段填入目标地址
740
- </li>
741
- <li>为角色分配该页面</li>
742
- </ol>
743
- <Alert
744
- type="warning"
745
- showIcon
746
- message="注意事项"
747
- description={
748
- <ul style={{ margin: 0, paddingLeft: 20 }}>
749
- <li>
750
- <Text code>iframeUrl</Text> 和{' '}
751
- <Text code>externalRedirectUrl</Text>{' '}
752
- 不能同时填写,两者互斥
753
- </li>
754
- <li>
755
- 目标网站必须允许被 iframe 嵌入(未设置{' '}
756
- <Text code>X-Frame-Options: DENY</Text> 或{' '}
757
- <Text code>
758
- Content-Security-Policy: frame-ancestors 'none'
759
- </Text>
760
-
761
- </li>
762
- <li>如果目标网站禁止 iframe,请改用外部链接方式</li>
763
- <li>
764
- 同样支持 <Text code>{'{{locale}}'}</Text> 模板变量
765
- </li>
766
- </ul>
767
- }
768
- style={{ marginTop: 16 }}
769
- />
770
- </>
771
- ),
772
- },
773
- {
774
- key: 'dynamic',
775
- label: '动态菜单',
776
- children: (
777
- <>
778
- <Paragraph>
779
- 动态菜单适用于
780
- <Text strong>同一个页面组件需要生成多个菜单项</Text>
781
- 的场景。通过 <Text code>
782
- src/config/dynamicMenus.ts
783
- </Text>{' '}
784
- 的配置驱动方案,开发者只需添加一条配置即可新增动态菜单组。
785
- </Paragraph>
786
-
787
- <Title level={5}>配置方式</Title>
788
- <Paragraph>
789
- 在 <Text code>src/config/dynamicMenus.ts</Text> 中的{' '}
790
- <Text code>dynamicMenuGroups</Text> 数组中添加一条配置:
791
- </Paragraph>
792
- <pre
793
- style={{
794
- background: '#f5f5f5',
795
- padding: 16,
796
- borderRadius: 6,
797
- overflow: 'auto',
798
- fontSize: 13,
799
- lineHeight: 1.6,
800
- }}
801
- >{`// src/config/dynamicMenus.ts
802
- interface DynamicMenuGroup {
803
- parentCode: string; // 父级 page code(需在 t_page 注册)
804
- routePrefix: string; // 路由前缀,如 "/rd/invested"
805
- items: string[]; // 子项列表,每项生成一个菜单项和路由
806
- component: LazyExoticComponent<ComponentType<any>>; // 共享组件
807
- }
808
-
809
- // 示例:RD 工作室
810
- {
811
- parentCode: "invested",
812
- routePrefix: "/rd/invested",
813
- items: studioMap.investedStudios,
814
- component: lazy(() => import("@/routes/rd/rdec")),
815
- }`}</pre>
816
-
817
- <Alert
818
- type="info"
819
- showIcon
820
- message="权限控制"
821
- description={
822
- <>
823
- 动态菜单的权限以 <Text code>parentCode</Text>{' '}
824
- 为单位控制。例如为角色分配 <Text code>invested</Text>{' '}
825
- 页面后,该角色可以看到该组下所有子菜单项。无需为每个子项单独配置权限。
826
- </>
827
- }
828
- style={{ marginTop: 16 }}
829
- />
830
-
831
- <Divider />
832
- <Title level={5}>添加新动态菜单组的步骤</Title>
833
- <ol>
834
- <li>
835
- 在 <Text code>t_page</Text> 中注册父级页面(设置{' '}
836
- <Text code>code</Text>、<Text code>parentId</Text>)
837
- </li>
838
- <li>
839
- 在 <Text code>src/config/dynamicMenus.ts</Text> 的{' '}
840
- <Text code>dynamicMenuGroups</Text> 数组中添加一条配置
841
- </li>
842
- <li>
843
- 路由和菜单项会自动生成,无需修改{' '}
844
- <Text code>routeRegistry.tsx</Text>、
845
- <Text code>App.tsx</Text> 或{' '}
846
- <Text code>useDynamicResources.tsx</Text>
847
- </li>
848
- </ol>
849
-
850
- <Divider />
851
- <Title level={5}>现有示例:RD 工作室</Title>
852
- <Paragraph>
853
- 当前系统中 RD 模块的 invested(投资工作室)和
854
- native(自研工作室)使用动态菜单:
855
- </Paragraph>
856
- <ul>
857
- <li>
858
- 工作室列表定义在 <Text code>src/config/studio.ts</Text> 的{' '}
859
- <Text code>studioMap</Text> 中
860
- </li>
861
- <li>
862
- 所有工作室路由共享同一个 <Text code>RDEC</Text>{' '}
863
- 组件,组件内从 URL 提取工作室名称
864
- </li>
865
- <li>
866
- 添加新工作室只需在 <Text code>studio.ts</Text> 的{' '}
867
- <Text code>StudioEnum</Text> 和{' '}
868
- <Text code>studioMap</Text> 中添加条目即可
869
- </li>
870
- </ul>
871
- </>
872
- ),
873
- },
874
- ]}
875
- />
876
- </Card>
877
-
878
- {/* ── 权限层级关系 ────────────────────────────────────────────── */}
879
- <Card title="权限层级关系" style={{ marginBottom: 24 }}>
880
- <Title level={5}>实体关系总览</Title>
881
- <pre
882
- style={{
883
- background: '#f5f5f5',
884
- padding: 16,
885
- borderRadius: 6,
886
- overflow: 'auto',
887
- fontSize: 13,
888
- lineHeight: 1.8,
889
- }}
890
- >{`User (t_admin_user_role)
891
- └─ roles: ["PRODUCT", "SYSTEM_ADMIN"] ← 用户可拥有多个角色(JSON 数组)
892
-
893
-
894
- Role (t_role)
895
- ├─ RolePages (t_role_pages) ← 控制菜单可见性(前端)
896
- │ └─ Page (t_page)
897
- │ └─ PageResource (t_page_resource) ← 页面声明需要的资源权限
898
-
899
- └─ RoleResource (t_role_resource) ← 控制 API 访问权限(后端)
900
- └─ Resource (t_resource)
901
- └─ actions: ["readAny", "createAny", "updateAny", "deleteAny"]`}</pre>
902
-
903
- <Divider />
904
- <Title level={5}>双层权限防御</Title>
905
- <Paragraph>系统在前端和后端分别进行权限检查,两层独立运作:</Paragraph>
906
-
907
- <Table
908
- columns={[
909
- { title: '', dataIndex: 'item', key: 'item', width: 140 },
910
- {
911
- title: '前端:菜单可见性',
912
- dataIndex: 'frontend',
913
- key: 'frontend',
914
- },
915
- {
916
- title: '后端:API 访问权限',
917
- dataIndex: 'backend',
918
- key: 'backend',
919
- },
920
- ]}
921
- dataSource={[
922
- {
923
- key: 'table',
924
- item: '关联表',
925
- frontend: 't_role_pages(角色 → 页面)',
926
- backend: 't_role_resource(角色 → 资源)',
927
- },
928
- {
929
- key: 'what',
930
- item: '控制什么',
931
- frontend: '侧边栏菜单项是否显示',
932
- backend: 'API 请求是否允许执行',
933
- },
934
- {
935
- key: 'fail',
936
- item: '无权限表现',
937
- frontend: '菜单不可见',
938
- backend: '返回 HTTP 403',
939
- },
940
- {
941
- key: 'check',
942
- item: '检查机制',
943
- frontend: 'useUserPageAccess() Hook 过滤菜单树',
944
- backend: 'AuthGuard → RolesGuard → @UseRoles() 装饰器',
945
- },
946
- ]}
947
- pagination={false}
948
- size="small"
949
- bordered
950
- />
951
-
952
- <Divider />
953
- <Title level={5}>权限检查完整流程</Title>
954
- <pre
955
- style={{
956
- background: '#f5f5f5',
957
- padding: 16,
958
- borderRadius: 6,
959
- overflow: 'auto',
960
- fontSize: 13,
961
- lineHeight: 1.8,
962
- }}
963
- >{`┌─ 前端菜单加载 ─────────────────────────────────────────────────────┐
964
- │ │
965
- │ 1. GET /userinfo → 获取用户角色列表 (如 ["PRODUCT"]) │
966
- │ 2. POST /role/findMany → 查询角色 ID │
967
- │ 3. POST /rolePages/findMany → 查询角色关联的页面 ID │
968
- │ 4. POST /page/findMany → 获取所有页面定义 │
969
- │ 5. 构建可访问页面集合(包含分配页面 + 递归添加祖先页面) │
970
- │ 6. 生成侧边栏菜单树 │
971
- │ │
972
- └─────────────────────────────────────────────────────────────────────┘
973
-
974
- ┌─ 后端 API 权限检查 ────────────────────────────────────────────────┐
975
- │ │
976
- │ 请求到达 → AuthGuard(验证身份,提取 userid) │
977
- │ → RolesGuard(查询 t_admin_user_role,获取角色列表) │
978
- │ → @UseRoles({ resource: "xxx", action: "read" }) │
979
- │ → RolesBuilder 检查该角色对该资源是否有对应权限 │
980
- │ → 通过 ✓ 执行 / 拒绝 ✗ 返回 403 │
981
- │ │
982
- └─────────────────────────────────────────────────────────────────────┘`}</pre>
983
-
984
- <Divider />
985
- <Title level={5}>PageResource 的作用</Title>
986
- <Paragraph>
987
- <Text code>t_page_resource</Text> 定义了每个页面需要哪些 API
988
- 资源及权限。当管理员在 Role Management 中为角色勾选页面时,系统会
989
- <Text strong>自动从 PageResource 中提取资源权限</Text>,同步写入{' '}
990
- <Text code>t_role_resource</Text>。
991
- </Paragraph>
992
- <pre
993
- style={{
994
- background: '#f5f5f5',
995
- padding: 16,
996
- borderRadius: 6,
997
- overflow: 'auto',
998
- fontSize: 13,
999
- lineHeight: 1.8,
1000
- }}
1001
- >{`管理员勾选页面 A(关联了 Resource X [readAny] 和 Resource Y [readAny, createAny])
1002
-
1003
- 系统自动执行:
1004
- 1. 写入 t_role_pages:角色 → 页面 A
1005
- 2. 查询 t_page_resource:页面 A 需要 X(readAny)、Y(readAny, createAny)
1006
- 3. 合并写入 t_role_resource:角色 → X(readAny)、Y(readAny, createAny)
1007
-
1008
- 管理员取消勾选页面 A:
1009
- 1. 删除 t_role_pages 中的关联
1010
- 2. 如果 Resource X/Y 不被其他页面引用,同步删除 t_role_resource 中的关联`}</pre>
1011
-
1012
- <Divider />
1013
- <Title level={5}>API 权限类型</Title>
1014
- <Table
1015
- columns={[
1016
- { title: '权限', dataIndex: 'action', key: 'action', width: 140 },
1017
- { title: '含义', dataIndex: 'meaning', key: 'meaning' },
1018
- {
1019
- title: '对应 HTTP 操作',
1020
- dataIndex: 'http',
1021
- key: 'http',
1022
- width: 200,
1023
- },
1024
- ]}
1025
- dataSource={[
1026
- {
1027
- key: 'read',
1028
- action: 'readAny',
1029
- meaning: '读取任意记录',
1030
- http: 'GET / POST findMany',
1031
- },
1032
- {
1033
- key: 'create',
1034
- action: 'createAny',
1035
- meaning: '创建新记录',
1036
- http: 'POST createOne',
1037
- },
1038
- {
1039
- key: 'update',
1040
- action: 'updateAny',
1041
- meaning: '修改任意记录',
1042
- http: 'PATCH / PUT updateOne',
1043
- },
1044
- {
1045
- key: 'delete',
1046
- action: 'deleteAny',
1047
- meaning: '删除任意记录',
1048
- http: 'DELETE deleteOne',
1049
- },
1050
- ]}
1051
- pagination={false}
1052
- size="small"
1053
- bordered
1054
- />
1055
-
1056
- <Divider />
1057
- <Title level={5}>通用资源(Common Resource)</Title>
1058
- <Paragraph>
1059
- <Text code>t_resource</Text> 中标记为{' '}
1060
- <Text code>isCommonResource = true</Text> 的资源会自动为所有角色授予{' '}
1061
- <Text code>readAny</Text>{' '}
1062
- 权限,无需在页面或角色中单独配置。适用于全局公共数据(如枚举列表、配置项等)。
1063
- </Paragraph>
1064
-
1065
- <Divider />
1066
- <Title level={5}>系统管理员</Title>
1067
- <Alert
1068
- type="info"
1069
- showIcon
1070
- message="硬编码管理员"
1071
- description={
1072
- <>
1073
- 以下用户在后端硬编码为 SYSTEM_ADMIN 角色,即使不在{' '}
1074
- <Text code>t_admin_user_role</Text> 表中也会自动获得管理员权限:
1075
- <Text code>kavenma</Text>、<Text code>jasonlan</Text>、
1076
- <Text code>gc_lvhenan</Text>。
1077
- </>
1078
- }
1079
- />
1080
- </Card>
1081
-
1082
- {/* ── 常见问题 ──────────────────────────────────────────────── */}
1083
- <Card title="常见问题">
1084
- <Collapse items={faqItems} />
1085
- </Card>
1086
- </div>
1087
- );
1088
- };
1089
-
1090
- export default PermissionReadmePage;