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

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 (546) hide show
  1. package/{app → cjs/app}/controller/base.d.ts +1 -2
  2. package/{app → cjs/app}/controller/base.js +0 -2
  3. package/{app → cjs/app}/controller/project.d.ts +1 -2
  4. package/cjs/app/controller/project.js +50 -0
  5. package/{app → cjs/app}/controller/view.d.ts +1 -2
  6. package/cjs/app/data/signKey.d.ts +1 -0
  7. package/cjs/app/extend/db.d.ts +2 -0
  8. package/cjs/app/extend/db.js +12 -0
  9. package/cjs/app/extend/generateErrorMessage.d.ts +7 -0
  10. package/{app → cjs/app}/extend/generateErrorMessage.js +3 -0
  11. package/cjs/app/extend/logger.d.ts +11 -0
  12. package/cjs/app/extend/parsingParamsOnUrl.d.ts +2 -0
  13. package/{app → cjs/app}/extend/render-view.d.ts +1 -2
  14. package/{app → cjs/app}/middleware/api-params-verify.d.ts +1 -2
  15. package/{app → cjs/app}/middleware/api-sign-verify.d.ts +1 -2
  16. package/{app → cjs/app}/middleware/error-handle.d.ts +1 -2
  17. package/{app → cjs/app}/middleware/project-handler.d.ts +1 -2
  18. package/cjs/app/middleware.d.ts +5 -0
  19. package/{app → cjs/app}/middleware.js +23 -1
  20. package/cjs/app/router/project.d.ts +4 -0
  21. package/cjs/app/router/view.d.ts +4 -0
  22. package/cjs/app/router-schema/project.d.ts +3 -0
  23. package/cjs/app/service/bese.d.ts +10 -0
  24. package/cjs/app/service/project.d.ts +27 -0
  25. package/cjs/app/service/project.js +42 -0
  26. package/cjs/app/type.d.ts +2 -0
  27. package/cjs/app/typings.d.ts +49 -0
  28. package/cjs/app/view/entry.tpl +30 -0
  29. package/cjs/bundler/dev.d.ts +1 -0
  30. package/{packages/ui/react/components/Form/SchemeForm/data.js → cjs/bundler/dev.js} +30 -9
  31. package/cjs/bundler/index.d.ts +1 -0
  32. package/cjs/bundler/index.js +18 -0
  33. package/cjs/bundler/prod.d.ts +1 -0
  34. package/cjs/bundler/prod.js +19 -0
  35. package/cjs/bundler/utils.d.ts +7 -0
  36. package/cjs/bundler/utils.js +127 -0
  37. package/cjs/index.d.ts +28 -0
  38. package/cjs/packages/core/env.d.ts +15 -0
  39. package/cjs/packages/core/index.d.ts +6 -0
  40. package/{packages → cjs/packages}/core/index.js +24 -0
  41. package/cjs/packages/core/loader/config.d.ts +9 -0
  42. package/{packages → cjs/packages}/core/loader/config.js +14 -0
  43. package/cjs/packages/core/loader/controller.d.ts +17 -0
  44. package/{packages → cjs/packages}/core/loader/controller.js +23 -0
  45. package/cjs/packages/core/loader/extend.d.ts +8 -0
  46. package/{packages → cjs/packages}/core/loader/extend.js +8 -0
  47. package/cjs/packages/core/loader/middleware.d.ts +11 -0
  48. package/cjs/packages/core/loader/middleware.js +38 -0
  49. package/cjs/packages/core/loader/model.d.ts +36 -0
  50. package/{packages → cjs/packages}/core/loader/model.js +43 -0
  51. package/cjs/packages/core/loader/router-schema.d.ts +18 -0
  52. package/{packages → cjs/packages}/core/loader/router-schema.js +16 -0
  53. package/{packages → cjs/packages}/core/loader/router.d.ts +5 -1
  54. package/{packages → cjs/packages}/core/loader/router.js +20 -3
  55. package/cjs/packages/core/loader/service.d.ts +17 -0
  56. package/{packages → cjs/packages}/core/loader/service.js +14 -0
  57. package/cjs/packages/core/paths.d.ts +11 -0
  58. package/{packages → cjs/packages}/core/types.d.ts +1 -1
  59. package/{packages → cjs/packages}/utils/getAllFilesInFolder.d.ts +5 -1
  60. package/cjs/packages/utils/getAllFnReturnValue.d.ts +0 -0
  61. package/cjs/packages/utils/getAllFnReturnValue.js +6 -0
  62. package/cjs/packages/utils/index.d.ts +4 -0
  63. package/{packages → cjs/packages}/utils/loadFile.d.ts +6 -1
  64. package/{packages → cjs/packages}/utils/loadFile.js +9 -0
  65. package/cjs/packages/utils/path.d.ts +24 -0
  66. package/{packages → cjs/packages}/utils/path.js +14 -0
  67. package/cjs/packages/utils/runFileFn.d.ts +5 -0
  68. package/cjs/typings/type.d.ts +4 -0
  69. package/esm/app/controller/base.d.ts +14 -0
  70. package/esm/app/controller/base.js +21 -0
  71. package/esm/app/controller/project.d.ts +12 -0
  72. package/{app → esm/app}/controller/project.js +3 -8
  73. package/esm/app/controller/view.d.ts +9 -0
  74. package/esm/app/controller/view.js +12 -0
  75. package/esm/app/data/signKey.js +1 -0
  76. package/esm/app/extend/db.js +9 -0
  77. package/esm/app/extend/generateErrorMessage.js +12 -0
  78. package/esm/app/extend/logger.js +37 -0
  79. package/esm/app/extend/parsingParamsOnUrl.js +20 -0
  80. package/esm/app/extend/render-view.d.ts +5 -0
  81. package/esm/app/extend/render-view.js +16 -0
  82. package/esm/app/middleware/api-params-verify.d.ts +6 -0
  83. package/esm/app/middleware/api-params-verify.js +58 -0
  84. package/esm/app/middleware/api-sign-verify.d.ts +6 -0
  85. package/esm/app/middleware/api-sign-verify.js +23 -0
  86. package/esm/app/middleware/error-handle.d.ts +6 -0
  87. package/esm/app/middleware/error-handle.js +31 -0
  88. package/esm/app/middleware/project-handler.d.ts +5 -0
  89. package/esm/app/middleware/project-handler.js +19 -0
  90. package/esm/app/middleware.js +55 -0
  91. package/esm/app/router/project.js +6 -0
  92. package/esm/app/router/view.js +3 -0
  93. package/esm/app/router-schema/project.js +31 -0
  94. package/esm/app/service/bese.js +12 -0
  95. package/{app → esm/app}/service/project.js +6 -10
  96. package/esm/app/type.js +1 -0
  97. package/esm/app/typings.js +1 -0
  98. package/esm/app/view/entry.tpl +30 -0
  99. package/esm/bundler/dev.d.ts +2 -0
  100. package/esm/bundler/dev.js +29 -0
  101. package/esm/bundler/index.d.ts +2 -0
  102. package/esm/bundler/index.js +14 -0
  103. package/esm/bundler/prod.d.ts +2 -0
  104. package/esm/bundler/prod.js +16 -0
  105. package/esm/bundler/utils.d.ts +8 -0
  106. package/esm/bundler/utils.js +85 -0
  107. package/esm/index.js +13 -0
  108. package/esm/packages/core/env.js +23 -0
  109. package/esm/packages/core/index.js +109 -0
  110. package/esm/packages/core/loader/config.d.ts +10 -0
  111. package/esm/packages/core/loader/config.js +43 -0
  112. package/esm/packages/core/loader/controller.d.ts +18 -0
  113. package/esm/packages/core/loader/controller.js +38 -0
  114. package/esm/packages/core/loader/extend.d.ts +9 -0
  115. package/esm/packages/core/loader/extend.js +39 -0
  116. package/esm/packages/core/loader/middleware.d.ts +12 -0
  117. package/esm/packages/core/loader/middleware.js +36 -0
  118. package/esm/packages/core/loader/model.d.ts +37 -0
  119. package/esm/packages/core/loader/model.js +127 -0
  120. package/esm/packages/core/loader/router-schema.d.ts +19 -0
  121. package/esm/packages/core/loader/router-schema.js +33 -0
  122. package/esm/packages/core/loader/router.d.ts +9 -0
  123. package/esm/packages/core/loader/router.js +57 -0
  124. package/esm/packages/core/loader/service.d.ts +18 -0
  125. package/esm/packages/core/loader/service.js +28 -0
  126. package/esm/packages/core/paths.js +6 -0
  127. package/esm/packages/core/types.d.ts +75 -0
  128. package/esm/packages/core/types.js +1 -0
  129. package/esm/packages/utils/getAllFilesInFolder.d.ts +10 -0
  130. package/esm/packages/utils/getAllFilesInFolder.js +8 -0
  131. package/esm/packages/utils/getAllFnReturnValue.js +6 -0
  132. package/esm/packages/utils/index.js +4 -0
  133. package/esm/packages/utils/loadFile.d.ts +21 -0
  134. package/esm/packages/utils/loadFile.js +63 -0
  135. package/esm/packages/utils/path.d.ts +25 -0
  136. package/esm/packages/utils/path.js +27 -0
  137. package/esm/packages/utils/runFileFn.js +1 -0
  138. package/esm/typings/type.d.ts +5 -0
  139. package/esm/typings/type.js +1 -0
  140. package/fe/frontend/main.js +6 -0
  141. package/fe/packages/ui/react/assets/table/no-result.svg +5 -0
  142. package/{packages → fe/packages}/ui/react/components/Button/Button.d.ts +24 -0
  143. package/fe/packages/ui/react/components/Button/Button.js +42 -0
  144. package/{packages → fe/packages}/ui/react/components/Button/SumbitButton.d.ts +4 -0
  145. package/fe/packages/ui/react/components/Button/SumbitButton.js +32 -0
  146. package/fe/packages/ui/react/components/Button/index.js +2 -0
  147. package/{packages → fe/packages}/ui/react/components/Checkbox/Checkbox.js +9 -12
  148. package/fe/packages/ui/react/components/Checkbox/index.js +1 -0
  149. package/{packages → fe/packages}/ui/react/components/ConfirmDialog.d.ts +8 -0
  150. package/fe/packages/ui/react/components/ConfirmDialog.js +9 -0
  151. package/fe/packages/ui/react/components/DataTable/ActionBtn.js +13 -0
  152. package/{packages → fe/packages}/ui/react/components/DataTable/data-table.d.ts +19 -0
  153. package/{packages → fe/packages}/ui/react/components/DataTable/data-table.js +23 -26
  154. package/{packages → fe/packages}/ui/react/components/Date/Calendar.d.ts +13 -0
  155. package/fe/packages/ui/react/components/Date/Calendar.js +215 -0
  156. package/{packages → fe/packages}/ui/react/components/Date/Date.d.ts +10 -0
  157. package/fe/packages/ui/react/components/Date/Date.js +178 -0
  158. package/fe/packages/ui/react/components/Date/DateTestPage.js +29 -0
  159. package/fe/packages/ui/react/components/Date/LocaleContext.d.ts +6 -0
  160. package/fe/packages/ui/react/components/Date/LocaleContext.js +8 -0
  161. package/{packages → fe/packages}/ui/react/components/Date/LocaleProvider.d.ts +11 -0
  162. package/fe/packages/ui/react/components/Date/LocaleProvider.js +24 -0
  163. package/fe/packages/ui/react/components/Date/TimePicker.js +76 -0
  164. package/fe/packages/ui/react/components/Date/data.js +4 -0
  165. package/{packages → fe/packages}/ui/react/components/Date/dateLocaleStore.d.ts +6 -0
  166. package/fe/packages/ui/react/components/Date/dateLocaleStore.js +14 -0
  167. package/fe/packages/ui/react/components/Date/index.js +5 -0
  168. package/{packages → fe/packages}/ui/react/components/Date/locales.d.ts +19 -0
  169. package/{packages → fe/packages}/ui/react/components/Date/locales.js +16 -6
  170. package/fe/packages/ui/react/components/Dropdown.js +54 -0
  171. package/{packages → fe/packages}/ui/react/components/Form/Form.d.ts +6 -0
  172. package/fe/packages/ui/react/components/Form/Form.js +8 -0
  173. package/{packages → fe/packages}/ui/react/components/Form/FormItem.d.ts +21 -0
  174. package/fe/packages/ui/react/components/Form/FormItem.js +43 -0
  175. package/fe/packages/ui/react/components/Form/SchemeForm/data.js +8 -0
  176. package/{packages → fe/packages}/ui/react/components/Form/SchemeForm/index.d.ts +93 -0
  177. package/fe/packages/ui/react/components/Form/SchemeForm/index.js +69 -0
  178. package/fe/packages/ui/react/components/Form/index.js +4 -0
  179. package/fe/packages/ui/react/components/Form/useForm.js +1 -0
  180. package/{packages → fe/packages}/ui/react/components/ImagePreview/ImagePreview.js +46 -41
  181. package/{packages → fe/packages}/ui/react/components/ImagePreview/PreviewImage.d.ts +3 -0
  182. package/fe/packages/ui/react/components/ImagePreview/PreviewImage.js +25 -0
  183. package/fe/packages/ui/react/components/ImagePreview/index.js +2 -0
  184. package/{packages → fe/packages}/ui/react/components/Input/Input.d.ts +20 -0
  185. package/fe/packages/ui/react/components/Input/Input.js +60 -0
  186. package/fe/packages/ui/react/components/Input/index.js +1 -0
  187. package/{packages → fe/packages}/ui/react/components/Label/Label.d.ts +29 -0
  188. package/fe/packages/ui/react/components/Label/Label.js +35 -0
  189. package/fe/packages/ui/react/components/Label/index.js +2 -0
  190. package/{packages → fe/packages}/ui/react/components/Message/Message.d.ts +7 -0
  191. package/fe/packages/ui/react/components/Message/Message.js +55 -0
  192. package/{packages → fe/packages}/ui/react/components/Message/MessageManager.js +26 -21
  193. package/fe/packages/ui/react/components/Message/data.js +1 -0
  194. package/fe/packages/ui/react/components/Message/index.js +1 -0
  195. package/{packages → fe/packages}/ui/react/components/Modal/Modal.d.ts +6 -0
  196. package/fe/packages/ui/react/components/Modal/Modal.js +51 -0
  197. package/{packages → fe/packages}/ui/react/components/Modal/ModalManager.d.ts +12 -0
  198. package/{packages → fe/packages}/ui/react/components/Modal/ModalManager.js +22 -23
  199. package/fe/packages/ui/react/components/Modal/index.js +2 -0
  200. package/{packages → fe/packages}/ui/react/components/Pagination.d.ts +7 -0
  201. package/{packages → fe/packages}/ui/react/components/Pagination.js +19 -15
  202. package/{packages → fe/packages}/ui/react/components/Search/Search.d.ts +3 -0
  203. package/fe/packages/ui/react/components/Search/Search.js +12 -0
  204. package/fe/packages/ui/react/components/Search/index.js +1 -0
  205. package/{packages → fe/packages}/ui/react/components/Select/Select.d.ts +2 -0
  206. package/fe/packages/ui/react/components/Select/Select.js +180 -0
  207. package/fe/packages/ui/react/components/Select/index.js +1 -0
  208. package/{packages → fe/packages}/ui/react/components/Skeleton/Skeleton.d.ts +15 -0
  209. package/fe/packages/ui/react/components/Skeleton/Skeleton.js +31 -0
  210. package/fe/packages/ui/react/components/Skeleton/index.js +1 -0
  211. package/fe/packages/ui/react/components/Switch/Switch.js +20 -0
  212. package/fe/packages/ui/react/components/Switch/index.js +1 -0
  213. package/{packages → fe/packages}/ui/react/components/TableSearch/TableSearch.d.ts +37 -0
  214. package/{packages → fe/packages}/ui/react/components/TableSearch/TableSearch.js +22 -23
  215. package/fe/packages/ui/react/components/TableSearch/index.js +1 -0
  216. package/fe/packages/ui/react/components/TableSearch/lang.js +23 -0
  217. package/fe/packages/ui/react/components/TableSearch/tableSearchLocaleStore.js +11 -0
  218. package/{packages → fe/packages}/ui/react/components/Textarea.d.ts +40 -0
  219. package/fe/packages/ui/react/components/Textarea.js +35 -0
  220. package/{packages → fe/packages}/ui/react/components/Tooltip.d.ts +16 -0
  221. package/{packages → fe/packages}/ui/react/components/Tooltip.js +26 -16
  222. package/{packages → fe/packages}/ui/react/components/TreeSelect.d.ts +6 -0
  223. package/{packages → fe/packages}/ui/react/components/TreeSelect.js +27 -24
  224. package/{packages → fe/packages}/ui/react/components/Upload/ImageUpload.js +11 -14
  225. package/{packages → fe/packages}/ui/react/components/Upload/Upload.d.ts +27 -0
  226. package/fe/packages/ui/react/components/Upload/Upload.js +5 -0
  227. package/fe/packages/ui/react/components/Upload/index.js +2 -0
  228. package/fe/packages/ui/react/components/breadcrumb.js +78 -0
  229. package/{packages → fe/packages}/ui/react/components/hooks/useInputController.d.ts +3 -0
  230. package/{packages → fe/packages}/ui/react/components/hooks/useInputController.js +15 -12
  231. package/fe/packages/ui/react/components/index.js +23 -0
  232. package/fe/packages/ui/react/components/table.js +20 -0
  233. package/fe/packages/ui/react/components/testPage/index.js +118 -0
  234. package/fe/packages/ui/react/hooks/useBreadcrumb.js +2 -0
  235. package/fe/packages/ui/react/hooks/useInit.js +9 -0
  236. package/fe/packages/ui/react/hooks/useLanguage.js +4 -0
  237. package/{packages → fe/packages}/ui/react/hooks/usePagination.js +7 -13
  238. package/fe/packages/ui/react/index.js +4 -0
  239. package/fe/packages/ui/react/lib/export.d.ts +66 -0
  240. package/{packages → fe/packages}/ui/react/lib/export.js +52 -49
  241. package/fe/packages/ui/react/lib/utils.d.ts +34 -0
  242. package/{packages → fe/packages}/ui/react/lib/utils.js +33 -15
  243. package/fe/packages/ui/react/locales/index.js +6 -0
  244. package/{packages → fe/packages}/ui/react/stores/breadcrumb.js +6 -7
  245. package/{packages → fe/packages}/ui/react/stores/language.js +14 -17
  246. package/fe/packages/ui/react/types/index.js +1 -0
  247. package/package.json +31 -12
  248. package/app/controller/base.d.ts.map +0 -1
  249. package/app/controller/project.d.ts.map +0 -1
  250. package/app/controller/view.d.ts.map +0 -1
  251. package/app/data/signKey.d.ts.map +0 -1
  252. package/app/extend/db.d.ts.map +0 -1
  253. package/app/extend/db.js +0 -7
  254. package/app/extend/generateErrorMessage.d.ts.map +0 -1
  255. package/app/extend/logger.d.ts.map +0 -1
  256. package/app/extend/parsingParamsOnUrl.d.ts.map +0 -1
  257. package/app/extend/render-view.d.ts.map +0 -1
  258. package/app/middleware/api-params-verify.d.ts.map +0 -1
  259. package/app/middleware/api-sign-verify.d.ts.map +0 -1
  260. package/app/middleware/error-handle.d.ts.map +0 -1
  261. package/app/middleware/project-handler.d.ts.map +0 -1
  262. package/app/middleware.d.ts.map +0 -1
  263. package/app/pages/main.d.ts.map +0 -1
  264. package/app/pages/main.js +0 -9
  265. package/app/router/project.d.ts.map +0 -1
  266. package/app/router/view.d.ts.map +0 -1
  267. package/app/router-schema/project.d.ts.map +0 -1
  268. package/app/service/bese.d.ts.map +0 -1
  269. package/app/service/project.d.ts.map +0 -1
  270. package/app/type.d.ts.map +0 -1
  271. package/app/typings.d.ts.map +0 -1
  272. package/app/vite/config/base.d.ts +0 -6
  273. package/app/vite/config/base.js +0 -96
  274. package/app/vite/config/data.d.ts +0 -3
  275. package/app/vite/config/data.js +0 -11
  276. package/app/vite/config/dev.d.ts +0 -11
  277. package/app/vite/config/dev.js +0 -15
  278. package/app/vite/config/prod.d.ts +0 -17
  279. package/app/vite/config/prod.js +0 -34
  280. package/app/vite/dev.d.ts +0 -2
  281. package/app/vite/dev.js +0 -29
  282. package/app/vite/index.d.ts +0 -1
  283. package/app/vite/index.js +0 -13
  284. package/app/vite/package.json +0 -10
  285. package/app/vite/prod.d.ts +0 -1
  286. package/app/vite/prod.js +0 -82
  287. package/index.d.ts.map +0 -1
  288. package/model/index.d.ts +0 -2
  289. package/model/index.d.ts.map +0 -1
  290. package/model/index.js +0 -6
  291. package/model/test.d.ts +0 -6
  292. package/model/test.d.ts.map +0 -1
  293. package/model/test.js +0 -5
  294. package/model/test2.d.ts +0 -6
  295. package/model/test2.d.ts.map +0 -1
  296. package/model/test2.js +0 -5
  297. package/packages/core/env.d.ts.map +0 -1
  298. package/packages/core/index.d.ts.map +0 -1
  299. package/packages/core/loader/config.d.ts +0 -4
  300. package/packages/core/loader/config.d.ts.map +0 -1
  301. package/packages/core/loader/controller.d.ts +0 -4
  302. package/packages/core/loader/controller.d.ts.map +0 -1
  303. package/packages/core/loader/extend.d.ts +0 -4
  304. package/packages/core/loader/extend.d.ts.map +0 -1
  305. package/packages/core/loader/middleware.d.ts +0 -4
  306. package/packages/core/loader/middleware.d.ts.map +0 -1
  307. package/packages/core/loader/middleware.js +0 -15
  308. package/packages/core/loader/model.d.ts +0 -15
  309. package/packages/core/loader/model.d.ts.map +0 -1
  310. package/packages/core/loader/router-schema.d.ts +0 -4
  311. package/packages/core/loader/router-schema.d.ts.map +0 -1
  312. package/packages/core/loader/router.d.ts.map +0 -1
  313. package/packages/core/loader/service.d.ts +0 -4
  314. package/packages/core/loader/service.d.ts.map +0 -1
  315. package/packages/core/paths.d.ts.map +0 -1
  316. package/packages/core/types.d.ts.map +0 -1
  317. package/packages/ui/react/components/Button/Button.d.ts.map +0 -1
  318. package/packages/ui/react/components/Button/Button.js +0 -35
  319. package/packages/ui/react/components/Button/SumbitButton.d.ts.map +0 -1
  320. package/packages/ui/react/components/Button/SumbitButton.js +0 -31
  321. package/packages/ui/react/components/Button/index.d.ts.map +0 -1
  322. package/packages/ui/react/components/Button/index.js +0 -20
  323. package/packages/ui/react/components/Checkbox/Checkbox.d.ts.map +0 -1
  324. package/packages/ui/react/components/Checkbox/index.d.ts.map +0 -1
  325. package/packages/ui/react/components/Checkbox/index.js +0 -17
  326. package/packages/ui/react/components/ConfirmDialog.d.ts.map +0 -1
  327. package/packages/ui/react/components/ConfirmDialog.js +0 -12
  328. package/packages/ui/react/components/DataTable/ActionBtn.d.ts.map +0 -1
  329. package/packages/ui/react/components/DataTable/ActionBtn.js +0 -17
  330. package/packages/ui/react/components/DataTable/data-table.d.ts.map +0 -1
  331. package/packages/ui/react/components/Date/Calendar.d.ts.map +0 -1
  332. package/packages/ui/react/components/Date/Calendar.js +0 -209
  333. package/packages/ui/react/components/Date/Date.d.ts.map +0 -1
  334. package/packages/ui/react/components/Date/Date.js +0 -160
  335. package/packages/ui/react/components/Date/DateTestPage.d.ts.map +0 -1
  336. package/packages/ui/react/components/Date/DateTestPage.js +0 -32
  337. package/packages/ui/react/components/Date/LocaleContext.d.ts +0 -2
  338. package/packages/ui/react/components/Date/LocaleContext.d.ts.map +0 -1
  339. package/packages/ui/react/components/Date/LocaleContext.js +0 -8
  340. package/packages/ui/react/components/Date/LocaleProvider.d.ts.map +0 -1
  341. package/packages/ui/react/components/Date/LocaleProvider.js +0 -16
  342. package/packages/ui/react/components/Date/TimePicker.d.ts.map +0 -1
  343. package/packages/ui/react/components/Date/TimePicker.js +0 -78
  344. package/packages/ui/react/components/Date/data.d.ts.map +0 -1
  345. package/packages/ui/react/components/Date/data.js +0 -7
  346. package/packages/ui/react/components/Date/dateLocaleStore.d.ts.map +0 -1
  347. package/packages/ui/react/components/Date/dateLocaleStore.js +0 -17
  348. package/packages/ui/react/components/Date/index.d.ts.map +0 -1
  349. package/packages/ui/react/components/Date/index.js +0 -23
  350. package/packages/ui/react/components/Date/locales.d.ts.map +0 -1
  351. package/packages/ui/react/components/Dropdown.d.ts.map +0 -1
  352. package/packages/ui/react/components/Dropdown.js +0 -55
  353. package/packages/ui/react/components/Form/Form.d.ts.map +0 -1
  354. package/packages/ui/react/components/Form/Form.js +0 -14
  355. package/packages/ui/react/components/Form/FormItem.d.ts.map +0 -1
  356. package/packages/ui/react/components/Form/FormItem.js +0 -75
  357. package/packages/ui/react/components/Form/SchemeForm/data.d.ts.map +0 -1
  358. package/packages/ui/react/components/Form/SchemeForm/index.d.ts.map +0 -1
  359. package/packages/ui/react/components/Form/SchemeForm/index.js +0 -69
  360. package/packages/ui/react/components/Form/index.d.ts.map +0 -1
  361. package/packages/ui/react/components/Form/index.js +0 -20
  362. package/packages/ui/react/components/Form/useForm.d.ts.map +0 -1
  363. package/packages/ui/react/components/Form/useForm.js +0 -5
  364. package/packages/ui/react/components/ImagePreview/ImagePreview.d.ts.map +0 -1
  365. package/packages/ui/react/components/ImagePreview/PreviewImage.d.ts.map +0 -1
  366. package/packages/ui/react/components/ImagePreview/PreviewImage.js +0 -28
  367. package/packages/ui/react/components/ImagePreview/index.d.ts.map +0 -1
  368. package/packages/ui/react/components/ImagePreview/index.js +0 -18
  369. package/packages/ui/react/components/Input/Input.d.ts.map +0 -1
  370. package/packages/ui/react/components/Input/Input.js +0 -60
  371. package/packages/ui/react/components/Input/index.d.ts.map +0 -1
  372. package/packages/ui/react/components/Input/index.js +0 -17
  373. package/packages/ui/react/components/Label/Label.d.ts.map +0 -1
  374. package/packages/ui/react/components/Label/Label.js +0 -36
  375. package/packages/ui/react/components/Label/index.d.ts.map +0 -1
  376. package/packages/ui/react/components/Label/index.js +0 -20
  377. package/packages/ui/react/components/Message/Message.d.ts.map +0 -1
  378. package/packages/ui/react/components/Message/Message.js +0 -55
  379. package/packages/ui/react/components/Message/MessageManager.d.ts.map +0 -1
  380. package/packages/ui/react/components/Message/data.d.ts.map +0 -1
  381. package/packages/ui/react/components/Message/data.js +0 -4
  382. package/packages/ui/react/components/Message/index.d.ts.map +0 -1
  383. package/packages/ui/react/components/Message/index.js +0 -5
  384. package/packages/ui/react/components/Modal/Modal.d.ts.map +0 -1
  385. package/packages/ui/react/components/Modal/Modal.js +0 -50
  386. package/packages/ui/react/components/Modal/ModalManager.d.ts.map +0 -1
  387. package/packages/ui/react/components/Modal/index.d.ts.map +0 -1
  388. package/packages/ui/react/components/Modal/index.js +0 -7
  389. package/packages/ui/react/components/Pagination.d.ts.map +0 -1
  390. package/packages/ui/react/components/Search/Search.d.ts.map +0 -1
  391. package/packages/ui/react/components/Search/Search.js +0 -14
  392. package/packages/ui/react/components/Search/index.d.ts.map +0 -1
  393. package/packages/ui/react/components/Search/index.js +0 -8
  394. package/packages/ui/react/components/Select/Select.d.ts.map +0 -1
  395. package/packages/ui/react/components/Select/Select.js +0 -166
  396. package/packages/ui/react/components/Select/index.d.ts.map +0 -1
  397. package/packages/ui/react/components/Select/index.js +0 -17
  398. package/packages/ui/react/components/Skeleton/Skeleton.d.ts.map +0 -1
  399. package/packages/ui/react/components/Skeleton/Skeleton.js +0 -35
  400. package/packages/ui/react/components/Skeleton/index.d.ts.map +0 -1
  401. package/packages/ui/react/components/Skeleton/index.js +0 -5
  402. package/packages/ui/react/components/Switch/Switch.d.ts.map +0 -1
  403. package/packages/ui/react/components/Switch/Switch.js +0 -56
  404. package/packages/ui/react/components/Switch/index.d.ts.map +0 -1
  405. package/packages/ui/react/components/Switch/index.js +0 -17
  406. package/packages/ui/react/components/TableSearch/TableSearch.d.ts.map +0 -1
  407. package/packages/ui/react/components/TableSearch/index.d.ts.map +0 -1
  408. package/packages/ui/react/components/TableSearch/index.js +0 -8
  409. package/packages/ui/react/components/TableSearch/lang.d.ts.map +0 -1
  410. package/packages/ui/react/components/TableSearch/lang.js +0 -27
  411. package/packages/ui/react/components/TableSearch/tableSearchLocaleStore.d.ts.map +0 -1
  412. package/packages/ui/react/components/TableSearch/tableSearchLocaleStore.js +0 -14
  413. package/packages/ui/react/components/Textarea.d.ts.map +0 -1
  414. package/packages/ui/react/components/Textarea.js +0 -37
  415. package/packages/ui/react/components/Tooltip.d.ts.map +0 -1
  416. package/packages/ui/react/components/TreeSelect.d.ts.map +0 -1
  417. package/packages/ui/react/components/Upload/ImageUpload.d.ts.map +0 -1
  418. package/packages/ui/react/components/Upload/Upload.d.ts.map +0 -1
  419. package/packages/ui/react/components/Upload/Upload.js +0 -8
  420. package/packages/ui/react/components/Upload/index.d.ts.map +0 -1
  421. package/packages/ui/react/components/Upload/index.js +0 -18
  422. package/packages/ui/react/components/breadcrumb.d.ts.map +0 -1
  423. package/packages/ui/react/components/breadcrumb.js +0 -79
  424. package/packages/ui/react/components/hooks/useInputController.d.ts.map +0 -1
  425. package/packages/ui/react/components/index.d.ts.map +0 -1
  426. package/packages/ui/react/components/index.js +0 -39
  427. package/packages/ui/react/components/table.d.ts.map +0 -1
  428. package/packages/ui/react/components/table.js +0 -63
  429. package/packages/ui/react/components/testPage/index.d.ts.map +0 -1
  430. package/packages/ui/react/components/testPage/index.js +0 -123
  431. package/packages/ui/react/hooks/useBreadcrumb.d.ts.map +0 -1
  432. package/packages/ui/react/hooks/useBreadcrumb.js +0 -5
  433. package/packages/ui/react/hooks/useInit.d.ts.map +0 -1
  434. package/packages/ui/react/hooks/useInit.js +0 -11
  435. package/packages/ui/react/hooks/useLanguage.d.ts.map +0 -1
  436. package/packages/ui/react/hooks/useLanguage.js +0 -7
  437. package/packages/ui/react/hooks/usePagination.d.ts.map +0 -1
  438. package/packages/ui/react/index.d.ts.map +0 -1
  439. package/packages/ui/react/index.js +0 -18
  440. package/packages/ui/react/lib/export.d.ts +0 -22
  441. package/packages/ui/react/lib/export.d.ts.map +0 -1
  442. package/packages/ui/react/lib/utils.d.ts +0 -10
  443. package/packages/ui/react/lib/utils.d.ts.map +0 -1
  444. package/packages/ui/react/locales/index.d.ts.map +0 -1
  445. package/packages/ui/react/locales/index.js +0 -9
  446. package/packages/ui/react/stores/breadcrumb.d.ts.map +0 -1
  447. package/packages/ui/react/stores/language.d.ts.map +0 -1
  448. package/packages/ui/react/types/index.d.ts.map +0 -1
  449. package/packages/ui/react/types/index.js +0 -2
  450. package/packages/utils/getAllFilesInFolder.d.ts.map +0 -1
  451. package/packages/utils/getAllFnReturnValue.d.ts.map +0 -1
  452. package/packages/utils/getAllFnReturnValue.js +0 -1
  453. package/packages/utils/index.d.ts.map +0 -1
  454. package/packages/utils/loadFile.d.ts.map +0 -1
  455. package/packages/utils/path.d.ts +0 -7
  456. package/packages/utils/path.d.ts.map +0 -1
  457. package/packages/utils/runFileFn.d.ts.map +0 -1
  458. package/typings/type.d.ts +0 -2
  459. package/typings/type.d.ts.map +0 -1
  460. /package/{app → cjs/app}/controller/view.js +0 -0
  461. /package/{app → cjs/app}/data/signKey.js +0 -0
  462. /package/{app → cjs/app}/extend/logger.js +0 -0
  463. /package/{app → cjs/app}/extend/parsingParamsOnUrl.js +0 -0
  464. /package/{app → cjs/app}/extend/render-view.js +0 -0
  465. /package/{app → cjs/app}/middleware/api-params-verify.js +0 -0
  466. /package/{app → cjs/app}/middleware/api-sign-verify.js +0 -0
  467. /package/{app → cjs/app}/middleware/error-handle.js +0 -0
  468. /package/{app → cjs/app}/middleware/project-handler.js +0 -0
  469. /package/{app → cjs/app}/router/project.js +0 -0
  470. /package/{app → cjs/app}/router/view.js +0 -0
  471. /package/{app → cjs/app}/router-schema/project.js +0 -0
  472. /package/{app → cjs/app}/service/bese.js +0 -0
  473. /package/{app → cjs/app}/type.js +0 -0
  474. /package/{app → cjs/app}/typings.js +0 -0
  475. /package/{index.js → cjs/index.js} +0 -0
  476. /package/{packages → cjs/packages}/core/env.js +0 -0
  477. /package/{packages → cjs/packages}/core/paths.js +0 -0
  478. /package/{packages → cjs/packages}/core/types.js +0 -0
  479. /package/{packages → cjs/packages}/utils/getAllFilesInFolder.js +0 -0
  480. /package/{packages → cjs/packages}/utils/index.js +0 -0
  481. /package/{packages → cjs/packages}/utils/runFileFn.js +0 -0
  482. /package/{typings → cjs/typings}/type.js +0 -0
  483. /package/{app → esm/app}/data/signKey.d.ts +0 -0
  484. /package/{app → esm/app}/extend/db.d.ts +0 -0
  485. /package/{app → esm/app}/extend/generateErrorMessage.d.ts +0 -0
  486. /package/{app → esm/app}/extend/logger.d.ts +0 -0
  487. /package/{app → esm/app}/extend/parsingParamsOnUrl.d.ts +0 -0
  488. /package/{app → esm/app}/middleware.d.ts +0 -0
  489. /package/{app → esm/app}/router/project.d.ts +0 -0
  490. /package/{app → esm/app}/router/view.d.ts +0 -0
  491. /package/{app → esm/app}/router-schema/project.d.ts +0 -0
  492. /package/{app → esm/app}/service/bese.d.ts +0 -0
  493. /package/{app → esm/app}/service/project.d.ts +0 -0
  494. /package/{app → esm/app}/type.d.ts +0 -0
  495. /package/{app → esm/app}/typings.d.ts +0 -0
  496. /package/{index.d.ts → esm/index.d.ts} +0 -0
  497. /package/{packages → esm/packages}/core/env.d.ts +0 -0
  498. /package/{packages → esm/packages}/core/index.d.ts +0 -0
  499. /package/{packages → esm/packages}/core/paths.d.ts +0 -0
  500. /package/{packages → esm/packages}/utils/getAllFnReturnValue.d.ts +0 -0
  501. /package/{packages → esm/packages}/utils/index.d.ts +0 -0
  502. /package/{packages → esm/packages}/utils/runFileFn.d.ts +0 -0
  503. /package/{app/pages → fe/frontend}/main.d.ts +0 -0
  504. /package/{packages → fe/packages}/ui/react/components/Button/index.d.ts +0 -0
  505. /package/{packages → fe/packages}/ui/react/components/Checkbox/Checkbox.d.ts +0 -0
  506. /package/{packages → fe/packages}/ui/react/components/Checkbox/index.d.ts +0 -0
  507. /package/{packages → fe/packages}/ui/react/components/DataTable/ActionBtn.d.ts +0 -0
  508. /package/{packages → fe/packages}/ui/react/components/Date/DateTestPage.d.ts +0 -0
  509. /package/{packages → fe/packages}/ui/react/components/Date/TimePicker.d.ts +0 -0
  510. /package/{packages → fe/packages}/ui/react/components/Date/data.d.ts +0 -0
  511. /package/{packages → fe/packages}/ui/react/components/Date/index.d.ts +0 -0
  512. /package/{packages → fe/packages}/ui/react/components/Dropdown.d.ts +0 -0
  513. /package/{packages → fe/packages}/ui/react/components/Form/SchemeForm/data.d.ts +0 -0
  514. /package/{packages → fe/packages}/ui/react/components/Form/index.d.ts +0 -0
  515. /package/{packages → fe/packages}/ui/react/components/Form/useForm.d.ts +0 -0
  516. /package/{packages → fe/packages}/ui/react/components/ImagePreview/ImagePreview.d.ts +0 -0
  517. /package/{packages → fe/packages}/ui/react/components/ImagePreview/index.d.ts +0 -0
  518. /package/{packages → fe/packages}/ui/react/components/Input/index.d.ts +0 -0
  519. /package/{packages → fe/packages}/ui/react/components/Label/index.d.ts +0 -0
  520. /package/{packages → fe/packages}/ui/react/components/Message/MessageManager.d.ts +0 -0
  521. /package/{packages → fe/packages}/ui/react/components/Message/data.d.ts +0 -0
  522. /package/{packages → fe/packages}/ui/react/components/Message/index.d.ts +0 -0
  523. /package/{packages → fe/packages}/ui/react/components/Modal/index.d.ts +0 -0
  524. /package/{packages → fe/packages}/ui/react/components/Search/index.d.ts +0 -0
  525. /package/{packages → fe/packages}/ui/react/components/Select/index.d.ts +0 -0
  526. /package/{packages → fe/packages}/ui/react/components/Skeleton/index.d.ts +0 -0
  527. /package/{packages → fe/packages}/ui/react/components/Switch/Switch.d.ts +0 -0
  528. /package/{packages → fe/packages}/ui/react/components/Switch/index.d.ts +0 -0
  529. /package/{packages → fe/packages}/ui/react/components/TableSearch/index.d.ts +0 -0
  530. /package/{packages → fe/packages}/ui/react/components/TableSearch/lang.d.ts +0 -0
  531. /package/{packages → fe/packages}/ui/react/components/TableSearch/tableSearchLocaleStore.d.ts +0 -0
  532. /package/{packages → fe/packages}/ui/react/components/Upload/ImageUpload.d.ts +0 -0
  533. /package/{packages → fe/packages}/ui/react/components/Upload/index.d.ts +0 -0
  534. /package/{packages → fe/packages}/ui/react/components/breadcrumb.d.ts +0 -0
  535. /package/{packages → fe/packages}/ui/react/components/index.d.ts +0 -0
  536. /package/{packages → fe/packages}/ui/react/components/table.d.ts +0 -0
  537. /package/{packages → fe/packages}/ui/react/components/testPage/index.d.ts +0 -0
  538. /package/{packages → fe/packages}/ui/react/hooks/useBreadcrumb.d.ts +0 -0
  539. /package/{packages → fe/packages}/ui/react/hooks/useInit.d.ts +0 -0
  540. /package/{packages → fe/packages}/ui/react/hooks/useLanguage.d.ts +0 -0
  541. /package/{packages → fe/packages}/ui/react/hooks/usePagination.d.ts +0 -0
  542. /package/{packages → fe/packages}/ui/react/index.d.ts +0 -0
  543. /package/{packages → fe/packages}/ui/react/locales/index.d.ts +0 -0
  544. /package/{packages → fe/packages}/ui/react/stores/breadcrumb.d.ts +0 -0
  545. /package/{packages → fe/packages}/ui/react/stores/language.d.ts +0 -0
  546. /package/{packages → fe/packages}/ui/react/types/index.d.ts +0 -0
