@dt-frames/ui 2.0.24 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/README.md +9 -9
  2. package/es/assets/icons/ui-blank.svg +1 -0
  3. package/es/assets/icons/ui-docx.svg +1 -0
  4. package/es/assets/icons/ui-exl.svg +1 -0
  5. package/es/assets/icons/ui-forder-open.svg +1 -0
  6. package/es/assets/icons/ui-forder.svg +1 -0
  7. package/es/assets/icons/ui-jpg.svg +1 -0
  8. package/es/assets/icons/ui-pdf.svg +1 -0
  9. package/es/assets/icons/ui-ppt.svg +1 -0
  10. package/es/assets/icons/ui-rar.svg +1 -0
  11. package/es/assets/icons/ui-table-empty.svg +1 -0
  12. package/es/assets/icons/ui-txt.svg +1 -0
  13. package/es/assets/index.e67ea2f5.css +1 -0
  14. package/es/assets/locales/en.d.ts +1 -0
  15. package/es/assets/locales/en.ts +1 -0
  16. package/es/assets/locales/zh.d.ts +1 -0
  17. package/es/assets/locales/zh.ts +1 -0
  18. package/es/assets/test.ts +1 -0
  19. package/es/components/container/index.d.ts +2 -93
  20. package/es/components/container/index.js +92 -15
  21. package/es/components/container/src/components/bar.d.ts +2 -2
  22. package/es/components/container/{index.less → src/index.scss} +9 -16
  23. package/es/components/container/src/utils/scroll.d.ts +1 -1
  24. package/es/components/curd/index.d.ts +3 -1
  25. package/es/components/curd/index.js +66 -141
  26. package/es/components/curd/src/components/props.d.ts +53 -0
  27. package/es/components/curd/src/components/types/curd.type.d.ts +13 -0
  28. package/es/components/curd/src/hooks/useCurd.d.ts +3 -110
  29. package/es/components/curd/src/props.d.ts +109 -159
  30. package/es/components/curd/src/types/curd.type.d.ts +54 -8
  31. package/es/components/drawer/index.d.ts +3 -7881
  32. package/es/components/drawer/index.js +209 -307
  33. package/es/components/drawer/src/components/DrawerFooter.d.ts +19 -21
  34. package/es/components/drawer/src/hooks/useDrawer.d.ts +2 -2
  35. package/es/components/drawer/src/index.d.ts +11 -7876
  36. package/es/components/drawer/src/index.scss +24 -0
  37. package/es/components/drawer/src/props.d.ts +2 -64
  38. package/es/components/drawer/src/{types/index.type.d.ts → type/drawer.type.d.ts} +26 -14
  39. package/es/components/form/index.d.ts +5 -5
  40. package/es/components/form/index.js +640 -636
  41. package/es/components/form/src/components/DynanicInput.d.ts +2 -0
  42. package/es/components/form/src/components/FormButtons.d.ts +13 -3086
  43. package/es/components/form/src/components/FormInputUseDialog.d.ts +2 -0
  44. package/es/components/form/src/components/FormItem.d.ts +53 -156
  45. package/es/components/form/src/components/RadioButton.d.ts +26 -0
  46. package/es/components/form/src/components/componentMap.d.ts +2 -2
  47. package/es/components/form/src/components/index.d.ts +2 -4
  48. package/es/components/form/src/hooks/useForm.d.ts +3 -3
  49. package/es/components/form/src/hooks/useFormActions.d.ts +38 -5
  50. package/es/components/form/src/hooks/useFormEvent.d.ts +9 -7
  51. package/es/components/form/src/hooks/useFormValue.d.ts +2 -2
  52. package/es/components/form/src/hooks/useFormValues.d.ts +8 -6
  53. package/es/components/form/src/hooks/useLabelWidth.d.ts +1 -1
  54. package/es/components/form/src/index.d.ts +358 -0
  55. package/es/components/form/src/index.scss +162 -0
  56. package/es/components/form/src/props.d.ts +45 -7
  57. package/es/components/form/src/types/actions.type.d.ts +1 -1
  58. package/es/components/form/src/types/form.type.d.ts +59 -26
  59. package/es/components/form/src/types/items.type.d.ts +33 -33
  60. package/es/components/form/src/{hooks → utils}/helper.d.ts +7 -0
  61. package/es/components/icons/index.d.ts +2 -497
  62. package/es/components/icons/index.js +42 -1911
  63. package/es/components/icons/src/{svg-icon.d.ts → SvgIcon.d.ts} +7 -14
  64. package/es/components/icons/src/index.scss +3 -0
  65. package/es/components/iframe/index.js +40 -29
  66. package/es/components/iframe/src/index.d.ts +16 -11
  67. package/es/components/iframe/src/index.scss +20 -0
  68. package/es/components/modal/index.d.ts +3 -2
  69. package/es/components/modal/index.js +188 -198
  70. package/es/components/modal/src/components/CloseIcon.d.ts +4 -20
  71. package/es/components/modal/src/components/Modal.d.ts +201 -108
  72. package/es/components/modal/src/components/ModalFooter.d.ts +12 -20
  73. package/es/components/modal/src/hooks/useDrag.d.ts +2 -3
  74. package/es/components/modal/src/hooks/useFullScreen.d.ts +1 -1
  75. package/es/components/modal/src/hooks/useModal.d.ts +3 -3
  76. package/es/components/modal/src/index.d.ts +32 -359
  77. package/es/components/modal/{index.less → src/index.scss} +104 -82
  78. package/es/components/modal/src/props.d.ts +10 -17
  79. package/es/components/modal/src/types/{modal.type.d.ts → index.type.d.ts} +7 -6
  80. package/es/components/source/index.d.ts +1 -1
  81. package/es/components/source/index.js +142 -113
  82. package/es/components/source/{hooks → src/hooks}/useDownload.d.ts +1 -1
  83. package/es/components/source/{hooks → src/hooks}/useSource.d.ts +24 -20
  84. package/es/components/source/{types → src/types}/source.type.d.ts +12 -13
  85. package/es/components/table/index.d.ts +7 -2
  86. package/es/components/table/index.js +197 -286
  87. package/es/components/table/src/components/TableAction.d.ts +16 -24
  88. package/es/components/table/src/components/TableHeader.d.ts +35 -0
  89. package/es/components/table/src/components/TableRender.d.ts +10 -14
  90. package/es/components/table/src/components/editTable/CellComponent.d.ts +4 -4
  91. package/es/components/table/src/components/editTable/EditTableCell.d.ts +15 -57
  92. package/es/components/table/src/components/editTable/componentMap.d.ts +1 -1
  93. package/es/components/table/src/components/editTable/index.d.ts +3 -3
  94. package/es/components/table/src/components/editTable/props.d.ts +6 -6
  95. package/es/components/table/src/components/tableSetting/Column.d.ts +3 -68
  96. package/es/components/table/src/components/tableSetting/Download.d.ts +11 -0
  97. package/es/components/table/src/components/tableSetting/DownloadCtrl.d.ts +2 -22
  98. package/es/components/table/src/components/tableSetting/Fullscreen.d.ts +2 -22
  99. package/es/components/table/src/components/tableSetting/index.d.ts +17 -0
  100. package/es/components/table/src/hooks/useDataSource.d.ts +3 -4
  101. package/es/components/table/src/hooks/useHeader.d.ts +3 -3
  102. package/es/components/table/src/hooks/useHeaderCode.d.ts +2 -2
  103. package/es/components/table/src/hooks/useLoading.d.ts +3 -3
  104. package/es/components/table/src/hooks/usePagination.d.ts +2 -2
  105. package/es/components/table/src/hooks/useRowSelection.d.ts +1 -1
  106. package/es/components/table/src/hooks/useTable.d.ts +1 -1
  107. package/es/components/table/src/hooks/useTableInstance.d.ts +2 -2
  108. package/es/components/table/src/hooks/useTableScroll.d.ts +0 -1
  109. package/es/components/table/src/hooks/useTableStyle.d.ts +5 -0
  110. package/es/components/table/src/index.d.ts +169 -324
  111. package/es/components/table/{index.less → src/index.scss} +309 -279
  112. package/es/components/table/src/props.d.ts +39 -14
  113. package/es/components/table/src/types/actions.type.d.ts +5 -5
  114. package/es/components/table/src/types/header.type.d.ts +6 -6
  115. package/es/components/table/src/types/table.type.d.ts +84 -21
  116. package/es/components/tree/index.d.ts +2 -1
  117. package/es/components/tree/index.js +320 -324
  118. package/es/components/tree/src/basicProps.d.ts +9 -9
  119. package/es/components/tree/src/components/ContextMenu.d.ts +17 -17
  120. package/es/components/tree/src/components/TreeHeader.d.ts +13 -33
  121. package/es/components/tree/src/hooks/useContextMenu.d.ts +2 -2
  122. package/es/components/tree/src/hooks/useMethod.d.ts +16 -0
  123. package/es/components/tree/src/hooks/useTree.d.ts +5 -15
  124. package/es/components/tree/src/index.d.ts +52 -6369
  125. package/es/components/tree/src/index.scss +178 -0
  126. package/es/components/tree/src/types/action.type.d.ts +64 -0
  127. package/es/components/tree/src/{type → types}/menu.d.ts +1 -1
  128. package/es/components/tree/src/types/tree.d.ts +31 -0
  129. package/es/components/tree/src/utils/tree.d.ts +1 -1
  130. package/es/components/upload/index.d.ts +1 -1
  131. package/es/components/upload/index.js +111 -102
  132. package/es/components/upload/src/basicProps.d.ts +11 -7
  133. package/es/components/upload/src/components/PdfView.d.ts +2 -9
  134. package/es/components/upload/src/components/WordView.d.ts +2 -7
  135. package/es/components/upload/src/hooks/useFile.d.ts +3 -3
  136. package/es/components/upload/src/index.d.ts +47 -96
  137. package/es/components/upload/{index.less → src/index.scss} +19 -13
  138. package/es/components/upload/src/type/file.d.ts +2 -2
  139. package/es/components/upload/src/utils/upload.d.ts +1 -1
  140. package/es/components/vxe_table/index.d.ts +4 -0
  141. package/es/components/vxe_table/index.js +1162 -0
  142. package/es/components/vxe_table/src/components/AApiSelect.d.ts +12 -0
  143. package/es/components/vxe_table/src/components/AAutoComplete.d.ts +2 -0
  144. package/es/components/vxe_table/src/components/AButton.d.ts +12 -0
  145. package/es/components/vxe_table/src/components/AButtonGroup.d.ts +2 -0
  146. package/es/components/vxe_table/src/components/ACascader.d.ts +2 -0
  147. package/es/components/vxe_table/src/components/ACheckbox.d.ts +2 -0
  148. package/es/components/vxe_table/src/components/ACheckboxGroup.d.ts +6 -0
  149. package/es/components/vxe_table/src/components/ADatePicker.d.ts +4 -0
  150. package/es/components/vxe_table/src/components/AEmpty.d.ts +6 -0
  151. package/es/components/vxe_table/src/components/AInput.d.ts +2 -0
  152. package/es/components/vxe_table/src/components/AInputNumber.d.ts +2 -0
  153. package/es/components/vxe_table/src/components/AInputSearch.d.ts +2 -0
  154. package/es/components/vxe_table/src/components/AMonthPicker.d.ts +2 -0
  155. package/es/components/vxe_table/src/components/ARadioGroup.d.ts +6 -0
  156. package/es/components/vxe_table/src/components/ARangePicker.d.ts +2 -0
  157. package/es/components/vxe_table/src/components/ARate.d.ts +2 -0
  158. package/es/components/vxe_table/src/components/ASelect.d.ts +2 -0
  159. package/es/components/vxe_table/src/components/ASwitch.d.ts +2 -0
  160. package/es/components/vxe_table/src/components/ATimePicker.d.ts +2 -0
  161. package/es/components/vxe_table/src/components/ATreeSelect.d.ts +2 -0
  162. package/es/components/vxe_table/src/components/AWeekPicker.d.ts +2 -0
  163. package/es/components/vxe_table/src/components/AYearPicker.d.ts +2 -0
  164. package/es/components/vxe_table/src/components/Select.d.ts +2 -0
  165. package/es/components/vxe_table/src/components/common.d.ts +52 -0
  166. package/es/components/vxe_table/src/components/componentMap.d.ts +3 -0
  167. package/es/components/vxe_table/src/components/index.d.ts +4 -0
  168. package/es/components/vxe_table/src/hooks/useColumns.d.ts +1 -0
  169. package/es/components/vxe_table/src/hooks/useComponents.d.ts +2 -0
  170. package/es/components/vxe_table/src/hooks/useHeader.d.ts +6 -0
  171. package/es/components/vxe_table/src/hooks/useProps.d.ts +3 -0
  172. package/es/components/vxe_table/src/hooks/useVxeTable.d.ts +7 -0
  173. package/es/components/vxe_table/src/index.d.ts +26 -0
  174. package/es/components/vxe_table/src/index.scss +13 -0
  175. package/es/components/vxe_table/src/props.d.ts +1 -0
  176. package/es/components/vxe_table/src/types/componentType.d.ts +1 -0
  177. package/es/components/vxe_table/src/types/vxeTable.type.d.ts +45 -0
  178. package/es/components/vxe_table/src/utils/index.d.ts +6 -0
  179. package/es/directives/index.d.ts +1 -4
  180. package/es/directives/index.js +6 -1991
  181. package/es/theme/index.d.ts +9 -9
  182. package/es/theme/index.js +2112 -2344
  183. package/es/theme/src/components/content/index.d.ts +2 -31
  184. package/es/theme/src/components/feature/BackTop.d.ts +2 -0
  185. package/es/theme/src/components/feature/index.d.ts +2 -7
  186. package/es/theme/src/components/footer/index.d.ts +2 -31
  187. package/es/theme/src/components/header/MultipleHeader.d.ts +2 -0
  188. package/es/theme/src/components/header/components/BreadCrumb.d.ts +2 -0
  189. package/es/theme/src/components/header/components/FullScreen.d.ts +2 -0
  190. package/es/theme/src/components/header/components/LangPicker.d.ts +12 -0
  191. package/es/theme/src/components/header/components/Logo.d.ts +22 -0
  192. package/es/theme/src/components/header/components/MenuFilter.d.ts +2 -0
  193. package/es/theme/src/components/header/components/Notice.d.ts +2 -0
  194. package/es/theme/src/components/header/components/SettintTheme.d.ts +2 -0
  195. package/es/theme/src/components/header/components/Size.d.ts +2 -0
  196. package/es/theme/src/components/header/components/Trigger.d.ts +6 -0
  197. package/es/theme/src/components/header/components/UserInfo.d.ts +2 -0
  198. package/es/theme/src/components/header/components/lock/Lockscreen.d.ts +2 -85
  199. package/es/theme/src/components/header/components/lock/Recharge.d.ts +4 -6
  200. package/es/theme/src/components/header/components/lock/useBattery.d.ts +4 -4
  201. package/es/theme/src/components/header/components/lock/useTime.d.ts +5 -5
  202. package/es/theme/src/components/header/components/theme-drawer/Color.d.ts +26 -0
  203. package/es/theme/src/components/header/components/theme-drawer/ColorPrimary.d.ts +27 -0
  204. package/es/theme/src/components/header/components/theme-drawer/Feature.d.ts +2 -0
  205. package/es/theme/src/components/header/components/theme-drawer/InputNumber.d.ts +28 -0
  206. package/es/theme/src/components/header/components/theme-drawer/MenuType.d.ts +2 -0
  207. package/es/theme/src/components/header/components/theme-drawer/Select.d.ts +44 -0
  208. package/es/theme/src/components/header/components/theme-drawer/Switch.d.ts +29 -0
  209. package/es/theme/src/components/header/components/theme-drawer/Var.d.ts +2 -0
  210. package/es/theme/src/components/header/components/theme-drawer/styles/GlobalStyle.d.ts +2 -0
  211. package/es/theme/src/components/header/components/theme-drawer/styles/MenuStyle.d.ts +2 -0
  212. package/es/theme/src/components/header/helper/changeTheme.d.ts +15 -0
  213. package/es/theme/src/components/header/helper/{menu-tree.d.ts → menuTree.d.ts} +1 -1
  214. package/es/theme/src/components/header/index.d.ts +4 -547
  215. package/es/theme/src/components/sider/components/DragBar.d.ts +2 -0
  216. package/es/theme/src/components/sider/components/{layout-menu.d.ts → LayoutMenu.d.ts} +5 -5
  217. package/es/theme/src/components/sider/components/MixSider.d.ts +2 -0
  218. package/es/theme/src/components/sider/components/SiderTrigger.d.ts +14 -0
  219. package/es/theme/src/components/sider/components/basic-menu/basic-menu-item.d.ts +8 -35
  220. package/es/theme/src/components/sider/components/basic-menu/basic-sub-menu-item.d.ts +8 -100
  221. package/es/theme/src/components/sider/components/basic-menu/index.d.ts +64 -0
  222. package/es/theme/src/components/sider/components/basic-menu/menu-item-content.d.ts +6 -10
  223. package/es/theme/src/components/sider/components/{props.d.ts → basic-menu/props.d.ts} +12 -29
  224. package/es/theme/src/components/sider/helper/sider.d.ts +3 -3
  225. package/es/theme/src/components/sider/helper/split-menu.d.ts +2 -2
  226. package/es/theme/src/components/sider/index.d.ts +2 -235
  227. package/es/theme/src/components/tabs/components/TabContent.d.ts +4 -21
  228. package/es/theme/src/components/tabs/components/TabRedo.d.ts +2 -23
  229. package/es/theme/src/components/tabs/hooks/useTabDropdown.d.ts +9 -3
  230. package/es/theme/src/components/tabs/hooks/useTabs.d.ts +1 -1
  231. package/es/theme/src/components/tabs/index.d.ts +2 -86
  232. package/es/theme/src/consts/color.d.ts +3 -0
  233. package/es/theme/src/consts/index.d.ts +14 -0
  234. package/es/theme/src/enums/index.d.ts +34 -1
  235. package/es/theme/src/hooks/index.d.ts +6 -6
  236. package/es/theme/src/hooks/useDragLine.d.ts +1 -1
  237. package/es/theme/src/hooks/useHeader.d.ts +22 -23
  238. package/es/theme/src/hooks/useMenu.d.ts +26 -26
  239. package/es/theme/src/hooks/useMultifyTab.d.ts +6 -6
  240. package/es/theme/src/hooks/useOpenKeys.d.ts +3 -3
  241. package/es/theme/src/hooks/useTheme.d.ts +25 -7
  242. package/es/theme/src/index.d.ts +2 -1630
  243. package/es/theme/src/index.scss +1134 -0
  244. package/es/theme/src/stores/index.d.ts +2 -2
  245. package/es/theme/src/stores/lockscreen.store.d.ts +7 -5
  246. package/es/theme/src/stores/routeReuse.store.d.ts +18 -20
  247. package/es/theme/src/stores/theme.store.d.ts +9 -15
  248. package/es/theme/{transition.less → src/transition.scss} +1 -1
  249. package/es/theme/src/types/index.d.ts +0 -3
  250. package/es/theme/src/types/menu.type.d.ts +2 -1
  251. package/es/theme/src/types/theme.type.d.ts +31 -12
  252. package/es/theme/src/utils/color.d.ts +14 -0
  253. package/es/theme/src/utils/index.d.ts +3 -0
  254. package/es/theme/src/utils.ts/index.d.ts +3 -0
  255. package/index.d.ts +12 -13
  256. package/index.js +44 -62
  257. package/manualContentPath.js +73 -19
  258. package/package.json +65 -65
  259. package/tsconfig.json +19 -30
  260. package/tsconfig.tsbuildinfo +1 -0
  261. package/vite.config.ts +82 -68
  262. package/es/assets/data/icons/actions.d.ts +0 -1
  263. package/es/assets/data/icons/actions.ts +0 -423
  264. package/es/assets/data/icons/code.d.ts +0 -1
  265. package/es/assets/data/icons/code.ts +0 -10
  266. package/es/assets/data/icons/commuticate.d.ts +0 -1
  267. package/es/assets/data/icons/commuticate.ts +0 -182
  268. package/es/assets/data/icons/currency.d.ts +0 -1
  269. package/es/assets/data/icons/currency.ts +0 -44
  270. package/es/assets/data/icons/devices.d.ts +0 -1
  271. package/es/assets/data/icons/devices.ts +0 -126
  272. package/es/assets/data/icons/edit.d.ts +0 -1
  273. package/es/assets/data/icons/edit.ts +0 -163
  274. package/es/assets/data/icons/file.d.ts +0 -1
  275. package/es/assets/data/icons/file.ts +0 -99
  276. package/es/assets/data/icons/math.d.ts +0 -1
  277. package/es/assets/data/icons/math.ts +0 -53
  278. package/es/assets/data/icons/message.d.ts +0 -1
  279. package/es/assets/data/icons/message.ts +0 -68
  280. package/es/assets/data/icons/navigate.d.ts +0 -1
  281. package/es/assets/data/icons/navigate.ts +0 -181
  282. package/es/assets/data/icons/other.d.ts +0 -1
  283. package/es/assets/data/icons/other.ts +0 -324
  284. package/es/assets/data/index.d.ts +0 -4
  285. package/es/assets/data/index.ts +0 -58
  286. package/es/assets/imgs/tree/forder-open.svg +0 -1
  287. package/es/assets/imgs/tree/forder.svg +0 -1
  288. package/es/components/container/src/components/scroll-bar.d.ts +0 -70
  289. package/es/components/container/src/scroll-container.d.ts +0 -76
  290. package/es/components/container/src/slot-container.d.ts +0 -20
  291. package/es/components/curd/src/components/Curd.d.ts +0 -384
  292. package/es/components/drawer/index.less +0 -16
  293. package/es/components/drawer/src/components/DrawerHeader.d.ts +0 -11
  294. package/es/components/form/index.less +0 -361
  295. package/es/components/form/src/components/formIcon.d.ts +0 -14
  296. package/es/components/form/src/components/formInputUseDialog.d.ts +0 -17
  297. package/es/components/form/src/components/radioButton.d.ts +0 -34
  298. package/es/components/form/src/enums/index.d.ts +0 -7
  299. package/es/components/icons/index.less +0 -47
  300. package/es/components/icons/src/pick-icon.d.ts +0 -455
  301. package/es/components/iframe/index.less +0 -29
  302. package/es/components/modal/src/components/ModalWrap.d.ts +0 -79
  303. package/es/components/source/utils/index.d.ts +0 -8
  304. package/es/components/table/src/enums/table.enum.d.ts +0 -5
  305. package/es/components/table/src/hooks/useRow.d.ts +0 -5
  306. package/es/components/tree/index.less +0 -200
  307. package/es/components/tree/src/type/tree.d.ts +0 -50
  308. package/es/directives/icon.d.ts +0 -2
  309. package/es/global.d.ts +0 -7
  310. package/es/index.d.ts +0 -1
  311. package/es/index.js +0 -4
  312. package/es/theme/index.less +0 -1003
  313. package/es/theme/src/components/feature/back-top.d.ts +0 -5
  314. package/es/theme/src/components/header/components/bread-crumb.d.ts +0 -6
  315. package/es/theme/src/components/header/components/fullscreen.d.ts +0 -5
  316. package/es/theme/src/components/header/components/index.d.ts +0 -11
  317. package/es/theme/src/components/header/components/lang-picker.d.ts +0 -23
  318. package/es/theme/src/components/header/components/lock/index.d.ts +0 -2
  319. package/es/theme/src/components/header/components/logo.d.ts +0 -55
  320. package/es/theme/src/components/header/components/menu-filter.d.ts +0 -22
  321. package/es/theme/src/components/header/components/notify.d.ts +0 -22
  322. package/es/theme/src/components/header/components/setting-theme.d.ts +0 -223
  323. package/es/theme/src/components/header/components/size.d.ts +0 -21
  324. package/es/theme/src/components/header/components/theme-drawer/feature.d.ts +0 -138
  325. package/es/theme/src/components/header/components/theme-drawer/index.d.ts +0 -3
  326. package/es/theme/src/components/header/components/theme-drawer/menu-type.d.ts +0 -16
  327. package/es/theme/src/components/header/components/theme-drawer/select.d.ts +0 -58
  328. package/es/theme/src/components/header/components/theme-drawer/switch.d.ts +0 -49
  329. package/es/theme/src/components/header/components/trigger.d.ts +0 -10
  330. package/es/theme/src/components/header/components/user-info.d.ts +0 -44
  331. package/es/theme/src/components/header/helper/change-theme.d.ts +0 -13
  332. package/es/theme/src/components/header/multiple-header.d.ts +0 -660
  333. package/es/theme/src/components/sider/components/basic-menu/basic-menu.d.ts +0 -207
  334. package/es/theme/src/components/sider/components/drag-bar.d.ts +0 -14
  335. package/es/theme/src/components/sider/components/sider-trigger.d.ts +0 -17
  336. package/es/theme/src/components/sider/mix-sider.d.ts +0 -167
  337. package/es/theme/src/components/tabs/components/index.d.ts +0 -3
  338. package/es/theme/src/components/tabs/types/tabs.type.d.ts +0 -7
  339. package/es/theme/src/enums/theme.enum.d.ts +0 -34
  340. package/es/theme/src/setting/theme.setting.d.ts +0 -2
  341. package/es/utils/withInstall.d.ts +0 -4
  342. package/tailwind.config.cjs +0 -11
  343. package/tsconfig.node.json +0 -9
  344. /package/es/assets/{icons → fonts}/iconfont.css +0 -0
  345. /package/es/assets/{icons → fonts}/iconfont.eot +0 -0
  346. /package/es/assets/{icons → fonts}/iconfont.svg +0 -0
  347. /package/es/assets/{icons → fonts}/iconfont.ttf +0 -0
  348. /package/es/assets/{icons → fonts}/iconfont.woff +0 -0
  349. /package/es/assets/{icons → fonts}/iconfont.woff2 +0 -0
  350. /package/es/components/container/src/types/{scroll.type.d.ts → index.d.ts} +0 -0
