@ecan-bi/datav 1.0.41 → 1.0.42

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 (50) hide show
  1. package/dist/index.es.js +675 -135
  2. package/dist/index.es.js.map +1 -1
  3. package/dist/index.umd.js +674 -134
  4. package/dist/index.umd.js.map +1 -1
  5. package/dist/style.css +132 -72
  6. package/package.json +1 -1
  7. package/types/_utils/constant.d.ts +2 -1
  8. package/types/_utils/hooks/index.d.ts +1 -0
  9. package/types/_utils/hooks/useIndicatorData.d.ts +4 -0
  10. package/types/container/border/Border.vue.d.ts +54 -54
  11. package/types/container/border/props.d.ts +54 -54
  12. package/types/container/modal/Modal.vue.d.ts +1 -1
  13. package/types/container/modal/index.d.ts +1 -1
  14. package/types/control/button/Button.vue.d.ts +72 -0
  15. package/types/control/button/index.d.ts +72 -0
  16. package/types/control/button/props.d.ts +84 -44
  17. package/types/control/date-picker/props.d.ts +52 -52
  18. package/types/control/input/props.d.ts +48 -48
  19. package/types/control/range-picker/RangePicker.vue.d.ts +52 -52
  20. package/types/control/range-picker/props.d.ts +52 -52
  21. package/types/control/select/Select.vue.d.ts +50 -50
  22. package/types/control/select/props.d.ts +50 -50
  23. package/types/graph/bar/Bar.vue.d.ts +128 -128
  24. package/types/graph/bar/index.d.ts +128 -128
  25. package/types/graph/bar/props.d.ts +65 -65
  26. package/types/graph/combo-graph/ComboGraph.vue.d.ts +155 -0
  27. package/types/graph/combo-graph/index.d.ts +155 -0
  28. package/types/graph/combo-graph/props.d.ts +72 -0
  29. package/types/graph/custom-graph/props.d.ts +48 -48
  30. package/types/graph/line/Line.vue.d.ts +155 -0
  31. package/types/graph/line/index.d.ts +155 -0
  32. package/types/graph/line/props.d.ts +72 -0
  33. package/types/graph/pie/Pie.vue.d.ts +155 -0
  34. package/types/graph/pie/index.d.ts +155 -0
  35. package/types/graph/pie/props.d.ts +72 -0
  36. package/types/graph/scatter/Scatter.vue.d.ts +155 -0
  37. package/types/graph/scatter/index.d.ts +155 -0
  38. package/types/graph/scatter/props.d.ts +72 -0
  39. package/types/map/map/props.d.ts +112 -112
  40. package/types/media/image/props.d.ts +52 -52
  41. package/types/table/table/Table.vue.d.ts +900 -79
  42. package/types/table/table/index.d.ts +899 -79
  43. package/types/table/table/props.d.ts +451 -39
  44. package/types/text/list/List.vue.d.ts +64 -64
  45. package/types/text/list/props.d.ts +64 -64
  46. package/types/text/proportion/Proportion.vue.d.ts +68 -68
  47. package/types/text/proportion/props.d.ts +68 -68
  48. package/types/text/text/Text.vue.d.ts +66 -66
  49. package/types/text/text/props.d.ts +66 -66
  50. package/types/text/time-display/props.d.ts +60 -60
package/dist/index.umd.js CHANGED
@@ -1406,10 +1406,10 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
1406
1406
  };
1407
1407
  }
1408
1408
  });
1409
- const _hoisted_1$b = { class: "spin-wrapper" };
1409
+ const _hoisted_1$9 = { class: "spin-wrapper" };
1410
1410
  function _sfc_render$p(_ctx, _cache, $props, $setup, $data, $options) {
1411
1411
  const _component_a_spin = vue.resolveComponent("a-spin");
1412
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$b, [
1412
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$9, [
1413
1413
  _ctx.spinning ? (vue.openBlock(), vue.createBlock(_component_a_spin, {
1414
1414
  key: 0,
1415
1415
  class: "spin",
@@ -1532,9 +1532,10 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
1532
1532
  const GLOBAL_CONFIG = "GLOBAL_CONFIG";
1533
1533
  const GLOBAL_MODEL = "GLOBAL_MODEL";
1534
1534
  const REQUEST_MODEL = "REQUEST_MODEL";
1535
- const UPLOAD_PATH = ((_a = window == null ? void 0 : window.config) == null ? void 0 : _a.uploadPath) || "/api";
1536
- const BASE_URL = ((_b = window == null ? void 0 : window.config) == null ? void 0 : _b.routerBaseURL) || "./";
1537
- const INDICATOR_URL = (_c = window == null ? void 0 : window.config) == null ? void 0 : _c.indicatorURL;
1535
+ const GLOBAL_TOKEN = "GLOBAL_TOKEN";
1536
+ const INDICATOR_URL = (_a = window == null ? void 0 : window.config) == null ? void 0 : _a.indicatorURL;
1537
+ const UPLOAD_PATH = ((_b = window == null ? void 0 : window.config) == null ? void 0 : _b.uploadPath) || "/api";
1538
+ const BASE_URL = ((_c = window == null ? void 0 : window.config) == null ? void 0 : _c.routerBaseURL) || "./";
1538
1539
  const useOnEvent = (props2, events) => {
1539
1540
  vue.watch(() => props2.id, (id, oldId) => {
1540
1541
  const eventBus = vue.inject(EVENT_BUS, {
@@ -1777,12 +1778,13 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
1777
1778
  const usePageUrl = (pageMode, pageId) => {
1778
1779
  const envPageUrl = `/preview?pageId=${pageId}`;
1779
1780
  const proPageUrl = `${BASE_URL}${pageId}`;
1781
+ console.log(pageMode);
1780
1782
  return pageMode === "preview" ? envPageUrl : proPageUrl;
1781
1783
  };
1782
1784
  const useVariablesInText = (text, data = {}) => {
1783
1785
  var _a2;
1784
- const config = (_a2 = window.config) != null ? _a2 : {};
1785
- data = __spreadValues(__spreadValues({}, config), data);
1786
+ const config2 = (_a2 = window.config) != null ? _a2 : {};
1787
+ data = __spreadValues(__spreadValues({}, config2), data);
1786
1788
  const variables = text.match(/\{.*?\}/g);
1787
1789
  if (variables == null || variables.length === 0)
1788
1790
  return text;
@@ -1801,20 +1803,20 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
1801
1803
  const request = axios__default["default"].create({
1802
1804
  timeout: 1e3 * 10
1803
1805
  });
1804
- request.interceptors.request.use((config) => {
1805
- return config;
1806
+ request.interceptors.request.use((config2) => {
1807
+ return config2;
1806
1808
  }, (error) => {
1807
1809
  return Promise.reject(error);
1808
1810
  });
1809
- request.interceptors.response.use((config) => {
1811
+ request.interceptors.response.use((config2) => {
1810
1812
  var _a2, _b2, _c2;
1811
- if (+((_a2 = config == null ? void 0 : config.data) == null ? void 0 : _a2.code) === 500) {
1813
+ if (+((_a2 = config2 == null ? void 0 : config2.data) == null ? void 0 : _a2.code) === 500) {
1812
1814
  antDesignVue.message.error({
1813
- content: ((_b2 = config == null ? void 0 : config.data) == null ? void 0 : _b2.msg) || ((_c2 = config == null ? void 0 : config.data) == null ? void 0 : _c2.message) || "\u670D\u52A1\u5668\u5F02\u5E38",
1815
+ content: ((_b2 = config2 == null ? void 0 : config2.data) == null ? void 0 : _b2.msg) || ((_c2 = config2 == null ? void 0 : config2.data) == null ? void 0 : _c2.message) || "\u670D\u52A1\u5668\u5F02\u5E38",
1814
1816
  key: "SERVER_ERROR"
1815
1817
  });
1816
1818
  }
1817
- return config;
1819
+ return config2;
1818
1820
  }, (error) => {
1819
1821
  if (error.message.includes("timeout")) {
1820
1822
  antDesignVue.message.error({
@@ -2188,6 +2190,207 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2188
2190
  }
2189
2191
  return formatter;
2190
2192
  };
2193
+ const useIndicatorData = (props2 = {}) => {
2194
+ const { requestToken } = vue.inject(GLOBAL_TOKEN, {
2195
+ requestToken: () => void 0
2196
+ });
2197
+ if (props2.dataType === "indicator") {
2198
+ requestToken();
2199
+ }
2200
+ const handleQueryColumn = (queryColumn = {}) => {
2201
+ const { label, name, location, show, indexCode } = queryColumn;
2202
+ return {
2203
+ label,
2204
+ columnName: name,
2205
+ location,
2206
+ show,
2207
+ calcType: "COLUMN",
2208
+ hrpIndexCode: indexCode
2209
+ };
2210
+ };
2211
+ const handleIndicator = (indicator = {}) => {
2212
+ const {
2213
+ label,
2214
+ name,
2215
+ location,
2216
+ show,
2217
+ indexCode,
2218
+ calcType = "COLUMN",
2219
+ builtInFormula,
2220
+ builtInValueSource,
2221
+ builtInCalcWay,
2222
+ formula
2223
+ } = indicator;
2224
+ return {
2225
+ label,
2226
+ columnName: name,
2227
+ location,
2228
+ show,
2229
+ calcType,
2230
+ hrpIndexCode: indexCode,
2231
+ aggregate: "SUM",
2232
+ builtInFormula,
2233
+ builtInValueSource,
2234
+ builtInCalcWay,
2235
+ formula
2236
+ };
2237
+ };
2238
+ const { getGlobalModel } = vue.inject(GLOBAL_MODEL, {
2239
+ getGlobalModel: (key) => void 0
2240
+ });
2241
+ const handleSqlConditions = (controlList = []) => {
2242
+ var _a2;
2243
+ const len = controlList.length;
2244
+ const sqlConditions = [];
2245
+ for (let i = 0; i < len; i++) {
2246
+ const control = controlList[i];
2247
+ const {
2248
+ id,
2249
+ conditionLabel,
2250
+ conditionKey,
2251
+ conditionValueType
2252
+ } = control;
2253
+ const sqlCondition = {
2254
+ rule: "NONE",
2255
+ label: conditionLabel,
2256
+ fieldName: conditionKey,
2257
+ fieldValue: "",
2258
+ valueType: conditionValueType
2259
+ };
2260
+ const model = getGlobalModel(id) || {};
2261
+ if (lowerCaseIncludes(model.type, "date")) {
2262
+ const { value, format } = model || {};
2263
+ sqlCondition.fieldValue = (_a2 = vue.unref(value)) == null ? void 0 : _a2.format(format);
2264
+ sqlCondition.dateFormat = format;
2265
+ }
2266
+ sqlConditions.push(sqlCondition);
2267
+ }
2268
+ return sqlConditions;
2269
+ };
2270
+ return async () => {
2271
+ var _a2, _b2;
2272
+ const { graphicConfig } = props2;
2273
+ const {
2274
+ source,
2275
+ dataViewId,
2276
+ plugin,
2277
+ layer,
2278
+ chartType,
2279
+ classificationList = [],
2280
+ seriesList = [],
2281
+ leftAxisList = [],
2282
+ rightAxisList = [],
2283
+ queryColumnList = [],
2284
+ indicators = [],
2285
+ controlList = [],
2286
+ dataSourceId,
2287
+ idxLibMode,
2288
+ preview = false
2289
+ } = graphicConfig || {};
2290
+ console.log("classificationList", classificationList);
2291
+ console.log("seriesList", seriesList);
2292
+ console.log("leftAxisList", leftAxisList);
2293
+ console.log("rightAxisList", rightAxisList);
2294
+ console.log("indicators", indicators);
2295
+ console.log("controlList", controlList);
2296
+ let classification;
2297
+ if (Array.isArray(classificationList) && classificationList.length > 0) {
2298
+ const len = classificationList.length;
2299
+ for (let i = 0; i < len; i++) {
2300
+ const item = classificationList[i] || {};
2301
+ const { label = "", name = "", show = false, sort, customGroup } = item;
2302
+ if (show) {
2303
+ classification = {
2304
+ label,
2305
+ columnName: name,
2306
+ show,
2307
+ sort,
2308
+ customGroup
2309
+ };
2310
+ break;
2311
+ }
2312
+ }
2313
+ }
2314
+ let series;
2315
+ if (Array.isArray(seriesList) && seriesList.length > 0) {
2316
+ const len = seriesList.length;
2317
+ for (let i = 0; i < len; i++) {
2318
+ const item = seriesList[i] || {};
2319
+ const { label = "", name = "", show = false, sort, customGroup } = item;
2320
+ if (show) {
2321
+ series = {
2322
+ label,
2323
+ columnName: name,
2324
+ show,
2325
+ sort,
2326
+ customGroup
2327
+ };
2328
+ break;
2329
+ }
2330
+ }
2331
+ }
2332
+ const queryColumns = [];
2333
+ queryColumnList == null ? void 0 : queryColumnList.forEach((queryColumn) => {
2334
+ queryColumns.push(handleQueryColumn(queryColumn));
2335
+ });
2336
+ const indicatorList = [];
2337
+ leftAxisList == null ? void 0 : leftAxisList.forEach((leftAxis) => {
2338
+ leftAxis.location = "LEFT";
2339
+ if (leftAxis.show) {
2340
+ indicatorList.push(handleIndicator(leftAxis));
2341
+ }
2342
+ });
2343
+ rightAxisList == null ? void 0 : rightAxisList.forEach((rightAxis) => {
2344
+ rightAxis.location = "RIGHT";
2345
+ if (rightAxis.show) {
2346
+ indicatorList.push(handleIndicator(rightAxis));
2347
+ }
2348
+ });
2349
+ indicators == null ? void 0 : indicators.forEach((indicator) => {
2350
+ indicator.location = "LEFT";
2351
+ if (indicator.show) {
2352
+ indicatorList.push(handleIndicator(indicator));
2353
+ }
2354
+ });
2355
+ if (layer === "1" && queryColumns.length === 0) {
2356
+ return;
2357
+ } else if (layer === "2" && indicatorList.length === 0) {
2358
+ return;
2359
+ }
2360
+ let sqlConditions;
2361
+ if ((graphicConfig == null ? void 0 : graphicConfig.pageMode) === "design") {
2362
+ sqlConditions = (_a2 = graphicConfig.sqlConditions) != null ? _a2 : [];
2363
+ } else {
2364
+ sqlConditions = handleSqlConditions(controlList);
2365
+ }
2366
+ try {
2367
+ const res = await request.post(`${INDICATOR_URL}/diagram`, {
2368
+ source,
2369
+ dataViewId,
2370
+ plugin,
2371
+ layer,
2372
+ chartType,
2373
+ classification,
2374
+ series,
2375
+ indicatorList,
2376
+ queryColumns,
2377
+ pageFlag: true,
2378
+ sqlConditions,
2379
+ dataSourceId,
2380
+ idxLibMode,
2381
+ preview
2382
+ }, {
2383
+ headers: {
2384
+ Authentication: (_b2 = window == null ? void 0 : window.config) == null ? void 0 : _b2.indicatorToken,
2385
+ operateContext: "ygt"
2386
+ }
2387
+ });
2388
+ return res;
2389
+ } catch (e) {
2390
+ console.error(e);
2391
+ }
2392
+ };
2393
+ };
2191
2394
  var PageConfig_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "#container[data-v-836b53bc] {\n position: fixed;\n top: 0;\n left: 0;\n overflow: hidden;\n transform-origin: left top;\n z-index: 999;\n}\n.page-config[data-v-836b53bc] {\n position: relative;\n overflow: hidden;\n background-size: cover;\n}\n")();
2192
2395
  const _sfc_main$n = vue.defineComponent({
2193
2396
  name: "EcanPageConfig",
@@ -2283,12 +2486,12 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2283
2486
  };
2284
2487
  }
2285
2488
  });
2286
- const _hoisted_1$a = {
2489
+ const _hoisted_1$8 = {
2287
2490
  id: "container",
2288
2491
  ref: "container"
2289
2492
  };
2290
2493
  function _sfc_render$n(_ctx, _cache, $props, $setup, $data, $options) {
2291
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [
2494
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$8, [
2292
2495
  _ctx.ready ? (vue.openBlock(), vue.createElementBlock("div", {
2293
2496
  key: 0,
2294
2497
  class: "page-config",
@@ -2359,6 +2562,13 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2359
2562
  offEvent,
2360
2563
  emitEvent
2361
2564
  });
2565
+ const tokenNum = vue.ref(0);
2566
+ const requestToken = () => {
2567
+ tokenNum.value = vue.unref(tokenNum) + 1;
2568
+ };
2569
+ vue.provide(GLOBAL_TOKEN, {
2570
+ requestToken
2571
+ });
2362
2572
  const requestModel = /* @__PURE__ */ new Map();
2363
2573
  const setRequest = (requestFn = () => {
2364
2574
  }, sortNum = 0) => {
@@ -2379,11 +2589,24 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2379
2589
  });
2380
2590
  });
2381
2591
  };
2592
+ const queryUserToken = async () => {
2593
+ var _a2;
2594
+ const res = await axios__default["default"].get(`${INDICATOR_URL}/user/anonymous?username=admin`, {
2595
+ headers: {
2596
+ systemCode: "F72FC50A3D97372514A6AC33333D28FD",
2597
+ current_context: "ygt"
2598
+ }
2599
+ });
2600
+ config.indicatorToken = (_a2 = res.data.data) == null ? void 0 : _a2.token;
2601
+ };
2382
2602
  const touchRequest = async () => {
2383
2603
  const requestModelArr = Array.from(requestModel);
2384
2604
  requestModelArr.sort((a, b) => b[0] - a[0]);
2385
2605
  const len = requestModelArr.length;
2386
2606
  try {
2607
+ if (props2.pageMode !== "design" && vue.unref(tokenNum) > 0) {
2608
+ await queryUserToken();
2609
+ }
2387
2610
  for (let i = 0; i < len; i++) {
2388
2611
  const requestFnList = requestModelArr[i][1];
2389
2612
  await handleRequestFnList(requestFnList);
@@ -2405,19 +2628,20 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2405
2628
  };
2406
2629
  }
2407
2630
  });
2408
- const _hoisted_1$9 = {
2631
+ const _hoisted_1$7 = {
2409
2632
  id: "ProviderConfig",
2410
2633
  ref: "providerConfig"
2411
2634
  };
2412
2635
  function _sfc_render$m(_ctx, _cache, $props, $setup, $data, $options) {
2413
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$9, [
2636
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [
2414
2637
  vue.renderSlot(_ctx.$slots, "default")
2415
2638
  ], 512);
2416
2639
  }
2417
2640
  var ProviderConfig = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$m]]);
2418
2641
  const EcanProviderConfig = withInstall(ProviderConfig);
2419
2642
  const textProps = __spreadProps(__spreadValues({}, props), {
2420
- name: "\u57FA\u7840\u6587\u672C",
2643
+ name: "\u6587\u672C",
2644
+ keyName: "\u6587\u672C",
2421
2645
  type: "ecanText",
2422
2646
  width: "100px",
2423
2647
  height: "40px",
@@ -2435,7 +2659,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2435
2659
  });
2436
2660
  const textComponentProps = transformToComponentProps(textProps);
2437
2661
  const textEvents = ["refreshData", "click"];
2438
- var Text_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".skeleton-wrapper[data-v-04705f6f] {\n overflow: hidden;\n}\n.ecan-text[data-v-04705f6f] {\n overflow: hidden;\n display: flex;\n}\n")();
2662
+ var Text_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".skeleton-wrapper[data-v-e7487804] {\n overflow: hidden;\n}\n.ecan-text[data-v-e7487804] {\n overflow: hidden;\n display: flex;\n}\n")();
2439
2663
  const _sfc_main$l = vue.defineComponent({
2440
2664
  name: "EcanText",
2441
2665
  components: { Skeleton },
@@ -2504,7 +2728,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2504
2728
  };
2505
2729
  }
2506
2730
  });
2507
- const _hoisted_1$8 = ["innerHTML"];
2731
+ const _hoisted_1$6 = ["innerHTML"];
2508
2732
  function _sfc_render$l(_ctx, _cache, $props, $setup, $data, $options) {
2509
2733
  const _component_skeleton = vue.resolveComponent("skeleton");
2510
2734
  return _ctx.loading ? (vue.openBlock(), vue.createElementBlock("div", {
@@ -2519,9 +2743,9 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2519
2743
  style: vue.normalizeStyle(_ctx.style),
2520
2744
  innerHTML: _ctx.myText,
2521
2745
  onClick: _cache[0] || (_cache[0] = (...args) => _ctx.click && _ctx.click(...args))
2522
- }, null, 12, _hoisted_1$8));
2746
+ }, null, 12, _hoisted_1$6));
2523
2747
  }
2524
- var Text = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$l], ["__scopeId", "data-v-04705f6f"]]);
2748
+ var Text = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$l], ["__scopeId", "data-v-e7487804"]]);
2525
2749
  const EcanText = withInstall(Text);
2526
2750
  var ScrollText_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".red[data-v-0bb717eb] {\n color: red;\n}\n")();
2527
2751
  const _sfc_main$k = vue.defineComponent({
@@ -2533,9 +2757,9 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2533
2757
  };
2534
2758
  }
2535
2759
  });
