smart-web-ui 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/BuildingList.js +8 -0
  2. package/dist/CategoryPieChart.js +435 -0
  3. package/dist/ChartModel.js +46 -0
  4. package/dist/ChartTable.js +162 -0
  5. package/dist/CircularPieChart.js +314 -0
  6. package/dist/CloseButtonA.js +39 -0
  7. package/dist/ColumnDiagram.js +352 -0
  8. package/dist/DataColumnDiagram.js +275 -0
  9. package/dist/DatePicker.js +142 -0
  10. package/dist/DateTimePicker.js +146 -0
  11. package/dist/DateYearPicker.js +152 -0
  12. package/dist/DayTimerShaft.js +894 -0
  13. package/dist/DoubleColumnDiagram.js +360 -0
  14. package/dist/DoubleLineChart.js +410 -0
  15. package/dist/DoubleStraightLineChart.js +405 -0
  16. package/dist/EffectLoading.js +15 -0
  17. package/dist/GradientCircularPieChart.js +372 -0
  18. package/dist/GradientPieChart.js +501 -0
  19. package/dist/HikPlayer.js +10 -0
  20. package/dist/ImaginaryAndRealLineChart.js +405 -0
  21. package/dist/InfiniteScrollingTable.js +2150 -0
  22. package/dist/JessibucaPlayer.js +181 -0
  23. package/dist/LineChart.js +279 -0
  24. package/dist/MenuOne.js +75 -0
  25. package/dist/MultiDataColumnDiagram.js +398 -0
  26. package/dist/MultigraphChart.js +392 -0
  27. package/dist/MultitermBorderColumnDiagram.js +384 -0
  28. package/dist/MultitermColumnDiagram.js +359 -0
  29. package/dist/MyButton.js +8 -0
  30. package/dist/MyInput.js +42 -0
  31. package/dist/OnlinePieChart.js +365 -0
  32. package/dist/PantiltControl.js +147 -0
  33. package/dist/PictorialChart.js +205 -0
  34. package/dist/PieChart.js +252 -0
  35. package/dist/PieChartLegendCustom.js +251 -0
  36. package/dist/PieChartOne.js +438 -0
  37. package/dist/PopupFrame.js +131 -0
  38. package/dist/RangTimePicker.js +160 -0
  39. package/dist/RangePicker.js +156 -0
  40. package/dist/SingleLineChart.js +405 -0
  41. package/dist/SplitPie.js +242 -0
  42. package/dist/SplitPieChart.js +294 -0
  43. package/dist/StacketColumnDiagram.js +345 -0
  44. package/dist/TechnologyBlueFrameworkOne.js +183 -0
  45. package/dist/TimerShaft.js +229 -0
  46. package/dist/ToroidalPieChart.js +318 -0
  47. package/dist/WordCloudOne.js +138 -0
  48. package/dist/WordCloudTwo.js +157 -0
  49. package/dist/chunks/BuildingList-CU-EXKgo.js +126 -0
  50. package/dist/chunks/HikPlayer-DKfQRkh6.js +422 -0
  51. package/dist/chunks/MyButton-DvqgvXGG.js +36 -0
  52. package/dist/chunks/_commonjsHelpers-C6fGbg64.js +6 -0
  53. package/dist/chunks/_plugin-vue_export-helper-CHgC5LLL.js +9 -0
  54. package/dist/chunks/dayjs.min-CQFNnJKC.js +285 -0
  55. package/dist/chunks/debounce-DmrysiyS.js +84 -0
  56. package/dist/chunks/index-CBkwld9S.js +43886 -0
  57. package/dist/chunks/index-CYrEZgNC.js +334 -0
  58. package/dist/chunks/isObject-Bhos3v62.js +33 -0
  59. package/dist/chunks/merge-H4ZkNr1T.js +487 -0
  60. package/dist/chunks/wordCloud-uiqgdIRk.js +737 -0
  61. package/dist/chunks/zh_CN-BUEgxmeh.js +79 -0
  62. package/dist/css/BuildingList-Bdnl0gBJ.css +1 -0
  63. package/dist/css/CategoryPieChart-DBMhOWSp.css +1 -0
  64. package/dist/css/ChartModel-Dv4h1lb5.css +1 -0
  65. package/dist/css/ChartTable-Cr0oTeRE.css +1 -0
  66. package/dist/css/CircularPieChart-C3BGd8fm.css +1 -0
  67. package/dist/css/CloseButtonA-DY2NFd49.css +1 -0
  68. package/dist/css/ColumnDiagram-Dis9ikD8.css +1 -0
  69. package/dist/css/DataColumnDiagram-BT2JWzYV.css +1 -0
  70. package/dist/css/DatePicker-BcnVF2a0.css +1 -0
  71. package/dist/css/DateTimePicker-ogqIcJbR.css +1 -0
  72. package/dist/css/DateYearPicker-Cxi6LOU5.css +1 -0
  73. package/dist/css/DayTimerShaft-CgF_vvOC.css +1 -0
  74. package/dist/css/DoubleColumnDiagram-BxutsIuM.css +1 -0
  75. package/dist/css/DoubleLineChart-BDAn7Vm_.css +1 -0
  76. package/dist/css/DoubleStraightLineChart-DIRVxSDN.css +1 -0
  77. package/dist/css/EffectLoading-Ctm_V9PA.css +1 -0
  78. package/dist/css/GradientCircularPieChart-DwvudWRO.css +1 -0
  79. package/dist/css/GradientPieChart-BIbCGRqo.css +1 -0
  80. package/dist/css/HikPlayer-CZ3Esf6X.css +1 -0
  81. package/dist/css/ImaginaryAndRealLineChart-DM6nwp5j.css +1 -0
  82. package/dist/css/InfiniteScrollingTable-DI-gbfBL.css +1 -0
  83. package/dist/css/JessibucaPlayer-DYHP4jB_.css +1 -0
  84. package/dist/css/LineChart-BMK43A6-.css +1 -0
  85. package/dist/css/MenuOne-DZagmMAX.css +1 -0
  86. package/dist/css/MultiDataColumnDiagram-D1yx69tf.css +1 -0
  87. package/dist/css/MultigraphChart-C4dh2No_.css +1 -0
  88. package/dist/css/MultitermBorderColumnDiagram-DAn4G2De.css +1 -0
  89. package/dist/css/MultitermColumnDiagram-CF0BvPJO.css +1 -0
  90. package/dist/css/MyButton-CE8oLA-0.css +1 -0
  91. package/dist/css/MyInput-CauB72eE.css +1 -0
  92. package/dist/css/OnlinePieChart-DjGjF_9i.css +1 -0
  93. package/dist/css/PantiltControl-DS0BWsLg.css +1 -0
  94. package/dist/css/PictorialChart-D_NmyxMl.css +1 -0
  95. package/dist/css/PieChart-ijJKQrDc.css +1 -0
  96. package/dist/css/PieChartLegendCustom-BIQtqA8m.css +1 -0
  97. package/dist/css/PieChartOne-D1gY-q_Q.css +1 -0
  98. package/dist/css/PopupFrame-BuPG741n.css +1 -0
  99. package/dist/css/RangTimePicker-BhS_Fhaj.css +1 -0
  100. package/dist/css/RangePicker-Cmdpil97.css +1 -0
  101. package/dist/css/SingleLineChart-YXl29ldj.css +1 -0
  102. package/dist/css/SplitPie-vGvTEPG-.css +1 -0
  103. package/dist/css/SplitPieChart-yTrBBQxd.css +1 -0
  104. package/dist/css/StacketColumnDiagram-BvMIqlC_.css +1 -0
  105. package/dist/css/TechnologyBlueFrameworkOne-CMF1mCbl.css +1 -0
  106. package/dist/css/TimerShaft-LaGF129n.css +1 -0
  107. package/dist/css/ToroidalPieChart-CcfTDUUR.css +1 -0
  108. package/dist/css/WordCloudOne-CsMA5RxS.css +1 -0
  109. package/dist/css/WordCloudTwo-LSvh51aP.css +1 -0
  110. package/dist/css/index-jBItPHyv.css +1 -0
  111. package/dist/favicon.svg +1 -0
  112. package/dist/index.js +151 -0
  113. package/package.json +51 -50
  114. package/dist/assets/fonts/D-DIN.otf +0 -0
  115. package/dist/assets/fonts/PingFangSC.woff2 +0 -0
  116. package/dist/assets/fonts/SourceHanSansCN-Regular.woff +0 -0
  117. package/dist/assets/fonts/ysbth.woff +0 -0
  118. package/dist/smart-web-ui.css +0 -1
  119. package/dist/smart-web-ui.es.js +0 -67
  120. package/dist/smart-web-ui.umd.js +0 -1