@@ -1,53 +1,85 @@
1
+ import { isProd, getDynamicProps, error, useI18n, isNumber, useAppStore, isString, isFunction, isArray, isUnDef, getSlot, isBoolean, isNull, isDef, isObject, isNullOrUnDef, deepMerge, dispatchResize } from "@dt-frames/core";
2
+ import { ref, onUnmounted, unref, watch, nextTick, computed, getCurrentInstance, reactive, readonly, watchEffect, toRaw, defineComponent, useAttrs, openBlock, createBlock, mergeProps, isRef, withCtx, createElementBlock, Fragment, renderList, createTextVNode, toDisplayString, createElementVNode, createVNode, normalizeProps, guardReactiveProps, createCommentVNode, toRefs, isVNode, resolveDirective, withDirectives, normalizeClass, normalizeStyle, onMounted, withKeys, createSlots, renderSlot } from "vue";
1
3
  import { RadioButton, RadioGroup, Input, Button, FormItem as FormItem$1, Col as Col$1, Row, Form as Form$1 } from "ant-design-vue/es";
2
- import "ant-design-vue/es/form/style";
3
- import "ant-design-vue/es/row/style";
4
- import { computed, unref, getCurrentInstance, reactive, readonly, watchEffect, nextTick, toRaw, defineComponent, useAttrs, openBlock, createBlock, mergeProps, isRef, withCtx, createElementBlock, Fragment, renderList, createTextVNode, toDisplayString, createElementVNode, createVNode, normalizeProps, guardReactiveProps, createCommentVNode, ref, toRefs, isVNode, watch, resolveDirective, normalizeStyle, withDirectives, normalizeClass, onMounted, withKeys, createSlots, renderSlot } from "vue";
5
- import { useAppStore, isNumber, useI18n, isString, isFunction, error, useSlots, isArray, isUnDef, isBoolean, isNull, dispatchResize, isObject, deepMerge, isNullAndUnDef, useTimeoutFn } from "@dt-frames/core";
6
- import { merge, isEqual, omit, cloneDeep, upperFirst, uniqBy, set } from "lodash-es";
4
+ import { useHeader, UiSize } from "../../theme/index";
5
+ import { merge, isEqual, omit, trim, cloneDeep, upperFirst, set, uniqBy } from "lodash-es";
7
6
  import { Input as Input$1, Select, TreeSelect, Radio, Checkbox, AutoComplete, Cascader, DatePicker, InputNumber, Switch, TimePicker, Slider, Rate, Divider, Col, Tooltip, Form, FormItem } from "ant-design-vue";