2536
- const _hoisted_1$7 = { class: "red" };
2760
+ const _hoisted_1$5 = { class: "red" };
2537
2761
  function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) {
2538
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, vue.toDisplayString(_ctx.text), 1);
2762
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, vue.toDisplayString(_ctx.text), 1);
2539
2763
  }
2540
2764
  var ScrollText = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$k], ["__scopeId", "data-v-0bb717eb"]]);
2541
2765
  const EcanScrollText = withInstall(ScrollText);
@@ -2630,10 +2854,10 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2630
2854
  });
2631
2855
  const listComponentProps = transformToComponentProps(listProps);
2632
2856
  const listEvents = ["refreshData", "click"];
2633
- var List_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => `.ecan-list[data-v-766e4cb3] {
2857
+ var List_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => `.ecan-list[data-v-461dbe78] {
2634
2858
  overflow: hidden;
2635
2859
  }
2636
- .ecan-list-content[data-v-766e4cb3] {
2860
+ .ecan-list-content[data-v-461dbe78] {
2637
2861
  width: 100%;
2638
2862
  height: 100%;
2639
2863
  overflow: auto;
@@ -2641,7 +2865,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2641
2865
  align-content: flex-start;
2642
2866
  flex-wrap: wrap;
2643
2867
  }
2644
- .title[data-v-766e4cb3] {
2868
+ .title[data-v-461dbe78] {
2645
2869
  position: absolute;
2646
2870
  z-index: 9;
2647
2871
  display: flex;
@@ -2651,18 +2875,18 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2651
2875
  font-size: 16px;
2652
2876
  color: #ffffff;
2653
2877
  }
2654
- .title-inner[data-v-766e4cb3] {
2878
+ .title-inner[data-v-461dbe78] {
2655
2879
  padding-left: 28px;
2656
2880
  padding-right: 20px;
2657
2881
  flex: 1;
2658
2882
  display: flex;
2659
2883
  height: 100%;
2660
2884
  }
2661
- .title-placeholder[data-v-766e4cb3] {
2885
+ .title-placeholder[data-v-461dbe78] {
2662
2886
  width: 100%;
2663
2887
  height: 32px;
2664
2888
  }
2665
- .item[data-v-766e4cb3] {
2889
+ .item[data-v-461dbe78] {
2666
2890
  display: flex;
2667
2891
  align-items: center;
2668
2892
  height: 32px;
@@ -2672,13 +2896,13 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2672
2896
  font-size: 16px;
2673
2897
  color: #ffffff;
2674
2898
  }
2675
- .column[data-v-766e4cb3] {
2899
+ .column[data-v-461dbe78] {
2676
2900
  flex: 1;
2677
2901
  overflow: hidden;
2678
2902
  text-overflow: ellipsis;
2679
2903
  white-space: nowrap;
2680
2904
  }
2681
- .ranking[data-v-766e4cb3] {
2905
+ .ranking[data-v-461dbe78] {
2682
2906
  flex: 1;
2683
2907
  display: flex;
2684
2908
  align-items: center;
@@ -2687,28 +2911,28 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2687
2911
  text-overflow: ellipsis;
2688
2912
  white-space: nowrap;
2689
2913
  }
2690
- .icon[data-v-766e4cb3] {
2914
+ .icon[data-v-461dbe78] {
2691
2915
  width: 12px;
2692
2916
  height: 8px;
2693
2917
  background: #21BEF7;
2694
2918
  margin-right: 17px;
2695
2919
  opacity: 0.6;
2696
2920
  }
2697
- .item:nth-child(2) .icon[data-v-766e4cb3] {
2921
+ .item:nth-child(2) .icon[data-v-461dbe78] {
2698
2922
  opacity: 0.8;
2699
2923
  }
2700
- .item:first-child .icon[data-v-766e4cb3] {
2924
+ .item:first-child .icon[data-v-461dbe78] {
2701
2925
  opacity: 1;
2702
2926
  }
2703
- .sort[data-v-766e4cb3] {
2927
+ .sort[data-v-461dbe78] {
2704
2928
  font-weight: 600;
2705
2929
  }
2706
- .goUp[data-v-766e4cb3] {
2930
+ .goUp[data-v-461dbe78] {
2707
2931
  color: #FF512E;
2708
2932
  display: flex;
2709
2933
  align-items: center;
2710
2934
  }
2711
- .goUp[data-v-766e4cb3]:before {
2935
+ .goUp[data-v-461dbe78]:before {
2712
2936
  content: '';
2713
2937
  display: block;
2714
2938
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAAV1BMVEUAAAD/WzT/WjP/WDD/WzT/WzP/WzT/WzT/WzT/WjT/WzT/WDT/YED/WzT/WzT/WjT/YED/WzT/WzT/WzT/XDT/WzT/WjX/WjP/XDT/XDT/WTL/Tif/WzReH8z5AAAAHHRSTlMA8RgS9W9YHbePZyME5sVjCP7bzcCxgndOQC4GFJJgKwAAAIJJREFUKM+Nkd0OgyAMRjvqcLA53fzXvv9zaokmxq8mnsue5ACFDjiy+XyjLZ7yyK35OxN5mSFZKa2QojEIKRhrZKM0QnsMQxirmJ0kBubTIZvAtUyiFAT4JFoUIYmIotZ5xjDPfyoCAV16nMPdFir8xZ16nM//tePtXw2ODOJY0V0WqQwM2rgKrU0AAAAASUVORK5CYII=");
@@ -2718,12 +2942,12 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2718
2942
  background-size: cover;
2719
2943
  margin-right: 2px;
2720
2944
  }
2721
- .goDown[data-v-766e4cb3] {
2945
+ .goDown[data-v-461dbe78] {
2722
2946
  color: #00F7B4;
2723
2947
  display: flex;
2724
2948
  align-items: center;
2725
2949
  }
2726
- .goDown[data-v-766e4cb3]:before {
2950
+ .goDown[data-v-461dbe78]:before {
2727
2951
  content: '';
2728
2952
  display: block;
2729
2953
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAAaVBMVEUAAAAA+b0A+LwA+L0A/6AA+LwA+L0A+L0A+b0A+LwA/78A+LwA+L0A+LwA+LwA+b0A+LsA970A+LwA+r0A9boA/7YA+LwA+LwA+LwA+L0A97wA+bwA970A970A+bwA+bwA+LsA9rkA+LzcCa+5AAAAInRSTlMAd/uVAvjYxCsiDvPp37F7aWBMNBgK7s/NvKidh4NXUEcdp9A1SAAAAI5JREFUKM+l0UcOwzAMRFGqWZbcW3rl/Q8ZhUGKMN7lLedD4EKUi/3BEIrGsQu432pmPuF+1WnfRNjLipMz7HbHT3cIF9n3BLYSerzAooSgZNcWQiuhIdBI8JQblNISCqXU/BNG/mqzJ+az13MWluIdRspNmgV+Rvc6vkCwPu1uIhQq5o7WDOwtrToG+ssDeh4QPgfT2X0AAAAASUVORK5CYII=");
@@ -2733,7 +2957,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2733
2957
  background-size: cover;
2734
2958
  margin-right: 2px;
2735
2959
  }
2736
- .empty[data-v-766e4cb3] {
2960
+ .empty[data-v-461dbe78] {
2737
2961
  text-align: center;
2738
2962
  margin-top: 15%;
2739
2963
  }
@@ -2822,8 +3046,8 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2822
3046
  };
2823
3047
  }
2824
3048
  });
2825
- const _withScopeId$1 = (n) => (vue.pushScopeId("data-v-766e4cb3"), n = n(), vue.popScopeId(), n);
2826
- const _hoisted_1$6 = {
3049
+ const _withScopeId$1 = (n) => (vue.pushScopeId("data-v-461dbe78"), n = n(), vue.popScopeId(), n);
3050
+ const _hoisted_1$4 = {
2827
3051
  key: 0,
2828
3052
  class: "title"
2829
3053
  };
@@ -2853,7 +3077,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2853
3077
  }, [
2854
3078
  vue.createVNode(_component_skeleton, { loading: _ctx.loading }, {
2855
3079
  default: vue.withCtx(() => [
2856
- _ctx.useTitle ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [
3080
+ _ctx.useTitle ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$4, [
2857
3081
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.columnCount, (count) => {
2858
3082
  return vue.openBlock(), vue.createElementBlock("div", {
2859
3083
  class: "title-inner",
@@ -2922,7 +3146,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2922
3146
  }, 8, ["loading"])
2923
3147
  ], 4);
2924
3148
  }
2925
- var List = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$i], ["__scopeId", "data-v-766e4cb3"]]);
3149
+ var List = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$i], ["__scopeId", "data-v-461dbe78"]]);
2926
3150
  const EcanList = withInstall(List);
2927
3151
  const proportionProps = __spreadProps(__spreadValues({}, props), {
2928
3152
  name: "\u5360\u6BD4\u56FE",
@@ -2947,7 +3171,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
2947
3171
  });
2948
3172
  const proportionComponentProps = transformToComponentProps(proportionProps);
2949
3173
  const proportionEvents = ["refreshData", "click"];
2950
- var Proportion_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".ecan-proportion[data-v-1a10ace9] {\n overflow: hidden;\n}\n.progress[data-v-1a10ace9] {\n width: 100%;\n height: 100%;\n}\n.format[data-v-1a10ace9] {\n margin: 0 auto;\n}\n")();
3174
+ var Proportion_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".ecan-proportion[data-v-02b500fa] {\n overflow: hidden;\n}\n.progress[data-v-02b500fa] {\n width: 100%;\n height: 100%;\n}\n.format[data-v-02b500fa] {\n margin: 0 auto;\n}\n")();
2951
3175
  const _sfc_main$h = vue.defineComponent({
2952
3176
  name: "EcanProportion",
2953
3177
  components: {
@@ -3080,7 +3304,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3080
3304
  }, 8, ["percent", "width", "type", "strokeColor", "strokeLinecap", "trailColor", "strokeWidth", "gapDegree", "onClick"])
3081
3305
  ], 4);
3082
3306
  }
3083
- var Proportion = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$h], ["__scopeId", "data-v-1a10ace9"]]);
3307
+ var Proportion = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$h], ["__scopeId", "data-v-02b500fa"]]);
3084
3308
  const EcanProportion = withInstall(Proportion);
3085
3309
  const inputProps = __spreadProps(__spreadValues({}, props), {
3086
3310
  width: "200px",
@@ -3211,7 +3435,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3211
3435
  });
3212
3436
  const selectComponentProps = transformToComponentProps(selectProps);
3213
3437
  const selectEvents = ["selectChange"];
3214
- var Select_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".ecan-select[data-v-2a771bb2] .ant-select-selector {\n height: 100% !important;\n}\n.select[data-v-2a771bb2] {\n width: 100%;\n height: 100%;\n}\n")();
3438
+ var Select_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".ecan-select[data-v-d70a9a94] .ant-select-selector {\n height: 100% !important;\n}\n.select[data-v-d70a9a94] {\n width: 100%;\n height: 100%;\n}\n")();
3215
3439
  var Select_vue_vue_type_style_index_1_lang = /* @__PURE__ */ (() => "[datav-theme='light'] .ant-select:not(.ant-select-customize-input) .ant-select-selector {\n border: 1px solid #d9d9d9;\n}\n[datav-theme='light'] .ant-select-dropdown {\n color: rgba(0, 0, 0, 0.85);\n background: #ffffff;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n}\n[datav-theme='light'] .ant-empty-img-simple-g {\n stroke: #d9d9d9;\n}\n[datav-theme='light'] .ant-empty-img-simple-ellipse {\n fill: #f5f5f5;\n}\n[datav-theme='light'] .ant-empty-img-simple-path {\n fill: #f5f5f5;\n stroke: #d9d9d9;\n}\n[datav-theme='light'] .ant-empty-description {\n color: rgba(0, 0, 0, 0.25);\n}\n[datav-theme='light'] .anticon-down {\n color: #333;\n}\n[datav-theme='darkBlue'] .ant-select:not(.ant-select-customize-input) .ant-select-selector {\n border: 1px solid #1f63a3;\n background-color: #05164c;\n box-shadow: inset 0 0 10px #005efe;\n color: #ffffff;\n}\n[datav-theme='darkBlue'] .ant-select-dropdown {\n box-shadow: inset 0 0 10px #005efe;\n color: #fff;\n background-color: #05164c;\n}\n[datav-theme='darkBlue'] .ant-empty-img-simple-g {\n stroke: #69befa;\n}\n[datav-theme='darkBlue'] .ant-empty-img-simple-ellipse {\n fill-opacity: 0;\n}\n[datav-theme='darkBlue'] .ant-empty-img-simple-path {\n fill: #69befa;\n stroke: #69befa;\n}\n[datav-theme='darkBlue'] .ant-empty-description {\n color: #69befa;\n}\n[datav-theme='darkBlue'] .anticon-down {\n color: #ffffff;\n}\n[datav-theme='darkBlue'] .ant-select-item {\n color: #ffffff;\n}\n[datav-theme='darkBlue'] .ant-select-item-option-active {\n background: #1f63a3;\n}\n[datav-theme='darkBlue'] .ant-select-item-option-selected:not(.ant-select-item-option-disabled) {\n background: #1f63a3;\n}\n")();
