hy-dispatch-ui-v3 0.2.67 → 0.2.69
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.
- package/dist/tailwind.css +232 -20
- package/es/api/device.mjs +2 -3
- package/es/api/exportExcel.mjs +57 -0
- package/es/api/index.mjs +27 -16
- package/es/api/mapRail.mjs +31 -0
- package/es/api/organization.mjs +17 -9
- package/es/api/rule.mjs +30 -0
- package/es/api/sypct.mjs +2 -3
- package/es/api/task.mjs +2 -3
- package/es/bussiness/hyAddDepartmentType/addDepartmentType.vue.mjs +18 -19
- package/es/bussiness/hyAddDepartmentType/style/addDepartmentType.scss +28 -28
- package/es/bussiness/hyElectronicFence/cpns/addElectronicFenceDialog/addElectronicFenceDialog.vue.mjs +511 -0
- package/es/bussiness/hyElectronicFence/cpns/batchSetElectronicFenceUserDialog/batchSetElectronicFenceUserDialog.vue.mjs +178 -0
- package/es/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersDialog.vue.mjs +316 -0
- package/es/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersItem.vue.mjs +119 -0
- package/es/bussiness/hyElectronicFence/electronicFence.vue.mjs +358 -0
- package/es/bussiness/hyElectronicFence/index.mjs +13 -0
- package/es/bussiness/hyElectronicFence/style/electronicFence.scss +0 -0
- package/es/bussiness/hyElectronicFence/style/electronicFenceAssociatedUsersDialog.scss +25 -0
- package/es/bussiness/hyMapAearchPlace/js/index.mjs +1 -1
- package/es/bussiness/hyMapAearchPlace/mapAearchPlace.vue.mjs +4 -6
- package/es/bussiness/hyMapAearchPlace/style/mapAearchPlace.scss +4 -3
- package/es/bussiness/hyRuleSetting/cpns/gatheringPeople/gatheringPeople.vue.mjs +270 -0
- package/es/bussiness/hyRuleSetting/cpns/missionInRule/missionInRule.vue.mjs +251 -0
- package/es/bussiness/hyRuleSetting/cpns/missionOutRule/missionOutRule.vue.mjs +251 -0
- package/es/bussiness/hyRuleSetting/cpns/ruleAssignDialog/ruleAssignDialog.vue.mjs +395 -0
- package/es/bussiness/hyRuleSetting/cpns/ruleFenceDialog/ruleFenceDialog.vue.mjs +651 -0
- package/es/bussiness/hyRuleSetting/cpns/ruleSettingDialog/ruleSettingDialog.vue.mjs +357 -0
- package/es/bussiness/hyRuleSetting/cpns/sedentary/sedentary.vue.mjs +261 -0
- package/es/bussiness/hyRuleSetting/cpns/setRuleAggregationAlarmDialog/setRuleAggregationAlarmDialog.vue.mjs +360 -0
- package/es/bussiness/hyRuleSetting/cpns/timedVideo/timedVideo.vue.mjs +240 -0
- package/es/bussiness/hyRuleSetting/cpns/timerCamera/timerCamera.vue.mjs +258 -0
- package/es/bussiness/hyRuleSetting/cpns/timingReturn/timingReturn.vue.mjs +240 -0
- package/es/bussiness/hyRuleSetting/index.mjs +15 -0
- package/es/bussiness/hyRuleSetting/js/ruleSetting.mjs +65 -0
- package/es/bussiness/hyRuleSetting/ruleSetting.vue.mjs +129 -0
- package/es/bussiness/hyRuleSetting/style/ruleSetting.scss +0 -0
- package/es/bussiness/index.mjs +2 -0
- package/es/components/hyAudioPlayer/audioPlayer.vue.mjs +5 -13
- package/es/components/hyAudioPlayer/js/index.mjs +9 -14
- package/es/components/hyAudioPlayer/style/audioPlayer.scss +7 -2
- package/es/components/hyButton/button.vue.mjs +2 -2
- package/es/components/hyButton/style/button.scss +48 -74
- package/es/components/hyCheckboxGroup/checkboxGroup.vue.mjs +119 -0
- package/es/components/hyCheckboxGroup/index.mjs +7 -0
- package/es/components/hyCheckboxGroup/style/checkboxGroup.scss +58 -0
- package/es/components/hyConfigProvider/configProvider.vue.mjs +51 -38
- package/es/components/hyConfirmDialog/confirmDialog.vue.mjs +57 -62
- package/es/components/hyConfirmDialog/confirmMethod.mjs +24 -22
- package/es/components/hyCutter/cutter.vue.mjs +9 -23
- package/es/components/hyDatePicker/datePicker.vue.mjs +12 -17
- package/es/components/hyDialog/dialog.vue.mjs +5 -9
- package/es/components/hyDialog/style/dialog.scss +12 -13
- package/es/components/hyDrawer/drawer.vue.mjs +100 -0
- package/es/components/hyDrawer/index.mjs +7 -0
- package/es/components/hyDrawer/style/drawer.scss +0 -0
- package/es/components/hyForm/cpns/arrayItem.vue.mjs +10 -28
- package/es/components/hyForm/cpns/arrayItem2.vue.mjs +198 -0
- package/es/components/hyForm/cpns/extraItem.vue.mjs +2 -3
- package/es/components/hyForm/cpns/formItem.vue.mjs +75 -37
- package/es/components/hyForm/cpns/locationSelect.vue.mjs +26 -26
- package/es/components/hyForm/form.vue.mjs +58 -24
- package/es/components/hyForm/js/index.mjs +4 -8
- package/es/components/hyForm/js/useAppForm.mjs +5 -9
- package/es/components/hyForm/style/form.scss +4 -13
- package/es/components/hyIcon/icon.vue.mjs +3 -3
- package/es/components/hyIconBox/style/iconBox.scss +2 -6
- package/es/components/hyInput/inputSearch.vue.mjs +8 -11
- package/es/components/hyInput/style/inputSearch.scss +3 -0
- package/es/components/hyLoading/index.mjs +3 -5
- package/es/components/hyMap/js/index.mjs +29 -4
- package/es/components/hyMap/map.vue.mjs +17 -3
- package/es/components/hyMenu/style/menu.scss +5 -15
- package/es/components/hyNoPermissions/noPermissions.vue.mjs +3 -4
- package/es/components/hyNoPermissionsMap/noPermissionsMap.vue.mjs +3 -6
- package/es/components/hyOrgCascader/js/index.mjs +1 -5
- package/es/components/hyOrgCascader/orgCascader.vue.mjs +25 -11
- package/es/components/hyOrgCascader/style/orgCascader.scss +7 -0
- package/es/components/hyRadioGroup/radioGroup.vue.mjs +48 -41
- package/es/components/hyRadioGroup/style/radioGroup.scss +9 -0
- package/es/components/hySearch/cpns/searchItem.vue.mjs +33 -20
- package/es/components/hySearch/js/index.mjs +1 -4
- package/es/components/hySearch/js/useAppSearch.mjs +6 -10
- package/es/components/hySearch/search.vue.mjs +9 -16
- package/es/components/hySearch/style/search.scss +2 -0
- package/es/components/hyStatus/index.mjs +7 -0
- package/es/components/hyStatus/status.vue.mjs +110 -0
- package/es/components/hyStatus/style/status.scss +0 -0
- package/es/components/hyTable/cpns/columnSelect.vue.mjs +24 -28
- package/es/components/hyTable/cpns/columnSelectItem.vue.mjs +8 -9
- package/es/components/hyTable/cpns/headerItem.vue.mjs +2 -2
- package/es/components/hyTable/cpns/virtualTable.vue.mjs +18 -28
- package/es/components/hyTable/js/index.mjs +56 -59
- package/es/components/hyTable/js/useAppTable.mjs +3 -4
- package/es/components/hyTable/style/table.scss +8 -0
- package/es/components/hyTable/table.vue.mjs +35 -41
- package/es/components/hyTableActionButton/tableActionButton.vue.mjs +4 -4
- package/es/components/hyTableForm/batchTableForm.vue.mjs +3 -7
- package/es/components/hyTableForm/js/index.mjs +3 -11
- package/es/components/hyTableForm/js/useAppTableForm.mjs +2 -7
- package/es/components/hyTableForm/style/batchTableForm.scss +26 -54
- package/es/components/hyTableForm/style/tableForm.scss +3 -2
- package/es/components/hyTableForm/tableForm.vue.mjs +90 -46
- package/es/components/hyTimePicker/timePicker.vue.mjs +4 -5
- package/es/components/hyTree/js/index.mjs +13 -40
- package/es/components/hyTree/style/index.css +1 -1
- package/es/components/hyTree/tree.vue.mjs +17 -16
- package/es/components/hyUserAvatar/userAvatar.vue.mjs +3 -6
- package/es/components/hyVideoPlayer/js/index.mjs +14 -23
- package/es/components/hyVideoPlayer/style/videoPlayer.scss +5 -7
- package/es/components/hyVideoPlayer/videoPlayer.vue.mjs +16 -26
- package/es/components/index.mjs +3 -0
- package/es/hooks/index.mjs +6 -2
- package/es/hooks/useAudioPlayerConfig.mjs +1 -3
- package/es/hooks/useBaseMainStore.mjs +29 -0
- package/es/hooks/useCurrentBus.mjs +20 -0
- package/es/hooks/useDialog.mjs +327 -0
- package/es/hooks/useExportFile.mjs +133 -0
- package/es/hooks/useGlobalConfig.mjs +10 -6
- package/es/hooks/useLocale.mjs +22 -12
- package/es/hooks/usePermissionMap.mjs +1 -3
- package/es/hooks/useResizeHandler.mjs +1 -4
- package/es/hooks/useResizeObserver.mjs +3 -1
- package/es/hooks/useSubscribe.mjs +2 -2
- package/es/hooks/useUserAvatarMap.mjs +1 -3
- package/es/hooks/useVideoPlayerConfig.mjs +1 -3
- package/es/index.mjs +11 -2
- package/es/locale/{en.mjs → en_US.mjs} +81 -5
- package/es/locale/index.mjs +2 -2
- package/es/locale/zh_CN.mjs +81 -3
- package/es/style/tailwind.scss +7 -3
- package/es/utils/adaptive.mjs +1 -3
- package/es/utils/form.mjs +19 -12
- package/es/utils/handler.mjs +4 -8
- package/es/utils/input.mjs +8 -9
- package/es/utils/map/hook/bigMap.mjs +14 -53
- package/es/utils/map/hook/gaode.mjs +5 -20
- package/es/utils/map/hook/leafletjs.mjs +23 -79
- package/es/utils/map/index.mjs +2 -8
- package/es/utils/map/js/webgis.mjs +12 -12
- package/es/version.mjs +1 -1
- package/lib/api/device.js +2 -3
- package/lib/api/exportExcel.js +62 -0
- package/lib/api/index.js +27 -16
- package/lib/api/mapRail.js +34 -0
- package/lib/api/organization.js +17 -8
- package/lib/api/rule.js +33 -0
- package/lib/api/sypct.js +2 -3
- package/lib/api/task.js +2 -3
- package/lib/bussiness/hyAddDepartmentType/addDepartmentType.vue.js +17 -18
- package/lib/bussiness/hyAddDepartmentType/style/addDepartmentType.scss +28 -28
- package/lib/bussiness/hyElectronicFence/cpns/addElectronicFenceDialog/addElectronicFenceDialog.vue.js +515 -0
- package/lib/bussiness/hyElectronicFence/cpns/batchSetElectronicFenceUserDialog/batchSetElectronicFenceUserDialog.vue.js +182 -0
- package/lib/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersDialog.vue.js +320 -0
- package/lib/bussiness/hyElectronicFence/cpns/electronicFenceAssociatedUsersDialog/electronicFenceAssociatedUsersItem.vue.js +123 -0
- package/lib/bussiness/hyElectronicFence/electronicFence.vue.js +362 -0
- package/lib/bussiness/hyElectronicFence/index.js +21 -0
- package/lib/bussiness/hyElectronicFence/style/electronicFence.scss +0 -0
- package/lib/bussiness/hyElectronicFence/style/electronicFenceAssociatedUsersDialog.scss +25 -0
- package/lib/bussiness/hyMapAearchPlace/js/index.js +1 -1
- package/lib/bussiness/hyMapAearchPlace/mapAearchPlace.vue.js +4 -6
- package/lib/bussiness/hyMapAearchPlace/style/mapAearchPlace.scss +4 -3
- package/lib/bussiness/hyRuleSetting/cpns/gatheringPeople/gatheringPeople.vue.js +274 -0
- package/lib/bussiness/hyRuleSetting/cpns/missionInRule/missionInRule.vue.js +255 -0
- package/lib/bussiness/hyRuleSetting/cpns/missionOutRule/missionOutRule.vue.js +255 -0
- package/lib/bussiness/hyRuleSetting/cpns/ruleAssignDialog/ruleAssignDialog.vue.js +399 -0
- package/lib/bussiness/hyRuleSetting/cpns/ruleFenceDialog/ruleFenceDialog.vue.js +655 -0
- package/lib/bussiness/hyRuleSetting/cpns/ruleSettingDialog/ruleSettingDialog.vue.js +361 -0
- package/lib/bussiness/hyRuleSetting/cpns/sedentary/sedentary.vue.js +265 -0
- package/lib/bussiness/hyRuleSetting/cpns/setRuleAggregationAlarmDialog/setRuleAggregationAlarmDialog.vue.js +364 -0
- package/lib/bussiness/hyRuleSetting/cpns/timedVideo/timedVideo.vue.js +244 -0
- package/lib/bussiness/hyRuleSetting/cpns/timerCamera/timerCamera.vue.js +262 -0
- package/lib/bussiness/hyRuleSetting/cpns/timingReturn/timingReturn.vue.js +244 -0
- package/lib/bussiness/hyRuleSetting/index.js +24 -0
- package/lib/bussiness/hyRuleSetting/js/ruleSetting.js +68 -0
- package/lib/bussiness/hyRuleSetting/ruleSetting.vue.js +133 -0
- package/lib/bussiness/hyRuleSetting/style/ruleSetting.scss +0 -0
- package/lib/bussiness/index.js +21 -10
- package/lib/components/hyAudioPlayer/audioPlayer.vue.js +5 -13
- package/lib/components/hyAudioPlayer/js/index.js +9 -14
- package/lib/components/hyAudioPlayer/style/audioPlayer.scss +7 -2
- package/lib/components/hyButton/button.vue.js +2 -2
- package/lib/components/hyButton/style/button.scss +48 -74
- package/lib/components/hyCheckboxGroup/checkboxGroup.vue.js +123 -0
- package/lib/components/hyCheckboxGroup/index.js +12 -0
- package/lib/components/hyCheckboxGroup/style/checkboxGroup.scss +58 -0
- package/lib/components/hyConfigProvider/configProvider.vue.js +50 -56
- package/lib/components/hyConfirmDialog/confirmDialog.vue.js +56 -61
- package/lib/components/hyConfirmDialog/confirmMethod.js +23 -21
- package/lib/components/hyCutter/cutter.vue.js +8 -22
- package/lib/components/hyDatePicker/datePicker.vue.js +11 -16
- package/lib/components/hyDialog/dialog.vue.js +5 -9
- package/lib/components/hyDialog/style/dialog.scss +12 -13
- package/lib/components/hyDrawer/drawer.vue.js +104 -0
- package/lib/components/hyDrawer/index.js +12 -0
- package/lib/components/hyDrawer/style/drawer.scss +0 -0
- package/lib/components/hyForm/cpns/arrayItem.vue.js +9 -27
- package/lib/components/hyForm/cpns/arrayItem2.vue.js +202 -0
- package/lib/components/hyForm/cpns/extraItem.vue.js +2 -3
- package/lib/components/hyForm/cpns/formItem.vue.js +76 -38
- package/lib/components/hyForm/cpns/locationSelect.vue.js +26 -26
- package/lib/components/hyForm/form.vue.js +53 -19
- package/lib/components/hyForm/js/index.js +3 -7
- package/lib/components/hyForm/js/useAppForm.js +5 -9
- package/lib/components/hyForm/style/form.scss +4 -13
- package/lib/components/hyIcon/icon.vue.js +3 -3
- package/lib/components/hyIconBox/style/iconBox.scss +2 -6
- package/lib/components/hyInput/inputSearch.vue.js +7 -10
- package/lib/components/hyInput/style/inputSearch.scss +3 -0
- package/lib/components/hyLoading/index.js +2 -4
- package/lib/components/hyMap/js/index.js +29 -4
- package/lib/components/hyMap/map.vue.js +17 -3
- package/lib/components/hyMenu/style/menu.scss +5 -15
- package/lib/components/hyNoPermissions/noPermissions.vue.js +3 -4
- package/lib/components/hyNoPermissionsMap/noPermissionsMap.vue.js +3 -6
- package/lib/components/hyOrgCascader/js/index.js +1 -5
- package/lib/components/hyOrgCascader/orgCascader.vue.js +23 -9
- package/lib/components/hyOrgCascader/style/orgCascader.scss +7 -0
- package/lib/components/hyRadioGroup/radioGroup.vue.js +47 -40
- package/lib/components/hyRadioGroup/style/radioGroup.scss +9 -0
- package/lib/components/hySearch/cpns/searchItem.vue.js +33 -20
- package/lib/components/hySearch/js/index.js +1 -4
- package/lib/components/hySearch/js/useAppSearch.js +6 -10
- package/lib/components/hySearch/search.vue.js +9 -16
- package/lib/components/hySearch/style/search.scss +2 -0
- package/lib/components/hyStatus/index.js +12 -0
- package/lib/components/hyStatus/status.vue.js +114 -0
- package/lib/components/hyStatus/style/status.scss +0 -0
- package/lib/components/hyTable/cpns/columnSelect.vue.js +22 -26
- package/lib/components/hyTable/cpns/columnSelectItem.vue.js +7 -8
- package/lib/components/hyTable/cpns/headerItem.vue.js +2 -2
- package/lib/components/hyTable/cpns/virtualTable.vue.js +17 -27
- package/lib/components/hyTable/js/index.js +54 -57
- package/lib/components/hyTable/js/useAppTable.js +2 -3
- package/lib/components/hyTable/style/table.scss +8 -0
- package/lib/components/hyTable/table.vue.js +35 -41
- package/lib/components/hyTableActionButton/tableActionButton.vue.js +4 -4
- package/lib/components/hyTableForm/batchTableForm.vue.js +3 -7
- package/lib/components/hyTableForm/js/index.js +3 -11
- package/lib/components/hyTableForm/js/useAppTableForm.js +2 -7
- package/lib/components/hyTableForm/style/batchTableForm.scss +26 -54
- package/lib/components/hyTableForm/style/tableForm.scss +3 -2
- package/lib/components/hyTableForm/tableForm.vue.js +89 -45
- package/lib/components/hyTimePicker/timePicker.vue.js +3 -4
- package/lib/components/hyTree/js/index.js +13 -40
- package/lib/components/hyTree/style/index.css +1 -1
- package/lib/components/hyTree/tree.vue.js +17 -16
- package/lib/components/hyUserAvatar/userAvatar.vue.js +3 -6
- package/lib/components/hyVideoPlayer/js/index.js +14 -23
- package/lib/components/hyVideoPlayer/style/videoPlayer.scss +5 -7
- package/lib/components/hyVideoPlayer/videoPlayer.vue.js +16 -26
- package/lib/components/index.js +46 -40
- package/lib/hooks/index.js +17 -0
- package/lib/hooks/useAudioPlayerConfig.js +1 -3
- package/lib/hooks/useBaseMainStore.js +32 -0
- package/lib/hooks/useCurrentBus.js +23 -0
- package/lib/hooks/useDialog.js +331 -0
- package/lib/hooks/useExportFile.js +135 -0
- package/lib/hooks/useGlobalConfig.js +10 -6
- package/lib/hooks/useLocale.js +25 -11
- package/lib/hooks/usePermissionMap.js +1 -3
- package/lib/hooks/useResizeHandler.js +1 -4
- package/lib/hooks/useResizeObserver.js +3 -1
- package/lib/hooks/useSubscribe.js +2 -1
- package/lib/hooks/useUserAvatarMap.js +1 -3
- package/lib/hooks/useVideoPlayerConfig.js +1 -3
- package/lib/index.js +107 -73
- package/lib/locale/{en.js → en_US.js} +81 -5
- package/lib/locale/index.js +3 -3
- package/lib/locale/zh_CN.js +81 -3
- package/lib/style/tailwind.scss +7 -3
- package/lib/utils/adaptive.js +1 -3
- package/lib/utils/form.js +17 -10
- package/lib/utils/handler.js +3 -7
- package/lib/utils/input.js +7 -8
- package/lib/utils/map/hook/bigMap.js +14 -53
- package/lib/utils/map/hook/gaode.js +5 -20
- package/lib/utils/map/hook/leafletjs.js +23 -79
- package/lib/utils/map/index.js +2 -8
- package/lib/utils/map/js/webgis.js +12 -12
- package/lib/version.js +1 -1
- package/package.json +3 -2
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
height: 340px;
|
|
8
8
|
position: relative;
|
|
9
9
|
border-radius: 8px;
|
|
10
|
-
border: 1px dashed rgba(var(--hy-auxiliary));
|
|
11
10
|
box-sizing: border-box;
|
|
12
11
|
&:hover {
|
|
13
12
|
border-color: rgba(var(--hy-theme));
|
|
@@ -29,34 +28,22 @@
|
|
|
29
28
|
height: 200%;
|
|
30
29
|
/* 绘制网格线:使用青色,透明度调低,让它融合在 #14273a 背景里 */
|
|
31
30
|
background-image:
|
|
32
|
-
/* 纵向线 */
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
),
|
|
37
|
-
/* 横向线 */
|
|
38
|
-
linear-gradient(rgba(0, 229, 255, 0.1) 1px, transparent 1px);
|
|
39
|
-
|
|
31
|
+
/* 纵向线 */
|
|
32
|
+
linear-gradient(90deg, rgba(0, 229, 255, 0.1) 1px, transparent 1px),
|
|
33
|
+
/* 横向线 */ linear-gradient(rgba(0, 229, 255, 0.1) 1px, transparent 1px);
|
|
34
|
+
|
|
40
35
|
/* 网格尺寸 40px */
|
|
41
36
|
background-size: 40px 40px;
|
|
42
|
-
|
|
37
|
+
|
|
43
38
|
/* 3D 倒伏效果 */
|
|
44
39
|
transform: rotateX(60deg);
|
|
45
|
-
|
|
40
|
+
|
|
46
41
|
/* 动效:无限流动 */
|
|
47
42
|
animation: grid-flow 20s linear infinite;
|
|
48
|
-
|
|
43
|
+
|
|
49
44
|
/* 遮罩:四周渐隐,让网格不那么生硬 */
|
|
50
|
-
mask-image: radial-gradient(
|
|
51
|
-
|
|
52
|
-
black 10%,
|
|
53
|
-
transparent 80%
|
|
54
|
-
);
|
|
55
|
-
-webkit-mask-image: radial-gradient(
|
|
56
|
-
circle at 50% 50%,
|
|
57
|
-
black 10%,
|
|
58
|
-
transparent 80%
|
|
59
|
-
);
|
|
45
|
+
mask-image: radial-gradient(circle at 50% 50%, black 10%, transparent 80%);
|
|
46
|
+
-webkit-mask-image: radial-gradient(circle at 50% 50%, black 10%, transparent 80%);
|
|
60
47
|
}
|
|
61
48
|
&::after {
|
|
62
49
|
display: block;
|
|
@@ -66,14 +53,10 @@
|
|
|
66
53
|
left: 0;
|
|
67
54
|
width: 100%;
|
|
68
55
|
height: 100%;
|
|
69
|
-
background: radial-gradient(
|
|
70
|
-
circle at 50% 50%,
|
|
71
|
-
rgba(0, 229, 255, 0.05) 0%,
|
|
72
|
-
transparent 70%
|
|
73
|
-
);
|
|
56
|
+
background: radial-gradient(circle at 50% 50%, rgba(0, 229, 255, 0.05) 0%, transparent 70%);
|
|
74
57
|
}
|
|
75
58
|
}
|
|
76
|
-
|
|
59
|
+
|
|
77
60
|
.hy-el-upload {
|
|
78
61
|
width: 100%;
|
|
79
62
|
height: 100%;
|
|
@@ -84,17 +67,21 @@
|
|
|
84
67
|
flex-direction: column;
|
|
85
68
|
align-items: center;
|
|
86
69
|
justify-content: center;
|
|
87
|
-
border:
|
|
70
|
+
border: 1px dashed rgba(var(--hy-auxiliary));
|
|
88
71
|
&:hover {
|
|
89
|
-
border-color: var(--theme);
|
|
90
72
|
.type-icon-box {
|
|
91
73
|
transform: translateY(-10px);
|
|
92
74
|
}
|
|
93
75
|
}
|
|
76
|
+
&.is-dragover {
|
|
77
|
+
border: 1px solid rgba(var(--hy-theme)) !important;
|
|
78
|
+
box-shadow: 0px 0px 6px 0px rgba(var(--hy-theme));
|
|
79
|
+
background-color: var(--hy-el-fill-color-blank) !important;
|
|
80
|
+
}
|
|
94
81
|
}
|
|
95
82
|
}
|
|
96
83
|
}
|
|
97
|
-
|
|
84
|
+
|
|
98
85
|
.hy-batch-table-form-step-box {
|
|
99
86
|
width: 100%;
|
|
100
87
|
height: 260px;
|
|
@@ -103,6 +90,7 @@
|
|
|
103
90
|
padding-top: 24px;
|
|
104
91
|
border-radius: 8px;
|
|
105
92
|
background-color: rgba(var(--hy-background-2), 0.5);
|
|
93
|
+
box-sizing: border-box;
|
|
106
94
|
.hy-el-step {
|
|
107
95
|
.hy-el-step__description {
|
|
108
96
|
padding-left: 0px !important;
|
|
@@ -122,6 +110,7 @@
|
|
|
122
110
|
border: 1px dashed rgba(var(--hy-auxiliary), 0.5);
|
|
123
111
|
border-radius: 4px;
|
|
124
112
|
background: rgba(var(--hy-background-2), 0.5);
|
|
113
|
+
box-sizing: border-box;
|
|
125
114
|
}
|
|
126
115
|
|
|
127
116
|
.hy-batch-table-form-upload-bg {
|
|
@@ -141,13 +130,9 @@
|
|
|
141
130
|
height: 200%;
|
|
142
131
|
/* 绘制网格线:使用青色,透明度调低,让它融合在 #14273a 背景里 */
|
|
143
132
|
background-image:
|
|
144
|
-
/* 纵向线 */
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
transparent 1px
|
|
148
|
-
),
|
|
149
|
-
/* 横向线 */
|
|
150
|
-
linear-gradient(rgba(0, 229, 255, 0.1) 1px, transparent 1px);
|
|
133
|
+
/* 纵向线 */
|
|
134
|
+
linear-gradient(90deg, rgba(0, 229, 255, 0.1) 1px, transparent 1px),
|
|
135
|
+
/* 横向线 */ linear-gradient(rgba(0, 229, 255, 0.1) 1px, transparent 1px);
|
|
151
136
|
|
|
152
137
|
/* 网格尺寸 40px */
|
|
153
138
|
background-size: 40px 40px;
|
|
@@ -159,16 +144,8 @@
|
|
|
159
144
|
animation: grid-flow 20s linear infinite;
|
|
160
145
|
|
|
161
146
|
/* 遮罩:四周渐隐,让网格不那么生硬 */
|
|
162
|
-
mask-image: radial-gradient(
|
|
163
|
-
|
|
164
|
-
black 10%,
|
|
165
|
-
transparent 80%
|
|
166
|
-
);
|
|
167
|
-
-webkit-mask-image: radial-gradient(
|
|
168
|
-
circle at 50% 50%,
|
|
169
|
-
black 10%,
|
|
170
|
-
transparent 80%
|
|
171
|
-
);
|
|
147
|
+
mask-image: radial-gradient(circle at 50% 50%, black 10%, transparent 80%);
|
|
148
|
+
-webkit-mask-image: radial-gradient(circle at 50% 50%, black 10%, transparent 80%);
|
|
172
149
|
}
|
|
173
150
|
&::after {
|
|
174
151
|
display: block;
|
|
@@ -178,12 +155,7 @@
|
|
|
178
155
|
left: 0;
|
|
179
156
|
width: 100%;
|
|
180
157
|
height: 100%;
|
|
181
|
-
background: radial-gradient(
|
|
182
|
-
circle at 50% 50%,
|
|
183
|
-
rgba(0, 229, 255, 0.05) 0%,
|
|
184
|
-
transparent 70%
|
|
185
|
-
);
|
|
158
|
+
background: radial-gradient(circle at 50% 50%, rgba(0, 229, 255, 0.05) 0%, transparent 70%);
|
|
186
159
|
}
|
|
187
160
|
}
|
|
188
161
|
}
|
|
189
|
-
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
border-radius: 4px;
|
|
20
20
|
padding: 2px;
|
|
21
21
|
font-size: 0.75rem;
|
|
22
|
+
box-sizing: border-box;
|
|
22
23
|
.hy-table-form-tab-button {
|
|
23
24
|
display: flex;
|
|
24
25
|
align-items: center;
|
|
@@ -28,15 +29,15 @@
|
|
|
28
29
|
border-radius: 2px;
|
|
29
30
|
cursor: pointer;
|
|
30
31
|
transition: all 0.3s linear;
|
|
32
|
+
box-sizing: border-box;
|
|
31
33
|
&:hover {
|
|
32
34
|
color: rgba(var(--hy-main));
|
|
33
35
|
}
|
|
34
36
|
&.is-select {
|
|
35
37
|
color: rgba(var(--hy-main));
|
|
36
|
-
background: linear-gradient(180deg, rgba(var(--hy-theme)) 0%, #
|
|
38
|
+
background: linear-gradient(180deg, rgba(var(--hy-theme)) 0%, #2a4968 100%);
|
|
37
39
|
border-image: linear-gradient(180deg, rgba(var(--hy-theme)) 80%, rgba(var(--hy-auxiliary))) 1 1;
|
|
38
40
|
}
|
|
39
41
|
}
|
|
40
42
|
}
|
|
41
43
|
}
|
|
42
|
-
|
|
@@ -5,8 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var vue = require('vue');
|
|
6
6
|
require('../index.js');
|
|
7
7
|
require('../../utils/index.js');
|
|
8
|
+
require('../../hooks/index.js');
|
|
8
9
|
var index = require('./js/index.js');
|
|
9
10
|
var useAppTable = require('../hyTable/js/useAppTable.js');
|
|
11
|
+
var useResizeObserver = require('../../hooks/useResizeObserver.js');
|
|
10
12
|
var useAppForm = require('../hyForm/js/useAppForm.js');
|
|
11
13
|
var is = require('../../utils/is.js');
|
|
12
14
|
var handler = require('../../utils/handler.js');
|
|
@@ -76,6 +78,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
76
78
|
const props = __props;
|
|
77
79
|
const emits = __emit;
|
|
78
80
|
const tableRef = vue.useTemplateRef("tableRef");
|
|
81
|
+
const formContainerRef = vue.useTemplateRef("formContainerRef");
|
|
79
82
|
const formRef = vue.useTemplateRef("formRef");
|
|
80
83
|
const dataSource = vue.ref([]);
|
|
81
84
|
const tabList = vue.ref([
|
|
@@ -101,7 +104,6 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
101
104
|
}
|
|
102
105
|
]
|
|
103
106
|
});
|
|
104
|
-
const isExpandValidate = vue.ref(false);
|
|
105
107
|
const statistics = vue.ref({
|
|
106
108
|
success: 0,
|
|
107
109
|
failed: 0,
|
|
@@ -119,7 +121,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
119
121
|
tableRef.value.setData(dataSource2);
|
|
120
122
|
}
|
|
121
123
|
function rowClassName({ row, rowIndex }) {
|
|
122
|
-
if (row.errorMsg) {
|
|
124
|
+
if (row.errorMsg && row.errorMsg.message) {
|
|
123
125
|
return "hy-el-table-v2__row-error";
|
|
124
126
|
}
|
|
125
127
|
}
|
|
@@ -130,21 +132,40 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
130
132
|
setData(dataSource.value);
|
|
131
133
|
} else {
|
|
132
134
|
const data = dataSource.value.filter((data2) => {
|
|
133
|
-
return
|
|
135
|
+
return data2.errorMsg && data2.errorMsg.message;
|
|
134
136
|
});
|
|
135
137
|
setData(data);
|
|
136
138
|
}
|
|
137
139
|
}
|
|
138
|
-
|
|
140
|
+
let formClientHeight, removeResize, tableScrollTop, expanding;
|
|
141
|
+
async function onExpandRowChange2(row, isExpanded) {
|
|
139
142
|
if (props.onExpandRowChange) {
|
|
140
143
|
props.onExpandRowChange(row);
|
|
141
144
|
}
|
|
142
145
|
await vue.nextTick();
|
|
143
|
-
if (!formRef.value)
|
|
146
|
+
if (!formRef.value || !isExpanded) {
|
|
147
|
+
removeResize && removeResize();
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
const instance = useResizeObserver.useResizeObserver(formContainerRef.value, async () => {
|
|
151
|
+
if (!formContainerRef.value) return;
|
|
152
|
+
const [key] = tableRef.value.getRowExpansion();
|
|
153
|
+
if (formClientHeight === formContainerRef.value.clientHeight) return;
|
|
154
|
+
if (!key) return;
|
|
155
|
+
removeResize && removeResize();
|
|
156
|
+
expanding = true;
|
|
157
|
+
tableRef.value.toggleRowExpansion(key, false);
|
|
158
|
+
await vue.nextTick();
|
|
159
|
+
tableRef.value.toggleRowExpansion(key, true);
|
|
160
|
+
await new Promise((resolve) => setTimeout(resolve, 1));
|
|
161
|
+
tableRef.value.scrollToTop(tableScrollTop);
|
|
162
|
+
expanding = false;
|
|
163
|
+
});
|
|
164
|
+
formClientHeight = formContainerRef.value.clientHeight;
|
|
165
|
+
removeResize = instance.removeResize;
|
|
144
166
|
const valid = await initValidateHandler([row]);
|
|
145
167
|
if (valid) return;
|
|
146
|
-
|
|
147
|
-
isExpandValidate.value = true;
|
|
168
|
+
triggerValidate();
|
|
148
169
|
}
|
|
149
170
|
function onDeleteRowHandler(params) {
|
|
150
171
|
const { $index } = params;
|
|
@@ -168,6 +189,14 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
168
189
|
...statistics.value
|
|
169
190
|
});
|
|
170
191
|
}
|
|
192
|
+
function onScrollHandler(params) {
|
|
193
|
+
if (expanding) return;
|
|
194
|
+
tableScrollTop = params.scrollTop;
|
|
195
|
+
}
|
|
196
|
+
const validateTriggerId = vue.ref(0);
|
|
197
|
+
function triggerValidate() {
|
|
198
|
+
validateTriggerId.value++;
|
|
199
|
+
}
|
|
171
200
|
async function initValidateHandler(dataSource2) {
|
|
172
201
|
let promiseList = [];
|
|
173
202
|
for (const data of dataSource2) {
|
|
@@ -190,9 +219,9 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
190
219
|
prop: item.field,
|
|
191
220
|
message: item.message || `${item.field} is required`
|
|
192
221
|
};
|
|
193
|
-
if (!data.errorMsg) {
|
|
222
|
+
if (data && !data.errorMsg) {
|
|
194
223
|
data.errorMsg = errData;
|
|
195
|
-
} else if (!data.errorMsg.prop && !data.errorMsg.message) {
|
|
224
|
+
} else if (data && !data.errorMsg.prop && !data.errorMsg.message) {
|
|
196
225
|
data.errorMsg.prop = errData.errorMsg.prop;
|
|
197
226
|
data.errorMsg.message = errData.errorMsg.message;
|
|
198
227
|
}
|
|
@@ -242,6 +271,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
242
271
|
row.errorMsg.message = errMsg.message;
|
|
243
272
|
}
|
|
244
273
|
}
|
|
274
|
+
await vue.nextTick();
|
|
245
275
|
const { onlyId, errorMsg, errorMap, children, ...data } = row;
|
|
246
276
|
emits("validate", {
|
|
247
277
|
row: data,
|
|
@@ -251,6 +281,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
251
281
|
...statistics.value
|
|
252
282
|
});
|
|
253
283
|
}
|
|
284
|
+
vue.provide("validateTriggerId", validateTriggerId);
|
|
254
285
|
vue.onMounted(() => {
|
|
255
286
|
vue.watch(
|
|
256
287
|
() => dataSource.value,
|
|
@@ -258,10 +289,10 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
258
289
|
emits("tableDataChange", dataSource.value);
|
|
259
290
|
const { success, failed } = dataSource.value.reduce(
|
|
260
291
|
({ success: success2, failed: failed2 }, data) => {
|
|
261
|
-
if (
|
|
262
|
-
success2++;
|
|
263
|
-
} else {
|
|
292
|
+
if (data.errorMsg && data.errorMsg.message) {
|
|
264
293
|
failed2++;
|
|
294
|
+
} else {
|
|
295
|
+
success2++;
|
|
265
296
|
}
|
|
266
297
|
return { success: success2, failed: failed2 };
|
|
267
298
|
},
|
|
@@ -294,7 +325,6 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
294
325
|
if (item.onlyId) set.add(item.onlyId);
|
|
295
326
|
return set;
|
|
296
327
|
}, /* @__PURE__ */ new Set());
|
|
297
|
-
console.log("keySet", Array.from(keySet.values()));
|
|
298
328
|
if (!keySet.size) return;
|
|
299
329
|
for (let i = 0; i < dataSource.value.length; i++) {
|
|
300
330
|
const target = dataSource.value[i];
|
|
@@ -439,19 +469,20 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
439
469
|
showOperate: false,
|
|
440
470
|
showPagination: false,
|
|
441
471
|
expandMode: "accordion",
|
|
442
|
-
onExpandChange:
|
|
472
|
+
onExpandChange: onExpandRowChange2,
|
|
473
|
+
onScroll: onScrollHandler
|
|
443
474
|
}), vue.createSlots({
|
|
444
475
|
validateStatus: vue.withCtx(({ row }) => [
|
|
445
476
|
vue.createElementVNode(
|
|
446
477
|
"div",
|
|
447
478
|
{
|
|
448
|
-
class: vue.normalizeClass(["flex items-center gap-1.5", [row.errorMsg ? "text-danger-2" : "text-success"]])
|
|
479
|
+
class: vue.normalizeClass(["flex items-center gap-1.5", [row.errorMsg && row.errorMsg.message ? "text-danger-2" : "text-success"]])
|
|
449
480
|
},
|
|
450
481
|
[
|
|
451
482
|
vue.createElementVNode(
|
|
452
483
|
"div",
|
|
453
484
|
{
|
|
454
|
-
class: vue.normalizeClass(["w-1.5 h-1.5 rounded-full", [row.errorMsg ? "bg-danger-2" : "bg-success"]])
|
|
485
|
+
class: vue.normalizeClass(["w-1.5 h-1.5 rounded-full", [row.errorMsg && row.errorMsg.message ? "bg-danger-2" : "bg-success"]])
|
|
455
486
|
},
|
|
456
487
|
null,
|
|
457
488
|
2
|
|
@@ -460,7 +491,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
460
491
|
vue.createElementVNode(
|
|
461
492
|
"div",
|
|
462
493
|
{ class: "text-sm" },
|
|
463
|
-
vue.toDisplayString(
|
|
494
|
+
vue.toDisplayString(row.errorMsg && row.errorMsg.message ? row.errorMsg.prop ? "\u5185\u5BB9\u6709\u8BEF" : "\u6821\u9A8C\u5931\u8D25" : "\u51C6\u5907\u5C31\u7EEA"),
|
|
464
495
|
1
|
|
465
496
|
/* TEXT */
|
|
466
497
|
)
|
|
@@ -488,7 +519,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
488
519
|
vue.withDirectives(vue.createElementVNode(
|
|
489
520
|
"div",
|
|
490
521
|
{
|
|
491
|
-
class: vue.normalizeClass(["flex items-center gap-1.5 text-danger-2 transition-all duration-300 overflow-hidden", [row.errorMsg ? "h-full" : "h-0"]])
|
|
522
|
+
class: vue.normalizeClass(["flex items-center gap-1.5 text-danger-2 transition-all duration-300 overflow-hidden", [row.errorMsg && row.errorMsg.message ? "h-full" : "h-0"]])
|
|
492
523
|
},
|
|
493
524
|
[
|
|
494
525
|
vue.createVNode(vue.unref(index$3.HyIcon), {
|
|
@@ -498,7 +529,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
498
529
|
vue.createElementVNode(
|
|
499
530
|
"span",
|
|
500
531
|
null,
|
|
501
|
-
vue.toDisplayString(row.errorMsg ? row.errorMsg.message : ""),
|
|
532
|
+
vue.toDisplayString(row.errorMsg && row.errorMsg.message ? row.errorMsg.message : ""),
|
|
502
533
|
1
|
|
503
534
|
/* TEXT */
|
|
504
535
|
)
|
|
@@ -506,34 +537,47 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
506
537
|
2
|
|
507
538
|
/* CLASS */
|
|
508
539
|
), [
|
|
509
|
-
[vue.vShow, row.errorMsg.message]
|
|
540
|
+
[vue.vShow, row.errorMsg && row.errorMsg.message]
|
|
510
541
|
])
|
|
511
542
|
]),
|
|
512
|
-
vue.
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
543
|
+
vue.createElementVNode(
|
|
544
|
+
"div",
|
|
545
|
+
{
|
|
546
|
+
ref_key: "formContainerRef",
|
|
547
|
+
ref: formContainerRef,
|
|
548
|
+
class: "w-full"
|
|
549
|
+
},
|
|
550
|
+
[
|
|
551
|
+
vue.createVNode(vue.unref(index$4.HyForm), {
|
|
552
|
+
ref_key: "formRef",
|
|
553
|
+
ref: formRef,
|
|
554
|
+
model: row,
|
|
555
|
+
columns: __props.formColumns,
|
|
556
|
+
rules: __props.rules,
|
|
557
|
+
"show-message": false,
|
|
558
|
+
class: "px-0",
|
|
559
|
+
columnNum: __props.columnNum,
|
|
560
|
+
size: __props.size,
|
|
561
|
+
business: "tableForm",
|
|
562
|
+
onValidate: (prop, isValid, message) => onValidateHandler(row, { prop, isValid, message }),
|
|
563
|
+
onOptionsStatus: _ctx.$attrs.onOptionsStatus
|
|
564
|
+
}, vue.createSlots({
|
|
565
|
+
_: 2
|
|
566
|
+
/* DYNAMIC */
|
|
567
|
+
}, [
|
|
568
|
+
vue.renderList(_ctx.$slots, (_, slotName) => {
|
|
569
|
+
return {
|
|
570
|
+
name: slotName,
|
|
571
|
+
fn: vue.withCtx((scope) => [
|
|
572
|
+
vue.renderSlot(_ctx.$slots, slotName, vue.normalizeProps(vue.guardReactiveProps(scope)))
|
|
573
|
+
])
|
|
574
|
+
};
|
|
575
|
+
})
|
|
576
|
+
]), 1032, ["model", "columns", "rules", "columnNum", "size", "onValidate", "onOptionsStatus"])
|
|
577
|
+
],
|
|
578
|
+
512
|
|
579
|
+
/* NEED_PATCH */
|
|
580
|
+
)
|
|
537
581
|
])
|
|
538
582
|
]),
|
|
539
583
|
key: "0"
|
|
@@ -45,7 +45,6 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
45
45
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
46
46
|
const props = __props;
|
|
47
47
|
const emits = __emit;
|
|
48
|
-
const { t } = useLocale.useLocale();
|
|
49
48
|
const appTimePicker = vue.useTemplateRef("appTimePicker");
|
|
50
49
|
const timeValue = vue.useModel(__props, "modelValue");
|
|
51
50
|
const startValue = vue.useModel(__props, "start");
|
|
@@ -54,13 +53,13 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
54
53
|
if (props.startPlaceholder) {
|
|
55
54
|
return props.startPlaceholder;
|
|
56
55
|
}
|
|
57
|
-
return t("timePicker.startTime");
|
|
56
|
+
return useLocale.$t("timePicker.startTime");
|
|
58
57
|
});
|
|
59
58
|
const endPlaceholder = vue.computed(() => {
|
|
60
59
|
if (props.endPlaceholder) {
|
|
61
60
|
return props.endPlaceholder;
|
|
62
61
|
}
|
|
63
|
-
return t("timePicker.endTime");
|
|
62
|
+
return useLocale.$t("timePicker.endTime");
|
|
64
63
|
});
|
|
65
64
|
const disabledSecondsHandler = vue.computed(() => {
|
|
66
65
|
return (hour, minute, role, comparingDate) => {
|
|
@@ -149,7 +148,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
149
148
|
valueFormat: timeFormHandler(__props.valueFormat),
|
|
150
149
|
disabledSeconds: disabledSecondsHandler.value,
|
|
151
150
|
"start-placeholder": startPlaceholder.value,
|
|
152
|
-
"range-separator": vue.unref(t)("timePicker.to"),
|
|
151
|
+
"range-separator": vue.unref(useLocale.$t)("timePicker.to"),
|
|
153
152
|
"end-placeholder": endPlaceholder.value,
|
|
154
153
|
onChange: onChangeHandler
|
|
155
154
|
}), vue.createSlots({
|
|
@@ -23,9 +23,7 @@ const useAppTreeWrapper = (hy) => {
|
|
|
23
23
|
// 用实例的 provides 链覆盖应用级 provides,才能拿到 ElConfigProvider 注入的 namespace
|
|
24
24
|
provides: instance.provides
|
|
25
25
|
} : null;
|
|
26
|
-
const permissionIdList = JSON.parse(
|
|
27
|
-
window.sessionStorage.getItem("permissionIdList") || "[]"
|
|
28
|
-
);
|
|
26
|
+
const permissionIdList = JSON.parse(window.sessionStorage.getItem("permissionIdList") || "[]");
|
|
29
27
|
let virtualTree = null;
|
|
30
28
|
const filterValue = vue.ref("");
|
|
31
29
|
const disableSelectionMap = vue.ref(null);
|
|
@@ -46,9 +44,7 @@ const useAppTreeWrapper = (hy) => {
|
|
|
46
44
|
return data[props.treeProps?.value];
|
|
47
45
|
}
|
|
48
46
|
function deleteNoTreeSelData(item) {
|
|
49
|
-
const index = hy.noTreeSelData.value.findIndex(
|
|
50
|
-
(v) => hy.getSelectedDataKey(v) === hy.getSelectedDataKey(item)
|
|
51
|
-
);
|
|
47
|
+
const index = hy.noTreeSelData.value.findIndex((v) => hy.getSelectedDataKey(v) === hy.getSelectedDataKey(item));
|
|
52
48
|
if (index !== -1) {
|
|
53
49
|
hy.noTreeSelData.value.splice(index, 1);
|
|
54
50
|
}
|
|
@@ -67,9 +63,7 @@ const useAppTreeWrapper = (hy) => {
|
|
|
67
63
|
treeMap.set(key, true);
|
|
68
64
|
}
|
|
69
65
|
});
|
|
70
|
-
hy.noTreeSelData.value = dataList.filter(
|
|
71
|
-
(item) => !treeMap.get(hy.getSelectedDataKey(item))
|
|
72
|
-
);
|
|
66
|
+
hy.noTreeSelData.value = dataList.filter((item) => !treeMap.get(hy.getSelectedDataKey(item)));
|
|
73
67
|
}
|
|
74
68
|
function mergeNoTreeSelData(dataList) {
|
|
75
69
|
return [...hy.noTreeSelData.value, ...dataList];
|
|
@@ -95,11 +89,11 @@ const useAppTreeWrapper = (hy) => {
|
|
|
95
89
|
// 数据
|
|
96
90
|
data: dataList,
|
|
97
91
|
// 每一项的高度
|
|
98
|
-
itemHeight: 30,
|
|
92
|
+
// itemHeight: 30, // 使用全局配置
|
|
99
93
|
// 可视区域外的缓冲项数量
|
|
100
|
-
bufferSize: 10,
|
|
94
|
+
// bufferSize: 10, // 使用全局配置
|
|
101
95
|
// 相邻级节点间的水平缩进,单位为像素
|
|
102
|
-
indent: 16,
|
|
96
|
+
// indent: 16, // 使用全局配置
|
|
103
97
|
emptyText: "\u6682\u65E0\u6570\u636E",
|
|
104
98
|
// 树形业务类型
|
|
105
99
|
business: props.treeType,
|
|
@@ -181,13 +175,7 @@ const useAppTreeWrapper = (hy) => {
|
|
|
181
175
|
}
|
|
182
176
|
emits(
|
|
183
177
|
"on-check-tree",
|
|
184
|
-
JSON.parse(
|
|
185
|
-
JSON.stringify(
|
|
186
|
-
hy.mergeNoTreeSelData(
|
|
187
|
-
info.checkedBusinessNodes || info.checkedNodes
|
|
188
|
-
)
|
|
189
|
-
)
|
|
190
|
-
),
|
|
178
|
+
JSON.parse(JSON.stringify(hy.mergeNoTreeSelData(info.checkedBusinessNodes || info.checkedNodes))),
|
|
191
179
|
{
|
|
192
180
|
data,
|
|
193
181
|
info,
|
|
@@ -264,9 +252,7 @@ const useAppTreeWrapper = (hy) => {
|
|
|
264
252
|
}
|
|
265
253
|
]);
|
|
266
254
|
} else {
|
|
267
|
-
const channelList = data.videoChannelList?.filter(
|
|
268
|
-
(v) => v.onlineState === 1
|
|
269
|
-
);
|
|
255
|
+
const channelList = data.videoChannelList?.filter((v) => v.onlineState === 1);
|
|
270
256
|
if (channelList && channelList.length) {
|
|
271
257
|
emits(
|
|
272
258
|
"on-dblclick",
|
|
@@ -475,12 +461,7 @@ const useAppTreeWrapper = (hy) => {
|
|
|
475
461
|
} else if (props.treeType) {
|
|
476
462
|
hy.virtualTree.setChecked(row.id, false, true, isForce);
|
|
477
463
|
} else if (!props.treeType && props.treeProps) {
|
|
478
|
-
hy.virtualTree.setChecked(
|
|
479
|
-
row[`${props.treeProps.value}`],
|
|
480
|
-
false,
|
|
481
|
-
true,
|
|
482
|
-
isForce
|
|
483
|
-
);
|
|
464
|
+
hy.virtualTree.setChecked(row[`${props.treeProps.value}`], false, true, isForce);
|
|
484
465
|
}
|
|
485
466
|
hy.deleteNoTreeSelData(row);
|
|
486
467
|
}
|
|
@@ -545,19 +526,13 @@ const useAppTreeWrapper = (hy) => {
|
|
|
545
526
|
}
|
|
546
527
|
function getSelectedDataList(leafOnly = false) {
|
|
547
528
|
if (props.treeType) {
|
|
548
|
-
return hy.mergeNoTreeSelData(
|
|
549
|
-
hy.virtualTree?.getCheckedBusinessNodes(leafOnly) || []
|
|
550
|
-
);
|
|
529
|
+
return hy.mergeNoTreeSelData(hy.virtualTree?.getCheckedBusinessNodes(leafOnly) || []);
|
|
551
530
|
}
|
|
552
|
-
return hy.mergeNoTreeSelData(
|
|
553
|
-
hy.virtualTree?.getCheckedNodes(leafOnly) || []
|
|
554
|
-
);
|
|
531
|
+
return hy.mergeNoTreeSelData(hy.virtualTree?.getCheckedNodes(leafOnly) || []);
|
|
555
532
|
}
|
|
556
533
|
function setFilterListType(type) {
|
|
557
534
|
if (props.selectFilterList?.length) {
|
|
558
|
-
hy.selectFilterList.value = JSON.parse(
|
|
559
|
-
JSON.stringify(props.selectFilterList)
|
|
560
|
-
);
|
|
535
|
+
hy.selectFilterList.value = JSON.parse(JSON.stringify(props.selectFilterList));
|
|
561
536
|
return;
|
|
562
537
|
}
|
|
563
538
|
if (props.treeType === "device") {
|
|
@@ -599,9 +574,7 @@ const useAppTreeWrapper = (hy) => {
|
|
|
599
574
|
}
|
|
600
575
|
}
|
|
601
576
|
const getInputPlaceholder = vue.computed(() => {
|
|
602
|
-
const item = hy.selectFilterList.value.find(
|
|
603
|
-
(v) => v.value === hy.selectFilterType.value
|
|
604
|
-
);
|
|
577
|
+
const item = hy.selectFilterList.value.find((v) => v.value === hy.selectFilterType.value);
|
|
605
578
|
if (item && item.placeholder) {
|
|
606
579
|
return item.placeholder;
|
|
607
580
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
@import url('hy-virtual-tree/style');
|
|
1
|
+
@import url('hy-virtual-tree/style');
|
|
@@ -120,7 +120,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
120
120
|
// 是否高亮选中节点
|
|
121
121
|
highlight: {
|
|
122
122
|
type: Boolean,
|
|
123
|
-
default:
|
|
123
|
+
default: true
|
|
124
124
|
},
|
|
125
125
|
// 是否严格的遵循父子不互相关联
|
|
126
126
|
checkStrictly: {
|
|
@@ -238,7 +238,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
238
238
|
return vue.openBlock(), vue.createElementBlock(
|
|
239
239
|
"div",
|
|
240
240
|
{
|
|
241
|
-
class: "w-full flex flex-col",
|
|
241
|
+
class: "w-full flex flex-col box-border",
|
|
242
242
|
style: vue.normalizeStyle({ height: `${__props.treeHeight}px` })
|
|
243
243
|
},
|
|
244
244
|
[
|
|
@@ -251,7 +251,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
251
251
|
"show-after": 500
|
|
252
252
|
}, {
|
|
253
253
|
default: vue.withCtx(() => [
|
|
254
|
-
vue.createElementVNode("div", { class: "search_lightColor flex min-w-full z-[3]" }, [
|
|
254
|
+
vue.createElementVNode("div", { class: "search_lightColor flex min-w-full z-[3] box-border" }, [
|
|
255
255
|
vue.createVNode(vue.unref(elementPlus.ElInput), {
|
|
256
256
|
size: "small",
|
|
257
257
|
clearable: "",
|
|
@@ -288,7 +288,7 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
288
288
|
placement: "bottom-start"
|
|
289
289
|
}, {
|
|
290
290
|
default: vue.withCtx(() => [
|
|
291
|
-
vue.createElementVNode("div", { class: "flex search_lightColor w-full" }, [
|
|
291
|
+
vue.createElementVNode("div", { class: "flex search_lightColor w-full box-border" }, [
|
|
292
292
|
vue.createElementVNode("div", { class: "flex flex-grow w-0" }, [
|
|
293
293
|
vue.createVNode(vue.unref(elementPlus.ElSelect), {
|
|
294
294
|
class: "!w-[37%] box-border rounded-[6px] flex-shrink-0",
|
|
@@ -341,18 +341,19 @@ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
|
341
341
|
}, 8, ["content"])
|
|
342
342
|
])) : vue.createCommentVNode("v-if", true),
|
|
343
343
|
vue.renderSlot(_ctx.$slots, "input-bottom"),
|
|
344
|
-
vue.withDirectives(vue.
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
344
|
+
vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", { class: "flex-grow h-0 w-full px-[10px] box-border" }, [
|
|
345
|
+
vue.createElementVNode(
|
|
346
|
+
"div",
|
|
347
|
+
{
|
|
348
|
+
ref_key: "treeRef",
|
|
349
|
+
ref: treeRef,
|
|
350
|
+
class: "w-full h-full"
|
|
351
|
+
},
|
|
352
|
+
null,
|
|
353
|
+
512
|
|
354
|
+
/* NEED_PATCH */
|
|
355
|
+
)
|
|
356
|
+
])), [
|
|
356
357
|
[_directive_loading, vue.unref(loading)]
|
|
357
358
|
])
|
|
358
359
|
],
|