hy-dispatch-ui-v3 0.1.6 → 0.2.0

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 (160) hide show
  1. package/README.md +47 -0
  2. package/dist/tailwind.css +349 -4
  3. package/es/components/appAudioPlayer/appAudioPlayer.vue.mjs +462 -0
  4. package/es/components/appAudioPlayer/index.mjs +6 -0
  5. package/es/components/appAudioPlayer/js/index.mjs +327 -0
  6. package/es/components/appAudioPlayer/style/appAudioPlayer.scss +319 -0
  7. package/es/components/appButton/style/appButton.scss +0 -1
  8. package/es/components/appConfigProvider/appConfigProvider.vue.mjs +22 -1
  9. package/es/components/appCutter/appCutter.vue.mjs +202 -129
  10. package/es/components/appDatePicker/appDatePicker.vue.mjs +1 -1
  11. package/es/components/appForm/appForm.vue.mjs +132 -209
  12. package/es/components/appForm/cpns/appFormItem.vue.mjs +312 -0
  13. package/es/components/appForm/cpns/arrayItem.vue.mjs +305 -0
  14. package/es/components/appForm/cpns/extraItem.vue.mjs +140 -0
  15. package/es/components/appForm/js/index.mjs +46 -24
  16. package/es/components/appForm/js/useAppForm.mjs +30 -6
  17. package/es/components/appForm/style/appForm.scss +53 -0
  18. package/es/components/appIcon/appIcon.vue.mjs +2 -1
  19. package/es/components/appIconBox/style/appIconBox.scss +0 -1
  20. package/es/components/appInput/appInput.vue.mjs +99 -0
  21. package/es/components/appInput/index.mjs +6 -0
  22. package/es/components/appMenu/appMenu.vue.mjs +129 -0
  23. package/es/components/appMenu/index.mjs +6 -0
  24. package/es/components/appMenu/style/appMenu.scss +145 -0
  25. package/es/components/appOrgCascader/appOrgCascader.vue.mjs +14 -10
  26. package/es/components/appSearch/appSearch.vue.mjs +55 -211
  27. package/es/components/appSearch/cpns/appSearchItem.vue.mjs +238 -0
  28. package/es/components/appSearch/js/index.mjs +20 -8
  29. package/es/components/appSearch/js/useAppSearch.mjs +10 -5
  30. package/es/components/appSearch/style/appSearch.scss +10 -0
  31. package/es/components/appTable/appTable.vue.mjs +312 -158
  32. package/es/components/appTable/cpns/columnSelect.vue.mjs +151 -156
  33. package/es/components/appTable/cpns/columnSelectItem.vue2.mjs +104 -110
  34. package/es/components/appTable/cpns/headerItem.vue.mjs +98 -0
  35. package/es/components/appTable/cpns/virtualTable.vue.mjs +560 -0
  36. package/es/components/appTable/js/index.mjs +46 -20
  37. package/es/components/appTable/js/search.mjs +1 -2
  38. package/es/components/appTable/js/useAppTable.mjs +58 -14
  39. package/es/components/appTable/style/appTable.scss +16 -0
  40. package/es/components/appTooltip/appTooltip.vue.mjs +24 -13
  41. package/es/components/appTree/appTree.vue.mjs +304 -0
  42. package/es/components/appTree/index.mjs +6 -0
  43. package/es/components/appTree/js/index.mjs +531 -0
  44. package/es/components/appUserAvatar/appUserAvatar.vue.mjs +9 -8
  45. package/es/components/appUserAvatar/style/appUserAvatar.scss +0 -1
  46. package/es/components/appVideoPlayer/appVideoPlayer.vue.mjs +647 -0
  47. package/es/components/appVideoPlayer/cpns/mediaLoading.vue.mjs +35 -0
  48. package/es/components/appVideoPlayer/index.mjs +6 -0
  49. package/es/components/appVideoPlayer/js/index.mjs +426 -0
  50. package/es/components/appVideoPlayer/style/appVideoPlayer.scss +275 -0
  51. package/es/components/appVideoPlayer/style/mediaLoading.scss +62 -0
  52. package/es/components/index.mjs +5 -0
  53. package/es/hooks/index.mjs +3 -0
  54. package/es/hooks/useApi.mjs +4 -4
  55. package/es/hooks/useAudioPlayerConfig.mjs +12 -0
  56. package/es/hooks/useGlobalConfig.mjs +18 -7
  57. package/es/hooks/useLocale.mjs +3 -11
  58. package/es/hooks/useMixins.mjs +1 -1
  59. package/es/hooks/usePermissionMap.mjs +12 -0
  60. package/es/hooks/useUserAvatarMap.mjs +2 -3
  61. package/es/hooks/useVideoPlayerConfig.mjs +12 -0
  62. package/es/index.mjs +14 -4
  63. package/es/locale/en.mjs +52 -3
  64. package/es/locale/zh_CN.mjs +48 -3
  65. package/es/make-installer.mjs +2 -0
  66. package/es/static/hy-svg-icons.js +462 -0
  67. package/es/static/protocolcheck.js +247 -0
  68. package/es/style/element/element.scss +9 -0
  69. package/es/style/element/index.scss +6 -3
  70. package/es/style/index.scss +11 -0
  71. package/es/style/theme.scss +73 -0
  72. package/es/utils/date.mjs +25 -1
  73. package/es/utils/file.mjs +5 -4
  74. package/es/utils/form.mjs +52 -0
  75. package/es/utils/handler.mjs +22 -2
  76. package/es/utils/index.mjs +6 -4
  77. package/es/utils/is.mjs +23 -2
  78. package/es/utils/loadScript.mjs +33 -0
  79. package/es/version.mjs +1 -1
  80. package/lib/components/appAudioPlayer/appAudioPlayer.vue.js +466 -0
  81. package/lib/components/appAudioPlayer/index.js +11 -0
  82. package/lib/components/appAudioPlayer/js/index.js +329 -0
  83. package/lib/components/appAudioPlayer/style/appAudioPlayer.scss +319 -0
  84. package/lib/components/appButton/style/appButton.scss +0 -1
  85. package/lib/components/appConfigProvider/appConfigProvider.vue.js +22 -1
  86. package/lib/components/appCutter/appCutter.vue.js +201 -128
  87. package/lib/components/appDatePicker/appDatePicker.vue.js +1 -1
  88. package/lib/components/appForm/appForm.vue.js +129 -206
  89. package/lib/components/appForm/cpns/appFormItem.vue.js +316 -0
  90. package/lib/components/appForm/cpns/arrayItem.vue.js +309 -0
  91. package/lib/components/appForm/cpns/extraItem.vue.js +144 -0
  92. package/lib/components/appForm/js/index.js +48 -23
  93. package/lib/components/appForm/js/useAppForm.js +30 -6
  94. package/lib/components/appForm/style/appForm.scss +53 -0
  95. package/lib/components/appIcon/appIcon.vue.js +2 -1
  96. package/lib/components/appIconBox/style/appIconBox.scss +0 -1
  97. package/lib/components/appInput/appInput.vue.js +103 -0
  98. package/lib/components/appInput/index.js +11 -0
  99. package/lib/components/appMenu/appMenu.vue.js +133 -0
  100. package/lib/components/appMenu/index.js +11 -0
  101. package/lib/components/appMenu/style/appMenu.scss +145 -0
  102. package/lib/components/appOrgCascader/appOrgCascader.vue.js +14 -10
  103. package/lib/components/appSearch/appSearch.vue.js +51 -207
  104. package/lib/components/appSearch/cpns/appSearchItem.vue.js +242 -0
  105. package/lib/components/appSearch/js/index.js +20 -7
  106. package/lib/components/appSearch/js/useAppSearch.js +10 -5
  107. package/lib/components/appSearch/style/appSearch.scss +10 -0
  108. package/lib/components/appTable/appTable.vue.js +319 -165
  109. package/lib/components/appTable/cpns/columnSelect.vue.js +151 -156
  110. package/lib/components/appTable/cpns/columnSelectItem.vue2.js +105 -111
  111. package/lib/components/appTable/cpns/headerItem.vue.js +102 -0
  112. package/lib/components/appTable/cpns/virtualTable.vue.js +564 -0
  113. package/lib/components/appTable/js/index.js +47 -19
  114. package/lib/components/appTable/js/search.js +1 -2
  115. package/lib/components/appTable/js/useAppTable.js +57 -13
  116. package/lib/components/appTable/style/appTable.scss +16 -0
  117. package/lib/components/appTooltip/appTooltip.vue.js +23 -12
  118. package/lib/components/appTree/appTree.vue.js +308 -0
  119. package/lib/components/appTree/index.js +11 -0
  120. package/lib/components/appTree/js/index.js +533 -0
  121. package/lib/components/appUserAvatar/appUserAvatar.vue.js +9 -8
  122. package/lib/components/appUserAvatar/style/appUserAvatar.scss +0 -1
  123. package/lib/components/appVideoPlayer/appVideoPlayer.vue.js +651 -0
  124. package/lib/components/appVideoPlayer/cpns/mediaLoading.vue.js +39 -0
  125. package/lib/components/appVideoPlayer/index.js +11 -0
  126. package/lib/components/appVideoPlayer/js/index.js +429 -0
  127. package/lib/components/appVideoPlayer/style/appVideoPlayer.scss +275 -0
  128. package/lib/components/appVideoPlayer/style/mediaLoading.scss +62 -0
  129. package/lib/components/index.js +42 -32
  130. package/lib/hooks/index.js +9 -0
  131. package/lib/hooks/useApi.js +4 -4
  132. package/lib/hooks/useAudioPlayerConfig.js +15 -0
  133. package/lib/hooks/useGlobalConfig.js +18 -7
  134. package/lib/hooks/useLocale.js +3 -11
  135. package/lib/hooks/useMixins.js +1 -1
  136. package/lib/hooks/usePermissionMap.js +15 -0
  137. package/lib/hooks/useUserAvatarMap.js +1 -2
  138. package/lib/hooks/useVideoPlayerConfig.js +15 -0
  139. package/lib/index.js +62 -33
  140. package/lib/locale/en.js +52 -3
  141. package/lib/locale/zh_CN.js +48 -3
  142. package/lib/make-installer.js +2 -0
  143. package/lib/static/hy-svg-icons.js +459 -8
  144. package/lib/static/protocolcheck.js +249 -0
  145. package/lib/style/element/element.scss +9 -0
  146. package/lib/style/element/index.scss +6 -3
  147. package/lib/style/index.scss +11 -0
  148. package/lib/style/theme.scss +73 -0
  149. package/lib/utils/date.js +25 -0
  150. package/lib/utils/file.js +4 -4
  151. package/lib/utils/form.js +57 -0
  152. package/lib/utils/handler.js +22 -1
  153. package/lib/utils/index.js +11 -1
  154. package/lib/utils/is.js +23 -1
  155. package/lib/utils/loadScript.js +37 -0
  156. package/lib/version.js +1 -1
  157. package/package.json +12 -10
  158. package/es/config/index.mjs +0 -1
  159. package/es/static/hy-svg-icons.mjs +0 -11
  160. package/lib/config/index.js +0 -2