@@ -0,0 +1,398 @@
1
+ import { ref as w, computed as x, watch as S, onMounted as b, onBeforeUnmount as T, openBlock as z, createElementBlock as k, mergeProps as F, nextTick as D } from "vue";
2
+ import { L as N, i as B } from "./chunks/index-CBkwld9S.js";
3
+ import { _ as $ } from "./chunks/_plugin-vue_export-helper-CHgC5LLL.js";
4
+ import { m as M } from "./chunks/merge-H4ZkNr1T.js";
5
+ const I = {
6
+ __name: "MultiDataColumnDiagram",
7
+ props: {
8
+ data: {
9
+ type: Array,
10
+ required: !0
11
+ },
12
+ options: {
13
+ type: Object,
14
+ default: () => ({})
15
+ },
16
+ zoomKey: {
17
+ type: String,
18
+ // 'none' | 'ctrl' | 'alt' | 'shift'
19
+ default: "ctrl"
20
+ // 默认按住 Ctrl 键缩放
21
+ },
22
+ colorData: {
23
+ type: Array,
24
+ required: !0
25
+ },
26
+ // x轴文字颜色
27
+ xNameColor: {
28
+ type: String,
29
+ default: "#fff"
30
+ },
31
+ // x轴线颜色
32
+ xlineColor: {
33
+ type: String,
34
+ default: "#526B8E"
35
+ },
36
+ // 纵轴网格线格式
37
+ xLineType: {
38
+ type: String,
39
+ default: "dashed"
40
+ //solid实线dashed虚线dotted细点画线
41
+ },
42
+ // 纵轴网格线是否显示
43
+ xLineShow: {
44
+ type: Boolean,
45
+ default: !0
46
+ },
47
+ // 网格线颜色
48
+ lineColor: {
49
+ type: String,
50
+ default: "#526B8E"
51
+ },
52
+ // Y轴单位文字颜色
53
+ yNameColor: {
54
+ type: String,
55
+ default: "#fff"
56
+ },
57
+ // 横轴网格线是否显示
58
+ yLineShow: {
59
+ type: Boolean,
60
+ default: !0
61
+ },
62
+ // 横轴网格线格式
63
+ yLineType: {
64
+ type: String,
65
+ default: "dashed"
66
+ //solid实线dashed虚线dotted细点画线
67
+ },
68
+ // Y轴名称颜色
69
+ yColor: {
70
+ type: String,
71
+ default: "#fff"
72
+ },
73
+ // 移入提示框文案样式
74
+ tooltipHtml: {
75
+ type: Function,
76
+ default: function(o) {
77
+ let e = "";
78
+ return e = `
79
+ <div>${o[0].name}</div>
80
+ <div>${o[0].marker} ${o[0].seriesName}: ${o[0].value}</div>
81
+ <div>${o[1].marker} ${o[1].seriesName}: ${o[1].value}</div>
82
+ <div>${o[2].marker} ${o[2].seriesName}: ${o[2].value}</div>
83
+ <div>${o[3].marker} ${o[3].seriesName}: ${o[3].value}%</div>
84
+ `, e;
85
+ }
86
+ },
87
+ // 移入提示框背景颜色
88
+ tooltipBgColor: {
89
+ type: String,
90
+ default: "rgba(1, 13, 19, 0.5)"
91
+ },
92
+ // 移入提示框边框颜色
93
+ tooltipBorderColor: {
94
+ type: String,
95
+ default: "#ffffff40"
96
+ },
97
+ // 移入提示框文字颜色
98
+ tooltipTextColor: {
99
+ type: String,
100
+ default: "#ffffff"
101
+ },
102
+ // 移入提示框文字大小
103
+ tooltipTextFontSize: {
104
+ type: Number,
105
+ default: 13
106
+ },
107
+ // legend文字颜色
108
+ legendTextColor: {
109
+ type: String,
110
+ default: "#fff"
111
+ },
112
+ // legend文字大小
113
+ legendTextFontSize: {
114
+ type: Number,
115
+ default: 12
116
+ },
117
+ // legend文字显示状态
118
+ legendItemShow: {
119
+ type: Boolean,
120
+ default: !0
121
+ },
122
+ // legend块的宽度
123
+ legendItemWidth: {
124
+ type: Number,
125
+ default: 22
126
+ },
127
+ // legend块的高度
128
+ legendItemHeight: {
129
+ type: Number,
130
+ default: 6
131
+ },
132
+ // x轴文字长度
133
+ xTextLength: {
134
+ type: Number,
135
+ default: 3
136
+ }
137
+ },
138
+ setup(o) {
139
+ const e = o, l = w(null);
140
+ let n = null;
141
+ const s = e.data, p = [...new Set(s.map((t) => t.axis))], d = s.reduce((t, r) => {
142
+ const i = t.find((a) => a.name === r.name);
143
+ return i ? i.data.push(parseInt(r.data)) : t.push({ name: r.name, type: r.type, data: [parseInt(r.data)] }), t;
144
+ }, []).map((t) => ({
145
+ name: t.name,
146
+ type: t.type,
147
+ data: p.map((r) => {
148
+ const i = s.find(
149
+ (a) => a.axis === r && a.name === t.name
150
+ );
151
+ return i ? parseInt(i.data) : 0;
152
+ })
153
+ })), f = () => {
154
+ const t = "0123456789ABCDEF";
155
+ let r = "#";
156
+ for (let i = 0; i < 6; i++)
157
+ r += t[Math.floor(Math.random() * 16)];
158
+ return r;
159
+ }, v = x(() => ({
160
+ // 网格配置,设置图表上下左右的边距
161
+ grid: {
162
+ top: 30,
163
+ bottom: 30,
164
+ left: 40,
165
+ right: 20
166
+ },
167
+ // 提示框配置,当鼠标悬停在图表上时显示的信息
168
+ tooltip: {
169
+ trigger: "axis",
170
+ // 触发类型为坐标轴
171
+ formatter: e.tooltipHtml,
172
+ backgroundColor: e.tooltipBgColor,
173
+ borderColor: e.tooltipBorderColor,
174
+ textStyle: {
175
+ color: e.tooltipTextColor,
176
+ fontSize: e.tooltipTextFontSize,
177
+ fontFamily: "PingFang SC"
178
+ }
179
+ },
180
+ // 图例配置,显示图表中不同系列的名称和颜色
181
+ legend: {
182
+ show: e.legendItemShow,
183
+ right: "5%",
184
+ // 图例相对于右侧的位置
185
+ itemWidth: e.legendItemWidth,
186
+ itemHeight: e.legendItemHeight,
187
+ textStyle: {
188
+ color: e.legendTextColor,
189
+ fontSize: e.legendTextFontSize,
190
+ fontFamily: "PingFang SC"
191
+ },
192
+ // 过滤掉 type 为 line 的图例项
193
+ data: d.filter((t) => t.type !== "line").map((t) => t.name)
194
+ },
195
+ // x 轴配置
196
+ xAxis: [
197
+ {
198
+ type: "category",
199
+ data: p,
200
+ axisLabel: {
201
+ fontSize: 12,
202
+ color: e.xNameColor,
203
+ fontFamily: "PingFang SC",
204
+ // interval: 0,
205
+ formatter: function(t) {
206
+ return t.length > e.xTextLength ? t.slice(0, e.xTextLength) + "..." : t;
207
+ }
208
+ },
209
+ axisLine: {
210
+ show: !0,
211
+ lineStyle: {
212
+ color: e.xlineColor,
213
+ type: e.xLineType
214
+ // 虚线
215
+ }
216
+ },
217
+ axisTick: {
218
+ show: !1
219
+ },
220
+ splitLine: {
221
+ show: e.xLineShow,
222
+ // 显示网格线
223
+ lineStyle: {
224
+ type: e.xLineType,
225
+ // 虚线
226
+ color: e.lineColor
227
+ // 蓝色
228
+ }
229
+ }
230
+ }
231
+ ],
232
+ // y 轴配置
233
+ yAxis: [
234
+ {
235
+ type: "value",
236
+ name: "(人)",
237
+ nameTextStyle: {
238
+ color: e.yNameColor,
239
+ fontSize: 12,
240
+ fontFamily: "PingFang SC"
241
+ },
242
+ axisLine: {
243
+ show: e.yLineShow,
244
+ // 显示网格线
245
+ lineStyle: {
246
+ type: e.yLineType,
247
+ // 虚线
248
+ color: e.lineColor
249
+ // 蓝色
250
+ }
251
+ },
252
+ axisTick: {
253
+ show: !1
254
+ },
255
+ splitLine: {
256
+ show: e.yLineShow,
257
+ // 显示网格线
258
+ lineStyle: {
259
+ type: e.yLineType,
260
+ // 虚线
261
+ color: e.lineColor
262
+ // 蓝色
263
+ }
264
+ },
265
+ axisLabel: {
266
+ formatter: "{value}",
267
+ textStyle: {
268
+ fontSize: 12,
269
+ color: e.yColor,
270
+ fontFamily: "PingFang SC"
271
+ }
272
+ }
273
+ },
274
+ {
275
+ type: "value",
276
+ axisLabel: {
277
+ show: !1
278
+ },
279
+ axisLine: {
280
+ show: !1
281
+ },
282
+ axisTick: {
283
+ show: !1
284
+ },
285
+ splitLine: {
286
+ show: !1
287
+ }
288
+ }
289
+ ],
290
+ // 数据系列配置
291
+ series: d.map(({ name: t, type: r, data: i }, a) => {
292
+ var g, c, h;
293
+ if (r === "bar")
294
+ return {
295
+ name: t,
296
+ type: "bar",
297
+ barWidth: 6,
298
+ barGap: "90%",
299
+ barCategoryGap: "10%",
300
+ itemStyle: {
301
+ barBorderRadius: 4,
302
+ color: new N(0, 0, 0, 1, [
303
+ {
304
+ offset: 0,
305
+ color: ((g = e.colorData[a]) == null ? void 0 : g.dark) || f()
306
+ },
307
+ {
308
+ offset: 1,
309
+ color: ((c = e.colorData[a]) == null ? void 0 : c.light) || f()
310
+ }
311
+ ])
312
+ },
313
+ data: i
314
+ };
315
+ if (r === "line")
316
+ return {
317
+ name: t,
318
+ type: "line",
319
+ yAxisIndex: 1,
320
+ showSymbol: !1,
321
+ smooth: !0,
322
+ lineStyle: {
323
+ color: ((h = e.colorData[a]) == null ? void 0 : h.dark) || f()
324
+ },
325
+ data: i
326
+ };
327
+ }),
328
+ // 数据缩放配置
329
+ dataZoom: [
330
+ {
331
+ type: "inside",
332
+ // 内置型数据缩放组件
333
+ xAxisIndex: 0,
334
+ // 控制第一个 x 轴
335
+ // 根据 zoomKey 的值设置是否需要按键触发缩放
336
+ zoomOnMouseWheel: e.zoomKey === "none" ? !0 : e.zoomKey,
337
+ moveOnMouseMove: !0,
338
+ // 允许鼠标拖动平移
339
+ moveOnMouseWheel: !0,
340
+ // 允许鼠标滚轮平移
341
+ preventDefaultMouseMove: !1,
342
+ // 允许默认滚动行为
343
+ throttle: 50,
344
+ // 操作节流时间
345
+ start: 0,
346
+ end: (() => {
347
+ const t = e.data ? e.data.length : 0;
348
+ return t > 30 ? t / 1.7 : t > 23 ? t / 1.5 : t > 13 ? 50 : t > 7 ? 70 : 100;
349
+ })()
350
+ // maxSpan: 80,
351
+ // minSpan: 10,
352
+ // maxValueSpan: 3, // 最大缩放范围
353
+ // minValueSpan: 3, // 最小缩放范围
354
+ }
355
+ ],
356
+ animation: !0
357
+ // 禁用动画提升性能
358
+ })), m = x(
359
+ () => M({}, v.value, e.options)
360
+ ), L = () => {
361
+ l.value && (n = B(
362
+ l.value,
363
+ {},
364
+ {
365
+ renderer: "svg"
366
+ }
367
+ ), u(), n.dispatchAction({
368
+ type: "takeGlobalCursor",
369
+ key: "dataZoomSelect",
370
+ dataZoomSelectActive: !0
371
+ }));
372
+ }, u = () => {
373
+ n && (n.setOption(m.value, !0), D(() => n.resize()));
374
+ }, y = () => {
375
+ n == null || n.resize({ animation: { duration: 300 } });
376
+ };
377
+ return S(
378
+ () => e.data,
379
+ (t, r) => {
380
+ JSON.stringify(t) !== JSON.stringify(r) && u();
381
+ },
382
+ { deep: !0 }
383
+ ), S(m, u), b(() => {
384
+ L(), window.addEventListener("resize", y);
385
+ }), T(() => {
386
+ window.removeEventListener("resize", y), n == null || n.dispose(), n = null;
387
+ }), (t, r) => (z(), k("div", F({
388
+ ref_key: "chartContainer",
389
+ ref: l
390
+ }, t.$attrs, { class: "echarts-container" }), null, 16));
391
+ }
392
+ }, C = /* @__PURE__ */ $(I, [["__scopeId", "data-v-1912f93d"]]);
393
+ C.install = (o) => {
394
+ o.component("MultiDataColumnDiagram", C);
395
+ };
396
+ export {
397
+ C as default
398
+ };