kd-curve-v2 0.0.5 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/esm/index.js CHANGED
@@ -2175,7 +2175,7 @@ var script$a = {
2175
2175
  },
2176
2176
  };
2177
2177
 
2178
- var css_248z$b = "@charset \"UTF-8\";\n.function-control-panel[data-v-1de81a62] {\n width: 100%;\n height: 100%;\n color: var(--text-color);\n font-size: 14px;\n overflow-x: hidden;\n overflow-y: auto;\n /* 隐藏滚动条 */\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.function-control-panel[data-v-1de81a62]::-webkit-scrollbar {\n display: none;\n}\n.function-control-panel .radio-group[data-v-1de81a62] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding-bottom: 8px;\n}\n.el-select-disabled[data-v-1de81a62] {\n opacity: 0.5;\n}\n\n/*/* 分割线 */\n.divider[data-v-1de81a62] {\n height: 1px;\n background: var(--border-color);\n margin-bottom: 8px;\n}\n\n/* label */\n.label[data-v-1de81a62] {\n color: #aaa;\n margin-bottom: 2px;\n}\n\n/* 操作按钮 */\n.actions[data-v-1de81a62] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.btn[data-v-1de81a62] {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n text-align: center;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: 400;\n cursor: pointer;\n}\n.btn .icon[data-v-1de81a62] {\n width: 54px;\n height: 54px;\n}\n.btn.disabled[data-v-1de81a62] {\n color: #666;\n cursor: not-allowed;\n}\n.btn.disabled .icon[data-v-1de81a62] {\n opacity: 0.5;\n}\n.fontColor[data-v-1de81a62] {\n color: var(--default-text-color);\n}";
2178
+ var css_248z$b = "@charset \"UTF-8\";\n.function-control-panel[data-v-9e2c85ea] {\n width: 100%;\n height: 100%;\n color: var(--text-color);\n font-size: 14px;\n overflow-x: hidden;\n overflow-y: auto;\n /* 隐藏滚动条 */\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.function-control-panel[data-v-9e2c85ea]::-webkit-scrollbar {\n display: none;\n}\n.function-control-panel .radio-group[data-v-9e2c85ea] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding-bottom: 8px;\n}\n.el-select-disabled[data-v-9e2c85ea] {\n opacity: 0.5;\n}\n\n/*/* 分割线 */\n.divider[data-v-9e2c85ea] {\n height: 1px;\n background: var(--border-color);\n margin-bottom: 8px;\n}\n\n/* label */\n.label[data-v-9e2c85ea] {\n color: #aaa;\n margin-bottom: 2px;\n}\n\n/* 操作按钮 */\n.actions[data-v-9e2c85ea] {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.btn[data-v-9e2c85ea] {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n text-align: center;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: 400;\n cursor: pointer;\n}\n.btn .icon[data-v-9e2c85ea] {\n width: 54px;\n height: 54px;\n}\n.btn.disabled[data-v-9e2c85ea] {\n color: #666;\n cursor: not-allowed;\n}\n.btn.disabled .icon[data-v-9e2c85ea] {\n opacity: 0.5;\n}\n.fontColor[data-v-9e2c85ea] {\n color: var(--default-text-color);\n}";
2179
2179
  styleInject(css_248z$b);
2180
2180
 
2181
2181
  /* script */
