hs-admin-ui 1.0.0 → 1.0.3

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 (433) hide show
  1. package/dist/favicon.ico +0 -0
  2. package/dist/style.css +1 -0
  3. package/dist/style.css.gz +0 -0
  4. package/dist/umd/index.js +169 -0
  5. package/dist/umd/index.js.gz +0 -0
  6. package/package.json +81 -78
  7. package/.env +0 -11
  8. package/.env.development +0 -5
  9. package/.env.production +0 -5
  10. package/.eslintignore +0 -18
  11. package/.eslintrc.js +0 -104
  12. package/.prettierrc.js +0 -39
  13. package/.vite/deps_temp_3669a513/chunk-FVXAE7ZR.js +0 -11400
  14. package/.vite/deps_temp_3669a513/chunk-ZS7NZCD4.js +0 -36
  15. package/.vite/deps_temp_3669a513/default-passive-events.js +0 -25
  16. package/.vite/deps_temp_3669a513/element-plus.js +0 -65013
  17. package/.vite/deps_temp_3669a513/lodash.js +0 -5497
  18. package/.vite/deps_temp_3669a513/package.json +0 -3
  19. package/.vite/deps_temp_3669a513/vue.js +0 -324
  20. package/.vite/deps_temp_3669a513/vxe-table.js +0 -32336
  21. package/CHANGELOG.md +0 -1
  22. package/directoryList.md +0 -180
  23. package/postcss.config.js +0 -7
  24. package/src/App.vue +0 -88
  25. package/src/api/fieldConfigController/index.ts +0 -76
  26. package/src/api/fieldConfigController/type.ts +0 -44
  27. package/src/api/login/index.ts +0 -78
  28. package/src/api/loginController/index.ts +0 -74
  29. package/src/api/menu/index.ts +0 -34
  30. package/src/api/menu/index2.ts +0 -291
  31. package/src/api/menuController/index.ts +0 -189
  32. package/src/api/systemController/index.ts +0 -26
  33. package/src/api/systemController/type.ts +0 -16
  34. package/src/api/test/index.ts +0 -22
  35. package/src/api/user/index.ts +0 -30
  36. package/src/assets/404.png +0 -0
  37. package/src/assets/logo-main.svg +0 -12
  38. package/src/assets/logo-mini.svg +0 -12
  39. package/src/components/base/hsAffix/src/hsAffix.vue +0 -22
  40. package/src/components/base/hsAlert/src/hsAlert.vue +0 -15
  41. package/src/components/base/hsAutocomplete/src/hsAutocomplete.vue +0 -36
  42. package/src/components/base/hsButton/src/hsButton.vue +0 -26
  43. package/src/components/base/hsButton/src/hsButtonGroup.vue +0 -8
  44. package/src/components/base/hsButton/useButtonEvents.ts +0 -19
  45. package/src/components/base/hsCalendar/src/hsCalendar.vue +0 -36
  46. package/src/components/base/hsCarousel/src/hsCarousel.vue +0 -15
  47. package/src/components/base/hsCarousel/src/hsCarouselItem.vue +0 -15
  48. package/src/components/base/hsCascader/src/hsCascader.vue +0 -36
  49. package/src/components/base/hsCascader/src/hsCascaderPanel.vue +0 -29
  50. package/src/components/base/hsCheckbox/src/hsCheckbox.vue +0 -32
  51. package/src/components/base/hsCheckbox/src/hsCheckboxButton.vue +0 -18
  52. package/src/components/base/hsCheckbox/src/hsCheckboxGroup.vue +0 -32
  53. package/src/components/base/hsCol/src/hsCol.vue +0 -20
  54. package/src/components/base/hsCollapse/src/hsCollapse.vue +0 -36
  55. package/src/components/base/hsCollapse/src/hsCollapseItem.vue +0 -22
  56. package/src/components/base/hsColorPicker/src/hsColorPicker.vue +0 -32
  57. package/src/components/base/hsDatePicker/src/hsDatePicker.vue +0 -40
  58. package/src/components/base/hsDialog/src/hsDialog.vue +0 -36
  59. package/src/components/base/hsDrawer/src/hsDrawer.vue +0 -29
  60. package/src/components/base/hsDropdown/src/hsDropdown.vue +0 -15
  61. package/src/components/base/hsDropdown/src/hsDropdownItem.vue +0 -15
  62. package/src/components/base/hsDropdown/src/hsDropdownMenu.vue +0 -15
  63. package/src/components/base/hsForm/src/hsForm.vue +0 -23
  64. package/src/components/base/hsForm/src/hsFormItem.vue +0 -22
  65. package/src/components/base/hsGetApi/src/hsGetApis.vue +0 -231
  66. package/src/components/base/hsGetApi/useGetApis.ts +0 -158
  67. package/src/components/base/hsInput/src/hsInput.vue +0 -40
  68. package/src/components/base/hsInput/useInputEvents.ts +0 -52
  69. package/src/components/base/hsInputNumber/src/hsInputNumber.vue +0 -31
  70. package/src/components/base/hsPopconfirm/src/hsPopconfirm.vue +0 -15
  71. package/src/components/base/hsPopover/src/hsPopover.vue +0 -22
  72. package/src/components/base/hsProgress/src/hsProgress.vue +0 -15
  73. package/src/components/base/hsRadio/src/hsRadio.vue +0 -32
  74. package/src/components/base/hsRadio/src/hsRadioButton.vue +0 -18
  75. package/src/components/base/hsRadio/src/hsRadioGroup.vue +0 -32
  76. package/src/components/base/hsRate/src/hsRate.vue +0 -33
  77. package/src/components/base/hsResult/src/hsResult.vue +0 -15
  78. package/src/components/base/hsRow/src/hsRow.vue +0 -20
  79. package/src/components/base/hsScrollbar/src/hsScrollbar.vue +0 -22
  80. package/src/components/base/hsSelect/src/hsOption.vue +0 -8
  81. package/src/components/base/hsSelect/src/hsOptionGroup.vue +0 -8
  82. package/src/components/base/hsSelect/src/hsSelect.vue +0 -42
  83. package/src/components/base/hsSelect/useSelectEvents.ts +0 -60
  84. package/src/components/base/hsSlider/src/hsSlider.vue +0 -25
  85. package/src/components/base/hsSteps/src/hsStep.vue +0 -15
  86. package/src/components/base/hsSteps/src/hsSteps.vue +0 -15
  87. package/src/components/base/hsSwitch/src/hsSwitch.vue +0 -35
  88. package/src/components/base/hsTable/hsBCTable.vue +0 -116
  89. package/src/components/base/hsTable/hsTable copy.vue +0 -226
  90. package/src/components/base/hsTable/hsTable.vue +0 -213
  91. package/src/components/base/hsTable/useHsTableConfig.ts +0 -95
  92. package/src/components/base/hsTable/useTableEvents.ts +0 -118
  93. package/src/components/base/hsTabs/src/hsTabPane.vue +0 -15
  94. package/src/components/base/hsTabs/src/hsTabs.vue +0 -29
  95. package/src/components/base/hsTag/src/hsCheckTag.vue +0 -16
  96. package/src/components/base/hsTag/src/hsTag.vue +0 -15
  97. package/src/components/base/hsTest/HsTest.vue +0 -320
  98. package/src/components/base/hsTooltip/src/hsTooltip.vue +0 -22
  99. package/src/components/base/hsTour/src/hsTour.vue +0 -31
  100. package/src/components/base/hsTour/src/hsTourStep.vue +0 -15
  101. package/src/components/base/hsTransfer/src/hsTransfer.vue +0 -36
  102. package/src/components/base/hsTree/src/hsTree.vue +0 -24
  103. package/src/components/base/hsTreeSelect/src/hsTreeSelect.vue +0 -39
  104. package/src/components/base/hsUpload/src/hsUpload.vue +0 -32
  105. package/src/components/base/hsWatermark/src/hsWatermark.vue +0 -15
  106. package/src/components/business/bcAutoComplete/bcAutoComplete.vue +0 -38
  107. package/src/components/business/bcAutoComplete/defaultData.ts +0 -25
  108. package/src/components/business/bcAutoComplete/useAutoComplete.ts +0 -65
  109. package/src/components/business/bcBtn/bcBtn.vue +0 -40
  110. package/src/components/business/bcForm/bcForm.vue +0 -113
  111. package/src/components/business/bcForm/bcFormDrag.vue +0 -104
  112. package/src/components/business/bcForm/bcFormSearch.vue +0 -154
  113. package/src/components/business/bcForm/components/sortForm/index.ts +0 -18
  114. package/src/components/business/bcForm/components/sortForm/sortForm.vue +0 -92
  115. package/src/components/business/bcFormConfig/bcFormConfig.vue +0 -196
  116. package/src/components/business/bcFormTable/bcFormTable.vue +0 -91
  117. package/src/components/business/bcFormTable/components/bcTabs/bcTabs.vue +0 -53
  118. package/src/components/business/bcFormTable/components/contextBody/contextBody.vue +0 -67
  119. package/src/components/business/bcFormTable/components/contextBody/useContextMenu.ts +0 -53
  120. package/src/components/business/bcFormTable/components/formSearchBtn/formSearchBtn.vue +0 -21
  121. package/src/components/business/bcFormTable/methods/cellDetailMethod.ts +0 -5
  122. package/src/components/business/bcFormTable/methods/filterAgeMethod.ts +0 -5
  123. package/src/components/business/bcFormTable/methods/footerMethod.ts +0 -25
  124. package/src/components/business/bcFormTable/methods/index.ts +0 -10
  125. package/src/components/business/bcFormTable/utils/onFormKey.ts +0 -121
  126. package/src/components/business/bcFormTable/utils/onTableKey.ts +0 -119
  127. package/src/components/business/bcFormTable/utils/parseTable.ts +0 -201
  128. package/src/components/business/bcFormTable/utils/useButon.ts +0 -20
  129. package/src/components/business/bcFormTable/utils/useTableHeight.ts +0 -44
  130. package/src/components/business/bcPageConfig/bcPageConfig.vue +0 -79
  131. package/src/components/business/bcPageConfig/components/hsBtn/src/hsAttrBtn.vue +0 -39
  132. package/src/components/business/bcPageConfig/components/hsBtn/src/hsBtnConfigList.vue +0 -45
  133. package/src/components/business/bcPageConfig/components/hsBtn/src/hsBtnItemConfig.vue +0 -32
  134. package/src/components/business/bcPageConfig/components/hsBtn/src/hsBtnPanel.vue +0 -45
  135. package/src/components/business/bcPageConfig/components/hsBtn/useAttrBtn.ts +0 -58
  136. package/src/components/business/bcPageConfig/components/hsBtn/useBtnConfigList.ts +0 -71
  137. package/src/components/business/bcPageConfig/components/hsBtn/useBtnItemConfig.ts +0 -35
  138. package/src/components/business/bcPageConfig/components/hsExpand/src/hsExpand.vue +0 -33
  139. package/src/components/business/bcPageConfig/components/hsExpand/useExpand.ts +0 -9
  140. package/src/components/business/bcPageConfig/components/hsForm/src/hsAttrForm.vue +0 -54
  141. package/src/components/business/bcPageConfig/components/hsForm/src/hsFormConfig.vue +0 -180
  142. package/src/components/business/bcPageConfig/components/hsForm/src/hsFormConfigList.vue +0 -45
  143. package/src/components/business/bcPageConfig/components/hsForm/src/hsFormPanel.vue +0 -64
  144. package/src/components/business/bcPageConfig/components/hsForm/src/hsFormParse.vue +0 -24
  145. package/src/components/business/bcPageConfig/components/hsForm/useAttrForm.ts +0 -108
  146. package/src/components/business/bcPageConfig/components/hsForm/useFormListConfig.ts +0 -69
  147. package/src/components/business/bcPageConfig/components/hsForm/useFormParse.ts +0 -120
  148. package/src/components/business/bcPageConfig/components/hsSaveForm/saveFormConfig.ts +0 -66
  149. package/src/components/business/bcPageConfig/components/hsSaveForm/src/saveForm.vue +0 -48
  150. package/src/components/business/bcPageConfig/components/hsSaveForm/useSaveForm.ts +0 -148
  151. package/src/components/business/bcPageConfig/components/hsTables/src/hsAttrTable.vue +0 -122
  152. package/src/components/business/bcPageConfig/components/hsTables/src/hsRecursionConfig.vue +0 -36
  153. package/src/components/business/bcPageConfig/components/hsTables/src/hsTableConfig.vue +0 -51
  154. package/src/components/business/bcPageConfig/components/hsTables/src/hsTableConfigList.vue +0 -46
  155. package/src/components/business/bcPageConfig/components/hsTables/src/hsTablePanel.vue +0 -68
  156. package/src/components/business/bcPageConfig/components/hsTables/src/hsTableParse.vue +0 -24
  157. package/src/components/business/bcPageConfig/components/hsTables/useAttrTable.ts +0 -218
  158. package/src/components/business/bcPageConfig/components/hsTables/useTableConfigList.ts +0 -77
  159. package/src/components/business/bcPageConfig/components/hsTables/useTableParse.ts +0 -78
  160. package/src/components/business/bcPageConfig/default/apis.json +0 -24712
  161. package/src/components/business/bcPageConfig/default/baseBtnConfig.ts +0 -256
  162. package/src/components/business/bcPageConfig/default/baseFormConfig.ts +0 -380
  163. package/src/components/business/bcPageConfig/default/baseTableConfig.ts +0 -2399
  164. package/src/components/business/bcPageConfig/usePageConfig.ts +0 -469
  165. package/src/components/business/bcSelect/bcSelect.vue +0 -50
  166. package/src/components/business/bcSwitchSystems/bcSwitchSystems.vue +0 -36
  167. package/src/components/business/bcSwitchSystems/useSwitchSystems.ts +0 -74
  168. package/src/components/business/bcTable/bcTable.vue +0 -63
  169. package/src/components/business/bcTable/components/sortColumn/index.ts +0 -19
  170. package/src/components/business/bcTable/components/sortColumn/sortColumn.vue +0 -107
  171. package/src/components/business/bcTable/useTable.ts +0 -51
  172. package/src/components/business/bcTable/useTableHeight.ts +0 -24
  173. package/src/components/business/bcTreeSelect/bcTreeSelect.vue +0 -12
  174. package/src/components/business/cardID/cardID.vue +0 -24
  175. package/src/components/business/cardID/type.ts +0 -0
  176. package/src/components/business/cardID/useCardID.ts +0 -0
  177. package/src/components/component.ts +0 -188
  178. package/src/components/config/autocompleteAttrConfig/autocompleteAttrConfig.vue +0 -26
  179. package/src/components/config/autocompleteAttrConfig/config.ts +0 -170
  180. package/src/components/config/baseForm.vue +0 -175
  181. package/src/components/config/buttonAttrConfig/buttonAttrConfig.vue +0 -26
  182. package/src/components/config/buttonAttrConfig/config.ts +0 -261
  183. package/src/components/config/cascaderAttrConfig/cascaderAttrConfig.vue +0 -26
  184. package/src/components/config/cascaderAttrConfig/config.ts +0 -287
  185. package/src/components/config/cascaderPanelAttrConfig/cascaderPanelAttrConfig.vue +0 -26
  186. package/src/components/config/cascaderPanelAttrConfig/config.ts +0 -278
  187. package/src/components/config/checkboxAttrConfig/checkboxAttrConfig.vue +0 -26
  188. package/src/components/config/checkboxAttrConfig/config.ts +0 -301
  189. package/src/components/config/datePickerAttrConfig/config.ts +0 -256
  190. package/src/components/config/datePickerAttrConfig/datePickerAttrConfig.vue +0 -26
  191. package/src/components/config/inputAttrConfig/config.ts +0 -322
  192. package/src/components/config/inputAttrConfig/inputAttrConfig.vue +0 -33
  193. package/src/components/config/inputAttrConfig/inputEventConfig.vue +0 -35
  194. package/src/components/config/inputNumberAttrConfig/config.ts +0 -177
  195. package/src/components/config/inputNumberAttrConfig/inputNumberAttrConfig.vue +0 -26
  196. package/src/components/config/radioAttrConfig/config.ts +0 -212
  197. package/src/components/config/radioAttrConfig/radioAttrConfig.vue +0 -26
  198. package/src/components/config/selectAttrConfig/config.ts +0 -478
  199. package/src/components/config/selectAttrConfig/selectAttrConfig.vue +0 -26
  200. package/src/components/config/switchAttrConfig/config.ts +0 -195
  201. package/src/components/config/switchAttrConfig/switchAttrConfig.vue +0 -26
  202. package/src/components/config/treeSelectAttrConfig/config.ts +0 -625
  203. package/src/components/config/treeSelectAttrConfig/treeSelectAttrConfig.vue +0 -26
  204. package/src/components/config/type/formType.ts +0 -25
  205. package/src/components/config/uploadAttrConfig/config.ts +0 -250
  206. package/src/components/config/uploadAttrConfig/uploadAttrConfig.vue +0 -26
  207. package/src/components/iconSelector/index.vue +0 -247
  208. package/src/components/iconSelector/list.vue +0 -84
  209. package/src/components/svgIcon/index.vue +0 -61
  210. package/src/directive/authDirective.ts +0 -40
  211. package/src/directive/customDirective.ts +0 -178
  212. package/src/directive/index.ts +0 -18
  213. package/src/hooks/useCrypto.ts +0 -36
  214. package/src/hooks/useExpose.ts +0 -60
  215. package/src/layout/component/aside.vue +0 -160
  216. package/src/layout/component/columnsAside.vue +0 -299
  217. package/src/layout/component/header.vue +0 -18
  218. package/src/layout/component/main.vue +0 -65
  219. package/src/layout/footer/index.vue +0 -25
  220. package/src/layout/index.vue +0 -53
  221. package/src/layout/lockScreen/index.vue +0 -352
  222. package/src/layout/logo/index.vue +0 -75
  223. package/src/layout/main/classic.vue +0 -73
  224. package/src/layout/main/columns.vue +0 -73
  225. package/src/layout/main/defaults.vue +0 -73
  226. package/src/layout/main/transverse.vue +0 -60
  227. package/src/layout/navBars/index.vue +0 -35
  228. package/src/layout/navBars/tagsView/contextmenu.vue +0 -133
  229. package/src/layout/navBars/tagsView/tagsView.vue +0 -737
  230. package/src/layout/navBars/topBar/breadcrumb.vue +0 -146
  231. package/src/layout/navBars/topBar/closeFull.vue +0 -53
  232. package/src/layout/navBars/topBar/index.vue +0 -107
  233. package/src/layout/navBars/topBar/search.vue +0 -123
  234. package/src/layout/navBars/topBar/setings.vue +0 -789
  235. package/src/layout/navBars/topBar/user.vue +0 -222
  236. package/src/layout/navBars/topBar/userNews.vue +0 -107
  237. package/src/layout/navMenu/horizontal.vue +0 -138
  238. package/src/layout/navMenu/subItem.vue +0 -49
  239. package/src/layout/navMenu/vertical.vue +0 -100
  240. package/src/layout/routerView/iframes.vue +0 -101
  241. package/src/layout/routerView/link.vue +0 -93
  242. package/src/layout/routerView/parent.vue +0 -104
  243. package/src/layout/upgrade/index.vue +0 -147
  244. package/src/main.ts +0 -70
  245. package/src/router/backEnd.ts +0 -173
  246. package/src/router/frontEnd.ts +0 -155
  247. package/src/router/index.ts +0 -138
  248. package/src/router/route.ts +0 -94
  249. package/src/stores/index.ts +0 -8
  250. package/src/stores/keepAliveNames.ts +0 -38
  251. package/src/stores/requestOldRoutes.ts +0 -16
  252. package/src/stores/routesList.ts +0 -26
  253. package/src/stores/tagsViewRoutes.ts +0 -23
  254. package/src/stores/themeConfig.ts +0 -142
  255. package/src/stores/userInfo.ts +0 -65
  256. package/src/style/index.scss +0 -0
  257. package/src/style/tailwind.css +0 -29
  258. package/src/theme/app.scss +0 -333
  259. package/src/theme/common/transition.scss +0 -147
  260. package/src/theme/dark.scss +0 -255
  261. package/src/theme/element.scss +0 -321
  262. package/src/theme/iconSelector.scss +0 -31
  263. package/src/theme/index.scss +0 -8
  264. package/src/theme/loading.scss +0 -51
  265. package/src/theme/media/chart.scss +0 -94
  266. package/src/theme/media/cityLinkage.scss +0 -10
  267. package/src/theme/media/date.scss +0 -25
  268. package/src/theme/media/dialog.scss +0 -12
  269. package/src/theme/media/error.scss +0 -45
  270. package/src/theme/media/form.scss +0 -31
  271. package/src/theme/media/home.scss +0 -23
  272. package/src/theme/media/index.scss +0 -15
  273. package/src/theme/media/layout.scss +0 -63
  274. package/src/theme/media/login.scss +0 -74
  275. package/src/theme/media/media.scss +0 -13
  276. package/src/theme/media/pagination.scss +0 -15
  277. package/src/theme/media/personal.scss +0 -16
  278. package/src/theme/media/scrollbar.scss +0 -56
  279. package/src/theme/media/tagsView.scss +0 -11
  280. package/src/theme/mixins/index.scss +0 -56
  281. package/src/theme/other.scss +0 -36
  282. package/src/theme/tableTool.scss +0 -27
  283. package/src/theme/waves.scss +0 -101
  284. package/src/types/auth.d.ts +0 -44
  285. package/src/types/axios.d.ts +0 -13
  286. package/src/types/components.d.ts +0 -30
  287. package/src/types/customData.d.ts +0 -163
  288. package/src/types/form.ts +0 -68
  289. package/src/types/formItem/autocomplete.ts +0 -43
  290. package/src/types/formItem/button.ts +0 -39
  291. package/src/types/formItem/input.ts +0 -66
  292. package/src/types/formItem/inputNumber.ts +0 -42
  293. package/src/types/formItem/selelct.ts +0 -54
  294. package/src/types/formItem/treeSelect.ts +0 -37
  295. package/src/types/formTable.d.ts +0 -210
  296. package/src/types/global.d.ts +0 -118
  297. package/src/types/layout.d.ts +0 -59
  298. package/src/types/mitt.d.ts +0 -38
  299. package/src/types/pinia.d.ts +0 -92
  300. package/src/types/views.d.ts +0 -331
  301. package/src/utils/arrayOperation.ts +0 -65
  302. package/src/utils/authFunction.ts +0 -38
  303. package/src/utils/build.ts +0 -124
  304. package/src/utils/commonFunction.ts +0 -64
  305. package/src/utils/formatTime.ts +0 -137
  306. package/src/utils/getDataType.ts +0 -136
  307. package/src/utils/getStyleSheets.ts +0 -101
  308. package/src/utils/loading.ts +0 -44
  309. package/src/utils/mitt.ts +0 -8
  310. package/src/utils/other.ts +0 -214
  311. package/src/utils/request.ts +0 -82
  312. package/src/utils/setIconfont.ts +0 -48
  313. package/src/utils/showMessage.ts +0 -57
  314. package/src/utils/showMessageBox.ts +0 -39
  315. package/src/utils/showNotification.ts +0 -50
  316. package/src/utils/showPopup.ts +0 -81
  317. package/src/utils/storage.ts +0 -137
  318. package/src/utils/theme.ts +0 -65
  319. package/src/utils/toolsValidate.ts +0 -370
  320. package/src/utils/watermark.ts +0 -47
  321. package/src/views/error/401.vue +0 -88
  322. package/src/views/error/404.vue +0 -89
  323. package/src/views/home/index.vue +0 -62
  324. package/src/views/login/component/account.vue +0 -172
  325. package/src/views/login/component/mobile.vue +0 -72
  326. package/src/views/login/component/scan.vue +0 -63
  327. package/src/views/login/index.vue +0 -254
  328. package/src/views/system/auth/index.vue +0 -48
  329. package/src/views/system/auth/list.ts +0 -50
  330. package/src/views/system/auth/useAuth.ts +0 -34
  331. package/src/views/system/dept/dialog.vue +0 -167
  332. package/src/views/system/dept/index.vue +0 -135
  333. package/src/views/system/dic/dialog.vue +0 -150
  334. package/src/views/system/dic/index.vue +0 -132
  335. package/src/views/system/form/data.json +0 -360
  336. package/src/views/system/form/index.vue +0 -24
  337. package/src/views/system/formSetting/components/hsBtn/src/hsAttrBtn.vue +0 -58
  338. package/src/views/system/formSetting/components/hsBtn/src/hsBtnConfigList.vue +0 -45
  339. package/src/views/system/formSetting/components/hsBtn/src/hsBtnPanel.vue +0 -51
  340. package/src/views/system/formSetting/components/hsBtn/useAttrBtn.ts +0 -129
  341. package/src/views/system/formSetting/components/hsBtn/useBtnConfigList.ts +0 -73
  342. package/src/views/system/formSetting/components/hsExpand/src/hsExpand.vue +0 -27
  343. package/src/views/system/formSetting/components/hsExpand/useExpand.ts +0 -9
  344. package/src/views/system/formSetting/components/hsForm/src/hsAttrForm.vue +0 -124
  345. package/src/views/system/formSetting/components/hsForm/src/hsFormConfig.vue +0 -180
  346. package/src/views/system/formSetting/components/hsForm/src/hsFormConfigList.vue +0 -45
  347. package/src/views/system/formSetting/components/hsForm/src/hsFormPanel.vue +0 -152
  348. package/src/views/system/formSetting/components/hsForm/src/hsFormParse.vue +0 -33
  349. package/src/views/system/formSetting/components/hsForm/useAttrForm.ts +0 -109
  350. package/src/views/system/formSetting/components/hsForm/useFormListConfig.ts +0 -70
  351. package/src/views/system/formSetting/components/hsPageTree/configData.ts +0 -3700
  352. package/src/views/system/formSetting/components/hsPageTree/src/hsPageTree.vue +0 -30
  353. package/src/views/system/formSetting/components/hsPageTree/usePageTree.ts +0 -50
  354. package/src/views/system/formSetting/components/hsSaveForm/saveFormConfig.ts +0 -66
  355. package/src/views/system/formSetting/components/hsSaveForm/src/saveForm.vue +0 -47
  356. package/src/views/system/formSetting/components/hsSaveForm/useSaveForm.ts +0 -122
  357. package/src/views/system/formSetting/components/hsTables/src/hsAttrTable.vue +0 -91
  358. package/src/views/system/formSetting/components/hsTables/src/hsRecursionConfig.vue +0 -36
  359. package/src/views/system/formSetting/components/hsTables/src/hsTableConfig.vue +0 -39
  360. package/src/views/system/formSetting/components/hsTables/src/hsTableConfigList.vue +0 -45
  361. package/src/views/system/formSetting/components/hsTables/src/hsTablePanel.vue +0 -56
  362. package/src/views/system/formSetting/components/hsTables/src/hsTableParse.vue +0 -29
  363. package/src/views/system/formSetting/components/hsTables/useAttrTable.ts +0 -125
  364. package/src/views/system/formSetting/components/hsTables/useTableConfigList.ts +0 -77
  365. package/src/views/system/formSetting/components/selectConfig/config.ts +0 -476
  366. package/src/views/system/formSetting/components/selectConfig/selectConfig.vue +0 -30
  367. package/src/views/system/formSetting/data.json +0 -360
  368. package/src/views/system/formSetting/default/baseBtnConfig.ts +0 -216
  369. package/src/views/system/formSetting/default/baseFormConfig.ts +0 -567
  370. package/src/views/system/formSetting/default/baseTableConfig.ts +0 -2353
  371. package/src/views/system/formSetting/formConfig.vue +0 -108
  372. package/src/views/system/formSetting/index.vue +0 -35
  373. package/src/views/system/formSetting/menuType.d.ts +0 -12
  374. package/src/views/system/formSetting/panelConfig.json +0 -164
  375. package/src/views/system/formSetting/useForm.ts +0 -89
  376. package/src/views/system/formSetting/useFormConfig.ts +0 -192
  377. package/src/views/system/menu/dialog.vue +0 -285
  378. package/src/views/system/menu/index.vue +0 -180
  379. package/src/views/system/page/components/hsPageTree/configData.ts +0 -3700
  380. package/src/views/system/page/components/hsPageTree/src/hsPageTree.vue +0 -30
  381. package/src/views/system/page/components/hsPageTree/usePageTree.ts +0 -49
  382. package/src/views/system/page/index.vue +0 -32
  383. package/src/views/system/page/menuType.d.ts +0 -12
  384. package/src/views/system/page/usePage.ts +0 -125
  385. package/src/views/system/role/dialog.vue +0 -236
  386. package/src/views/system/role/index.vue +0 -146
  387. package/src/views/system/table/data.json +0 -747
  388. package/src/views/system/table/formate.js +0 -49
  389. package/src/views/system/table/index.vue +0 -53
  390. package/src/views/system/user/dialog.vue +0 -187
  391. package/src/views/system/user/index.vue +0 -161
  392. package/src/views/test/test/components/hsBtn/src/hsAttrBtn.vue +0 -58
  393. package/src/views/test/test/components/hsBtn/src/hsBtnConfigList.vue +0 -45
  394. package/src/views/test/test/components/hsBtn/src/hsBtnPanel.vue +0 -51
  395. package/src/views/test/test/components/hsBtn/useAttrBtn.ts +0 -129
  396. package/src/views/test/test/components/hsBtn/useBtnConfigList.ts +0 -73
  397. package/src/views/test/test/components/hsExpand/src/hsExpand.vue +0 -27
  398. package/src/views/test/test/components/hsExpand/useExpand.ts +0 -9
  399. package/src/views/test/test/components/hsForm/src/hsAttrForm.vue +0 -124
  400. package/src/views/test/test/components/hsForm/src/hsFormConfig.vue +0 -180
  401. package/src/views/test/test/components/hsForm/src/hsFormConfigList.vue +0 -45
  402. package/src/views/test/test/components/hsForm/src/hsFormPanel.vue +0 -152
  403. package/src/views/test/test/components/hsForm/src/hsFormParse.vue +0 -33
  404. package/src/views/test/test/components/hsForm/useAttrForm.ts +0 -109
  405. package/src/views/test/test/components/hsForm/useFormListConfig.ts +0 -70
  406. package/src/views/test/test/components/hsSaveForm/saveFormConfig.ts +0 -66
  407. package/src/views/test/test/components/hsSaveForm/src/saveForm.vue +0 -47
  408. package/src/views/test/test/components/hsSaveForm/useSaveForm.ts +0 -122
  409. package/src/views/test/test/components/hsTables/src/hsAttrTable.vue +0 -91
  410. package/src/views/test/test/components/hsTables/src/hsRecursionConfig.vue +0 -36
  411. package/src/views/test/test/components/hsTables/src/hsTableConfig.vue +0 -39
  412. package/src/views/test/test/components/hsTables/src/hsTableConfigList.vue +0 -45
  413. package/src/views/test/test/components/hsTables/src/hsTablePanel.vue +0 -56
  414. package/src/views/test/test/components/hsTables/src/hsTableParse.vue +0 -29
  415. package/src/views/test/test/components/hsTables/useAttrTable.ts +0 -125
  416. package/src/views/test/test/components/hsTables/useTableConfigList.ts +0 -77
  417. package/src/views/test/test/components/selectConfig/config.ts +0 -476
  418. package/src/views/test/test/components/selectConfig/selectConfig.vue +0 -30
  419. package/src/views/test/test/data.json +0 -360
  420. package/src/views/test/test/default/baseBtnConfig.ts +0 -216
  421. package/src/views/test/test/default/baseFormConfig.ts +0 -567
  422. package/src/views/test/test/default/baseTableConfig.ts +0 -2353
  423. package/src/views/test/test/formConfig.vue +0 -102
  424. package/src/views/test/test/test.vue +0 -28
  425. package/src/views/test/test/test3.vue +0 -24
  426. package/src/views/test/test/test4.vue +0 -107
  427. package/src/views/test/test/test/345/211/257/346/234/254.vue +0 -2424
  428. package/src/views/test/test/useFormConfig.ts +0 -192
  429. package/src/views/test/test2/test2.vue +0 -17
  430. package/src/views/test/test3/test.vue +0 -20
  431. package/tailwind.config.js +0 -12
  432. package/tsconfig.json +0 -75
  433. package/vite.config.ts +0 -123