3216
3440
  const _sfc_main$e = vue.defineComponent({
3217
3441
  name: "EcanSelect",
@@ -3282,7 +3506,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3282
3506
  }, null, 8, ["value", "options", "getPopupContainer", "field-names", "onChange"])
3283
3507
  ], 4);
3284
3508
  }
3285
- var Select = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$e], ["__scopeId", "data-v-2a771bb2"]]);
3509
+ var Select = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$e], ["__scopeId", "data-v-d70a9a94"]]);
3286
3510
  const EcanSelect = withInstall(Select);
3287
3511
  const rangePickerProps = __spreadProps(__spreadValues({}, props), {
3288
3512
  name: "\u8303\u56F4\u9009\u62E9\u5668",
@@ -3297,7 +3521,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3297
3521
  });
3298
3522
  const rangePickerComponentProps = transformToComponentProps(rangePickerProps);
3299
3523
  const rangePickerEvents = ["dateChange"];
3300
- var RangePicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".range-picker[data-v-11b582ae] {\n width: 100%;\n height: 100%;\n}\n")();
3524
+ var RangePicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".range-picker[data-v-61322f3d] {\n width: 100%;\n height: 100%;\n}\n")();
3301
3525
  var RangePicker_vue_vue_type_style_index_1_lang = /* @__PURE__ */ (() => "[datav-theme='light'] .ecan-range-picker .ant-picker {\n background-color: #ffffff;\n color: rgba(0, 0, 0, 0.85);\n border: 1px solid #d9d9d9;\n}\n[datav-theme='light'] .ecan-range-picker .ant-picker-input > input {\n color: rgba(0, 0, 0, 0.85);\n}\n[datav-theme='light'] .ecan-range-picker .anticon-calendar {\n color: #333;\n}\n[datav-theme='light'] .ecan-range-picker .anticon-close-circle {\n color: #333;\n}\n[datav-theme='light'] .ecan-range-picker .ant-picker-input > input::placeholder {\n color: #bfbfbf;\n}\n[datav-theme='light'] .ecan-range-picker .ant-picker-separator .anticon {\n color: #333;\n}\n[datav-theme='darkBlue'] .ecan-range-picker .ant-picker {\n background-color: #05164c;\n border: 1px solid #1f63a3;\n color: #fff;\n box-shadow: inset 0 0 10px #005efe;\n}\n[datav-theme='darkBlue'] .ecan-range-picker .ant-picker-input > input {\n color: #ffffff;\n}\n[datav-theme='darkBlue'] .ecan-range-picker .anticon-calendar {\n color: #ffffff;\n}\n[datav-theme='darkBlue'] .ecan-range-picker .anticon-close-circle {\n color: #333;\n}\n[datav-theme='darkBlue'] .ecan-range-picker .ant-picker-separator .anticon {\n color: #fff;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-panel {\n background: #05174e;\n border-bottom: 1px solid #69befa;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-header {\n color: #69befa;\n border-bottom: 1px solid #69befa;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-panel .ant-picker-footer {\n border-top: 1px solid #69befa;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-header button {\n color: #69befa;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-content th {\n color: #69befa;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-content td {\n color: #69befa;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-today-btn {\n color: #69befa;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-cell-disabled .ant-picker-cell-inner {\n color: #999;\n}\n[datav-theme='darkBlue'] .ecan-range-picker-dropdown .ant-picker-cell-disabled::before {\n background: #333;\n}\n")();
3302
3526
  const _sfc_main$d = vue.defineComponent({
3303
3527
  name: "EcanRangePicker",
@@ -3362,17 +3586,21 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3362
3586
  }, null, 8, ["value", "format", "picker", "locale", "getPopupContainer", "onChange"])
3363
3587
  ], 4);
3364
3588
  }
3365
- var RangePicker = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$d], ["__scopeId", "data-v-11b582ae"]]);
3589
+ var RangePicker = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$d], ["__scopeId", "data-v-61322f3d"]]);
3366
3590
  const EcanRangePicker = withInstall(RangePicker);
3367
3591
  const buttonProps = __spreadProps(__spreadValues({}, props), {
3368
3592
  width: "200px",
3369
3593
  name: "\u6309\u94AE",
3370
3594
  keyName: "\u6309\u94AE",
3371
- type: "ecanButton"
3595
+ type: "ecanButton",
3596
+ text: "\u6309\u94AE",
3597
+ mode: "default",
3598
+ danger: false,
3599
+ shape: "default"
3372
3600
  });
3373
3601
  const buttonComponentProps = transformToComponentProps(buttonProps);
3374
3602
  const buttonEvents = ["click"];
3375
- var Button_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".button[data-v-f60a3514] {\n width: 100%;\n height: 100%;\n}\n")();
3603
+ var Button_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".ecan-button .ant-btn {\n width: 100%;\n height: 100%;\n}\n")();
3376
3604
  const _sfc_main$c = vue.defineComponent({
3377
3605
  name: "EcanButton",
3378
3606
  components: {
@@ -3390,26 +3618,28 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3390
3618
  };
3391
3619
  }
3392
3620
  });
3393
- const _hoisted_1$5 = /* @__PURE__ */ vue.createTextVNode(" \u6D4B\u8BD5 ");
3394
3621
  function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
3395
3622
  const _component_a_button = vue.resolveComponent("a-button");
3396
3623
  return vue.openBlock(), vue.createElementBlock("div", {
3397
- class: "ecan-input",
3624
+ class: "ecan-button",
3398
3625
  style: vue.normalizeStyle(_ctx.style)
3399
3626
  }, [
3400
3627
  vue.createVNode(_component_a_button, {
3401
- class: "button",
3402
3628
  block: "",
3403
- onClick: _ctx.click
3629
+ onClick: _ctx.click,
3630
+ type: _ctx.mode,
3631
+ danger: _ctx.danger,
3632
+ ghost: _ctx.ghost,
3633
+ shape: _ctx.shape
3404
3634
  }, {
3405
3635
  default: vue.withCtx(() => [
3406
- _hoisted_1$5
3636
+ vue.createTextVNode(vue.toDisplayString(_ctx.text), 1)
3407
3637
  ]),
3408
3638
  _: 1
3409
- }, 8, ["onClick"])
3639
+ }, 8, ["onClick", "type", "danger", "ghost", "shape"])
3410
3640
  ], 4);
