@cfmm/umi-plugins-ui-v2 0.0.1

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 (526) hide show
  1. package/README.md +29 -0
  2. package/dist/cjs/components/ActionLogDrawer.tpl +148 -0
  3. package/dist/cjs/components/AddDrawerForm.tpl +38 -0
  4. package/dist/cjs/components/AuthorizeRender.tpl +11 -0
  5. package/dist/cjs/components/Authorized.tpl +39 -0
  6. package/dist/cjs/components/AuthorizedRoute.tpl +33 -0
  7. package/dist/cjs/components/AvatarDropdown.tpl +101 -0
  8. package/dist/cjs/components/CheckPermissions.tpl +100 -0
  9. package/dist/cjs/components/CopyButton.tpl +49 -0
  10. package/dist/cjs/components/CrudTable.tpl +650 -0
  11. package/dist/cjs/components/DicDropDownList.tpl +60 -0
  12. package/dist/cjs/components/DndTabs.tpl +159 -0
  13. package/dist/cjs/components/DndTag.tpl +89 -0
  14. package/dist/cjs/components/DropdownButton.tpl +123 -0
  15. package/dist/cjs/components/DynamicIcon.tpl +73 -0
  16. package/dist/cjs/components/DynamicIconModal.tpl +196 -0
  17. package/dist/cjs/components/EditMultiLangForm.tpl +366 -0
  18. package/dist/cjs/components/ExportPageWrapper.tpl +224 -0
  19. package/dist/cjs/components/FlieListModal.tpl +79 -0
  20. package/dist/cjs/components/FormUpload.tpl +561 -0
  21. package/dist/cjs/components/GlobalFooter.tpl +21 -0
  22. package/dist/cjs/components/GlobalHeader.less +51 -0
  23. package/dist/cjs/components/GlobalHeader.tpl +313 -0
  24. package/dist/cjs/components/HeaderSearch.less +32 -0
  25. package/dist/cjs/components/HeaderSearch.tpl +92 -0
  26. package/dist/cjs/components/HighlightStr.tpl +41 -0
  27. package/dist/cjs/components/ImportDataUpload.tpl +94 -0
  28. package/dist/cjs/components/ImportExecl.less +10 -0
  29. package/dist/cjs/components/ImportExecl.tpl +108 -0
  30. package/dist/cjs/components/KeepAliveDndTabs.tpl +151 -0
  31. package/dist/cjs/components/KeepAliveTabs.less +23 -0
  32. package/dist/cjs/components/KeepAliveTabs.tpl +136 -0
  33. package/dist/cjs/components/Loading.css +19 -0
  34. package/dist/cjs/components/LoadingSvg.tpl +14 -0
  35. package/dist/cjs/components/MenuFooter.css +13 -0
  36. package/dist/cjs/components/MenuFooter.tpl +24 -0
  37. package/dist/cjs/components/MyColorPicker.tpl +19 -0
  38. package/dist/cjs/components/MyFooterToolbar.css +6 -0
  39. package/dist/cjs/components/MyFooterToolbar.tpl +56 -0
  40. package/dist/cjs/components/MyPageContainer.tpl +43 -0
  41. package/dist/cjs/components/MyReactEcharts.tpl +11 -0
  42. package/dist/cjs/components/MySelect.tpl +267 -0
  43. package/dist/cjs/components/MySelectLang.tpl +22 -0
  44. package/dist/cjs/components/MySetps.tpl +85 -0
  45. package/dist/cjs/components/MyTagList.tpl +57 -0
  46. package/dist/cjs/components/MyUpload.less +39 -0
  47. package/dist/cjs/components/MyUpload.tpl +609 -0
  48. package/dist/cjs/components/NoFoundPage.tpl +46 -0
  49. package/dist/cjs/components/PDFWrapper.tpl +96 -0
  50. package/dist/cjs/components/PageLoading.tpl +16 -0
  51. package/dist/cjs/components/PermissionSelect.tpl +230 -0
  52. package/dist/cjs/components/ProFormUTCDatePicker.tpl +20 -0
  53. package/dist/cjs/components/ProFormUTCRangePicker.tpl +20 -0
  54. package/dist/cjs/components/PromiseRender.tpl +93 -0
  55. package/dist/cjs/components/QrCodeModal.tpl +19 -0
  56. package/dist/cjs/components/RandomAvatar.tpl +34 -0
  57. package/dist/cjs/components/RefDrawerForm.tpl +75 -0
  58. package/dist/cjs/components/ReportTable.tpl +336 -0
  59. package/dist/cjs/components/Secured.tpl +66 -0
  60. package/dist/cjs/components/ThemeSwitch.tpl +74 -0
  61. package/dist/cjs/components/TimeTypeSelect.tpl +35 -0
  62. package/dist/cjs/components/TipsTableTitle.tpl +37 -0
  63. package/dist/cjs/components/UTCDatePicker.tpl +107 -0
  64. package/dist/cjs/components/UTCRangePicker.tpl +142 -0
  65. package/dist/cjs/components/UpdateForm.tpl +32 -0
  66. package/dist/cjs/components/UserDisable.tpl +58 -0
  67. package/dist/cjs/components/UserNoPagePermission.tpl +58 -0
  68. package/dist/cjs/components/UserNoPermission.tpl +58 -0
  69. package/dist/cjs/components/ViewTableItemDrawer.tpl +29 -0
  70. package/dist/cjs/components/VolumeFormItem.tpl +59 -0
  71. package/dist/cjs/components/WangEditor.css +53 -0
  72. package/dist/cjs/components/WangEditor.tpl +174 -0
  73. package/dist/cjs/components/WangEditorView.tpl +24 -0
  74. package/dist/cjs/components/fileTypeMap.tpl +96 -0
  75. package/dist/cjs/components/renderAuthorize.tpl +44 -0
  76. package/dist/cjs/context/KeepAliveTabs.tpl +13 -0
  77. package/dist/cjs/context/index.tpl +1 -0
  78. package/dist/cjs/hooks/useAction.tpl +126 -0
  79. package/dist/cjs/hooks/useActionLocales.tpl +108 -0
  80. package/dist/cjs/hooks/useAuthority.tpl +27 -0
  81. package/dist/cjs/hooks/useColumnTitle.tpl +47 -0
  82. package/dist/cjs/hooks/useFormatLocale.tpl +82 -0
  83. package/dist/cjs/hooks/useKeepAliveTabs.tpl +255 -0
  84. package/dist/cjs/hooks/useMatchRoute.tpl +76 -0
  85. package/dist/cjs/hooks/useMemoizedFn.tpl +32 -0
  86. package/dist/cjs/hooks/useOutlet.tpl +20 -0
  87. package/dist/cjs/hooks/usePageExport.tpl +155 -0
  88. package/dist/cjs/hooks/useQueryTableList.tpl +91 -0
  89. package/dist/cjs/hooks/useRouteAuth.tpl +122 -0
  90. package/dist/cjs/index.d.ts +6 -0
  91. package/dist/cjs/index.js +122 -0
  92. package/dist/cjs/locales/en-US.d.ts +163 -0
  93. package/dist/cjs/locales/en-US.js +16 -0
  94. package/dist/cjs/locales/enUS/ActionLogDrawer.d.ts +6 -0
  95. package/dist/cjs/locales/enUS/ActionLogDrawer.js +11 -0
  96. package/dist/cjs/locales/enUS/DynamicIconModal.d.ts +4 -0
  97. package/dist/cjs/locales/enUS/DynamicIconModal.js +9 -0
  98. package/dist/cjs/locales/enUS/EditMultiLangForm.d.ts +16 -0
  99. package/dist/cjs/locales/enUS/EditMultiLangForm.js +21 -0
  100. package/dist/cjs/locales/enUS/File.d.ts +54 -0
  101. package/dist/cjs/locales/enUS/File.js +60 -0
  102. package/dist/cjs/locales/enUS/GlobalFooter.d.ts +4 -0
  103. package/dist/cjs/locales/enUS/GlobalFooter.js +9 -0
  104. package/dist/cjs/locales/enUS/GlobalHeader.d.ts +10 -0
  105. package/dist/cjs/locales/enUS/GlobalHeader.js +15 -0
  106. package/dist/cjs/locales/enUS/MyFooterToolbar.d.ts +5 -0
  107. package/dist/cjs/locales/enUS/MyFooterToolbar.js +10 -0
  108. package/dist/cjs/locales/enUS/PermissionSelect.d.ts +4 -0
  109. package/dist/cjs/locales/enUS/PermissionSelect.js +9 -0
  110. package/dist/cjs/locales/enUS/TimeTypeSelect.d.ts +6 -0
  111. package/dist/cjs/locales/enUS/TimeTypeSelect.js +11 -0
  112. package/dist/cjs/locales/enUS/common.d.ts +74 -0
  113. package/dist/cjs/locales/enUS/common.js +82 -0
  114. package/dist/cjs/locales/enUS/index.d.ts +163 -0
  115. package/dist/cjs/locales/enUS/index.js +25 -0
  116. package/dist/cjs/locales/enUS/pages.d.ts +10 -0
  117. package/dist/cjs/locales/enUS/pages.js +15 -0
  118. package/dist/cjs/locales/th-TH.d.ts +163 -0
  119. package/dist/cjs/locales/th-TH.js +16 -0
  120. package/dist/cjs/locales/zh-CN.d.ts +163 -0
  121. package/dist/cjs/locales/zh-CN.js +16 -0
  122. package/dist/cjs/locales/zh-TW.d.ts +162 -0
  123. package/dist/cjs/locales/zh-TW.js +16 -0
  124. package/dist/cjs/locales/zhCN/ActionLogDrawer.d.ts +6 -0
  125. package/dist/cjs/locales/zhCN/ActionLogDrawer.js +11 -0
  126. package/dist/cjs/locales/zhCN/DynamicIconModal.d.ts +4 -0
  127. package/dist/cjs/locales/zhCN/DynamicIconModal.js +9 -0
  128. package/dist/cjs/locales/zhCN/EditMultiLangForm.d.ts +16 -0
  129. package/dist/cjs/locales/zhCN/EditMultiLangForm.js +21 -0
  130. package/dist/cjs/locales/zhCN/File.d.ts +54 -0
  131. package/dist/cjs/locales/zhCN/File.js +60 -0
  132. package/dist/cjs/locales/zhCN/GlobalFooter.d.ts +4 -0
  133. package/dist/cjs/locales/zhCN/GlobalFooter.js +9 -0
  134. package/dist/cjs/locales/zhCN/GlobalHeader.d.ts +10 -0
  135. package/dist/cjs/locales/zhCN/GlobalHeader.js +15 -0
  136. package/dist/cjs/locales/zhCN/MyFooterToolbar.d.ts +5 -0
  137. package/dist/cjs/locales/zhCN/MyFooterToolbar.js +10 -0
  138. package/dist/cjs/locales/zhCN/PermissionSelect.d.ts +4 -0
  139. package/dist/cjs/locales/zhCN/PermissionSelect.js +9 -0
  140. package/dist/cjs/locales/zhCN/TimeTypeSelect.d.ts +6 -0
  141. package/dist/cjs/locales/zhCN/TimeTypeSelect.js +11 -0
  142. package/dist/cjs/locales/zhCN/common.d.ts +74 -0
  143. package/dist/cjs/locales/zhCN/common.js +82 -0
  144. package/dist/cjs/locales/zhCN/index.d.ts +163 -0
  145. package/dist/cjs/locales/zhCN/index.js +25 -0
  146. package/dist/cjs/locales/zhCN/pages.d.ts +10 -0
  147. package/dist/cjs/locales/zhCN/pages.js +15 -0
  148. package/dist/cjs/locales/zhTW/ActionLogDrawer.d.ts +6 -0
  149. package/dist/cjs/locales/zhTW/ActionLogDrawer.js +11 -0
  150. package/dist/cjs/locales/zhTW/DynamicIconModal.d.ts +4 -0
  151. package/dist/cjs/locales/zhTW/DynamicIconModal.js +9 -0
  152. package/dist/cjs/locales/zhTW/EditMultiLangForm.d.ts +16 -0
  153. package/dist/cjs/locales/zhTW/EditMultiLangForm.js +21 -0
  154. package/dist/cjs/locales/zhTW/File.d.ts +53 -0
  155. package/dist/cjs/locales/zhTW/File.js +59 -0
  156. package/dist/cjs/locales/zhTW/GlobalFooter.d.ts +4 -0
  157. package/dist/cjs/locales/zhTW/GlobalFooter.js +9 -0
  158. package/dist/cjs/locales/zhTW/GlobalHeader.d.ts +10 -0
  159. package/dist/cjs/locales/zhTW/GlobalHeader.js +15 -0
  160. package/dist/cjs/locales/zhTW/MyFooterToolbar.d.ts +5 -0
  161. package/dist/cjs/locales/zhTW/MyFooterToolbar.js +10 -0
  162. package/dist/cjs/locales/zhTW/PermissionSelect.d.ts +4 -0
  163. package/dist/cjs/locales/zhTW/PermissionSelect.js +9 -0
  164. package/dist/cjs/locales/zhTW/TimeTypeSelect.d.ts +6 -0
  165. package/dist/cjs/locales/zhTW/TimeTypeSelect.js +11 -0
  166. package/dist/cjs/locales/zhTW/common.d.ts +74 -0
  167. package/dist/cjs/locales/zhTW/common.js +82 -0
  168. package/dist/cjs/locales/zhTW/index.d.ts +162 -0
  169. package/dist/cjs/locales/zhTW/index.js +25 -0
  170. package/dist/cjs/locales/zhTW/pages.d.ts +10 -0
  171. package/dist/cjs/locales/zhTW/pages.js +15 -0
  172. package/dist/cjs/services/index.tpl +160 -0
  173. package/dist/cjs/types/ActionLogDrawerTypes.d.ts +1 -0
  174. package/dist/cjs/types/ActionLogDrawerTypes.js +7 -0
  175. package/dist/cjs/types/AvatarDropdownTypes.d.ts +1 -0
  176. package/dist/cjs/types/AvatarDropdownTypes.js +7 -0
  177. package/dist/cjs/types/CrudTableTypes.d.ts +1 -0
  178. package/dist/cjs/types/CrudTableTypes.js +7 -0
  179. package/dist/cjs/types/DatePickerTypes.d.ts +1 -0
  180. package/dist/cjs/types/DatePickerTypes.js +7 -0
  181. package/dist/cjs/types/DicDropDownListTypes.d.ts +1 -0
  182. package/dist/cjs/types/DicDropDownListTypes.js +7 -0
  183. package/dist/cjs/types/DndTabsTypes.d.ts +1 -0
  184. package/dist/cjs/types/DndTabsTypes.js +7 -0
  185. package/dist/cjs/types/DndTagTypes.d.ts +1 -0
  186. package/dist/cjs/types/DndTagTypes.js +7 -0
  187. package/dist/cjs/types/DropdownButtonTypes.d.ts +2 -0
  188. package/dist/cjs/types/DropdownButtonTypes.js +8 -0
  189. package/dist/cjs/types/DynamicIconTypes.d.ts +1 -0
  190. package/dist/cjs/types/DynamicIconTypes.js +7 -0
  191. package/dist/cjs/types/EditMultiLangFormTypes.d.ts +1 -0
  192. package/dist/cjs/types/EditMultiLangFormTypes.js +7 -0
  193. package/dist/cjs/types/ExportPageWrapperTypes.d.ts +1 -0
  194. package/dist/cjs/types/ExportPageWrapperTypes.js +7 -0
  195. package/dist/cjs/types/GlobalHeaderTypes.d.ts +1 -0
  196. package/dist/cjs/types/GlobalHeaderTypes.js +7 -0
  197. package/dist/cjs/types/HeaderSearchTypes.d.ts +1 -0
  198. package/dist/cjs/types/HeaderSearchTypes.js +7 -0
  199. package/dist/cjs/types/HighlightStrTypes.d.ts +1 -0
  200. package/dist/cjs/types/HighlightStrTypes.js +7 -0
  201. package/dist/cjs/types/ImportDataUploadTypes.d.ts +1 -0
  202. package/dist/cjs/types/ImportDataUploadTypes.js +7 -0
  203. package/dist/cjs/types/ImportExeclTypes.d.ts +1 -0
  204. package/dist/cjs/types/ImportExeclTypes.js +7 -0
  205. package/dist/cjs/types/KeepAliveTabsTypes.d.ts +1 -0
  206. package/dist/cjs/types/KeepAliveTabsTypes.js +7 -0
  207. package/dist/cjs/types/MenuFooterTypes.d.ts +1 -0
  208. package/dist/cjs/types/MenuFooterTypes.js +7 -0
  209. package/dist/cjs/types/MyFooterToolbarTypes.d.ts +1 -0
  210. package/dist/cjs/types/MyFooterToolbarTypes.js +7 -0
  211. package/dist/cjs/types/MyPageContainerTypes.d.ts +1 -0
  212. package/dist/cjs/types/MyPageContainerTypes.js +7 -0
  213. package/dist/cjs/types/MySelectLangTypes.d.ts +1 -0
  214. package/dist/cjs/types/MySelectLangTypes.js +7 -0
  215. package/dist/cjs/types/MySelectTypes.d.ts +1 -0
  216. package/dist/cjs/types/MySelectTypes.js +7 -0
  217. package/dist/cjs/types/MySetpsTypes.d.ts +1 -0
  218. package/dist/cjs/types/MySetpsTypes.js +7 -0
  219. package/dist/cjs/types/MyTagListTypes.d.ts +1 -0
  220. package/dist/cjs/types/MyTagListTypes.js +7 -0
  221. package/dist/cjs/types/MyUploadTypes.d.ts +1 -0
  222. package/dist/cjs/types/MyUploadTypes.js +7 -0
  223. package/dist/cjs/types/PermissionSelectTypes.d.ts +1 -0
  224. package/dist/cjs/types/PermissionSelectTypes.js +7 -0
  225. package/dist/cjs/types/QrCodeModalTypes.d.ts +1 -0
  226. package/dist/cjs/types/QrCodeModalTypes.js +7 -0
  227. package/dist/cjs/types/RandomAvatarTypes.d.ts +1 -0
  228. package/dist/cjs/types/RandomAvatarTypes.js +7 -0
  229. package/dist/cjs/types/RefDrawerFormTypes.d.ts +1 -0
  230. package/dist/cjs/types/RefDrawerFormTypes.js +7 -0
  231. package/dist/cjs/types/ReportTableTypes.d.ts +1 -0
  232. package/dist/cjs/types/ReportTableTypes.js +7 -0
  233. package/dist/cjs/types/ThemeSwitchTypes.d.ts +1 -0
  234. package/dist/cjs/types/ThemeSwitchTypes.js +7 -0
  235. package/dist/cjs/types/ViewTableItemDrawerTypes.d.ts +1 -0
  236. package/dist/cjs/types/ViewTableItemDrawerTypes.js +7 -0
  237. package/dist/cjs/types/VolumeFormItemTypes.d.ts +1 -0
  238. package/dist/cjs/types/VolumeFormItemTypes.js +7 -0
  239. package/dist/cjs/types/WangEditorTypes.d.ts +1 -0
  240. package/dist/cjs/types/WangEditorTypes.js +7 -0
  241. package/dist/cjs/types/index.d.ts +35 -0
  242. package/dist/cjs/types/index.js +250 -0
  243. package/dist/cjs/types/servicesTypes.d.ts +1 -0
  244. package/dist/cjs/types/servicesTypes.js +7 -0
  245. package/dist/cjs/utils/Authorized.tpl +17 -0
  246. package/dist/cjs/utils/authority.tpl +51 -0
  247. package/dist/cjs/utils/authorityFunction.tpl +17 -0
  248. package/dist/cjs/utils/excelHelper.tpl +825 -0
  249. package/dist/cjs/utils/exportPage.tpl +784 -0
  250. package/dist/cjs/utils/fileHelper.tpl +251 -0
  251. package/dist/cjs/utils/importHelper.tpl +283 -0
  252. package/dist/cjs/utils/utils.tpl +26 -0
  253. package/dist/cjs/utils/xmlRequest.tpl +92 -0
  254. package/dist/cjs/writeTmpFile/index.d.ts +5 -0
  255. package/dist/cjs/writeTmpFile/index.js +34 -0
  256. package/dist/cjs/writeTmpFile/runtime.d.ts +5 -0
  257. package/dist/cjs/writeTmpFile/runtime.js +15 -0
  258. package/dist/cjs/writeTmpFile/writeConstants.d.ts +6 -0
  259. package/dist/cjs/writeTmpFile/writeConstants.js +13 -0
  260. package/dist/cjs/writeTmpFile/writeIndex.d.ts +5 -0
  261. package/dist/cjs/writeTmpFile/writeIndex.js +10 -0
  262. package/dist/cjs/writeTmpFile/writeTypes.d.ts +5 -0
  263. package/dist/cjs/writeTmpFile/writeTypes.js +12 -0
  264. package/dist/esm/components/ActionLogDrawer.tpl +148 -0
  265. package/dist/esm/components/AddDrawerForm.tpl +38 -0
  266. package/dist/esm/components/AuthorizeRender.tpl +11 -0
  267. package/dist/esm/components/Authorized.tpl +39 -0
  268. package/dist/esm/components/AuthorizedRoute.tpl +33 -0
  269. package/dist/esm/components/AvatarDropdown.tpl +101 -0
  270. package/dist/esm/components/CheckPermissions.tpl +100 -0
  271. package/dist/esm/components/CopyButton.tpl +49 -0
  272. package/dist/esm/components/CrudTable.tpl +650 -0
  273. package/dist/esm/components/DicDropDownList.tpl +60 -0
  274. package/dist/esm/components/DndTabs.tpl +159 -0
  275. package/dist/esm/components/DndTag.tpl +89 -0
  276. package/dist/esm/components/DropdownButton.tpl +123 -0
  277. package/dist/esm/components/DynamicIcon.tpl +73 -0
  278. package/dist/esm/components/DynamicIconModal.tpl +196 -0
  279. package/dist/esm/components/EditMultiLangForm.tpl +366 -0
  280. package/dist/esm/components/ExportPageWrapper.tpl +224 -0
  281. package/dist/esm/components/FlieListModal.tpl +79 -0
  282. package/dist/esm/components/FormUpload.tpl +561 -0
  283. package/dist/esm/components/GlobalFooter.tpl +21 -0
  284. package/dist/esm/components/GlobalHeader.less +51 -0
  285. package/dist/esm/components/GlobalHeader.tpl +313 -0
  286. package/dist/esm/components/HeaderSearch.less +32 -0
  287. package/dist/esm/components/HeaderSearch.tpl +92 -0
  288. package/dist/esm/components/HighlightStr.tpl +41 -0
  289. package/dist/esm/components/ImportDataUpload.tpl +94 -0
  290. package/dist/esm/components/ImportExecl.less +10 -0
  291. package/dist/esm/components/ImportExecl.tpl +108 -0
  292. package/dist/esm/components/KeepAliveDndTabs.tpl +151 -0
  293. package/dist/esm/components/KeepAliveTabs.less +23 -0
  294. package/dist/esm/components/KeepAliveTabs.tpl +136 -0
  295. package/dist/esm/components/Loading.css +19 -0
  296. package/dist/esm/components/LoadingSvg.tpl +14 -0
  297. package/dist/esm/components/MenuFooter.css +13 -0
  298. package/dist/esm/components/MenuFooter.tpl +24 -0
  299. package/dist/esm/components/MyColorPicker.tpl +19 -0
  300. package/dist/esm/components/MyFooterToolbar.css +6 -0
  301. package/dist/esm/components/MyFooterToolbar.tpl +56 -0
  302. package/dist/esm/components/MyPageContainer.tpl +43 -0
  303. package/dist/esm/components/MyReactEcharts.tpl +11 -0
  304. package/dist/esm/components/MySelect.tpl +267 -0
  305. package/dist/esm/components/MySelectLang.tpl +22 -0
  306. package/dist/esm/components/MySetps.tpl +85 -0
  307. package/dist/esm/components/MyTagList.tpl +57 -0
  308. package/dist/esm/components/MyUpload.less +39 -0
  309. package/dist/esm/components/MyUpload.tpl +609 -0
  310. package/dist/esm/components/NoFoundPage.tpl +46 -0
  311. package/dist/esm/components/PDFWrapper.tpl +96 -0
  312. package/dist/esm/components/PageLoading.tpl +16 -0
  313. package/dist/esm/components/PermissionSelect.tpl +230 -0
  314. package/dist/esm/components/ProFormUTCDatePicker.tpl +20 -0
  315. package/dist/esm/components/ProFormUTCRangePicker.tpl +20 -0
  316. package/dist/esm/components/PromiseRender.tpl +93 -0
  317. package/dist/esm/components/QrCodeModal.tpl +19 -0
  318. package/dist/esm/components/RandomAvatar.tpl +34 -0
  319. package/dist/esm/components/RefDrawerForm.tpl +75 -0
  320. package/dist/esm/components/ReportTable.tpl +336 -0
  321. package/dist/esm/components/Secured.tpl +66 -0
  322. package/dist/esm/components/ThemeSwitch.tpl +74 -0
  323. package/dist/esm/components/TimeTypeSelect.tpl +35 -0
  324. package/dist/esm/components/TipsTableTitle.tpl +37 -0
  325. package/dist/esm/components/UTCDatePicker.tpl +107 -0
  326. package/dist/esm/components/UTCRangePicker.tpl +142 -0
  327. package/dist/esm/components/UpdateForm.tpl +32 -0
  328. package/dist/esm/components/UserDisable.tpl +58 -0
  329. package/dist/esm/components/UserNoPagePermission.tpl +58 -0
  330. package/dist/esm/components/UserNoPermission.tpl +58 -0
  331. package/dist/esm/components/ViewTableItemDrawer.tpl +29 -0
  332. package/dist/esm/components/VolumeFormItem.tpl +59 -0
  333. package/dist/esm/components/WangEditor.css +53 -0
  334. package/dist/esm/components/WangEditor.tpl +174 -0
  335. package/dist/esm/components/WangEditorView.tpl +24 -0
  336. package/dist/esm/components/fileTypeMap.tpl +96 -0
  337. package/dist/esm/components/renderAuthorize.tpl +44 -0
  338. package/dist/esm/context/KeepAliveTabs.tpl +13 -0
  339. package/dist/esm/context/index.tpl +1 -0
  340. package/dist/esm/hooks/useAction.tpl +126 -0
  341. package/dist/esm/hooks/useActionLocales.tpl +108 -0
  342. package/dist/esm/hooks/useAuthority.tpl +27 -0
  343. package/dist/esm/hooks/useColumnTitle.tpl +47 -0
  344. package/dist/esm/hooks/useFormatLocale.tpl +82 -0
  345. package/dist/esm/hooks/useKeepAliveTabs.tpl +255 -0
  346. package/dist/esm/hooks/useMatchRoute.tpl +76 -0
  347. package/dist/esm/hooks/useMemoizedFn.tpl +32 -0
  348. package/dist/esm/hooks/useOutlet.tpl +20 -0
  349. package/dist/esm/hooks/usePageExport.tpl +155 -0
  350. package/dist/esm/hooks/useQueryTableList.tpl +91 -0
  351. package/dist/esm/hooks/useRouteAuth.tpl +122 -0
  352. package/dist/esm/index.d.ts +6 -0
  353. package/dist/esm/index.js +115 -0
  354. package/dist/esm/locales/en-US.d.ts +163 -0
  355. package/dist/esm/locales/en-US.js +9 -0
  356. package/dist/esm/locales/enUS/ActionLogDrawer.d.ts +6 -0
  357. package/dist/esm/locales/enUS/ActionLogDrawer.js +5 -0
  358. package/dist/esm/locales/enUS/DynamicIconModal.d.ts +4 -0
  359. package/dist/esm/locales/enUS/DynamicIconModal.js +3 -0
  360. package/dist/esm/locales/enUS/EditMultiLangForm.d.ts +16 -0
  361. package/dist/esm/locales/enUS/EditMultiLangForm.js +15 -0
  362. package/dist/esm/locales/enUS/File.d.ts +54 -0
  363. package/dist/esm/locales/enUS/File.js +54 -0
  364. package/dist/esm/locales/enUS/GlobalFooter.d.ts +4 -0
  365. package/dist/esm/locales/enUS/GlobalFooter.js +3 -0
  366. package/dist/esm/locales/enUS/GlobalHeader.d.ts +10 -0
  367. package/dist/esm/locales/enUS/GlobalHeader.js +9 -0
  368. package/dist/esm/locales/enUS/MyFooterToolbar.d.ts +5 -0
  369. package/dist/esm/locales/enUS/MyFooterToolbar.js +4 -0
  370. package/dist/esm/locales/enUS/PermissionSelect.d.ts +4 -0
  371. package/dist/esm/locales/enUS/PermissionSelect.js +3 -0
  372. package/dist/esm/locales/enUS/TimeTypeSelect.d.ts +6 -0
  373. package/dist/esm/locales/enUS/TimeTypeSelect.js +5 -0
  374. package/dist/esm/locales/enUS/common.d.ts +74 -0
  375. package/dist/esm/locales/enUS/common.js +76 -0
  376. package/dist/esm/locales/enUS/index.d.ts +163 -0
  377. package/dist/esm/locales/enUS/index.js +18 -0
  378. package/dist/esm/locales/enUS/pages.d.ts +10 -0
  379. package/dist/esm/locales/enUS/pages.js +9 -0
  380. package/dist/esm/locales/th-TH.d.ts +163 -0
  381. package/dist/esm/locales/th-TH.js +9 -0
  382. package/dist/esm/locales/zh-CN.d.ts +163 -0
  383. package/dist/esm/locales/zh-CN.js +9 -0
  384. package/dist/esm/locales/zh-TW.d.ts +162 -0
  385. package/dist/esm/locales/zh-TW.js +9 -0
  386. package/dist/esm/locales/zhCN/ActionLogDrawer.d.ts +6 -0
  387. package/dist/esm/locales/zhCN/ActionLogDrawer.js +5 -0
  388. package/dist/esm/locales/zhCN/DynamicIconModal.d.ts +4 -0
  389. package/dist/esm/locales/zhCN/DynamicIconModal.js +3 -0
  390. package/dist/esm/locales/zhCN/EditMultiLangForm.d.ts +16 -0
  391. package/dist/esm/locales/zhCN/EditMultiLangForm.js +15 -0
  392. package/dist/esm/locales/zhCN/File.d.ts +54 -0
  393. package/dist/esm/locales/zhCN/File.js +54 -0
  394. package/dist/esm/locales/zhCN/GlobalFooter.d.ts +4 -0
  395. package/dist/esm/locales/zhCN/GlobalFooter.js +3 -0
  396. package/dist/esm/locales/zhCN/GlobalHeader.d.ts +10 -0
  397. package/dist/esm/locales/zhCN/GlobalHeader.js +9 -0
  398. package/dist/esm/locales/zhCN/MyFooterToolbar.d.ts +5 -0
  399. package/dist/esm/locales/zhCN/MyFooterToolbar.js +4 -0
  400. package/dist/esm/locales/zhCN/PermissionSelect.d.ts +4 -0
  401. package/dist/esm/locales/zhCN/PermissionSelect.js +3 -0
  402. package/dist/esm/locales/zhCN/TimeTypeSelect.d.ts +6 -0
  403. package/dist/esm/locales/zhCN/TimeTypeSelect.js +5 -0
  404. package/dist/esm/locales/zhCN/common.d.ts +74 -0
  405. package/dist/esm/locales/zhCN/common.js +76 -0
  406. package/dist/esm/locales/zhCN/index.d.ts +163 -0
  407. package/dist/esm/locales/zhCN/index.js +18 -0
  408. package/dist/esm/locales/zhCN/pages.d.ts +10 -0
  409. package/dist/esm/locales/zhCN/pages.js +9 -0
  410. package/dist/esm/locales/zhTW/ActionLogDrawer.d.ts +6 -0
  411. package/dist/esm/locales/zhTW/ActionLogDrawer.js +5 -0
  412. package/dist/esm/locales/zhTW/DynamicIconModal.d.ts +4 -0
  413. package/dist/esm/locales/zhTW/DynamicIconModal.js +3 -0
  414. package/dist/esm/locales/zhTW/EditMultiLangForm.d.ts +16 -0
  415. package/dist/esm/locales/zhTW/EditMultiLangForm.js +15 -0
  416. package/dist/esm/locales/zhTW/File.d.ts +53 -0
  417. package/dist/esm/locales/zhTW/File.js +53 -0
  418. package/dist/esm/locales/zhTW/GlobalFooter.d.ts +4 -0
  419. package/dist/esm/locales/zhTW/GlobalFooter.js +3 -0
  420. package/dist/esm/locales/zhTW/GlobalHeader.d.ts +10 -0
  421. package/dist/esm/locales/zhTW/GlobalHeader.js +9 -0
  422. package/dist/esm/locales/zhTW/MyFooterToolbar.d.ts +5 -0
  423. package/dist/esm/locales/zhTW/MyFooterToolbar.js +4 -0
  424. package/dist/esm/locales/zhTW/PermissionSelect.d.ts +4 -0
  425. package/dist/esm/locales/zhTW/PermissionSelect.js +3 -0
  426. package/dist/esm/locales/zhTW/TimeTypeSelect.d.ts +6 -0
  427. package/dist/esm/locales/zhTW/TimeTypeSelect.js +5 -0
  428. package/dist/esm/locales/zhTW/common.d.ts +74 -0
  429. package/dist/esm/locales/zhTW/common.js +76 -0
  430. package/dist/esm/locales/zhTW/index.d.ts +162 -0
  431. package/dist/esm/locales/zhTW/index.js +18 -0
  432. package/dist/esm/locales/zhTW/pages.d.ts +10 -0
  433. package/dist/esm/locales/zhTW/pages.js +9 -0
  434. package/dist/esm/services/index.tpl +160 -0
  435. package/dist/esm/types/ActionLogDrawerTypes.d.ts +1 -0
  436. package/dist/esm/types/ActionLogDrawerTypes.js +1 -0
  437. package/dist/esm/types/AvatarDropdownTypes.d.ts +1 -0
  438. package/dist/esm/types/AvatarDropdownTypes.js +1 -0
  439. package/dist/esm/types/CrudTableTypes.d.ts +1 -0
  440. package/dist/esm/types/CrudTableTypes.js +1 -0
  441. package/dist/esm/types/DatePickerTypes.d.ts +1 -0
  442. package/dist/esm/types/DatePickerTypes.js +1 -0
  443. package/dist/esm/types/DicDropDownListTypes.d.ts +1 -0
  444. package/dist/esm/types/DicDropDownListTypes.js +1 -0
  445. package/dist/esm/types/DndTabsTypes.d.ts +1 -0
  446. package/dist/esm/types/DndTabsTypes.js +1 -0
  447. package/dist/esm/types/DndTagTypes.d.ts +1 -0
  448. package/dist/esm/types/DndTagTypes.js +1 -0
  449. package/dist/esm/types/DropdownButtonTypes.d.ts +2 -0
  450. package/dist/esm/types/DropdownButtonTypes.js +2 -0
  451. package/dist/esm/types/DynamicIconTypes.d.ts +1 -0
  452. package/dist/esm/types/DynamicIconTypes.js +1 -0
  453. package/dist/esm/types/EditMultiLangFormTypes.d.ts +1 -0
  454. package/dist/esm/types/EditMultiLangFormTypes.js +1 -0
  455. package/dist/esm/types/ExportPageWrapperTypes.d.ts +1 -0
  456. package/dist/esm/types/ExportPageWrapperTypes.js +1 -0
  457. package/dist/esm/types/GlobalHeaderTypes.d.ts +1 -0
  458. package/dist/esm/types/GlobalHeaderTypes.js +1 -0
  459. package/dist/esm/types/HeaderSearchTypes.d.ts +1 -0
  460. package/dist/esm/types/HeaderSearchTypes.js +1 -0
  461. package/dist/esm/types/HighlightStrTypes.d.ts +1 -0
  462. package/dist/esm/types/HighlightStrTypes.js +1 -0
  463. package/dist/esm/types/ImportDataUploadTypes.d.ts +1 -0
  464. package/dist/esm/types/ImportDataUploadTypes.js +1 -0
  465. package/dist/esm/types/ImportExeclTypes.d.ts +1 -0
  466. package/dist/esm/types/ImportExeclTypes.js +1 -0
  467. package/dist/esm/types/KeepAliveTabsTypes.d.ts +1 -0
  468. package/dist/esm/types/KeepAliveTabsTypes.js +1 -0
  469. package/dist/esm/types/MenuFooterTypes.d.ts +1 -0
  470. package/dist/esm/types/MenuFooterTypes.js +1 -0
  471. package/dist/esm/types/MyFooterToolbarTypes.d.ts +1 -0
  472. package/dist/esm/types/MyFooterToolbarTypes.js +1 -0
  473. package/dist/esm/types/MyPageContainerTypes.d.ts +1 -0
  474. package/dist/esm/types/MyPageContainerTypes.js +1 -0
  475. package/dist/esm/types/MySelectLangTypes.d.ts +1 -0
  476. package/dist/esm/types/MySelectLangTypes.js +1 -0
  477. package/dist/esm/types/MySelectTypes.d.ts +1 -0
  478. package/dist/esm/types/MySelectTypes.js +1 -0
  479. package/dist/esm/types/MySetpsTypes.d.ts +1 -0
  480. package/dist/esm/types/MySetpsTypes.js +1 -0
  481. package/dist/esm/types/MyTagListTypes.d.ts +1 -0
  482. package/dist/esm/types/MyTagListTypes.js +1 -0
  483. package/dist/esm/types/MyUploadTypes.d.ts +1 -0
  484. package/dist/esm/types/MyUploadTypes.js +1 -0
  485. package/dist/esm/types/PermissionSelectTypes.d.ts +1 -0
  486. package/dist/esm/types/PermissionSelectTypes.js +1 -0
  487. package/dist/esm/types/QrCodeModalTypes.d.ts +1 -0
  488. package/dist/esm/types/QrCodeModalTypes.js +1 -0
  489. package/dist/esm/types/RandomAvatarTypes.d.ts +1 -0
  490. package/dist/esm/types/RandomAvatarTypes.js +1 -0
  491. package/dist/esm/types/RefDrawerFormTypes.d.ts +1 -0
  492. package/dist/esm/types/RefDrawerFormTypes.js +1 -0
  493. package/dist/esm/types/ReportTableTypes.d.ts +1 -0
  494. package/dist/esm/types/ReportTableTypes.js +1 -0
  495. package/dist/esm/types/ThemeSwitchTypes.d.ts +1 -0
  496. package/dist/esm/types/ThemeSwitchTypes.js +1 -0
  497. package/dist/esm/types/ViewTableItemDrawerTypes.d.ts +1 -0
  498. package/dist/esm/types/ViewTableItemDrawerTypes.js +1 -0
  499. package/dist/esm/types/VolumeFormItemTypes.d.ts +1 -0
  500. package/dist/esm/types/VolumeFormItemTypes.js +1 -0
  501. package/dist/esm/types/WangEditorTypes.d.ts +1 -0
  502. package/dist/esm/types/WangEditorTypes.js +1 -0
  503. package/dist/esm/types/index.d.ts +35 -0
  504. package/dist/esm/types/index.js +35 -0
  505. package/dist/esm/types/servicesTypes.d.ts +1 -0
  506. package/dist/esm/types/servicesTypes.js +1 -0
  507. package/dist/esm/utils/Authorized.tpl +17 -0
  508. package/dist/esm/utils/authority.tpl +51 -0
  509. package/dist/esm/utils/authorityFunction.tpl +17 -0
  510. package/dist/esm/utils/excelHelper.tpl +825 -0
  511. package/dist/esm/utils/exportPage.tpl +784 -0
  512. package/dist/esm/utils/fileHelper.tpl +251 -0
  513. package/dist/esm/utils/importHelper.tpl +283 -0
  514. package/dist/esm/utils/utils.tpl +26 -0
  515. package/dist/esm/utils/xmlRequest.tpl +92 -0
  516. package/dist/esm/writeTmpFile/index.d.ts +5 -0
  517. package/dist/esm/writeTmpFile/index.js +5 -0
  518. package/dist/esm/writeTmpFile/runtime.d.ts +5 -0
  519. package/dist/esm/writeTmpFile/runtime.js +8 -0
  520. package/dist/esm/writeTmpFile/writeConstants.d.ts +6 -0
  521. package/dist/esm/writeTmpFile/writeConstants.js +7 -0
  522. package/dist/esm/writeTmpFile/writeIndex.d.ts +5 -0
  523. package/dist/esm/writeTmpFile/writeIndex.js +4 -0
  524. package/dist/esm/writeTmpFile/writeTypes.d.ts +5 -0
  525. package/dist/esm/writeTmpFile/writeTypes.js +7 -0
  526. package/package.json +58 -0