@@ -4,8 +4,15 @@ export type MessageProps = {
4
4
  type?: MessageType;
5
5
  content?: ReactNode;
6
6
  children?: ReactNode;
7
+ /**
8
+ * 存在时间
9
+ * @default 3000ms
10
+ */
7
11
  duration?: number;
8
12
  onClose?: () => void;
13
+ /**
14
+ * 可手动关闭
15
+ */
9
16
  closable?: boolean;
10
17
  className?: string;
11
18
  };
@@ -0,0 +1,55 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from '../../lib/utils';
3
+ import { AlertCircle, CheckCircle2, Info, X, XCircle } from 'lucide-react';
4
+ import { useEffect, useRef, useState } from 'react';
5
+ import { DEFAULT_DURATION } from './data';
6
+ const typeConfig = {
7
+ success: {
8
+ icon: CheckCircle2,
9
+ color: 'text-green-600',
10
+ },
11
+ error: {
12
+ icon: XCircle,
13
+ color: 'text-red-600',
14
+ },
15
+ warning: {
16
+ icon: AlertCircle,
17
+ color: 'text-yellow-600',
18
+ },
19
+ info: {
20
+ icon: Info,
21
+ color: 'text-blue-600',
22
+ },
23
+ };
24
+ export function Message({ type = 'info', content, children, duration = DEFAULT_DURATION, onClose, closable = true, className, }) {
25
+ const displayContent = children ?? content;
26
+ const [visible, setVisible] = useState(true);
27
+ const timerRef = useRef(null);
28
+ const messageRef = useRef(null);
29
+ const Icon = typeConfig[type].icon;
30
+ const iconColor = typeConfig[type].color;
31
+ const handleClose = () => {
32
+ setVisible(false);
33
+ // 等待动画完成后再调用 onClose
34
+ setTimeout(() => {
35
+ onClose?.();
36
+ }, 200);
37
+ };
38
+ // 自动关闭
39
+ useEffect(() => {
40
+ if (duration > 0) {
41
+ timerRef.current = setTimeout(() => {
42
+ handleClose();
43
+ }, duration);
44
+ }
45
+ return () => {
46
+ if (timerRef.current) {
47
+ clearTimeout(timerRef.current);
48
+ }
49
+ };
50
+ // eslint-disable-next-line react-hooks/exhaustive-deps
51
+ }, [duration]);
52
+ if (!visible)
53
+ return null;
54
+ return (_jsxs("div", { ref: messageRef, className: cn('flex items-start gap-3 px-4 py-3 rounded-lg shadow-lg', 'bg-background border border-border', 'min-w-[320px] max-w-[480px]', 'transition-all duration-200', 'pointer-events-auto', visible ? 'opacity-100 translate-y-0' : 'opacity-0 -translate-y-2', className), children: [_jsx(Icon, { size: 20, className: cn('flex-shrink-0 mt-0.5', iconColor) }), _jsx("div", { className: "flex-1 text-sm text-foreground", children: displayContent }), closable && (_jsx("button", { type: "button", onClick: handleClose, "aria-label": "\u5173\u95ED", className: cn('flex-shrink-0 p-0.5 rounded-md', 'text-muted-foreground hover:text-foreground', 'hover:bg-muted', 'transition-colors', 'focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2'), children: _jsx(X, { size: 16 }) }))] }));
55
+ }
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.message = exports.messageManager = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const client_1 = require("react-dom/client");
6
- const Message_1 = require("./Message");
7
- const data_1 = require("./data");
1
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { createRoot } from 'react-dom/client';
3
+ import { Message } from './Message';
4
+ import { DEFAULT_DURATION } from './data';
8
5
  class MessageManagerClass {
9
6
  messages = new Map();
10
7
  container = null;
@@ -15,19 +12,22 @@ class MessageManagerClass {
15
12
  init() {
16
13
  if (typeof document === 'undefined' || this.container)
17
14
  return;
15
+ // 可见消息容器
18
16
  this.container = document.createElement('div');
19
17
  this.container.id = 'message-container';
20
18
  this.container.className = 'fixed top-4 left-1/2 z-[10000] flex flex-col items-center gap-2 pointer-events-none';
21
19
  this.container.style.transform = 'translateX(-50%)';
22
20
  document.body.appendChild(this.container);
21
+ // 屏幕外消息容器 保留回调触发
23
22
  this.offScreenContainer = document.createElement('div');
24
23
  this.offScreenContainer.id = 'message-offscreen-container';
25
24
  this.offScreenContainer.className =
26
25
  'fixed -left-[9999px] top-0 z-[10000] flex flex-col items-center gap-2 pointer-events-none';
27
26
  this.offScreenContainer.setAttribute('aria-hidden', 'true');
28
27
  document.body.appendChild(this.offScreenContainer);
29
- this.root = (0, client_1.createRoot)(this.container);
30
- this.offScreenRoot = (0, client_1.createRoot)(this.offScreenContainer);
28
+ // 创建 React 根节点
29
+ this.root = createRoot(this.container);
30
+ this.offScreenRoot = createRoot(this.offScreenContainer);
31
31
  this.render();
32
32
  }
33
33
  render() {
@@ -35,14 +35,18 @@ class MessageManagerClass {
35
35
  return;
36
36
  const messages = Array.from(this.messages.values());
37
37
  const totalCount = messages.length;
38
+ // 可见消息:最后 maxCount 条
38
39
  const displayMessages = totalCount > this.maxCount ? messages.slice(-this.maxCount) : messages;
40
+ // 屏幕外消息:除了最后 maxCount 条之外的所有消息
39
41
  const offScreenMessages = totalCount > this.maxCount ? messages.slice(0, -this.maxCount) : [];
40
42
  const now = Date.now();
41
- this.root.render((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: displayMessages.map((message) => ((0, jsx_runtime_1.jsx)(Message_1.Message, { ...message, duration: message.expirationTime - now, content: message.content, onClose: () => {
43
+ // 渲染可见消息
44
+ this.root.render(_jsx(_Fragment, { children: displayMessages.map((message) => (_jsx(Message, { ...message, duration: message.expirationTime - now, content: message.content, onClose: () => {
42
45
  message.onClose?.();
43
46
  this.close(message.id);
44
47
  } }, message.id))) }));
45
- this.offScreenRoot.render((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: offScreenMessages.map((message) => ((0, jsx_runtime_1.jsx)(Message_1.Message, { ...message, duration: message.expirationTime - now, content: message.content, onClose: () => {
48
+ // 渲染屏幕外消息
49
+ this.offScreenRoot.render(_jsx(_Fragment, { children: offScreenMessages.map((message) => (_jsx(Message, { ...message, duration: message.expirationTime - now, content: message.content, onClose: () => {
46
50
  message.onClose?.();
47
51
  this.close(message.id);
48
52
  } }, message.id))) }));
@@ -53,7 +57,7 @@ class MessageManagerClass {
53
57
  const id = `message-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
54
58
  const messageConfig = {
55
59
  ...config,
56
- expirationTime: now + (config.duration ?? data_1.DEFAULT_DURATION),
60
+ expirationTime: now + (config.duration ?? DEFAULT_DURATION),
57
61
  id,
58
62
  type,
59
63
  };
@@ -73,13 +77,14 @@ class MessageManagerClass {
73
77
  this.maxCount = count;
74
78
  }
75
79
  }
76
- exports.messageManager = new MessageManagerClass();
77
- exports.message = {
78
- success: (content, config) => exports.messageManager.show({ content, ...config }, 'success'),
79
- error: (content, config) => exports.messageManager.show({ content, ...config }, 'error'),
80
- warning: (content, config) => exports.messageManager.show({ content, ...config }, 'warning'),
81
- info: (content, config) => exports.messageManager.show({ content, ...config }, 'info'),
82
- close: (id) => exports.messageManager.close(id),
83
- closeAll: () => exports.messageManager.closeAll(),
84
- setMaxCount: (count) => exports.messageManager.setMaxCount(count),
80
+ // 单例模式
81
+ export const messageManager = new MessageManagerClass();
82
+ export const message = {
83
+ success: (content, config) => messageManager.show({ content, ...config }, 'success'),
84
+ error: (content, config) => messageManager.show({ content, ...config }, 'error'),
85
+ warning: (content, config) => messageManager.show({ content, ...config }, 'warning'),
86
+ info: (content, config) => messageManager.show({ content, ...config }, 'info'),
87
+ close: (id) => messageManager.close(id),
88
+ closeAll: () => messageManager.closeAll(),
89
+ setMaxCount: (count) => messageManager.setMaxCount(count),
85
90
  };
@@ -0,0 +1 @@
1
+ export const DEFAULT_DURATION = 3000;
@@ -0,0 +1 @@
1
+ export { message } from './MessageManager';
@@ -12,7 +12,13 @@ export type ModalProps = {
12
12
  width?: number | string;
13
13
  centered?: boolean;
14
14
  zIndex?: number;
15
+ /**
16
+ * @default document.body
17
+ */
15
18
  renderNode?: HTMLElement | (() => HTMLElement);
19
+ /**
20
+ * 是否支持键盘关闭 默认开启
21
+ */
16
22
  keyboard?: boolean;
17
23
  };
18
24
  export declare function Modal({ open, onClose, title, children, footer, className, contentClassName, maskClosable, closable, width, centered, renderNode, keyboard, zIndex, }: ModalProps): import("react").ReactPortal | null;
@@ -0,0 +1,51 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from '../../lib/utils';
3
+ import { X } from 'lucide-react';
4
+ import { useEffect, useRef } from 'react';
5
+ import { createPortal } from 'react-dom';
6
+ export function Modal({ open = false, onClose, title, children, footer, className, contentClassName, maskClosable = true, closable = true, width = 520, centered = true, renderNode = document.body, keyboard = true, zIndex = 1000, }) {
7
+ const modalRef = useRef(null);
8
+ const contentRef = useRef(null);
9
+ // 处理 ESC 键关闭
10
+ useEffect(() => {
11
+ if (!open || !keyboard)
12
+ return;
13
+ const handleEscape = (e) => {
14
+ if (e.key === 'Escape' && closable) {
15
+ onClose?.();
16
+ }
17
+ };
18
+ document.addEventListener('keydown', handleEscape);
19
+ return () => {
20
+ document.removeEventListener('keydown', handleEscape);
21
+ };
22
+ }, [open, closable, onClose, keyboard]);
23
+ // 阻止 body 滚动
24
+ useEffect(() => {
25
+ if (open) {
26
+ const originalOverflow = document.body.style.overflow;
27
+ document.body.style.overflow = 'hidden';
28
+ return () => {
29
+ document.body.style.overflow = originalOverflow;
30
+ };
31
+ }
32
+ else {
33
+ return () => { };
34
+ }
35
+ }, [open]);
36
+ // 点击遮罩层关闭
37
+ const handleMaskClick = (e) => {
38
+ if (maskClosable && e.target === e.currentTarget) {
39
+ onClose?.();
40
+ }
41
+ };
42
+ // 点击内容区域阻止冒泡
43
+ const handleContentClick = (e) => {
44
+ e.stopPropagation();
45
+ };
46
+ if (!open)
47
+ return null;
48
+ const modalContent = (_jsx("div", { ref: modalRef, className: cn('fixed inset-0 z-[1000] flex items-center justify-center', 'bg-black/50 backdrop-blur-sm', 'transition-opacity duration-200', open ? 'opacity-100' : 'opacity-0'), style: { zIndex }, onClick: handleMaskClick, children: _jsxs("div", { ref: contentRef, className: cn('relative bg-background rounded-lg shadow-lg', 'flex flex-col max-h-[90vh]', 'transition-all duration-200', open ? 'scale-100 opacity-100' : 'scale-95 opacity-0', centered ? 'my-auto' : 'mt-[10vh]', className), style: { width: typeof width === 'number' ? `${width}px` : width }, onClick: handleContentClick, children: [(title || closable) && (_jsxs("div", { className: "flex items-center justify-between px-6 py-4 border-border", children: [title && _jsx("div", { className: "text-lg font-semibold text-foreground", children: title }), closable && (_jsx("button", { type: "button", onClick: onClose, "aria-label": "\u5173\u95ED", className: cn('ml-auto p-1 rounded-md', 'text-muted-foreground hover:text-foreground', 'hover:bg-muted', 'transition-colors', 'focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2'), children: _jsx(X, { size: 20 }) }))] })), _jsx("div", { className: cn('flex-1 overflow-auto px-6 py-4', contentClassName), children: children }), footer && _jsx("div", { className: "px-6 py-4 border-border", children: footer })] }) }));
49
+ const parent = typeof renderNode === 'function' ? renderNode() : renderNode;
50
+ return createPortal(modalContent, parent);
51
+ }
@@ -22,22 +22,34 @@ declare class ModalManagerClass {
22
22
  }
23
23
  type OpenModalConfig = Omit<ModalConfig, 'id'>;
24
24
  export declare const openConfirmModal: (pConfig: Pick<OpenModalConfig, "content"> & {
25
+ /** 标题 */
25
26
  title?: ReactNode;
27
+ /** 内容 */
26
28
  content: ReactNode;
29
+ /** 确认按钮文本 */
27
30
  okText?: string;
31
+ /** 取消按钮文本 */
28
32
  cancelText?: string;
33
+ /** 确认回调 */
29
34
  onOk?: SumbitButtonProps["onClick"];
35
+ /** 取消回调 */
30
36
  onCancel?: () => void;
31
37
  }) => string;
32
38
  export declare const modalManager: ModalManagerClass;
33
39
  export declare const modal: {
34
40
  open: (config: OpenModalConfig) => string;
35
41
  confirm: (pConfig: Pick<OpenModalConfig, "content"> & {
42
+ /** 标题 */
36
43
  title?: ReactNode;
44
+ /** 内容 */
37
45
  content: ReactNode;
46
+ /** 确认按钮文本 */
38
47
  okText?: string;
48
+ /** 取消按钮文本 */
39
49
  cancelText?: string;
50
+ /** 确认回调 */
40
51
  onOk?: SumbitButtonProps["onClick"];
52
+ /** 取消回调 */
41
53
  onCancel?: () => void;
42
54
  }) => string;
43
55
  close: (id: string) => void;
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.modal = exports.modalManager = exports.openConfirmModal = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const client_1 = require("react-dom/client");
6
- const Button_1 = require("../Button");
7
- const Modal_1 = require("./Modal");
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { createRoot } from 'react-dom/client';
3
+ import { AsynchronousButton, Button } from '../Button';
4
+ import { Modal } from './Modal';
8
5
  class ModalManagerClass {
9
6
  modals = new Map();
10
7
  listeners = new Set();
@@ -16,7 +13,8 @@ class ModalManagerClass {
16
13
  this.container = document.createElement('div');
17
14
  this.container.id = 'modal-container';
18
15
  document.body.appendChild(this.container);
19
- this.root = (0, client_1.createRoot)(this.container);
16
+ // 创建 React 根节点
17
+ this.root = createRoot(this.container);
20
18
  this.render();
21
19
  }
22
20
  notify() {
@@ -30,7 +28,7 @@ class ModalManagerClass {
30
28
  };
31
29
  }
32
30
  open(config) {
33
- this.init();
31
+ this.init(); // 确保已初始化
34
32
  const id = `modal-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
35
33
  const modalConfig = {
36
34
  ...config,
@@ -59,32 +57,33 @@ class ModalManagerClass {
59
57
  if (!this.root)
60
58
  return;
61
59
  const modals = this.getModals();
62
- this.root.render((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: modals.map((modal) => ((0, jsx_runtime_1.jsx)(Modal_1.Modal, { ...modal, open: true, children: modal.content }, modal.id))) }));
60
+ this.root.render(_jsx(_Fragment, { children: modals.map((modal) => (_jsx(Modal, { ...modal, open: true, children: modal.content }, modal.id))) }));
63
61
  }
64
62
  }
65
- const openConfirmModal = (pConfig) => {
63
+ export const openConfirmModal = (pConfig) => {
66
64
  const { onOk, onCancel, okText = '确认', cancelText = '取消', ...props } = pConfig;
67
65
  const config = {
68
66
  title: '提示',
69
- footer: ((0, jsx_runtime_1.jsxs)("div", { className: "flex justify-end gap-3", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { onClick: () => {
67
+ footer: (_jsxs("div", { className: "flex justify-end gap-3", children: [_jsx(Button, { onClick: () => {
70
68
  onCancel?.();
71
- exports.modalManager.close(currentModalId);
72
- }, className: "min-w-[100px] bg-white border-[hsl(var(--theme-primary))] text-[hsl(var(--theme-primary))] hover:bg-[hsl(var(--theme-primary))]/5", children: cancelText }), (0, jsx_runtime_1.jsx)(Button_1.AsynchronousButton, { variant: "primary", onClick: async (e) => {
69
+ modalManager.close(currentModalId);
70
+ }, className: "min-w-[100px] bg-white border-[hsl(var(--theme-primary))] text-[hsl(var(--theme-primary))] hover:bg-[hsl(var(--theme-primary))]/5", children: cancelText }), _jsx(AsynchronousButton, { variant: "primary", onClick: async (e) => {
73
71
  const result = await onOk?.(e);
74
72
  if (typeof result === 'boolean' && !result)
75
73
  return;
76
- exports.modalManager.close(currentModalId);
74
+ modalManager.close(currentModalId);
77
75
  }, className: "min-w-[100px] bg-[hsl(var(--theme-primary))] hover:bg-[hsl(var(--theme-primary))]/90 border-[hsl(var(--theme-primary))] text-[hsl(var(--theme-primary-foreground))]", children: okText })] })),
78
76
  ...props,
79
77
  };
80
- const currentModalId = exports.modalManager.open(config);
78
+ const currentModalId = modalManager.open(config);
81
79
  return currentModalId;
82
80
  };
83
- exports.openConfirmModal = openConfirmModal;
84
- exports.modalManager = new ModalManagerClass();
85
- exports.modal = {
86
- open: (config) => exports.modalManager.open(config),
87
- confirm: exports.openConfirmModal,
88
- close: (id) => exports.modalManager.close(id),
89
- closeAll: () => exports.modalManager.closeAll(),
81
+ // 单例模式
82
+ export const modalManager = new ModalManagerClass();
83
+ // 函数式 API
84
+ export const modal = {
85
+ open: (config) => modalManager.open(config),
86
+ confirm: openConfirmModal,
87
+ close: (id) => modalManager.close(id),
88
+ closeAll: () => modalManager.closeAll(),
90
89
  };
@@ -0,0 +1,2 @@
1
+ export { Modal } from './Modal';
2
+ export { modal } from './ModalManager';
@@ -1,10 +1,17 @@
1
1
  export interface PaginationProps {
2
+ /** 当前页码 */
2
3
  current: number;
4
+ /** 每页显示数量 */
3
5
  pageSize: number;
6
+ /** 总数据量 */
4
7
  total: number;
8
+ /** 页码改变回调 */
5
9
  onChange: (page: number) => void;
10
+ /** 每页显示数量改变回调 */
6
11
  onPageSizeChange?: (pageSize: number) => void;
12
+ /** 每页显示数量选项 */
7
13
  pageSizeOptions?: number[];
14
+ /** 自定义类名 */
8
15
  className?: string;
9
16
  }
10
17
  export declare function Pagination({ current, pageSize, total, onChange, onPageSizeChange, pageSizeOptions, className, }: PaginationProps): import("react/jsx-runtime").JSX.Element | null;
@@ -1,23 +1,24 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Pagination = Pagination;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const utils_1 = require("../lib/utils");
6
- const lucide_react_1 = require("lucide-react");
7
- const Button_1 = require("./Button");
8
- const Select_1 = require("./Select");
9
- function Pagination({ current, pageSize, total, onChange, onPageSizeChange, pageSizeOptions = [10, 20, 50, 100], className, }) {
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { cn } from '../lib/utils';
3
+ import { ChevronLeft, ChevronRight } from 'lucide-react';
4
+ import { Button } from './Button';
5
+ import { Select } from './Select';
6
+ export function Pagination({ current, pageSize, total, onChange, onPageSizeChange, pageSizeOptions = [10, 20, 50, 100], className, }) {
10
7
  const totalPages = Math.ceil(total / pageSize);
8
+ // 生成页码数组
11
9
  const getPageNumbers = () => {
12
10
  const pages = [];
13
- const maxVisible = 7;
11
+ const maxVisible = 7; // 最多显示7个页码
14
12
  if (totalPages <= maxVisible) {
13
+ // 总页数少于等于7,显示所有页码
15
14
  for (let i = 1; i <= totalPages; i++) {
16
15
  pages.push(i);
17
16
  }
18
17
  }
19
18
  else {
19
+ // 总页数大于7,需要省略
20
20
  if (current <= 4) {
21
+ // 当前页在前面
21
22
  for (let i = 1; i <= 5; i++) {
22
23
  pages.push(i);
23
24
  }
@@ -25,6 +26,7 @@ function Pagination({ current, pageSize, total, onChange, onPageSizeChange, page
25
26
  pages.push(totalPages);
26
27
  }
27
28
  else if (current >= totalPages - 3) {
29
+ // 当前页在后面
28
30
  pages.push(1);
29
31
  pages.push('...');
30
32
  for (let i = totalPages - 4; i <= totalPages; i++) {
@@ -32,6 +34,7 @@ function Pagination({ current, pageSize, total, onChange, onPageSizeChange, page
32
34
  }
33
35
  }
34
36
  else {
37
+ // 当前页在中间
35
38
  pages.push(1);
36
39
  pages.push('...');
37
40
  for (let i = current - 1; i <= current + 1; i++) {
@@ -61,6 +64,7 @@ function Pagination({ current, pageSize, total, onChange, onPageSizeChange, page
61
64
  const handlePageSizeChange = (newPageSize) => {
62
65
  if (newPageSize !== undefined && typeof newPageSize === 'number' && newPageSize !== pageSize && onPageSizeChange) {
63
66
  onPageSizeChange(newPageSize);
67
+ // 当改变 pageSize 时,通常需要重置到第一页
64
68
  if (current !== 1) {
65
69
  onChange(1);
66
70
  }
@@ -68,16 +72,16 @@ function Pagination({ current, pageSize, total, onChange, onPageSizeChange, page
68
72
  };
69
73
  if (totalPages === 0)
70
74
  return null;
71
- return ((0, jsx_runtime_1.jsxs)("div", { className: (0, utils_1.cn)('flex items-center gap-4', className), children: [(0, jsx_runtime_1.jsxs)("div", { className: "text-sm text-muted-foreground", children: ["Total ", total] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex-1 flex items-center justify-center gap-2", children: [(0, jsx_runtime_1.jsx)(Button_1.Button, { onClick: handlePrevious, disabled: current === 1, size: "sm", className: (0, utils_1.cn)('inline-flex items-center justify-center', 'h-8 px-3 rounded-md', 'text-sm font-medium', 'border border-border', 'transition-colors', current === 1 ? 'cursor-not-allowed opacity-50 bg-muted' : 'hover:bg-muted bg-background cursor-pointer'), children: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronLeft, { className: "h-4 w-4" }) }), getPageNumbers().map((page, index) => {
75
+ return (_jsxs("div", { className: cn('flex items-center gap-4', className), children: [_jsxs("div", { className: "text-sm text-muted-foreground", children: ["Total ", total] }), _jsxs("div", { className: "flex-1 flex items-center justify-center gap-2", children: [_jsx(Button, { onClick: handlePrevious, disabled: current === 1, size: "sm", className: cn('inline-flex items-center justify-center', 'h-8 px-3 rounded-md', 'text-sm font-medium', 'border border-border', 'transition-colors', current === 1 ? 'cursor-not-allowed opacity-50 bg-muted' : 'hover:bg-muted bg-background cursor-pointer'), children: _jsx(ChevronLeft, { className: "h-4 w-4" }) }), getPageNumbers().map((page, index) => {
72
76
  if (page === '...') {
73
- return ((0, jsx_runtime_1.jsx)("span", { className: "px-2 text-muted-foreground", children: "..." }, `ellipsis-${index}`));
77
+ return (_jsx("span", { className: "px-2 text-muted-foreground", children: "..." }, `ellipsis-${index}`));
74
78
  }
75
- return ((0, jsx_runtime_1.jsx)(Button_1.Button, { onClick: () => handlePageClick(page), size: "sm", className: (0, utils_1.cn)('inline-flex items-center justify-center', 'h-8 min-w-[32px] px-3 rounded-md', 'text-sm font-medium', 'border transition-colors', page === current
79
+ return (_jsx(Button, { onClick: () => handlePageClick(page), size: "sm", className: cn('inline-flex items-center justify-center', 'h-8 min-w-[32px] px-3 rounded-md', 'text-sm font-medium', 'border transition-colors', page === current
76
80
  ? 'bg-theme text-theme-foreground border-theme cursor-default'
77
81
  : 'bg-background border-border hover:bg-muted cursor-pointer'), children: page }, page));
78
- }), (0, jsx_runtime_1.jsx)(Button_1.Button, { onClick: handleNext, size: "sm", disabled: current === totalPages, className: (0, utils_1.cn)('inline-flex items-center justify-center', 'h-8 px-3 rounded-md', 'text-sm font-medium', 'border border-border', 'transition-colors', current === totalPages
82
+ }), _jsx(Button, { onClick: handleNext, size: "sm", disabled: current === totalPages, className: cn('inline-flex items-center justify-center', 'h-8 px-3 rounded-md', 'text-sm font-medium', 'border border-border', 'transition-colors', current === totalPages
79
83
  ? 'cursor-not-allowed opacity-50 bg-muted'
80
- : 'hover:bg-muted bg-background cursor-pointer'), children: (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "h-4 w-4" }) })] }), onPageSizeChange && ((0, jsx_runtime_1.jsx)("div", { className: "flex items-center gap-2", children: (0, jsx_runtime_1.jsx)(Select_1.Select, { value: pageSize, onChange: handlePageSizeChange, options: pageSizeOptions.map((size) => ({
84
+ : 'hover:bg-muted bg-background cursor-pointer'), children: _jsx(ChevronRight, { className: "h-4 w-4" }) })] }), onPageSizeChange && (_jsx("div", { className: "flex items-center gap-2", children: _jsx(Select, { value: pageSize, onChange: handlePageSizeChange, options: pageSizeOptions.map((size) => ({
81
85
  label: `${size}`,
82
86
  value: size,
83
87
  })), className: "w-20 [&>div]:bg-muted [&>div]:border-border [&>div]:shadow-sm [&>div]:py-2 [&>div]:px-3 [&>div]:h-8", clearable: false, searchable: false }) }))] }));
@@ -6,6 +6,9 @@ export type SearchProps<T> = {
6
6
  defaultValue?: T;
7
7
  schemes: MOmit<FormFieldScheme<T>, 'rules' | 'required'>[];
8
8
  children?: ReactNode;
9
+ /**
10
+ * 获取表单实例的回调
11
+ */
9
12
  getForm?: (form: FormInstance<T>) => void;
10
13
  btnsClassName?: string;
11
14
  };
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from '../../lib/utils';
3
+ import { useMemo } from 'react';
4
+ import { SchemeForm } from '../Form';
5
+ const Search = (props) => {
6
+ const { defaultValue: pDefaultValue, schemes, children, getForm, btnsClassName } = props;
7
+ const defaultValue = useMemo(() => {
8
+ return pDefaultValue;
9
+ }, []);
10
+ return (_jsxs("div", { className: "flex items-end justify-between gap-4 flex-wrap", children: [_jsx(SchemeForm, { preserve: true, layout: "horizontal", schemes: schemes, initialValues: defaultValue, getForm: getForm, footerButtons: false }), _jsx("div", { className: cn('flex items-center gap-2 self-end ml-auto flex-wrap', btnsClassName), children: children })] }));
11
+ };
12
+ export default Search;
@@ -0,0 +1 @@
1
+ export { default as Search } from './Search';
@@ -11,7 +11,9 @@ export type SelectProps = {
11
11
  onChange?: (value: string | number | undefined) => void;
12
12
  className?: string;
13
13
  disabled?: boolean;
14
+ /** 开启清除 默认开启*/
14
15
  clearable?: boolean;
16
+ /** 是否支持搜索 默认开启 */
15
17
  searchable?: boolean;
16
18
  };
17
19
  declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLDivElement>>;