3411
3641
  }
3412
- var Button = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$c], ["__scopeId", "data-v-f60a3514"]]);
3642
+ var Button = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$c]]);
3413
3643
  const EcanButton = withInstall(Button);
3414
3644
  const tabsProps = __spreadProps(__spreadValues({}, props), {
3415
3645
  type: "ecanTabs",
@@ -3438,7 +3668,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3438
3668
  });
3439
3669
  const tabsComponentProps = transformToComponentProps(tabsProps);
3440
3670
  const tabsEvents = ["tabChange"];
3441
- var Tabs_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".ecan-tabs[data-v-2e2bded0] {\n box-sizing: border-box;\n color: #333333;\n display: flex;\n}\n.tab[data-v-2e2bded0] {\n flex: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n background-size: 100% 100%;\n background-repeat: no-repeat;\n}\n.tab[data-v-2e2bded0]:last-child {\n margin-right: 0 !important;\n}\n")();
3671
+ var Tabs_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".ecan-tabs[data-v-5aeec0ae] {\n box-sizing: border-box;\n color: #333333;\n display: flex;\n}\n.tab[data-v-5aeec0ae] {\n flex: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n background-size: 100% 100%;\n background-repeat: no-repeat;\n}\n.tab[data-v-5aeec0ae]:last-child {\n margin-right: 0 !important;\n}\n")();
3442
3672
  const _sfc_main$b = vue.defineComponent({
3443
3673
  name: "EcanTabs",
3444
3674
  props: __spreadValues({}, tabsComponentProps),
@@ -3474,7 +3704,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3474
3704
  };
3475
3705
  }
3476
3706
  });
3477
- const _hoisted_1$4 = ["onClick"];
3707
+ const _hoisted_1$3 = ["onClick"];
3478
3708
  function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
3479
3709
  return vue.openBlock(), vue.createElementBlock("div", {
3480
3710
  class: "ecan-tabs",
@@ -3491,11 +3721,11 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3491
3721
  }),
3492
3722
  key: index2,
3493
3723
  onClick: ($event) => _ctx.tabChange(tab, index2)
3494
- }, vue.toDisplayString(tab.title), 13, _hoisted_1$4);
3724
+ }, vue.toDisplayString(tab.title), 13, _hoisted_1$3);
3495
3725
  }), 128))
3496
3726
  ], 4);
3497
3727
  }
3498
- var Tabs = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$b], ["__scopeId", "data-v-2e2bded0"]]);
3728
+ var Tabs = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$b], ["__scopeId", "data-v-5aeec0ae"]]);
3499
3729
  const EcanTabs = withInstall(Tabs);
3500
3730
  const pieProps = __spreadProps(__spreadValues({}, props), {
3501
3731
  id: "",
@@ -3547,14 +3777,43 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3547
3777
  gridBottom: "10%",
3548
3778
  gridLeft: "2%",
3549
3779
  gridRight: "2%",
3550
- graphicConfig: {}
3780
+ graphicConfig: {},
3781
+ toolboxShow: false,
3782
+ toolboxOrient: "horizontal",
3783
+ toolboxItemSize: 16,
3784
+ toolboxItemGap: 8,
3785
+ toolboxLeft: "right",
3786
+ toolboxTop: "top",
3787
+ toolboxIconStyleBorderColor: "#666",
3788
+ toolboxDownloadUrl: "",
3789
+ toolboxInfoText: "\u5F53\u524D\u65E0\u8BF4\u660E\u4FE1\u606F"
3551
3790
  });
3552
3791
  const pieComponentProps = transformToComponentProps(pieProps);
3553
3792
  const pieEvents = ["click", "refreshData"];
3793
+ const useDownloadFile = async (downloadFileUrl) => {
3794
+ var _a2;
3795
+ const res = await request.post(downloadFileUrl, {}, {
3796
+ responseType: "blob"
3797
+ });
3798
+ const { data, headers } = res;
3799
+ const fileName = headers["content-disposition"].replace(/\w+;filename=(.*)/, "$1");
3800
+ const blob = new Blob([data]);
3801
+ const dom = document.createElement("a");
3802
+ const url = window.URL.createObjectURL(blob);
3803
+ dom.href = url;
3804
+ dom.download = decodeURI(fileName);
3805
+ dom.style.display = "none";
3806
+ document.body.appendChild(dom);
3807
+ dom.click();
3808
+ (_a2 = dom.parentNode) == null ? void 0 : _a2.removeChild(dom);
3809
+ window.URL.revokeObjectURL(url);
3810
+ };
3811
+ var Pie_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".full-modal .ant-modal {\n max-width: 100%;\n top: 0;\n padding-bottom: 0;\n margin: 0;\n}\n.full-modal .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n}\n.full-modal .ant-modal-body {\n flex: 1;\n}\n.full-modal .ant-modal-body {\n padding: 45px 30px 0;\n}\n")();
3554
3812
  core.use([
3555
3813
  renderers.CanvasRenderer,
3556
3814
  charts.PieChart,
3557
3815
  components$1.TitleComponent,
3816
+ components$1.ToolboxComponent,
3558
3817
  components$1.TooltipComponent,
3559
3818
  components$1.LegendComponent
3560
3819
  ]);
@@ -3563,11 +3822,16 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3563
3822
  props: __spreadValues({}, pieComponentProps),
3564
3823
  components: {
3565
3824
  Spin,
3566
- Echarts
3825
+ Echarts,
3826
+ AModal: antDesignVue.Modal
3567
3827
  },
3568
3828
  setup(props2) {
3569
3829
  const style2 = usePickComponentStyle(props2);
3570
3830
  const dataset = vue.ref([]);
3831
+ const visible = vue.ref(false);
3832
+ const hideModal = () => {
3833
+ visible.value = false;
3834
+ };
3571
3835
  const option = vue.computed(() => {
3572
3836
  let { data = [] } = vue.unref(dataset)[0] || {};
3573
3837
  if (Array.isArray(props2.colors)) {
@@ -3578,6 +3842,42 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3578
3842
  }, item));
3579
3843
  }
3580
3844
  return {
3845
+ toolbox: {
3846
+ show: props2.toolboxShow,
3847
+ left: props2.toolboxLeft,
3848
+ top: props2.toolboxTop,
3849
+ itemSize: props2.toolboxItemSize,
3850
+ itemGap: props2.toolboxItemGap,
3851
+ feature: {
3852
+ myDownload: {
3853
+ show: true,
3854
+ title: "\u6570\u636E\u4E0B\u8F7D",
3855
+ icon: "path://M502.010485 765.939573c3.773953 3.719718 8.686846 5.573949 13.596669 5.573949 0.075725 0 0.151449-0.010233 0.227174-0.011256 0.329505 0.016373 0.654916 0.050142 0.988514 0.050142 0.706081 0 1.400906-0.042979 2.087545-0.116657 4.352121-0.366344 8.607028-2.190899 11.961426-5.496178l335.053985-330.166675c7.619538-7.509021 7.709589-19.773346 0.200568-27.393907s-19.774369-7.711636-27.39493-0.201591L536.193005 706.304358 536.193005 50.019207c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 657.032164-306.881342-302.44838c-7.618515-7.509021-19.883863-7.419993-27.393907 0.199545-7.509021 7.619538-7.419993 19.884886 0.199545 27.393907L502.010485 765.939573z, M867.170139 711.020776c-10.698666 0-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 13.054317-10.620895 23.675212-23.676236 23.675212L205.182103 919.486668c-13.054317 0-23.676236-10.620895-23.676236-23.675212L181.505867 730.391962c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 34.416857 28.000728 62.416562 62.417585 62.416562l618.941638 0c34.417881 0 62.417585-27.999704 62.417585-62.416562L886.540302 730.391962C886.541325 719.693296 877.868805 711.020776 867.170139 711.020776z",
3856
+ onclick() {
3857
+ useDownloadFile(props2.toolboxDownloadUrl);
3858
+ }
3859
+ },
3860
+ myDataZoom: {
3861
+ show: true,
3862
+ title: "\u653E\u5927",
3863
+ icon: "path://M932.42 902.246667L792 761.793333A403.84 403.84 0 0 0 896 490.666667c0-223.86-181.473333-405.333333-405.333333-405.333334S85.333333 266.806667 85.333333 490.666667s181.473333 405.333333 405.333334 405.333333a403.84 403.84 0 0 0 271.126666-104l140.453334 140.453333a21.333333 21.333333 0 0 0 30.173333-30.173333zM128 490.666667c0-200.293333 162.373333-362.666667 362.666667-362.666667s362.666667 162.373333 362.666666 362.666667-162.373333 362.666667-362.666666 362.666666-362.666667-162.373333-362.666667-362.666666z m512 0a21.333333 21.333333 0 0 1-21.333333 21.333333H512v106.666667a21.333333 21.333333 0 0 1-42.666667 0V512H362.666667a21.333333 21.333333 0 0 1 0-42.666667h106.666666V362.666667a21.333333 21.333333 0 0 1 42.666667 0v106.666666h106.666667a21.333333 21.333333 0 0 1 21.333333 21.333334z",
3864
+ onclick() {
3865
+ visible.value = true;
3866
+ }
3867
+ },
3868
+ myInfo: {
3869
+ show: true,
3870
+ title: "\u8BF4\u660E\u4FE1\u606F",
3871
+ icon: "path://M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z",
3872
+ onclick() {
3873
+ antDesignVue.Modal.info({
3874
+ title: "\u8BF4\u660E\u4FE1\u606F",
3875
+ content: props2.toolboxInfoText
3876
+ });
3877
+ }
3878
+ }
3879
+ }
3880
+ },
3581
3881
  title: {
3582
3882
  text: props2.titleText,
3583
3883
  subtext: props2.titleSubtext,
@@ -3732,13 +4032,16 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3732
4032
  option,
3733
4033
  style: style2,
3734
4034
  click,
3735
- loading
4035
+ loading,
4036
+ visible,
4037
+ hideModal
3736
4038
  };
3737
4039
  }
3738
4040
  });
3739
4041
  function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
3740
4042
  const _component_echarts = vue.resolveComponent("echarts");
3741
4043
  const _component_spin = vue.resolveComponent("spin");
4044
+ const _component_a_modal = vue.resolveComponent("a-modal");
3742
4045
  return vue.openBlock(), vue.createElementBlock("div", {
3743
4046
  style: vue.normalizeStyle(_ctx.style)
3744
4047
  }, [
@@ -3751,7 +4054,28 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3751
4054
  }, null, 8, ["option", "onClick"])
3752
4055
  ]),
3753
4056
  _: 1
3754
- }, 8, ["spinning"])
4057
+ }, 8, ["spinning"]),
4058
+ vue.createVNode(_component_a_modal, {
4059
+ "wrap-class-name": "full-modal",
4060
+ width: "100%",
4061
+ visible: _ctx.visible,
4062
+ footer: null,
4063
+ onCancel: _ctx.hideModal
4064
+ }, {
4065
+ default: vue.withCtx(() => [
4066
+ vue.createVNode(_component_spin, { spinning: _ctx.loading }, {
4067
+ default: vue.withCtx(() => [
4068
+ vue.createVNode(_component_echarts, {
4069
+ option: _ctx.option,
4070
+ "update-options": { notMerge: true },
4071
+ autoresize: ""
4072
+ }, null, 8, ["option"])
4073
+ ]),
4074
+ _: 1
4075
+ }, 8, ["spinning"])
4076
+ ]),
4077
+ _: 1
4078
+ }, 8, ["visible", "onCancel"])
3755
4079
  ], 4);
3756
4080
  }
3757
4081
  var Pie = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$a]]);
@@ -3802,13 +4126,24 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3802
4126
  valueTypeDataFieldNames: { name: "name", value: "value", type: "type" },
3803
4127
  keyTypeDataFieldNames: { name: "name", types: [] },
3804
4128
  dataFieldConfigType: "value",
3805
- graphicConfig: {}
4129
+ graphicConfig: {},
4130
+ toolboxShow: false,
4131
+ toolboxOrient: "horizontal",
4132
+ toolboxItemSize: 16,
4133
+ toolboxItemGap: 8,
4134
+ toolboxLeft: "right",
4135
+ toolboxTop: "top",
4136
+ toolboxIconStyleBorderColor: "#666",
4137
+ toolboxDownloadUrl: "",
4138
+ toolboxInfoText: "\u5F53\u524D\u65E0\u8BF4\u660E\u4FE1\u606F"
3806
4139
  });
3807
4140
  const lineComponentProps = transformToComponentProps(lineProps);
3808
4141
  const lineEvents = ["click", "refreshData"];
4142
+ var Line_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".full-modal .ant-modal {\n max-width: 100%;\n top: 0;\n padding-bottom: 0;\n margin: 0;\n}\n.full-modal .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n}\n.full-modal .ant-modal-body {\n flex: 1;\n}\n.full-modal .ant-modal-body {\n padding: 45px 30px 0;\n}\n")();
3809
4143
  core.use([
3810
4144
  renderers.CanvasRenderer,
3811
4145
  charts.LineChart,
4146
+ components$1.ToolboxComponent,
3812
4147
  components$1.TitleComponent,
3813
4148
  components$1.LegendComponent
3814
4149
  ]);
@@ -3817,13 +4152,54 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
3817
4152
  props: __spreadValues({}, lineComponentProps),
