hy-dispatch-ui-v3 0.2.66 → 0.2.68

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 (288) hide show
  1. package/dist/tailwind.css +257 -21
  2. package/es/api/device.mjs +2 -3
  3. package/es/api/exportExcel.mjs +57 -0
  4. package/es/api/index.mjs +27 -16
  5. package/es/api/mapRail.mjs +31 -0
  6. package/es/api/organization.mjs +17 -9
  7. package/es/api/rule.mjs +30 -0
  8. package/es/api/sypct.mjs +2 -3
  9. package/es/api/task.mjs +2 -3
  10. package/es/bussiness/hyAddDepartmentType/addDepartmentType.vue.mjs +18 -19
  11. package/es/bussiness/hyAddDepartmentType/style/addDepartmentType.scss +28 -28
  12. package/es/bussiness/hyElectronicFence/cpns/addElectronicFenceDialog/addElectronicFenceDialog.vue.mjs +511 -0
  13. package/es/bussiness/hyElectronicFence/cpns/batchSetElectronicFenceUserDialog/batchSetElectronicFenceUserDialog.vue.mjs +169 -0
  14. package/es/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersDialog.vue.mjs +318 -0
  15. package/es/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersItem.vue.mjs +123 -0
  16. package/es/bussiness/hyElectronicFence/electronicFence.vue.mjs +358 -0
  17. package/es/bussiness/hyElectronicFence/index.mjs +13 -0
  18. package/es/bussiness/hyElectronicFence/style/electronicFence.scss +0 -0
  19. package/es/bussiness/hyMapAearchPlace/js/index.mjs +1 -1
  20. package/es/bussiness/hyMapAearchPlace/mapAearchPlace.vue.mjs +4 -6
  21. package/es/bussiness/hyMapAearchPlace/style/mapAearchPlace.scss +4 -3
  22. package/es/bussiness/hyRuleSetting/cpns/gatheringPeople/gatheringPeople.vue.mjs +270 -0
  23. package/es/bussiness/hyRuleSetting/cpns/missionInRule/missionInRule.vue.mjs +251 -0
  24. package/es/bussiness/hyRuleSetting/cpns/missionOutRule/missionOutRule.vue.mjs +251 -0
  25. package/es/bussiness/hyRuleSetting/cpns/ruleAssignDialog/ruleAssignDialog.vue.mjs +395 -0
  26. package/es/bussiness/hyRuleSetting/cpns/ruleFenceDialog/ruleFenceDialog.vue.mjs +651 -0
  27. package/es/bussiness/hyRuleSetting/cpns/ruleSettingDialog/ruleSettingDialog.vue.mjs +357 -0
  28. package/es/bussiness/hyRuleSetting/cpns/sedentary/sedentary.vue.mjs +261 -0
  29. package/es/bussiness/hyRuleSetting/cpns/setRuleAggregationAlarmDialog/setRuleAggregationAlarmDialog.vue.mjs +360 -0
  30. package/es/bussiness/hyRuleSetting/cpns/timedVideo/timedVideo.vue.mjs +240 -0
  31. package/es/bussiness/hyRuleSetting/cpns/timerCamera/timerCamera.vue.mjs +258 -0
  32. package/es/bussiness/hyRuleSetting/cpns/timingReturn/timingReturn.vue.mjs +240 -0
  33. package/es/bussiness/hyRuleSetting/index.mjs +15 -0
  34. package/es/bussiness/hyRuleSetting/js/ruleSetting.mjs +65 -0
  35. package/es/bussiness/hyRuleSetting/ruleSetting.vue.mjs +129 -0
  36. package/es/bussiness/hyRuleSetting/style/ruleSetting.scss +0 -0
  37. package/es/bussiness/index.mjs +2 -0
  38. package/es/components/hyAudioPlayer/audioPlayer.vue.mjs +5 -13
  39. package/es/components/hyAudioPlayer/js/index.mjs +9 -14
  40. package/es/components/hyAudioPlayer/style/audioPlayer.scss +7 -2
  41. package/es/components/hyBatchUploadDialog/batchUploadDialog.vue.mjs +174 -142
  42. package/es/components/hyButton/button.vue.mjs +18 -5
  43. package/es/components/hyButton/style/button.scss +50 -74
  44. package/es/components/hyCheckboxGroup/checkboxGroup.vue.mjs +119 -0
  45. package/es/components/hyCheckboxGroup/index.mjs +7 -0
  46. package/es/components/hyCheckboxGroup/style/checkboxGroup.scss +58 -0
  47. package/es/components/hyConfigProvider/configProvider.vue.mjs +51 -38
  48. package/es/components/hyConfirmDialog/confirmDialog.vue.mjs +57 -62
  49. package/es/components/hyConfirmDialog/confirmMethod.mjs +24 -22
  50. package/es/components/hyCutter/cutter.vue.mjs +9 -23
  51. package/es/components/hyDatePicker/datePicker.vue.mjs +12 -17
  52. package/es/components/hyDialog/dialog.vue.mjs +5 -9
  53. package/es/components/hyDialog/style/dialog.scss +12 -13
  54. package/es/components/hyDrawer/drawer.vue.mjs +100 -0
  55. package/es/components/hyDrawer/index.mjs +7 -0
  56. package/es/components/hyDrawer/style/drawer.scss +0 -0
  57. package/es/components/hyForm/cpns/arrayItem.vue.mjs +10 -28
  58. package/es/components/hyForm/cpns/arrayItem2.vue.mjs +198 -0
  59. package/es/components/hyForm/cpns/extraItem.vue.mjs +2 -3
  60. package/es/components/hyForm/cpns/formItem.vue.mjs +149 -69
  61. package/es/components/hyForm/cpns/locationSelect.vue.mjs +26 -26
  62. package/es/components/hyForm/form.vue.mjs +74 -28
  63. package/es/components/hyForm/js/index.mjs +4 -8
  64. package/es/components/hyForm/js/useAppForm.mjs +4 -9
  65. package/es/components/hyForm/style/form.scss +4 -13
  66. package/es/components/hyIcon/icon.vue.mjs +3 -3
  67. package/es/components/hyIconBox/style/iconBox.scss +2 -6
  68. package/es/components/hyInput/inputSearch.vue.mjs +8 -11
  69. package/es/components/hyInput/style/inputSearch.scss +3 -0
  70. package/es/components/hyLoading/index.mjs +3 -5
  71. package/es/components/hyMap/js/index.mjs +35 -10
  72. package/es/components/hyMap/map.vue.mjs +30 -6
  73. package/es/components/hyMenu/style/menu.scss +5 -15
  74. package/es/components/hyNoPermissions/noPermissions.vue.mjs +3 -4
  75. package/es/components/hyNoPermissionsMap/noPermissionsMap.vue.mjs +3 -6
  76. package/es/components/hyOrgCascader/js/index.mjs +1 -5
  77. package/es/components/hyOrgCascader/orgCascader.vue.mjs +31 -12
  78. package/es/components/hyOrgCascader/style/orgCascader.scss +7 -0
  79. package/es/components/hyRadioGroup/radioGroup.vue.mjs +48 -41
  80. package/es/components/hyRadioGroup/style/radioGroup.scss +9 -0
  81. package/es/components/hySearch/cpns/searchItem.vue.mjs +409 -324
  82. package/es/components/hySearch/js/index.mjs +1 -4
  83. package/es/components/hySearch/js/useAppSearch.mjs +5 -10
  84. package/es/components/hySearch/search.vue.mjs +23 -20
  85. package/es/components/hySearch/style/search.scss +9 -0
  86. package/es/components/hyStatus/index.mjs +7 -0
  87. package/es/components/hyStatus/status.vue.mjs +110 -0
  88. package/es/components/hyStatus/style/status.scss +0 -0
  89. package/es/components/hyTable/cpns/columnSelect.vue.mjs +24 -28
  90. package/es/components/hyTable/cpns/columnSelectItem.vue.mjs +8 -9
  91. package/es/components/hyTable/cpns/headerItem.vue.mjs +2 -2
  92. package/es/components/hyTable/cpns/virtualTable.vue.mjs +43 -34
  93. package/es/components/hyTable/js/index.mjs +67 -64
  94. package/es/components/hyTable/js/search.mjs +25 -1
  95. package/es/components/hyTable/js/useAppTable.mjs +3 -4
  96. package/es/components/hyTable/style/table.scss +8 -0
  97. package/es/components/hyTable/table.vue.mjs +68 -53
  98. package/es/components/hyTableActionButton/tableActionButton.vue.mjs +13 -6
  99. package/es/components/hyTableForm/batchTableForm.vue.mjs +26 -9
  100. package/es/components/hyTableForm/js/index.mjs +2 -8
  101. package/es/components/hyTableForm/js/useAppTableForm.mjs +3 -8
  102. package/es/components/hyTableForm/style/batchTableForm.scss +26 -54
  103. package/es/components/hyTableForm/style/tableForm.scss +3 -2
  104. package/es/components/hyTableForm/tableForm.vue.mjs +160 -70
  105. package/es/components/hyTimePicker/timePicker.vue.mjs +4 -5
  106. package/es/components/hyTree/js/index.mjs +113 -72
  107. package/es/components/hyTree/style/index.css +1 -1
  108. package/es/components/hyTree/tree.vue.mjs +21 -18
  109. package/es/components/hyUserAvatar/userAvatar.vue.mjs +3 -6
  110. package/es/components/hyVideoPlayer/js/index.mjs +14 -23
  111. package/es/components/hyVideoPlayer/style/videoPlayer.scss +5 -7
  112. package/es/components/hyVideoPlayer/videoPlayer.vue.mjs +16 -26
  113. package/es/components/index.mjs +3 -0
  114. package/es/hooks/index.mjs +6 -2
  115. package/es/hooks/useAudioPlayerConfig.mjs +1 -3
  116. package/es/hooks/useBaseMainStore.mjs +29 -0
  117. package/es/hooks/useCurrentBus.mjs +20 -0
  118. package/es/hooks/useDialog.mjs +327 -0
  119. package/es/hooks/useExportFile.mjs +133 -0
  120. package/es/hooks/useGlobalConfig.mjs +10 -6
  121. package/es/hooks/useLocale.mjs +22 -12
  122. package/es/hooks/usePermissionMap.mjs +1 -3
  123. package/es/hooks/useResizeHandler.mjs +1 -4
  124. package/es/hooks/useResizeObserver.mjs +3 -1
  125. package/es/hooks/useSubscribe.mjs +2 -2
  126. package/es/hooks/useUserAvatarMap.mjs +1 -3
  127. package/es/hooks/useVideoPlayerConfig.mjs +1 -3
  128. package/es/index.mjs +11 -2
  129. package/es/locale/{en.mjs → en_US.mjs} +79 -4
  130. package/es/locale/index.mjs +2 -2
  131. package/es/locale/zh_CN.mjs +79 -2
  132. package/es/style/index.scss +0 -1
  133. package/es/style/tailwind.scss +7 -4
  134. package/es/utils/adaptive.mjs +1 -3
  135. package/es/utils/form.mjs +7 -10
  136. package/es/utils/handler.mjs +4 -8
  137. package/es/utils/input.mjs +8 -9
  138. package/es/utils/is.mjs +3 -1
  139. package/es/utils/map/hook/bigMap.mjs +16 -53
  140. package/es/utils/map/hook/gaode.mjs +53 -33
  141. package/es/utils/map/hook/leafletjs.mjs +38 -82
  142. package/es/utils/map/index.mjs +3 -9
  143. package/es/utils/map/js/webgis.mjs +12 -12
  144. package/es/version.mjs +1 -1
  145. package/lib/api/device.js +2 -3
  146. package/lib/api/exportExcel.js +62 -0
  147. package/lib/api/index.js +27 -16
  148. package/lib/api/mapRail.js +34 -0
  149. package/lib/api/organization.js +17 -8
  150. package/lib/api/rule.js +33 -0
  151. package/lib/api/sypct.js +2 -3
  152. package/lib/api/task.js +2 -3
  153. package/lib/bussiness/hyAddDepartmentType/addDepartmentType.vue.js +17 -18
  154. package/lib/bussiness/hyAddDepartmentType/style/addDepartmentType.scss +28 -28
  155. package/lib/bussiness/hyElectronicFence/cpns/addElectronicFenceDialog/addElectronicFenceDialog.vue.js +515 -0
  156. package/lib/bussiness/hyElectronicFence/cpns/batchSetElectronicFenceUserDialog/batchSetElectronicFenceUserDialog.vue.js +173 -0
  157. package/lib/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersDialog.vue.js +322 -0
  158. package/lib/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersItem.vue.js +127 -0
  159. package/lib/bussiness/hyElectronicFence/electronicFence.vue.js +362 -0
  160. package/lib/bussiness/hyElectronicFence/index.js +21 -0
  161. package/lib/bussiness/hyElectronicFence/style/electronicFence.scss +0 -0
  162. package/lib/bussiness/hyMapAearchPlace/js/index.js +1 -1
  163. package/lib/bussiness/hyMapAearchPlace/mapAearchPlace.vue.js +4 -6
  164. package/lib/bussiness/hyMapAearchPlace/style/mapAearchPlace.scss +4 -3
  165. package/lib/bussiness/hyRuleSetting/cpns/gatheringPeople/gatheringPeople.vue.js +274 -0
  166. package/lib/bussiness/hyRuleSetting/cpns/missionInRule/missionInRule.vue.js +255 -0
  167. package/lib/bussiness/hyRuleSetting/cpns/missionOutRule/missionOutRule.vue.js +255 -0
  168. package/lib/bussiness/hyRuleSetting/cpns/ruleAssignDialog/ruleAssignDialog.vue.js +399 -0
  169. package/lib/bussiness/hyRuleSetting/cpns/ruleFenceDialog/ruleFenceDialog.vue.js +655 -0
  170. package/lib/bussiness/hyRuleSetting/cpns/ruleSettingDialog/ruleSettingDialog.vue.js +361 -0
  171. package/lib/bussiness/hyRuleSetting/cpns/sedentary/sedentary.vue.js +265 -0
  172. package/lib/bussiness/hyRuleSetting/cpns/setRuleAggregationAlarmDialog/setRuleAggregationAlarmDialog.vue.js +364 -0
  173. package/lib/bussiness/hyRuleSetting/cpns/timedVideo/timedVideo.vue.js +244 -0
  174. package/lib/bussiness/hyRuleSetting/cpns/timerCamera/timerCamera.vue.js +262 -0
  175. package/lib/bussiness/hyRuleSetting/cpns/timingReturn/timingReturn.vue.js +244 -0
  176. package/lib/bussiness/hyRuleSetting/index.js +24 -0
  177. package/lib/bussiness/hyRuleSetting/js/ruleSetting.js +68 -0
  178. package/lib/bussiness/hyRuleSetting/ruleSetting.vue.js +133 -0
  179. package/lib/bussiness/hyRuleSetting/style/ruleSetting.scss +0 -0
  180. package/lib/bussiness/index.js +21 -10
  181. package/lib/components/hyAudioPlayer/audioPlayer.vue.js +5 -13
  182. package/lib/components/hyAudioPlayer/js/index.js +9 -14
  183. package/lib/components/hyAudioPlayer/style/audioPlayer.scss +7 -2
  184. package/lib/components/hyBatchUploadDialog/batchUploadDialog.vue.js +173 -141
  185. package/lib/components/hyButton/button.vue.js +17 -4
  186. package/lib/components/hyButton/style/button.scss +50 -74
  187. package/lib/components/hyCheckboxGroup/checkboxGroup.vue.js +123 -0
  188. package/lib/components/hyCheckboxGroup/index.js +12 -0
  189. package/lib/components/hyCheckboxGroup/style/checkboxGroup.scss +58 -0
  190. package/lib/components/hyConfigProvider/configProvider.vue.js +50 -56
  191. package/lib/components/hyConfirmDialog/confirmDialog.vue.js +56 -61
  192. package/lib/components/hyConfirmDialog/confirmMethod.js +23 -21
  193. package/lib/components/hyCutter/cutter.vue.js +8 -22
  194. package/lib/components/hyDatePicker/datePicker.vue.js +11 -16
  195. package/lib/components/hyDialog/dialog.vue.js +5 -9
  196. package/lib/components/hyDialog/style/dialog.scss +12 -13
  197. package/lib/components/hyDrawer/drawer.vue.js +104 -0
  198. package/lib/components/hyDrawer/index.js +12 -0
  199. package/lib/components/hyDrawer/style/drawer.scss +0 -0
  200. package/lib/components/hyForm/cpns/arrayItem.vue.js +9 -27
  201. package/lib/components/hyForm/cpns/arrayItem2.vue.js +202 -0
  202. package/lib/components/hyForm/cpns/extraItem.vue.js +2 -3
  203. package/lib/components/hyForm/cpns/formItem.vue.js +148 -68
  204. package/lib/components/hyForm/cpns/locationSelect.vue.js +26 -26
  205. package/lib/components/hyForm/form.vue.js +69 -23
  206. package/lib/components/hyForm/js/index.js +3 -7
  207. package/lib/components/hyForm/js/useAppForm.js +4 -9
  208. package/lib/components/hyForm/style/form.scss +4 -13
  209. package/lib/components/hyIcon/icon.vue.js +3 -3
  210. package/lib/components/hyIconBox/style/iconBox.scss +2 -6
  211. package/lib/components/hyInput/inputSearch.vue.js +7 -10
  212. package/lib/components/hyInput/style/inputSearch.scss +3 -0
  213. package/lib/components/hyLoading/index.js +2 -4
  214. package/lib/components/hyMap/js/index.js +34 -9
  215. package/lib/components/hyMap/map.vue.js +29 -5
  216. package/lib/components/hyMenu/style/menu.scss +5 -15
  217. package/lib/components/hyNoPermissions/noPermissions.vue.js +3 -4
  218. package/lib/components/hyNoPermissionsMap/noPermissionsMap.vue.js +3 -6
  219. package/lib/components/hyOrgCascader/js/index.js +1 -5
  220. package/lib/components/hyOrgCascader/orgCascader.vue.js +29 -10
  221. package/lib/components/hyOrgCascader/style/orgCascader.scss +7 -0
  222. package/lib/components/hyRadioGroup/radioGroup.vue.js +47 -40
  223. package/lib/components/hyRadioGroup/style/radioGroup.scss +9 -0
  224. package/lib/components/hySearch/cpns/searchItem.vue.js +407 -322
  225. package/lib/components/hySearch/js/index.js +1 -4
  226. package/lib/components/hySearch/js/useAppSearch.js +5 -10
  227. package/lib/components/hySearch/search.vue.js +23 -20
  228. package/lib/components/hySearch/style/search.scss +9 -0
  229. package/lib/components/hyStatus/index.js +12 -0
  230. package/lib/components/hyStatus/status.vue.js +114 -0
  231. package/lib/components/hyStatus/style/status.scss +0 -0
  232. package/lib/components/hyTable/cpns/columnSelect.vue.js +22 -26
  233. package/lib/components/hyTable/cpns/columnSelectItem.vue.js +7 -8
  234. package/lib/components/hyTable/cpns/headerItem.vue.js +2 -2
  235. package/lib/components/hyTable/cpns/virtualTable.vue.js +41 -32
  236. package/lib/components/hyTable/js/index.js +65 -61
  237. package/lib/components/hyTable/js/search.js +25 -1
  238. package/lib/components/hyTable/js/useAppTable.js +2 -3
  239. package/lib/components/hyTable/style/table.scss +8 -0
  240. package/lib/components/hyTable/table.vue.js +67 -52
  241. package/lib/components/hyTableActionButton/tableActionButton.vue.js +13 -6
  242. package/lib/components/hyTableForm/batchTableForm.vue.js +26 -9
  243. package/lib/components/hyTableForm/js/index.js +2 -8
  244. package/lib/components/hyTableForm/js/useAppTableForm.js +3 -8
  245. package/lib/components/hyTableForm/style/batchTableForm.scss +26 -54
  246. package/lib/components/hyTableForm/style/tableForm.scss +3 -2
  247. package/lib/components/hyTableForm/tableForm.vue.js +159 -69
  248. package/lib/components/hyTimePicker/timePicker.vue.js +3 -4
  249. package/lib/components/hyTree/js/index.js +113 -72
  250. package/lib/components/hyTree/style/index.css +1 -1
  251. package/lib/components/hyTree/tree.vue.js +21 -18
  252. package/lib/components/hyUserAvatar/userAvatar.vue.js +3 -6
  253. package/lib/components/hyVideoPlayer/js/index.js +14 -23
  254. package/lib/components/hyVideoPlayer/style/videoPlayer.scss +5 -7
  255. package/lib/components/hyVideoPlayer/videoPlayer.vue.js +16 -26
  256. package/lib/components/index.js +46 -40
  257. package/lib/hooks/index.js +17 -0
  258. package/lib/hooks/useAudioPlayerConfig.js +1 -3
  259. package/lib/hooks/useBaseMainStore.js +32 -0
  260. package/lib/hooks/useCurrentBus.js +23 -0
  261. package/lib/hooks/useDialog.js +331 -0
  262. package/lib/hooks/useExportFile.js +135 -0
  263. package/lib/hooks/useGlobalConfig.js +10 -6
  264. package/lib/hooks/useLocale.js +25 -11
  265. package/lib/hooks/usePermissionMap.js +1 -3
  266. package/lib/hooks/useResizeHandler.js +1 -4
  267. package/lib/hooks/useResizeObserver.js +3 -1
  268. package/lib/hooks/useSubscribe.js +2 -1
  269. package/lib/hooks/useUserAvatarMap.js +1 -3
  270. package/lib/hooks/useVideoPlayerConfig.js +1 -3
  271. package/lib/index.js +107 -73
  272. package/lib/locale/{en.js → en_US.js} +79 -4
  273. package/lib/locale/index.js +3 -3
  274. package/lib/locale/zh_CN.js +79 -2
  275. package/lib/style/index.scss +0 -1
  276. package/lib/style/tailwind.scss +7 -4
  277. package/lib/utils/adaptive.js +1 -3
  278. package/lib/utils/form.js +6 -9
  279. package/lib/utils/handler.js +3 -7
  280. package/lib/utils/input.js +7 -8
  281. package/lib/utils/is.js +5 -3
  282. package/lib/utils/map/hook/bigMap.js +16 -53
  283. package/lib/utils/map/hook/gaode.js +53 -33
  284. package/lib/utils/map/hook/leafletjs.js +38 -82
  285. package/lib/utils/map/index.js +3 -9
  286. package/lib/utils/map/js/webgis.js +12 -12
  287. package/lib/version.js +1 -1
  288. package/package.json +3 -2
