@_tc/template-core 0.0.1-bate.9 → 0.0.2

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 (589) hide show
  1. package/README.md +1108 -0
  2. package/cjs/_virtual/_rolldown/runtime.js +1 -0
  3. package/cjs/app/controller/base.js +1 -21
  4. package/cjs/app/controller/project.js +1 -50
  5. package/cjs/app/controller/view.js +1 -14
  6. package/cjs/app/data/signKey.js +1 -4
  7. package/cjs/app/extend/$fetch.js +1 -0
  8. package/cjs/app/extend/db.js +1 -12
  9. package/cjs/app/extend/generateErrorMessage.js +1 -14
  10. package/cjs/app/extend/logger.js +1 -72
  11. package/cjs/app/extend/parsingParamsOnUrl.js +1 -22
  12. package/cjs/app/extend/render-view.js +1 -21
  13. package/cjs/app/middleware/api-params-verify.js +1 -63
  14. package/cjs/app/middleware/api-sign-verify.js +1 -28
  15. package/cjs/app/middleware/error-handle.js +1 -33
  16. package/cjs/app/middleware/project-handler.js +1 -21
  17. package/cjs/app/middleware.js +1 -60
  18. package/cjs/app/router/project.js +1 -8
  19. package/cjs/app/router/view.js +1 -5
  20. package/cjs/app/router-schema/project.js +1 -33
  21. package/cjs/app/service/base.js +1 -0
  22. package/cjs/app/service/project.js +1 -42
  23. package/cjs/app/type.js +1 -2
  24. package/cjs/app/typings.js +1 -2
  25. package/cjs/bundler/defaultAlias.js +1 -0
  26. package/cjs/bundler/dev.js +1 -68
  27. package/cjs/bundler/index.js +1 -18
  28. package/cjs/bundler/prod.js +1 -19
  29. package/cjs/bundler/state.js +1 -0
  30. package/cjs/bundler/utils.js +1 -127
  31. package/cjs/index.js +1 -21
  32. package/cjs/packages/common/LRUCache.js +1 -0
  33. package/cjs/packages/common/array/index.js +1 -0
  34. package/cjs/packages/common/cache/LRUCache.js +1 -0
  35. package/cjs/packages/common/cache/index.js +1 -0
  36. package/cjs/packages/common/guards/index.js +1 -0
  37. package/cjs/packages/common/http/index.js +1 -0
  38. package/cjs/packages/common/i18n/default.js +1 -0
  39. package/cjs/packages/common/i18n/en-US.js +1 -0
  40. package/cjs/packages/common/i18n/index.js +1 -0
  41. package/cjs/packages/common/i18n/locales.js +1 -0
  42. package/cjs/packages/common/i18n/types.js +1 -0
  43. package/cjs/packages/common/index.js +1 -0
  44. package/cjs/packages/common/log/index.js +2 -0
  45. package/cjs/packages/common/number/index.js +1 -0
  46. package/cjs/packages/common/object/filterEmpty.js +1 -0
  47. package/cjs/packages/common/object/filtereEmpty.js +1 -0
  48. package/cjs/packages/common/object/index.js +1 -0
  49. package/cjs/packages/common/string/index.js +1 -0
  50. package/cjs/packages/common/types/index.js +1 -0
  51. package/cjs/packages/core/env.js +1 -25
  52. package/cjs/packages/core/index.js +1 -116
  53. package/cjs/packages/core/loader/config.js +1 -45
  54. package/cjs/packages/core/loader/controller.js +1 -40
  55. package/cjs/packages/core/loader/extend.js +1 -41
  56. package/cjs/packages/core/loader/middleware.js +1 -38
  57. package/cjs/packages/core/loader/model.js +1 -132
  58. package/cjs/packages/core/loader/router-schema.js +1 -35
  59. package/cjs/packages/core/loader/router.js +1 -62
  60. package/cjs/packages/core/loader/service.js +1 -30
  61. package/cjs/packages/core/paths.js +1 -10
  62. package/cjs/packages/core/types.js +1 -2
  63. package/cjs/packages/utils/getAllFilesInFolder.js +1 -45
  64. package/cjs/packages/utils/getAllFnReturnValue.js +1 -6
  65. package/cjs/packages/utils/index.js +1 -20
  66. package/cjs/packages/utils/loadFile.js +1 -65
  67. package/cjs/packages/utils/path.js +1 -64
  68. package/cjs/packages/utils/runFileFn.js +1 -5
  69. package/esm/_virtual/_rolldown/runtime.js +20 -0
  70. package/esm/app/controller/base.js +26 -21
  71. package/esm/app/controller/project.js +52 -42
  72. package/esm/app/controller/view.js +23 -12
  73. package/esm/app/data/signKey.js +8 -1
  74. package/esm/app/extend/$fetch.js +15 -0
  75. package/esm/app/extend/db.js +5 -8
  76. package/esm/app/extend/generateErrorMessage.js +6 -11
  77. package/esm/app/extend/logger.js +25 -36
  78. package/esm/app/extend/parsingParamsOnUrl.js +13 -19
  79. package/esm/app/extend/render-view.js +18 -15
  80. package/esm/app/middleware/api-params-verify.js +55 -57
  81. package/esm/app/middleware/api-sign-verify.js +17 -22
  82. package/esm/app/middleware/error-handle.js +23 -30
  83. package/esm/app/middleware/project-handler.js +14 -18
  84. package/esm/app/middleware.js +17 -54
  85. package/esm/app/router/project.js +6 -5
  86. package/esm/app/router/view.js +6 -2
  87. package/esm/app/router-schema/project.js +14 -30
  88. package/esm/app/service/base.js +14 -0
  89. package/esm/app/service/project.js +23 -34
  90. package/esm/app/type.js +0 -1
  91. package/esm/app/typings.js +0 -1
  92. package/esm/bundler/defaultAlias.js +4 -0
  93. package/esm/bundler/dev.js +11 -28
  94. package/esm/bundler/index.js +17 -13
  95. package/esm/bundler/prod.js +13 -15
  96. package/esm/bundler/state.js +10 -0
  97. package/esm/bundler/utils.js +191 -82
  98. package/esm/index.js +15 -12
  99. package/esm/packages/common/LRUCache.js +2 -0
  100. package/esm/packages/common/array/index.js +27 -0
  101. package/esm/packages/common/cache/LRUCache.js +39 -0
  102. package/esm/packages/common/cache/index.js +2 -0
  103. package/esm/packages/common/guards/index.js +8 -0
  104. package/esm/packages/common/http/index.js +256 -0
  105. package/esm/packages/common/i18n/default.js +88 -0
  106. package/esm/packages/common/i18n/en-US.js +88 -0
  107. package/esm/packages/common/i18n/index.js +91 -0
  108. package/esm/packages/common/i18n/locales.js +9 -0
  109. package/esm/packages/common/index.js +14 -0
  110. package/esm/packages/common/log/index.js +93 -0
  111. package/esm/packages/common/number/index.js +10 -0
  112. package/esm/packages/common/object/filterEmpty.js +23 -0
  113. package/esm/packages/common/object/filtereEmpty.js +2 -0
  114. package/esm/packages/common/object/index.js +17 -0
  115. package/esm/packages/common/string/index.js +4 -0
  116. package/esm/packages/common/types/index.js +0 -0
  117. package/esm/packages/core/env.js +24 -23
  118. package/esm/packages/core/index.js +51 -108
  119. package/esm/packages/core/loader/config.js +26 -42
  120. package/esm/packages/core/loader/controller.js +12 -37
  121. package/esm/packages/core/loader/extend.js +22 -38
  122. package/esm/packages/core/loader/middleware.js +15 -35
  123. package/esm/packages/core/loader/model.js +65 -124
  124. package/esm/packages/core/loader/router-schema.js +18 -32
  125. package/esm/packages/core/loader/router.js +35 -56
  126. package/esm/packages/core/loader/service.js +12 -27
  127. package/esm/packages/core/paths.js +7 -4
  128. package/esm/packages/core/types.js +0 -1
  129. package/esm/packages/utils/getAllFilesInFolder.js +8 -7
  130. package/esm/packages/utils/getAllFnReturnValue.js +0 -6
  131. package/esm/packages/utils/index.js +5 -4
  132. package/esm/packages/utils/loadFile.js +33 -62
  133. package/esm/packages/utils/path.js +14 -25
  134. package/esm/packages/utils/runFileFn.js +45 -1
  135. package/fe/frontend/apps/dash/Dashboard.d.ts +6 -0
  136. package/fe/frontend/apps/dash/Dashboard.js +75 -0
  137. package/fe/frontend/apps/dash/dash.entry.d.ts +2 -0
  138. package/fe/frontend/apps/dash/dash.entry.js +80 -0
  139. package/fe/frontend/apps/dash/types.d.ts +17 -0
  140. package/fe/frontend/apps/testPage/index.d.ts +3 -0
  141. package/fe/frontend/apps/testPage/index.js +6 -0
  142. package/fe/frontend/apps/testPage/testPage.entry.d.ts +2 -0
  143. package/fe/frontend/apps/testPage/testPage.entry.js +6 -0
  144. package/fe/frontend/extended/SchemaForm/data.d.ts +13 -0
  145. package/fe/frontend/extended/SchemaForm/data.js +8 -0
  146. package/fe/frontend/src/api/baseInfo.d.ts +31 -0
  147. package/fe/frontend/src/api/baseInfo.js +15 -0
  148. package/fe/frontend/src/common/CRUD/CRUD.d.ts +3 -0
  149. package/fe/frontend/src/common/CRUD/CRUD.js +2 -0
  150. package/fe/frontend/src/common/CRUD/index.d.ts +2 -0
  151. package/fe/frontend/src/common/CRUD/index.js +1 -0
  152. package/fe/frontend/src/common/auth/index.d.ts +7 -0
  153. package/fe/frontend/src/common/auth/index.js +20 -0
  154. package/fe/frontend/src/common/fetchErrorShow.d.ts +3 -0
  155. package/fe/frontend/src/common/fetchErrorShow.js +8 -0
  156. package/fe/frontend/src/common/generateMenuData.d.ts +4 -0
  157. package/fe/frontend/src/common/generateMenuData.js +12 -0
  158. package/fe/frontend/src/common/importComponent.d.ts +5 -0
  159. package/fe/frontend/src/common/importComponent.js +8 -0
  160. package/fe/frontend/src/common/language.d.ts +2 -0
  161. package/fe/frontend/src/common/language.js +9 -0
  162. package/fe/frontend/src/common/logFn/index.d.ts +5 -0
  163. package/fe/frontend/src/common/logFn/index.js +9 -0
  164. package/fe/frontend/src/common/menu.d.ts +34 -0
  165. package/fe/frontend/src/common/menu.js +101 -0
  166. package/fe/frontend/src/common/request.d.ts +37 -0
  167. package/fe/frontend/src/common/request.js +217 -0
  168. package/fe/frontend/src/components/AsyncSelect/AsyncSelect.d.ts +8 -0
  169. package/fe/frontend/src/components/AsyncSelect/AsyncSelect.js +32 -0
  170. package/fe/frontend/src/components/AsyncSelect/index.d.ts +4 -0
  171. package/fe/frontend/src/components/AsyncSelect/index.js +3 -0
  172. package/fe/frontend/src/components/BasePage/HeaderView.d.ts +9 -0
  173. package/fe/frontend/src/components/BasePage/HeaderView.js +14 -0
  174. package/fe/frontend/src/components/Router/index.d.ts +9 -0
  175. package/fe/frontend/src/components/Router/index.js +11 -0
  176. package/fe/frontend/src/components/Router/type.d.ts +2 -0
  177. package/fe/frontend/src/components/Router/type.js +1 -0
  178. package/fe/frontend/src/defaultPages/Iframe/index.d.ts +3 -0
  179. package/fe/frontend/src/defaultPages/Iframe/index.js +14 -0
  180. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/DetailPanel.d.ts +7 -0
  181. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/DetailPanel.js +94 -0
  182. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/PopFrom.d.ts +13 -0
  183. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/PopFrom.js +124 -0
  184. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/builtIn.d.ts +44 -0
  185. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/builtIn.js +7 -0
  186. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/data.d.ts +4 -0
  187. package/fe/frontend/src/defaultPages/SchemaPage/components/CallCom/data.js +6 -0
  188. package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaSearch/index.d.ts +3 -0
  189. package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaSearch/index.js +63 -0
  190. package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaTable/index.d.ts +11 -0
  191. package/fe/frontend/src/defaultPages/SchemaPage/components/SchemaTable/index.js +188 -0
  192. package/fe/frontend/src/defaultPages/SchemaPage/data/eventInfo.d.ts +8 -0
  193. package/fe/frontend/src/defaultPages/SchemaPage/data/eventInfo.js +6 -0
  194. package/fe/frontend/src/defaultPages/SchemaPage/data/index.d.ts +3 -0
  195. package/fe/frontend/src/defaultPages/SchemaPage/data/index.js +1 -0
  196. package/fe/frontend/src/defaultPages/SchemaPage/hooks/useComConfig.d.ts +10 -0
  197. package/fe/frontend/src/defaultPages/SchemaPage/hooks/useComConfig.js +14 -0
  198. package/fe/frontend/src/defaultPages/SchemaPage/index.css +167 -0
  199. package/fe/frontend/src/defaultPages/SchemaPage/index.d.ts +4 -0
  200. package/fe/frontend/src/defaultPages/SchemaPage/index.js +75 -0
  201. package/fe/frontend/src/defaultPages/SchemaPage/schemaType.d.ts +51 -0
  202. package/fe/frontend/src/defaultPages/SchemaPage/schemaType.js +4 -0
  203. package/fe/frontend/src/defaultPages/SchemaPage/utils/permissions.d.ts +3 -0
  204. package/fe/frontend/src/defaultPages/SchemaPage/utils/permissions.js +3 -0
  205. package/fe/frontend/src/defaultPages/SchemaPage/utils/schemaConversion.d.ts +3 -0
  206. package/fe/frontend/src/defaultPages/SchemaPage/utils/schemaConversion.js +115 -0
  207. package/fe/frontend/src/defaultPages/SchemaPage/utils/validator.d.ts +7 -0
  208. package/fe/frontend/src/defaultPages/SchemaPage/utils/validator.js +36 -0
  209. package/fe/frontend/src/defaultPages/SidebarSlotPage/SidebarSlotContainer.d.ts +10 -0
  210. package/fe/frontend/src/defaultPages/SidebarSlotPage/SidebarSlotContainer.js +38 -0
  211. package/fe/frontend/src/defaultPages/SidebarSlotPage/index.d.ts +3 -0
  212. package/fe/frontend/src/defaultPages/SidebarSlotPage/index.js +16 -0
  213. package/fe/frontend/src/defaultPages/SidebarSlotPageTmp.d.ts +3 -0
  214. package/fe/frontend/src/defaultPages/SidebarSlotPageTmp.js +17 -0
  215. package/fe/frontend/src/defaultPages/SlotPage/index.d.ts +3 -0
  216. package/fe/frontend/src/defaultPages/SlotPage/index.js +26 -0
  217. package/fe/frontend/src/exportStore.d.ts +17 -0
  218. package/fe/frontend/src/exportStore.js +16 -0
  219. package/fe/frontend/src/hooks/useCurrentMenuData.d.ts +19 -0
  220. package/fe/frontend/src/hooks/useCurrentMenuData.js +28 -0
  221. package/fe/frontend/src/hooks/useRouterParams.d.ts +5 -0
  222. package/fe/frontend/src/hooks/useRouterParams.js +11 -0
  223. package/fe/frontend/src/index.d.ts +16 -0
  224. package/fe/frontend/src/index.js +13 -0
  225. package/fe/frontend/src/main.css +96 -0
  226. package/fe/frontend/src/main.d.ts +27 -0
  227. package/fe/frontend/src/main.js +72 -0
  228. package/fe/frontend/src/stores/apiFreezer.d.ts +93 -0
  229. package/fe/frontend/src/stores/apiFreezer.js +49 -0
  230. package/fe/frontend/src/stores/mode.d.ts +19 -0
  231. package/fe/frontend/src/stores/mode.js +37 -0
  232. package/fe/frontend/src/stores/schemaEventBus.d.ts +42 -0
  233. package/fe/frontend/src/stores/schemaEventBus.js +70 -0
  234. package/fe/frontend/src/stores/schemaStore.d.ts +47 -0
  235. package/fe/frontend/src/stores/schemaStore.js +26 -0
  236. package/fe/frontend/src/typing/scalability.d.ts +47 -0
  237. package/fe/frontend/src/typing/scalability.js +1 -0
  238. package/fe/frontend/src/typing/window.d.ts +7 -0
  239. package/fe/frontend/src/typing/window.js +1 -0
  240. package/fe/model/types/data/button.d.ts +32 -0
  241. package/fe/model/types/data/button.js +16 -0
  242. package/fe/model/types/data/component.d.ts +40 -0
  243. package/fe/model/types/data/component.js +11 -0
  244. package/fe/model/types/data/fetchInfo.d.ts +20 -0
  245. package/fe/model/types/data/fetchInfo.js +1 -0
  246. package/fe/model/types/data/schema.d.ts +98 -0
  247. package/fe/model/types/data/schema.js +1 -0
  248. package/fe/model/types/data/search.d.ts +7 -0
  249. package/fe/model/types/data/search.js +1 -0
  250. package/fe/model/types/menuType.d.ts +73 -0
  251. package/fe/model/types/menuType.js +1 -0
  252. package/fe/model/types/model.d.ts +33 -0
  253. package/fe/model/types/model.js +1 -0
  254. package/fe/packages/common/array/index.d.ts +7 -0
  255. package/fe/packages/common/array/index.js +40 -0
  256. package/fe/packages/common/cache/LRUCache.d.ts +13 -0
  257. package/fe/packages/common/cache/LRUCache.js +47 -0
  258. package/fe/packages/common/cache/index.d.ts +2 -0
  259. package/fe/packages/common/cache/index.js +1 -0
  260. package/fe/packages/common/guards/index.d.ts +9 -0
  261. package/fe/packages/common/guards/index.js +24 -0
  262. package/fe/packages/common/http/index.d.ts +90 -0
  263. package/fe/packages/common/http/index.js +310 -0
  264. package/fe/packages/common/i18n/default.d.ts +92 -0
  265. package/fe/packages/common/i18n/default.js +90 -0
  266. package/fe/packages/common/i18n/en-US.d.ts +92 -0
  267. package/fe/packages/common/i18n/en-US.js +90 -0
  268. package/fe/packages/common/i18n/index.d.ts +43 -0
  269. package/fe/packages/common/i18n/index.js +173 -0
  270. package/fe/packages/common/i18n/locales.d.ts +8 -0
  271. package/fe/packages/common/i18n/locales.js +10 -0
  272. package/fe/packages/common/i18n/types.d.ts +71 -0
  273. package/fe/packages/common/i18n/types.js +1 -0
  274. package/fe/packages/common/index.d.ts +11 -0
  275. package/fe/packages/common/index.js +10 -0
  276. package/fe/packages/common/log/index.d.ts +33 -0
  277. package/fe/packages/common/log/index.js +176 -0
  278. package/fe/packages/common/number/index.d.ts +3 -0
  279. package/fe/packages/common/number/index.js +10 -0
  280. package/fe/packages/common/object/filterEmpty.d.ts +3 -0
  281. package/fe/packages/common/object/filterEmpty.js +33 -0
  282. package/fe/packages/common/object/index.d.ts +5 -0
  283. package/fe/packages/common/object/index.js +25 -0
  284. package/fe/packages/common/string/index.d.ts +4 -0
  285. package/fe/packages/common/string/index.js +17 -0
  286. package/fe/packages/common/types/index.d.ts +4 -0
  287. package/fe/packages/common/types/index.js +1 -0
  288. package/fe/packages/ui/react/components/Button/Button.d.ts +29 -10
  289. package/fe/packages/ui/react/components/Button/Button.js +53 -23
  290. package/fe/packages/ui/react/components/Button/SumbitButton.d.ts +2 -2
  291. package/fe/packages/ui/react/components/Button/SumbitButton.js +3 -10
  292. package/fe/packages/ui/react/components/Button/index.d.ts +1 -1
  293. package/fe/packages/ui/react/components/Checkbox/Checkbox.d.ts +1 -1
  294. package/fe/packages/ui/react/components/Checkbox/Checkbox.js +5 -3
  295. package/fe/packages/ui/react/components/ConfirmDialog/ConfirmDialog.js +11 -0
  296. package/fe/packages/ui/react/components/ConfirmDialog/index.d.ts +2 -0
  297. package/fe/packages/ui/react/components/ConfirmDialog/index.js +1 -0
  298. package/fe/packages/ui/react/components/DataTable/ActionBtn.d.ts +3 -1
  299. package/fe/packages/ui/react/components/DataTable/ActionBtn.js +87 -4
  300. package/fe/packages/ui/react/components/DataTable/{data-table.d.ts → index.d.ts} +12 -4
  301. package/fe/packages/ui/react/components/DataTable/index.js +187 -0
  302. package/fe/packages/ui/react/components/Date/Calendar.js +4 -3
  303. package/fe/packages/ui/react/components/Date/Date.d.ts +5 -3
  304. package/fe/packages/ui/react/components/Date/Date.js +71 -48
  305. package/fe/packages/ui/react/components/Date/TimePicker.js +3 -1
  306. package/fe/packages/ui/react/components/Date/dropdownPositioning.d.ts +3 -0
  307. package/fe/packages/ui/react/components/Date/dropdownPositioning.js +12 -0
  308. package/fe/packages/ui/react/components/Date/locales.d.ts +1 -0
  309. package/fe/packages/ui/react/components/Date/locales.js +7 -38
  310. package/fe/packages/ui/react/components/Drawer/Drawer.d.ts +29 -0
  311. package/fe/packages/ui/react/components/Drawer/Drawer.js +100 -0
  312. package/fe/packages/ui/react/components/Drawer/index.d.ts +3 -0
  313. package/fe/packages/ui/react/components/Drawer/index.js +1 -0
  314. package/fe/packages/ui/react/components/Dropdown/Dropdown.d.ts +26 -0
  315. package/fe/packages/ui/react/components/Dropdown/Dropdown.js +49 -0
  316. package/fe/packages/ui/react/components/Dropdown/index.d.ts +2 -0
  317. package/fe/packages/ui/react/components/Dropdown/index.js +1 -0
  318. package/fe/packages/ui/react/components/Form/Form.js +1 -1
  319. package/fe/packages/ui/react/components/Form/FormItem.js +1 -1
  320. package/fe/packages/ui/react/components/Form/SchemaForm/data.d.ts +40 -0
  321. package/fe/packages/ui/react/components/Form/SchemaForm/data.js +18 -0
  322. package/fe/packages/ui/react/components/Form/{SchemeForm → SchemaForm}/index.d.ts +15 -14
  323. package/fe/packages/ui/react/components/Form/SchemaForm/index.js +79 -0
  324. package/fe/packages/ui/react/components/Form/index.d.ts +1 -1
  325. package/fe/packages/ui/react/components/Form/index.js +1 -1
  326. package/fe/packages/ui/react/components/ImagePreview/ImagePreview.js +15 -12
  327. package/fe/packages/ui/react/components/ImagePreview/PreviewImage.js +5 -2
  328. package/fe/packages/ui/react/components/Input/Input.d.ts +5 -1
  329. package/fe/packages/ui/react/components/Input/Input.js +5 -4
  330. package/fe/packages/ui/react/components/InputNumber/InputNumber.d.ts +28 -0
  331. package/fe/packages/ui/react/components/InputNumber/InputNumber.js +144 -0
  332. package/fe/packages/ui/react/components/InputNumber/index.d.ts +2 -0
  333. package/fe/packages/ui/react/components/InputNumber/index.js +1 -0
  334. package/fe/packages/ui/react/components/InputNumber/inputNumberUtils.d.ts +30 -0
  335. package/fe/packages/ui/react/components/InputNumber/inputNumberUtils.js +63 -0
  336. package/fe/packages/ui/react/components/InputNumber/inputNumberUtils.test.d.ts +2 -0
  337. package/fe/packages/ui/react/components/InputNumber/inputNumberUtils.test.js +27 -0
  338. package/fe/packages/ui/react/components/Label/Label.js +2 -2
  339. package/fe/packages/ui/react/components/Menu/Menu.d.ts +18 -0
  340. package/fe/packages/ui/react/components/Menu/Menu.js +102 -0
  341. package/fe/packages/ui/react/components/Menu/MenuContext.d.ts +39 -0
  342. package/fe/packages/ui/react/components/Menu/MenuContext.js +97 -0
  343. package/fe/packages/ui/react/components/Menu/MenuItem.d.ts +3 -0
  344. package/fe/packages/ui/react/components/Menu/MenuItem.js +33 -0
  345. package/fe/packages/ui/react/components/Menu/SubMenu.d.ts +10 -0
  346. package/fe/packages/ui/react/components/Menu/SubMenu.js +169 -0
  347. package/fe/packages/ui/react/components/Menu/index.d.ts +9 -0
  348. package/fe/packages/ui/react/components/Menu/index.js +5 -0
  349. package/fe/packages/ui/react/components/Menu/menuTypes.d.ts +59 -0
  350. package/fe/packages/ui/react/components/Menu/menuTypes.js +1 -0
  351. package/fe/packages/ui/react/components/Menu/utils.d.ts +2 -0
  352. package/fe/packages/ui/react/components/Menu/utils.js +7 -0
  353. package/fe/packages/ui/react/components/Message/Message.js +4 -1
  354. package/fe/packages/ui/react/components/Modal/Modal.d.ts +3 -1
  355. package/fe/packages/ui/react/components/Modal/Modal.js +6 -43
  356. package/fe/packages/ui/react/components/Modal/ModalManager.js +4 -3
  357. package/fe/packages/ui/react/components/Overlay/Overlay.d.ts +23 -0
  358. package/fe/packages/ui/react/components/Overlay/Overlay.js +53 -0
  359. package/fe/packages/ui/react/components/Overlay/index.d.ts +3 -0
  360. package/fe/packages/ui/react/components/Overlay/index.js +1 -0
  361. package/fe/packages/ui/react/components/{Pagination.js → Pagination/Pagination.js} +4 -4
  362. package/fe/packages/ui/react/components/Pagination/index.d.ts +2 -0
  363. package/fe/packages/ui/react/components/Pagination/index.js +1 -0
  364. package/fe/packages/ui/react/components/Popup/Popup.d.ts +26 -0
  365. package/fe/packages/ui/react/components/Popup/Popup.js +81 -0
  366. package/fe/packages/ui/react/components/Popup/index.d.ts +2 -0
  367. package/fe/packages/ui/react/components/Popup/index.js +1 -0
  368. package/fe/packages/ui/react/components/Search/Search.d.ts +2 -2
  369. package/fe/packages/ui/react/components/Search/Search.js +3 -3
  370. package/fe/packages/ui/react/components/Select/Select.d.ts +5 -0
  371. package/fe/packages/ui/react/components/Select/Select.js +52 -109
  372. package/fe/packages/ui/react/components/Select/dropdownPositioning.d.ts +3 -0
  373. package/fe/packages/ui/react/components/Select/dropdownPositioning.js +13 -0
  374. package/fe/packages/ui/react/components/Skeleton/Skeleton.js +2 -2
  375. package/fe/packages/ui/react/components/Switch/Switch.js +3 -1
  376. package/fe/packages/ui/react/components/TableSearch/TableSearch.d.ts +5 -4
  377. package/fe/packages/ui/react/components/TableSearch/TableSearch.js +23 -21
  378. package/fe/packages/ui/react/components/TableSearch/lang.js +5 -14
  379. package/fe/packages/ui/react/components/{Textarea.d.ts → Textarea/Textarea.d.ts} +11 -3
  380. package/fe/packages/ui/react/components/Textarea/Textarea.js +37 -0
  381. package/fe/packages/ui/react/components/Textarea/index.d.ts +2 -0
  382. package/fe/packages/ui/react/components/Textarea/index.js +1 -0
  383. package/fe/packages/ui/react/components/{Tooltip.d.ts → Tooltip/Tooltip.d.ts} +2 -2
  384. package/fe/packages/ui/react/components/Tooltip/Tooltip.js +79 -0
  385. package/fe/packages/ui/react/components/Tooltip/index.d.ts +2 -0
  386. package/fe/packages/ui/react/components/Tooltip/index.js +1 -0
  387. package/fe/packages/ui/react/components/{TreeSelect.js → TreeSelect/TreeSelect.js} +9 -11
  388. package/fe/packages/ui/react/components/TreeSelect/index.d.ts +2 -0
  389. package/fe/packages/ui/react/components/TreeSelect/index.js +1 -0
  390. package/fe/packages/ui/react/components/Upload/ImageUpload.js +18 -6
  391. package/fe/packages/ui/react/components/Upload/Upload.js +2 -1
  392. package/fe/packages/ui/react/components/{breadcrumb.js → breadcrumb/breadcrumb.js} +15 -12
  393. package/fe/packages/ui/react/components/breadcrumb/index.d.ts +2 -0
  394. package/fe/packages/ui/react/components/breadcrumb/index.js +1 -0
  395. package/fe/packages/ui/react/components/hooks/useDropdownPositioning.d.ts +49 -0
  396. package/fe/packages/ui/react/components/hooks/useDropdownPositioning.js +137 -0
  397. package/fe/packages/ui/react/components/index.d.ts +7 -1
  398. package/fe/packages/ui/react/components/index.js +7 -1
  399. package/fe/packages/ui/react/components/table/index.d.ts +2 -0
  400. package/fe/packages/ui/react/components/table/index.js +1 -0
  401. package/fe/packages/ui/react/components/{table.d.ts → table/table.d.ts} +12 -2
  402. package/fe/packages/ui/react/components/table/table.js +116 -0
  403. package/fe/packages/ui/react/components/testPage/MenuTestPage.d.ts +2 -0
  404. package/fe/packages/ui/react/components/testPage/MenuTestPage.js +104 -0
  405. package/fe/packages/ui/react/components/testPage/index.js +300 -81
  406. package/fe/packages/ui/react/hooks/useExecuteOnce.d.ts +30 -0
  407. package/fe/packages/ui/react/hooks/useExecuteOnce.js +57 -0
  408. package/fe/packages/ui/react/hooks/useInit.d.ts +1 -1
  409. package/fe/packages/ui/react/hooks/useInit.js +1 -1
  410. package/fe/packages/ui/react/hooks/useLanguage.d.ts +1 -6
  411. package/fe/packages/ui/react/hooks/useRefState.d.ts +30 -0
  412. package/fe/packages/ui/react/hooks/useRefState.js +29 -0
  413. package/fe/packages/ui/react/hooks/useWatch.d.ts +23 -0
  414. package/fe/packages/ui/react/hooks/useWatch.js +87 -0
  415. package/fe/packages/ui/react/hooks/useWatch.test.d.ts +2 -0
  416. package/fe/packages/ui/react/hooks/useWatch.test.js +22 -0
  417. package/fe/packages/ui/react/i18n/I18nProvider.d.ts +31 -0
  418. package/fe/packages/ui/react/i18n/I18nProvider.js +25 -0
  419. package/fe/packages/ui/react/i18n/index.d.ts +4 -0
  420. package/fe/packages/ui/react/i18n/index.js +3 -0
  421. package/fe/packages/ui/react/i18n/useI18n.d.ts +13 -0
  422. package/fe/packages/ui/react/i18n/useI18n.js +18 -0
  423. package/fe/packages/ui/react/index.css +238 -0
  424. package/fe/packages/ui/react/index.d.ts +2 -0
  425. package/fe/packages/ui/react/index.js +2 -0
  426. package/fe/packages/ui/react/lib/createStoreHook.d.ts +9 -0
  427. package/fe/packages/ui/react/lib/createStoreHook.js +6 -0
  428. package/fe/packages/ui/react/lib/export.d.ts +2 -2
  429. package/fe/packages/ui/react/stores/language.d.ts +3 -12
  430. package/fe/packages/ui/react/stores/language.js +2 -51
  431. package/fe/typings/type.d.ts +5 -0
  432. package/fe/typings/type.js +1 -0
  433. package/model/index.d.ts +2 -0
  434. package/model/test.d.ts +2 -0
  435. package/model/types/data/button.d.ts +32 -0
  436. package/model/types/data/component.d.ts +40 -0
  437. package/model/types/data/fetchInfo.d.ts +20 -0
  438. package/model/types/data/schema.d.ts +98 -0
  439. package/model/types/data/search.d.ts +7 -0
  440. package/model/types/index.d.ts +3 -0
  441. package/model/types/menuType.d.ts +73 -0
  442. package/model/types/model.d.ts +33 -0
  443. package/package.json +36 -17
  444. package/{cjs → types}/app/controller/base.d.ts +4 -5
  445. package/types/app/controller/project.d.ts +22 -0
  446. package/{cjs → types}/app/controller/view.d.ts +1 -2
  447. package/types/app/extend/$fetch.d.ts +8 -0
  448. package/{cjs → types}/app/extend/db.d.ts +1 -1
  449. package/{cjs → types}/app/extend/logger.d.ts +1 -1
  450. package/{cjs → types}/app/extend/render-view.d.ts +1 -2
  451. package/{cjs → types}/app/middleware/api-params-verify.d.ts +1 -2
  452. package/{cjs → types}/app/middleware/api-sign-verify.d.ts +1 -2
  453. package/{esm/app/middleware/api-sign-verify.d.ts → types/app/middleware/error-handle.d.ts} +1 -3
  454. package/{cjs → types}/app/middleware/project-handler.d.ts +2 -2
  455. package/{cjs → types}/app/middleware.d.ts +0 -2
  456. package/{cjs/app/router/view.d.ts → types/app/router/project.d.ts} +1 -1
  457. package/types/app/router/view.d.ts +3 -0
  458. package/{cjs → types}/app/router-schema/project.d.ts +1 -1
  459. package/types/app/service/base.d.ts +9 -0
  460. package/types/app/service/project.d.ts +57 -0
  461. package/types/app/type.d.ts +5 -0
  462. package/{cjs → types}/app/typings.d.ts +17 -23
  463. package/types/bundler/defaultAlias.d.ts +3 -0
  464. package/types/bundler/index.d.ts +2 -0
  465. package/types/bundler/state.d.ts +18 -0
  466. package/types/bundler/utils.d.ts +9 -0
  467. package/types/config/config.default.d.ts +14 -0
  468. package/types/index.d.ts +28 -0
  469. package/types/packages/common/LRUCache.d.ts +1 -0
  470. package/types/packages/common/array/index.d.ts +6 -0
  471. package/types/packages/common/cache/LRUCache.d.ts +12 -0
  472. package/types/packages/common/cache/index.d.ts +1 -0
  473. package/types/packages/common/guards/index.d.ts +8 -0
  474. package/types/packages/common/http/index.d.ts +89 -0
  475. package/types/packages/common/i18n/default.d.ts +91 -0
  476. package/types/packages/common/i18n/en-US.d.ts +91 -0
  477. package/types/packages/common/i18n/index.d.ts +42 -0
  478. package/types/packages/common/i18n/locales.d.ts +7 -0
  479. package/types/packages/common/i18n/types.d.ts +70 -0
  480. package/types/packages/common/index.d.ts +10 -0
  481. package/types/packages/common/log/index.d.ts +32 -0
  482. package/types/packages/common/number/index.d.ts +2 -0
  483. package/types/packages/common/object/filterEmpty.d.ts +2 -0
  484. package/types/packages/common/object/filtereEmpty.d.ts +1 -0
  485. package/types/packages/common/object/index.d.ts +4 -0
  486. package/types/packages/common/string/index.d.ts +3 -0
  487. package/types/packages/common/types/index.d.ts +3 -0
  488. package/{cjs → types}/packages/core/index.d.ts +1 -1
  489. package/{cjs → types}/packages/core/loader/config.d.ts +1 -1
  490. package/{cjs → types}/packages/core/loader/controller.d.ts +2 -2
  491. package/{cjs → types}/packages/core/loader/middleware.d.ts +1 -1
  492. package/{esm → types}/packages/core/loader/model.d.ts +2 -3
  493. package/{cjs → types}/packages/core/loader/router-schema.d.ts +2 -2
  494. package/{cjs → types}/packages/core/loader/router.d.ts +1 -1
  495. package/{cjs → types}/packages/core/loader/service.d.ts +2 -2
  496. package/{cjs → types}/packages/core/types.d.ts +42 -3
  497. package/types/packages/utils/getAllFnReturnValue.d.ts +0 -0
  498. package/types/packages/utils/runFileFn.d.ts +7 -0
  499. package/types/typings/type.d.ts +4 -0
  500. package/cjs/app/controller/project.d.ts +0 -11
  501. package/cjs/app/middleware/error-handle.d.ts +0 -5
  502. package/cjs/app/router/project.d.ts +0 -4
  503. package/cjs/app/service/bese.d.ts +0 -10
  504. package/cjs/app/service/bese.js +0 -17
  505. package/cjs/app/service/project.d.ts +0 -27
  506. package/cjs/app/type.d.ts +0 -2
  507. package/cjs/bundler/index.d.ts +0 -1
  508. package/cjs/bundler/utils.d.ts +0 -7
  509. package/cjs/index.d.ts +0 -28
  510. package/cjs/packages/core/loader/model.d.ts +0 -36
  511. package/cjs/packages/utils/runFileFn.d.ts +0 -5
  512. package/cjs/typings/type.d.ts +0 -4
  513. package/cjs/typings/type.js +0 -2
  514. package/esm/app/controller/base.d.ts +0 -14
  515. package/esm/app/controller/project.d.ts +0 -12
  516. package/esm/app/controller/view.d.ts +0 -9
  517. package/esm/app/data/signKey.d.ts +0 -2
  518. package/esm/app/extend/db.d.ts +0 -3
  519. package/esm/app/extend/generateErrorMessage.d.ts +0 -8
  520. package/esm/app/extend/logger.d.ts +0 -12
  521. package/esm/app/extend/parsingParamsOnUrl.d.ts +0 -3
  522. package/esm/app/extend/render-view.d.ts +0 -5
  523. package/esm/app/middleware/api-params-verify.d.ts +0 -6
  524. package/esm/app/middleware/error-handle.d.ts +0 -6
  525. package/esm/app/middleware/project-handler.d.ts +0 -5
  526. package/esm/app/middleware.d.ts +0 -6
  527. package/esm/app/router/project.d.ts +0 -5
  528. package/esm/app/router/view.d.ts +0 -5
  529. package/esm/app/router-schema/project.d.ts +0 -4
  530. package/esm/app/service/bese.d.ts +0 -11
  531. package/esm/app/service/bese.js +0 -12
  532. package/esm/app/service/project.d.ts +0 -28
  533. package/esm/app/type.d.ts +0 -3
  534. package/esm/app/typings.d.ts +0 -50
  535. package/esm/bundler/dev.d.ts +0 -2
  536. package/esm/bundler/index.d.ts +0 -2
  537. package/esm/bundler/prod.d.ts +0 -2
  538. package/esm/bundler/utils.d.ts +0 -8
  539. package/esm/index.d.ts +0 -29
  540. package/esm/packages/core/env.d.ts +0 -16
  541. package/esm/packages/core/index.d.ts +0 -7
  542. package/esm/packages/core/loader/config.d.ts +0 -10
  543. package/esm/packages/core/loader/controller.d.ts +0 -18
  544. package/esm/packages/core/loader/extend.d.ts +0 -9
  545. package/esm/packages/core/loader/middleware.d.ts +0 -12
  546. package/esm/packages/core/loader/router-schema.d.ts +0 -19
  547. package/esm/packages/core/loader/router.d.ts +0 -9
  548. package/esm/packages/core/loader/service.d.ts +0 -18
  549. package/esm/packages/core/paths.d.ts +0 -12
  550. package/esm/packages/core/types.d.ts +0 -75
  551. package/esm/packages/utils/getAllFilesInFolder.d.ts +0 -10
  552. package/esm/packages/utils/getAllFnReturnValue.d.ts +0 -1
  553. package/esm/packages/utils/index.d.ts +0 -5
  554. package/esm/packages/utils/loadFile.d.ts +0 -21
  555. package/esm/packages/utils/path.d.ts +0 -25
  556. package/esm/packages/utils/runFileFn.d.ts +0 -6
  557. package/esm/typings/type.d.ts +0 -5
  558. package/fe/frontend/main.d.ts +0 -3
  559. package/fe/frontend/main.js +0 -6
  560. package/fe/packages/ui/react/components/ConfirmDialog.js +0 -9
  561. package/fe/packages/ui/react/components/DataTable/data-table.js +0 -141
  562. package/fe/packages/ui/react/components/Dropdown.d.ts +0 -16
  563. package/fe/packages/ui/react/components/Dropdown.js +0 -54
  564. package/fe/packages/ui/react/components/Form/SchemeForm/data.d.ts +0 -51
  565. package/fe/packages/ui/react/components/Form/SchemeForm/data.js +0 -8
  566. package/fe/packages/ui/react/components/Form/SchemeForm/index.js +0 -69
  567. package/fe/packages/ui/react/components/Textarea.js +0 -35
  568. package/fe/packages/ui/react/components/Tooltip.js +0 -118
  569. package/fe/packages/ui/react/components/table.js +0 -20
  570. package/fe/packages/ui/react/locales/index.d.ts +0 -8
  571. package/fe/packages/ui/react/locales/index.js +0 -6
  572. /package/{cjs/packages/utils/getAllFnReturnValue.d.ts → esm/packages/common/i18n/types.js} +0 -0
  573. /package/{esm/typings/type.js → fe/frontend/apps/dash/types.js} +0 -0
  574. /package/fe/packages/ui/react/components/{ConfirmDialog.d.ts → ConfirmDialog/ConfirmDialog.d.ts} +0 -0
  575. /package/fe/packages/ui/react/components/{Pagination.d.ts → Pagination/Pagination.d.ts} +0 -0
  576. /package/fe/packages/ui/react/components/{TreeSelect.d.ts → TreeSelect/TreeSelect.d.ts} +0 -0
  577. /package/fe/packages/ui/react/components/{breadcrumb.d.ts → breadcrumb/breadcrumb.d.ts} +0 -0
  578. /package/{cjs → types}/app/data/signKey.d.ts +0 -0
  579. /package/{cjs → types}/app/extend/generateErrorMessage.d.ts +0 -0
  580. /package/{cjs → types}/app/extend/parsingParamsOnUrl.d.ts +0 -0
  581. /package/{cjs → types}/bundler/dev.d.ts +0 -0
  582. /package/{cjs → types}/bundler/prod.d.ts +0 -0
  583. /package/{cjs → types}/packages/core/env.d.ts +0 -0
  584. /package/{cjs → types}/packages/core/loader/extend.d.ts +0 -0
  585. /package/{cjs → types}/packages/core/paths.d.ts +0 -0
  586. /package/{cjs → types}/packages/utils/getAllFilesInFolder.d.ts +0 -0
  587. /package/{cjs → types}/packages/utils/index.d.ts +0 -0
  588. /package/{cjs → types}/packages/utils/loadFile.d.ts +0 -0
  589. /package/{cjs → types}/packages/utils/path.d.ts +0 -0