3818
4153
  components: {
3819
4154
  Spin,
3820
- Echarts
4155
+ Echarts,
4156
+ AModal: antDesignVue.Modal
3821
4157
  },
3822
4158
  setup(props2) {
3823
4159
  const style2 = usePickComponentStyle(props2);
3824
4160
  const series = vue.ref([]);
3825
4161
  const dimensions = vue.ref([]);
4162
+ const visible = vue.ref(false);
4163
+ const hideModal = () => {
4164
+ visible.value = false;
4165
+ };
3826
4166
  const option = vue.computed(() => ({
4167
+ toolbox: {
4168
+ show: props2.toolboxShow,
4169
+ left: props2.toolboxLeft,
4170
+ top: props2.toolboxTop,
4171
+ itemSize: props2.toolboxItemSize,
4172
+ itemGap: props2.toolboxItemGap,
4173
+ feature: {
4174
+ myDownload: {
4175
+ show: true,
4176
+ title: "\u6570\u636E\u4E0B\u8F7D",
4177
+ icon: "path://M502.010485 765.939573c3.773953 3.719718 8.686846 5.573949 13.596669 5.573949 0.075725 0 0.151449-0.010233 0.227174-0.011256 0.329505 0.016373 0.654916 0.050142 0.988514 0.050142 0.706081 0 1.400906-0.042979 2.087545-0.116657 4.352121-0.366344 8.607028-2.190899 11.961426-5.496178l335.053985-330.166675c7.619538-7.509021 7.709589-19.773346 0.200568-27.393907s-19.774369-7.711636-27.39493-0.201591L536.193005 706.304358 536.193005 50.019207c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 657.032164-306.881342-302.44838c-7.618515-7.509021-19.883863-7.419993-27.393907 0.199545-7.509021 7.619538-7.419993 19.884886 0.199545 27.393907L502.010485 765.939573z, M867.170139 711.020776c-10.698666 0-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 13.054317-10.620895 23.675212-23.676236 23.675212L205.182103 919.486668c-13.054317 0-23.676236-10.620895-23.676236-23.675212L181.505867 730.391962c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 34.416857 28.000728 62.416562 62.417585 62.416562l618.941638 0c34.417881 0 62.417585-27.999704 62.417585-62.416562L886.540302 730.391962C886.541325 719.693296 877.868805 711.020776 867.170139 711.020776z",
4178
+ onclick() {
4179
+ useDownloadFile(props2.toolboxDownloadUrl);
4180
+ }
4181
+ },
4182
+ myDataZoom: {
4183
+ show: true,
4184
+ title: "\u653E\u5927",
4185
+ icon: "path://M932.42 902.246667L792 761.793333A403.84 403.84 0 0 0 896 490.666667c0-223.86-181.473333-405.333333-405.333333-405.333334S85.333333 266.806667 85.333333 490.666667s181.473333 405.333333 405.333334 405.333333a403.84 403.84 0 0 0 271.126666-104l140.453334 140.453333a21.333333 21.333333 0 0 0 30.173333-30.173333zM128 490.666667c0-200.293333 162.373333-362.666667 362.666667-362.666667s362.666667 162.373333 362.666666 362.666667-162.373333 362.666667-362.666666 362.666666-362.666667-162.373333-362.666667-362.666666z m512 0a21.333333 21.333333 0 0 1-21.333333 21.333333H512v106.666667a21.333333 21.333333 0 0 1-42.666667 0V512H362.666667a21.333333 21.333333 0 0 1 0-42.666667h106.666666V362.666667a21.333333 21.333333 0 0 1 42.666667 0v106.666666h106.666667a21.333333 21.333333 0 0 1 21.333333 21.333334z",
4186
+ onclick() {
4187
+ visible.value = true;
4188
+ }
4189
+ },
4190
+ myInfo: {
4191
+ show: true,
4192
+ title: "\u8BF4\u660E\u4FE1\u606F",
4193
+ icon: "path://M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z",
4194
+ onclick() {
4195
+ antDesignVue.Modal.info({
4196
+ title: "\u8BF4\u660E\u4FE1\u606F",
4197
+ content: props2.toolboxInfoText
4198
+ });
4199
+ }
4200
+ }
4201
+ }
4202
+ },
3827
4203
  title: {
3828
4204
  text: props2.titleText,
3829
4205
  subText: props2.titleSubtext,
@@ -4017,13 +4393,16 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4017
4393
  option,
4018
4394
  style: style2,
4019
4395
  click,
4020
- loading
4396
+ loading,
4397
+ visible,
4398
+ hideModal
4021
4399
  };
4022
4400
  }
4023
4401
  });
4024
4402
  function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
4025
4403
  const _component_echarts = vue.resolveComponent("echarts");
4026
4404
  const _component_spin = vue.resolveComponent("spin");
4405
+ const _component_a_modal = vue.resolveComponent("a-modal");
4027
4406
  return vue.openBlock(), vue.createElementBlock("div", {
4028
4407
  style: vue.normalizeStyle(_ctx.style)
4029
4408
  }, [
@@ -4036,7 +4415,28 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4036
4415
  }, null, 8, ["option", "onClick"])
4037
4416
  ]),
4038
4417
  _: 1
4039
- }, 8, ["spinning"])
4418
+ }, 8, ["spinning"]),
4419
+ vue.createVNode(_component_a_modal, {
4420
+ "wrap-class-name": "full-modal",
4421
+ width: "100%",
4422
+ visible: _ctx.visible,
4423
+ footer: null,
4424
+ onCancel: _ctx.hideModal
4425
+ }, {
4426
+ default: vue.withCtx(() => [
4427
+ vue.createVNode(_component_spin, { spinning: _ctx.loading }, {
4428
+ default: vue.withCtx(() => [
4429
+ vue.createVNode(_component_echarts, {
4430
+ option: _ctx.option,
4431
+ "update-options": { notMerge: true },
4432
+ autoresize: ""
4433
+ }, null, 8, ["option"])
4434
+ ]),
4435
+ _: 1
4436
+ }, 8, ["spinning"])
4437
+ ]),
4438
+ _: 1
4439
+ }, 8, ["visible", "onCancel"])
4040
4440
  ], 4);
4041
4441
  }
4042
4442
  var Line = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$9]]);
@@ -4100,11 +4500,11 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4100
4500
  gridLeft: "2%",
4101
4501
  gridRight: "2%",
4102
4502
  graphicConfig: {
4103
- chartType: "pie",
4503
+ chartType: "bar",
4104
4504
  plugin: "1",
4105
4505
  layer: "2"
4106
4506
  },
4107
- toolboxShow: true,
4507
+ toolboxShow: false,
4108
4508
  toolboxOrient: "horizontal",
4109
4509
  toolboxItemSize: 16,
4110
4510
  toolboxItemGap: 8,
@@ -4116,25 +4516,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4116
4516
  });
4117
4517
  const barComponentProps = transformToComponentProps(barProps);
4118
4518
  const barEvents = ["refreshData", "click"];
4119
- const useDownloadFile = async (downloadFileUrl) => {
4120
- var _a2;
4121
- const res = await request.post(downloadFileUrl, {}, {
4122
- responseType: "blob"
4123
- });
4124
- const { data, headers } = res;
4125
- const fileName = headers["content-disposition"].replace(/\w+;filename=(.*)/, "$1");
4126
- const blob = new Blob([data]);
4127
- const dom = document.createElement("a");
4128
- const url = window.URL.createObjectURL(blob);
4129
- dom.href = url;
4130
- dom.download = decodeURI(fileName);
4131
- dom.style.display = "none";
4132
- document.body.appendChild(dom);
4133
- dom.click();
4134
- (_a2 = dom.parentNode) == null ? void 0 : _a2.removeChild(dom);
4135
- window.URL.revokeObjectURL(url);
4136
- };
4137
- var Bar_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".full-modal .ant-modal {\n max-width: 100%;\n top: 0;\n padding-bottom: 0;\n margin: 0;\n}\n.full-modal .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n}\n.full-modal .ant-modal-body {\n flex: 1;\n}\n.full-modal .modal-inner {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n padding: 20px;\n}\n")();
4519
+ var Bar_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".full-modal .ant-modal {\n max-width: 100%;\n top: 0;\n padding-bottom: 0;\n margin: 0;\n}\n.full-modal .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n}\n.full-modal .ant-modal-body {\n flex: 1;\n}\n.full-modal .ant-modal-body {\n padding: 45px 30px 0;\n}\n")();
4138
4520
  core.use([
4139
4521
  renderers.CanvasRenderer,
4140
4522
  charts.BarChart,
@@ -4324,12 +4706,12 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4324
4706
  loading.value = false;
4325
4707
  }
4326
4708
  };
4327
- const requestDiagram = useRequestDiagramData(props2);
4709
+ const indicatorData = useIndicatorData(props2);
4328
4710
  const handleIndicatorData = async () => {
4329
4711
  var _a2, _b2;
4330
4712
  try {
4331
4713
  loading.value = true;
4332
- const res = await requestDiagram();
4714
+ const res = await indicatorData();
4333
4715
  const { columns = [], rows = [] } = (_b2 = (_a2 = res == null ? void 0 : res.data) == null ? void 0 : _a2.data) != null ? _b2 : {};
4334
4716
  let fieldNames;
4335
4717
  if (columns.length > 0) {
@@ -4393,7 +4775,6 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4393
4775
  };
4394
4776
  }
4395
4777
  });
4396
- const _hoisted_1$3 = { class: "modal-inner" };
4397
4778
  function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
4398
4779
  const _component_echarts = vue.resolveComponent("echarts");
4399
4780
  const _component_spin = vue.resolveComponent("spin");
@@ -4421,18 +4802,16 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4421
4802
  onCancel: _ctx.hideModal
4422
4803
  }, {
4423
4804
  default: vue.withCtx(() => [
4424
- vue.createElementVNode("div", _hoisted_1$3, [
4425
- vue.createVNode(_component_spin, { spinning: _ctx.loading }, {
4426
- default: vue.withCtx(() => [
4427
- vue.createVNode(_component_echarts, {
4428
- option: _ctx.option,
4429
- "update-options": { notMerge: true },
4430
- autoresize: ""
4431
- }, null, 8, ["option"])
4432
- ]),
4433
- _: 1
4434
- }, 8, ["spinning"])
4435
- ])
4805
+ vue.createVNode(_component_spin, { spinning: _ctx.loading }, {
4806
+ default: vue.withCtx(() => [
4807
+ vue.createVNode(_component_echarts, {
4808
+ option: _ctx.option,
4809
+ "update-options": { notMerge: true },
4810
+ autoresize: ""
4811
+ }, null, 8, ["option"])
4812
+ ]),
4813
+ _: 1
4814
+ }, 8, ["spinning"])
4436
4815
  ]),
4437
4816
  _: 1
4438
4817
  }, 8, ["visible", "onCancel"])
@@ -4482,13 +4861,24 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4482
4861
  gridBottom: "10%",
4483
4862
  gridLeft: "2%",
4484
4863
  gridRight: "2%",
4485
- graphicConfig: void 0
4864
+ graphicConfig: void 0,
4865
+ toolboxShow: false,
4866
+ toolboxOrient: "horizontal",
4867
+ toolboxItemSize: 16,
4868
+ toolboxItemGap: 8,
4869
+ toolboxLeft: "right",
4870
+ toolboxTop: "top",
4871
+ toolboxIconStyleBorderColor: "#666",
4872
+ toolboxDownloadUrl: "",
4873
+ toolboxInfoText: "\u5F53\u524D\u65E0\u8BF4\u660E\u4FE1\u606F"
4486
4874
  });
4487
4875
  const scatterComponentProps = transformToComponentProps(scatterProps);
4488
4876
  const scatterEvents = ["click", "refreshData"];