@@ -10,10 +10,10 @@ require('../../../hooks/index.js');
10
10
  require('../../../utils/index.js');
11
11
  var index$1 = require('../js/index.js');
12
12
  var headerItem = require('./headerItem.vue.js');
13
- var useLocale = require('../../../hooks/useLocale.js');
14
13
  var is = require('../../../utils/is.js');
15
14
  var index = require('../../hyIcon/index.js');
16
15
  var index$2 = require('../../hyTooltip/index.js');
16
+ var useLocale = require('../../../hooks/useLocale.js');
17
17
 
18
18
  const _sfc_main = {
19
19
  __name: "virtualTable",
@@ -83,7 +83,7 @@ const _sfc_main = {
83
83
  const props = __props;
84
84
  const emits = __emit;
85
85
  const expandedRowKeys = vue.useModel(__props, "expandedRowKeys");
86
- const { t } = useLocale.useLocale();
86
+ const tableRef = vue.useTemplateRef("tableRef");
87
87
  const avgWidth = vue.computed(() => {
88
88
  const { total, totalWidth } = props.columns.reduce(
89
89
  ({ total: total2, totalWidth: totalWidth2 }, column) => {
@@ -281,12 +281,21 @@ const _sfc_main = {
281
281
  isAllChecked.value = false;
282
282
  selectedMap.value.clear();
283
283
  indeterminateKeys.value.clear();
284
+ },
285
+ scrollToTop(top) {
286
+ tableRef.value.scrollToTop(top);
287
+ },
288
+ scrollToLeft(left) {
289
+ tableRef.value.scrollToLeft(left);
284
290
  }
285
291
  });
286
292
  return (_ctx, _cache) => {
287
293
  return vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElTableV2), {
294
+ ref_key: "tableRef",
295
+ ref: tableRef,
288
296
  "expanded-row-keys": expandedRowKeys.value,
289
297
  "onUpdate:expandedRowKeys": ($event) => expandedRowKeys.value = $event,
298
+ cache: 0,
290
299
  "row-key": __props.rowKey,
291
300
  data: dataSource.value,
292
301
  columns: tableColumns.value,
@@ -425,11 +434,7 @@ const _sfc_main = {
425
434
  (vue.openBlock(true), vue.createElementBlock(
426
435
  vue.Fragment,
427
436
  null,
428
- vue.renderList(vue.unref(index$1.operatorFilterHandler)(
429
- column,
430
- { column, row, $index, cellIndex },
431
- "default"
432
- ), (citem, cindex) => {
437
+ vue.renderList(vue.unref(index$1.operatorFilterHandler)(column, { column, row, $index, cellIndex }, "default"), (citem, cindex) => {
433
438
  return vue.openBlock(), vue.createBlock(vue.unref(index$2.HyTooltip), {
434
439
  key: cindex,
435
440
  "is-always": "",
@@ -438,7 +443,7 @@ const _sfc_main = {
438
443
  }, {
439
444
  default: vue.withCtx(() => [
440
445
  vue.createElementVNode("div", {
441
- class: vue.normalizeClass(["w-[40px] h-[48px] inline-flex flex-col items-center justify-center text-xs hover:font-bold border border-transparent rounded box-border", [
446
+ class: vue.normalizeClass(["w-[40px] h-[48px] inline-flex flex-col items-center justify-center text-xs hover:font-bold border border-transparent rounded box-border relative", [
442
447
  citem.className,
443
448
  vue.unref(index$1.operatorDisabledHandler)(citem, {
444
449
  column,
@@ -447,12 +452,7 @@ const _sfc_main = {
447
452
  cellIndex
448
453
  }) ? "cursor-not-allowed text-[var(--hy-el-text-color-disabled)] hover:border-[rgba(var(--hy-auxiliary),1)] hover:shadow-[0px_0px_5px_0px_rgba(var(--hy-auxiliary),0.5)]" : "cursor-pointer hover:border-theme hover:shadow-[0px_0px_5px_0px_rgba(var(--hy-theme),0.5)]"
449
454
  ]]),
450
- onClick: ($event) => vue.unref(index$1.operatorClickHandler)(
451
- cindex,
452
- column,
453
- { column, row, $index, cellIndex },
454
- "default"
455
- )
455
+ onClick: ($event) => vue.unref(index$1.operatorClickHandler)(cindex, column, { column, row, $index, cellIndex }, "default")
456
456
  }, [
457
457
  vue.createVNode(vue.unref(index.HyIcon), {
458
458
  "svg-name": citem.svgName,
@@ -470,7 +470,16 @@ const _sfc_main = {
470
470
  )) : (vue.openBlock(), vue.createElementBlock("div", {
471
471
  key: 1,
472
472
  class: "mt-1 whitespace-nowrap"
473
- }, "\xA0"))
473
+ }, "\xA0")),
474
+ vue.unref(index$1.operatorIsDotHandler)(citem, {
475
+ column,
476
+ row,
477
+ $index,
478
+ cellIndex
479
+ }) ? (vue.openBlock(), vue.createElementBlock("div", {
480
+ key: 2,
481
+ class: "w-2 h-2 absolute right-0 top-0 transform translate-x-1/2 -translate-y-1/2 rounded-full bg-danger-2 z-[2]"
482
+ })) : vue.createCommentVNode("v-if", true)
474
483
  ], 10, ["onClick"])
475
484
  ]),
476
485
  _: 2
@@ -480,23 +489,14 @@ const _sfc_main = {
480
489
  128
481
490
  /* KEYED_FRAGMENT */
482
491
  )),
483
- vue.unref(index$1.operatorFilterHandler)(
484
- column,
485
- { column, row, $index, cellIndex },
486
- "more"
487
- )?.length ? (vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElDropdown), {
492
+ vue.unref(index$1.operatorFilterHandler)(column, { column, row, $index, cellIndex }, "more")?.length ? (vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElDropdown), {
488
493
  key: 0,
489
494
  ref_for: true,
490
495
  ref: "operatorDropdownRef",
491
496
  trigger: "click",
492
497
  "popper-style": "min-width: 150px",
493
- placement: "bottom",
494
- onCommand: ($event) => vue.unref(index$1.operatorClickHandler)(
495
- $event,
496
- column,
497
- { column, row, $index, cellIndex },
498
- "more"
499
- )
498
+ placement: "bottom-end",
499
+ onCommand: ($event) => vue.unref(index$1.operatorClickHandler)($event, column, { column, row, $index, cellIndex }, "more")
500
500
  }, {
501
501
  dropdown: vue.withCtx(() => [
502
502
  vue.createVNode(
@@ -523,10 +523,10 @@ const _sfc_main = {
523
523
  })
524
524
  }, {
525
525
  default: vue.withCtx(() => [
526
- vue.createElementVNode("span", null, [
526
+ vue.createElementVNode("span", { class: "relative" }, [
527
527
  vue.createElementVNode(
528
528
  "span",
529
- null,
529
+ { class: "pr-1" },
530
530
  vue.toDisplayString(citem.label),
531
531
  1
532
532
  /* TEXT */
@@ -550,7 +550,16 @@ const _sfc_main = {
550
550
  })) + "\uFF09",
551
551
  1
552
552
  /* TEXT */
553
- )) : vue.createCommentVNode("v-if", true)
553
+ )) : vue.createCommentVNode("v-if", true),
554
+ vue.unref(index$1.operatorIsDotHandler)(citem, {
555
+ column,
556
+ row,
557
+ $index,
558
+ cellIndex
559
+ }) ? (vue.openBlock(), vue.createElementBlock("div", {
560
+ key: 1,
561
+ class: "w-2 h-2 absolute right-0 top-0 transform translate-x-1/2 -translate-y-1/2 rounded-full bg-danger-2 z-[2]"
562
+ })) : vue.createCommentVNode("v-if", true)
554
563
  ])
555
564
  ]),
556
565
  _: 2
@@ -573,7 +582,7 @@ const _sfc_main = {
573
582
  vue.createVNode(vue.unref(index$2.HyTooltip), {
574
583
  "is-always": "",
575
584
  overLine: 1,
576
- content: vue.unref(t)("table.moreOperations")
585
+ content: vue.unref(useLocale.$t)("table.moreOperations")
577
586
  }, {
578
587
  default: vue.withCtx(() => [
579
588
  vue.createElementVNode("div", { class: "w-[40px] h-[48px] inline-flex flex-col items-center justify-center text-main text-xs hover:font-bold border border-transparent hover:border-theme hover:shadow-[0px_0px_5px_0px_rgba(var(--hy-theme),0.5)] rounded box-border cursor-pointer" }, [
@@ -592,7 +601,7 @@ const _sfc_main = {
592
601
  vue.createElementVNode(
593
602
  "div",
594
603
  { class: "mt-1" },
595
- vue.toDisplayString(vue.unref(t)("table.more")),
604
+ vue.toDisplayString(vue.unref(useLocale.$t)("table.more")),
596
605
  1
597
606
  /* TEXT */
598
607
  )
@@ -33,17 +33,14 @@ function tableColumnsEditableleHandler(columns, columnsEditablele) {
33
33
  });
34
34
  }
35
35
  const sortList = Array.from(sortSet.values()).reduce((a, b) => a - b);
36
- const columnsList = Object.keys(columnsEditableleObj).reduce(
37
- (columnsList2, key) => {
38
- const list = columnsEditableleObj[key];
39
- for (let i = 0; i < list.length; i++) {
40
- const target = list[i];
41
- columnsList2.push(target.column);
42
- }
43
- return columnsList2;
44
- },
45
- []
46
- );
36
+ const columnsList = Object.keys(columnsEditableleObj).reduce((columnsList2, key) => {
37
+ const list = columnsEditableleObj[key];
38
+ for (let i = 0; i < list.length; i++) {
39
+ const target = list[i];
40
+ columnsList2.push(target.column);
41
+ }
42
+ return columnsList2;
43
+ }, []);
47
44
  return {
48
45
  columnsList,
49
46
  columnsEditablele
@@ -88,33 +85,28 @@ function operatorShowHandler(operator, scope) {
88
85
  if (is.isFunction(show)) return show(scope);
89
86
  return true;
90
87
  }
91
- function operatorDisabledHandler(column, scope) {
92
- const { disabled } = column;
88
+ function operatorDisabledHandler(operator, scope) {
89
+ const { disabled } = operator;
93
90
  if (is.isBoolean(disabled)) return disabled;
94
91
  if (is.isFunction(disabled)) return disabled(scope);
95
92
  return false;
96
93
  }
97
- function operatorDisableTextdHandler(column, scope) {
98
- const { t } = useLocale.useLocale();
99
- const { disabledText } = column;
94
+ function operatorDisableTextdHandler(operator, scope) {
95
+ const { disabledText } = operator;
100
96
  if (is.isString(disabledText)) return disabledText;
101
97
  if (is.isFunction(disabledText)) return disabledText(scope);
102
- return t("table.nonsupport");
98
+ return useLocale.$t("table.nonsupport");
103
99
  }
104
100
  function operatorFilterHandler(column, scope, type = "all") {
105
101
  let { width } = column;
106
102
  width = is.isString(width) ? Number(width.replace(/[a-zA-Z]+/g, "")) : width;
107
- const operator = (column.operator || []).filter(
108
- (item) => operatorShowHandler(item, scope)
109
- );
103
+ const operator = (column.operator || []).filter((item) => operatorShowHandler(item, scope));
110
104
  if (type === "all" || operator.length <= 1 && type === "default") {
111
105
  return operator;
112
106
  }
113
107
  const btnWidth = 40;
114
108
  const gapWidth = 12;
115
- const operatorCount = Math.floor(
116
- (width - 12 * 2 - btnWidth) / (btnWidth + gapWidth) + 1
117
- );
109
+ const operatorCount = Math.floor((width - 12 * 2 - btnWidth) / (btnWidth + gapWidth) + 1);
118
110
  if (operatorCount === operator.length) {
119
111
  return type === "default" ? operator : [];
120
112
  }
@@ -130,6 +122,12 @@ function operatorClickHandler(command, column, scope, type = "all") {
130
122
  if (operatorDisabledHandler(target, scope)) return;
131
123
  target?.handler && target.handler(scope);
132
124
  }
125
+ function operatorIsDotHandler(operator, scope) {
126
+ const { isDot } = operator;
127
+ if (is.isFunction(isDot)) return isDot(scope);
128
+ if (is.isBoolean(isDot)) return isDot;
129
+ return false;
130
+ }
133
131
  function renderHeaderHandler(column, scope) {
134
132
  if (!column) return;
135
133
  if (is.isFunction(column.renderHeader)) {
@@ -146,15 +144,7 @@ function renderContentHandler(column, scope) {
146
144
  return row[column.prop];
147
145
  }
148
146
  const useAppTableWrapper = (hy) => {
149
- const {
150
- props,
151
- emits,
152
- containerRef,
153
- tableRef,
154
- tableDropdownRef,
155
- operatorDropdownRef
156
- } = hy;
157
- const { t } = useLocale.useLocale();
147
+ const { props, emits, containerRef, tableRef, tableDropdownRef, operatorDropdownRef } = hy;
158
148
  const CACHE_COLUMNS_KEY = props.controller || props.url || "CACHE_COLUMNS_KEY";
159
149
  const tableDataSource = vue.ref([]);
160
150
  const tableColumns = vue.ref([]);
@@ -163,15 +153,12 @@ const useAppTableWrapper = (hy) => {
163
153
  return tableColumns.value.filter((column) => tableColumnShowHandler(column));
164
154
  });
165
155
  const searchPlaceholder = vue.computed(() => {
166
- const searchLabelSet = tableColumnsList.value.reduce(
167
- (searchLabelSet2, column) => {
168
- if (column.isSearch) {
169
- searchLabelSet2.add(column.label);
170
- }
171
- return searchLabelSet2;
172
- },
173
- /* @__PURE__ */ new Set()
174
- );
156
+ const searchLabelSet = tableColumnsList.value.reduce((searchLabelSet2, column) => {
157
+ if (column.isSearch) {
158
+ searchLabelSet2.add(column.label);
159
+ }
160
+ return searchLabelSet2;
161
+ }, /* @__PURE__ */ new Set());
175
162
  if (props.searchArr?.length > 0) {
176
163
  props.searchArr.forEach((item) => {
177
164
  searchLabelSet.add(item.label);
@@ -186,10 +173,7 @@ const useAppTableWrapper = (hy) => {
186
173
  return row.id;
187
174
  }
188
175
  function onTableColumnsSelectHandler(value) {
189
- const { columnsList, searchText } = tableColumnsEditableleHandler(
190
- props.tableColumns,
191
- value
192
- );
176
+ const { columnsList, searchText } = tableColumnsEditableleHandler(props.tableColumns, value);
193
177
  tableColumns.value = columnsList;
194
178
  tableColumnsEditablele.value = value;
195
179
  sessionStorage.setItem(CACHE_COLUMNS_KEY, JSON.stringify(value));
@@ -248,9 +232,7 @@ const useAppTableWrapper = (hy) => {
248
232
  x: clientX,
249
233
  y: clientY
250
234
  });
251
- const column = tableColumns.value.find(
252
- (column2) => column2.type === "operator"
253
- );
235
+ const column = tableColumns.value.find((column2) => column2.type === "operator");
254
236
  const operator = operatorFilterHandler(column, { row });
255
237
  if (!operator?.length) return;
256
238
  tableTriggerRef.value.column = column;
@@ -274,15 +256,16 @@ const useAppTableWrapper = (hy) => {
274
256
  if (props.type === "default") {
275
257
  return tableColumnsList.value.some((column) => column.type === "expand");
276
258
  } else if (props.type === "virtual") {
277
- return tableColumnsList.value.some(
278
- (column) => column.type === "expand" && column.expandType === "expand"
279
- );
259
+ return tableColumnsList.value.some((column) => column.type === "expand" && column.expandType === "expand");
280
260
  }
281
261
  return false;
282
262
  });
283
263
  const isAccordionMode = vue.computed(() => {
284
264
  return isExpandTable.value && props.expandMode === "accordion";
285
265
  });
266
+ function getRowExpansion() {
267
+ return expandRowKeys.value;
268
+ }
286
269
  function setRowExpansion(list = []) {
287
270
  const keys = (list || []).map((item) => {
288
271
  return is.isString(item) || is.isNumber(item) ? item : getRowKey(item);
@@ -290,7 +273,7 @@ const useAppTableWrapper = (hy) => {
290
273
  expandRowKeys.value = isAccordionMode.value ? [keys[0]] : keys;
291
274
  }
292
275
  function toggleRowExpansion(row, expanded) {
293
- const key = is.isString(row) || is.isNumber(row) ? row : getRowKey(row);
276
+ const key = is.isString(row) || is.isNumber(row) || is.isSymbol(row) ? row : getRowKey(row);
294
277
  const index = expandRowKeyMap.value.get(key);
295
278
  const isExpanded = is.isBoolean(expanded) ? expanded : !is.isNumber(index);
296
279
  if (isAccordionMode.value) {
@@ -306,7 +289,8 @@ const useAppTableWrapper = (hy) => {
306
289
  expandRowKeys.value.splice(index, 1);
307
290
  }
308
291
  }
309
- emits("expand-change", row, isExpanded);
292
+ const data = tableDataSource.value.find((v) => getRowKey(v) === key);
293
+ emits("expand-change", data, isExpanded);
310
294
  }
311
295
  function onTableRowExpandChangeHandler(row, expandedRows) {
312
296
  if (props.type === "virtual") {
@@ -389,9 +373,7 @@ const useAppTableWrapper = (hy) => {
389
373
  selectedList.value = list || [];
390
374
  clearSelection();
391
375
  list.forEach((row) => {
392
- const item = tableDataSource.value.find(
393
- (v) => getRowKey(row) === getRowKey(v)
394
- );
376
+ const item = tableDataSource.value.find((v) => getRowKey(row) === getRowKey(v));
395
377
  if (item) {
396
378
  tableRef.value.toggleRowSelection(item, true);
397
379
  } else {
@@ -410,11 +392,28 @@ const useAppTableWrapper = (hy) => {
410
392
  }
411
393
  return className.filter(Boolean).join(" ");
412
394
  }
395
+ function scrollToTop(top) {
396
+ if (!is.isNumber(top) || isNaN(top)) return;
397
+ if (props.type === "virtual") {
398
+ tableRef.value.scrollToTop(top);
399
+ } else {
400
+ tableRef.value.setScrollTop(top);
401
+ }
402
+ }
403
+ function scrollToLeft(left) {
404
+ if (!is.isNumber(left) || isNaN(left)) return;
405
+ if (props.type === "virtual") {
406
+ tableRef.value.scrollToLeft(left);
407
+ } else {
408
+ tableRef.value.setScrollLeft(left);
409
+ }
410
+ }
411
+ function onScrollHandler(params) {
412
+ emits("scroll", params);
413
+ }
414
+ window.scrollToTop = scrollToTop;
413
415
  vue.watchEffect(() => {
414
- const { columnsList, columnsEditablele, searchText } = tableColumnHandler(
415
- props.tableColumns,
416
- CACHE_COLUMNS_KEY
417
- );
416
+ const { columnsList, columnsEditablele, searchText } = tableColumnHandler(props.tableColumns, CACHE_COLUMNS_KEY);
418
417
  tableColumns.value = columnsList;
419
418
  tableColumnsEditablele.value = columnsEditablele;
420
419
  });
@@ -436,6 +435,7 @@ const useAppTableWrapper = (hy) => {
436
435
  clearSelectedList,
437
436
  expandRowKeys,
438
437
  expandRowKeyMap,
438
+ getRowExpansion,
439
439
  setRowExpansion,
440
440
  toggleRowExpansion,
441
441
  onTableRowExpandChangeHandler,
@@ -444,7 +444,10 @@ const useAppTableWrapper = (hy) => {
444
444
  onTableRowClickHandler,
445
445
  onTableColumnsSelectHandler,
446
446
  showAppTableLoading,
447
- closeAppTableLoading
447
+ closeAppTableLoading,
448
+ scrollToTop,
449
+ scrollToLeft,
450
+ onScrollHandler
448
451
  };
449
452
  };
450
453
 
@@ -452,6 +455,7 @@ exports.operatorClickHandler = operatorClickHandler;
452
455
  exports.operatorDisableTextdHandler = operatorDisableTextdHandler;
453
456
  exports.operatorDisabledHandler = operatorDisabledHandler;
454
457
  exports.operatorFilterHandler = operatorFilterHandler;
458
+ exports.operatorIsDotHandler = operatorIsDotHandler;
455
459
  exports.renderContentHandler = renderContentHandler;
456
460
  exports.renderHeaderHandler = renderHeaderHandler;
457
461
  exports.tableColumnHandler = tableColumnHandler;
@@ -103,6 +103,26 @@ function useAppTableSearch(hy) {
103
103
  const isReset = !(is.isEmpty(oldQueryValue) && is.isEmpty(props.filterModel.query) || oldQueryValue === props.filterModel.query);
104
104
  getData(isReset ? 1 : null);
105
105
  }
106
+ async function getOptions() {
107
+ if (appSearchRef.value) {
108
+ await appSearchRef.value.getOptions();
109
+ }
110
+ }
111
+ async function getOptionsFields(keys) {
112
+ if (appSearchRef.value) {
113
+ await appSearchRef.value.getOptionsFields(keys);
114
+ }
115
+ }
116
+ async function getOptionsError() {
117
+ if (appSearchRef.value) {
118
+ await appSearchRef.value.getOptionsError();
119
+ }
120
+ }
121
+ function getOptionsByField() {
122
+ if (appSearchRef.value) {
123
+ return appSearchRef.value.getOptionsByField();
124
+ }
125
+ }
106
126
  return {
107
127
  totalElements,
108
128
  showFilter,
@@ -115,7 +135,11 @@ function useAppTableSearch(hy) {
115
135
  getTableDataSource,
116
136
  onSizeChangeHandler,
117
137
  onCurrentChangeHandler,
118
- onSearchQueryHandler
138
+ onSearchQueryHandler,
139
+ getOptions,
140
+ getOptionsFields,
141
+ getOptionsError,
142
+ getOptionsByField
119
143
  };
120
144
  }
121
145
 
@@ -9,7 +9,6 @@ var is = require('../../../utils/is.js');
9
9
  var useAppSearch = require('../../hySearch/js/useAppSearch.js');
10
10
 
11
11
  function getColumnDefaultConfig(column) {
12
- const { t } = useLocale.useLocale();
13
12
  switch (column.type) {
14
13
  case "selection":
15
14
  return {
@@ -19,7 +18,7 @@ function getColumnDefaultConfig(column) {
19
18
  case "index":
20
19
  return {
21
20
  prop: `${column.type}_prop`,
22
- label: t("table.index")
21
+ label: useLocale.$t("table.index")
23
22
  };
24
23
  case "expand":
25
24
  return {
@@ -27,7 +26,7 @@ function getColumnDefaultConfig(column) {
27
26
  };
28
27
  case "operator":
29
28
  return {
30
- label: t("table.operator"),
29
+ label: useLocale.$t("table.operation"),
31
30
  prop: `operator_prop`,
32
31
  fixed: "right"
33
32
  };
@@ -69,3 +69,11 @@
69
69
  }
70
70
  }
71
71
  }
72
+
73
+ .hy-el-table--default .hy-el-table__cell {
74
+ padding: 0px 0px !important;
75
+ }
76
+ .hy-table .hy-el-table .hy-el-table__cell .cell {
77
+ padding: 8px 12px !important;
78
+ box-sizing: border-box;
79
+ }