@@ -0,0 +1,96 @@
1
+ import { DownloadOutlined, EyeOutlined } from '@ant-design/icons';
2
+ import { useIntl, useModel } from '@umijs/max';
3
+ import { FloatButton } from 'antd';
4
+ import dayjs from 'dayjs';
5
+ import React, { useRef, useState } from 'react';
6
+ import { usePageExport } from '../hooks/usePageExport';
7
+ import { ExportPageProps } from '../types';
8
+
9
+ const PDFWrapper: React.FC<ExportPageProps> = (props) => {
10
+ const { filename, pageWaterMarkText, showExportButton, showExportPDF, floatButtonProps, exportPageOptions } = props;
11
+
12
+ const { formatMessage } = useIntl();
13
+ const { currentUser } = window.__POWERED_BY_QIANKUN__ ? useModel('@@qiankunStateFromMaster') : useModel('user');
14
+ const { onExportPDF, onPreviewPDF, loading } = usePageExport();
15
+ const exportRef = useRef<HTMLDivElement>(null);
16
+
17
+ // 根据PDFWaterMark属性初始化tempWaterMark
18
+ const [tempWaterMark, setTempWaterMark] = useState<string | undefined>(currentUser.userName);
19
+
20
+ const handlePDF = (type: 'export' | 'preview') => {
21
+ if (loading) return; // 防止重复点击
22
+
23
+ setTempWaterMark(pageWaterMarkText ?? `${currentUser.userName} - ${dayjs().format('YYYY-MM-DD HH:mm:ss')}`);
24
+
25
+ setTimeout(() => {
26
+ if (exportRef.current) {
27
+ const actionFn = type === 'export' ? onExportPDF : onPreviewPDF;
28
+ actionFn(exportRef.current, {
29
+ filename,
30
+ ...exportPageOptions,
31
+ }).finally(() => {
32
+ // 导出完成后恢复原始水印
33
+ setTempWaterMark(currentUser.userName);
34
+ });
35
+ }
36
+ }, 100); // 小延迟确保水印渲染
37
+ };
38
+
39
+ // 将tempWaterMark传递给children
40
+ const renderChildren = () => {
41
+ if (!props.children) return null;
42
+
43
+ // 如果children是React元素,使用cloneElement传递props
44
+ if (React.isValidElement(props.children)) {
45
+ return React.cloneElement(props.children as any, {
46
+ tempWaterMark,
47
+ ...(props.children.props || {}),
48
+ });
49
+ }
50
+
51
+ // 如果是数组或其他类型,遍历处理
52
+ if (Array.isArray(props.children)) {
53
+ return React.Children.map(props.children, (child) => {
54
+ if (React.isValidElement(child)) {
55
+ return React.cloneElement(child as any, {
56
+ tempWaterMark,
57
+ ...(child.props || {}),
58
+ });
59
+ }
60
+ return child;
61
+ });
62
+ }
63
+
64
+ return props.children;
65
+ };
66
+
67
+ return (
68
+ <>
69
+ <div ref={exportRef}>{renderChildren()}</div>
70
+ {showExportButton || showExportPDF ? (
71
+ <FloatButton.Group
72
+ trigger="hover"
73
+ style={{
74
+ insetInlineEnd: 16,
75
+ insetBlockEnd: 100,
76
+ }}
77
+ tooltip={<>{formatMessage({ id: 'cfmmUI.common.button.export' })} PDF</>}
78
+ {...floatButtonProps}
79
+ >
80
+ <FloatButton
81
+ tooltip={<>{formatMessage({ id: 'cfmmUI.common.button.preview' })} PDF</>}
82
+ onClick={() => handlePDF('preview')}
83
+ icon={<EyeOutlined />}
84
+ />
85
+ <FloatButton
86
+ icon={<DownloadOutlined />}
87
+ tooltip={<>{formatMessage({ id: 'cfmmUI.common.button.export' })} PDF</>}
88
+ onClick={() => handlePDF('export')}
89
+ />
90
+ </FloatButton.Group>
91
+ ) : null}
92
+ </>
93
+ );
94
+ };
95
+
96
+ export default React.memo(PDFWrapper);
@@ -0,0 +1,16 @@
1
+ import './Loading.css';
2
+
3
+ //页面加载
4
+ const Loading = () => {
5
+ return (
6
+ <div className="cfmmUI pageLoading loadingContainer">
7
+ <svg width={100} height={100} viewBox="0 0 40 40">
8
+ <path d="M 0,28 L 14,0 6,28 Z" fill="#172e8a" />
9
+ <path d="M 0,0 L 11,28 16.5,28 Z" fill="#172e8a" />
10
+ <path d="M 14,0 L 22.5,28 28,28 Z" fill="#172e8a" />
11
+ </svg>
12
+ </div>
13
+ );
14
+ };
15
+
16
+ export default Loading;
@@ -0,0 +1,230 @@
1
+ import { ModalForm } from '@ant-design/pro-form';
2
+ import { Form, Tree } from 'antd';
3
+ import { DataNode } from 'rc-tree/lib/interface';
4
+ import React, { useEffect, useState } from 'react';
5
+ import { useIntl, request } from '@umijs/max';
6
+ import { BASE_API } from "../constants";
7
+ import { PermissionSelectFormProps, MenuItem, PermissionItem } from "../types";
8
+
9
+ export async function queryAllMenus() {
10
+ return request(`${BASE_API}/system/menu/list`, {
11
+ method: 'GET',
12
+ });
13
+ }
14
+
15
+ export async function queryAllPermissions() {
16
+ return request(`${BASE_API}/system/permission/list`, {
17
+ method: 'GET',
18
+ });
19
+ }
20
+
21
+ /**
22
+ * 选择权限组件
23
+ * @param props
24
+ * @returns
25
+ */
26
+ const PermissionSelect: React.FC<PermissionSelectFormProps> = (props) => {
27
+ const { values, modalFormVisible, rootParentKey = '0', onSubmit, setModalFormVisible } = props;
28
+ const { formatMessage } = useIntl();
29
+ const [form] = Form.useForm();
30
+
31
+ /**
32
+ * 加载的左侧菜单数据
33
+ */
34
+ const [menuTreeDate, setMenuTreeDate] = useState<DataNode[] | undefined>(undefined);
35
+
36
+ /**
37
+ * 选择的权限数据
38
+ */
39
+ const [selectPermissionList, setSelectPermissionList] = useState<React.Key[]>([]);
40
+
41
+ // 提交状态
42
+ const [submitting, setSubmitting] = useState(false);
43
+
44
+ /**
45
+ * 处理菜单的递归方法
46
+ * @param parentKey
47
+ * @param allMenuData
48
+ * @returns
49
+ */
50
+ const GetMenuTree = (
51
+ parentKey: number | string,
52
+ allMenuData: MenuItem[],
53
+ allPermissionData: PermissionItem[],
54
+ ): DataNode[] | undefined => {
55
+ let menuList: DataNode[] = [];
56
+
57
+ if (allMenuData.length > 0) {
58
+ /**
59
+ * 找出父级菜单下的所有菜单
60
+ */
61
+ let filterSonMenuList = allMenuData.filter((item) => item.parentId === parentKey);
62
+ const findSonMenuSortList = filterSonMenuList.sort((a, b) => Number(a.seqNo) - Number(b.seqNo));
63
+
64
+ /**
65
+ * 循环找出的子菜单
66
+ */
67
+ findSonMenuSortList.forEach((menuItem) => {
68
+ let sunItem = GetMenuTree(menuItem.menuId, allMenuData, allPermissionData);
69
+
70
+ /**
71
+ * 找出菜单对应的权限
72
+ * 如果菜单无效或者菜单权限无效,则节点不可用
73
+ */
74
+ const filterPermissions = allPermissionData.filter((item) => item.menuId === menuItem.menuId);
75
+ let PermissionNodes = filterPermissions.map((item) => ({
76
+ title: item.permissionName,
77
+ key: item.permissionId,
78
+ disableCheckbox: item.status.toUpperCase() === 'Y' && menuItem.status.toUpperCase() === 'Y' ? false : true,
79
+ disabled: item.status.toUpperCase() === 'Y' && menuItem.status.toUpperCase() === 'Y' ? false : true,
80
+ }));
81
+
82
+ if (sunItem && sunItem.length > 0) {
83
+ /**
84
+ * 子菜单和权限放在水平线上
85
+ */
86
+ sunItem = [...PermissionNodes, ...sunItem];
87
+
88
+ menuList.push({
89
+ title: (
90
+ <span
91
+ style={{
92
+ color: menuItem.status.toUpperCase() === 'Y' ? '#1890ff' : '#cccccc',
93
+ fontWeight: 'bold',
94
+ }}
95
+ >
96
+ {' '}
97
+ {menuItem.menuName}
98
+ </span>
99
+ ),
100
+ //菜单不可用,则将颜色设置为灰色,且菜单不可用
101
+ disableCheckbox: menuItem.status.toUpperCase() === 'Y' ? false : true,
102
+ disabled: menuItem.status.toUpperCase() === 'Y' ? false : true,
103
+ key: `Menu-${menuItem.menuId.toString()}`,
104
+ children: sunItem,
105
+ });
106
+ } else {
107
+ menuList.push({
108
+ title: (
109
+ <span
110
+ style={{
111
+ color: menuItem.status.toUpperCase() === 'Y' ? '#1890ff' : '#cccccc',
112
+ fontWeight: 'bold',
113
+ }}
114
+ >
115
+ {menuItem.menuName}
116
+ </span>
117
+ ),
118
+ //菜单不可用,则将颜色设置为灰色,且菜单不可用
119
+ disableCheckbox: menuItem.status.toUpperCase() === 'Y' ? false : true,
120
+ disabled: menuItem.status.toUpperCase() === 'Y' ? false : true,
121
+ key: `Menu-${menuItem.menuId.toString()}`,
122
+ children: PermissionNodes,
123
+ });
124
+ }
125
+ });
126
+
127
+ /**
128
+ * 返回处理好的菜单列表
129
+ */
130
+ return menuList;
131
+ }
132
+
133
+ return undefined;
134
+ };
135
+
136
+ /**
137
+ * 查询出所有菜单
138
+ * @returns
139
+ */
140
+ const handleSearchAllMenu = async () => {
141
+ const getAllMenus = await queryAllMenus();
142
+
143
+ const getAllPermissions = await queryAllPermissions();
144
+
145
+ /**
146
+ * 循环处理生成菜单
147
+ */
148
+ const allSunMenuData: DataNode[] | undefined = GetMenuTree(rootParentKey, getAllMenus.rows, getAllPermissions.rows);
149
+
150
+ /**
151
+ * 绑定菜单数据至变量中
152
+ */
153
+ setMenuTreeDate(allSunMenuData);
154
+ };
155
+
156
+ /**
157
+ * 提交方法
158
+ */
159
+ const handleSubmit = async () => {
160
+ if (submitting) {
161
+ return; //如果在提交 就直接返回
162
+ }
163
+ setSubmitting(true);
164
+
165
+ try {
166
+ //调用父级的方法
167
+ await onSubmit(selectPermissionList);
168
+
169
+ //弹出框关闭后,清除选择的数据
170
+ setSelectPermissionList([]);
171
+ } catch (error) {
172
+ console.error('Submit error:', error);
173
+ } finally {
174
+ setSubmitting(false);
175
+ }
176
+ };
177
+
178
+ /**
179
+ * 点击复选框
180
+ * @param checkedKeys
181
+ * @param info
182
+ */
183
+ const onCheck = (checkedKeys: React.Key[]) => {
184
+ //过滤菜单及权限,菜单是'Menu-'开头的
185
+ const allSelectKey = checkedKeys.filter((o) => !o.toString().startsWith('Menu-'));
186
+ setSelectPermissionList(allSelectKey);
187
+ };
188
+
189
+ /**
190
+ * 首次则会加载所有菜单及所有权限
191
+ */
192
+ useEffect(() => {
193
+ handleSearchAllMenu();
194
+ }, []);
195
+
196
+ /**
197
+ * 当传过来的数据有变化时,即会取出当中的数据,然后设置默认选择的权限
198
+ */
199
+ useEffect(() => {
200
+ setSelectPermissionList(values);
201
+ }, [values]);
202
+
203
+ return (
204
+ <ModalForm
205
+ form={form}
206
+ width={500}
207
+ title={formatMessage({
208
+ id: 'cfmmUI.PermissionSelect.title',
209
+ defaultMessage: '选择权限',
210
+ })}
211
+ open={modalFormVisible}
212
+ onOpenChange={setModalFormVisible}
213
+ onFinish={handleSubmit}
214
+ //关闭弹窗清除数据
215
+ modalProps={{
216
+ destroyOnHidden: true,
217
+ }}
218
+ >
219
+ <Tree
220
+ checkable
221
+ defaultExpandAll={false}
222
+ defaultCheckedKeys={selectPermissionList}
223
+ treeData={menuTreeDate}
224
+ onCheck={(checkeds) => onCheck(checkeds as React.Key[])}
225
+ />
226
+ </ModalForm>
227
+ );
228
+ };
229
+
230
+ export default React.memo(PermissionSelect);
@@ -0,0 +1,20 @@
1
+ import { Form } from 'antd';
2
+ import React from 'react';
3
+ import UTCDatePicker from './UTCDatePicker';
4
+ import { UTCProFormDatePickerProps } from '../types';
5
+
6
+ /**
7
+ * Form.Item带UTC时区转换功能的DatePicker组件
8
+ * 在antd5.19中, 日期选择器在form表单中有初始值会报错
9
+ */
10
+ const UTCProFormDatePicker = (props: UTCProFormDatePickerProps) => {
11
+ const { fieldProps, disabled, readonly, ...formItemProps } = props;
12
+
13
+ return (
14
+ <Form.Item {...formItemProps}>
15
+ <UTCDatePicker disabled={disabled} readonly={readonly} {...fieldProps} />
16
+ </Form.Item>
17
+ );
18
+ };
19
+
20
+ export default React.memo(UTCProFormDatePicker);
@@ -0,0 +1,20 @@
1
+ import { Form } from 'antd';
2
+ import React from 'react';
3
+ import UTCRangePicker from './UTCRangePicker';
4
+ import { UTCProFormRangePickerProps } from '../types';
5
+
6
+ /**
7
+ * Form.Item带UTC时区转换功能的RangePicker组件
8
+ * 在antd5.19中, 日期选择器在form表单中有初始值会报错
9
+ */
10
+ const UTCProFormDatePicker = (props: UTCProFormRangePickerProps) => {
11
+ const { fieldProps, disabled, readonly, ...formItemProps } = props;
12
+
13
+ return (
14
+ <Form.Item {...formItemProps}>
15
+ <UTCRangePicker disabled={disabled} readonly={readonly} {...fieldProps}/>
16
+ </Form.Item>
17
+ );
18
+ };
19
+
20
+ export default React.memo(UTCProFormDatePicker);
@@ -0,0 +1,93 @@
1
+ import React from 'react';
2
+ import { Spin } from 'antd';
3
+ import { isEqual } from 'lodash';
4
+ import { isComponentClass } from './Secured';
5
+ //* eslint-disable-next-line import/no-cycle*/
6
+
7
+ interface PromiseRenderProps<T, K> {
8
+ ok: T;
9
+ error: K;
10
+ promise: Promise<boolean>;
11
+ }
12
+
13
+ interface PromiseRenderState {
14
+ component: React.ComponentClass | React.FunctionComponent;
15
+ }
16
+
17
+ export default class PromiseRender<T, K> extends React.Component<
18
+ PromiseRenderProps<T, K>,
19
+ PromiseRenderState
20
+ > {
21
+ state: PromiseRenderState = {
22
+ component: () => null,
23
+ };
24
+
25
+ componentDidMount() {
26
+ this.setRenderComponent(this.props);
27
+ }
28
+
29
+ shouldComponentUpdate = (nextProps: PromiseRenderProps<T, K>, nextState: PromiseRenderState) => {
30
+ const { component } = this.state;
31
+ if (!isEqual(nextProps, this.props)) {
32
+ this.setRenderComponent(nextProps);
33
+ }
34
+ if (nextState.component !== component) return true;
35
+ return false;
36
+ };
37
+
38
+ // set render Component : ok or error
39
+ setRenderComponent(props: PromiseRenderProps<T, K>) {
40
+ const ok = this.checkIsInstantiation(props.ok);
41
+ const error = this.checkIsInstantiation(props.error);
42
+ props.promise
43
+ .then(() => {
44
+ this.setState({
45
+ component: ok,
46
+ });
47
+ return true;
48
+ })
49
+ .catch(() => {
50
+ this.setState({
51
+ component: error,
52
+ });
53
+ });
54
+ }
55
+
56
+ // Determine whether the incoming component has been instantiated
57
+ // AuthorizedRoute is already instantiated
58
+ // Authorized render is already instantiated, children is no instantiated
59
+ // Secured is not instantiated
60
+ checkIsInstantiation = (
61
+ target: React.ReactNode | React.ComponentClass,
62
+ ): React.FunctionComponent => {
63
+ if (isComponentClass(target)) {
64
+ const Target = target as React.ComponentClass;
65
+ return (props: any) => <Target {...props} />;
66
+ }
67
+ if (React.isValidElement(target)) {
68
+ return (props: any) => React.cloneElement(target, props);
69
+ }
70
+ return () => target as React.ReactNode & null;
71
+ };
72
+
73
+ render() {
74
+ const { component: Component } = this.state;
75
+ const { ok, error, promise, ...rest } = this.props;
76
+
77
+ return Component ? (
78
+ <Component {...rest} />
79
+ ) : (
80
+ <div
81
+ style={{
82
+ width: '100%',
83
+ height: '100%',
84
+ margin: 'auto',
85
+ paddingTop: 50,
86
+ textAlign: 'center',
87
+ }}
88
+ >
89
+ <Spin size="large" />
90
+ </div>
91
+ );
92
+ }
93
+ }
@@ -0,0 +1,19 @@
1
+ import { Modal, QRCode } from 'antd';
2
+ import React from 'react';
3
+ import { QrCodeModalProps } from '../types';
4
+
5
+ /** 二维码弹窗 */
6
+ const QrCodeModal: React.FC<QrCodeModalProps> = (props) => {
7
+ const { value, code, ...reset } = props;
8
+
9
+ return (
10
+ <Modal open={!!value} {...reset} onCancel={reset.onClose}>
11
+ <div style={{ display: 'flex', justifyContent: 'center' }}>
12
+ <QRCode value={value || ''} />
13
+ </div>
14
+ <span style={{ display: 'flex', justifyContent: 'center' }}>{<span>{code}</span>}</span>
15
+ </Modal>
16
+ );
17
+ };
18
+
19
+ export default React.memo(QrCodeModal);
@@ -0,0 +1,34 @@
1
+ import multiavatar from '@multiavatar/multiavatar';
2
+ import React, { useEffect, useState } from 'react';
3
+ import { RandomAvatarProps, AvatarVersion } from "../types";
4
+
5
+ /**
6
+ * 根据avatarCode生成头像组件
7
+ */
8
+ const RandomAvatar: React.FC<RandomAvatarProps> = (props) => {
9
+ const { avatarCode, sansEnv, version, width = 50, ...resetDiv } = props;
10
+ const [svgCode, setSvgCode] = useState<string>('');
11
+
12
+ const generateAvatar = (
13
+ avatarCode: string,
14
+ sansEnv?: boolean,
15
+ version?: AvatarVersion,
16
+ ) => {
17
+ let svgCode = multiavatar(avatarCode, sansEnv, version);
18
+ setSvgCode(svgCode);
19
+ };
20
+
21
+ useEffect(() => {
22
+ generateAvatar(avatarCode, sansEnv, version);
23
+ }, [avatarCode, sansEnv, version]);
24
+
25
+ return (
26
+ <div
27
+ style={{ width }}
28
+ {...resetDiv}
29
+ dangerouslySetInnerHTML={{ __html: svgCode }}
30
+ ></div>
31
+ );
32
+ };
33
+
34
+ export default RandomAvatar;
@@ -0,0 +1,75 @@
1
+ import { DrawerForm } from '@ant-design/pro-components';
2
+ import { useIntl } from '@umijs/max';
3
+ import { useMemoizedFn } from 'ahooks';
4
+ import { ForwardedRef, forwardRef, memo, useImperativeHandle, useMemo, useState } from 'react';
5
+ import { RefDrawerFormRefType, RefDrawerFormProps } from '../types';
6
+
7
+ const defaultDrawerProps = { maskClosable: false, closable: false };
8
+
9
+ // 使用ref控制弹窗显示的DrawerForm,外部不需要再关注弹窗的显隐,只需要调用ref.current.open()即可
10
+ const RefDrawerForm = <T,>(props: RefDrawerFormProps<T>, ref: ForwardedRef<RefDrawerFormRefType>) => {
11
+ const { onCloseAfter, needResetForm = true, ...drawerFormProps } = props;
12
+ const { formatMessage } = useIntl();
13
+
14
+ const [visible, setVisible] = useState(false);
15
+
16
+ useImperativeHandle(
17
+ ref,
18
+ () => ({
19
+ show: () => {
20
+ setVisible(true);
21
+ },
22
+ close: () => {
23
+ setVisible(false);
24
+ },
25
+ }),
26
+ [],
27
+ );
28
+
29
+ const handleOpenChange = useMemoizedFn((visible: boolean) => {
30
+ setVisible(visible);
31
+ if (!visible) {
32
+ if (needResetForm) {
33
+ props.form?.resetFields();
34
+ }
35
+ onCloseAfter?.();
36
+ }
37
+ });
38
+
39
+ const handleSubmit = useMemoizedFn(async (values: T) => {
40
+ const success = await props.onFinish?.(values);
41
+ if (success) {
42
+ setVisible(false);
43
+ }
44
+ });
45
+
46
+ return (
47
+ <DrawerForm<T>
48
+ width={500}
49
+ //取消点击空白处关闭修改框和关闭左上角的关闭按钮
50
+ drawerProps={defaultDrawerProps}
51
+ submitter={useMemo(
52
+ () => ({
53
+ searchConfig: {
54
+ resetText: formatMessage({ id: 'cfmmUI.common.button.cancel', defaultMessage: '取消' }),
55
+ submitText: formatMessage({ id: 'cfmmUI.common.button.submit', defaultMessage: '提交' }),
56
+ },
57
+ }),
58
+ [],
59
+ )}
60
+ {...drawerFormProps}
61
+ open={visible}
62
+ onOpenChange={handleOpenChange}
63
+ onFinish={handleSubmit}
64
+ >
65
+ {props.children}
66
+ </DrawerForm>
67
+ );
68
+ };
69
+
70
+ /**
71
+ * 使用ref控制弹窗显示的DrawerForm,外部不需要再关注弹窗的显隐,只需要调用ref.current.open()即可
72
+ */
73
+ export default memo(forwardRef(RefDrawerForm)) as <T = any>(
74
+ props: RefDrawerFormProps<T> & { ref?: ForwardedRef<RefDrawerFormRefType | undefined> },
75
+ ) => JSX.Element;