4877
+ var Scatter_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".full-modal .ant-modal {\n max-width: 100%;\n top: 0;\n padding-bottom: 0;\n margin: 0;\n}\n.full-modal .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n}\n.full-modal .ant-modal-body {\n flex: 1;\n}\n.full-modal .ant-modal-body {\n padding: 45px 30px 0;\n}\n")();
4489
4878
  core.use([
4490
4879
  renderers.CanvasRenderer,
4491
4880
  charts.ScatterChart,
4881
+ components$1.ToolboxComponent,
4492
4882
  components$1.TitleComponent,
4493
4883
  components$1.TooltipComponent,
4494
4884
  components$1.LegendComponent
@@ -4503,7 +4893,47 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4503
4893
  setup(props2) {
4504
4894
  const style2 = usePickComponentStyle(props2);
4505
4895
  const dataset = vue.ref([]);
4896
+ const visible = vue.ref(false);
4897
+ const hideModal = () => {
4898
+ visible.value = false;
4899
+ };
4506
4900
  const option = vue.computed(() => ({
4901
+ toolbox: {
4902
+ show: props2.toolboxShow,
4903
+ left: props2.toolboxLeft,
4904
+ top: props2.toolboxTop,
4905
+ itemSize: props2.toolboxItemSize,
4906
+ itemGap: props2.toolboxItemGap,
4907
+ feature: {
4908
+ myDownload: {
4909
+ show: true,
4910
+ title: "\u6570\u636E\u4E0B\u8F7D",
4911
+ icon: "path://M502.010485 765.939573c3.773953 3.719718 8.686846 5.573949 13.596669 5.573949 0.075725 0 0.151449-0.010233 0.227174-0.011256 0.329505 0.016373 0.654916 0.050142 0.988514 0.050142 0.706081 0 1.400906-0.042979 2.087545-0.116657 4.352121-0.366344 8.607028-2.190899 11.961426-5.496178l335.053985-330.166675c7.619538-7.509021 7.709589-19.773346 0.200568-27.393907s-19.774369-7.711636-27.39493-0.201591L536.193005 706.304358 536.193005 50.019207c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 657.032164-306.881342-302.44838c-7.618515-7.509021-19.883863-7.419993-27.393907 0.199545-7.509021 7.619538-7.419993 19.884886 0.199545 27.393907L502.010485 765.939573z, M867.170139 711.020776c-10.698666 0-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 13.054317-10.620895 23.675212-23.676236 23.675212L205.182103 919.486668c-13.054317 0-23.676236-10.620895-23.676236-23.675212L181.505867 730.391962c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 34.416857 28.000728 62.416562 62.417585 62.416562l618.941638 0c34.417881 0 62.417585-27.999704 62.417585-62.416562L886.540302 730.391962C886.541325 719.693296 877.868805 711.020776 867.170139 711.020776z",
4912
+ onclick() {
4913
+ useDownloadFile(props2.toolboxDownloadUrl);
4914
+ }
4915
+ },
4916
+ myDataZoom: {
4917
+ show: true,
4918
+ title: "\u653E\u5927",
4919
+ icon: "path://M932.42 902.246667L792 761.793333A403.84 403.84 0 0 0 896 490.666667c0-223.86-181.473333-405.333333-405.333333-405.333334S85.333333 266.806667 85.333333 490.666667s181.473333 405.333333 405.333334 405.333333a403.84 403.84 0 0 0 271.126666-104l140.453334 140.453333a21.333333 21.333333 0 0 0 30.173333-30.173333zM128 490.666667c0-200.293333 162.373333-362.666667 362.666667-362.666667s362.666667 162.373333 362.666666 362.666667-162.373333 362.666667-362.666666 362.666666-362.666667-162.373333-362.666667-362.666666z m512 0a21.333333 21.333333 0 0 1-21.333333 21.333333H512v106.666667a21.333333 21.333333 0 0 1-42.666667 0V512H362.666667a21.333333 21.333333 0 0 1 0-42.666667h106.666666V362.666667a21.333333 21.333333 0 0 1 42.666667 0v106.666666h106.666667a21.333333 21.333333 0 0 1 21.333333 21.333334z",
4920
+ onclick() {
4921
+ visible.value = true;
4922
+ }
4923
+ },
4924
+ myInfo: {
4925
+ show: true,
4926
+ title: "\u8BF4\u660E\u4FE1\u606F",
4927
+ icon: "path://M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z",
4928
+ onclick() {
4929
+ antDesignVue.Modal.info({
4930
+ title: "\u8BF4\u660E\u4FE1\u606F",
4931
+ content: props2.toolboxInfoText
4932
+ });
4933
+ }
4934
+ }
4935
+ }
4936
+ },
4507
4937
  title: {
4508
4938
  text: props2.titleText,
4509
4939
  subtext: props2.titleSubtext,
@@ -4638,13 +5068,16 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4638
5068
  option,
4639
5069
  style: style2,
4640
5070
  click,
4641
- loading
5071
+ loading,
5072
+ visible,
5073
+ hideModal
4642
5074
  };
4643
5075
  }
4644
5076
  });
4645
5077
  function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
4646
5078
  const _component_echarts = vue.resolveComponent("echarts");
4647
5079
  const _component_spin = vue.resolveComponent("spin");
5080
+ const _component_a_modal = vue.resolveComponent("a-modal");
4648
5081
  return vue.openBlock(), vue.createElementBlock("div", {
4649
5082
  style: vue.normalizeStyle(_ctx.style)
4650
5083
  }, [
@@ -4657,7 +5090,28 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4657
5090
  }, null, 8, ["option", "onClick"])
4658
5091
  ]),
4659
5092
  _: 1
4660
- }, 8, ["spinning"])
5093
+ }, 8, ["spinning"]),
5094
+ vue.createVNode(_component_a_modal, {
5095
+ "wrap-class-name": "full-modal",
5096
+ width: "100%",
5097
+ visible: _ctx.visible,
5098
+ footer: null,
5099
+ onCancel: _ctx.hideModal
5100
+ }, {
5101
+ default: vue.withCtx(() => [
5102
+ vue.createVNode(_component_spin, { spinning: _ctx.loading }, {
5103
+ default: vue.withCtx(() => [
5104
+ vue.createVNode(_component_echarts, {
5105
+ option: _ctx.option,
5106
+ "update-options": { notMerge: true },
5107
+ autoresize: ""
5108
+ }, null, 8, ["option"])
5109
+ ]),
5110
+ _: 1
5111
+ }, 8, ["spinning"])
5112
+ ]),
5113
+ _: 1
5114
+ }, 8, ["visible", "onCancel"])
4661
5115
  ], 4);
4662
5116
  }
4663
5117
  var Scatter = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$7]]);
@@ -4799,35 +5253,87 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
4799
5253
  gridBottom: "10%",
4800
5254
  gridLeft: "2%",
4801
5255
  gridRight: "2%",
4802
- graphicConfig: {}
5256
+ graphicConfig: {},
5257
+ toolboxShow: false,
5258
+ toolboxOrient: "horizontal",
5259
+ toolboxItemSize: 16,
5260
+ toolboxItemGap: 8,
5261
+ toolboxLeft: "right",
5262
+ toolboxTop: "top",
5263
+ toolboxIconStyleBorderColor: "#666",
5264
+ toolboxDownloadUrl: "",
5265
+ toolboxInfoText: "\u5F53\u524D\u65E0\u8BF4\u660E\u4FE1\u606F"
4803
5266
  });
4804
5267
  const comboGraphComponentProps = transformToComponentProps(comboGraphProps);
4805
5268
  const comboGraphEvents = ["refreshData", "click"];
5269
+ var ComboGraph_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".full-modal .ant-modal {\n max-width: 100%;\n top: 0;\n padding-bottom: 0;\n margin: 0;\n}\n.full-modal .ant-modal-content {\n display: flex;\n flex-direction: column;\n height: calc(100vh);\n}\n.full-modal .ant-modal-body {\n flex: 1;\n}\n.full-modal .ant-modal-body {\n padding: 45px 30px 0;\n}\n")();
4806
5270
  core.use([
4807
5271
  renderers.CanvasRenderer,
4808
5272
  charts.BarChart,
4809
5273
  charts.LineChart,
4810
5274
  components$1.TitleComponent,
4811
5275
  components$1.LegendComponent,
4812
- components$1.DatasetComponent
5276
+ components$1.DatasetComponent,
5277
+ components$1.ToolboxComponent
4813
5278
  ]);
4814
5279
  const _sfc_main$5 = vue.defineComponent({
4815
5280
  name: "EcanComboGraph",
4816
5281
  props: __spreadValues({}, comboGraphComponentProps),
4817
5282
  components: {
4818
5283
  Spin,
4819
- Echarts
5284
+ Echarts,
5285
+ AModal: antDesignVue.Modal
4820
5286
  },
4821
5287
  setup(props2) {
4822
5288
  const style2 = usePickComponentStyle(props2);
4823
5289
  const series = vue.ref([]);
4824
5290
  const dimensions = vue.ref([]);
5291
+ const visible = vue.ref(false);
5292
+ const hideModal = () => {
5293
+ visible.value = false;
5294
+ };
4825
5295
  const option = vue.computed(() => ({
4826
5296
  title: {
4827
5297
  text: props2.titleText,
4828
5298
  subtext: props2.titleSubtext,
4829
5299
  left: "center"
4830
5300
  },
5301
+ toolbox: {
5302
+ show: props2.toolboxShow,
5303
+ left: props2.toolboxLeft,
5304
+ top: props2.toolboxTop,
5305
+ itemSize: props2.toolboxItemSize,
5306
+ itemGap: props2.toolboxItemGap,
5307
+ feature: {
5308
+ myDownload: {
5309
+ show: true,
5310
+ title: "\u6570\u636E\u4E0B\u8F7D",
5311
+ icon: "path://M502.010485 765.939573c3.773953 3.719718 8.686846 5.573949 13.596669 5.573949 0.075725 0 0.151449-0.010233 0.227174-0.011256 0.329505 0.016373 0.654916 0.050142 0.988514 0.050142 0.706081 0 1.400906-0.042979 2.087545-0.116657 4.352121-0.366344 8.607028-2.190899 11.961426-5.496178l335.053985-330.166675c7.619538-7.509021 7.709589-19.773346 0.200568-27.393907s-19.774369-7.711636-27.39493-0.201591L536.193005 706.304358 536.193005 50.019207c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 657.032164-306.881342-302.44838c-7.618515-7.509021-19.883863-7.419993-27.393907 0.199545-7.509021 7.619538-7.419993 19.884886 0.199545 27.393907L502.010485 765.939573z, M867.170139 711.020776c-10.698666 0-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 13.054317-10.620895 23.675212-23.676236 23.675212L205.182103 919.486668c-13.054317 0-23.676236-10.620895-23.676236-23.675212L181.505867 730.391962c0-10.698666-8.67252-19.371186-19.371186-19.371186s-19.371186 8.67252-19.371186 19.371186l0 165.419494c0 34.416857 28.000728 62.416562 62.417585 62.416562l618.941638 0c34.417881 0 62.417585-27.999704 62.417585-62.416562L886.540302 730.391962C886.541325 719.693296 877.868805 711.020776 867.170139 711.020776z",
5312
+ onclick() {
5313
+ useDownloadFile(props2.toolboxDownloadUrl);
5314
+ }
5315
+ },
5316
+ myDataZoom: {
5317
+ show: true,
5318
+ title: "\u653E\u5927",
5319
+ icon: "path://M932.42 902.246667L792 761.793333A403.84 403.84 0 0 0 896 490.666667c0-223.86-181.473333-405.333333-405.333333-405.333334S85.333333 266.806667 85.333333 490.666667s181.473333 405.333333 405.333334 405.333333a403.84 403.84 0 0 0 271.126666-104l140.453334 140.453333a21.333333 21.333333 0 0 0 30.173333-30.173333zM128 490.666667c0-200.293333 162.373333-362.666667 362.666667-362.666667s362.666667 162.373333 362.666666 362.666667-162.373333 362.666667-362.666666 362.666666-362.666667-162.373333-362.666667-362.666666z m512 0a21.333333 21.333333 0 0 1-21.333333 21.333333H512v106.666667a21.333333 21.333333 0 0 1-42.666667 0V512H362.666667a21.333333 21.333333 0 0 1 0-42.666667h106.666666V362.666667a21.333333 21.333333 0 0 1 42.666667 0v106.666666h106.666667a21.333333 21.333333 0 0 1 21.333333 21.333334z",
5320
+ onclick() {
5321
+ visible.value = true;
5322
+ }
5323
+ },
5324
+ myInfo: {
5325
+ show: true,
5326
+ title: "\u8BF4\u660E\u4FE1\u606F",
5327
+ icon: "path://M512.50142 958.397886c-119.320573 0-231.499491-46.465265-315.871087-130.837884C112.258737 743.188406 65.792449 631.010511 65.792449 511.688915c0-119.319549 46.466288-231.499491 130.837884-315.871087C281.002952 111.445208 393.180847 64.979944 512.50142 64.979944s231.499491 46.465265 315.871087 130.837884c84.372619 84.372619 130.837884 196.551538 130.837884 315.871087 0 119.321596-46.465265 231.499491-130.837884 315.871087C744.000911 911.932622 631.821993 958.397886 512.50142 958.397886zM512.50142 105.962334c-223.718271 0-405.726581 182.00831-405.726581 405.726581s182.00831 405.726581 405.726581 405.726581c223.718271 0 405.727605-182.00831 405.727605-405.726581S736.220714 105.962334 512.50142 105.962334z M510.150886 775.953647c-18.107403 0-32.745798-14.678304-32.745798-32.785707L477.405087 452.191846c0-18.108426 14.638395-32.785707 32.745798-32.785707 18.107403 0 32.745798 14.678304 32.745798 32.785707l0 290.976094C542.896684 761.275343 528.258289 775.953647 510.150886 775.953647z M511.357364 296.458969m-45.080731 0a44.054 44.054 0 1 0 90.161463 0 44.054 44.054 0 1 0-90.161463 0Z",
5328
+ onclick() {
5329
+ antDesignVue.Modal.info({
5330
+ title: "\u8BF4\u660E\u4FE1\u606F",
5331
+ content: props2.toolboxInfoText
5332
+ });
5333
+ }
5334
+ }
5335
+ }
5336
+ },
4831
5337
  grid: {
4832
5338
  top: props2.gridTop,
4833
5339
  bottom: props2.gridBottom,
@@ -5028,13 +5534,16 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5028
5534
  style: style2,
5029
5535
  option,
5030
5536
  click,
5031
- loading
5537
+ loading,
5538
+ visible,
5539
+ hideModal
5032
5540
  };
5033
5541
  }
5034
5542
  });
5035
5543
  function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
5036
5544
  const _component_echarts = vue.resolveComponent("echarts");
5037
5545
  const _component_spin = vue.resolveComponent("spin");
5546
+ const _component_a_modal = vue.resolveComponent("a-modal");
5038
5547
  return vue.openBlock(), vue.createElementBlock("div", {
5039
5548
  style: vue.normalizeStyle(_ctx.style)
5040
5549
  }, [
@@ -5048,7 +5557,29 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5048
5557
  }, null, 8, ["option", "onClick"])
5049
5558
  ]),
5050
5559
  _: 1
5051
- }, 8, ["spinning"])
5560
+ }, 8, ["spinning"]),
5561
+ vue.createVNode(_component_a_modal, {
5562
+ "wrap-class-name": "full-modal",
5563
+ width: "100%",
5564
+ visible: _ctx.visible,
5565
+ footer: null,
5566
+ onCancel: _ctx.hideModal
5567
+ }, {
5568
+ default: vue.withCtx(() => [
5569
+ vue.createVNode(_component_spin, { spinning: _ctx.loading }, {
5570
+ default: vue.withCtx(() => [
5571
+ vue.createVNode(_component_echarts, {
5572
+ option: _ctx.option,
5573
+ "update-options": { notMerge: true },
5574
+ autoresize: "",
5575
+ onClick: _ctx.click
5576
+ }, null, 8, ["option", "onClick"])
5577
+ ]),
5578
+ _: 1
5579
+ }, 8, ["spinning"])
5580
+ ]),
5581
+ _: 1
5582
+ }, 8, ["visible", "onCancel"])
5052
5583
  ], 4);