@@ -2189,273 +2189,301 @@ var __vue_render__$a = function () {
2189
2189
  "div",
2190
2190
  { staticClass: "function-control-panel" },
2191
2191
  [
2192
- _c(
2193
- "el-radio-group",
2194
- {
2195
- staticClass: "radio-group",
2196
- on: {
2197
- change: function ($event) {
2198
- return _vm.changeForm($event, "axisType")
2199
- },
2200
- },
2201
- model: {
2202
- value: _vm.form.axisType,
2203
- callback: function ($$v) {
2204
- _vm.$set(_vm.form, "axisType", $$v);
2205
- },
2206
- expression: "form.axisType",
2207
- },
2208
- },
2209
- [
2210
- _c(
2211
- "el-radio",
2192
+ _vm.toolBarConfig.timeDepthRadioShow !== false
2193
+ ? _c(
2194
+ "el-radio-group",
2212
2195
  {
2213
- attrs: {
2214
- label: "time",
2215
- disabled:
2216
- !_vm.toolBarConfig ||
2217
- !_vm.toolBarConfig.axisTypeList ||
2218
- !_vm.toolBarConfig.axisTypeList.time,
2219
- },
2220
- },
2221
- [_vm._v("时间")]
2222
- ),
2223
- _vm._v(" "),
2224
- _c(
2225
- "el-radio",
2226
- {
2227
- attrs: {
2228
- label: "depth",
2229
- disabled:
2230
- !_vm.toolBarConfig ||
2231
- !_vm.toolBarConfig.axisTypeList ||
2232
- !_vm.toolBarConfig.axisTypeList.depth,
2233
- },
2234
- },
2235
- [_vm._v("深度")]
2236
- ),
2237
- ],
2238
- 1
2239
- ),
2240
- _vm._v(" "),
2241
- _c("div", { staticClass: "divider" }),
2242
- _vm._v(" "),
2243
- _c(
2244
- "el-radio-group",
2245
- {
2246
- staticClass: "radio-group",
2247
- on: {
2248
- change: function ($event) {
2249
- return _vm.changeForm($event, "dataType")
2250
- },
2251
- },
2252
- model: {
2253
- value: _vm.form.dataType,
2254
- callback: function ($$v) {
2255
- _vm.$set(_vm.form, "dataType", $$v);
2256
- },
2257
- expression: "form.dataType",
2258
- },
2259
- },
2260
- [
2261
- _c(
2262
- "el-radio",
2263
- {
2264
- attrs: {
2265
- label: "real",
2266
- disabled:
2267
- !_vm.toolBarConfig ||
2268
- !_vm.toolBarConfig.dataTypeList ||
2269
- !_vm.toolBarConfig.dataTypeList.real,
2196
+ staticClass: "radio-group",
2197
+ on: {
2198
+ change: function ($event) {
2199
+ return _vm.changeForm($event, "axisType")
2200
+ },
2270
2201
  },
2271
- },
2272
- [_vm._v("实时数据")]
2273
- ),
2274
- _vm._v(" "),
2275
- _c(
2276
- "el-radio",
2277
- {
2278
- attrs: {
2279
- label: "history",
2280
- disabled:
2281
- !_vm.toolBarConfig ||
2282
- !_vm.toolBarConfig.dataTypeList ||
2283
- !_vm.toolBarConfig.dataTypeList.history,
2202
+ model: {
2203
+ value: _vm.form.axisType,
2204
+ callback: function ($$v) {
2205
+ _vm.$set(_vm.form, "axisType", $$v);
2206
+ },
2207
+ expression: "form.axisType",
2284
2208
  },
2285
2209
  },
2286
- [_vm._v("历史数据")]
2287
- ),
2288
- ],
2289
- 1
2290
- ),
2291
- _vm._v(" "),
2292
- _c("div", { staticClass: "divider" }),
2293
- _vm._v(" "),
2294
- _c(
2295
- "el-radio-group",
2296
- {
2297
- staticClass: "radio-group",
2298
- on: {
2299
- change: function ($event) {
2300
- return _vm.changeForm($event, "displayType")
2301
- },
2302
- },
2303
- model: {
2304
- value: _vm.form.displayType,
2305
- callback: function ($$v) {
2306
- _vm.$set(_vm.form, "displayType", $$v);
2307
- },
2308
- expression: "form.displayType",
2309
- },
2310
- },
2311
- [
2312
- _c("el-radio", { attrs: { label: "header" } }, [_vm._v("表头数据")]),
2313
- _vm._v(" "),
2314
- _c("el-radio", { attrs: { label: "float" } }, [_vm._v("悬浮数据")]),
2315
- ],
2316
- 1
2317
- ),
2210
+ [
2211
+ _c(
2212
+ "el-radio",
2213
+ {
2214
+ attrs: {
2215
+ label: "time",
2216
+ disabled:
2217
+ !_vm.toolBarConfig ||
2218
+ !_vm.toolBarConfig.axisTypeList ||
2219
+ !_vm.toolBarConfig.axisTypeList.time,
2220
+ },
2221
+ },
2222
+ [_vm._v("时间")]
2223
+ ),
2224
+ _vm._v(" "),
2225
+ _c(
2226
+ "el-radio",
2227
+ {
2228
+ attrs: {
2229
+ label: "depth",
2230
+ disabled:
2231
+ !_vm.toolBarConfig ||
2232
+ !_vm.toolBarConfig.axisTypeList ||
2233
+ !_vm.toolBarConfig.axisTypeList.depth,
2234
+ },
2235
+ },
2236
+ [_vm._v("深度")]
2237
+ ),
2238
+ ],
2239
+ 1
2240
+ )
2241
+ : _vm._e(),
2318
2242
  _vm._v(" "),
2319
- _c("div", { staticClass: "label" }, [_vm._v("比例尺:")]),
2243
+ _vm.toolBarConfig.timeDepthRadioShow !== false
2244
+ ? _c("div", { staticClass: "divider" })
2245
+ : _vm._e(),
2320
2246
  _vm._v(" "),
2321
- _c(
2322
- "el-tooltip",
2323
- {
2324
- attrs: {
2325
- disabled: _vm.form.axisType === "depth",
2326
- content: "时间轴类型下不支持设置比例尺",
2327
- placement: "right",
2328
- effect: "dark",
2329
- },
2330
- },
2331
- [
2332
- _c(
2333
- "el-select",
2247
+ _vm.toolBarConfig.realHistoryRadioShow !== false
2248
+ ? _c(
2249
+ "el-radio-group",
2334
2250
  {
2335
- class: { "el-select-disabled": _vm.form.axisType !== "depth" },
2336
- staticStyle: { "margin-bottom": "8px" },
2337
- attrs: {
2338
- "popper-class": "kd-curve-2d-select-popup",
2339
- disabled: _vm.form.axisType !== "depth",
2340
- },
2251
+ staticClass: "radio-group",
2341
2252
  on: {
2342
2253
  change: function ($event) {
2343
- return _vm.changeForm($event, "scale")
2254
+ return _vm.changeForm($event, "dataType")
2344
2255
  },
2345
2256
  },
2346
2257
  model: {
2347
- value: _vm.form.scale,
2258
+ value: _vm.form.dataType,
2348
2259
  callback: function ($$v) {
2349
- _vm.$set(_vm.form, "scale", $$v);
2260
+ _vm.$set(_vm.form, "dataType", $$v);
2350
2261
  },
2351
- expression: "form.scale",
2262
+ expression: "form.dataType",
2352
2263
  },
2353
2264
  },
2354
- _vm._l(_vm.toolBarConfig.scaleList, function (item) {
2355
- return _c("el-option", {
2356
- key: item.value,
2357
- attrs: { label: item.label, value: item.value },
2358
- })
2359
- }),
2265
+ [
2266
+ _c(
2267
+ "el-radio",
2268
+ {
2269
+ attrs: {
2270
+ label: "real",
2271
+ disabled:
2272
+ !_vm.toolBarConfig ||
2273
+ !_vm.toolBarConfig.dataTypeList ||
2274
+ !_vm.toolBarConfig.dataTypeList.real,
2275
+ },
2276
+ },
2277
+ [_vm._v("实时数据")]
2278
+ ),
2279
+ _vm._v(" "),
2280
+ _c(
2281
+ "el-radio",
2282
+ {
2283
+ attrs: {
2284
+ label: "history",
2285
+ disabled:
2286
+ !_vm.toolBarConfig ||
2287
+ !_vm.toolBarConfig.dataTypeList ||
2288
+ !_vm.toolBarConfig.dataTypeList.history,
2289
+ },
2290
+ },
2291
+ [_vm._v("历史数据")]
2292
+ ),
2293
+ ],
2360
2294
  1
2361
- ),
2362
- ],
2363
- 1
2364
- ),
2295
+ )
2296
+ : _vm._e(),
2365
2297
  _vm._v(" "),
2366
- _c("div", { staticClass: "label" }, [_vm._v("时间范围:")]),
2298
+ _vm.toolBarConfig.realHistoryRadioShow !== false
2299
+ ? _c("div", { staticClass: "divider" })
2300
+ : _vm._e(),
2367
2301
  _vm._v(" "),
2368
- _c(
2369
- "el-tooltip",
2370
- {
2371
- attrs: {
2372
- disabled: !(_vm.form.axisType == "depth"),
2373
- content: _vm.getDisableTip("timeRange"),
2374
- placement: "right",
2375
- effect: "dark",
2376
- },
2377
- },
2378
- [
2379
- _c(
2380
- "el-select",
2302
+ _vm.toolBarConfig.headerFloatRadioShow !== false
2303
+ ? _c(
2304
+ "el-radio-group",
2381
2305
  {
2382
- class: { "el-select-disabled": _vm.form.axisType == "depth" },
2383
- staticStyle: { "margin-bottom": "8px" },
2384
- attrs: {
2385
- "popper-class": "kd-curve-2d-select-popup",
2386
- disabled: _vm.form.axisType == "depth",
2387
- },
2306
+ staticClass: "radio-group",
2388
2307
  on: {
2389
2308
  change: function ($event) {
2390
- return _vm.changeForm($event, "timeRange")
2309
+ return _vm.changeForm($event, "displayType")
2391
2310
  },
2392
2311
  },
2393
2312
  model: {
2394
- value: _vm.form.timeRange,
2313
+ value: _vm.form.displayType,
2395
2314
  callback: function ($$v) {
2396
- _vm.$set(_vm.form, "timeRange", $$v);
2315
+ _vm.$set(_vm.form, "displayType", $$v);
2397
2316
  },
2398
- expression: "form.timeRange",
2317
+ expression: "form.displayType",
2399
2318
  },
2400
2319
  },
2401
- _vm._l(_vm.toolBarConfig.timeRangeList, function (item) {
2402
- return _c("el-option", {
2403
- key: item.value,
2404
- attrs: { label: item.label, value: item.value },
2405
- })
2406
- }),
2320
+ [
2321
+ _c("el-radio", { attrs: { label: "header" } }, [
2322
+ _vm._v("表头数据"),
2323
+ ]),
2324
+ _vm._v(" "),
2325
+ _c("el-radio", { attrs: { label: "float" } }, [
2326
+ _vm._v("悬浮数据"),
2327
+ ]),
2328
+ ],
2407
2329
  1
2408
- ),
2409
- ],
2410
- 1
2411
- ),
2330
+ )
2331
+ : _vm._e(),
2412
2332
  _vm._v(" "),
2413
- _c("div", { staticClass: "label" }, [_vm._v("井深范围(m):")]),
2333
+ _vm.toolBarConfig.scaleSelectShow !== false
2334
+ ? _c("div", { staticClass: "label" }, [_vm._v("比例尺:")])
2335
+ : _vm._e(),
2414
2336
  _vm._v(" "),
2415
- _c(
2416
- "el-tooltip",
2417
- {
2418
- attrs: {
2419
- disabled: !(_vm.form.axisType == "time"),
2420
- content: _vm.getDisableTip("depthRange"),
2421
- placement: "right",
2422
- effect: "dark",
2423
- },
2424
- },
2425
- [
2426
- _c(
2427
- "el-select",
2337
+ _vm.toolBarConfig.scaleSelectShow !== false
2338
+ ? _c(
2339
+ "el-tooltip",
2428
2340
  {
2429
- class: { "el-select-disabled": _vm.form.axisType == "time" },
2430
- staticStyle: { "margin-bottom": "8px" },
2431
2341
  attrs: {
2432
- "popper-class": "kd-curve-2d-select-popup",
2433
- disabled: _vm.form.axisType == "time",
2342
+ disabled: _vm.form.axisType === "depth",
2343
+ content: "时间轴类型下不支持设置比例尺",
2344
+ placement: "right",
2345
+ effect: "dark",
2434
2346
  },
2435
- on: {
2436
- change: function ($event) {
2437
- return _vm.changeForm($event, "depthRange")
2347
+ },
2348
+ [
2349
+ _c(
2350
+ "el-select",
2351
+ {
2352
+ class: {
2353
+ "el-select-disabled": _vm.form.axisType !== "depth",
2354
+ },
2355
+ staticStyle: { "margin-bottom": "8px" },
2356
+ attrs: {
2357
+ "popper-class": "kd-curve-2d-select-popup",
2358
+ disabled: _vm.form.axisType !== "depth",
2359
+ },
2360
+ on: {
2361
+ change: function ($event) {
2362
+ return _vm.changeForm($event, "scale")
2363
+ },
2364
+ },
2365
+ model: {
2366
+ value: _vm.form.scale,
2367
+ callback: function ($$v) {
2368
+ _vm.$set(_vm.form, "scale", $$v);
2369
+ },
2370
+ expression: "form.scale",
2371
+ },
2438
2372
  },
2373
+ _vm._l(_vm.toolBarConfig.scaleList, function (item) {
2374
+ return _c("el-option", {
2375
+ key: item.value,
2376
+ attrs: { label: item.label, value: item.value },
2377
+ })
2378
+ }),
2379
+ 1
2380
+ ),
2381
+ ],
2382
+ 1
2383
+ )
2384
+ : _vm._e(),
2385
+ _vm._v(" "),
2386
+ _vm.toolBarConfig.timeRangeSelectShow !== false
2387
+ ? _c("div", { staticClass: "label" }, [_vm._v("时间范围:")])
2388
+ : _vm._e(),
2389
+ _vm._v(" "),
2390
+ _vm.toolBarConfig.timeRangeSelectShow !== false
2391
+ ? _c(
2392
+ "el-tooltip",
2393
+ {
2394
+ attrs: {
2395
+ disabled: !(_vm.form.axisType == "depth"),
2396
+ content: _vm.getDisableTip("timeRange"),
2397
+ placement: "right",
2398
+ effect: "dark",
2439
2399
  },
2440
- model: {
2441
- value: _vm.form.depthRange,
2442
- callback: function ($$v) {
2443
- _vm.$set(_vm.form, "depthRange", $$v);
2400
+ },
2401
+ [
2402
+ _c(
2403
+ "el-select",
2404
+ {
2405
+ class: { "el-select-disabled": _vm.form.axisType == "depth" },
2406
+ staticStyle: { "margin-bottom": "8px" },
2407
+ attrs: {
2408
+ "popper-class": "kd-curve-2d-select-popup",
2409
+ disabled: _vm.form.axisType == "depth",
2410
+ },
2411
+ on: {
2412
+ change: function ($event) {
2413
+ return _vm.changeForm($event, "timeRange")
2414
+ },
2415
+ },
2416
+ model: {
2417
+ value: _vm.form.timeRange,
2418
+ callback: function ($$v) {
2419
+ _vm.$set(_vm.form, "timeRange", $$v);
2420
+ },
2421
+ expression: "form.timeRange",
2422
+ },
2444
2423
  },
2445
- expression: "form.depthRange",
2424
+ _vm._l(_vm.toolBarConfig.timeRangeList, function (item) {
2425
+ return _c("el-option", {
2426
+ key: item.value,
2427
+ attrs: { label: item.label, value: item.value },
2428
+ })
2429
+ }),
2430
+ 1
2431
+ ),
2432
+ ],
2433
+ 1
2434
+ )
2435
+ : _vm._e(),
2436
+ _vm._v(" "),
2437
+ _vm.toolBarConfig.depthRangeSelectShow !== false
2438
+ ? _c("div", { staticClass: "label" }, [_vm._v("井深范围(m):")])
2439
+ : _vm._e(),
2440
+ _vm._v(" "),
2441
+ _vm.toolBarConfig.depthRangeSelectShow !== false
2442
+ ? _c(
2443
+ "el-tooltip",
2444
+ {
2445
+ attrs: {
2446
+ disabled: !(_vm.form.axisType == "time"),
2447
+ content: _vm.getDisableTip("depthRange"),
2448
+ placement: "right",
2449
+ effect: "dark",
2446
2450
  },
2447
2451
  },
2448
- _vm._l(_vm.toolBarConfig.depthRangeList, function (item) {
2449
- return _c("el-option", {
2450
- key: item.value,
2451
- attrs: { label: item.label, value: item.value },
2452
- })
2453
- }),
2452
+ [
2453
+ _c(
2454
+ "el-select",
2455
+ {
2456
+ class: { "el-select-disabled": _vm.form.axisType == "time" },
2457
+ staticStyle: { "margin-bottom": "8px" },
2458
+ attrs: {
2459
+ "popper-class": "kd-curve-2d-select-popup",
2460
+ disabled: _vm.form.axisType == "time",
2461
+ },
2462
+ on: {
2463
+ change: function ($event) {
2464
+ return _vm.changeForm($event, "depthRange")
2465
+ },
2466
+ },
2467
+ model: {
2468
+ value: _vm.form.depthRange,
2469
+ callback: function ($$v) {
2470
+ _vm.$set(_vm.form, "depthRange", $$v);
2471
+ },
2472
+ expression: "form.depthRange",
2473
+ },
2474
+ },
2475
+ _vm._l(_vm.toolBarConfig.depthRangeList, function (item) {
2476
+ return _c("el-option", {
2477
+ key: item.value,
2478
+ attrs: { label: item.label, value: item.value },
2479
+ })
2480
+ }),
2481
+ 1
2482
+ ),
2483
+ ],
2454
2484
  1
2455
- ),
2456
- ],
2457
- 1
2458
- ),
2485
+ )
2486
+ : _vm._e(),
2459
2487
  _vm._v(" "),
2460
2488
  _c(
2461
2489
  "div",
@@ -2568,14 +2596,16 @@ var __vue_render__$a = function () {
2568
2596
  })
2569
2597
  : _vm._e(),
2570
2598
  _vm._v(" "),
2571
- _c("div", { staticClass: "btn", on: { click: _vm.refresh } }, [
2572
- _c("img", {
2573
- staticClass: "icon",
2574
- attrs: { src: _vm.refreshIcon, alt: "刷新" },
2575
- }),
2576
- _vm._v(" "),
2577
- _c("span", [_vm._v("刷新")]),
2578
- ]),
2599
+ _vm.toolBarConfig.refreshBtnShow !== false
2600
+ ? _c("div", { staticClass: "btn", on: { click: _vm.refresh } }, [
2601
+ _c("img", {
2602
+ staticClass: "icon",
2603
+ attrs: { src: _vm.refreshIcon, alt: "刷新" },
2604
+ }),
2605
+ _vm._v(" "),
2606
+ _c("span", [_vm._v("刷新")]),
2607
+ ])
2608
+ : _vm._e(),
2579
2609
  _vm._v(" "),
2580
2610
  _vm.toolBarConfig.exportBtnShow !== false
2581
2611
  ? _c(
@@ -3245,7 +3275,7 @@ __vue_render__$a._withStripped = true;
3245
3275
  /* style */
3246
3276
  const __vue_inject_styles__$a = undefined;
3247
3277
  /* scoped */
3248
- const __vue_scope_id__$a = "data-v-1de81a62";
3278
+ const __vue_scope_id__$a = "data-v-9e2c85ea";
3249
3279
  /* module identifier */
3250
3280
  const __vue_module_identifier__$a = undefined;
3251
3281
  /* functional template */
@@ -6717,7 +6747,7 @@ var script$3 = {
6717
6747
  },
6718
6748
  };
6719
6749
 
6720
- var css_248z$4 = "@charset \"UTF-8\";\n.kd-lane-chart-container-header-item[data-v-c00b77ba] {\n height: 42px;\n background: var(--kd-lane-container-header-bg);\n border-radius: 0px 0px 0px 0px;\n color: var(--kd-lane-container-header-item-color, #333);\n border: unset;\n position: relative;\n cursor: pointer;\n}\n.kd-lane-chart-container-header-item_warning[data-v-c00b77ba] {\n background: var(--kd-lane-container-header-item-warning-color, rgba(248, 108, 89, 0.6));\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container[data-v-c00b77ba] {\n height: 100%;\n width: 100%;\n position: relative;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: 400;\n font-size: 10px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .left[data-v-c00b77ba] {\n position: absolute;\n left: 2px;\n bottom: 2px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .center[data-v-c00b77ba] {\n position: absolute;\n left: 50%;\n top: 50%;\n font-size: 14px;\n transform: translate(-50%, -50%);\n display: flex;\n flex-direction: column;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .center .paramsTitle[data-v-c00b77ba] {\n /* 文字不换行,超出显示省略号 */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: 400;\n font-size: 12px;\n color: var(--kd-lane-container-header-item-color, #333);\n text-align: center;\n font-style: normal;\n text-transform: none;\n margin-bottom: 2px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .center .paramsData[data-v-c00b77ba] {\n /* 文字不换行,超出显示省略号 */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: bold;\n font-size: 14px;\n text-align: center;\n font-style: normal;\n text-transform: none;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .right[data-v-c00b77ba] {\n position: absolute;\n right: 2px;\n bottom: 2px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .gradient-display[data-v-c00b77ba] {\n position: absolute;\n height: 2px;\n left: 0;\n bottom: 0;\n right: 0;\n}";
6750
+ var css_248z$4 = "@charset \"UTF-8\";\n.kd-lane-chart-container-header-item[data-v-5e4488b8] {\n height: 42px;\n flex-shrink: 0;\n background: var(--kd-lane-container-header-bg);\n border-radius: 0px 0px 0px 0px;\n color: var(--kd-lane-container-header-item-color, #333);\n border: unset;\n position: relative;\n cursor: pointer;\n}\n.kd-lane-chart-container-header-item_warning[data-v-5e4488b8] {\n background: var(--kd-lane-container-header-item-warning-color, rgba(248, 108, 89, 0.6));\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container[data-v-5e4488b8] {\n height: 100%;\n width: 100%;\n position: relative;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: 400;\n font-size: 10px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .left[data-v-5e4488b8] {\n position: absolute;\n left: 2px;\n bottom: 2px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .center[data-v-5e4488b8] {\n position: absolute;\n left: 50%;\n top: 50%;\n font-size: 14px;\n transform: translate(-50%, -50%);\n display: flex;\n flex-direction: column;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .center .paramsTitle[data-v-5e4488b8] {\n /* 文字不换行,超出显示省略号 */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: 400;\n font-size: 12px;\n color: var(--kd-lane-container-header-item-color, #333);\n text-align: center;\n font-style: normal;\n text-transform: none;\n margin-bottom: 2px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .center .paramsData[data-v-5e4488b8] {\n /* 文字不换行,超出显示省略号 */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-weight: bold;\n font-size: 14px;\n text-align: center;\n font-style: normal;\n text-transform: none;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .right[data-v-5e4488b8] {\n position: absolute;\n right: 2px;\n bottom: 2px;\n}\n.kd-lane-chart-container-header-item .kd-lane-chart-container-text-container .gradient-display[data-v-5e4488b8] {\n position: absolute;\n height: 2px;\n left: 0;\n bottom: 0;\n right: 0;\n}";
6721
6751
  styleInject(css_248z$4);
6722
6752
 
6723
6753
  /* script */
@@ -6767,7 +6797,7 @@ __vue_render__$3._withStripped = true;
6767
6797
  /* style */
6768
6798
  const __vue_inject_styles__$3 = undefined;
6769
6799
  /* scoped */
6770
- const __vue_scope_id__$3 = "data-v-c00b77ba";
6800
+ const __vue_scope_id__$3 = "data-v-5e4488b8";
6771
6801
  /* module identifier */
6772
6802
  const __vue_module_identifier__$3 = undefined;
6773
6803
  /* functional template */
@@ -6937,6 +6967,8 @@ var script$2 = {
6937
6967
  resizeTimeout: null,
6938
6968
  // 用于缓存车道头部宽度,避免无限循环
6939
6969
  headerWidthCache: {},
6970
+ // 上次触发 visibleDataChange 的参数,用于比较是否发生变化
6971
+ lastVisibleDataChangeParams: null,
6940
6972
  };
6941
6973
  },
6942
6974
  created() {
@@ -6955,10 +6987,10 @@ var script$2 = {
6955
6987
  window.addEventListener("keyup", this.handleKeyUp);
6956
6988
  window.addEventListener("mousemove", this.resize);
6957
6989
  window.addEventListener("mouseup", this.stopResize);
6958
- // 初始化tooltip显示隐藏
6959
- this.showTooltip = this.formCache.displayType == "float";
6960
6990
  // 初始化大小变化监听器
6961
6991
  this.initResizeObserver();
6992
+ // 初始化tooltip显示隐藏
6993
+ this.showTooltip = this.formCache.displayType == "float";
6962
6994
  },
6963
6995
  beforeDestroy() {
6964
6996
  window.removeEventListener("keydown", this.handleKeyDown);
@@ -7020,6 +7052,12 @@ var script$2 = {
7020
7052
  this.startIndex = targetIndex - Math.ceil(this.windowSize / 2);
7021
7053
  this.updateLanesChartOption("", "series");
7022
7054
  },
7055
+ hiddenContextMenu() {
7056
+ const ctxRef = this.$refs.vueSimpleContextMenu;
7057
+ if (ctxRef) {
7058
+ ctxRef.hideContextMenu();
7059
+ }
7060
+ },
7023
7061
  // 将当前页面px转换为cm
7024
7062
  pxToCm() {
7025
7063
  const container = this.$refs.targetDom;
@@ -7031,13 +7069,21 @@ var script$2 = {
7031
7069
  return cm;
7032
7070
  },
7033
7071
  getXAxisRangeByHeader(lineInfo, validData = []) {
7034
- const headerMin = Number(lineInfo && lineInfo.min);
7035
- const headerMax = Number(lineInfo && lineInfo.max);
7036
- const dataMin = Math.floor(Math.min(...validData));
7037
- const dataMax = Math.ceil(Math.max(...validData));
7072
+ let headerMin = 0;
7073
+ let headerMax = 1;
7074
+ if(lineInfo && Object.prototype.hasOwnProperty.call(lineInfo, "min")){
7075
+ headerMin = Number(lineInfo.min);
7076
+ }else {
7077
+ headerMin = Math.floor(Math.min(...validData));
7078
+ }
7079
+ if(lineInfo && Object.prototype.hasOwnProperty.call(lineInfo, "max")){
7080
+ headerMax = Number(lineInfo.max);
7081
+ }else {
7082
+ headerMax = Math.ceil(Math.max(...validData));
7083
+ }
7038
7084
 
7039
- const min = Number.isFinite(headerMin) ? headerMin : Number.isFinite(dataMin) ? dataMin : 0;
7040
- const max = Number.isFinite(headerMax) ? headerMax : Number.isFinite(dataMax) ? dataMax : 0;
7085
+ const min = headerMin > 0 ? headerMin : 0;
7086
+ const max = headerMax > 0 ? headerMax : 1;
7041
7087
  return { min, max };
7042
7088
  },
7043
7089
  // 通过 laneId 切换指定泳道 x 轴类型(value/log)
@@ -7256,6 +7302,7 @@ var script$2 = {
7256
7302
  },
7257
7303
 
7258
7304
  handleWheel(e) {
7305
+ if (this.isScrollingToHeader(e)) return;
7259
7306
  e.preventDefault();
7260
7307
  const dataLength = (this.realTimeData && this.realTimeData.length) || 0;
7261
7308
  this.wheelDelta = Math.sign(e.deltaY);
@@ -7356,7 +7403,7 @@ var script$2 = {
7356
7403
  const headerKey = entry.target.textContent || entry.target.innerText || "unknown";
7357
7404
  const currentWidth = entry.contentRect.width;
7358
7405
  const cachedWidth = this.headerWidthCache[headerKey];
7359
-
7406
+ // console.log("headerKey", headerKey, "currentWidth", currentWidth, "cachedWidth", cachedWidth);
7360
7407
  // 只有当宽度实际变化时才触发
7361
7408
  if (cachedWidth === undefined || Math.abs(currentWidth - cachedWidth) > 1) {
7362
7409
  this.headerWidthCache[headerKey] = currentWidth;
@@ -7425,7 +7472,7 @@ var script$2 = {
7425
7472
  data.lineSort = event.added.newIndex ?? 0;
7426
7473
  this.dragUpdateLine(data).then(() => {
7427
7474
  let promises = lane.lines.map((lines, index) => {
7428
- lines.lineSort = index;
7475
+ lines.lineSort = index + 1;
7429
7476
  return this.dragUpdateLine(lines);
7430
7477
  });
7431
7478
  Promise.all(promises).then(() => {
@@ -7441,7 +7488,7 @@ var script$2 = {
7441
7488
  currentLanes.forEach((lane) => {
7442
7489
  if (lane.laneId == data.laneId) {
7443
7490
  let promises = lane.lines.map((lines, index) => {
7444
- lines.lineSort = index;
7491
+ lines.lineSort = index + 1;
7445
7492
  return this.dragUpdateLine(lines);
7446
7493
  });
7447
7494
  Promise.all(promises).then(() => {
@@ -7872,9 +7919,11 @@ var script$2 = {
7872
7919
  }
7873
7920
  }
7874
7921
  },
7875
- showContextMenu(event, item) {
7922
+ showContextMenu(event, item) {
7876
7923
  event.stopPropagation();
7924
+ this.$emit("showContextMenu", item);
7877
7925
  this.$refs.vueSimpleContextMenu.showMenu(event, item);
7926
+
7878
7927
  },
7879
7928
  optionClicked(event) {
7880
7929
  const { option, item } = event;
@@ -7944,8 +7993,25 @@ var script$2 = {
7944
7993
  this.laneWidthOverrides = {};
7945
7994
  }
7946
7995
  this.$emit("template-change", this.currentTemplate);
7996
+ this.reobserveHeaders();
7947
7997
  this.updateLanesChartOption();
7948
7998
  },
7999
+ getFirstDataIndexItem(seriesData) {
8000
+ // 入参校验:确保是数组且非空
8001
+ if (!Array.isArray(seriesData) || seriesData.length === 0) {
8002
+ return null;
8003
+ }
8004
+
8005
+ // 遍历数组,找到第一个包含 dataIndex 的项
8006
+ for (const item of seriesData) {
8007
+ if (typeof item.dataIndex !== "undefined" && item.dataIndex !== null) {
8008
+ return item;
8009
+ }
8010
+ }
8011
+
8012
+ // 无匹配项返回 null
8013
+ return null;
8014
+ },
7949
8015
  getDefaultLaneChartOption() {
7950
8016
  const option = {
7951
8017
  backgroundColor: getCssVariable("--kd-lane-container-item-bg"),
@@ -7986,7 +8052,7 @@ var script$2 = {
7986
8052
  ],
7987
8053
  yAxis: [
7988
8054
  {
7989
- type: this.formCache.axisType == "time" ? "value" : "category",
8055
+ type: "value",
7990
8056
  inverse: true,
7991
8057
  boundaryGap: false,
7992
8058
  scale: true,
@@ -8037,18 +8103,37 @@ var script$2 = {
8037
8103
  formatter: (params) => {
8038
8104
  if (this.formCache.displayType == "header") {
8039
8105
  let dataIndexItem = (params.seriesData && params.seriesData[0] && params.seriesData[0].dataIndex) || null;
8106
+ // let dataIndexItem = this.getFirstDataIndexItem(params.seriesData);
8040
8107
  if (dataIndexItem !== null) {
8041
8108
  this.headerData = this.visibleData[dataIndexItem];
8109
+ // this.headerData = this.visibleData[dataIndexItem.dataIndex];
8042
8110
  } else {
8043
8111
  this.headerData = {};
8044
8112
  }
8045
8113
  }
8046
- // 时间轴模式:格式化时间戳为可读时间
8047
8114
  if (this.formCache.axisType == "time") {
8048
- // 需要显示年月日时分秒
8049
- return this.timestampToYMDHMS(params.value);
8115
+ return this.timestampToHms(params.value);
8116
+ } else {
8117
+ return params.value.toString();
8050
8118
  }
8051
- return params.value;
8119
+ // if (this.formCache.axisType == "time") {
8120
+ // // 时间轴模式:params.value 是时间戳
8121
+ // this.headerData =
8122
+ // this.visibleData.find(
8123
+ // (item) =>
8124
+ // this.toMillisecondTimestamp(item && item[this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType]]) == params.value,
8125
+ // ) || {};
8126
+ // } else {
8127
+ // this.headerData =
8128
+ // this.visibleData.find((item) => item && item[this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType]] == params.value) ||
8129
+ // {};
8130
+ // }
8131
+ // }
8132
+ // // 时间轴模式:格式化时间戳为可读时间
8133
+ // if (this.formCache.axisType == "time") {
8134
+ // return this.timestampToHms(params.value);
8135
+ // }
8136
+ // return params.value;
8052
8137
  },
8053
8138
  },
8054
8139
  },
@@ -8060,6 +8145,7 @@ var script$2 = {
8060
8145
  color: getCssVariable("---default-text-color"),
8061
8146
  },
8062
8147
  formatter: (series) => {
8148
+ // 根据seriesName去重,保留数值最大的项,或者在有缺失值时保留缺失值的项
8063
8149
  const uniqueSeries = series
8064
8150
  .filter((item) => item.seriesName !== "helper")
8065
8151
  .reduce((acc, current) => {
@@ -8115,15 +8201,14 @@ var script$2 = {
8115
8201
  const outerDiv = document.createElement("div");
8116
8202
  uniqueSeries.forEach((params) => {
8117
8203
  const { seriesName, value, color } = params;
8118
- if (seriesName == "helper") return;
8119
8204
  const innerDiv = document.createElement("div");
8120
8205
  innerDiv.style = "display: flex; align-items: center;";
8121
8206
  const markerDiv = document.createElement("div");
8122
8207
  markerDiv.style = `height: 10px; width:10px;font-size:10px; border-radius:8px; gap: 5px; background-color:${color}`;
8123
8208
  const textSpan = document.createElement("span");
8124
8209
  let xValue = value;
8125
- // 时间轴模式:value 是 [x, y] 格式,取 x 值
8126
- if (this.formCache.axisType == "time" && Array.isArray(value)) {
8210
+ // 时间轴和深度轴模式:value 是 [x, y] 格式,取 x 值
8211
+ if (Array.isArray(value)) {
8127
8212
  xValue = value[0];
8128
8213
  }
8129
8214
  if (xValue == undefined || xValue == null) {
@@ -8159,18 +8244,6 @@ var script$2 = {
8159
8244
 
8160
8245
  return `${h}:${m}:${s}`;
8161
8246
  },
8162
-
8163
- timestampToYMDHMS(timestamp) {
8164
- const date = new Date(timestamp);
8165
- const h = String(date.getHours()).padStart(2, "0");
8166
- const m = String(date.getMinutes()).padStart(2, "0");
8167
- const s = String(date.getSeconds()).padStart(2, "0");
8168
- const y = date.getFullYear();
8169
- const month = String(date.getMonth() + 1).padStart(2, "0");
8170
- const day = String(date.getDate()).padStart(2, "0");
8171
- return `${y}-${month}-${day} ${h}:${m}:${s}`;
8172
- },
8173
-
8174
8247
  toMillisecondTimestamp(time) {
8175
8248
  if (time === null || time === undefined) return Date.now();
8176
8249
  let timestamp = new Date(time).getTime();
@@ -8215,23 +8288,26 @@ var script$2 = {
8215
8288
 
8216
8289
  if (!lanes || lanes.length === 0) return;
8217
8290
 
8218
- // 深度轴数据
8219
8291
  let depthData = [];
8220
- // 时间轴数据
8292
+ let timestamps = [];
8293
+
8221
8294
  let yAxisMin = 0;
8222
8295
  let yAxisMax = 0;
8223
8296
 
8297
+ // 获取当前轴类型的键
8298
+ const axisKey =
8299
+ (this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType]) ||
8300
+ (this.formCache.axisType === "time" ? "time" : "depth");
8301
+
8224
8302
  if (this.formCache.axisType == "time") {
8225
8303
  // 时间轴模式:使用毫秒时间戳
8226
- const timestamps = realTimeData.map((item) =>
8227
- this.toMillisecondTimestamp(item[this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType]]),
8228
- );
8304
+ timestamps = realTimeData.map((item) => this.toMillisecondTimestamp(item[axisKey]));
8229
8305
  yAxisMin = Math.min(...timestamps);
8230
8306
  yAxisMax = Math.max(...timestamps);
8231
8307
  } else {
8232
- depthData = realTimeData.map(
8233
- (i) => +i[this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType]],
8234
- );
8308
+ depthData = realTimeData.map((i) => +i[axisKey]);
8309
+ yAxisMin = Math.min(...depthData);
8310
+ yAxisMax = Math.max(...depthData);
8235
8311
  }
8236
8312
 
8237
8313
  const paramNameMap = {};
@@ -8282,24 +8358,32 @@ var script$2 = {
8282
8358
  }
8283
8359
  }
8284
8360
  } else {
8285
- option.yAxis[0].data = depthData;
8361
+ if (yAxisMin === yAxisMax) {
8362
+ yAxisMin = yAxisMin - 1;
8363
+ yAxisMax = yAxisMax + 1;
8364
+ }
8365
+ option.yAxis[0].min = yAxisMin;
8366
+ option.yAxis[0].max = yAxisMax;
8367
+ // 深度轴不需要 data 属性
8368
+ delete option.yAxis[0].data;
8286
8369
 
8287
8370
  // 深度轴自适应间隔:根据数据量计算合适的间隔
8288
- const dataCount = depthData.length;
8371
+ const depthRange = yAxisMax - yAxisMin;
8372
+ const dataCount = realTimeData.length;
8289
8373
  if (dataCount > 0) {
8290
8374
  // 根据数据量设置合适的间隔
8291
8375
  if (dataCount < 10) {
8292
- // 数据量较少,显示所有标签
8293
- option.yAxis[0].interval = 0;
8376
+ // 数据量较少,间隔可以小一些
8377
+ option.yAxis[0].interval = depthRange / 5;
8294
8378
  } else if (dataCount < 50) {
8295
8379
  // 数据量中等
8296
- option.yAxis[0].interval = Math.floor(dataCount / 10);
8380
+ option.yAxis[0].interval = depthRange / 10;
8297
8381
  } else if (dataCount < 100) {
8298
8382
  // 数据量较多
8299
- option.yAxis[0].interval = Math.floor(dataCount / 15);
8383
+ option.yAxis[0].interval = depthRange / 15;
8300
8384
  } else {
8301
8385
  // 数据量很多
8302
- option.yAxis[0].interval = Math.floor(dataCount / 20);
8386
+ option.yAxis[0].interval = depthRange / 20;
8303
8387
  }
8304
8388
  }
8305
8389
  }
@@ -8366,9 +8450,13 @@ var script$2 = {
8366
8450
  lane &&
8367
8451
  lane.lines &&
8368
8452
  lane.lines.forEach((lineInfo, lineIndex) => {
8369
- // if (lineInfo.isUsed === "0") return;
8370
8453
  let seriesData = [];
8371
8454
  let validData = [];
8455
+ // 获取当前轴类型的键
8456
+ const axisKey =
8457
+ (this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType]) ||
8458
+ (this.formCache.axisType === "time" ? "time" : "depth");
8459
+
8372
8460
  if (this.formCache.axisType == "time") {
8373
8461
  // 时间轴模式:数据格式为 [x, y],其中 y 是时间戳
8374
8462
  let currentParam = this.params.find((p) => p.paramId == lineInfo.paramId);
@@ -8388,7 +8476,7 @@ var script$2 = {
8388
8476
  }
8389
8477
  }
8390
8478
  // 返回 [x, y] 格式,y 是时间戳
8391
- return [value, this.toMillisecondTimestamp(item[this.toolBarConfig.axisTypeList[this.formCache.axisType]])];
8479
+ return [value, this.toMillisecondTimestamp(item[axisKey])];
8392
8480
  });
8393
8481
  validData = seriesData.filter((v) => Number.isFinite(+v[0]));
8394
8482
  } else {
@@ -8409,9 +8497,10 @@ var script$2 = {
8409
8497
  });
8410
8498
  }
8411
8499
  }
8412
- return value;
8500
+ // 返回 [x, y] 格式,y 是深度值
8501
+ return [value, +item[axisKey]];
8413
8502
  });
8414
- validData = seriesData.filter((v) => Number.isFinite(+v));
8503
+ validData = seriesData.filter((v) => Number.isFinite(+v[0]));
8415
8504
  }
8416
8505
  const { min, max } = this.getXAxisRangeByHeader(lineInfo, validData);
8417
8506
 
@@ -8464,13 +8553,13 @@ var script$2 = {
8464
8553
  },
8465
8554
  data: this.markLineData
8466
8555
  .map((item, index) => {
8467
- // 时间轴模式:将深度值转换为时间戳
8556
+ // 尝试精确匹配
8468
8557
  const findItem = this.realTimeData.find((d) => d[this.toolBarConfig.axisTypeList[this.formCache.axisType]] == item);
8469
8558
  if (findItem) {
8470
8559
  if (this.formCache.axisType == "time") {
8471
8560
  return { yAxis: this.toMillisecondTimestamp(findItem[this.toolBarConfig.axisTypeList[this.formCache.axisType]]) };
8472
8561
  } else {
8473
- return { yAxis: findItem[this.toolBarConfig.axisTypeList[this.formCache.axisType]] + "" };
8562
+ return { yAxis: Number(findItem[this.toolBarConfig.axisTypeList[this.formCache.axisType]]) };
8474
8563
  }
8475
8564
  } else {
8476
8565
  // 精确匹配失败,找到最接近的深度值
@@ -8504,7 +8593,7 @@ var script$2 = {
8504
8593
  // ===== 面积图 =====
8505
8594
  if (lineInfo.lineType === "area") {
8506
8595
  // 只对时间轴模式生效
8507
- if (this.formCache.axisType == "time" && seriesData.length > 0) {
8596
+ if (seriesData.length > 0) {
8508
8597
  // 找到第一个有效的数据点
8509
8598
  const firstValidPoint = seriesData.find((point) => Number.isFinite(+point[0]));
8510
8599
  if (firstValidPoint) {
@@ -8540,13 +8629,18 @@ var script$2 = {
8540
8629
 
8541
8630
  colors.push(color);
8542
8631
  });
8632
+ // 获取当前轴类型的键
8633
+ const axisKey =
8634
+ (this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType]) ||
8635
+ (this.formCache.axisType === "time" ? "time" : "depth");
8636
+
8543
8637
  if (series.length > 0 && this.formCache.axisType == "depth") {
8544
8638
  let min = Math.max(...lane.lines.map((item) => this.getXAxisRangeByHeader(item).min));
8545
- // 兜底
8639
+ // 兜底:深度轴模式使用 [x, y] 格式
8546
8640
  series.unshift({
8547
8641
  name: "helper",
8548
8642
  type: "line",
8549
- data: realTimeData.map(() => min),
8643
+ data: realTimeData.map((item) => [min, +item[axisKey]]),
8550
8644
  lineStyle: {
8551
8645
  opacity: 0,
8552
8646
  },
@@ -8559,10 +8653,7 @@ var script$2 = {
8559
8653
  series.unshift({
8560
8654
  name: "helper",
8561
8655
  type: "line",
8562
- data: realTimeData.map((item) => [
8563
- min,
8564
- this.toMillisecondTimestamp(item[this.toolBarConfig.axisTypeList[this.formCache.axisType]]),
8565
- ]),
8656
+ data: realTimeData.map((item) => [min, this.toMillisecondTimestamp(item[axisKey])]),
8566
8657
  lineStyle: {
8567
8658
  opacity: 0,
8568
8659
  },
@@ -8587,14 +8678,6 @@ var script$2 = {
8587
8678
  } catch (e) {
8588
8679
  console.error(e);
8589
8680
  this.clearEcharts();
8590
- this.realTimeDataLoading = false;
8591
- } finally {
8592
- // 延迟重置标记,给ECharts足够的时间完成渲染
8593
- setTimeout(() => {
8594
- this.isUpdatingChart = false;
8595
- // 图表更新后重新监听车道头部元素
8596
- this.reobserveHeaders();
8597
- }, 100);
8598
8681
  }
8599
8682
  },
8600
8683
  async clearEcharts() {
@@ -8716,57 +8799,64 @@ var script$2 = {
8716
8799
  // 数据去重
8717
8800
  deduplicateAndSort(existingData, newData, uniqueKey, options = {}) {
8718
8801
  // 处理默认配置
8719
- // const { sortOrder = "asc" } = options;
8802
+ const { sortOrder = "asc" } = options;
8720
8803
  const newDataArr = Array.isArray(newData) ? newData : [newData];
8721
8804
  let resultData = JSON.parse(JSON.stringify(existingData));
8722
-
8723
- // 检查两个对象是否所有字段都相同
8724
- const isObjectsEqual = (obj1, obj2) => {
8725
- const keys1 = Object.keys(obj1);
8726
- const keys2 = Object.keys(obj2);
8727
-
8728
- if (keys1.length !== keys2.length) {
8729
- return false;
8805
+ newDataArr.forEach((newItem) => {
8806
+ if (!newItem || !newItem[uniqueKey]) return;
8807
+ const duplicateIndex = resultData.findIndex((item) => item[uniqueKey] === newItem[uniqueKey]);
8808
+ if (duplicateIndex > -1) {
8809
+ resultData[duplicateIndex] = newItem;
8810
+ } else {
8811
+ resultData.push(newItem);
8730
8812
  }
8813
+ });
8814
+ resultData.sort((a, b) => {
8815
+ const valA = a[uniqueKey];
8816
+ const valB = b[uniqueKey];
8731
8817
 
8732
- for (const key of keys1) {
8733
- if (obj1[key] !== obj2[key]) {
8734
- return false;
8735
- }
8818
+ if (typeof valA === "string" && typeof valB === "string") {
8819
+ return sortOrder === "asc" ? valA.localeCompare(valB) : valB.localeCompare(valA);
8820
+ } else {
8821
+ return sortOrder === "asc" ? valA - valB : valB - valA;
8736
8822
  }
8823
+ });
8737
8824
 
8738
- return true;
8739
- };
8825
+ return resultData;
8826
+ },
8827
+ // 根据 uniqueKey 去重并排序(只考虑 uniqueKey)
8828
+ deduplicateByUniqueKey(existingData, newData, uniqueKey, options = {}) {
8829
+ // 处理默认配置
8830
+ const { sortOrder = "asc" } = options;
8831
+ const newDataArr = Array.isArray(newData) ? newData : [newData];
8740
8832
 
8741
- newDataArr.forEach((newItem) => {
8742
- if (!newItem || !newItem[uniqueKey]) return;
8833
+ // 合并数据并去重(只根据 uniqueKey)
8834
+ let resultData = JSON.parse(JSON.stringify(existingData));
8743
8835
 
8744
- // 首先根据 uniqueKey 查找匹配项
8745
- const itemsWithSameKey = resultData.filter((item) => item[uniqueKey] === newItem[uniqueKey]);
8836
+ // 创建一个 Set 来存储已存在的 uniqueKey
8837
+ const existingKeys = new Set(resultData.map((item) => item[uniqueKey]));
8746
8838
 
8747
- // 检查是否存在完全相同的项
8748
- const hasExactDuplicate = itemsWithSameKey.some((item) => isObjectsEqual(item, newItem));
8839
+ // 添加新数据(只添加 uniqueKey 不存在的项)
8840
+ newDataArr.forEach((newItem) => {
8841
+ if (!newItem || !newItem[uniqueKey]) return;
8749
8842
 
8750
- if (hasExactDuplicate) {
8751
- // 如果存在完全相同的项,则不做操作
8752
- return;
8843
+ if (!existingKeys.has(newItem[uniqueKey])) {
8844
+ resultData.push(newItem);
8845
+ existingKeys.add(newItem[uniqueKey]);
8753
8846
  }
8754
-
8755
- // 如果没有完全相同的项,则添加到结果中
8756
- resultData.push(newItem);
8757
8847
  });
8758
8848
 
8759
- // 去重后排序
8760
- // resultData.sort((a, b) => {
8761
- // const valA = a[uniqueKey];
8762
- // const valB = b[uniqueKey];
8849
+ // 排序
8850
+ resultData.sort((a, b) => {
8851
+ const valA = a[uniqueKey];
8852
+ const valB = b[uniqueKey];
8763
8853
 
8764
- // if (typeof valA === "string" && typeof valB === "string") {
8765
- // return sortOrder === "asc" ? valA.localeCompare(valB) : valB.localeCompare(valA);
8766
- // } else {
8767
- // return sortOrder === "asc" ? valA - valB : valB - valA;
8768
- // }
8769
- // });
8854
+ if (typeof valA === "string" && typeof valB === "string") {
8855
+ return sortOrder === "asc" ? valA.localeCompare(valB) : valB.localeCompare(valA);
8856
+ } else {
8857
+ return sortOrder === "asc" ? valA - valB : valB - valA;
8858
+ }
8859
+ });
8770
8860
 
8771
8861
  return resultData;
8772
8862
  },
@@ -8999,7 +9089,7 @@ var script$2 = {
8999
9089
  const gapCount = Math.max(0, this.lineCount - 1);
9000
9090
  return {
9001
9091
  ...common,
9002
- height: `${this.lineCount * (this.formCache.displayType == 'header' ? this.headerItemHeight : this.headerItemHeight * 0.8) + this.headerPadding * 2 + gapCount * this.itemGap}px`,
9092
+ height: `${this.lineCount * (this.formCache.displayType == "header" ? this.headerItemHeight : this.headerItemHeight * 0.8) + this.headerPadding * 2 + gapCount * this.itemGap}px`,
9003
9093
  "min-height": "60px",
9004
9094
  };
9005
9095
  }
@@ -9016,7 +9106,7 @@ var script$2 = {
9016
9106
  } else {
9017
9107
  const gapCount = Math.max(0, this.lineCount - 1);
9018
9108
  return {
9019
- height: `${this.lineCount * (this.formCache.displayType == 'header' ? this.headerItemHeight : this.headerItemHeight * 0.8) + this.headerPadding * 2 + gapCount * this.itemGap}px`,
9109
+ height: `${this.lineCount * (this.formCache.displayType == "header" ? this.headerItemHeight : this.headerItemHeight * 0.8) + this.headerPadding * 2 + gapCount * this.itemGap}px`,
9020
9110
  "min-height": "60px",
9021
9111
  };
9022
9112
  }
@@ -9036,6 +9126,7 @@ var script$2 = {
9036
9126
  handler(newVal) {
9037
9127
  this.$nextTick(() => {
9038
9128
  this.markLineData = newVal;
9129
+ this.updateLanesChartOption(null , 'series');
9039
9130
  });
9040
9131
  },
9041
9132
  deep: true,
@@ -9075,6 +9166,17 @@ var script$2 = {
9075
9166
  const firstValue = first && first[axisKey];
9076
9167
  const lastValue = last && last[axisKey];
9077
9168
 
9169
+ const newParams = { firstValue, lastValue, settings: cloneDeep(this.formCache) };
9170
+
9171
+ // 比较是否与上次触发时的参数相同
9172
+ if (this.lastVisibleDataChangeParams &&
9173
+ this.lastVisibleDataChangeParams.firstValue === firstValue &&
9174
+ this.lastVisibleDataChangeParams.lastValue === lastValue &&
9175
+ JSON.stringify(this.lastVisibleDataChangeParams.settings) === JSON.stringify(newParams.settings)) {
9176
+ return;
9177
+ }
9178
+
9179
+ this.lastVisibleDataChangeParams = newParams;
9078
9180
  this.$emit("visibleDataChange", { firstValue, lastValue, settings: this.formCache });
9079
9181
  },
9080
9182
  immediate: true,
@@ -9112,7 +9214,7 @@ var script$2 = {
9112
9214
  if (!Array.isArray(data)) {
9113
9215
  data = [data];
9114
9216
  }
9115
- this.realTimeData = this.realTimeData = this.deduplicateAndSort(
9217
+ this.realTimeData = this.realTimeData = this.deduplicateByUniqueKey(
9116
9218
  this.realTimeData,
9117
9219
  data,
9118
9220
  this.toolBarConfig.axisTypeList && this.toolBarConfig.axisTypeList[this.formCache.axisType],
@@ -9139,7 +9241,7 @@ var script$2 = {
9139
9241
  },
9140
9242
  };
9141
9243
 
9142
- var css_248z$3 = ".kd-lane-chart-container[data-v-518c21d0] {\n height: 100%;\n width: 100%;\n overflow: hidden;\n position: relative;\n border: 1px solid var(--kd-lane-container-border-color, #333);\n display: flex;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container[data-v-518c21d0],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container[data-v-518c21d0] {\n height: 100%;\n min-width: 0;\n z-index: 1;\n display: flex;\n flex-direction: column;\n position: relative;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle[data-v-518c21d0],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle[data-v-518c21d0] {\n position: absolute;\n top: 0;\n bottom: 0;\n width: 4px;\n cursor: col-resize;\n z-index: 10;\n background-color: transparent;\n transition: background-color 0.2s;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle[data-v-518c21d0]:hover,\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle[data-v-518c21d0]:hover {\n background-color: var(--resizer-bg-color);\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle.kd-lane-resize-handle-left[data-v-518c21d0],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle.kd-lane-resize-handle-left[data-v-518c21d0] {\n left: 0;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle.kd-lane-resize-handle-right[data-v-518c21d0],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle.kd-lane-resize-handle-right[data-v-518c21d0] {\n right: -2px;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-chart-lane-header[data-v-518c21d0],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-chart-lane-header[data-v-518c21d0] {\n max-height: 40%;\n z-index: 2;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-chart-lane-header .header-list-gap[data-v-518c21d0],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-chart-lane-header .header-list-gap[data-v-518c21d0] {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container-echart[data-v-518c21d0] {\n flex: 1;\n overflow-x: hidden;\n overflow-y: auto;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container-echart .kd-lane-chart-lane-container-echart-content[data-v-518c21d0] {\n height: 100%;\n overflow: hidden;\n}\n.kd-lane-chart-container .border-left[data-v-518c21d0] {\n border-left: 1px solid var(--kd-lane-container-border-color, #333);\n}\n.kd-lane-chart-container .border-bottom[data-v-518c21d0] {\n border-bottom: 1px solid var(--kd-lane-container-border-color, #333);\n}\n.kd-lane-chart-container .border-right[data-v-518c21d0] {\n border-right: 1px solid var(--kd-lane-container-border-color, #333);\n}\n.kd-lane-chart-container .kd-lane-chart-container-draw-area[data-v-518c21d0] {\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 3;\n border: none;\n}";
9244
+ var css_248z$3 = ".kd-lane-chart-container[data-v-5a97fc52] {\n height: 100%;\n width: 100%;\n overflow: hidden;\n position: relative;\n border: 1px solid var(--kd-lane-container-border-color, #333);\n display: flex;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container[data-v-5a97fc52],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container[data-v-5a97fc52] {\n height: 100%;\n min-width: 0;\n z-index: 1;\n display: flex;\n flex-direction: column;\n position: relative;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle[data-v-5a97fc52],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle[data-v-5a97fc52] {\n position: absolute;\n top: 0;\n bottom: 0;\n width: 4px;\n cursor: col-resize;\n z-index: 10;\n background-color: transparent;\n transition: background-color 0.2s;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle[data-v-5a97fc52]:hover,\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle[data-v-5a97fc52]:hover {\n background-color: var(--resizer-bg-color);\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle.kd-lane-resize-handle-left[data-v-5a97fc52],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle.kd-lane-resize-handle-left[data-v-5a97fc52] {\n left: 0;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-resize-handle.kd-lane-resize-handle-right[data-v-5a97fc52],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-resize-handle.kd-lane-resize-handle-right[data-v-5a97fc52] {\n right: -2px;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-chart-lane-header[data-v-5a97fc52],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-chart-lane-header[data-v-5a97fc52] {\n max-height: 30%;\n overflow: hidden;\n z-index: 2;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-chart-lane-header .header-list-gap[data-v-5a97fc52],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-chart-lane-header .header-list-gap[data-v-5a97fc52] {\n display: flex;\n overflow-x: hidden;\n overflow-y: auto;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-chart-lane-header .header-list-gap[data-v-5a97fc52] ::-webkit-scrollbar,\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-chart-lane-header .header-list-gap[data-v-5a97fc52] ::-webkit-scrollbar {\n display: none;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container .kd-lane-chart-lane-header .header-list-gap[data-v-5a97fc52],\n.kd-lane-chart-container .kd-lane-chart-lane-slot-container .kd-lane-chart-lane-header .header-list-gap[data-v-5a97fc52] {\n flex-direction: column;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container-echart[data-v-5a97fc52] {\n flex: 1;\n overflow-x: hidden;\n overflow-y: auto;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.kd-lane-chart-container .kd-lane-chart-lane-container-echart .kd-lane-chart-lane-container-echart-content[data-v-5a97fc52] {\n height: 100%;\n overflow: hidden;\n}\n.kd-lane-chart-container .border-left[data-v-5a97fc52] {\n border-left: 1px solid var(--kd-lane-container-border-color, #333);\n}\n.kd-lane-chart-container .border-bottom[data-v-5a97fc52] {\n border-bottom: 1px solid var(--kd-lane-container-border-color, #333);\n}\n.kd-lane-chart-container .border-right[data-v-5a97fc52] {\n border-right: 1px solid var(--kd-lane-container-border-color, #333);\n}\n.kd-lane-chart-container .kd-lane-chart-container-draw-area[data-v-5a97fc52] {\n position: absolute;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: 3;\n border: none;\n}";
9143
9245
  styleInject(css_248z$3);
9144
9246
 
9145
9247
  /* script */
@@ -9468,6 +9570,7 @@ var __vue_render__$2 = function () {
9468
9570
  _c(
9469
9571
  "el-dialog",
9470
9572
  {
9573
+ staticClass: "function-control-panel-dialog",
9471
9574
  attrs: { title: "泳道模板设置", visible: _vm.curveConfigVisible },
9472
9575
  on: {
9473
9576
  "update:visible": function ($event) {
@@ -9506,7 +9609,7 @@ __vue_render__$2._withStripped = true;
9506
9609
  /* style */
9507
9610
  const __vue_inject_styles__$2 = undefined;
9508
9611
  /* scoped */
9509
- const __vue_scope_id__$2 = "data-v-518c21d0";
9612
+ const __vue_scope_id__$2 = "data-v-5a97fc52";
9510
9613
  /* module identifier */
9511
9614
  const __vue_module_identifier__$2 = undefined;
9512
9615
  /* functional template */
@@ -9775,42 +9878,51 @@ var script = {
9775
9878
  };
9776
9879
  },
9777
9880
  created() {
9778
- this.depthTimeChartData = this.WellBitDepthTimePlotConfig && this.WellBitDepthTimePlotConfig.data || [];
9881
+ this.depthTimeChartData = (this.WellBitDepthTimePlotConfig && this.WellBitDepthTimePlotConfig.data) || [];
9779
9882
  // 初始化数据
9780
- this.initialFormCache = cloneDeep(this.toolBarConfig && this.toolBarConfig.form || {});
9781
- this.formCache = cloneDeep(this.toolBarConfig && this.toolBarConfig.form || {});
9883
+ this.initialFormCache = cloneDeep((this.toolBarConfig && this.toolBarConfig.form) || {});
9884
+ this.formCache = cloneDeep((this.toolBarConfig && this.toolBarConfig.form) || {});
9782
9885
  // 初始化curveDatas副本
9783
9886
  this.cachedCurveDatas = cloneDeep(this.curveDatas || {});
9784
9887
  // 缓存初始化时的curveDatas
9785
9888
  this.initialCurveDatas = cloneDeep(this.curveDatas || {});
9786
9889
  },
9787
9890
  mounted() {
9788
- let form = cloneDeep(this.toolBarConfig && this.toolBarConfig.form || {});
9891
+ let form = cloneDeep((this.toolBarConfig && this.toolBarConfig.form) || {});
9789
9892
  this.config = form.axisType === "depth" ? this.depthConfig : this.timeConfig;
9790
9893
  this.showChartContainer = true;
9791
9894
  // 初始化:获取容器宽度并转换百分比为像素
9792
9895
  this.$nextTick(() => {
9793
- this.containerWidth = this.$refs.container && this.$refs.container.offsetWidth || 800;
9794
- this.initWidth(); // 转换百分比为像素
9795
- });
9896
+ this.containerWidth = (this.$refs.container && this.$refs.container.offsetWidth) || 800;
9897
+ this.initWidth(); // 转换百分比为像素
9898
+ });
9796
9899
 
9797
9900
  // 监听窗口大小变化,更新容器宽度
9798
9901
  window.addEventListener("resize", () => {
9799
9902
  this.$nextTick(() => {
9800
- this.containerWidth = this.$refs.container && this.$refs.container.offsetWidth || 800;
9903
+ this.containerWidth = (this.$refs.container && this.$refs.container.offsetWidth) || 800;
9801
9904
  });
9802
9905
  });
9803
9906
  },
9804
9907
 
9805
9908
  methods: {
9909
+ hiddenContextMenu() {
9910
+ if (this.$refs.chartContainer) {
9911
+ this.$refs.chartContainer.hiddenContextMenu();
9912
+ }
9913
+ },
9806
9914
  dialogFunction(data) {
9807
9915
  if (data.type === 1) {
9808
9916
  // 井深段
9809
- this.$refs.functionControlPanel.form.dataType = "history";
9917
+ if (this.$refs.functionControlPanel) {
9918
+ this.$refs.functionControlPanel.form.dataType = "history";
9919
+ }
9810
9920
  this.formCache.dataType = "history";
9811
9921
  } else if (data.type === 2) {
9812
9922
  // 时间段
9813
- this.$refs.functionControlPanel.form.dataType = "history";
9923
+ if (this.$refs.functionControlPanel) {
9924
+ this.$refs.functionControlPanel.form.dataType = "history";
9925
+ }
9814
9926
  this.formCache.dataType = "history";
9815
9927
  } else if (data.type === 3) ;
9816
9928
  },
@@ -9831,7 +9943,9 @@ var script = {
9831
9943
  },
9832
9944
  // 新增:跳转到下一个标记线
9833
9945
  jumpToNextMarkLine() {
9834
- this.$refs.chartContainer.jumpToNextMarkLine();
9946
+ if (this.$refs.chartContainer) {
9947
+ this.$refs.chartContainer.jumpToNextMarkLine();
9948
+ }
9835
9949
  },
9836
9950
  // 新增:刷新数据,重置为初始化时的数据
9837
9951
  refresh() {
@@ -9871,7 +9985,9 @@ var script = {
9871
9985
  // 新增:更新scale缓存
9872
9986
  updateScale(newVal) {
9873
9987
  this.formCache.scale = newVal;
9874
- this.$refs.functionControlPanel.form.scale = newVal;
9988
+ if (this.$refs.functionControlPanel) {
9989
+ this.$refs.functionControlPanel.form.scale = newVal;
9990
+ }
9875
9991
  },
9876
9992
  /**
9877
9993
  * 工具函数:百分比转像素
@@ -9946,7 +10062,7 @@ var script = {
9946
10062
  const dx = e.clientX - this.startX;
9947
10063
  const min = this.minWidth;
9948
10064
 
9949
- const containerWidth = this.$refs.container && this.$refs.container.offsetWidth - this.lineWidth || 0;
10065
+ const containerWidth = (this.$refs.container && this.$refs.container.offsetWidth - this.lineWidth) || 0;
9950
10066
 
9951
10067
  // ✅ 拖拽第1条分隔线(panel1 和 panel2)
9952
10068
  if (this.currentResizer === 1) {
@@ -10036,7 +10152,9 @@ var script = {
10036
10152
  this.initWidth();
10037
10153
  }
10038
10154
  if (newVal.form !== oldVal.form) {
10039
- this.$refs.functionControlPanel.updateForm(newVal.form);
10155
+ if (this.$refs.functionControlPanel) {
10156
+ this.$refs.functionControlPanel.updateForm(newVal.form);
10157
+ }
10040
10158
  }
10041
10159
  }
10042
10160
  },
@@ -10060,29 +10178,37 @@ var script = {
10060
10178
  if (JSON.stringify(this.initialCurveDatas) === "{}") {
10061
10179
  this.initialCurveDatas = cloneDeep(newVal || {});
10062
10180
  }
10063
- if (Object.prototype.hasOwnProperty.call(newVal, "dataType")) {
10181
+ if (
10182
+ Object.prototype.hasOwnProperty.call(newVal, "dataType") &&
10183
+ newVal.dataType !== this.formCache.dataType &&
10184
+ newVal.dataType !== "" &&
10185
+ newVal.dataType !== undefined &&
10186
+ newVal.dataType !== null
10187
+ ) {
10064
10188
  this.formCache.dataType = newVal.dataType;
10065
- this.$refs.functionControlPanel.form.dataType = newVal.dataType;
10189
+ if (this.$refs.functionControlPanel) {
10190
+ this.$refs.functionControlPanel.form.dataType = newVal.dataType;
10191
+ }
10066
10192
  }
10067
10193
  this.cachedCurveDatas = cloneDeep(newVal || {});
10068
10194
  }
10069
10195
  },
10070
10196
  deep: true,
10071
10197
  },
10072
- themeName:{
10073
- handler(newVal){
10198
+ themeName: {
10199
+ handler(newVal) {
10074
10200
  document.body.setAttribute("data-theme", newVal);
10075
10201
  },
10076
- deep:true,
10077
- immediate:true
10078
- }
10202
+ deep: true,
10203
+ immediate: true,
10204
+ },
10079
10205
  },
10080
10206
  };
10081
10207
 
10082
10208
  var css_248z$1 = "@charset \"UTF-8\";\n[data-theme=dark] {\n --bg-color: #1e1e1e;\n --card-color: #252526;\n --card-border-color: #4b4b4b;\n --card-label-color: #d6d6d6;\n --card-value-color: #ffffff;\n --panel-item-bg-color: #1e1e1e;\n --resizer-bg-color: rgb(177, 177, 177, 0.4);\n --panel-item-border-color: #4b4b4b;\n --default-text-color: #ffffff;\n --radio-border-color: #4b4b4b;\n --radio-checked-border-color: #f86c59;\n --radio-checked-color: #f86c59;\n --radio-checked-text-color: #ffffff;\n --radio-checked-border-color: #f86c59;\n --split-line-color: #4b4b4b;\n /* 边框颜色 */\n --border-color: #4b4b4b;\n --label-float-bg-color: rgba(255, 255, 255, 0.1);\n --slider-gradient-start: #333333;\n --slider-gradient-end: #656668;\n --slider-gradient-color: linear-gradient(0deg, #333333 0%, #656668 100%);\n --slider-content-color: #f86c59;\n --tooltip-bg-color: rgb(51, 51, 51,0.8);\n --kd-lane-container-border-color: #4b4b4b;\n --kd-lane-container-header-item-color: #ffffff;\n --kd-lane-container-header-item-warning-color: rgba(248, 108, 89, 0.6);\n --kd-lane-container-header-bg: #333333;\n --kd-lane-container-item-bg: #252526;\n --kd-lane-container-item-line-color: #4b4b4b66;\n --select-hover-bg-color: #333333;\n --select-selected-text-color: #ffcc33;\n --dialog-header: #333333;\n --dialog-button-default: #252526;\n --dialog-button-disabled-text: #ffffff;\n --in-range-text-color: #ffffff;\n --dialog-tree-text-color: #ffffff;\n}\n[data-theme=white] {\n --bg-color: #ffffff;\n --card-color: #ffffff;\n --card-border-color: #C9C9C9;\n --card-label-color: #666666;\n --card-value-color: #333333;\n --panel-item-bg-color: #ffffff;\n --resizer-bg-color: rgb(177, 177, 177,.4);\n --panel-item-border-color: #C9C9C9;\n --default-text-color: #333333;\n --radio-border-color: #C9C9C9;\n --radio-checked-border-color: #EC4521;\n --radio-checked-color: #EC4521;\n --radio-checked-text-color: #000000;\n --radio-checked-border-color: #EC4521;\n --split-line-color: #C9C9C9;\n /* 边框颜色 */\n --border-color: #C9C9C9;\n --label-float-bg-color: rgba(27, 79, 217, 0.1);\n --slider-gradient-start: #B0C2F5;\n --slider-gradient-end: #DBE5FF;\n --slider-gradient-color: linear-gradient(0deg, #B0C2F5 0%, #DBE5FF 100%);\n --slider-content-color: #EC4521;\n --tooltip-bg-color: rgba(246, 247, 248, 0.8);\n --kd-lane-container-border-color: #C9C9C9;\n --kd-lane-container-header-item-color: #333333;\n --kd-lane-container-header-item-warning-color: rgba(200, 23, 29, 0.6);\n --kd-lane-container-header-bg: #ecf4ff;\n --kd-lane-container-item-bg: #eff3ff;\n --kd-lane-container-item-line-color: #dddddd;\n --select-hover-bg-color: #E0E9FE;\n --select-selected-text-color: #1B4FD9;\n --dialog-header:#1B4FD9;\n --dialog-header-text-color: #ffffff;\n --dialog-button-default:#ffffff;\n --dialog-button-disabled-text: #FFFFFF;\n --in-range-text-color: #ffffff;\n --dialog-tree-text-color: #ffffff;\n}\n[data-theme=gray] {\n --bg-color: #ffffff;\n --card-color: #f6f7f8;\n --card-border-color: #b1b1b1;\n --card-label-color: #666666;\n --card-value-color: #333333;\n --panel-item-bg-color: #ffffff;\n --resizer-bg-color: rgb(177, 177, 177,.4);\n --panel-item-border-color: #b1b1b1;\n --default-text-color: #333333;\n --radio-border-color: #b1b1b1;\n --radio-checked-border-color: #f86c59;\n --radio-checked-color: #f86c59;\n --radio-checked-text-color: #000000;\n --radio-checked-border-color: #f86c59;\n --split-line-color: #b1b1b1;\n /* 边框颜色 */\n --border-color: #b1b1b1;\n --label-float-bg-color: rgba(128, 128, 128, 0.1);\n --slider-gradient-start: #a6a6a6;\n --slider-gradient-end: #dfdfdf;\n --slider-gradient-color: linear-gradient(0deg, #a6a6a6 0%, #dfdfdf 100%);\n --slider-content-color: #f86c59;\n --tooltip-bg-color: rgba(246, 247, 248, 0.8);\n --kd-lane-container-border-color: #b1b1b1;\n --kd-lane-container-header-item-color: #333333;\n --kd-lane-container-header-item-warning-color: rgba(177, 42, 39,0.6);\n --kd-lane-container-header-bg: #eeeeee;\n --kd-lane-container-item-bg: #f6f7f8;\n --kd-lane-container-item-line-color: #dddddd;\n --select-hover-bg-color: #dfdfdf;\n --select-selected-text-color: #ffcc33;\n --dialog-header:#EBEBEB;\n --dialog-button-default:#f6f7f8;\n --dialog-button-disabled-text: #ffffff;\n --in-range-text-color: #333333;\n --dialog-tree-text-color: #333333;\n}\n\n/* 下拉框 */\n.kd-curve-2d-select-popup {\n background: var(--bg-color) !important;\n border: 1px solid var(--border-color) !important;\n /* 列表容器(关键) */\n}\n.kd-curve-2d-select-popup .el-scrollbar__wrap {\n margin-bottom: 0 !important;\n margin-right: 0 !important;\n background: var(--bg-color) !important;\n /* 隐藏滚动条 */\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.kd-curve-2d-select-popup .el-scrollbar__wrap::-webkit-scrollbar {\n display: none;\n}\n.kd-curve-2d-select-popup {\n /* 每一项(默认) */\n}\n.kd-curve-2d-select-popup .el-select-dropdown__item {\n background: var(--bg-color) !important;\n color: var(--default-text-color) !important;\n /* hover */\n}\n.kd-curve-2d-select-popup .el-select-dropdown__item.hover, .kd-curve-2d-select-popup .el-select-dropdown__item:hover {\n background: var(--select-hover-bg-color) !important;\n color: var(--default-text-color) !important;\n}\n.kd-curve-2d-select-popup .el-select-dropdown__item.selected {\n background: var(--bg-color) !important; /* 不要灰色 */\n color: var(--select-selected-text-color) !important; /* 高亮文字(可选) */\n font-weight: bold;\n}\n.kd-curve-2d-select-popup .el-select-dropdown__item.selected.hover, .kd-curve-2d-select-popup .el-select-dropdown__item.selected:hover {\n background: var(--select-hover-bg-color) !important;\n}\n.kd-curve-2d-select-popup {\n /* 三角箭头 */\n}\n.kd-curve-2d-select-popup[x-placement^=bottom] .popper__arrow {\n border-bottom-color: var(--border-color) !important;\n}\n.kd-curve-2d-select-popup[x-placement^=bottom] .popper__arrow::after {\n border-bottom-color: var(--bg-color) !important;\n}\n.kd-curve-2d-select-popup[x-placement^=top] .popper__arrow {\n border-top-color: var(--border-color) !important;\n}\n.kd-curve-2d-select-popup[x-placement^=top] .popper__arrow::after {\n border-top-color: var(--bg-color) !important;\n}\n.kd-curve-2d-select-popup .el-time-panel {\n background: var(--bg-color) !important;\n box-shadow: 0 2px 12px 0 transparent;\n border: 1px solid var(--border-color);\n}\n.kd-curve-2d-select-popup .el-time-panel .el-time-panel__btn {\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-time-panel .el-time-spinner__item {\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-time-panel .el-time-spinner__item.active:not(.disabled) {\n color: var(--select-selected-text-color);\n font-weight: bold;\n}\n.kd-curve-2d-select-popup .el-time-panel .el-time-panel__footer {\n border-top: 1px solid var(--border-color);\n}\n.kd-curve-2d-select-popup .el-time-panel .el-time-spinner__item:hover:not(.disabled):not(.active) {\n background: var(--select-hover-bg-color);\n}\n.kd-curve-2d-select-popup .el-color-picker__trigger {\n border: 1px solid var(--dialog-header);\n}\n.kd-curve-2d-select-popup .el-color-picker__panel {\n background: var(--bg-color) !important;\n border: 1px solid var(--dialog-header);\n border-radius: 0px;\n}\n.kd-curve-2d-select-popup .el-color-picker__panel .el-button--text {\n color: var(--select-selected-text-color);\n}\n.kd-curve-2d-select-popup .el-color-picker__panel .el-button--default {\n background: var(--dialog-button-default);\n color: var(--default-text-color);\n border: none;\n border-radius: 0px;\n}\n.kd-curve-2d-select-popup .el-color-picker__panel .el-button.is-plain:hover {\n background: var(--dialog-button-default);\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper {\n background: var(--bg-color);\n border: 1px solid var(--dialog-header);\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-input__inner {\n background: var(--bg-color) !important;\n border: 1px solid var(--border-color) !important;\n color: var(--text-color) !important;\n height: 32px !important;\n line-height: 32px !important;\n box-sizing: border-box;\n border-radius: 0px;\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-picker__header-label {\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-picker__header-label:hover {\n color: var(--select-selected-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-range-picker__time-header > .el-icon-arrow-right {\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-button--text {\n color: var(--select-selected-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-picker-panel__icon-btn {\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-range-picker__time-header {\n border-bottom: 1px solid var(--dialog-header);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-range-picker__content.is-left {\n border-right: 1px solid var(--dialog-header);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table th {\n border-bottom: 1px solid var(--dialog-header);\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.today span {\n color: var(--select-selected-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.available:hover {\n color: var(--select-selected-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.next-month,\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.prev-month {\n color: var(--dialog-header);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.available {\n color: var(--default-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.available.in-range {\n color: var(--in-range-text-color) !important;\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.end-date span,\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.start-date span {\n background: var(--select-selected-text-color);\n}\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.in-range div,\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table td.in-range div:hover,\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table.is-week-mode .el-date-table__row.current div,\n.kd-curve-2d-select-popup .el-picker-panel__body-wrapper .el-date-table.is-week-mode .el-date-table__row:hover div {\n background: var(--dialog-header);\n}\n.kd-curve-2d-select-popup .el-picker-panel__footer {\n background: var(--bg-color);\n border-top: 1px solid var(--dialog-header);\n}\n.kd-curve-2d-select-popup .el-picker-panel__footer .el-button--default {\n background: var(--dialog-button-default);\n color: var(--default-text-color);\n border: none;\n border-radius: 0px;\n}\n.kd-curve-2d-select-popup .el-picker-panel__footer .el-button.is-disabled.is-plain,\n.kd-curve-2d-select-popup .el-picker-panel__footer .el-button.is-disabled.is-plain:focus,\n.kd-curve-2d-select-popup .el-picker-panel__footer .el-button.is-disabled.is-plain:hover {\n background: var(--dialog-button-default);\n color: var(--dialog-button-disabled-text);\n}\n.kd-curve-2d-select-popup .el-picker-panel__footer .el-button.is-disabled.is-plain {\n background: var(--dialog-button-default);\n color: var(--dialog-button-disabled-text) !important;\n}\n.kd-curve-2d-select-popup .el-popper[x-placement^=bottom] .popper__arrow::after {\n border-bottom-color: var(--bg-color) !important;\n}\n.kd-curve-2d-container {\n /* radio 自定义样式 */\n}\n.kd-curve-2d-container .el-radio {\n display: flex;\n align-items: center;\n vertical-align: middle;\n color: var(--radio-default-text-color);\n font-family: Microsoft YaHei UI, Microsoft YaHei UI;\n font-size: 14px;\n}\n.kd-curve-2d-container .el-radio__inner {\n width: 14px;\n height: 14px;\n background: transparent;\n border: 1px solid var(--radio-border-color);\n}\n.kd-curve-2d-container .el-radio__input.is-checked .el-radio__inner {\n border-color: var(--radio-checked-border-color);\n background: transparent;\n}\n.kd-curve-2d-container .el-radio__input.is-disabled .el-radio__inner {\n background-color: transparent;\n border-color: var(--radio-border-color);\n}\n.kd-curve-2d-container .el-radio__inner::after {\n width: 7px;\n height: 7px;\n background: var(--radio-checked-color);\n}\n.kd-curve-2d-container .el-radio.is-checked .el-radio__label {\n color: var(--radio-checked-text-color);\n font-weight: bold;\n}\n.kd-curve-2d-container {\n /* select */\n}\n.kd-curve-2d-container .el-input__inner {\n background: var(--bg-color) !important;\n border: 1px solid var(--border-color) !important;\n color: var(--text-color) !important;\n height: 32px !important;\n line-height: 32px !important;\n box-sizing: border-box;\n border-radius: 0px;\n}\n.kd-curve-2d-container {\n /* 下拉箭头 */\n}\n.kd-curve-2d-container .el-select .el-input__suffix i {\n display: none !important;\n}\n.kd-curve-2d-container .el-select .el-input__suffix {\n right: 0;\n width: 28px;\n height: 32px !important;\n line-height: 32px !important;\n background: var(--slider-gradient-color);\n display: flex;\n align-items: center;\n justify-content: center;\n border-left: 1px solid var(--border-color);\n}\n.kd-curve-2d-container .el-select .el-input__suffix::after {\n content: \"\";\n width: 0;\n height: 0;\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-top: 6px solid var(--slider-content-color); /* 橙色三角 */\n}\n.kd-curve-2d-container .el-select .el-input__suffix::after {\n transition: transform 0.2s ease;\n}\n.kd-curve-2d-container .el-select .el-input.is-focus .el-input__suffix::after {\n transform: rotate(180deg);\n}\n.kd-curve-2d-container .el-dialog {\n border: 1px solid var(--card-border-color);\n}\n.kd-curve-2d-container .el-dialog .el-form-item__label {\n color: var(--default-text-color);\n font-size: 14px;\n}\n.kd-curve-2d-container .el-dialog .el-dialog__headerbtn {\n top: 11px;\n width: 24px;\n height: 24px;\n background: linear-gradient(270deg, #c73521 0%, #f86c59 100%);\n border-radius: 100px;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.kd-curve-2d-container .el-dialog .el-dialog__headerbtn .el-dialog__close {\n color: #fff;\n font-size: 14px;\n font-weight: 700;\n}\n.kd-curve-2d-container .el-button {\n border-radius: 0px;\n border: none;\n}\n.kd-curve-2d-container .el-button--primary {\n background-image: linear-gradient(to bottom, #2057ea, #12338d);\n}\n.kd-curve-2d-container .el-button--default {\n background: var(--dialog-button-default);\n color: var(--default-text-color);\n}\n.kd-curve-2d-container .el-button--primary.is-disabled {\n background-image: linear-gradient(to bottom, #2f5ede, #1e3677);\n color: var(--dialog-button-disabled-text);\n}\n.kd-curve-2d-container .el-tabs .el-tabs__nav-wrap::after {\n background-color: var(--card-border-color);\n}\n.kd-curve-2d-container .el-tabs .el-tabs__item {\n color: var(--default-text-color);\n}\n.kd-curve-2d-container .el-tabs .el-tabs__item.is-active {\n color: var(--select-selected-text-color);\n}\n.kd-curve-2d-container .el-tabs .el-tabs__active-bar {\n background: var(--select-selected-text-color);\n}\n.kd-curve-2d-container .el-tree {\n background: var(--bg-color) !important;\n color: var(--default-text-color);\n font-size: 14px;\n}\n.kd-curve-2d-container .el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {\n background: var(--dialog-header) !important;\n color: var(--dialog-tree-text-color);\n}\n.kd-curve-2d-container .el-tree-node__content:hover,\n.kd-curve-2d-container .el-upload-list__item:hover {\n background: var(--dialog-header) !important;\n color: var(--dialog-tree-text-color);\n}\n.kd-curve-2d-container .vue-simple-context-menu__item,\n.kd-curve-2d-container .vue-simple-context-menu__item {\n font-size: 14px !important;\n}\n.kd-curve-2d-container .kd-lane-el-container {\n border: 1px solid var(--card-border-color);\n}\n.kd-curve-2d-container .kd-lane-el-container .rtd-config-side {\n border-right: 1px solid var(--card-border-color);\n}\n.kd-curve-2d-container .el-dialog__header {\n background: var(--dialog-header);\n text-align: center;\n}\n.kd-curve-2d-container .el-dialog__header .el-dialog__title {\n color: var(--dialog-header-text-color);\n}\n.kd-curve-2d-container .el-dialog__header {\n padding: 10px 10px 10px;\n}\n.kd-curve-2d-container .el-dialog__body {\n background: var(--bg-color);\n padding: 30px 30px 10px 30px;\n}\n.kd-curve-2d-container .el-dialog__body .input-number-container .el-input__inner {\n width: calc(100% - 80px) !important;\n margin-left: 40px !important;\n}\n.kd-curve-2d-container .el-dialog__body .el-input__inner {\n color: var(--default-text-color) !important;\n}\n.kd-curve-2d-container .el-dialog__body .el-input-number__decrease,\n.kd-curve-2d-container .el-dialog__body .el-input-number__increase {\n color: var(--default-text-color);\n}\n.kd-curve-2d-container .el-dialog__body .el-input-number__increase {\n background: var(--card-color);\n color: var(--default-text-color);\n border-radius: 0px 0px 0px 0px;\n border: 1px solid var(--card-border-color);\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.kd-curve-2d-container .el-dialog__body .el-input-number__decrease {\n background: var(--card-color);\n border-radius: 0px 0px 0px 0px;\n border: 1px solid var(--card-border-color);\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.kd-curve-2d-container .el-dialog__footer {\n text-align: center;\n background: var(--bg-color);\n}\n.kd-curve-2d-container .el-date-editor {\n background: var(--bg-color) !important;\n}\n.kd-curve-2d-container .el-date-editor .el-range-input {\n background: var(--bg-color) !important;\n border-top: 1px solid var(--border-color) !important;\n border-bottom: 1px solid var(--border-color) !important;\n color: var(--text-color) !important;\n height: 32px !important;\n line-height: 32px !important;\n box-sizing: border-box;\n border-radius: 0px;\n}\n.kd-curve-2d-container .el-date-editor .el-range-separator {\n color: var(--default-text-color);\n}";
10083
10209
  styleInject(css_248z$1);
10084
10210
 
10085
- var css_248z = "@charset \"UTF-8\";\n.kd-curve-2d-resize-container[data-v-12684d2f] {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n background: var(--bg-color);\n color: var(--default-text-color);\n overflow: hidden;\n /* 主容器 */\n}\n.kd-curve-2d-resize-container .container[data-v-12684d2f] {\n display: flex;\n flex: 1;\n width: 100%;\n overflow: hidden;\n}\n.kd-curve-2d-resize-container[data-v-12684d2f] {\n /* 面板通用样式 */\n}\n.kd-curve-2d-resize-container .panel[data-v-12684d2f] {\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n flex-shrink: 0;\n background: var(--panel-item-bg-color);\n border: 1px solid var(--panel-item-border-color);\n padding: 8px;\n /* 隐藏滚动条 */\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.kd-curve-2d-resize-container .panel[data-v-12684d2f]::-webkit-scrollbar {\n display: none;\n}\n.kd-curve-2d-resize-container .panel-3[data-v-12684d2f] {\n flex: 1;\n min-width: 100px;\n}\n.kd-curve-2d-resize-container[data-v-12684d2f] {\n /* 拖拽条样式 */\n}\n.kd-curve-2d-resize-container .resizer[data-v-12684d2f] {\n width: 6px;\n cursor: col-resize;\n}\n.kd-curve-2d-resize-container .resizer[data-v-12684d2f]:hover {\n background-color: var(--resizer-bg-color);\n transition: background-color 0.2s ease;\n}";
10211
+ var css_248z = "@charset \"UTF-8\";\n.kd-curve-2d-resize-container[data-v-815b84b2] {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n background: var(--bg-color);\n color: var(--default-text-color);\n overflow: hidden;\n /* 主容器 */\n}\n.kd-curve-2d-resize-container .container[data-v-815b84b2] {\n display: flex;\n flex: 1;\n width: 100%;\n overflow: hidden;\n}\n.kd-curve-2d-resize-container[data-v-815b84b2] {\n /* 面板通用样式 */\n}\n.kd-curve-2d-resize-container .panel[data-v-815b84b2] {\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n flex-shrink: 0;\n background: var(--panel-item-bg-color);\n border: 1px solid var(--panel-item-border-color);\n padding: 8px;\n /* 隐藏滚动条 */\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n.kd-curve-2d-resize-container .panel[data-v-815b84b2]::-webkit-scrollbar {\n display: none;\n}\n.kd-curve-2d-resize-container .panel-3[data-v-815b84b2] {\n flex: 1;\n min-width: 100px;\n}\n.kd-curve-2d-resize-container[data-v-815b84b2] {\n /* 拖拽条样式 */\n}\n.kd-curve-2d-resize-container .resizer[data-v-815b84b2] {\n width: 6px;\n cursor: col-resize;\n}\n.kd-curve-2d-resize-container .resizer[data-v-815b84b2]:hover {\n background-color: var(--resizer-bg-color);\n transition: background-color 0.2s ease;\n}";
10086
10212
  styleInject(css_248z);
10087
10213
 
10088
10214
  /* script */
@@ -10280,7 +10406,7 @@ __vue_render__._withStripped = true;
10280
10406
  /* style */
10281
10407
  const __vue_inject_styles__ = undefined;
10282
10408
  /* scoped */
10283
- const __vue_scope_id__ = "data-v-12684d2f";
10409
+ const __vue_scope_id__ = "data-v-815b84b2";
10284
10410
  /* module identifier */
10285
10411
  const __vue_module_identifier__ = undefined;
10286
10412
  /* functional template */