@@ -0,0 +1,63 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getText } from '../../../../common/language';
3
+ import { schemaEventBus } from '../../../../stores/schemaEventBus';
4
+ import { useSchemaStore } from '../../../../stores/schemaStore';
5
+ import { filterEmpty } from '../../../../../../packages/common/index.js';
6
+ import { TableSearch } from '../../../../../../packages/ui/react/components';
7
+ import useInit from '../../../../../../packages/ui/react/hooks/useInit';
8
+ import { memo, useState } from 'react';
9
+ const generateSchemas = (config) => {
10
+ // TODO ? 是否需要缓存
11
+ // const { comSchemaCache } = schemaStore.getState()
12
+ // if (comSchemaCache.has(schemaKey)) {
13
+ // }
14
+ const keys = Object.keys(config);
15
+ const schemas = [];
16
+ let defaultValue = undefined;
17
+ keys.forEach((k) => {
18
+ const fieldInfo = config[k];
19
+ if (fieldInfo?.option) {
20
+ const { comType = 'input', default: defaultFieldValue, ...fieldProps } = fieldInfo.option;
21
+ if (typeof defaultFieldValue !== 'undefined') {
22
+ if (!defaultValue) {
23
+ defaultValue = {};
24
+ }
25
+ defaultValue[k] = defaultFieldValue;
26
+ }
27
+ schemas.push({
28
+ label: getText(fieldInfo.label),
29
+ key: k,
30
+ type: comType,
31
+ fieldProps,
32
+ });
33
+ }
34
+ });
35
+ return { schemas, defaultValue };
36
+ };
37
+ const SchemaSearch = memo(() => {
38
+ // 暂时没有 config
39
+ const schema = useSchemaStore((s) => s.searchSchema);
40
+ const [schemas, setSchemas] = useState([]);
41
+ const [defaultValue, setSchemaDefaultValue] = useState(undefined);
42
+ useInit(() => {
43
+ const { schemas, defaultValue } = generateSchemas(schema.properties);
44
+ setSchemas(schemas);
45
+ setSchemaDefaultValue(defaultValue);
46
+ });
47
+ const tsProps = {
48
+ schemas,
49
+ defaultValue,
50
+ onSearch(values) {
51
+ schemaEventBus.getState().emitSearch(filterEmpty(values));
52
+ },
53
+ onReset() {
54
+ schemaEventBus.getState().emitSearch(undefined);
55
+ },
56
+ renderActionBtnArea: () => {
57
+ return undefined;
58
+ },
59
+ };
60
+ return (_jsx("div", { className: "schema-search", children: _jsx(TableSearch, { ...tsProps }) }));
61
+ });
62
+ SchemaSearch.displayName = 'SchemaSearch';
63
+ export default SchemaSearch;
@@ -0,0 +1,11 @@
1
+ import { Ref } from 'react';
2
+ import { SchemaDefaultValue } from '../../schemaType';
3
+ export type SchemaTableRef = {
4
+ initData: (query?: SchemaDefaultValue) => Promise<void>;
5
+ };
6
+ export interface SchemaTableProps {
7
+ ref?: Ref<SchemaTableRef>;
8
+ }
9
+ declare const SchemaTable: import("react").MemoExoticComponent<({ ref }: SchemaTableProps) => import("react/jsx-runtime").JSX.Element>;
10
+ export default SchemaTable;
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,188 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { handlingRequestErrors } from '../../../../common/fetchErrorShow';
3
+ import { getText } from '../../../../common/language';
4
+ import { del, get } from '../../../../common/request';
5
+ import { schemaEventBus } from '../../../../stores/schemaEventBus';
6
+ import { useSchemaStore } from '../../../../stores/schemaStore';
7
+ import { Button, DataTable, modal, } from '../../../../../../packages/ui/react/components';
8
+ import useExecuteOnce from '../../../../../../packages/ui/react/hooks/useExecuteOnce';
9
+ import useInit from '../../../../../../packages/ui/react/hooks/useInit';
10
+ import useRefState from '../../../../../../packages/ui/react/hooks/useRefState';
11
+ import useWatch from '../../../../../../packages/ui/react/hooks/useWatch';
12
+ import { produce } from 'immer';
13
+ import { memo, useCallback, useImperativeHandle, useMemo, useState } from 'react';
14
+ import { useShallow } from 'zustand/react/shallow';
15
+ import { eventsInfo } from '../../data/eventInfo';
16
+ import { merge } from '../../utils/permissions';
17
+ const VALUE_KEY = 'schema::';
18
+ const generateColumns = (config) => {
19
+ const keys = Object.keys(config);
20
+ const columns = [];
21
+ keys.forEach((k) => {
22
+ const fieldInfo = config[k];
23
+ if (fieldInfo?.option) {
24
+ const {
25
+ // comType = 'input', default: defaultFieldValue,
26
+ ...fieldProps } = fieldInfo.option;
27
+ columns.push({
28
+ title: getText(fieldInfo.label),
29
+ key: k,
30
+ ...fieldProps,
31
+ // fieldProps,
32
+ });
33
+ }
34
+ });
35
+ return columns;
36
+ };
37
+ const generateRowActions = (btnConfigs, rowData, api) => {
38
+ const handleRowAction = (btnConfig) => {
39
+ const { eventKey, eventOption } = btnConfig;
40
+ switch (eventKey) {
41
+ case 'callComponent':
42
+ // 与 schemaPage通信
43
+ const { emitTable } = schemaEventBus.getState();
44
+ emitTable({ ...rowData, comName: eventOption.comName });
45
+ break;
46
+ case 'remove':
47
+ // 调用api
48
+ if (api) {
49
+ const apiParams = Object.entries(eventOption.params).reduce((o, [k, v]) => {
50
+ // 使用当前行的某个数据
51
+ if (('' + v).includes(VALUE_KEY)) {
52
+ const valueKey = ('' + v).split(VALUE_KEY)[1];
53
+ o[k] = rowData[valueKey];
54
+ }
55
+ else {
56
+ o[k] = v;
57
+ }
58
+ return o;
59
+ }, {});
60
+ modal.confirm({
61
+ content: `确认删除?`,
62
+ async onOk() {
63
+ await handlingRequestErrors(del(api, apiParams));
64
+ schemaEventBus.getState().emitCom({ type: merge(eventsInfo.initTable) });
65
+ return true;
66
+ },
67
+ });
68
+ }
69
+ break;
70
+ default:
71
+ break;
72
+ }
73
+ };
74
+ return btnConfigs.map((rb, index) => {
75
+ const label = getText(rb.label ?? '');
76
+ const bState = rb.eventKey === 'remove' ? 'danger' : undefined;
77
+ return {
78
+ render: (_item, { close }) => (_jsx("div", { className: " p-2.5", children: _jsx(Button, { state: bState, variant: "link", onClick: () => {
79
+ handleRowAction(rb);
80
+ close();
81
+ }, children: label }, `${rb.eventKey}-${rb.label ?? index}`) })),
82
+ };
83
+ });
84
+ };
85
+ const SchemaTable = memo(({ ref }) => {
86
+ const params = useSchemaStore(useShallow((s) => ({ config: s.tableConfig, schema: s.tableSchema, api: s.api })));
87
+ const [data, uData] = useState([]);
88
+ const [columns, uColumns] = useState([]);
89
+ const [loading, uLoading, loadingRef] = useRefState(false);
90
+ const [pagination, setPagination, paginationRef] = useRefState({
91
+ current: 1,
92
+ pageSize: 10,
93
+ total: 0,
94
+ });
95
+ const [handleBtn, setHandleBtn] = useState([]);
96
+ const init = useCallback(async (query) => {
97
+ if (loadingRef.current.data)
98
+ return;
99
+ uLoading(true);
100
+ try {
101
+ const res = await handlingRequestErrors(get(params.api ? `${params.api}/list` : '', { ...query, ...paginationRef.current.data }));
102
+ if (res.data.code === 0) {
103
+ uData(res.data.data.data);
104
+ setPagination(produce((nextState) => {
105
+ nextState.total = res.data.data.total;
106
+ }));
107
+ }
108
+ }
109
+ finally {
110
+ uLoading(false);
111
+ }
112
+ }, [loadingRef, paginationRef, params.api, setPagination, uLoading]);
113
+ useImperativeHandle(ref, () => {
114
+ return {
115
+ initData: init,
116
+ };
117
+ }, [init]);
118
+ useInit(() => {
119
+ const contextColumns = generateColumns(params.schema.properties);
120
+ const actionColumn = [];
121
+ if (params.config) {
122
+ const { rowButtons, headerButtons } = params.config;
123
+ // 处理row交互
124
+ if (rowButtons) {
125
+ actionColumn.push({
126
+ key: 'action',
127
+ title: getText('操作'),
128
+ actions: (_value, _record, index) => [
129
+ ...generateRowActions(rowButtons, _record, params.api),
130
+ // { key: `text-${index}`, label: 'text' },
131
+ // { key: `link-${index}`, label: 'link' },
132
+ ],
133
+ });
134
+ }
135
+ // 处理page 交互
136
+ setHandleBtn(headerButtons?.map((c) => {
137
+ const { label, eventKey, eventOption, ...props } = c;
138
+ return {
139
+ children: getText(label ?? ''),
140
+ onClick: () => {
141
+ if ('comName' in eventOption) {
142
+ schemaEventBus.getState().emitTable(eventOption);
143
+ }
144
+ else {
145
+ // 不存在这种用法
146
+ }
147
+ },
148
+ ...props,
149
+ };
150
+ // }
151
+ }) ?? []);
152
+ }
153
+ uColumns(contextColumns.concat(actionColumn));
154
+ });
155
+ useExecuteOnce(() => {
156
+ init();
157
+ }, { executionPhase: 'mount' });
158
+ const daProps = useMemo(() => {
159
+ return {
160
+ columns,
161
+ data,
162
+ loading,
163
+ pagination: {
164
+ ...pagination,
165
+ onPageSizeChange(pageSize) {
166
+ setPagination(produce((ns) => {
167
+ ns.pageSize = pageSize;
168
+ }));
169
+ },
170
+ onChange(page) {
171
+ setPagination(produce((ns) => {
172
+ ns.current = page;
173
+ }));
174
+ },
175
+ },
176
+ };
177
+ }, [columns, data, loading, pagination, setPagination]);
178
+ useWatch([pagination.current, pagination.pageSize], () => {
179
+ init();
180
+ }, {
181
+ compare: 'shallow',
182
+ });
183
+ return (_jsxs("div", { className: "schema-table", children: [_jsx("div", { className: "schema-table-actions flex items-end", children: handleBtn.map((bc, index) => {
184
+ return _jsx(Button, { ...bc }, `schema-table-action-${index}`);
185
+ }) }), _jsx(DataTable, { ...daProps })] }));
186
+ });
187
+ SchemaTable.displayName = 'SchemaTable';
188
+ export default SchemaTable;
@@ -0,0 +1,8 @@
1
+ export declare const eventsInfo: {
2
+ readonly none: 0;
3
+ readonly closeCom: 1;
4
+ readonly initTable: 2;
5
+ readonly resetSearch: 2;
6
+ };
7
+ export type EventInfoKey = keyof typeof eventsInfo;
8
+ //# sourceMappingURL=eventInfo.d.ts.map
@@ -0,0 +1,6 @@
1
+ export const eventsInfo = {
2
+ none: /** */ 0b00000000000000,
3
+ closeCom: /** */ 0b00000000000001,
4
+ initTable: /** */ 0b00000000000010,
5
+ resetSearch: /** */ 0b00000000000010,
6
+ };
@@ -0,0 +1,3 @@
1
+ export declare const suffixKey = "Option";
2
+ export type SuffixKey = typeof suffixKey;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ export const suffixKey = "Option";
@@ -0,0 +1,10 @@
1
+ import type { CallComNames, NamedComponentConfig, NamedSchemaType } from '../schemaType';
2
+ declare const useComConfig: <CN extends CallComNames>({ comName }: {
3
+ comName: CallComNames;
4
+ }) => {
5
+ config: NamedComponentConfig<CN>;
6
+ schema: NamedSchemaType<`${CN}Option`>;
7
+ api: string | undefined;
8
+ };
9
+ export default useComConfig;
10
+ //# sourceMappingURL=useComConfig.d.ts.map
@@ -0,0 +1,14 @@
1
+ import { useSchemaStore } from '../../../stores/schemaStore';
2
+ import { useShallow } from 'zustand/react/shallow';
3
+ const useComConfig = ({ comName }) => {
4
+ const params = useSchemaStore(useShallow((s) => ({ comConfig: s.components, api: s.api })));
5
+ const comConfig = params.comConfig?.[comName];
6
+ const config = comConfig?.config;
7
+ const schema = comConfig?.schema;
8
+ return {
9
+ config,
10
+ schema,
11
+ api: params.api,
12
+ };
13
+ };
14
+ export default useComConfig;
@@ -0,0 +1,167 @@
1
+ .schema-container {
2
+ --schema-radius: 8px;
3
+ --schema-soft-border: hsl(var(--border) / 0.68);
4
+ }
5
+
6
+ .schema-workspace {
7
+ background:
8
+ linear-gradient(180deg, hsl(var(--background) / 0.62), hsl(var(--background) / 0.3)),
9
+ hsl(var(--theme-bg));
10
+ }
11
+
12
+ .schema-search-region {
13
+ padding-bottom: 12px;
14
+ }
15
+
16
+ .schema-search .tc-ui-search {
17
+ align-items: flex-end;
18
+ gap: 10px 16px;
19
+ border: 1px solid var(--schema-soft-border);
20
+ border-radius: var(--schema-radius);
21
+ background: hsl(var(--background) / 0.72);
22
+ padding: 12px;
23
+ }
24
+
25
+ .schema-search .tc-ui-schema-form {
26
+ gap: 10px 12px;
27
+ }
28
+
29
+ .schema-search .tc-ui-form-item {
30
+ min-width: 212px;
31
+ }
32
+
33
+ .schema-search .tc-ui-date-picker {
34
+ min-width: 246px;
35
+ }
36
+
37
+ .schema-search .tc-ui-label {
38
+ gap: 5px;
39
+ }
40
+
41
+ .schema-search .tc-ui-label label {
42
+ color: hsl(var(--muted-foreground));
43
+ font-size: 12px;
44
+ font-weight: 600;
45
+ line-height: 16px;
46
+ }
47
+
48
+ .schema-search .tc-ui-input input,
49
+ .schema-search .tc-ui-select > div:first-child,
50
+ .schema-search .tc-ui-date-picker > div > div:first-child {
51
+ min-height: 34px;
52
+ border-color: hsl(var(--border) / 0.8);
53
+ border-radius: 7px;
54
+ background-color: hsl(var(--theme-bg) / 0.54);
55
+ padding: 7px 10px;
56
+ }
57
+
58
+ .schema-search .tc-ui-date-picker .tc-ui-input input {
59
+ min-height: 0;
60
+ padding: 0;
61
+ }
62
+
63
+ .schema-search .tc-ui-input input:hover,
64
+ .schema-search .tc-ui-select > div:first-child:hover,
65
+ .schema-search .tc-ui-date-picker > div > div:first-child:hover {
66
+ border-color: hsl(var(--foreground) / 0.28);
67
+ background-color: hsl(var(--background) / 0.9);
68
+ }
69
+
70
+ .schema-search .tc-ui-input input:focus,
71
+ .schema-search .tc-ui-select > div:first-child:focus,
72
+ .schema-search .tc-ui-date-picker > div > div:first-child:focus-within {
73
+ border-color: hsl(var(--theme-primary) / 0.74);
74
+ box-shadow: 0 0 0 3px hsl(var(--theme-primary) / 0.1);
75
+ }
76
+
77
+ .schema-search .tc-ui-button {
78
+ height: 34px;
79
+ border-radius: 7px;
80
+ padding-inline: 14px;
81
+ }
82
+
83
+ .schema-search .tc-ui-button:first-of-type {
84
+ box-shadow: 0 1px 0 hsl(var(--background) / 0.2) inset;
85
+ }
86
+
87
+ .schema-table-region {
88
+ min-height: 0;
89
+ scrollbar-gutter: stable;
90
+ }
91
+
92
+ .schema-table {
93
+ display: flex;
94
+ min-height: 100%;
95
+ flex-direction: column;
96
+ }
97
+
98
+ .schema-table-actions {
99
+ min-height: 0;
100
+ justify-content: flex-end;
101
+ gap: 8px;
102
+ padding-bottom: 10px;
103
+ }
104
+
105
+ .schema-table-actions:empty {
106
+ display: none;
107
+ }
108
+
109
+ .schema-table-actions .tc-ui-button {
110
+ height: 34px;
111
+ border-radius: 7px;
112
+ }
113
+
114
+ .schema-table .tc-ui-data-table {
115
+ flex: 1;
116
+ overflow: hidden;
117
+ border: 1px solid var(--schema-soft-border);
118
+ border-radius: var(--schema-radius);
119
+ background-color: hsl(var(--background) / 0.58);
120
+ box-shadow: none;
121
+ }
122
+
123
+ .schema-table .tc-ui-table {
124
+ border-radius: var(--schema-radius) var(--schema-radius) 0 0;
125
+ }
126
+
127
+ .schema-table .tc-ui-table-header {
128
+ background: hsl(var(--muted) / 0.5);
129
+ }
130
+
131
+ .schema-table .tc-ui-table-head {
132
+ height: 40px;
133
+ padding: 0 16px;
134
+ font-size: 12px;
135
+ font-weight: 600;
136
+ color: hsl(var(--muted-foreground));
137
+ }
138
+
139
+ .schema-table .tc-ui-table-cell {
140
+ padding: 13px 16px;
141
+ }
142
+
143
+ .schema-table .tc-ui-table-row {
144
+ border-color: hsl(var(--border) / 0.58);
145
+ }
146
+
147
+ .schema-table .tc-ui-table-row:hover {
148
+ background-color: hsl(var(--muted) / 0.28);
149
+ }
150
+
151
+ .schema-table .tc-ui-table-head[style*='right'],
152
+ .schema-table .tc-ui-table-cell[style*='right'] {
153
+ box-shadow: -1px 0 0 hsl(var(--border) / 0.58);
154
+ }
155
+
156
+ .schema-table .tc-ui-data-table > .px-6 {
157
+ margin-top: 0;
158
+ border-top: 1px solid hsl(var(--border) / 0.58);
159
+ padding: 12px 16px;
160
+ }
161
+
162
+ .schema-table .tc-ui-data-table > .px-6 .tc-ui-select > div:first-child {
163
+ min-height: 34px;
164
+ border-radius: 7px;
165
+ background: hsl(var(--muted) / 0.58);
166
+ padding-block: 7px;
167
+ }
@@ -0,0 +1,4 @@
1
+ import './index.css';
2
+ declare const Schema: import("react").MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
3
+ export default Schema;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,75 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { logIllegalComponentCallback } from '../../common/logFn';
3
+ import useCurrentMenuData from '../../hooks/useCurrentMenuData';
4
+ import { schemaEventBus } from '../../stores/schemaEventBus';
5
+ import { useSchemaStore } from '../../stores/schemaStore';
6
+ import useExecuteOnce, { executionPhaseType } from '../../../../packages/ui/react/hooks/useExecuteOnce';
7
+ import useInit from '../../../../packages/ui/react/hooks/useInit';
8
+ import { memo, Suspense, useCallback, useMemo, useRef, useState } from 'react';
9
+ import { components } from './components/CallCom/data';
10
+ import SchemaSearch from './components/SchemaSearch';
11
+ import SchemaTable from './components/SchemaTable';
12
+ import { eventsInfo } from './data/eventInfo';
13
+ import './index.css';
14
+ import { isAllowed } from './utils/permissions';
15
+ import { schemaConversion } from './utils/schemaConversion';
16
+ const Schema = memo(() => {
17
+ const { menu } = useCurrentMenuData();
18
+ const [showCompoentKey, setShowCompoentKey] = useState();
19
+ const [comProps, setComProps] = useState({});
20
+ const schemaStoreAvailable = useSchemaStore((s) => s.schemaStoreAvailable);
21
+ const TableRef = useRef(null);
22
+ const onSearch = useCallback((v) => {
23
+ TableRef.current?.initData(v);
24
+ }, []);
25
+ const callCom = useCallback((v) => {
26
+ const { comName, ...params } = v;
27
+ setComProps({ data: params, comName });
28
+ setShowCompoentKey(comName);
29
+ }, []);
30
+ const comDone = useCallback(({ type }) => {
31
+ /**
32
+ * 解析出需要执行的操作
33
+ */
34
+ if (isAllowed(type, eventsInfo.closeCom)) {
35
+ setShowCompoentKey(undefined);
36
+ setComProps(undefined);
37
+ }
38
+ if (isAllowed(type, eventsInfo.initTable)) {
39
+ TableRef.current?.initData();
40
+ }
41
+ if (isAllowed(type, eventsInfo.resetSearch)) {
42
+ }
43
+ }, []);
44
+ useInit(() => {
45
+ // schema数据分离
46
+ schemaConversion(menu.schemaConfig, menu.key);
47
+ });
48
+ useExecuteOnce(() => {
49
+ // 关联search
50
+ schemaEventBus.getState().subscribeSearch(onSearch);
51
+ // 订阅组件消息
52
+ schemaEventBus.getState().subscribeCom(comDone);
53
+ // 关联table
54
+ schemaEventBus.getState().subscribeTable(callCom);
55
+ }, { executionPhase: executionPhaseType.mount });
56
+ useExecuteOnce(() => {
57
+ schemaEventBus.getState().unSubscribeSearch(onSearch);
58
+ schemaEventBus.getState().unSubscribeTable(callCom);
59
+ schemaEventBus.getState().unSubscribeCom(comDone);
60
+ }, { executionPhase: executionPhaseType.unMount });
61
+ const dom = useMemo(() => {
62
+ if (schemaStoreAvailable) {
63
+ const CallCom = components[showCompoentKey];
64
+ if (!CallCom && showCompoentKey) {
65
+ logIllegalComponentCallback(showCompoentKey);
66
+ }
67
+ return (_jsxs("div", { className: "schema-container flex h-full min-h-0 w-full flex-col overflow-hidden bg-theme-bg px-4 py-3", children: [_jsxs("div", { className: "schema-workspace flex min-h-0 flex-1 flex-col overflow-hidden", children: [_jsx("div", { className: "schema-search-region shrink-0", children: _jsx(SchemaSearch, {}) }), _jsx("div", { className: "schema-table-region min-h-0 flex-1 overflow-auto p-3", children: _jsx(SchemaTable, { ref: TableRef }) })] }), _jsx(Suspense, { children: CallCom && _jsx(CallCom, { ...comProps }) })] }));
68
+ }
69
+ else
70
+ return _jsx("div", { className: "flex h-full items-center justify-center text-sm text-muted-foreground", children: "loading" });
71
+ }, [comProps, schemaStoreAvailable, showCompoentKey]);
72
+ return dom;
73
+ });
74
+ Schema.displayName = 'SchemaPage';
75
+ export default Schema;
@@ -0,0 +1,51 @@
1
+ import type { ComponentConfig } from '../../../../model/types/data/component';
2
+ import type { BaseOption, ConfigSchema, SchemaDataType, SearchConfig, TableConfig, UsedConfigSchema } from '../../../../model/types/data/schema';
3
+ import type { LazyExoticComponent, ComponentType as ReactComponentType } from 'react';
4
+ import type { SuffixKey } from './data';
5
+ export type { ComponentConfig, SearchConfig, TableConfig };
6
+ export type FieldType = ConfigSchema['properties'][''];
7
+ export type SchemaType = Required<SchemaDataType>['schema'];
8
+ export type AllFieldKeys = keyof FieldType;
9
+ export type AllOptionsPreNames = {
10
+ [K in AllFieldKeys]: K extends `${infer Name}${SuffixKey}` ? Name : never;
11
+ }[AllFieldKeys];
12
+ export type NonOptionKey = {
13
+ [K in AllFieldKeys]: K extends `${string}${SuffixKey}` ? never : K;
14
+ }[AllFieldKeys];
15
+ export type StoreSchemaType = UsedConfigSchema<BaseOption<FieldType[`${AllOptionsPreNames}${SuffixKey}`]>>;
16
+ export type NamedSchemaType<N extends `${AllOptionsPreNames}${SuffixKey}`> = UsedConfigSchema<BaseOption<FieldType[N]>>;
17
+ /**
18
+ * 获取具体名称的 components options 配置
19
+ */
20
+ export type NamedComOption<N extends CallComNames> = ComponentType<ComponentConfig>[N];
21
+ /**
22
+ * 获取具名 组件配置
23
+ */
24
+ export type NamedComponentConfig<N extends CallComNames> = ComponentConfig[N];
25
+ type ComponentC<C extends ComponentConfig> = {
26
+ [K in keyof C]: {
27
+ schema: StoreSchemaType;
28
+ config: C[K];
29
+ };
30
+ }[keyof C];
31
+ export type ComponentType<C extends ComponentConfig> = {
32
+ [K in keyof C]: ComponentC<C>;
33
+ };
34
+ export type CallComNames = keyof ComponentConfig;
35
+ export type CallComRenderer = ReactComponentType<any> | LazyExoticComponent<ReactComponentType<any>>;
36
+ export type SchemaDefaultValue = Record<string, any>;
37
+ export type SchemaTableEmitData = SchemaDefaultValue & {
38
+ comName: CallComNames;
39
+ };
40
+ export declare const enum ComEventType {
41
+ close = 0
42
+ }
43
+ export type SchemaComEventInfo = {
44
+ /**
45
+ * 操作权限合集
46
+ */
47
+ type: number;
48
+ };
49
+ export type CallComponent<T> = Partial<Record<CallComNames, T>>;
50
+ export type CallComComponentsMap = CallComponent<CallComRenderer>;
51
+ //# sourceMappingURL=schemaType.d.ts.map
@@ -0,0 +1,4 @@
1
+ export var ComEventType;
2
+ (function (ComEventType) {
3
+ ComEventType[ComEventType["close"] = 0] = "close";
4
+ })(ComEventType || (ComEventType = {}));
@@ -0,0 +1,3 @@
1
+ export declare const merge: (...params: number[]) => number;
2
+ export declare const isAllowed: (key1: number, key2: number) => boolean;
3
+ //# sourceMappingURL=permissions.d.ts.map
@@ -0,0 +1,3 @@
1
+ import { eventsInfo } from '../data/eventInfo';
2
+ export const merge = (...params) => params.reduce((o, n) => o | n, eventsInfo.none);
3
+ export const isAllowed = (key1, key2) => (key1 & key2) !== eventsInfo.none;
@@ -0,0 +1,3 @@
1
+ import { SchemaDataType } from '../../../../../model/types/data/schema';
2
+ export declare const schemaConversion: (schema: SchemaDataType, schemaKey: string) => void;
3
+ //# sourceMappingURL=schemaConversion.d.ts.map