5053
5584
  }
5054
5585
  var ComboGraph = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$5]]);
@@ -5070,7 +5601,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5070
5601
  const borderEvents = ["click"];
5071
5602
  var _imports_0 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHQAAAAcCAMAAACH42siAAAAZlBMVEUAAABBltJCldJCldFEk89BltJCltFBldI/lMBKndtmb9pCltNDldFAkclAldNBldJBltM/lM5AltNCldJBldJBlNJBltVBldJBlNJBlNI/lNNBldJBldNAldJBldJBldJBldNBldIiNK7WAAAAInRSTlMAM4BNGmaz5gQGbiAPCV1WQxUpOCY9EmxQSC2jdoacqZK8uPo7tAAAAZ9JREFUSMe90NmOwjAMheGka0J3SulCy/L+Lzk4I+HYhckEKs7dr1x8kQVM5YJMZ7SLiXVHOw817Z72cSns3BmziY7EnGRGjDqUpKt4pEZQKruvyaJt85YmBUebKLJVNUlpq6oOQ1tVVRzbqu6DwFb1NUlsVd3SNL0UDM0jqkaSqoeQqjKmahtQNUzuC1AtU1sF9KHmnmrtrSK6idqBWqE6GFVxFdGvqDGoJ01Qt7rfTEV0e7V6qSK6VjNPtTaqoOq8Ugnqr7aeav+rAuqrTh+qZw3o1urAVcFVQD3U6ZnaYY9MLZk6G5WhDaDFI9UeUPyE7gCNsAdAD9gxoBJ7ARRPUVwALXdu8/h/s3xmjtwUu0/M0M/UJzBjAei3TUTdpmKmcpkBmOHKBNTPzJi59zYJys3DO2aL78YcmNkLgrrM9m9TucwzmoBy08xlju+bgL42G4c5OcxqZSLqbwqXOVNTGXMWFD0ak6KN1ZKaojYmbribndW9MXELNQEFFUyiNqQlmEQ1JqpgErUifUUTUVEIupx1wzpjvWfdsh4FQX8ANe4nnpsb9NEAAAAASUVORK5CYII=";
5072
5603
  var _imports_1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHQAAAAcCAMAAACH42siAAAAaVBMVEUAAABElM9BltJCldJCldFBltJBldJCltFNmrNCmNNFldNAldJBldNBldRBldNBldNBldJCoNFBldJBltNBldJBldJAldJAltJBldJBldJBldNAlNFAldJBlNJAldJBldNBldJBldJBldLfIVowAAAAI3RSTlMAGjJNgGbmswMSCScgDTs/ZAVRK0eYj2s3r3AWveHEhXjeXb5rzlgAAAFqSURBVEjH1dbJVsJAEIXhHjJ05tlEooK8/0NKsbDrFjmHiBD0Lvqcf9PfthRM7xvoZMQuLHZaOejGYLtcdEItzI9oaLg5xIHj5hgcG262oXXcrGzJ23Umg5717C7NKBrAjOMDM8YgCI5ghmEPprUTmMZkrBOtdbJgfpZovho0gwzNOkfTam9k5jSGkKlTMOezWT3VLH5qlg8wQzSbO5jJ28l8Z+YLmZMwuz9lupvNXpjlFTMTZv7vzFSatTDtGnNeYdpNzZTMSJhx5f84m8Y3mSEzJzTVolko3J7Qve+a0J3vntDWffdEaMUQQo1vTWjuuyA0UWvUUarqzuqLUMPt1MD3uKTaTdRwvdrdorpFtfZtH6eyK2F3RS23U3uhlr9VB1TdE1V2h7Vr1O4mdbdera6o+Wq1Vqi2rEktFapGoZopVLVCtVCXag19IBPUiiWpBrojE1QNXZAp1/TYbhKdKVwuWotORKfn9wu/DSc/X9T6qgAAAABJRU5ErkJggg==";
5073
- var Border_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '.top-title[data-v-f83231c0],\n.no-title[data-v-f83231c0] {\n border: 1px solid rgba(55, 85, 218, 0.3);\n background: rgba(7, 22, 85, 0.8);\n position: relative;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n}\n.top-title .border-item[data-v-f83231c0],\n.no-title .border-item[data-v-f83231c0] {\n position: absolute;\n z-index: 2;\n border-color: #50FCFC;\n border-style: solid;\n width: 13px;\n height: 11px;\n}\n.top-title .top-left[data-v-f83231c0],\n.no-title .top-left[data-v-f83231c0] {\n top: 0;\n left: 0;\n border-top-width: 1px;\n border-right-width: 0;\n border-bottom-width: 0;\n border-left-width: 1px;\n}\n.top-title .top-right[data-v-f83231c0],\n.no-title .top-right[data-v-f83231c0] {\n top: 0;\n right: -2px;\n border-top-width: 1px;\n border-right-width: 1px;\n border-bottom-width: 0;\n border-left-width: 0;\n}\n.top-title .bottom-left[data-v-f83231c0],\n.no-title .bottom-left[data-v-f83231c0] {\n bottom: -2px;\n left: 0;\n border-top-width: 0;\n border-right-width: 0;\n border-bottom-width: 1px;\n border-left-width: 1px;\n}\n.top-title .bottom-right[data-v-f83231c0],\n.no-title .bottom-right[data-v-f83231c0] {\n bottom: -2px;\n right: -2px;\n border-top-width: 0;\n border-right-width: 1px;\n border-bottom-width: 1px;\n border-left-width: 0;\n}\n.top-title .title-item-wrapper[data-v-f83231c0],\n.no-title .title-item-wrapper[data-v-f83231c0] {\n width: 100%;\n padding: 5px 0;\n background-image: url("data:image/png;base64,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");\n background-size: cover;\n display: grid;\n place-content: center;\n}\n.top-title .title-item[data-v-f83231c0],\n.no-title .title-item[data-v-f83231c0] {\n display: flex;\n align-items: center;\n}\n.top-title .title[data-v-f83231c0],\n.no-title .title[data-v-f83231c0] {\n padding: 0 17px;\n color: #d5fdfd;\n background: linear-gradient(0deg, #01aaff, #00eaff);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.top-title .title-decoration-left[data-v-f83231c0],\n.no-title .title-decoration-left[data-v-f83231c0] {\n width: 58px;\n height: 14px;\n}\n.top-title .title-decoration-right[data-v-f83231c0],\n.no-title .title-decoration-right[data-v-f83231c0] {\n width: 58px;\n height: 14px;\n}\n.only-border[data-v-f83231c0] {\n border: 2px solid #375A8899;\n border-radius: 8px;\n width: 100%;\n height: 100%;\n}\n.left-title[data-v-f83231c0] {\n position: relative;\n width: 100%;\n height: 100%;\n border: 2px solid #375A8899;\n border-radius: 8px;\n}\n.left-title .title[data-v-f83231c0] {\n position: absolute;\n left: -33px;\n top: -14px;\n width: 33px;\n min-height: 194px;\n padding-top: 33px;\n padding-bottom: 31px;\n background-image: url("data:image/png;base64,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");\n background-repeat: no-repeat;\n background-size: 100% 100%;\n color: #fff;\n font-weight: 500;\n text-align: center;\n}\n.left-title .title span[data-v-f83231c0] {\n writing-mode: vertical-lr;\n}\n')();
5604
+ var Border_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '.top-title[data-v-3c3b861e],\n.no-title[data-v-3c3b861e] {\n border: 1px solid rgba(55, 85, 218, 0.3);\n background: rgba(7, 22, 85, 0.8);\n position: relative;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n}\n.top-title .border-item[data-v-3c3b861e],\n.no-title .border-item[data-v-3c3b861e] {\n position: absolute;\n z-index: 2;\n border-color: #50FCFC;\n border-style: solid;\n width: 13px;\n height: 11px;\n}\n.top-title .top-left[data-v-3c3b861e],\n.no-title .top-left[data-v-3c3b861e] {\n top: 0;\n left: 0;\n border-top-width: 1px;\n border-right-width: 0;\n border-bottom-width: 0;\n border-left-width: 1px;\n}\n.top-title .top-right[data-v-3c3b861e],\n.no-title .top-right[data-v-3c3b861e] {\n top: 0;\n right: -2px;\n border-top-width: 1px;\n border-right-width: 1px;\n border-bottom-width: 0;\n border-left-width: 0;\n}\n.top-title .bottom-left[data-v-3c3b861e],\n.no-title .bottom-left[data-v-3c3b861e] {\n bottom: -2px;\n left: 0;\n border-top-width: 0;\n border-right-width: 0;\n border-bottom-width: 1px;\n border-left-width: 1px;\n}\n.top-title .bottom-right[data-v-3c3b861e],\n.no-title .bottom-right[data-v-3c3b861e] {\n bottom: -2px;\n right: -2px;\n border-top-width: 0;\n border-right-width: 1px;\n border-bottom-width: 1px;\n border-left-width: 0;\n}\n.top-title .title-item-wrapper[data-v-3c3b861e],\n.no-title .title-item-wrapper[data-v-3c3b861e] {\n width: 100%;\n padding: 5px 0;\n background-image: url("data:image/png;base64,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");\n background-size: cover;\n display: grid;\n place-content: center;\n}\n.top-title .title-item[data-v-3c3b861e],\n.no-title .title-item[data-v-3c3b861e] {\n display: flex;\n align-items: center;\n}\n.top-title .title[data-v-3c3b861e],\n.no-title .title[data-v-3c3b861e] {\n padding: 0 17px;\n color: #d5fdfd;\n background: linear-gradient(0deg, #01aaff, #00eaff);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.top-title .title-decoration-left[data-v-3c3b861e],\n.no-title .title-decoration-left[data-v-3c3b861e] {\n width: 58px;\n height: 14px;\n}\n.top-title .title-decoration-right[data-v-3c3b861e],\n.no-title .title-decoration-right[data-v-3c3b861e] {\n width: 58px;\n height: 14px;\n}\n.only-border[data-v-3c3b861e] {\n border: 2px solid #375A8899;\n border-radius: 8px;\n width: 100%;\n height: 100%;\n}\n.left-title[data-v-3c3b861e] {\n position: relative;\n width: 100%;\n height: 100%;\n border: 2px solid #375A8899;\n border-radius: 8px;\n}\n.left-title .title[data-v-3c3b861e] {\n position: absolute;\n left: -33px;\n top: -14px;\n width: 33px;\n min-height: 194px;\n padding-top: 33px;\n padding-bottom: 31px;\n background-image: url("data:image/png;base64,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");\n background-repeat: no-repeat;\n background-size: 100% 100%;\n color: #fff;\n font-weight: 500;\n text-align: center;\n}\n.left-title .title span[data-v-3c3b861e] {\n writing-mode: vertical-lr;\n}\n')();
5074
5605
  const _sfc_main$4 = vue.defineComponent({
5075
5606
  name: "EcanBorder",
5076
5607
  props: __spreadValues({}, borderComponentProps),
@@ -5088,7 +5619,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5088
5619
  };
5089
5620
  }
5090
5621
  });
5091
- const _withScopeId = (n) => (vue.pushScopeId("data-v-f83231c0"), n = n(), vue.popScopeId(), n);
5622
+ const _withScopeId = (n) => (vue.pushScopeId("data-v-3c3b861e"), n = n(), vue.popScopeId(), n);
5092
5623
  const _hoisted_1$2 = {
5093
5624
  key: 0,
5094
5625
  class: "top-title"
@@ -5159,7 +5690,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5159
5690
  ])) : vue.createCommentVNode("", true)
5160
5691
  ], 4);
5161
5692
  }
5162
- var Border = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$4], ["__scopeId", "data-v-f83231c0"]]);
5693
+ var Border = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$4], ["__scopeId", "data-v-3c3b861e"]]);
5163
5694
  const EcanBorder = withInstall(Border);
5164
5695
  const modalProps = {
5165
5696
  id: "",
@@ -5425,38 +5956,41 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5425
5956
  address: "\u798F\u5DDE\u8F6F\u4EF6\u56ED"
5426
5957
  }
5427
5958
  ],
5428
- graphicConfig: {}
5959
+ graphicConfig: {
5960
+ chartType: "table",
5961
+ plugin: "1",
5962
+ layer: "1"
5963
+ }
5429
5964
  });
5430
5965
  const tableComponentProps = transformToComponentProps(tableProps);
5431
5966
  const tableEvents = ["click", "refreshData"];
5432
- var Table_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => `.table[data-v-3c009dfc] {
5967
+ var Table_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => `.table[data-v-56b87792] {
5433
5968
  width: 100%;
5434
- height: 100%;
5435
5969
  }