@@ -0,0 +1,308 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var elementPlus = require('element-plus');
7
+ var hyVirtualTree = require('hy-virtual-tree');
8
+ var index = require('./js/index.js');
9
+ var useMixins = require('../../hooks/useMixins.js');
10
+ var index$1 = require('../appIcon/index.js');
11
+
12
+ const __default__ = vue.defineComponent({
13
+ name: "AppTree"
14
+ });
15
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
16
+ props: {
17
+ /* 禁止选择 */
18
+ disableSelection: {
19
+ type: Array,
20
+ default: () => {
21
+ return [];
22
+ }
23
+ },
24
+ // 是否开启按照设备在线和离线状态排序,仅支持 device 和 groupDevice 业务类型
25
+ deviceOrderSort: {
26
+ type: Boolean,
27
+ default: true
28
+ },
29
+ // 当前群组
30
+ orgGroupId: {
31
+ type: [Number, String],
32
+ default: () => {
33
+ return null;
34
+ }
35
+ },
36
+ // 设置勤务状态
37
+ getDutyRoster: {
38
+ type: Boolean,
39
+ default: () => {
40
+ return false;
41
+ }
42
+ },
43
+ // 仅展示在线数据
44
+ showOnlineOnly: {
45
+ type: Boolean,
46
+ default: () => {
47
+ return false;
48
+ }
49
+ },
50
+ /* 是否开启多选框 */
51
+ showCheckbox: {
52
+ type: Boolean,
53
+ default: () => {
54
+ return true;
55
+ }
56
+ },
57
+ /* 是否开启单选框 */
58
+ showSinglebox: {
59
+ type: Boolean,
60
+ default: () => {
61
+ return false;
62
+ }
63
+ },
64
+ // 是否清除无数据的部门
65
+ clearEmptyBusiness: {
66
+ type: Boolean,
67
+ default: false
68
+ },
69
+ // 树形高度
70
+ treeHeight: {
71
+ type: Number,
72
+ default: 400
73
+ },
74
+ // 树形类型
75
+ treeType: {
76
+ type: String,
77
+ default: () => {
78
+ return "device";
79
+ }
80
+ },
81
+ // 是否显示通道节点的选择框
82
+ isShowChannelSelect: {
83
+ type: Boolean,
84
+ default: () => false
85
+ },
86
+ // 是否显示自定义空数据显示
87
+ showCustomEmpty: {
88
+ type: Boolean,
89
+ default: false
90
+ },
91
+ placeholder: {
92
+ type: String,
93
+ default: () => {
94
+ return "\u8BF7\u8F93\u5165";
95
+ }
96
+ },
97
+ // 是否返回默认选择的数据
98
+ isBackDefaultSelected: {
99
+ type: Boolean,
100
+ default: false
101
+ },
102
+ /* 默认选中列表 */
103
+ selectedByDefault: {
104
+ type: Array,
105
+ default: () => {
106
+ return [];
107
+ }
108
+ },
109
+ // 默认需要选中的部门ID
110
+ defaultSelectedOrgID: {
111
+ default: () => null
112
+ },
113
+ // 搜索类型
114
+ searchType: {
115
+ type: Number,
116
+ default: 1
117
+ },
118
+ // 筛选列表
119
+ selectFilterList: {
120
+ type: Array,
121
+ default: () => null
122
+ },
123
+ // 是否高亮选中节点
124
+ highlight: {
125
+ type: Boolean,
126
+ default: false
127
+ }
128
+ },
129
+ emits: [
130
+ "on-click-delete",
131
+ "on-click",
132
+ "on-check-tree",
133
+ "on-department-click",
134
+ "on-click-device",
135
+ "on-contextmenu",
136
+ "on-dblclick",
137
+ "on-refreshData",
138
+ "on-selectedDataList"
139
+ ],
140
+ setup(__props, { expose: __expose, emit: __emit }) {
141
+ const props = __props;
142
+ const slots = vue.useSlots();
143
+ const emits = __emit;
144
+ const treeRef = vue.ref();
145
+ const {
146
+ // useAppTableWrapper
147
+ // 表格配置项
148
+ getData,
149
+ filterValue,
150
+ getFilterValue,
151
+ refreshData,
152
+ singleRemovalFn,
153
+ setCheckedKeys,
154
+ setChecked,
155
+ selectFilterType,
156
+ selectFilterList,
157
+ setFilterListType,
158
+ getInputPlaceholder,
159
+ onChange
160
+ } = useMixins.useMixins(
161
+ {
162
+ props,
163
+ emits,
164
+ slots,
165
+ treeRef,
166
+ VirtualTree: hyVirtualTree.VirtualTree
167
+ },
168
+ [index.useAppTreeWrapper]
169
+ );
170
+ vue.onMounted(() => {
171
+ if (props.searchType === 2) ;
172
+ setFilterListType();
173
+ });
174
+ __expose({
175
+ getData,
176
+ singleRemovalFn,
177
+ setCheckedKeys,
178
+ setChecked
179
+ });
180
+ return (_ctx, _cache) => {
181
+ const _component_svg_icon = vue.resolveComponent("svg-icon");
182
+ return vue.openBlock(), vue.createElementBlock(
183
+ "div",
184
+ {
185
+ class: "w-full flex flex-col",
186
+ style: vue.normalizeStyle({ height: `${__props.treeHeight}px` })
187
+ },
188
+ [
189
+ __props.searchType === 1 ? (vue.openBlock(), vue.createElementBlock("div", {
190
+ key: 0,
191
+ class: "centerBox p-[10px]"
192
+ }, [
193
+ vue.createVNode(vue.unref(elementPlus.ElTooltip), {
194
+ content: __props.placeholder,
195
+ "show-after": 500
196
+ }, {
197
+ default: vue.withCtx(() => [
198
+ vue.createElementVNode("div", { class: "search_lightColor flex min-w-full z-[3]" }, [
199
+ vue.createVNode(vue.unref(elementPlus.ElInput), {
200
+ size: "small",
201
+ clearable: "",
202
+ class: "flex-grow w-0",
203
+ onClear: ($event) => vue.unref(refreshData)(),
204
+ onKeyup: vue.withKeys(($event) => vue.unref(refreshData)(), ["enter"]),
205
+ modelValue: vue.unref(filterValue),
206
+ "onUpdate:modelValue": ($event) => vue.isRef(filterValue) ? filterValue.value = $event : null,
207
+ placeholder: __props.placeholder
208
+ }, null, 8, ["onClear", "onKeyup", "modelValue", "onUpdate:modelValue", "placeholder"]),
209
+ vue.createElementVNode("div", {
210
+ class: "searchBox flex-shrink-0",
211
+ onClick: ($event) => vue.unref(refreshData)()
212
+ }, [
213
+ vue.createVNode(vue.unref(index$1.AppIcon), {
214
+ "svg-name": "search",
215
+ "class-name": "w-[16px] h-[16px]"
216
+ })
217
+ ], 8, ["onClick"])
218
+ ])
219
+ ]),
220
+ _: 1
221
+ /* STABLE */
222
+ }, 8, ["content"])
223
+ ])) : __props.searchType === 2 ? (vue.openBlock(), vue.createElementBlock("div", {
224
+ key: 1,
225
+ class: "centerBox flex-col p-[10px]"
226
+ }, [
227
+ vue.createVNode(vue.unref(elementPlus.ElTooltip), {
228
+ class: "item",
229
+ effect: "dark",
230
+ "show-after": 500,
231
+ content: vue.unref(getInputPlaceholder),
232
+ placement: "bottom-start"
233
+ }, {
234
+ default: vue.withCtx(() => [
235
+ vue.createElementVNode("div", { class: "flex search_lightColor w-full" }, [
236
+ vue.createElementVNode("div", { class: "flex flex-grow w-0" }, [
237
+ vue.createVNode(vue.unref(elementPlus.ElSelect), {
238
+ class: "!w-[37%] box-border rounded-[6px] flex-shrink-0",
239
+ modelValue: vue.unref(selectFilterType),
240
+ "onUpdate:modelValue": ($event) => vue.isRef(selectFilterType) ? selectFilterType.value = $event : null,
241
+ onChange: vue.unref(onChange)
242
+ }, {
243
+ default: vue.withCtx(() => [
244
+ (vue.openBlock(true), vue.createElementBlock(
245
+ vue.Fragment,
246
+ null,
247
+ vue.renderList(vue.unref(selectFilterList), (item, index) => {
248
+ return vue.openBlock(), vue.createBlock(vue.unref(elementPlus.ElOption), {
249
+ key: `${index}_selectFilterList`,
250
+ label: item.label,
251
+ value: item.value
252
+ }, null, 8, ["label", "value"]);
253
+ }),
254
+ 128
255
+ /* KEYED_FRAGMENT */
256
+ ))
257
+ ]),
258
+ _: 1
259
+ /* STABLE */
260
+ }, 8, ["modelValue", "onUpdate:modelValue", "onChange"]),
261
+ vue.createVNode(vue.unref(elementPlus.ElInput), {
262
+ size: "small",
263
+ clearable: "",
264
+ class: "box-border rounded-[6px] ml-[4px] border border-border",
265
+ onClear: ($event) => vue.unref(refreshData)(),
266
+ onKeyup: vue.withKeys(($event) => vue.unref(refreshData)(), ["enter"]),
267
+ modelValue: vue.unref(filterValue),
268
+ "onUpdate:modelValue": ($event) => vue.isRef(filterValue) ? filterValue.value = $event : null,
269
+ placeholder: vue.unref(getInputPlaceholder)
270
+ }, null, 8, ["onClear", "onKeyup", "modelValue", "onUpdate:modelValue", "placeholder"])
271
+ ]),
272
+ vue.createElementVNode("div", {
273
+ class: "searchBox centerBox flex-shrink-0 flex ml-1",
274
+ onClick: ($event) => vue.unref(refreshData)()
275
+ }, [
276
+ vue.createVNode(_component_svg_icon, {
277
+ "svg-name": "search",
278
+ className: "svgBox"
279
+ })
280
+ ], 8, ["onClick"])
281
+ ])
282
+ ]),
283
+ _: 1
284
+ /* STABLE */
285
+ }, 8, ["content"])
286
+ ])) : vue.createCommentVNode("v-if", true),
287
+ vue.renderSlot(_ctx.$slots, "input-bottom-bottom"),
288
+ vue.createElementVNode(
289
+ "div",
290
+ {
291
+ ref_key: "treeRef",
292
+ ref: treeRef,
293
+ style: { "width": "100%" },
294
+ class: "flex-grow h-0 w-full"
295
+ },
296
+ null,
297
+ 512
298
+ /* NEED_PATCH */
299
+ )
300
+ ],
301
+ 4
302
+ /* STYLE */
303
+ );
304
+ };
305
+ }
306
+ });
307
+
308
+ exports.default = _sfc_main;
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var appTree = require('./appTree.vue.js');
6
+ var handler = require('../../utils/handler.js');
7
+
8
+ const AppTree = handler.withInstall(appTree.default);
9
+
10
+ exports.AppTree = AppTree;
11
+ exports.default = AppTree;