8
- import { useHeader, UiSize } from "../../theme";
9
- import "ant-design-vue/es/radio/style";
10
- import "ant-design-vue/es/input/style";
11
- import "ant-design-vue/es/cascader/style";
12
- import "ant-design-vue/es/input-number/style";
13
- import "ant-design-vue/es/switch/style";
14
- import "ant-design-vue/es/tree-select/style";
15
- import "ant-design-vue/es/slider/style";
16
- import "ant-design-vue/es/rate/style";
17
- import "ant-design-vue/es/date-picker/style";
18
7
  import { DtUpload } from "../../components/upload";
19
- import "ant-design-vue/es/col/style";
20
- import "ant-design-vue/es/button/style";
21
8
  import dayjs from "dayjs";
22
- function useLabelWidth(schemaItemRef, propsRef) {
23
- const { getIsZH } = useHeader();
24
- const { appConf } = useAppStore();
25
- return computed(() => {
26
- const { labelWidth, enLabelWidth, labelCol = {}, wrapperCol = {} } = unref(schemaItemRef);
27
- const {
28
- labelWidth: gLabelWidth,
29
- enLabelWidth: gEnLabelWidth,
30
- labelCol: glabelCol = {},
31
- wrapperCol: gwrapperCol = {},
32
- layout = appConf.ui.form.layout
33
- } = unref(propsRef);
34
- let width = (unref(getIsZH) ? labelWidth ?? gLabelWidth : enLabelWidth ?? gEnLabelWidth) ?? labelWidth ?? gLabelWidth ?? 0;
35
- const labelcol = merge({}, glabelCol, labelCol);
36
- const wrapcol = merge({}, gwrapperCol, wrapperCol);
37
- width = isNumber(width) ? `${width}px` : width;
38
- return {
39
- labelCol: merge(
40
- {},
41
- { style: { width } },
42
- labelcol
43
- ),
44
- wrapperCol: merge(
45
- {},
46
- { style: { width: layout === "vertical" ? "100%" : `calc(100% - ${width})` } },
47
- wrapcol
48
- )
49
- };
50
- });
9
+ import { Icon } from "../icons";
10
+ function useForm(props) {
11
+ const formRef = ref(null);
12
+ const loadedRef = ref(false);
13
+ function register(instance) {
14
+ isProd() && onUnmounted(() => {
15
+ formRef.value = null;
16
+ loadedRef.value = null;
17
+ });
18
+ if (unref(loadedRef) && isProd() && instance === unref(formRef))
19
+ return;
20
+ formRef.value = instance;
21
+ loadedRef.value = true;
22
+ watch(
23
+ () => props,
24
+ () => props && instance.setProps(getDynamicProps(props)),
25
+ {
26
+ immediate: true,
27
+ deep: true
28
+ }
29
+ );
30
+ }
31
+ async function getForm() {
32
+ const form = unref(formRef);
33
+ if (!form)
34
+ error("\u8868\u5355\u672A\u7533\u660E!");
35
+ await nextTick();
36
+ return form;
37
+ }
38
+ const methods = {
39
+ setProps: async (props2) => {
40
+ const form = await getForm();
41
+ form.setProps(props2);
42
+ },
43
+ updateSchema: async (data) => {
44
+ const form = await getForm();
45
+ form.updateSchema(data);
46
+ },
47
+ resetSchema: async (data) => {
48
+ const form = await getForm();
49
+ form.resetSchema(data);
50
+ },
51
+ clearValidate: async (name) => {
52
+ const form = await getForm();
53
+ form.clearValidate(name);
54
+ },
55
+ resetForms: async () => {
56
+ const form = await getForm();
57
+ form.resetForms();
58
+ },
59
+ removeFormByName: async (name) => {
60
+ unref(formRef)?.removeFormByName(name);
61
+ },
62
+ setFormValues: async (values) => {
63
+ const form = await getForm();
64
+ form.setFormValues(values);
65
+ },
66
+ appendFormItems: async (schema, prefixName, first) => {
67
+ const form = await getForm();
68
+ form.appendFormItems(schema, prefixName, first);
69
+ },
70
+ validate: async (nameList) => {
71
+ const form = await getForm();
72
+ return form.validate(nameList);
73
+ },
74
+ validateFields: async (nameList) => {
75
+ const form = await getForm();
76
+ return form.validateFields(nameList);
77
+ },
78
+ getFormValues: () => {
79
+ return unref(formRef)?.getFormValues();
80
+ }
81
+ };
82
+ return [register, methods];
51
83
  }
52
84
  const SINGLE_DATA_TYPE = ["DatePicker", "MonthPicker", "WeekPicker", "TimePicker"];
53
85
  const MULTIFY_DATA_TYPE = ["RangePicker"];
@@ -87,6 +119,42 @@ function handleInputNumberValue(component, val) {
87
119
  }
88
120
  return val;
89
121
  }