5436
- .goUp[data-v-3c009dfc] {
5970
+ .goUp[data-v-56b87792] {
5437
5971
  color: #FF512E;
5438
5972
  display: flex;
5439
5973
  align-items: center;
5440
5974
  }
5441
- .goUp[data-v-3c009dfc]:before {
5975
+ .goUp[data-v-56b87792]:before {
5442
5976
  content: '';
5443
5977
  display: block;
5444
- background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAAV1BMVEUAAAD/WzT/WjP/WDD/WzT/WzP/WzT/WzT/WzT/WjT/WzT/WDT/YED/WzT/WzT/WjT/YED/WzT/WzT/WzT/XDT/WzT/WjX/WjP/XDT/XDT/WTL/Tif/WzReH8z5AAAAHHRSTlMA8RgS9W9YHbePZyME5sVjCP7bzcCxgndOQC4GFJJgKwAAAIJJREFUKM+Nkd0OgyAMRjvqcLA53fzXvv9zaokmxq8mnsue5ACFDjiy+XyjLZ7yyK35OxN5mSFZKa2QojEIKRhrZKM0QnsMQxirmJ0kBubTIZvAtUyiFAT4JFoUIYmIotZ5xjDPfyoCAV16nMPdFir8xZ16nM//tePtXw2ODOJY0V0WqQwM2rgKrU0AAAAASUVORK5CYII=");
5978
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAAV1BMVEUAAAD/WzT/WjP/WDD/WzT/WzP/WzT/WzT/WzT/WjT/WzT/WDT/YED/WzT/WzT/WjT/YED/WzT/WzT/WzT/XDT/WzT/WjX/WjP/XDT/XDT/WTL/Tif/WzReH8z5AAAAHHRSTlMA8RgS9W9YHbePZyME5sVjCP7bzcCxgndOQC4GFJJgKwAAAIJJREFUKM+Nkd0OgyAMRjvqcLA53fzXvv9zaokmxq8mnsue5ACFDjiy+XyjLZ7yyK35OxN5mSFZKa2QojEIKRhrZKM0QnsMQxirmJ0kBubTIZvAtUyiFAT4JFoUIYmIotZ5xjDPfyoCAV16nMPdFir8xZ16nM//tePtXw2ODOJY0V0WqQwM2rgKrU0AAAAASUVORK5CYII=");
5445
5979
  width: 12px;
5446
5980
  height: 12px;
5447
5981
  background-repeat: no-repeat;
5448
5982
  background-size: cover;
5449
5983
  margin-right: 2px;
5450
5984
  }
5451
- .goDown[data-v-3c009dfc] {
5985
+ .goDown[data-v-56b87792] {
5452
5986
  color: #00F7B4;
5453
5987
  display: flex;
5454
5988
  align-items: center;
5455
5989
  }
5456
- .goDown[data-v-3c009dfc]:before {
5990
+ .goDown[data-v-56b87792]:before {
5457
5991
  content: '';
5458
5992
  display: block;
5459
- background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAAaVBMVEUAAAAA+b0A+LwA+L0A/6AA+LwA+L0A+L0A+b0A+LwA/78A+LwA+L0A+LwA+LwA+b0A+LsA970A+LwA+r0A9boA/7YA+LwA+LwA+LwA+L0A97wA+bwA970A970A+bwA+bwA+LsA9rkA+LzcCa+5AAAAInRSTlMAd/uVAvjYxCsiDvPp37F7aWBMNBgK7s/NvKidh4NXUEcdp9A1SAAAAI5JREFUKM+l0UcOwzAMRFGqWZbcW3rl/Q8ZhUGKMN7lLedD4EKUi/3BEIrGsQu432pmPuF+1WnfRNjLipMz7HbHT3cIF9n3BLYSerzAooSgZNcWQiuhIdBI8JQblNISCqXU/BNG/mqzJ+az13MWluIdRspNmgV+Rvc6vkCwPu1uIhQq5o7WDOwtrToG+ssDeh4QPgfT2X0AAAAASUVORK5CYII=");
5993
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAAaVBMVEUAAAAA+b0A+LwA+L0A/6AA+LwA+L0A+L0A+b0A+LwA/78A+LwA+L0A+LwA+LwA+b0A+LsA970A+LwA+r0A9boA/7YA+LwA+LwA+LwA+L0A97wA+bwA970A970A+bwA+bwA+LsA9rkA+LzcCa+5AAAAInRSTlMAd/uVAvjYxCsiDvPp37F7aWBMNBgK7s/NvKidh4NXUEcdp9A1SAAAAI5JREFUKM+l0UcOwzAMRFGqWZbcW3rl/Q8ZhUGKMN7lLedD4EKUi/3BEIrGsQu432pmPuF+1WnfRNjLipMz7HbHT3cIF9n3BLYSerzAooSgZNcWQiuhIdBI8JQblNISCqXU/BNG/mqzJ+az13MWluIdRspNmgV+Rvc6vkCwPu1uIhQq5o7WDOwtrToG+ssDeh4QPgfT2X0AAAAASUVORK5CYII=");
5460
5994
  width: 12px;
5461
5995
  height: 12px;
5462
5996
  background-repeat: no-repeat;
@@ -5464,7 +5998,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5464
5998
  margin-right: 2px;
5465
5999
  }
5466
6000
  `)();
5467
- var Table_vue_vue_type_style_index_1_lang = /* @__PURE__ */ (() => ".ecan-table *::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n.ecan-table *::-webkit-scrollbar-thumb {\n border-radius: 3px;\n -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);\n background-color: #c8c9ca !important;\n}\n.ecan-table *::-webkit-scrollbar-track {\n background-color: #fff;\n}\n.ecan-table .ant-table-cell-scrollbar {\n box-shadow: 0 1px 0 1px transparent;\n}\n.ecan-table .ant-table {\n color: rgba(0, 0, 0, 0.65);\n background: #ffffff;\n}\n.ecan-table .ant-table-thead > tr > th {\n color: rgba(0, 0, 0, 0.85);\n background: #fafafa;\n border-bottom: 1px solid #f0f0f0;\n}\n.ecan-table .ant-table-tbody > tr > td {\n border-bottom: 1px solid #f0f0f0;\n}\n.ecan-table .ant-table-bordered .ant-table-container {\n border: 1px solid #f0f0f0 !important;\n}\n.ecan-table .ant-table-bordered .ant-table-cell {\n border-right: 1px solid #f0f0f0 !important;\n}\n.ecan-table .ant-pagination-item-link {\n border: 1px solid #d9d9d9 !important;\n}\n.ecan-table .anticon {\n color: rgba(0, 0, 0, 0.65) !important;\n}\n[datav-theme='darkBlue'] .ecan-table *::-webkit-scrollbar-thumb {\n background-color: #2f4dac !important;\n}\n[datav-theme='darkBlue'] .ecan-table *::-webkit-scrollbar-track {\n background-color: #192c70;\n}\n[datav-theme='darkBlue'] .ecan-table *::-webkit-scrollbar-corner {\n background-color: #192c70 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table {\n color: #e8e8e8;\n background: #071655;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table,\n[datav-theme='darkBlue'] .ecan-table .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table {\n border-top: 1px solid #3e8ee3 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-thead > tr > th {\n color: #cdd0f7;\n background: #17338c;\n border-bottom: 1px solid #3e8ee3;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-tbody > tr > td {\n border-bottom: 1px solid #3e8ee3;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-bordered .ant-table-container {\n border: 1px solid #3e8ee3 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-bordered .ant-table-cell {\n border-right: 1px solid #3e8ee3 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-pagination-item-link {\n background: #17338c !important;\n border: 1px solid #243c8e !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-pagination-item {\n background: #17338c !important;\n}\n[datav-theme='darkBlue'] .ecan-table .anticon {\n color: rgba(255, 255, 255, 0.65) !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-tbody > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td {\n background: #225b98;\n}\n")();
6001
+ var Table_vue_vue_type_style_index_1_lang = /* @__PURE__ */ (() => ".ecan-table *::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n.ecan-table *::-webkit-scrollbar-thumb {\n border-radius: 3px;\n -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);\n background-color: #c8c9ca !important;\n}\n.ecan-table *::-webkit-scrollbar-track {\n background-color: #fff;\n}\n.ecan-table .ant-table-cell-scrollbar {\n box-shadow: 0 1px 0 1px transparent;\n}\n.ecan-table .ant-table {\n color: rgba(0, 0, 0, 0.65);\n background: #ffffff;\n}\n.ecan-table .ant-table-thead > tr > th {\n color: rgba(0, 0, 0, 0.85);\n background: #fafafa;\n border-bottom: 1px solid #f0f0f0;\n}\n.ecan-table .ant-table-tbody > tr > td {\n border-bottom: 1px solid #f0f0f0;\n}\n.ecan-table .ant-table-bordered .ant-table-container {\n border: 1px solid #f0f0f0 !important;\n}\n.ecan-table .ant-table-bordered .ant-table-cell {\n border-right: 1px solid #f0f0f0 !important;\n}\n.ecan-table .anticon {\n color: rgba(0, 0, 0, 0.65) !important;\n}\n[datav-theme='darkBlue'] .ecan-table *::-webkit-scrollbar-thumb {\n background-color: #2f4dac !important;\n}\n[datav-theme='darkBlue'] .ecan-table *::-webkit-scrollbar-track {\n background-color: #192c70;\n}\n[datav-theme='darkBlue'] .ecan-table *::-webkit-scrollbar-corner {\n background-color: #192c70 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table {\n color: #e8e8e8;\n background: #071655;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table,\n[datav-theme='darkBlue'] .ecan-table .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table {\n border-top: 1px solid #3e8ee3 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-thead > tr > th {\n color: #cdd0f7;\n background: #17338c;\n border-bottom: 1px solid #3e8ee3;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-tbody > tr > td {\n border-bottom: 1px solid #3e8ee3;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-bordered .ant-table-container {\n border: 1px solid #3e8ee3 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-bordered .ant-table-cell {\n border-right: 1px solid #3e8ee3 !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-pagination-item-link {\n background: #17338c !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-pagination-item {\n background: #17338c !important;\n}\n[datav-theme='darkBlue'] .ecan-table .anticon {\n color: rgba(255, 255, 255, 0.65) !important;\n}\n[datav-theme='darkBlue'] .ecan-table .ant-table-tbody > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > td {\n background: #225b98;\n}\n")();
5468
6002
  const _sfc_main$1 = vue.defineComponent({
5469
6003
  name: "EcanTable",
5470
6004
  components: {
@@ -5475,7 +6009,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5475
6009
  ATableSummaryCell: antDesignVue.TableSummaryCell
5476
6010
  },
5477
6011
  props: __spreadValues({}, tableComponentProps),
5478
- setup(props2) {
6012
+ setup(props2, { expose }) {
5479
6013
  const style2 = usePickComponentStyle(props2);
5480
6014
  const splitY = vue.computed(() => {
5481
6015
  if (props2.paginationShow) {
@@ -5574,7 +6108,6 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5574
6108
  };
5575
6109
  const tableChange = ({ current }, _filters, _sorter) => {
5576
6110
  pageNum.value = current;
5577
- handleIndicatorData();
5578
6111
  };
5579
6112
  const pagination = vue.computed(() => {
5580
6113
  const simple = props2.simple;
@@ -5632,12 +6165,12 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5632
6165
  });
5633
6166
  dataSource.value = rows;
5634
6167
  };
5635
- const requestDiagram = useRequestDiagramData(props2);
6168
+ const indicatorData = useIndicatorData(props2);
5636
6169
  const handleIndicatorData = async () => {
5637
6170
  var _a2, _b2, _c2, _d;
5638
6171
  try {
5639
6172
  loading.value = true;
5640
- const res = await requestDiagram();
6173
+ const res = await indicatorData();
5641
6174
  handleIndicatorDataset((_b2 = (_a2 = res == null ? void 0 : res.data) == null ? void 0 : _a2.data) == null ? void 0 : _b2.columns, (_d = (_c2 = res == null ? void 0 : res.data) == null ? void 0 : _c2.data) == null ? void 0 : _d.rows);
5642
6175
  } catch (e) {
5643
6176
  console.error(e);
@@ -5653,6 +6186,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5653
6186
  })
5654
6187
  });
5655
6188
  const refreshData = () => {
6189
+ console.log(vue.unref(pageMode));
5656
6190
  if (vue.unref(pageMode) === "design")
5657
6191
  return;
5658
6192
  switch (props2.dataType) {
@@ -5706,6 +6240,9 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5706
6240
  setRequest: (requestFn, sortNum) => void 0
5707
6241
  });
5708
6242
  setRequest(refreshData, props2.requestSort);
6243
+ expose({
6244
+ refreshData
6245
+ });
5709
6246
  return {
5710
6247
  x,
5711
6248
  y,
@@ -5737,6 +6274,9 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5737
6274
  default: vue.withCtx(() => [
5738
6275
  vue.createVNode(_component_a_table, {
5739
6276
  class: "table",
6277
+ style: {
6278
+ height: "100%"
6279
+ },
5740
6280
  columns: _ctx.dataColumns.length > 0 ? _ctx.dataColumns : _ctx.myColumns,
5741
6281
  "data-source": _ctx.dataSource,
5742
6282
  bordered: _ctx.bordered,
@@ -5792,7 +6332,7 @@ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
5792
6332
  }, 8, ["loading"])
5793
6333
  ], 4);
5794
6334
  }
5795
- var Table = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-3c009dfc"]]);
6335
+ var Table = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__scopeId", "data-v-56b87792"]]);
5796
6336
  const EcanTable = withInstall(Table);
5797
6337
  const mapProps = __spreadProps(__spreadValues({}, props), {
5798
6338
  mapJson: null,