@@ -1,46 +0,0 @@
1
- <!--
2
- desc: 表单配置项集合
3
- author: lvling
4
- -->
5
- <template>
6
- <div>
7
- <div class="flex flex-wrap">
8
- <div class="p-2 relative" v-for="(item, index) in tableModel?.tableConfig" :key="index" @click="choseTagItem(item)">
9
- <div class="border border-solid border-zinc-300 hover:bg-blue-200 p-2 rounded" :class="current['id'] == item['id'] ? 'bg-blue-200' : ''">
10
- {{ (item['data'] && item['data']['title']) || (item['data']['type'] && tableItemType[item['data']['type']]) || '' }}
11
- </div>
12
- <div
13
- v-if="current['id'] == item['id']"
14
- @click.stop.prevent="deleteTagItem(item)"
15
- style="position: absolute; top: 0px; right: 5px; cursor: pointer"
16
- >
17
- ✖️
18
- </div>
19
- </div>
20
- <div class="p-2">
21
- <div @click="appendField" class="p-2 bg-pink-200 w-10 h-10 flex justify-center align-center rounded-full">+</div>
22
- </div>
23
- </div>
24
- </div>
25
- </template>
26
-
27
- <script setup lang="ts">
28
- import { PropType, defineModel } from 'vue';
29
- import { useHsTableListConfig } from './../useTableConfigList';
30
- import { tableItemType } from './../../../default/baseTableConfig';
31
- import IFormTable from '/@/types/formTable';
32
-
33
- const emit = defineEmits(['chose']);
34
-
35
- const tableModel = defineModel<IFormTable.Table>();
36
- const prop = defineProps({
37
- current: {
38
- type: Object as PropType<Record<'id', string>>,
39
- default: () => {},
40
- },
41
- });
42
-
43
- const { appendField, deleteTagItem, choseTagItem } = useHsTableListConfig(emit, prop, tableModel.value);
44
- </script>
45
-
46
- <style lang="scss" scoped></style>
@@ -1,68 +0,0 @@
1
- <!--
2
- desc: 配置表格面板
3
- author: 吕玲
4
- -->
5
- <template>
6
- <div class="mx-auto flex flex-row h-full">
7
- <div class="flex-1 grow overflow-y-auto">
8
- <component :is="hsExpand" v-model="titleTableConfig.code.visible" :expandConfig="titleTableConfig.code"></component>
9
- <div v-if="titleTableConfig.code.visible">{{ tableModel }}</div>
10
- <component :is="hsTableParse" v-model="tableModel" />
11
- <template v-if="tableModel?.baseData.id">
12
- <component :is="hsExpand" v-model="titleTableConfig.table.visible" :expandConfig="titleTableConfig.table"></component>
13
- <component :is="hsTableConfig" v-if="titleTableConfig.table.visible" v-model="tableModel" :config="baseParentConfig" />
14
-
15
- <component :is="hsExpand" v-model="titleTableConfig.tableItem.visible" :expandConfig="titleTableConfig.tableItem"></component>
16
- <component
17
- :is="hsTableConfigList"
18
- v-if="titleTableConfig.tableItem.visible"
19
- v-model="tableModel"
20
- :current="currentItem"
21
- @chose="onChoseItem"
22
- />
23
- </template>
24
- </div>
25
- <div v-if="(tableModel?.tableConfig || []).length > 0 && currentItem.id" class="flex-none basis-1/4 ml-4">
26
- <component :is="hsAttrTable" :current="currentItem" :configList="tableModel?.tableConfig" />
27
- </div>
28
- </div>
29
- </template>
30
-
31
- <script setup lang="ts">
32
- import { ref, watch, defineModel } from 'vue';
33
- import hsAttrTable from './hsAttrTable.vue'; // 元素配置配置详情
34
- import hsTableParse from './hsTableParse.vue'; // 一键解析
35
- import hsTableConfig from './hsTableConfig.vue'; // 表格配置项
36
- import hsTableConfigList from './hsTableConfigList.vue'; // 表格元素配置项集合
37
- import IFormTable from '/@/types/formTable';
38
- //
39
- import { tableTitleConfig, emptyTableItemData, baseConfig } from '../../../default/baseTableConfig'; // 表格配置数据
40
- import hsExpand from '../../hsExpand/src/hsExpand.vue';
41
- import _ from 'lodash';
42
- // 标题配置
43
- let titleTableConfig = ref(_.cloneDeep(tableTitleConfig.value));
44
- // 表格配置
45
- const tableModel = defineModel<IFormTable.Table>();
46
- const baseParentConfig = ref(_.cloneDeep(baseConfig));
47
- // 当前选中项配置
48
- let currentItem = _.cloneDeep(emptyTableItemData);
49
- let oldId = ref<string>('');
50
-
51
- watch(
52
- () => tableModel.value,
53
- (value) => {
54
- if (oldId.value != value?.id) {
55
- currentItem.value = _.cloneDeep(emptyTableItemData);
56
- oldId.value = value?.id || '';
57
- }
58
- },
59
- {
60
- immediate: true,
61
- }
62
- );
63
- const onChoseItem = (item: IFormTable.TableItem) => {
64
- currentItem.value = item;
65
- };
66
- </script>
67
-
68
- <style lang="scss" scoped></style>
@@ -1,24 +0,0 @@
1
- <!--
2
- desc: 通过查询类名解析表格配置
3
- author: 吕玲
4
- -->
5
- <template>
6
- <div class="flex flex-row">
7
- <hs-input class="basis-1/4 mr-2" v-model="parseApi" placeholder="请输入解析接口" />
8
- <hs-button @click="parseTable" type="primary">{{ parseApi ? '一键解析' : '初始化配置' }}</hs-button>
9
- </div>
10
- </template>
11
-
12
- <script setup lang="ts">
13
- import { ref, defineModel } from 'vue';
14
- import _ from 'lodash';
15
- import { useHsTableParse } from '../useTableParse';
16
- import IFormTable from '/@/types/formTable';
17
-
18
- let parseApi = ref('');
19
- let tableModel = defineModel<IFormTable.Table>();
20
-
21
- const { parseTable } = useHsTableParse(parseApi, tableModel);
22
- </script>
23
-
24
- <style lang="scss" scoped></style>
@@ -1,218 +0,0 @@
1
- import { ref, watch } from 'vue';
2
- import ComponentAttr from '/@/types/components';
3
- import { ElMessageBox, ElMessage } from 'element-plus';
4
- import IFormTable from '/@/types/formTable';
5
- import hsAttrTable from './src/hsAttrTable.vue';
6
- import { filterItemConfig, tableConfig, tableColumnRule } from '../../default/baseTableConfig';
7
- import { data } from '../../default/baseBtnConfig';
8
-
9
- import _ from 'lodash';
10
- import { Ref } from 'vue';
11
- interface TableRef {
12
- getSubmitData: () => boolean;
13
- }
14
- export function useHsAttrTable(props: ComponentAttr.Props<typeof hsAttrTable>, baseTableRef: Ref<TableRef>) {
15
- // 原始数据
16
- let oldItem = ref(props.current);
17
- // 表格项数据配置
18
- let tableDataConfig = ref(_.cloneDeep(tableConfig));
19
-
20
- // 当前项绑定数据
21
- let tableItemConfig = ref(_.cloneDeep(props.current));
22
- let fieldList = ref(_.cloneDeep(props.configList).map((item: IFormTable.TableItem) => item.data.field));
23
-
24
- /**
25
- * 根据类型判断标题和字段名是否必填
26
- * @returns
27
- */
28
- const configurationRule = () => {
29
- // 获取配置规则数据
30
- let rules: Record<string, IFormTable.Data> = _.cloneDeep(tableColumnRule);
31
- // 获取配置规则的key值并遍历
32
- _.keys(rules).forEach((key: string) => {
33
- // 根据列类型的值判断是否必填,返回key的规则校验数据
34
- let arr = rules[key].map((item: Record<'required', boolean>) => {
35
- item.required = !tableItemConfig.value.data.type;
36
- return item;
37
- });
38
- // 替换修改后的规则
39
- rules[key] = arr;
40
- });
41
- return rules;
42
- };
43
- /**
44
- * 监听当前项
45
- */
46
- watch(
47
- () => props.current,
48
- (value: Record<string, IFormTable.Data> | undefined) => {
49
- // 解决切换不同表单项不及时更新数据问题
50
- if (value && value.id != tableItemConfig.value.id) {
51
- oldItem.value = value;
52
- tableItemConfig.value = _.cloneDeep(value);
53
- // (IFormTable.TableItem)
54
- fieldList.value = _.cloneDeep(props.configList).map((item: IFormTable.TableItem) => item.data.field);
55
- // 更新表单校验规则
56
- tableDataConfig.value.rules.list = configurationRule();
57
- }
58
- },
59
- { deep: true }
60
- );
61
-
62
- // 表单配置项
63
- const parentConfig = ref({
64
- labelWidth: 150,
65
- span: 24,
66
- style: 'padding:5px 10px',
67
- });
68
- // 控制表单项属性的展开关闭
69
- const visible = ref(false);
70
- // 基本配置属性实例
71
- /**
72
- * 保存功能
73
- */
74
- const saveData = async function () {
75
- try {
76
- // 校验表单项属性
77
- let flag = await baseTableRef.value.getSubmitData();
78
- if (!flag) return;
79
- // 将默认值根据key值赋值给data中
80
- let oldKey = oldItem.value.data.field; // 表单项【old】key值
81
- let newKey = tableItemConfig.value.data.field; // 表单项【new】key值
82
- // 去除旧数据
83
- let tempFieldList = _.cloneDeep(fieldList.value); //.findIndex((item: String) => item != oldKey);
84
- let idx = tempFieldList.findIndex((item: String) => item == oldKey);
85
- tempFieldList.splice(idx, 1);
86
- // 如果修改过key后,修改后的key不能tableConfig 中的field重复
87
- if (newKey && _.includes(tempFieldList, newKey)) {
88
- return ElMessage.warning(`列字段名重复,请修改`);
89
- }
90
- // 保存表单配置
91
- oldItem.value = Object.assign(oldItem.value, _.cloneDeep(tableItemConfig.value));
92
- } catch (err) {
93
- console.log('er', err);
94
- }
95
- };
96
-
97
- /**
98
- * 追加筛选配置
99
- */
100
- const addFilterItem = () => {
101
- // 设置初始化筛选配置
102
- tableItemConfig.value?.data.filters?.push({ label: '', value: '', checked: false, resetValue: '', data: '' });
103
- // let tempFilterConfig = _.cloneDeep(filterItemConfig.value);
104
- // 项筛选配置数组中追加配置
105
- // tableItemConfig.value?.filterConfig.push(tempFilterConfig);
106
- };
107
- /**
108
- * 删除数据筛选配置和数据
109
- * @param index 当前删除项所在的下标
110
- */
111
- const deleteFilterConfig = (index: number) => {
112
- // 获取筛选条件对象
113
- let filterData = tableItemConfig.value.data.filters[index];
114
- ElMessageBox.confirm(`确认要删除该${filterData.label}配置吗?`, '提示', {
115
- confirmButtonText: '确认',
116
- cancelButtonText: '取消',
117
- type: 'warning',
118
- })
119
- .then(() => {
120
- // 删除对应的data数据
121
- tableItemConfig.value.data.filters.splice(index, 1);
122
- // 删除配置数据
123
- tableItemConfig.value.filterConfig.splice(index, 1);
124
- ElMessage.success('删除成功');
125
- })
126
- .catch((err) => {
127
- console.log('err', err);
128
- });
129
- };
130
-
131
- /**
132
- * 切换列类型
133
- * @param value
134
- * @param prop
135
- */
136
- const onChange = (value: string, prop: string) => {
137
- if (prop == 'type') {
138
- // 切换表单项列的类型时,根据type的是否存在值 规定校验规则
139
- tableDataConfig.value.rules.list = configurationRule();
140
- }
141
- };
142
- // =================================================== 按钮配置 start ================================================
143
-
144
- /**
145
- * 增加按钮配置
146
- */
147
- const addBtnItem = () => {
148
- console.log('tableItemConfig.value', tableItemConfig.value);
149
- // 追加按钮配置数据
150
- tableItemConfig.value.btnData.push(_.cloneDeep(data));
151
- // 按钮配置赋值
152
- // let tempConfig = _.cloneDeep(config);
153
- // 清空按钮配置校验规则
154
- // tempConfig.rules = {};
155
- // 追加按钮配置
156
- // tableItemConfig.value.btnConfig.push(_.cloneDeep(tempConfig));
157
- };
158
- /**
159
- * 删除按钮配置
160
- * @param index
161
- */
162
- const deleteBtnItem = (index: number) => {
163
- // 获取按钮数据对象
164
- let btnData = tableItemConfig.value.btnData[index];
165
- console.log('btnData', btnData);
166
-
167
- // 二次确认弹窗
168
- ElMessageBox.confirm(`确认要删除该${btnData.name ? '【' + btnData.name + '】' : ''}按钮配置吗?`, '提示', {
169
- confirmButtonText: '确认',
170
- cancelButtonText: '取消',
171
- type: 'warning',
172
- })
173
- .then(() => {
174
- // 删除对应的data数据
175
- tableItemConfig.value.btnData.splice(index, 1);
176
- // 删除配置数据
177
- // tableItemConfig.value.btnConfig.splice(index, 1);
178
- // 给出操作提示
179
- ElMessage.success('删除成功');
180
- })
181
- .catch((err) => {
182
- console.log('err', err);
183
- });
184
- };
185
- // =================================================== 按钮配置 end ================================================
186
-
187
- // ======================================================================== 自动完成 start ================================================================
188
- interface RestaurantItem {
189
- field_code: string;
190
- field_name: string;
191
- }
192
- /**
193
- * 自动完成回调
194
- * @param item
195
- */
196
- const onChangeItem = (item: RestaurantItem) => {
197
- tableItemConfig.value.data.title = item.field_name;
198
- tableItemConfig.value.data.field = item.field_code;
199
- };
200
-
201
- // ======================================================================== 自动完成 end ==================================================================
202
-
203
- return {
204
- parentConfig,
205
- visible,
206
- tableItemConfig,
207
- tableDataConfig,
208
- onChangeItem,
209
- saveData,
210
- onChange,
211
- // 过滤条件
212
- addFilterItem,
213
- deleteFilterConfig,
214
- // 按钮
215
- addBtnItem,
216
- deleteBtnItem,
217
- };
218
- }
@@ -1,77 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import _ from 'lodash';
3
- import { ElMessageBox, ElMessage } from 'element-plus';
4
- import IFormTable from '/@/types/formTable';
5
- import ComponentAttr from '/@/types/components';
6
- import { tableItemConfig, emptyTableItemData } from './../../default/baseTableConfig';
7
- import hsTableConfigList from './src/hsTableConfigList.vue';
8
-
9
- export function useHsTableListConfig(
10
- emit: (event: 'chose', ...args: any[]) => void,
11
- prop: ComponentAttr.Props<typeof hsTableConfigList>,
12
- tableModel: ComponentAttr.RecursivePartial<IFormTable.Table> = {
13
- id: '',
14
- baseData: { id: '' },
15
- // tableData: [],
16
- tableConfig: [],
17
- }
18
- ) {
19
- /**
20
- * 选择配置项
21
- * @param item
22
- */
23
- const choseTagItem = (item: IFormTable.TableItem) => {
24
- // 获取操作项
25
- let current = item.id == prop.current?.id ? _.cloneDeep(emptyTableItemData.value) : item;
26
- emit('chose', current);
27
- };
28
-
29
- /**
30
- * 添加字段
31
- * @returns
32
- */
33
- const appendField = () => {
34
- // 用时间戳设置唯一id
35
- let defaultItemConfig: IFormTable.TableItem = _.cloneDeep(tableItemConfig.value);
36
- defaultItemConfig.id = new Date().getTime().toString();
37
- // 校验字段名称是否重复
38
- let labelIdx: number = tableModel.tableConfig!.findIndex((item) => item!.id == defaultItemConfig.id) || -1;
39
- if (labelIdx > -1) return ElMessage.warning('字段名称重复');
40
- // 追加字段配置项
41
- tableModel.tableConfig!.push(defaultItemConfig);
42
- // 获取新增的配置对象
43
- let obj = tableModel.tableConfig![tableModel.tableConfig!.length - 1]; // || emptyTableItemData;
44
- // 设置默认选中
45
- choseTagItem(obj as IFormTable.TableItem);
46
- };
47
-
48
- /**
49
- * 删除配置
50
- * @param item
51
- */
52
- const deleteTagItem = (item: IFormTable.TableItem) => {
53
- ElMessageBox.confirm(`确定删除“${item['data'] && item['data']['title']}”字段吗?`, '提示', {
54
- confirmButtonText: '确认',
55
- cancelButtonText: '取消',
56
- type: 'warning',
57
- })
58
- .then(() => {
59
- // 获取被删除的配置所在id
60
- _.remove(tableModel.tableConfig, item);
61
- // 更新当前选中配置
62
- choseTagItem(item);
63
- // 给出操作成功提示
64
- ElMessage.success('删除成功');
65
- })
66
- .catch((err) => {
67
- console.log('err', err);
68
- });
69
- };
70
-
71
- return {
72
- choseTagItem,
73
- appendField,
74
- deleteTagItem,
75
- // test
76
- };
77
- }
@@ -1,78 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import IFormTable from '/@/types/formTable';
3
- import { Ref, ref } from 'vue';
4
- import { baseData, tableItemConfig, fieldList } from '../../default/baseTableConfig'; // 表单配置方法
5
- import _ from 'lodash';
6
-
7
- export function useHsTableParse(parseApi: Ref<string>, tableModel: Ref<IFormTable.Table | undefined>) {
8
- /**
9
- * 初始化表格配置
10
- */
11
- const initTableConfig = () => {
12
- // 获取表格配置列基础配置
13
- let seq_config = _.cloneDeep(tableItemConfig.value);
14
- // 修改表格配置列的id
15
- seq_config.id = new Date().getTime().toString();
16
- // 将第一个表格列设置为序号
17
- seq_config.data = _.assign(seq_config.data, {
18
- type: 'seq',
19
- title: '',
20
- });
21
- // seq_config.rules = {};
22
- // 初始化表格配置数据
23
- _.assign(tableModel.value, {
24
- // 表格配置数据
25
- baseData: _.assign(_.cloneDeep(baseData.value), { id: new Date().getTime().toString(), tableName: '表格配置名称' }),
26
- // baseConfig: _.cloneDeep(baseConfig), // 表格配置
27
- tableConfig: [seq_config],
28
- });
29
- };
30
- interface Column {
31
- field: string;
32
- title: string;
33
- }
34
- /**
35
- * 一键解析表格
36
- * @returns
37
- */
38
- const parseTable = () => {
39
- if (parseApi.value) {
40
- let list = _.cloneDeep(fieldList);
41
- if (list.length > 0) {
42
- if (!tableModel.value?.baseData.id) {
43
- // 初始化配置
44
- initTableConfig();
45
- }
46
-
47
- // 遍历表格所有列,过滤重复数据并向表格配置列中追加数据
48
- list.forEach((column: Column) => {
49
- // 获取表格配置项的field数组
50
- let keys = _.map(tableModel.value?.tableConfig, (item: IFormTable.TableItem) => item.data.field);
51
- // console.log('keys', keys, _.includes(keys, column.field));
52
-
53
- // 判断是否存在重复的field
54
- if (!_.includes(keys, column.field)) {
55
- // 拷贝出默认配置
56
- let column_config = _.cloneDeep(tableItemConfig.value);
57
- // 更新配置的id title field 和组件el
58
- column_config.id = column.field + new Date().getTime().toString();
59
- column_config.data.field = column.field;
60
- column_config.data.title = column.title || '展示列名称';
61
- // 项表格配置中追加列配置
62
- tableModel.value?.tableConfig.push(column_config);
63
- // console.log('tableModel', tableModel.value, column_config);
64
- }
65
- });
66
- return;
67
- }
68
- }
69
- // 判断是否存在表格id,如果没有默认初始化配置
70
- if (!tableModel.value?.baseData.id) {
71
- // 初始化配置
72
- initTableConfig();
73
- }
74
- };
75
- return {
76
- parseTable,
77
- };
78
- }