122
+ const SEARCH_BTN_NAME = "UI.SEARCH";
123
+ const RESET_BTN_NAME = "UI.RESET";
124
+ const SEARCH_BTNS = [
125
+ { label: SEARCH_BTN_NAME, preIcon: "mdi:magnify", type: "primary" },
126
+ { label: RESET_BTN_NAME, preIcon: "mdi:refresh", type: "default" }
127
+ ];
128
+ function useLabelWidth(schemaItemRef, propsRef) {
129
+ const { getIsZH } = useHeader();
130
+ const { appConf } = useAppStore();
131
+ return computed(() => {
132
+ const { labelWidth, enLabelWidth, labelCol = {}, wrapperCol = {} } = unref(schemaItemRef);
133
+ const {
134
+ labelWidth: gLabelWidth,
135
+ enLabelWidth: gEnLabelWidth,
136
+ labelCol: glabelCol = {},
137
+ wrapperCol: gwrapperCol = {},
138
+ layout = appConf.ui.form.layout
139
+ } = unref(propsRef);
140
+ let width = (unref(getIsZH) ? labelWidth ?? gLabelWidth : enLabelWidth ?? gEnLabelWidth) ?? labelWidth ?? gLabelWidth ?? 0;
141
+ const labelcol = merge({}, glabelCol, labelCol);
142
+ const wrapcol = merge({}, gwrapperCol, wrapperCol);
143
+ width = isNumber(width) ? `${width}px` : width;
144
+ return {
145
+ labelCol: merge(
146
+ {},
147
+ { style: { width } },
148
+ labelcol
149
+ ),
150
+ wrapperCol: merge(
151
+ {},
152
+ { style: { width: layout === "vertical" ? "100%" : `calc(100% - ${width})` } },
153
+ wrapcol
154
+ )
155
+ };
156
+ });
157
+ }
90
158
  function useFormValue(props, key = "value", changeEvent = "change", emitData) {
91
159
  const instance = getCurrentInstance();
92
160
  const emit = instance?.emit;
@@ -119,7 +187,7 @@ function useFormValue(props, key = "value", changeEvent = "change", emitData) {
119
187
  return [state, setState, defaultState];
120
188
  }
121
189
  const _sfc_main$4 = /* @__PURE__ */ defineComponent({
122
- __name: "radioButton",
190
+ __name: "RadioButton",
123
191
  props: {
124
192
  value: {
125
193
  type: [String, Number, Boolean]
@@ -171,7 +239,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
171
239
  });
172
240
  const _hoisted_1$1 = { class: "input-with-dialog" };
173
241
  const _sfc_main$3 = /* @__PURE__ */ defineComponent({
174
- __name: "formInputUseDialog",
242
+ __name: "FormInputUseDialog",
175
243
  setup(__props) {
176
244
  const { t } = useI18n("UI");
177
245
  const attrs = useAttrs();
@@ -275,9 +343,6 @@ const _sfc_main$2 = {
275
343
  setup(props, {
276
344
  slots
277
345
  }) {
278
- const {
279
- getSlot
280
- } = useSlots();
281
346
  const {
282
347
  t
283
348
  } = useI18n("UI");
@@ -350,7 +415,8 @@ const _sfc_main$2 = {
350
415
  colon = appConf.ui.form.colon,
351
416
  suffix,
352
417
  prefix,
353
- description
418
+ description,
419
+ label
354
420
  } = props.schema;
355
421
  const {
356
422
  labelCol,
@@ -358,7 +424,11 @@ const _sfc_main$2 = {
358
424
  } = unref(useLabelWidth(schema, formProps));
359
425
  const getContent = () => {
360
426
  const value = unref(getValues);
361
- let _con = slot ? getSlot(slots, slot, value.model) : render ? render(value.model) : renderFormItem();
427
+ const slotData = {
428
+ model: value.model,
429
+ name
430
+ };
431
+ let _con = slot ? getSlot(slots, slot, slotData) : render ? render(value.model) : renderFormItem();
362
432
  return component === "InputGroup" ? createVNode(FormItem, {
363
433
  "class": "m-0"
364
434
  }, _isSlot(_con) ? _con : {
@@ -373,7 +443,7 @@ const _sfc_main$2 = {
373
443
  };
374
444
  return createVNode(Form.Item, {
375
445
  "name": isArray(name) ? name.join("-") : name,
376
- "colon": colon,
446
+ "colon": trim(label) ? colon : false,
377
447
  "class": [unref(getUiSize), {
378
448
  "suffix-item": !!suffix
379
449
  }],
@@ -391,20 +461,20 @@ const _sfc_main$2 = {
391
461
  }, [getContent()]), !!suffix && createVNode("span", {
392
462
  "class": "suffix px-2"
393
463
  }, [getSuffix()])]), description && createVNode("div", {
394
- "class": "opacity-50 text-12"
464
+ "class": "opacity-50 text-13px py-1 leading-5"
395
465
  }, [description])]
396
466
  });
397
467
  }
398
468
  function renderLabel() {
399
469
  const {
400
- label,
470
+ label = null,
401
471
  toolTip,
402
472
  subLabel,
403
473
  toolTipProps = {}
404
474
  } = props.schema;
405
475
  const renderLabel2 = subLabel ? createVNode("span", null, [" ", label, createTextVNode(" "), createVNode("span", {
406
476
  "class": "text-secondary opacity-50"
407
- }, [createTextVNode("("), subLabel, createTextVNode(")")])]) : label;
477
+ }, [createTextVNode("("), subLabel, createTextVNode(")")])]) : label === null ? "" : label || " ";
408
478
  const _toolTip = isFunction(toolTip) ? toolTip(unref(getValues).model) : toolTip;
409
479
  const _toolTipProps = {
410
480
  title: renderLabel2,
@@ -485,8 +555,15 @@ const _sfc_main$2 = {
485
555
  }
486
556
  return size === UiSize.MIDDLE ? "default" : size;
487
557
  };
558
+ const getAllowClear = () => {
559
+ if (isDef(_sProps?.allowClear))
560
+ return _sProps?.allowClear;
561
+ if (isDef(unref(formProps).allowClear))
562
+ return unref(formProps).allowClear;
563
+ return appConf.ui.form.allowClear ?? true;
564
+ };
488
565
  const itemProps = {
489
- allowClear: _sProps?.allowClear ?? appConf.ui.form.allowClear,
566
+ allowClear: getAllowClear(),
490
567
  size: getSize(),
491
568
  ...unref(getComponentProps),
492
569
  disabled: unref(getDisable)
@@ -507,7 +584,10 @@ const _sfc_main$2 = {
507
584
  }
508
585
  itemProps.formValues = unref(getValues);
509
586
  if (["Select", "DatePicker", "MonthPicker", "WeekPicker", "RangePicker"].includes(component)) {
510
- itemProps.dropdownClassName += ` ${unref(getUiSize)}`;
587
+ itemProps.popupClassName += ` ${unref(getUiSize)}`;
588
+ }
589
+ if (["InputPassword"].includes(component)) {
590
+ itemProps.autoComplete = true;
511
591
  }
512
592
  const bindValue = {
513
593
  [valueField || (isCheck ? "checked" : "value")]: props.formModel[name]
@@ -621,7 +701,7 @@ const _sfc_main$2 = {
621
701
  span: gSpan
622
702
  };
623
703
  } else {
624
- _colProps = mode === "search" ? appConf.ui.form.searchColspan : appConf.ui.form.dialogColspan;
704
+ _colProps = mode === "search" ? appConf.ui.form.colspan : appConf.ui.modal.colspan;
625
705
  }
626
706
  const values = unref(getValues);
627
707
  if (!component) {
@@ -651,215 +731,229 @@ const _sfc_main$2 = {
651
731
  };
652
732
  }
653
733
  };
654
- const _hoisted_1 = {
655
- key: 0,
656
- className: "preIcon pr-1"
657
- };
658
- const _hoisted_2 = {
659
- key: 0,
660
- className: "preIcon pl-1"
661
- };
662
- const _hoisted_3 = { class: "text" };
663
- const _hoisted_4 = /* @__PURE__ */ createElementVNode("i", { class: "text-2xl i ic:baseline-arrow-drop-down" }, null, -1);
664
- const _hoisted_5 = [
665
- _hoisted_4
666
- ];
667
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
668
- __name: "FormButtons",
669
- props: {
670
- mode: {
671
- type: String,
672
- default: "search"
673
- },
674
- show: {
675
- type: Boolean,
676
- default: true
677
- },
678
- showAdvancedButton: {
679
- type: Boolean,
680
- default: true
681
- },
682
- minShowColumn: {
683
- type: Number,
684
- default: 2
685
- },
686
- buttonList: {
687
- type: [Array],
688
- default: []
689
- },
690
- authPrefix: {
691
- type: String
692
- },
693
- isAdvanced: {
694
- type: Boolean,
695
- default: true
696
- },
697
- colspan: {
698
- type: Object
699
- },
700
- style: {
701
- type: Object,
702
- default: () => {
703
- }
734
+ const BasicProps = {
735
+ mode: {
736
+ type: String,
737
+ default: "search"
738
+ },
739
+ autoFetch: {
740
+ type: Boolean,
741
+ default: true
742
+ },
743
+ model: {
744
+ type: Object,
745
+ default: () => ({})
746
+ },
747
+ layout: {
748
+ type: String,
749
+ default: "horizontal"
750
+ },
751
+ labelWidth: {
752
+ type: [Number, String],
753
+ default: 100
754
+ },
755
+ enLabelWidth: {
756
+ type: [Number, String],
757
+ default: 100
758
+ },
759
+ labelAlign: {
760
+ type: String,
761
+ default: "right"
762
+ },
763
+ labelCol: {
764
+ type: Object,
765
+ default: () => ({})
766
+ },
767
+ wrapperCol: {
768
+ type: Object,
769
+ default: () => ({})
770
+ },
771
+ rowProps: {
772
+ type: Object,
773
+ default: () => ({})
774
+ },
775
+ colProps: {
776
+ type: Object
777
+ },
778
+ span: {
779
+ type: Number
780
+ },
781
+ size: {
782
+ type: String
783
+ },
784
+ disabled: {
785
+ type: Boolean,
786
+ default: false
787
+ },
788
+ compact: {
789
+ type: Boolean,
790
+ default: null
791
+ },
792
+ schemas: {
793
+ type: Array,
794
+ default: () => []
795
+ },
796
+ autoFetchOnEnter: {
797
+ type: Boolean,
798
+ default: true
799
+ },
800
+ minShowColumn: {
801
+ type: Number,
802
+ default: 2
803
+ },
804
+ showAdvancedButton: {
805
+ type: Boolean,
806
+ default: true
807
+ },
808
+ allowClear: {
809
+ type: Boolean,
810
+ default: true
811
+ },
812
+ scrollToFirstError: {
813
+ type: Boolean,
814
+ default: true
815
+ },
816
+ colon: {
817
+ type: Boolean,
818
+ default: true
819
+ },
820
+ loading: {
821
+ type: Object,
822
+ default: () => {
823
+ return {};
704
824
  }
705
825
  },
706
- emits: ["handle-method"],
707
- setup(__props, { emit: emits }) {
708
- const props = __props;
709
- const { t } = useI18n();
710
- const advancedRef = ref(props.isAdvanced);
711
- let key = 0;
712
- const showAdvanceRef = computed(() => {
713
- return props.mode === "search" ? props.showAdvancedButton : false;
714
- });
715
- const getAuth = (auth) => {
716
- const { authPrefix } = props;
717
- if (authPrefix && auth || !authPrefix && auth && auth.includes(":")) {
718
- return authPrefix ? `${authPrefix}:${auth}` : auth;
719
- } else {
720
- return null;
826
+ onSearch: {
827
+ type: Function,
828
+ default: (params) => {
829
+ }
830
+ },
831
+ onReset: {
832
+ type: Function,
833
+ default: (params) => {
834
+ }
835
+ },
836
+ buttons: {
837
+ type: [Array, null, Boolean],
838
+ default: false
839
+ },
840
+ modelChange: {
841
+ type: Function,
842
+ default: (params, key, value) => {
843
+ }
844
+ },
845
+ resetFunc: {
846
+ type: Function
847
+ },
848
+ registerInstance: {
849
+ type: Function
850
+ }
851
+ };
852
+ function useFormValues({
853
+ defaultValue,
854
+ getSchema,
855
+ formModel
856
+ }) {
857
+ const getComMap = () => {
858
+ let comMap = /* @__PURE__ */ new Map();
859
+ unref(getSchema).map((it) => {
860
+ if (it.component && it.name) {
861
+ comMap.set(it.name, it);
721
862
  }
722
- };
723
- const colOpt = computed(() => {
724
- let style = {
725
- textAlign: "right"
726
- };
727
- let gStyle = props.style ?? {};
728
- if (props.mode === "dialog") {
729
- Object.assign(style, {
730
- display: "inline-block"
731
- });
732
- return {
733
- style: {
734
- ...gStyle,
735
- ...style
736
- }
737
- };
738
- } else if (props.mode === null) {
739
- Object.assign(style, {
740
- display: "flex",
741
- justifyContent: "center",
742
- marginBottom: "20px"
743
- });
744
- return {
745
- style: {
746
- ...gStyle,
747
- ...style
748
- },
749
- span: 24
750
- };
863
+ });
864
+ return comMap;
865
+ };
866
+ function handleFormValues(model) {
867
+ if (!isObject(model))
868
+ return {};
869
+ const vals = {};
870
+ let comMap = getComMap(), extraNames = [];
871
+ for (let [key, val] of Object.entries(model)) {
872
+ let component = comMap.get(key)?.component;
873
+ if (!key || Array.isArray(val) && val.length === 0 || isFunction(val)) {
874
+ continue;
751
875
  }
752
- return {
753
- style: {
754
- ...props.style,
755
- ...style
876
+ if (component) {
877
+ if (SINGLE_DATA_TYPE.includes(component)) {
878
+ val = val ? dayjs(val).valueOf() : null;
879
+ } else if (MULTIFY_DATA_TYPE.includes(component)) {
880
+ val = (val || []).map((it) => dayjs(it).valueOf());
881
+ if (comMap.get(key).extraName?.length) {
882
+ comMap.get(key).extraName.map((it, i) => {
883
+ extraNames.push(it);
884
+ set(vals, it, val.length > 0 ? val[i] : null);
885
+ });
886
+ }
756
887
  }
757
- };
758
- });
759
- const getAdvanceClass = computed(() => {
760
- return [
761
- "basic-arrow",
762
- { "basic-arrow--active": !advancedRef.value }
763
- ];
764
- });
765
- const toggleAdvanced = () => {
766
- advancedRef.value = !advancedRef.value;
767
- dispatchResize();
768
- emits("handle-method", advancedRef.value);
769
- };
770
- function handleBtnClick(button) {
771
- if (button.onClick && isFunction(button.onClick)) {
772
- button.onClick();
773
- } else {
774
- emits("handle-method", button);
888
+ }
889
+ if (isString(val)) {
890
+ val = val.trim();
891
+ }
892
+ if (!extraNames.includes(key)) {
893
+ set(vals, key, val);
775
894
  }
776
895
  }
777
- watch(() => props.isAdvanced, (v) => {
778
- if (v || props.mode !== "search") {
779
- requestAnimationFrame(toggleAdvanced);
896
+ return vals;
897
+ }
898
+ function initDefault() {
899
+ const schema = unref(getSchema), obj = {};
900
+ schema.forEach((item) => {
901
+ const { props = {}, name, component, defaultValue: gDefaultValue } = item;
902
+ const { defaultValue: itemDefaultValue, mode, format, treeCheckable } = isFunction(props) ? props(formModel) : props;
903
+ if (!name)
904
+ return;
905
+ let names = [];
906
+ if (isArray(name)) {
907
+ names = name;
908
+ } else {
909
+ names = [name];
780
910
  }
781
- }, {
782
- immediate: true
783
- });
784
- watch(
785
- () => props.buttonList,
786
- (v) => key = new Date().getTime(),
787
- {
788
- immediate: true,
789
- deep: true
911
+ const defVal = itemDefaultValue ?? gDefaultValue;
912
+ if (!isNullOrUnDef(defVal)) {
913
+ if (DATE_PICKER_TYPES.includes(component)) {
914
+ if (isArray(defVal)) {
915
+ let vals = defVal.map((it) => format ? dayjs(it, format) : dayjs(it));
916
+ if (names.length > 1) {
917
+ names.map((key, index) => obj[key] = vals[index] ?? null);
918
+ } else {
919
+ obj[names[0]] = vals;
920
+ }
921
+ } else {
922
+ obj[names[0]] = format ? dayjs(defVal, format) : dayjs(defVal);
923
+ }
924
+ } else {
925
+ if (names.length > 1) {
926
+ names.forEach((key, index) => {
927
+ if (!defVal || defVal.length - 1 < index) {
928
+ obj[key] = null;
929
+ } else {
930
+ obj[key] = defVal[index];
931
+ }
932
+ });
933
+ } else {
934
+ obj[names[0]] = defVal;
935
+ }
936
+ }
937
+ } else {
938
+ names.map((it) => {
939
+ if (component === "TreeSelect" && (mode === "multiple" || treeCheckable) || component === "Select" && mode === "multiple") {
940
+ obj[it] = [];
941
+ } else {
942
+ obj[it] = null;
943
+ }
944
+ });
790
945
  }
791
- );
792
- return (_ctx, _cache) => {
793
- const _component_AButton = Button;
794
- const _component_AFormItem = FormItem$1;
795
- const _component_ACol = Col$1;
796
- const _directive_icon = resolveDirective("icon");
797
- const _directive_auth = resolveDirective("auth");
798
- return __props.show ? (openBlock(), createBlock(_component_ACol, normalizeProps(mergeProps({ key: 0 }, unref(colOpt))), {
799
- default: withCtx(() => [
800
- createVNode(_component_AFormItem, {
801
- class: "dt-form-btns",
802
- style: normalizeStyle({
803
- "margin-bottom": __props.mode === "search" ? "16px" : "0px"
804
- })
805
- }, {
806
- default: withCtx(() => [
807
- (openBlock(true), createElementBlock(Fragment, null, renderList(__props.buttonList, (button) => {
808
- return openBlock(), createElementBlock(Fragment, null, [
809
- (button.show === void 0 ? true : button.show) ? withDirectives((openBlock(), createBlock(_component_AButton, {
810
- class: normalizeClass(["items-center", button.class]),
811
- type: button.type,
812
- loading: button.loading,
813
- disabled: button.disabled,
814
- key: unref(key),
815
- onClick: ($event) => handleBtnClick(button)
816
- }, {
817
- icon: withCtx(() => [
818
- button.preIcon ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1, null, 512)), [
819
- [_directive_icon, button.preIcon]
820
- ]) : createCommentVNode("", true)
821
- ]),
822
- default: withCtx(() => [
823
- createTextVNode(" " + toDisplayString(unref(t)(button.label)) + " ", 1),
824
- button.postIcon ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2, null, 512)), [
825
- [_directive_icon, button.postIcon]
826
- ]) : createCommentVNode("", true)
827
- ]),
828
- _: 2
829
- }, 1032, ["type", "class", "loading", "disabled", "onClick"])), [
830
- [_directive_auth, getAuth(button.auth)]
831
- ]) : createCommentVNode("", true)
832
- ], 64);
833
- }), 256)),
834
- unref(showAdvanceRef) ? (openBlock(), createBlock(_component_AButton, {
835
- key: 0,
836
- type: "link",
837
- class: "advanced",
838
- onClick: toggleAdvanced
839
- }, {
840
- default: withCtx(() => [
841
- createElementVNode("span", _hoisted_3, toDisplayString(advancedRef.value ? unref(t)("UI.ADVANCED") : unref(t)("UI.EXPAND")), 1),
842
- createElementVNode("span", {
843
- class: normalizeClass(unref(getAdvanceClass))
844
- }, _hoisted_5, 2)
845
- ]),
846
- _: 1
847
- })) : createCommentVNode("", true)
848
- ]),
849
- _: 1
850
- }, 8, ["style"])
851
- ]),
852
- _: 1
853
- }, 16)) : createCommentVNode("", true);
854
- };
946
+ });
947
+ defaultValue.value = { ...obj };
948
+ for (let key in obj) {
949
+ formModel[key] = obj[key];
950
+ }
855
951
  }
856
- });
857
- const SEARCH_BTN_NAME = "UI.SEARCH";
858
- const RESET_BTN_NAME = "UI.RESET";
859
- const SEARCH_BTNS = [
860
- { label: SEARCH_BTN_NAME, preIcon: "mdi:magnify", type: "primary" },
861
- { label: RESET_BTN_NAME, preIcon: "mdi:refresh", type: "default" }
862
- ];
952
+ return {
953
+ initDefault,
954
+ handleFormValues
955
+ };
956
+ }
863
957
  function useFormEvents({
864
958
  emits,
865
959
  getSchema,
@@ -880,7 +974,7 @@ function useFormEvents({
880
974
  let updateItems = [];
881
975
  updateItems = isObject(data) ? [data] : [...data];
882
976
  if (updateItems?.length && !updateItems.every((it) => it.component !== "Divider" && it.name)) {
883
- console.error("\u6240\u6709\u7684\u5143\u7D20\u90FD\u5FC5\u987B\u8BBE\u7F6Ename\u5C5E\u6027");
977
+ error("\u6240\u6709\u7684\u5143\u7D20\u90FD\u5FC5\u987B\u8BBE\u7F6Ename\u5C5E\u6027");
884
978
  return;
885
979
  }
886
980
  const schema = [];
@@ -911,10 +1005,10 @@ function useFormEvents({
911
1005
  data.map((it) => {
912
1006
  let name = isArray(it.name) ? it.name[0] : it.name;
913
1007
  obj[name] = null;
914
- if (!isNullAndUnDef(it.defaultValue))
1008
+ if (!isNullOrUnDef(it.defaultValue))
915
1009
  return obj[name] = it.defaultValue;
916
1010
  let props = isFunction(it.props) ? it.props(toRaw(unref(formModel))) : it.props;
917
- if (!isNullAndUnDef(props?.defaultValue))
1011
+ if (!isNullOrUnDef(props?.defaultValue))
918
1012
  obj[name] = props.defaultValue;
919
1013
  });
920
1014
  if (isReset) {
@@ -1043,111 +1137,155 @@ function useFormEvents({
1043
1137
  appendFormItems
1044
1138
  };
1045
1139
  }
1046
- function useFormValues({
1047
- defaultValue,
1048
- getSchema,
1049
- formModel
1050
- }) {
1051
- const getComMap = () => {
1052
- let comMap = /* @__PURE__ */ new Map();
1053
- unref(getSchema).map((it) => {
1054
- if (it.component && it.name) {
1055
- comMap.set(it.name, it);
1056
- }
1057
- });
1058
- return comMap;
1059
- };
1060
- function handleFormValues(model) {
1061
- if (!isObject(model))
1062
- return {};
1063
- const vals = {};
1064
- let comMap = getComMap(), extraNames = [];
1065
- for (let [key, val] of Object.entries(model)) {
1066
- let component = comMap.get(key)?.component;
1067
- if (!key || Array.isArray(val) && val.length === 0 || isFunction(val)) {
1068
- continue;
1069
- }
1070
- if (component) {
1071
- if (SINGLE_DATA_TYPE.includes(component)) {
1072
- val = val ? dayjs(val).valueOf() : null;
1073
- } else if (MULTIFY_DATA_TYPE.includes(component)) {
1074
- val = (val || []).map((it) => dayjs(it).valueOf());
1075
- if (comMap.get(key).extraName?.length) {
1076
- comMap.get(key).extraName.map((it, i) => {
1077
- extraNames.push(it);
1078
- set(vals, it, val.length > 0 ? val[i] : null);
1079
- });
1080
- }
1081
- }
1082
- }
1083
- if (isString(val)) {
1084
- val = val.trim();
1085
- }
1086
- if (!extraNames.includes(key)) {
1087
- set(vals, key, val);
1088
- }
1140
+ const _hoisted_1 = { class: "text" };
1141
+ const _hoisted_2 = /* @__PURE__ */ createElementVNode("i", { class: "text-2xl i ic:baseline-arrow-drop-down" }, null, -1);
1142
+ const _hoisted_3 = [
1143
+ _hoisted_2
1144
+ ];
1145
+ const basicProps = {
1146
+ mode: {
1147
+ type: String,
1148
+ default: "search"
1149
+ },
1150
+ show: {
1151
+ type: Boolean,
1152
+ default: true
1153
+ },
1154
+ showAdvancedButton: {
1155
+ type: Boolean,
1156
+ default: true
1157
+ },
1158
+ minShowColumn: {
1159
+ type: Number,
1160
+ default: 2
1161
+ },
1162
+ buttonList: {
1163
+ type: [Array],
1164
+ default: []
1165
+ },
1166
+ authPrefix: {
1167
+ type: String
1168
+ },
1169
+ isAdvanced: {
1170
+ type: Boolean,
1171
+ default: true
1172
+ },
1173
+ colspan: {
1174
+ type: Object
1175
+ },
1176
+ style: {
1177
+ type: Object,
1178
+ default: () => {
1089
1179
  }
1090
- return vals;
1091
1180
  }
1092
- function initDefault() {
1093
- const schema = unref(getSchema), obj = {};
1094
- schema.forEach((item) => {
1095
- const { props = {}, name, component, defaultValue: gDefaultValue } = item;
1096
- const { defaultValue: itemDefaultValue, mode, format, treeCheckable } = isFunction(props) ? props(formModel) : props;
1097
- if (!name)
1098
- return;
1099
- let names = [];
1100
- if (isArray(name)) {
1101
- names = name;
1102
- } else {
1103
- names = [name];
1104
- }
1105
- const defaultValue2 = itemDefaultValue ?? gDefaultValue;
1106
- if (!isNullAndUnDef(defaultValue2)) {
1107
- if (DATE_PICKER_TYPES.includes(component)) {
1108
- if (isArray(defaultValue2)) {
1109
- let vals = defaultValue2.map((it) => format ? dayjs(it, format) : dayjs(it));
1110
- if (names.length > 1) {
1111
- names.map((key, index) => obj[key] = vals[index] ?? null);
1112
- } else {
1113
- obj[names[0]] = vals;
1114
- }
1115
- } else {
1116
- obj[names[0]] = format ? dayjs(defaultValue2, format) : dayjs(defaultValue2);
1117
- }
1118
- } else {
1119
- if (names.length > 1) {
1120
- names.forEach((key, index) => {
1121
- if (!defaultValue2 || defaultValue2.length - 1 < index) {
1122
- obj[key] = null;
1123
- } else {
1124
- obj[key] = defaultValue2[index];
1125
- }
1126
- });
1127
- } else {
1128
- obj[names[0]] = defaultValue2;
1129
- }
1130
- }
1181
+ };
1182
+ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
1183
+ __name: "FormButtons",
1184
+ props: basicProps,
1185
+ emits: ["handle-method"],
1186
+ setup(__props, { emit: emits }) {
1187
+ const props = __props;
1188
+ const { t } = useI18n();
1189
+ const advancedRef = ref(props.isAdvanced);
1190
+ let key = 0;
1191
+ const showAdvanceRef = computed(() => {
1192
+ return props.mode === "search" ? props.showAdvancedButton : false;
1193
+ });
1194
+ const getAuth = (auth) => {
1195
+ const { authPrefix } = props;
1196
+ if (authPrefix && auth || !authPrefix && auth && auth.includes(":")) {
1197
+ console.log("sjinlala");
1198
+ return authPrefix ? `${authPrefix}:${auth}` : auth;
1131
1199
  } else {
1132
- names.map((it) => {
1133
- if (component === "TreeSelect" && (mode === "multiple" || treeCheckable) || component === "Select" && mode === "multiple") {
1134
- obj[it] = [];
1135
- } else {
1136
- obj[it] = null;
1137
- }
1138
- });
1200
+ return null;
1139
1201
  }
1202
+ };
1203
+ const getAdvanceClass = computed(() => {
1204
+ return [
1205
+ "basic-arrow",
1206
+ { "basic-arrow--active": !advancedRef.value }
1207
+ ];
1140
1208
  });
1141
- defaultValue.value = { ...obj };
1142
- for (let key in obj) {
1143
- formModel[key] = obj[key];
1209
+ const toggleAdvanced = () => {
1210
+ advancedRef.value = !advancedRef.value;
1211
+ dispatchResize();
1212
+ emits("handle-method", advancedRef.value);
1213
+ };
1214
+ function handleBtnClick(button) {
1215
+ if (button.onClick && isFunction(button.onClick)) {
1216
+ button.onClick();
1217
+ } else {
1218
+ emits("handle-method", button);
1219
+ }
1144
1220
  }
1221
+ watch(
1222
+ () => props.buttonList,
1223
+ (v) => {
1224
+ key = new Date().getTime();
1225
+ },
1226
+ {
1227
+ immediate: true,
1228
+ deep: true
1229
+ }
1230
+ );
1231
+ return (_ctx, _cache) => {
1232
+ const _component_AButton = Button;
1233
+ const _directive_auth = resolveDirective("auth");
1234
+ return openBlock(), createElementBlock(Fragment, null, [
1235
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.buttonList, (button) => {
1236
+ return openBlock(), createElementBlock(Fragment, null, [
1237
+ (button.show === void 0 ? true : button.show) ? withDirectives((openBlock(), createBlock(_component_AButton, {
1238
+ class: normalizeClass(["items-center flex items-center !ml-0", button.class]),
1239
+ type: button.type,
1240
+ loading: button.loading,
1241
+ disabled: button.disabled,
1242
+ key: unref(key),
1243
+ style: normalizeStyle({
1244
+ color: button.color
1245
+ }),
1246
+ onClick: ($event) => handleBtnClick(button)
1247
+ }, {
1248
+ icon: withCtx(() => [
1249
+ button.preIcon ? (openBlock(), createBlock(unref(Icon), {
1250
+ key: 0,
1251
+ name: button.preIcon,
1252
+ className: "i preIcon pr-1",
1253
+ color: button.color
1254
+ }, null, 8, ["name", "color"])) : createCommentVNode("", true)
1255
+ ]),
1256
+ default: withCtx(() => [
1257
+ createTextVNode(" " + toDisplayString(unref(t)(button.label)) + " ", 1),
1258
+ button.postIcon ? (openBlock(), createBlock(unref(Icon), {
1259
+ key: 0,
1260
+ name: button.postIcon,
1261
+ className: "i preIcon pl-1",
1262
+ color: button.color
1263
+ }, null, 8, ["name", "color"])) : createCommentVNode("", true)
1264
+ ]),
1265
+ _: 2
1266
+ }, 1032, ["type", "class", "loading", "disabled", "style", "onClick"])), [
1267
+ [_directive_auth, getAuth(button.auth)]
1268
+ ]) : createCommentVNode("", true)
1269
+ ], 64);
1270
+ }), 256)),
1271
+ unref(showAdvanceRef) ? (openBlock(), createBlock(_component_AButton, {
1272
+ key: 0,
1273
+ type: "link",
1274
+ class: "advanced",
1275
+ onClick: toggleAdvanced
1276
+ }, {
1277
+ default: withCtx(() => [
1278
+ createElementVNode("span", _hoisted_1, toDisplayString(unref(advancedRef) ? unref(t)("UI.ADVANCED") : unref(t)("UI.EXPAND")), 1),
1279
+ createElementVNode("span", {
1280
+ class: normalizeClass(unref(getAdvanceClass))
1281
+ }, _hoisted_3, 2)
1282
+ ]),
1283
+ _: 1
1284
+ })) : createCommentVNode("", true)
1285
+ ], 64);
1286
+ };
1145
1287
  }
1146
- return {
1147
- initDefault,
1148
- handleFormValues
1149
- };
1150
- }
1288
+ });
1151
1289
  function useFormActions(opt) {
1152
1290
  const { getProps, defaultValue, updateSchema, getFormValues, setFormValues } = opt;
1153
1291
  const { appConf } = useAppStore();
@@ -1181,141 +1319,116 @@ function useFormActions(opt) {
1181
1319
  params.onClick();
1182
1320
  }
1183
1321
  }
1184
- return [handleMethod];
1185
- }
1186
- const BasicProps = {
1187
- mode: {
1188
- type: String,
1189
- default: "search"
1190
- },
1191
- autoFetch: {
1192
- type: Boolean,
1193
- default: true
1194
- },
1195
- model: {
1196
- type: Object,
1197
- default: () => ({})
1198
- },
1199
- layout: {
1200
- type: String,
1201
- default: "horizontal"
1202
- },
1203
- labelWidth: {
1204
- type: [Number, String],
1205
- default: 100
1206
- },
1207
- enLabelWidth: {
1208
- type: [Number, String],
1209
- default: 100
1210
- },
1211
- labelAlign: {
1212
- type: String,
1213
- default: "right"
1214
- },
1215
- labelCol: {
1216
- type: Object,
1217
- default: () => ({})
1218
- },
1219
- wrapperCol: {
1220
- type: Object,
1221
- default: () => ({})
1222
- },
1223
- rowProps: {
1224
- type: Object,
1225
- default: () => ({})
1226
- },
1227
- colProps: {
1228
- type: Object
1229
- },
1230
- span: {
1231
- type: Number
1232
- },
1233
- size: {
1234
- type: String
1235
- },
1236
- disabled: {
1237
- type: Boolean,
1238
- default: false
1239
- },
1240
- compact: {
1241
- type: Boolean,
1242
- default: null
1243
- },
1244
- schemas: {
1245
- type: Array,
1246
- default: () => []
1247
- },
1248
- autoSearchOnEnter: {
1249
- type: Boolean,
1250
- default: true
1251
- },
1252
- minShowColumn: {
1253
- type: Number,
1254
- default: 2
1255
- },
1256
- showAdvancedButton: {
1257
- type: Boolean,
1258
- default: true
1259
- },
1260
- allowClear: {
1261
- type: Boolean,
1262
- default: true
1263
- },
1264
- scrollToFirstError: {
1265
- type: Boolean,
1266
- default: true
1267
- },
1268
- colon: {
1269
- type: Boolean,
1270
- default: true
1271
- },
1272
- loading: {
1273
- type: Object,
1274
- default: () => {
1275
- return {};
1322
+ const actionsProps = computed(() => {
1323
+ const { appConf: appConf2 } = useAppStore();
1324
+ const {
1325
+ mode,
1326
+ minShowColumn = appConf2.ui.form.minShowColumn || 2,
1327
+ schemas = [],
1328
+ showAdvancedButton: advanced,
1329
+ loading,
1330
+ buttons
1331
+ } = unref(getProps);
1332
+ let showAdvancedButton = mode === "search" ? true : false;
1333
+ if (advanced !== void 0) {
1334
+ showAdvancedButton = advanced;
1276
1335
  }
1277
- },
1278
- onSearch: {
1279
- type: Function,
1280
- default: (params) => {
1336
+ if (schemas.length <= minShowColumn) {
1337
+ showAdvancedButton = false;
1281
1338
  }
1282
- },
1283
- onReset: {
1284
- type: Function,
1285
- default: (params) => {
1339
+ let buttonList = [];
1340
+ if (isArray(buttons)) {
1341
+ buttonList = [...buttons];
1342
+ } else if (mode === "search" && !buttons) {
1343
+ SEARCH_BTNS.forEach((it) => {
1344
+ it.loading = it.label === SEARCH_BTN_NAME ? loading?.onSearch : loading?.onReset;
1345
+ buttonList.push(it);
1346
+ });
1286
1347
  }
1287
- },
1288
- buttons: {
1289
- type: [Array, null, Boolean],
1290
- default: false
1291
- },
1292
- resetFunc: {
1293
- type: Function
1294
- },
1295
- registerInstance: {
1296
- type: Function
1297
- }
1298
- };
1348
+ let colspan = mode === "search" ? appConf2.ui.form.colspan : appConf2.ui.modal.colspan;
1349
+ if (mode !== "search") {
1350
+ return {
1351
+ colspan,
1352
+ ...{
1353
+ mode,
1354
+ showAdvancedButton: false,
1355
+ isAdvanced: false,
1356
+ buttonList
1357
+ }
1358
+ };
1359
+ }
1360
+ return {
1361
+ colspan,
1362
+ style: {
1363
+ marginLeft: showAdvancedButton ? "auto" : ""
1364
+ },
1365
+ ...{
1366
+ showAdvancedButton,
1367
+ buttonList
1368
+ }
1369
+ };
1370
+ });
1371
+ const actionStyle = computed(() => {
1372
+ let gStyle = {
1373
+ textAlign: "right"
1374
+ };
1375
+ const { style = {}, mode = "search" } = unref(actionsProps);
1376
+ if (mode === "dialog") {
1377
+ Object.assign(gStyle, {
1378
+ display: "inline-block"
1379
+ });
1380
+ return {
1381
+ style: {
1382
+ ...style,
1383
+ ...gStyle
1384
+ }
1385
+ };
1386
+ } else if (mode === null) {
1387
+ Object.assign(gStyle, {
1388
+ display: "flex",
1389
+ justifyContent: "center",
1390
+ marginBottom: "20px"
1391
+ });
1392
+ return {
1393
+ style: {
1394
+ ...style,
1395
+ ...gStyle
1396
+ },
1397
+ span: 24
1398
+ };
1399
+ }
1400
+ return {
1401
+ style: {
1402
+ ...style,
1403
+ ...gStyle
1404
+ }
1405
+ };
1406
+ });
1407
+ return {
1408
+ handleMethod,
1409
+ actionsProps,
1410
+ actionStyle
1411
+ };
1412
+ }
1299
1413
  const _sfc_main = /* @__PURE__ */ defineComponent({
1300
1414
  __name: "index",
1301
1415
  props: BasicProps,
1302
1416
  emits: ["register"],
1303
1417
  setup(__props, { emit: emits }) {
1304
1418
  const props = __props;
1305
- const { getAppConf } = useAppStore();
1306
- const attrs = useAttrs();
1419
+ const propsRef = ref();
1307
1420
  const formElRef = ref(null);
1308
1421
  const formModel = reactive({});
1309
- const defaultValue = ref({});
1310
- const propsRef = ref();
1311
1422
  const schemaRef = ref(null);
1423
+ const { appConf } = useAppStore();
1312
1424
  const getProps = computed(() => {
1313
1425
  return {
1314
1426
  ...props,
1315
- ...getAppConf.ui.form,
1427
+ ...appConf.ui.form,
1316
1428
  ...unref(propsRef)
1317
1429
  };
1318
1430
  });
1431
+ const attrs = useAttrs();
1319
1432
  const getBindValue = computed(() => {
1320
1433
  return {
1321
1434
  ...attrs,
@@ -1323,7 +1436,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1323
1436
  };
1324
1437
  });
1325
1438
  const getSchema = computed(() => {
1326
- return unref(schemaRef) || unref(getProps).schemas;
1439
+ return unref(schemaRef) || unref(getProps).schemas || [];
1327
1440
  });
1328
1441
  const getFormClass = computed(() => {
1329
1442
  const { compact, mode } = unref(getProps);
@@ -1336,25 +1449,27 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1336
1449
  }
1337
1450
  ];
1338
1451
  });
1339
- function setProps(formProps) {
1340
- propsRef.value = deepMerge(unref(propsRef) || {}, formProps);
1341
- return null;
1342
- }
1452
+ const defaultValue = ref({});
1453
+ const { initDefault, handleFormValues } = useFormValues({
1454
+ defaultValue,
1455
+ getSchema,
1456
+ formModel
1457
+ });
1343
1458
  function setFormModel(key, value) {
1344
1459
  formModel[key] = value;
1345
1460
  const { validateTrigger } = unref(getBindValue);
1346
1461
  if (!validateTrigger || validateTrigger === "change") {
1347
- validateFields([key]).catch(() => {
1462
+ validateFields([key]).then((rsp) => {
1463
+ unref(getProps)?.modelChange(unref(formModel), key, value);
1464
+ }).catch(() => {
1348
1465
  });
1349
1466
  }
1350
1467
  }
1351
1468
  function handleEnterPress() {
1352
1469
  }
1353
- const { initDefault, handleFormValues } = useFormValues({
1354
- defaultValue,
1355
- getSchema,
1356
- formModel
1357
- });
1470
+ function setProps(formProps) {
1471
+ propsRef.value = deepMerge(unref(propsRef) || {}, formProps);
1472
+ }
1358
1473
  const {
1359
1474
  updateSchema,
1360
1475
  resetSchema,
@@ -1376,6 +1491,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1376
1491
  getProps,
1377
1492
  handleFormValues
1378
1493
  });
1494
+ const {
1495
+ handleMethod,
1496
+ actionsProps,
1497
+ actionStyle
1498
+ } = useFormActions({
1499
+ getProps,
1500
+ defaultValue,
1501
+ updateSchema,
1502
+ getFormValues,
1503
+ setFormValues
1504
+ });
1379
1505
  const formActionMethods = {
1380
1506
  setProps,
1381
1507
  updateSchema,
@@ -1389,80 +1515,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1389
1515
  validateFields,
1390
1516
  getFormValues
1391
1517
  };
1392
- const getActionsProps = computed(() => {
1393
- const {
1394
- mode,
1395
- minShowColumn = getAppConf.ui.form.minShowColumn || 2,
1396
- schemas = [],
1397
- showAdvancedButton: advanced,
1398
- loading,
1399
- buttons
1400
- } = unref(getProps);
1401
- let showAdvancedButton = mode === "search" ? true : false;
1402
- if (advanced !== void 0) {
1403
- showAdvancedButton = advanced;
1404
- }
1405
- if (schemas.length <= minShowColumn) {
1406
- showAdvancedButton = false;
1407
- }
1408
- let buttonList = [];
1409
- if (isArray(buttons)) {
1410
- buttonList = [...buttons];
1411
- } else if (mode === "search" && !buttons) {
1412
- SEARCH_BTNS.forEach((it) => {
1413
- it.loading = it.label === SEARCH_BTN_NAME ? loading?.onSearch : loading?.onReset;
1414
- buttonList.push(it);
1415
- });
1416
- }
1417
- let colspan = mode === "search" ? getAppConf.ui.form.searchColspan : getAppConf.ui.form.dialogColspan;
1418
- if (mode !== "search") {
1419
- return {
1420
- colspan,
1421
- ...{
1422
- mode,
1423
- showAdvancedButton: false,
1424
- isAdvanced: false,
1425
- buttonList
1426
- }
1427
- };
1428
- }
1429
- return {
1430
- colspan,
1431
- style: {
1432
- marginLeft: showAdvancedButton ? "auto" : ""
1433
- },
1434
- ...{
1435
- showAdvancedButton,
1436
- buttonList
1437
- }
1438
- };
1439
- });
1440
- const [handleMethod] = useFormActions({
1441
- getProps,
1442
- defaultValue,
1443
- updateSchema,
1444
- getFormValues,
1445
- setFormValues
1446
- });
1447
1518
  onMounted(() => {
1448
- setFormValues(null);
1449
1519
  emits("register", formActionMethods);
1450
1520
  initDefault();
1451
- if (unref(getProps)?.registerInstance) {
1452
- unref(getProps)?.registerInstance(formActionMethods);
1453
- }
1521
+ unref(getProps)?.modelChange(unref(formModel));
1454
1522
  });
1455
- watch(
1456
- () => unref(getProps).onSearch,
1457
- () => {
1458
- useTimeoutFn(() => {
1459
- const { onSearch, autoFetch } = unref(getProps);
1460
- if (autoFetch && onSearch && isFunction(onSearch)) {
1461
- onSearch(toRaw(defaultValue.value));
1462
- }
1463
- }, 1);
1464
- }
1465
- );
1466
1523
  watch(
1467
1524
  () => unref(getProps).model,
1468
1525
  () => {
@@ -1478,14 +1535,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1478
1535
  }
1479
1536
  );
1480
1537
  return (_ctx, _cache) => {
1538
+ const _component_AFormItem = FormItem$1;
1539
+ const _component_ACol = Col$1;
1481
1540
  const _component_ARow = Row;
1482
1541
  const _component_AForm = Form$1;
1483
- return openBlock(), createBlock(_component_AForm, mergeProps(unref(getBindValue), {
1542
+ return openBlock(), createBlock(_component_AForm, mergeProps({
1484
1543
  ref_key: "formElRef",
1485
- ref: formElRef,
1544
+ ref: formElRef
1545
+ }, unref(getBindValue), {
1486
1546
  class: unref(getFormClass),
1487
- model: formModel,
1488
- layout: unref(getProps).layout,
1547
+ model: unref(formModel),
1489
1548
  onKeypress: withKeys(handleEnterPress, ["enter"])
1490
1549
  }), {
1491
1550
  default: withCtx(() => [
@@ -1498,8 +1557,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1498
1557
  key: schema.name,
1499
1558
  schema,
1500
1559
  "form-props": unref(getProps),
1501
- "form-model": formModel,
1502
- "default-values": defaultValue.value,
1560
+ "form-model": unref(formModel),
1561
+ "default-values": unref(defaultValue),
1503
1562
  "set-form-model": setFormModel,
1504
1563
  "form-action-type": formActionMethods
1505
1564
  }, createSlots({ _: 2 }, [
@@ -1513,86 +1572,31 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1513
1572
  })
1514
1573
  ]), 1032, ["schema", "form-props", "form-model", "default-values"]);
1515
1574
  }), 128)),
1516
- unref(getActionsProps).buttonList?.length ? (openBlock(), createBlock(unref(_sfc_main$1), mergeProps({ key: 0 }, unref(getActionsProps), { onHandleMethod: unref(handleMethod) }), null, 16, ["onHandleMethod"])) : createCommentVNode("", true)
1575
+ unref(actionsProps).buttonList?.length ? (openBlock(), createBlock(_component_ACol, normalizeProps(mergeProps({ key: 0 }, unref(actionStyle))), {
1576
+ default: withCtx(() => [
1577
+ createVNode(_component_AFormItem, {
1578
+ class: "dt-form-btns !mb-0",
1579
+ style: normalizeStyle({
1580
+ "margin-bottom": unref(getProps).mode === "search" ? "16px" : "0px"
1581
+ })
1582
+ }, {
1583
+ default: withCtx(() => [
1584
+ createVNode(_sfc_main$1, mergeProps(unref(actionsProps), { onHandleMethod: unref(handleMethod) }), null, 16, ["onHandleMethod"])
1585
+ ]),
1586
+ _: 1
1587
+ }, 8, ["style"])
1588
+ ]),
1589
+ _: 1
1590
+ }, 16)) : createCommentVNode("", true)
1517
1591
  ]),
1518
1592
  _: 3
1519
1593
  }, 16)
1520
1594
  ]),
1521
1595
  _: 3
1522
- }, 16, ["class", "model", "layout", "onKeypress"]);
1596
+ }, 16, ["class", "model", "onKeypress"]);
1523
1597
  };
1524
1598
  }
1525
1599
  });
1526
- function useForm(props) {
1527
- const formRef = ref(null);
1528
- const loadedRef = ref(false);
1529
- function register(instance) {
1530
- if (unref(loadedRef) && instance === unref(formRef))
1531
- return;
1532
- formRef.value = instance;
1533
- loadedRef.value = true;
1534
- watch(
1535
- () => props,
1536
- () => props && instance.setProps(props),
1537
- {
1538
- immediate: true,
1539
- deep: true
1540
- }
1541
- );
1542
- }
1543
- async function getForm() {
1544
- const form = unref(formRef);
1545
- if (!form)
1546
- console.error("\u8868\u5355\u672A\u7533\u660E!");
1547
- await nextTick();
1548
- return form;
1549
- }
1550
- const methods = {
1551
- setProps: async (props2) => {
1552
- const form = await getForm();
1553
- form.setProps(props2);
1554
- },
1555
- updateSchema: async (data) => {
1556
- const form = await getForm();
1557
- form.updateSchema(data);
1558
- },
1559
- resetSchema: async (data) => {
1560
- const form = await getForm();
1561
- form.resetSchema(data);
1562
- },
1563
- clearValidate: async (name) => {
1564
- const form = await getForm();
1565
- form.clearValidate(name);
1566
- },
1567
- resetForms: async () => {
1568
- const form = await getForm();
1569
- form.resetForms();
1570
- },
1571
- removeFormByName: async (name) => {
1572
- unref(formRef)?.removeFormByName(name);
1573
- },
1574
- setFormValues: async (values) => {
1575
- const form = await getForm();
1576
- form.setFormValues(values);
1577
- },
1578
- appendFormItems: async (schema, prefixName, first) => {
1579
- const form = await getForm();
1580
- form.appendFormItems(schema, prefixName, first);
1581
- },
1582
- validate: async (nameList) => {
1583
- const form = await getForm();
1584
- return form.validate(nameList);
1585
- },
1586
- validateFields: async (nameList) => {
1587
- const form = await getForm();
1588
- return form.validateFields(nameList);
1589
- },
1590
- getFormValues: () => {
1591
- return unref(formRef)?.getFormValues();
1592
- }
1593
- };
1594
- return [register, methods];
1595
- }
1596
1600
  export {
1597
1601
  _sfc_main as DtForm,
1598
1602
  _sfc_main$1 as DtFormButtons,