@agions/taroviz 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/cjs/index.js +1 -1
- package/dist/esm/index.js +479 -489
- package/package.json +1 -1
- package/src/adapters/h5/index.ts +1 -3
- package/src/adapters/index.ts +32 -21
- package/src/charts/common/BaseChartWrapper.tsx +2 -8
- package/src/core/utils/chartInstances.ts +9 -0
- package/src/core/utils/codeGenerator/CodeGenerator.ts +19 -5
- package/src/core/utils/uuid.ts +9 -5
- package/src/hooks/index.ts +27 -9
package/dist/esm/index.js
CHANGED
|
@@ -64,9 +64,7 @@ var H5Adapter = /** @class */function () {
|
|
|
64
64
|
// 获取容器元素
|
|
65
65
|
var container = ((_a = this.containerRef) === null || _a === void 0 ? void 0 : _a.current) || document.getElementById(this.canvasId);
|
|
66
66
|
if (!container) {
|
|
67
|
-
|
|
68
|
-
// 如果容器未找到,返回一个空对象
|
|
69
|
-
return {};
|
|
67
|
+
throw new Error("[TaroViz] H5Adapter: container not found (canvasId: ".concat(this.canvasId, ")"));
|
|
70
68
|
}
|
|
71
69
|
// 初始化图表
|
|
72
70
|
this.instance = echarts_core__WEBPACK_IMPORTED_MODULE_1__.init(container, this.options.theme, {
|
|
@@ -277,14 +275,121 @@ var H5Adapter = /** @class */function () {
|
|
|
277
275
|
|
|
278
276
|
/***/ },
|
|
279
277
|
|
|
280
|
-
/***/
|
|
278
|
+
/***/ 234
|
|
281
279
|
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
282
280
|
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
281
|
+
|
|
282
|
+
// EXPORTS
|
|
283
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
284
|
+
li: () => (/* binding */ detectPlatform),
|
|
285
|
+
cK: () => (/* binding */ getAdapter),
|
|
286
|
+
_$: () => (/* binding */ getEnv)
|
|
287
|
+
});
|
|
288
|
+
|
|
289
|
+
// UNUSED EXPORTS: H5Adapter, HarmonyAdapter, PlatformType, SwanAdapter, TTAdapter, WeappAdapter, default, version
|
|
290
|
+
|
|
291
|
+
;// ./src/core/types/common.ts
|
|
292
|
+
/**
|
|
293
|
+
* 图表事件声明
|
|
294
|
+
*/
|
|
295
|
+
var ChartEventType;
|
|
296
|
+
(function (ChartEventType) {
|
|
297
|
+
ChartEventType["CLICK"] = "click";
|
|
298
|
+
ChartEventType["MOUSEMOVE"] = "mousemove";
|
|
299
|
+
ChartEventType["MOUSEUP"] = "mouseup";
|
|
300
|
+
ChartEventType["MOUSEDOWN"] = "mousedown";
|
|
301
|
+
ChartEventType["MOUSEOVER"] = "mouseover";
|
|
302
|
+
ChartEventType["MOUSEOUT"] = "mouseout";
|
|
303
|
+
ChartEventType["GLOBALOUT"] = "globalout";
|
|
304
|
+
ChartEventType["LEGENDSELECTED"] = "legendselected";
|
|
305
|
+
ChartEventType["LEGENDUNSELECTED"] = "legendunselected";
|
|
306
|
+
ChartEventType["LEGENDSELECTCHANGED"] = "legendselectchanged";
|
|
307
|
+
ChartEventType["LEGENDSCROLL"] = "legendscroll";
|
|
308
|
+
ChartEventType["DATAZOOM"] = "datazoom";
|
|
309
|
+
ChartEventType["DATARANGESELECTED"] = "datarangeselected";
|
|
310
|
+
ChartEventType["TIMELINECHANGED"] = "timelinechanged";
|
|
311
|
+
ChartEventType["TIMELINEPLAYCHANGED"] = "timelineplaychanged";
|
|
312
|
+
ChartEventType["RESTORE"] = "restore";
|
|
313
|
+
ChartEventType["DATAVIEWCHANGED"] = "dataviewchanged";
|
|
314
|
+
ChartEventType["MAGICTYPECHANGED"] = "magictypechanged";
|
|
315
|
+
ChartEventType["GEOSELECTCHANGED"] = "geoselectchanged";
|
|
316
|
+
ChartEventType["GEOSELECTED"] = "geoselected";
|
|
317
|
+
ChartEventType["GEOUNSELECTED"] = "geounselected";
|
|
318
|
+
ChartEventType["PIESELECTCHANGED"] = "pieselectchanged";
|
|
319
|
+
ChartEventType["PIESELECTED"] = "pieselected";
|
|
320
|
+
ChartEventType["PIEUNSELECTED"] = "pieunselected";
|
|
321
|
+
ChartEventType["MAPSELECTCHANGED"] = "mapselectchanged";
|
|
322
|
+
ChartEventType["MAPSELECTED"] = "mapselected";
|
|
323
|
+
ChartEventType["MAPUNSELECTED"] = "mapunselected";
|
|
324
|
+
ChartEventType["AXISAREASELECTED"] = "axisareaselected";
|
|
325
|
+
ChartEventType["FOCUSNODEADJACENCY"] = "focusnodeadjacency";
|
|
326
|
+
ChartEventType["UNFOCUSNODEADJACENCY"] = "unfocusnodeadjacency";
|
|
327
|
+
ChartEventType["BRUSH"] = "brush";
|
|
328
|
+
ChartEventType["BRUSHSELECTED"] = "brushselected";
|
|
329
|
+
ChartEventType["RENDERED"] = "rendered";
|
|
330
|
+
ChartEventType["FINISHED"] = "finished";
|
|
331
|
+
// 自定义事件
|
|
332
|
+
ChartEventType["CHART_READY"] = "chartReady";
|
|
333
|
+
ChartEventType["CHART_RESIZE"] = "chartResize";
|
|
334
|
+
ChartEventType["CHART_ERROR"] = "chartError";
|
|
335
|
+
ChartEventType["CHART_DISPOSE"] = "chartDispose";
|
|
336
|
+
})(ChartEventType || (ChartEventType = {}));
|
|
337
|
+
;// ./src/core/types/platform.ts
|
|
338
|
+
/**
|
|
339
|
+
* 支持的平台类型
|
|
340
|
+
*/
|
|
341
|
+
var PlatformType;
|
|
342
|
+
(function (PlatformType) {
|
|
343
|
+
PlatformType["H5"] = "h5";
|
|
344
|
+
PlatformType["WEAPP"] = "weapp";
|
|
345
|
+
PlatformType["ALIPAY"] = "alipay";
|
|
346
|
+
PlatformType["SWAN"] = "swan";
|
|
347
|
+
PlatformType["TT"] = "tt";
|
|
348
|
+
PlatformType["QQ"] = "qq";
|
|
349
|
+
PlatformType["JD"] = "jd";
|
|
350
|
+
PlatformType["HARMONY"] = "harmony";
|
|
351
|
+
PlatformType["DD"] = "dd";
|
|
352
|
+
PlatformType["QYWX"] = "qywx";
|
|
353
|
+
PlatformType["LARK"] = "lark";
|
|
354
|
+
PlatformType["KWAI"] = "kwai";
|
|
355
|
+
})(PlatformType || (PlatformType = {}));
|
|
356
|
+
// EXTERNAL MODULE: ./src/core/animation/index.ts + 2 modules
|
|
357
|
+
var animation = __webpack_require__(251);
|
|
358
|
+
;// ./src/core/types/index.ts
|
|
359
|
+
// 公共类型
|
|
360
|
+
|
|
361
|
+
// 平台类型
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
// 导出动画相关类型
|
|
365
|
+
|
|
366
|
+
// EXTERNAL MODULE: ./src/core/utils/index.ts + 2 modules
|
|
367
|
+
var utils = __webpack_require__(524);
|
|
368
|
+
// EXTERNAL MODULE: ./src/core/echarts.ts + 1 modules
|
|
369
|
+
var echarts = __webpack_require__(930);
|
|
370
|
+
;// ./src/core/index.ts
|
|
371
|
+
/**
|
|
372
|
+
* TaroViz 核心组件库
|
|
373
|
+
* 提供基础组件和工具函数
|
|
374
|
+
*/
|
|
375
|
+
// 类型定义
|
|
376
|
+
|
|
377
|
+
// 工具函数
|
|
378
|
+
|
|
379
|
+
// ECharts 统一导出
|
|
380
|
+
|
|
381
|
+
/**
|
|
382
|
+
* 库信息
|
|
383
|
+
*/
|
|
384
|
+
var core_name = 'taroviz';
|
|
385
|
+
var version = '1.2.0';
|
|
386
|
+
// EXTERNAL MODULE: ./src/adapters/h5/index.ts
|
|
387
|
+
var h5 = __webpack_require__(123);
|
|
388
|
+
// EXTERNAL MODULE: ./src/adapters/weapp/index.ts
|
|
389
|
+
var weapp = __webpack_require__(999);
|
|
390
|
+
// EXTERNAL MODULE: external "react"
|
|
391
|
+
var external_react_ = __webpack_require__(15);
|
|
392
|
+
;// ./src/adapters/swan/index.ts
|
|
288
393
|
var __assign = undefined && undefined.__assign || function () {
|
|
289
394
|
__assign = Object.assign || function (t) {
|
|
290
395
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -296,19 +401,19 @@ var __assign = undefined && undefined.__assign || function () {
|
|
|
296
401
|
return __assign.apply(this, arguments);
|
|
297
402
|
};
|
|
298
403
|
/**
|
|
299
|
-
* TaroViz
|
|
300
|
-
*
|
|
404
|
+
* TaroViz 百度小程序适配器
|
|
405
|
+
* 基于百度小程序canvas组件实现图表渲染
|
|
301
406
|
*/
|
|
302
407
|
|
|
303
408
|
/**
|
|
304
|
-
*
|
|
409
|
+
* 百度小程序环境下的图表适配器
|
|
305
410
|
*/
|
|
306
|
-
var
|
|
411
|
+
var SwanAdapter = /** @class */function () {
|
|
307
412
|
/**
|
|
308
413
|
* 构造函数
|
|
309
414
|
* @param config 适配器配置
|
|
310
415
|
*/
|
|
311
|
-
function
|
|
416
|
+
function SwanAdapter(config) {
|
|
312
417
|
/**
|
|
313
418
|
* 图表实例
|
|
314
419
|
*/
|
|
@@ -321,23 +426,23 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
321
426
|
this.component = config.component;
|
|
322
427
|
}
|
|
323
428
|
/**
|
|
324
|
-
*
|
|
429
|
+
* 创建百度小程序适配器实例
|
|
325
430
|
* @param options 适配器选项
|
|
326
431
|
* @returns 适配器实例
|
|
327
432
|
*/
|
|
328
|
-
|
|
329
|
-
return new
|
|
433
|
+
SwanAdapter.create = function (options) {
|
|
434
|
+
return new SwanAdapter(options);
|
|
330
435
|
};
|
|
331
436
|
/**
|
|
332
437
|
* 获取图表实例
|
|
333
438
|
*/
|
|
334
|
-
|
|
439
|
+
SwanAdapter.prototype.getInstance = function () {
|
|
335
440
|
return this.chartInstance;
|
|
336
441
|
};
|
|
337
442
|
/**
|
|
338
443
|
* 初始化图表
|
|
339
444
|
*/
|
|
340
|
-
|
|
445
|
+
SwanAdapter.prototype.init = function () {
|
|
341
446
|
var _a = this.config,
|
|
342
447
|
canvasId = _a.canvasId,
|
|
343
448
|
width = _a.width,
|
|
@@ -345,11 +450,11 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
345
450
|
theme = _a.theme,
|
|
346
451
|
option = _a.option;
|
|
347
452
|
if (!this.component) {
|
|
348
|
-
console.error('[TaroViz]
|
|
453
|
+
console.error('[TaroViz] SwanAdapter: component is required');
|
|
349
454
|
return null;
|
|
350
455
|
}
|
|
351
456
|
if (!canvasId) {
|
|
352
|
-
console.error('[TaroViz]
|
|
457
|
+
console.error('[TaroViz] SwanAdapter: canvasId is required');
|
|
353
458
|
return null;
|
|
354
459
|
}
|
|
355
460
|
// 创建图表实例
|
|
@@ -374,7 +479,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
374
479
|
/**
|
|
375
480
|
* 设置图表选项
|
|
376
481
|
*/
|
|
377
|
-
|
|
482
|
+
SwanAdapter.prototype.setOption = function (option, opts) {
|
|
378
483
|
if (this.chartInstance) {
|
|
379
484
|
this.chartInstance.setOption(option, opts);
|
|
380
485
|
} else {
|
|
@@ -384,7 +489,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
384
489
|
/**
|
|
385
490
|
* 设置主题
|
|
386
491
|
*/
|
|
387
|
-
|
|
492
|
+
SwanAdapter.prototype.setTheme = function (theme) {
|
|
388
493
|
var _a, _b;
|
|
389
494
|
this.config.theme = theme;
|
|
390
495
|
if (this.chartInstance) {
|
|
@@ -394,32 +499,32 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
394
499
|
/**
|
|
395
500
|
* 获取图表宽度
|
|
396
501
|
*/
|
|
397
|
-
|
|
502
|
+
SwanAdapter.prototype.getWidth = function () {
|
|
398
503
|
return 0;
|
|
399
504
|
};
|
|
400
505
|
/**
|
|
401
506
|
* 获取图表高度
|
|
402
507
|
*/
|
|
403
|
-
|
|
508
|
+
SwanAdapter.prototype.getHeight = function () {
|
|
404
509
|
return 0;
|
|
405
510
|
};
|
|
406
511
|
/**
|
|
407
512
|
* 获取DOM元素
|
|
408
513
|
*/
|
|
409
|
-
|
|
514
|
+
SwanAdapter.prototype.getDom = function () {
|
|
410
515
|
return null;
|
|
411
516
|
};
|
|
412
517
|
/**
|
|
413
518
|
* 转换为DataURL
|
|
414
519
|
*/
|
|
415
|
-
|
|
520
|
+
SwanAdapter.prototype.convertToDataURL = function (opts) {
|
|
416
521
|
var _a;
|
|
417
522
|
return (_a = this.chartInstance) === null || _a === void 0 ? void 0 : _a.getDataURL(opts);
|
|
418
523
|
};
|
|
419
524
|
/**
|
|
420
525
|
* 清空图表
|
|
421
526
|
*/
|
|
422
|
-
|
|
527
|
+
SwanAdapter.prototype.clear = function () {
|
|
423
528
|
if (this.chartInstance) {
|
|
424
529
|
this.chartInstance.clear();
|
|
425
530
|
}
|
|
@@ -427,7 +532,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
427
532
|
/**
|
|
428
533
|
* 绑定事件
|
|
429
534
|
*/
|
|
430
|
-
|
|
535
|
+
SwanAdapter.prototype.on = function (event, handler) {
|
|
431
536
|
if (this.chartInstance) {
|
|
432
537
|
this.chartInstance.on(event, handler);
|
|
433
538
|
}
|
|
@@ -435,7 +540,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
435
540
|
/**
|
|
436
541
|
* 解绑事件
|
|
437
542
|
*/
|
|
438
|
-
|
|
543
|
+
SwanAdapter.prototype.off = function (event, handler) {
|
|
439
544
|
if (this.chartInstance) {
|
|
440
545
|
this.chartInstance.off(event, handler);
|
|
441
546
|
}
|
|
@@ -443,7 +548,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
443
548
|
/**
|
|
444
549
|
* 显示加载动画
|
|
445
550
|
*/
|
|
446
|
-
|
|
551
|
+
SwanAdapter.prototype.showLoading = function (opts) {
|
|
447
552
|
if (this.chartInstance) {
|
|
448
553
|
this.chartInstance.showLoading(opts);
|
|
449
554
|
}
|
|
@@ -451,7 +556,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
451
556
|
/**
|
|
452
557
|
* 隐藏加载动画
|
|
453
558
|
*/
|
|
454
|
-
|
|
559
|
+
SwanAdapter.prototype.hideLoading = function () {
|
|
455
560
|
if (this.chartInstance) {
|
|
456
561
|
this.chartInstance.hideLoading();
|
|
457
562
|
}
|
|
@@ -459,7 +564,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
459
564
|
/**
|
|
460
565
|
* 销毁图表
|
|
461
566
|
*/
|
|
462
|
-
|
|
567
|
+
SwanAdapter.prototype.dispose = function () {
|
|
463
568
|
if (this.chartInstance) {
|
|
464
569
|
this.chartInstance.dispose();
|
|
465
570
|
this.chartInstance = null;
|
|
@@ -468,7 +573,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
468
573
|
/**
|
|
469
574
|
* 处理图表大小变化
|
|
470
575
|
*/
|
|
471
|
-
|
|
576
|
+
SwanAdapter.prototype.resize = function (opts) {
|
|
472
577
|
if (this.chartInstance) {
|
|
473
578
|
this.chartInstance.resize(opts);
|
|
474
579
|
}
|
|
@@ -476,13 +581,13 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
476
581
|
/**
|
|
477
582
|
* 设置组件实例
|
|
478
583
|
*/
|
|
479
|
-
|
|
584
|
+
SwanAdapter.prototype.setComponent = function (component) {
|
|
480
585
|
this.component = component;
|
|
481
586
|
};
|
|
482
587
|
/**
|
|
483
588
|
* 渲染图表组件
|
|
484
589
|
*/
|
|
485
|
-
|
|
590
|
+
SwanAdapter.prototype.render = function () {
|
|
486
591
|
var _a = this.config,
|
|
487
592
|
_b = _a.canvasId,
|
|
488
593
|
canvasId = _b === void 0 ? 'ec-canvas' : _b,
|
|
@@ -493,7 +598,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
493
598
|
_e = _a.style,
|
|
494
599
|
style = _e === void 0 ? {} : _e;
|
|
495
600
|
// 注意:这里需要根据实际使用的Taro版本和组件库来调整
|
|
496
|
-
return /*#__PURE__*/
|
|
601
|
+
return /*#__PURE__*/external_react_.createElement('view', {
|
|
497
602
|
id: canvasId,
|
|
498
603
|
style: __assign({
|
|
499
604
|
width: width,
|
|
@@ -504,7 +609,7 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
504
609
|
/**
|
|
505
610
|
* 触发图表行为
|
|
506
611
|
*/
|
|
507
|
-
|
|
612
|
+
SwanAdapter.prototype.dispatchAction = function (payload) {
|
|
508
613
|
if (this.chartInstance) {
|
|
509
614
|
this.chartInstance.dispatchAction(payload);
|
|
510
615
|
}
|
|
@@ -512,366 +617,38 @@ var HarmonyAdapter = /** @class */function () {
|
|
|
512
617
|
/**
|
|
513
618
|
* 获取DataURL
|
|
514
619
|
*/
|
|
515
|
-
|
|
620
|
+
SwanAdapter.prototype.getDataURL = function (opts) {
|
|
516
621
|
var _a;
|
|
517
622
|
return (_a = this.chartInstance) === null || _a === void 0 ? void 0 : _a.getDataURL(opts);
|
|
518
623
|
};
|
|
519
|
-
return
|
|
624
|
+
return SwanAdapter;
|
|
520
625
|
}();
|
|
521
|
-
/* harmony default export */ const
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
_$: () => (/* binding */ getEnv)
|
|
534
|
-
});
|
|
535
|
-
|
|
536
|
-
// UNUSED EXPORTS: H5Adapter, HarmonyAdapter, PlatformType, SwanAdapter, TTAdapter, WeappAdapter, default, version
|
|
537
|
-
|
|
538
|
-
;// ./src/core/types/common.ts
|
|
626
|
+
/* harmony default export */ const swan = (SwanAdapter);
|
|
627
|
+
;// ./src/adapters/tt/index.ts
|
|
628
|
+
var tt_assign = undefined && undefined.__assign || function () {
|
|
629
|
+
tt_assign = Object.assign || function (t) {
|
|
630
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
631
|
+
s = arguments[i];
|
|
632
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
633
|
+
}
|
|
634
|
+
return t;
|
|
635
|
+
};
|
|
636
|
+
return tt_assign.apply(this, arguments);
|
|
637
|
+
};
|
|
539
638
|
/**
|
|
540
|
-
*
|
|
639
|
+
* TaroViz 字节跳动小程序适配器
|
|
640
|
+
* 基于字节跳动小程序canvas组件实现图表渲染
|
|
541
641
|
*/
|
|
542
|
-
|
|
543
|
-
(function (ChartEventType) {
|
|
544
|
-
ChartEventType["CLICK"] = "click";
|
|
545
|
-
ChartEventType["MOUSEMOVE"] = "mousemove";
|
|
546
|
-
ChartEventType["MOUSEUP"] = "mouseup";
|
|
547
|
-
ChartEventType["MOUSEDOWN"] = "mousedown";
|
|
548
|
-
ChartEventType["MOUSEOVER"] = "mouseover";
|
|
549
|
-
ChartEventType["MOUSEOUT"] = "mouseout";
|
|
550
|
-
ChartEventType["GLOBALOUT"] = "globalout";
|
|
551
|
-
ChartEventType["LEGENDSELECTED"] = "legendselected";
|
|
552
|
-
ChartEventType["LEGENDUNSELECTED"] = "legendunselected";
|
|
553
|
-
ChartEventType["LEGENDSELECTCHANGED"] = "legendselectchanged";
|
|
554
|
-
ChartEventType["LEGENDSCROLL"] = "legendscroll";
|
|
555
|
-
ChartEventType["DATAZOOM"] = "datazoom";
|
|
556
|
-
ChartEventType["DATARANGESELECTED"] = "datarangeselected";
|
|
557
|
-
ChartEventType["TIMELINECHANGED"] = "timelinechanged";
|
|
558
|
-
ChartEventType["TIMELINEPLAYCHANGED"] = "timelineplaychanged";
|
|
559
|
-
ChartEventType["RESTORE"] = "restore";
|
|
560
|
-
ChartEventType["DATAVIEWCHANGED"] = "dataviewchanged";
|
|
561
|
-
ChartEventType["MAGICTYPECHANGED"] = "magictypechanged";
|
|
562
|
-
ChartEventType["GEOSELECTCHANGED"] = "geoselectchanged";
|
|
563
|
-
ChartEventType["GEOSELECTED"] = "geoselected";
|
|
564
|
-
ChartEventType["GEOUNSELECTED"] = "geounselected";
|
|
565
|
-
ChartEventType["PIESELECTCHANGED"] = "pieselectchanged";
|
|
566
|
-
ChartEventType["PIESELECTED"] = "pieselected";
|
|
567
|
-
ChartEventType["PIEUNSELECTED"] = "pieunselected";
|
|
568
|
-
ChartEventType["MAPSELECTCHANGED"] = "mapselectchanged";
|
|
569
|
-
ChartEventType["MAPSELECTED"] = "mapselected";
|
|
570
|
-
ChartEventType["MAPUNSELECTED"] = "mapunselected";
|
|
571
|
-
ChartEventType["AXISAREASELECTED"] = "axisareaselected";
|
|
572
|
-
ChartEventType["FOCUSNODEADJACENCY"] = "focusnodeadjacency";
|
|
573
|
-
ChartEventType["UNFOCUSNODEADJACENCY"] = "unfocusnodeadjacency";
|
|
574
|
-
ChartEventType["BRUSH"] = "brush";
|
|
575
|
-
ChartEventType["BRUSHSELECTED"] = "brushselected";
|
|
576
|
-
ChartEventType["RENDERED"] = "rendered";
|
|
577
|
-
ChartEventType["FINISHED"] = "finished";
|
|
578
|
-
// 自定义事件
|
|
579
|
-
ChartEventType["CHART_READY"] = "chartReady";
|
|
580
|
-
ChartEventType["CHART_RESIZE"] = "chartResize";
|
|
581
|
-
ChartEventType["CHART_ERROR"] = "chartError";
|
|
582
|
-
ChartEventType["CHART_DISPOSE"] = "chartDispose";
|
|
583
|
-
})(ChartEventType || (ChartEventType = {}));
|
|
584
|
-
;// ./src/core/types/platform.ts
|
|
642
|
+
|
|
585
643
|
/**
|
|
586
|
-
*
|
|
644
|
+
* 字节跳动小程序环境下的图表适配器
|
|
587
645
|
*/
|
|
588
|
-
var
|
|
589
|
-
(function (PlatformType) {
|
|
590
|
-
PlatformType["H5"] = "h5";
|
|
591
|
-
PlatformType["WEAPP"] = "weapp";
|
|
592
|
-
PlatformType["ALIPAY"] = "alipay";
|
|
593
|
-
PlatformType["SWAN"] = "swan";
|
|
594
|
-
PlatformType["TT"] = "tt";
|
|
595
|
-
PlatformType["QQ"] = "qq";
|
|
596
|
-
PlatformType["JD"] = "jd";
|
|
597
|
-
PlatformType["HARMONY"] = "harmony";
|
|
598
|
-
PlatformType["DD"] = "dd";
|
|
599
|
-
PlatformType["QYWX"] = "qywx";
|
|
600
|
-
PlatformType["LARK"] = "lark";
|
|
601
|
-
PlatformType["KWAI"] = "kwai";
|
|
602
|
-
})(PlatformType || (PlatformType = {}));
|
|
603
|
-
// EXTERNAL MODULE: ./src/core/animation/index.ts + 2 modules
|
|
604
|
-
var animation = __webpack_require__(251);
|
|
605
|
-
;// ./src/core/types/index.ts
|
|
606
|
-
// 公共类型
|
|
607
|
-
|
|
608
|
-
// 平台类型
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
// 导出动画相关类型
|
|
612
|
-
|
|
613
|
-
// EXTERNAL MODULE: ./src/core/utils/index.ts + 2 modules
|
|
614
|
-
var utils = __webpack_require__(524);
|
|
615
|
-
// EXTERNAL MODULE: ./src/core/echarts.ts + 1 modules
|
|
616
|
-
var echarts = __webpack_require__(930);
|
|
617
|
-
;// ./src/core/index.ts
|
|
618
|
-
/**
|
|
619
|
-
* TaroViz 核心组件库
|
|
620
|
-
* 提供基础组件和工具函数
|
|
621
|
-
*/
|
|
622
|
-
// 类型定义
|
|
623
|
-
|
|
624
|
-
// 工具函数
|
|
625
|
-
|
|
626
|
-
// ECharts 统一导出
|
|
627
|
-
|
|
628
|
-
/**
|
|
629
|
-
* 库信息
|
|
630
|
-
*/
|
|
631
|
-
var core_name = 'taroviz';
|
|
632
|
-
var version = '1.2.0';
|
|
633
|
-
// EXTERNAL MODULE: ./src/adapters/h5/index.ts
|
|
634
|
-
var h5 = __webpack_require__(123);
|
|
635
|
-
// EXTERNAL MODULE: ./src/adapters/weapp/index.ts
|
|
636
|
-
var weapp = __webpack_require__(999);
|
|
637
|
-
// EXTERNAL MODULE: ./src/adapters/swan/index.ts
|
|
638
|
-
var swan = __webpack_require__(85);
|
|
639
|
-
// EXTERNAL MODULE: ./src/adapters/tt/index.ts
|
|
640
|
-
var tt = __webpack_require__(280);
|
|
641
|
-
// EXTERNAL MODULE: ./src/adapters/harmony/index.ts
|
|
642
|
-
var harmony = __webpack_require__(382);
|
|
643
|
-
;// ./src/adapters/types.ts
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
;// ./src/adapters/index.ts
|
|
647
|
-
/**
|
|
648
|
-
* TaroViz 平台适配器
|
|
649
|
-
* 自动检测并加载适合当前平台的适配器
|
|
650
|
-
*/
|
|
651
|
-
var _a;
|
|
652
|
-
|
|
653
|
-
var PLATFORM_CONFIGS = (_a = {}, _a[PlatformType.H5] = {
|
|
654
|
-
name: 'H5'
|
|
655
|
-
}, _a[PlatformType.WEAPP] = {
|
|
656
|
-
name: 'Wechat',
|
|
657
|
-
requireComponent: true
|
|
658
|
-
}, _a[PlatformType.ALIPAY] = {
|
|
659
|
-
name: 'Alipay',
|
|
660
|
-
requireComponent: true
|
|
661
|
-
}, _a[PlatformType.SWAN] = {
|
|
662
|
-
name: 'Baidu',
|
|
663
|
-
requireComponent: true
|
|
664
|
-
}, _a[PlatformType.TT] = {
|
|
665
|
-
name: 'ByteDance',
|
|
666
|
-
requireComponent: true
|
|
667
|
-
}, _a[PlatformType.QQ] = {
|
|
668
|
-
name: 'QQ',
|
|
669
|
-
requireComponent: true
|
|
670
|
-
}, _a[PlatformType.JD] = {
|
|
671
|
-
name: 'JD',
|
|
672
|
-
requireComponent: true
|
|
673
|
-
}, _a[PlatformType.DD] = {
|
|
674
|
-
name: 'DingTalk',
|
|
675
|
-
requireComponent: true
|
|
676
|
-
}, _a[PlatformType.QYWX] = {
|
|
677
|
-
name: 'QiyeWechat'
|
|
678
|
-
}, _a[PlatformType.LARK] = {
|
|
679
|
-
name: 'Lark'
|
|
680
|
-
}, _a[PlatformType.HARMONY] = {
|
|
681
|
-
name: 'HarmonyOS',
|
|
682
|
-
requireComponent: true
|
|
683
|
-
}, _a);
|
|
684
|
-
/**
|
|
685
|
-
* 检测当前运行的平台环境
|
|
686
|
-
*/
|
|
687
|
-
function detectPlatform() {
|
|
688
|
-
if (typeof window === 'undefined') {
|
|
689
|
-
return PlatformType.H5;
|
|
690
|
-
}
|
|
691
|
-
var checks = [{
|
|
692
|
-
test: function () {
|
|
693
|
-
var _a, _b;
|
|
694
|
-
return 'wx' in window && ((_a = window.wx) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync) && !((_b = window.wx) === null || _b === void 0 ? void 0 : _b.qy);
|
|
695
|
-
},
|
|
696
|
-
platform: PlatformType.WEAPP
|
|
697
|
-
}, {
|
|
698
|
-
test: function () {
|
|
699
|
-
var _a;
|
|
700
|
-
return 'my' in window && ((_a = window.my) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
701
|
-
},
|
|
702
|
-
platform: PlatformType.ALIPAY
|
|
703
|
-
}, {
|
|
704
|
-
test: function () {
|
|
705
|
-
var _a;
|
|
706
|
-
return 'swan' in window && ((_a = window.swan) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
707
|
-
},
|
|
708
|
-
platform: PlatformType.SWAN
|
|
709
|
-
}, {
|
|
710
|
-
test: function () {
|
|
711
|
-
var _a;
|
|
712
|
-
return 'tt' in window && ((_a = window.tt) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
713
|
-
},
|
|
714
|
-
platform: PlatformType.TT
|
|
715
|
-
}, {
|
|
716
|
-
test: function () {
|
|
717
|
-
var _a;
|
|
718
|
-
return 'qq' in window && ((_a = window.qq) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
719
|
-
},
|
|
720
|
-
platform: PlatformType.QQ
|
|
721
|
-
}, {
|
|
722
|
-
test: function () {
|
|
723
|
-
var _a;
|
|
724
|
-
return 'jd' in window && ((_a = window.jd) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
725
|
-
},
|
|
726
|
-
platform: PlatformType.JD
|
|
727
|
-
}, {
|
|
728
|
-
test: function () {
|
|
729
|
-
var _a;
|
|
730
|
-
return 'dd' in window && ((_a = window.dd) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
731
|
-
},
|
|
732
|
-
platform: PlatformType.DD
|
|
733
|
-
}, {
|
|
734
|
-
test: function () {
|
|
735
|
-
var _a;
|
|
736
|
-
return 'wx' in window && ((_a = window.wx) === null || _a === void 0 ? void 0 : _a.qy);
|
|
737
|
-
},
|
|
738
|
-
platform: PlatformType.QYWX
|
|
739
|
-
}, {
|
|
740
|
-
test: function () {
|
|
741
|
-
var _a, _b;
|
|
742
|
-
return 'tt' in window && ((_b = (_a = window.tt) === null || _a === void 0 ? void 0 : _a.env) === null || _b === void 0 ? void 0 : _b.appName) === 'lark';
|
|
743
|
-
},
|
|
744
|
-
platform: PlatformType.LARK
|
|
745
|
-
}, {
|
|
746
|
-
test: function () {
|
|
747
|
-
return navigator.userAgent.includes('HarmonyOS');
|
|
748
|
-
},
|
|
749
|
-
platform: PlatformType.HARMONY
|
|
750
|
-
}];
|
|
751
|
-
for (var _i = 0, checks_1 = checks; _i < checks_1.length; _i++) {
|
|
752
|
-
var check = checks_1[_i];
|
|
753
|
-
if (check.test()) {
|
|
754
|
-
return check.platform;
|
|
755
|
-
}
|
|
756
|
-
}
|
|
757
|
-
return PlatformType.H5;
|
|
758
|
-
}
|
|
759
|
-
/**
|
|
760
|
-
* 判断运行环境
|
|
761
|
-
*/
|
|
762
|
-
function getEnv() {
|
|
763
|
-
var _a;
|
|
764
|
-
if (typeof window !== 'undefined' && typeof document !== 'undefined') {
|
|
765
|
-
return 'h5';
|
|
766
|
-
}
|
|
767
|
-
if (typeof __webpack_require__.g !== 'undefined' && ((_a = __webpack_require__.g === null || __webpack_require__.g === void 0 ? void 0 : __webpack_require__.g.wx) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync)) {
|
|
768
|
-
return 'weapp';
|
|
769
|
-
}
|
|
770
|
-
return 'unknown';
|
|
771
|
-
}
|
|
772
|
-
/**
|
|
773
|
-
* 创建适配器实例
|
|
774
|
-
*/
|
|
775
|
-
function createAdapterInstance(platform, options) {
|
|
776
|
-
var _a;
|
|
777
|
-
var adapters = (_a = {}, _a[PlatformType.H5] = function () {
|
|
778
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
779
|
-
}, _a[PlatformType.WEAPP] = function () {
|
|
780
|
-
return (__webpack_require__(999)/* ["default"] */ .A).create(options);
|
|
781
|
-
}, _a[PlatformType.SWAN] = function () {
|
|
782
|
-
return (__webpack_require__(85)/* ["default"] */ .A).create(options);
|
|
783
|
-
}, _a[PlatformType.TT] = function () {
|
|
784
|
-
return (__webpack_require__(280)/* ["default"] */ .A).create(options);
|
|
785
|
-
}, _a[PlatformType.HARMONY] = function () {
|
|
786
|
-
return (__webpack_require__(382)/* ["default"] */ .A).create(options);
|
|
787
|
-
}, _a[PlatformType.ALIPAY] = function () {
|
|
788
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
789
|
-
}, _a[PlatformType.QQ] = function () {
|
|
790
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
791
|
-
}, _a[PlatformType.JD] = function () {
|
|
792
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
793
|
-
}, _a[PlatformType.DD] = function () {
|
|
794
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
795
|
-
}, _a[PlatformType.QYWX] = function () {
|
|
796
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
797
|
-
}, _a[PlatformType.LARK] = function () {
|
|
798
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
799
|
-
}, _a);
|
|
800
|
-
return adapters[platform]();
|
|
801
|
-
}
|
|
802
|
-
/**
|
|
803
|
-
* 获取适配器
|
|
804
|
-
*/
|
|
805
|
-
function getAdapter(options) {
|
|
806
|
-
var platform = detectPlatform();
|
|
807
|
-
var config = PLATFORM_CONFIGS[platform];
|
|
808
|
-
// 检查是否需要 component 属性
|
|
809
|
-
if ((config === null || config === void 0 ? void 0 : config.requireComponent) && !('component' in options)) {
|
|
810
|
-
console.warn("[TaroViz] ".concat(config.name, "Adapter requires component property, fallback to H5Adapter"));
|
|
811
|
-
}
|
|
812
|
-
try {
|
|
813
|
-
return createAdapterInstance(platform, options);
|
|
814
|
-
} catch (error) {
|
|
815
|
-
console.error("[TaroViz] Failed to load adapter for platform '".concat(platform, "':"), error);
|
|
816
|
-
return (__webpack_require__(123)/* ["default"] */ .A).create(options);
|
|
817
|
-
}
|
|
818
|
-
}
|
|
819
|
-
// 导出所有适配器
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
/**
|
|
826
|
-
* 版本信息
|
|
827
|
-
*/
|
|
828
|
-
var adapters_version = '1.2.0';
|
|
829
|
-
|
|
830
|
-
/* harmony default export */ const adapters = ({
|
|
831
|
-
getAdapter: getAdapter,
|
|
832
|
-
getEnv: getEnv,
|
|
833
|
-
detectPlatform: detectPlatform,
|
|
834
|
-
h5: (__webpack_require__(123)/* ["default"] */ .A),
|
|
835
|
-
weapp: (__webpack_require__(999)/* ["default"] */ .A),
|
|
836
|
-
swan: (__webpack_require__(85)/* ["default"] */ .A),
|
|
837
|
-
tt: (__webpack_require__(280)/* ["default"] */ .A),
|
|
838
|
-
harmony: (__webpack_require__(382)/* ["default"] */ .A)
|
|
839
|
-
});
|
|
840
|
-
|
|
841
|
-
/***/ },
|
|
842
|
-
|
|
843
|
-
/***/ 85
|
|
844
|
-
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
845
|
-
|
|
846
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
847
|
-
/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
848
|
-
/* harmony export */ });
|
|
849
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15);
|
|
850
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
851
|
-
var __assign = undefined && undefined.__assign || function () {
|
|
852
|
-
__assign = Object.assign || function (t) {
|
|
853
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
854
|
-
s = arguments[i];
|
|
855
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
856
|
-
}
|
|
857
|
-
return t;
|
|
858
|
-
};
|
|
859
|
-
return __assign.apply(this, arguments);
|
|
860
|
-
};
|
|
861
|
-
/**
|
|
862
|
-
* TaroViz 百度小程序适配器
|
|
863
|
-
* 基于百度小程序canvas组件实现图表渲染
|
|
864
|
-
*/
|
|
865
|
-
|
|
866
|
-
/**
|
|
867
|
-
* 百度小程序环境下的图表适配器
|
|
868
|
-
*/
|
|
869
|
-
var SwanAdapter = /** @class */function () {
|
|
646
|
+
var TTAdapter = /** @class */function () {
|
|
870
647
|
/**
|
|
871
648
|
* 构造函数
|
|
872
649
|
* @param config 适配器配置
|
|
873
650
|
*/
|
|
874
|
-
function
|
|
651
|
+
function TTAdapter(config) {
|
|
875
652
|
/**
|
|
876
653
|
* 图表实例
|
|
877
654
|
*/
|
|
@@ -884,23 +661,23 @@ var SwanAdapter = /** @class */function () {
|
|
|
884
661
|
this.component = config.component;
|
|
885
662
|
}
|
|
886
663
|
/**
|
|
887
|
-
*
|
|
664
|
+
* 创建字节跳动小程序适配器实例
|
|
888
665
|
* @param options 适配器选项
|
|
889
666
|
* @returns 适配器实例
|
|
890
667
|
*/
|
|
891
|
-
|
|
892
|
-
return new
|
|
668
|
+
TTAdapter.create = function (options) {
|
|
669
|
+
return new TTAdapter(options);
|
|
893
670
|
};
|
|
894
671
|
/**
|
|
895
672
|
* 获取图表实例
|
|
896
673
|
*/
|
|
897
|
-
|
|
674
|
+
TTAdapter.prototype.getInstance = function () {
|
|
898
675
|
return this.chartInstance;
|
|
899
676
|
};
|
|
900
677
|
/**
|
|
901
678
|
* 初始化图表
|
|
902
679
|
*/
|
|
903
|
-
|
|
680
|
+
TTAdapter.prototype.init = function () {
|
|
904
681
|
var _a = this.config,
|
|
905
682
|
canvasId = _a.canvasId,
|
|
906
683
|
width = _a.width,
|
|
@@ -908,11 +685,11 @@ var SwanAdapter = /** @class */function () {
|
|
|
908
685
|
theme = _a.theme,
|
|
909
686
|
option = _a.option;
|
|
910
687
|
if (!this.component) {
|
|
911
|
-
console.error('[TaroViz]
|
|
688
|
+
console.error('[TaroViz] TTAdapter: component is required');
|
|
912
689
|
return null;
|
|
913
690
|
}
|
|
914
691
|
if (!canvasId) {
|
|
915
|
-
console.error('[TaroViz]
|
|
692
|
+
console.error('[TaroViz] TTAdapter: canvasId is required');
|
|
916
693
|
return null;
|
|
917
694
|
}
|
|
918
695
|
// 创建图表实例
|
|
@@ -937,7 +714,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
937
714
|
/**
|
|
938
715
|
* 设置图表选项
|
|
939
716
|
*/
|
|
940
|
-
|
|
717
|
+
TTAdapter.prototype.setOption = function (option, opts) {
|
|
941
718
|
if (this.chartInstance) {
|
|
942
719
|
this.chartInstance.setOption(option, opts);
|
|
943
720
|
} else {
|
|
@@ -947,7 +724,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
947
724
|
/**
|
|
948
725
|
* 设置主题
|
|
949
726
|
*/
|
|
950
|
-
|
|
727
|
+
TTAdapter.prototype.setTheme = function (theme) {
|
|
951
728
|
var _a, _b;
|
|
952
729
|
this.config.theme = theme;
|
|
953
730
|
if (this.chartInstance) {
|
|
@@ -957,32 +734,32 @@ var SwanAdapter = /** @class */function () {
|
|
|
957
734
|
/**
|
|
958
735
|
* 获取图表宽度
|
|
959
736
|
*/
|
|
960
|
-
|
|
737
|
+
TTAdapter.prototype.getWidth = function () {
|
|
961
738
|
return 0;
|
|
962
739
|
};
|
|
963
740
|
/**
|
|
964
741
|
* 获取图表高度
|
|
965
742
|
*/
|
|
966
|
-
|
|
743
|
+
TTAdapter.prototype.getHeight = function () {
|
|
967
744
|
return 0;
|
|
968
745
|
};
|
|
969
746
|
/**
|
|
970
747
|
* 获取DOM元素
|
|
971
748
|
*/
|
|
972
|
-
|
|
749
|
+
TTAdapter.prototype.getDom = function () {
|
|
973
750
|
return null;
|
|
974
751
|
};
|
|
975
752
|
/**
|
|
976
753
|
* 转换为DataURL
|
|
977
754
|
*/
|
|
978
|
-
|
|
755
|
+
TTAdapter.prototype.convertToDataURL = function (opts) {
|
|
979
756
|
var _a;
|
|
980
757
|
return (_a = this.chartInstance) === null || _a === void 0 ? void 0 : _a.getDataURL(opts);
|
|
981
758
|
};
|
|
982
759
|
/**
|
|
983
760
|
* 清空图表
|
|
984
761
|
*/
|
|
985
|
-
|
|
762
|
+
TTAdapter.prototype.clear = function () {
|
|
986
763
|
if (this.chartInstance) {
|
|
987
764
|
this.chartInstance.clear();
|
|
988
765
|
}
|
|
@@ -990,7 +767,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
990
767
|
/**
|
|
991
768
|
* 绑定事件
|
|
992
769
|
*/
|
|
993
|
-
|
|
770
|
+
TTAdapter.prototype.on = function (event, handler) {
|
|
994
771
|
if (this.chartInstance) {
|
|
995
772
|
this.chartInstance.on(event, handler);
|
|
996
773
|
}
|
|
@@ -998,7 +775,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
998
775
|
/**
|
|
999
776
|
* 解绑事件
|
|
1000
777
|
*/
|
|
1001
|
-
|
|
778
|
+
TTAdapter.prototype.off = function (event, handler) {
|
|
1002
779
|
if (this.chartInstance) {
|
|
1003
780
|
this.chartInstance.off(event, handler);
|
|
1004
781
|
}
|
|
@@ -1006,7 +783,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
1006
783
|
/**
|
|
1007
784
|
* 显示加载动画
|
|
1008
785
|
*/
|
|
1009
|
-
|
|
786
|
+
TTAdapter.prototype.showLoading = function (opts) {
|
|
1010
787
|
if (this.chartInstance) {
|
|
1011
788
|
this.chartInstance.showLoading(opts);
|
|
1012
789
|
}
|
|
@@ -1014,7 +791,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
1014
791
|
/**
|
|
1015
792
|
* 隐藏加载动画
|
|
1016
793
|
*/
|
|
1017
|
-
|
|
794
|
+
TTAdapter.prototype.hideLoading = function () {
|
|
1018
795
|
if (this.chartInstance) {
|
|
1019
796
|
this.chartInstance.hideLoading();
|
|
1020
797
|
}
|
|
@@ -1022,7 +799,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
1022
799
|
/**
|
|
1023
800
|
* 销毁图表
|
|
1024
801
|
*/
|
|
1025
|
-
|
|
802
|
+
TTAdapter.prototype.dispose = function () {
|
|
1026
803
|
if (this.chartInstance) {
|
|
1027
804
|
this.chartInstance.dispose();
|
|
1028
805
|
this.chartInstance = null;
|
|
@@ -1031,7 +808,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
1031
808
|
/**
|
|
1032
809
|
* 处理图表大小变化
|
|
1033
810
|
*/
|
|
1034
|
-
|
|
811
|
+
TTAdapter.prototype.resize = function (opts) {
|
|
1035
812
|
if (this.chartInstance) {
|
|
1036
813
|
this.chartInstance.resize(opts);
|
|
1037
814
|
}
|
|
@@ -1039,13 +816,13 @@ var SwanAdapter = /** @class */function () {
|
|
|
1039
816
|
/**
|
|
1040
817
|
* 设置组件实例
|
|
1041
818
|
*/
|
|
1042
|
-
|
|
819
|
+
TTAdapter.prototype.setComponent = function (component) {
|
|
1043
820
|
this.component = component;
|
|
1044
821
|
};
|
|
1045
822
|
/**
|
|
1046
823
|
* 渲染图表组件
|
|
1047
824
|
*/
|
|
1048
|
-
|
|
825
|
+
TTAdapter.prototype.render = function () {
|
|
1049
826
|
var _a = this.config,
|
|
1050
827
|
_b = _a.canvasId,
|
|
1051
828
|
canvasId = _b === void 0 ? 'ec-canvas' : _b,
|
|
@@ -1056,9 +833,9 @@ var SwanAdapter = /** @class */function () {
|
|
|
1056
833
|
_e = _a.style,
|
|
1057
834
|
style = _e === void 0 ? {} : _e;
|
|
1058
835
|
// 注意:这里需要根据实际使用的Taro版本和组件库来调整
|
|
1059
|
-
return /*#__PURE__*/
|
|
836
|
+
return /*#__PURE__*/external_react_.createElement('view', {
|
|
1060
837
|
id: canvasId,
|
|
1061
|
-
style:
|
|
838
|
+
style: tt_assign({
|
|
1062
839
|
width: width,
|
|
1063
840
|
height: height
|
|
1064
841
|
}, style)
|
|
@@ -1067,7 +844,7 @@ var SwanAdapter = /** @class */function () {
|
|
|
1067
844
|
/**
|
|
1068
845
|
* 触发图表行为
|
|
1069
846
|
*/
|
|
1070
|
-
|
|
847
|
+
TTAdapter.prototype.dispatchAction = function (payload) {
|
|
1071
848
|
if (this.chartInstance) {
|
|
1072
849
|
this.chartInstance.dispatchAction(payload);
|
|
1073
850
|
}
|
|
@@ -1075,48 +852,38 @@ var SwanAdapter = /** @class */function () {
|
|
|
1075
852
|
/**
|
|
1076
853
|
* 获取DataURL
|
|
1077
854
|
*/
|
|
1078
|
-
|
|
855
|
+
TTAdapter.prototype.getDataURL = function (opts) {
|
|
1079
856
|
var _a;
|
|
1080
857
|
return (_a = this.chartInstance) === null || _a === void 0 ? void 0 : _a.getDataURL(opts);
|
|
1081
|
-
};
|
|
1082
|
-
return
|
|
1083
|
-
}();
|
|
1084
|
-
/* harmony default export */ const
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
/***/ 280
|
|
1089
|
-
(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1090
|
-
|
|
1091
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1092
|
-
/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
1093
|
-
/* harmony export */ });
|
|
1094
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15);
|
|
1095
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
1096
|
-
var __assign = undefined && undefined.__assign || function () {
|
|
1097
|
-
__assign = Object.assign || function (t) {
|
|
858
|
+
};
|
|
859
|
+
return TTAdapter;
|
|
860
|
+
}();
|
|
861
|
+
/* harmony default export */ const tt = (TTAdapter);
|
|
862
|
+
;// ./src/adapters/harmony/index.ts
|
|
863
|
+
var harmony_assign = undefined && undefined.__assign || function () {
|
|
864
|
+
harmony_assign = Object.assign || function (t) {
|
|
1098
865
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
1099
866
|
s = arguments[i];
|
|
1100
867
|
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
1101
868
|
}
|
|
1102
869
|
return t;
|
|
1103
870
|
};
|
|
1104
|
-
return
|
|
871
|
+
return harmony_assign.apply(this, arguments);
|
|
1105
872
|
};
|
|
1106
873
|
/**
|
|
1107
|
-
* TaroViz
|
|
1108
|
-
*
|
|
874
|
+
* TaroViz HarmonyOS适配器
|
|
875
|
+
* 基于HarmonyOS Canvas实现图表渲染
|
|
1109
876
|
*/
|
|
1110
877
|
|
|
1111
878
|
/**
|
|
1112
|
-
*
|
|
879
|
+
* HarmonyOS环境下的图表适配器
|
|
1113
880
|
*/
|
|
1114
|
-
var
|
|
881
|
+
var HarmonyAdapter = /** @class */function () {
|
|
1115
882
|
/**
|
|
1116
883
|
* 构造函数
|
|
1117
884
|
* @param config 适配器配置
|
|
1118
885
|
*/
|
|
1119
|
-
function
|
|
886
|
+
function HarmonyAdapter(config) {
|
|
1120
887
|
/**
|
|
1121
888
|
* 图表实例
|
|
1122
889
|
*/
|
|
@@ -1129,23 +896,23 @@ var TTAdapter = /** @class */function () {
|
|
|
1129
896
|
this.component = config.component;
|
|
1130
897
|
}
|
|
1131
898
|
/**
|
|
1132
|
-
*
|
|
899
|
+
* 创建HarmonyOS适配器实例
|
|
1133
900
|
* @param options 适配器选项
|
|
1134
901
|
* @returns 适配器实例
|
|
1135
902
|
*/
|
|
1136
|
-
|
|
1137
|
-
return new
|
|
903
|
+
HarmonyAdapter.create = function (options) {
|
|
904
|
+
return new HarmonyAdapter(options);
|
|
1138
905
|
};
|
|
1139
906
|
/**
|
|
1140
907
|
* 获取图表实例
|
|
1141
908
|
*/
|
|
1142
|
-
|
|
909
|
+
HarmonyAdapter.prototype.getInstance = function () {
|
|
1143
910
|
return this.chartInstance;
|
|
1144
911
|
};
|
|
1145
912
|
/**
|
|
1146
913
|
* 初始化图表
|
|
1147
914
|
*/
|
|
1148
|
-
|
|
915
|
+
HarmonyAdapter.prototype.init = function () {
|
|
1149
916
|
var _a = this.config,
|
|
1150
917
|
canvasId = _a.canvasId,
|
|
1151
918
|
width = _a.width,
|
|
@@ -1153,11 +920,11 @@ var TTAdapter = /** @class */function () {
|
|
|
1153
920
|
theme = _a.theme,
|
|
1154
921
|
option = _a.option;
|
|
1155
922
|
if (!this.component) {
|
|
1156
|
-
console.error('[TaroViz]
|
|
923
|
+
console.error('[TaroViz] HarmonyAdapter: component is required');
|
|
1157
924
|
return null;
|
|
1158
925
|
}
|
|
1159
926
|
if (!canvasId) {
|
|
1160
|
-
console.error('[TaroViz]
|
|
927
|
+
console.error('[TaroViz] HarmonyAdapter: canvasId is required');
|
|
1161
928
|
return null;
|
|
1162
929
|
}
|
|
1163
930
|
// 创建图表实例
|
|
@@ -1182,7 +949,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1182
949
|
/**
|
|
1183
950
|
* 设置图表选项
|
|
1184
951
|
*/
|
|
1185
|
-
|
|
952
|
+
HarmonyAdapter.prototype.setOption = function (option, opts) {
|
|
1186
953
|
if (this.chartInstance) {
|
|
1187
954
|
this.chartInstance.setOption(option, opts);
|
|
1188
955
|
} else {
|
|
@@ -1192,7 +959,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1192
959
|
/**
|
|
1193
960
|
* 设置主题
|
|
1194
961
|
*/
|
|
1195
|
-
|
|
962
|
+
HarmonyAdapter.prototype.setTheme = function (theme) {
|
|
1196
963
|
var _a, _b;
|
|
1197
964
|
this.config.theme = theme;
|
|
1198
965
|
if (this.chartInstance) {
|
|
@@ -1202,32 +969,32 @@ var TTAdapter = /** @class */function () {
|
|
|
1202
969
|
/**
|
|
1203
970
|
* 获取图表宽度
|
|
1204
971
|
*/
|
|
1205
|
-
|
|
972
|
+
HarmonyAdapter.prototype.getWidth = function () {
|
|
1206
973
|
return 0;
|
|
1207
974
|
};
|
|
1208
975
|
/**
|
|
1209
976
|
* 获取图表高度
|
|
1210
977
|
*/
|
|
1211
|
-
|
|
978
|
+
HarmonyAdapter.prototype.getHeight = function () {
|
|
1212
979
|
return 0;
|
|
1213
980
|
};
|
|
1214
981
|
/**
|
|
1215
982
|
* 获取DOM元素
|
|
1216
983
|
*/
|
|
1217
|
-
|
|
984
|
+
HarmonyAdapter.prototype.getDom = function () {
|
|
1218
985
|
return null;
|
|
1219
986
|
};
|
|
1220
987
|
/**
|
|
1221
988
|
* 转换为DataURL
|
|
1222
989
|
*/
|
|
1223
|
-
|
|
990
|
+
HarmonyAdapter.prototype.convertToDataURL = function (opts) {
|
|
1224
991
|
var _a;
|
|
1225
992
|
return (_a = this.chartInstance) === null || _a === void 0 ? void 0 : _a.getDataURL(opts);
|
|
1226
993
|
};
|
|
1227
994
|
/**
|
|
1228
995
|
* 清空图表
|
|
1229
996
|
*/
|
|
1230
|
-
|
|
997
|
+
HarmonyAdapter.prototype.clear = function () {
|
|
1231
998
|
if (this.chartInstance) {
|
|
1232
999
|
this.chartInstance.clear();
|
|
1233
1000
|
}
|
|
@@ -1235,7 +1002,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1235
1002
|
/**
|
|
1236
1003
|
* 绑定事件
|
|
1237
1004
|
*/
|
|
1238
|
-
|
|
1005
|
+
HarmonyAdapter.prototype.on = function (event, handler) {
|
|
1239
1006
|
if (this.chartInstance) {
|
|
1240
1007
|
this.chartInstance.on(event, handler);
|
|
1241
1008
|
}
|
|
@@ -1243,7 +1010,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1243
1010
|
/**
|
|
1244
1011
|
* 解绑事件
|
|
1245
1012
|
*/
|
|
1246
|
-
|
|
1013
|
+
HarmonyAdapter.prototype.off = function (event, handler) {
|
|
1247
1014
|
if (this.chartInstance) {
|
|
1248
1015
|
this.chartInstance.off(event, handler);
|
|
1249
1016
|
}
|
|
@@ -1251,7 +1018,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1251
1018
|
/**
|
|
1252
1019
|
* 显示加载动画
|
|
1253
1020
|
*/
|
|
1254
|
-
|
|
1021
|
+
HarmonyAdapter.prototype.showLoading = function (opts) {
|
|
1255
1022
|
if (this.chartInstance) {
|
|
1256
1023
|
this.chartInstance.showLoading(opts);
|
|
1257
1024
|
}
|
|
@@ -1259,7 +1026,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1259
1026
|
/**
|
|
1260
1027
|
* 隐藏加载动画
|
|
1261
1028
|
*/
|
|
1262
|
-
|
|
1029
|
+
HarmonyAdapter.prototype.hideLoading = function () {
|
|
1263
1030
|
if (this.chartInstance) {
|
|
1264
1031
|
this.chartInstance.hideLoading();
|
|
1265
1032
|
}
|
|
@@ -1267,7 +1034,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1267
1034
|
/**
|
|
1268
1035
|
* 销毁图表
|
|
1269
1036
|
*/
|
|
1270
|
-
|
|
1037
|
+
HarmonyAdapter.prototype.dispose = function () {
|
|
1271
1038
|
if (this.chartInstance) {
|
|
1272
1039
|
this.chartInstance.dispose();
|
|
1273
1040
|
this.chartInstance = null;
|
|
@@ -1276,7 +1043,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1276
1043
|
/**
|
|
1277
1044
|
* 处理图表大小变化
|
|
1278
1045
|
*/
|
|
1279
|
-
|
|
1046
|
+
HarmonyAdapter.prototype.resize = function (opts) {
|
|
1280
1047
|
if (this.chartInstance) {
|
|
1281
1048
|
this.chartInstance.resize(opts);
|
|
1282
1049
|
}
|
|
@@ -1284,13 +1051,13 @@ var TTAdapter = /** @class */function () {
|
|
|
1284
1051
|
/**
|
|
1285
1052
|
* 设置组件实例
|
|
1286
1053
|
*/
|
|
1287
|
-
|
|
1054
|
+
HarmonyAdapter.prototype.setComponent = function (component) {
|
|
1288
1055
|
this.component = component;
|
|
1289
1056
|
};
|
|
1290
1057
|
/**
|
|
1291
1058
|
* 渲染图表组件
|
|
1292
1059
|
*/
|
|
1293
|
-
|
|
1060
|
+
HarmonyAdapter.prototype.render = function () {
|
|
1294
1061
|
var _a = this.config,
|
|
1295
1062
|
_b = _a.canvasId,
|
|
1296
1063
|
canvasId = _b === void 0 ? 'ec-canvas' : _b,
|
|
@@ -1301,9 +1068,9 @@ var TTAdapter = /** @class */function () {
|
|
|
1301
1068
|
_e = _a.style,
|
|
1302
1069
|
style = _e === void 0 ? {} : _e;
|
|
1303
1070
|
// 注意:这里需要根据实际使用的Taro版本和组件库来调整
|
|
1304
|
-
return /*#__PURE__*/
|
|
1071
|
+
return /*#__PURE__*/external_react_.createElement('view', {
|
|
1305
1072
|
id: canvasId,
|
|
1306
|
-
style:
|
|
1073
|
+
style: harmony_assign({
|
|
1307
1074
|
width: width,
|
|
1308
1075
|
height: height
|
|
1309
1076
|
}, style)
|
|
@@ -1312,7 +1079,7 @@ var TTAdapter = /** @class */function () {
|
|
|
1312
1079
|
/**
|
|
1313
1080
|
* 触发图表行为
|
|
1314
1081
|
*/
|
|
1315
|
-
|
|
1082
|
+
HarmonyAdapter.prototype.dispatchAction = function (payload) {
|
|
1316
1083
|
if (this.chartInstance) {
|
|
1317
1084
|
this.chartInstance.dispatchAction(payload);
|
|
1318
1085
|
}
|
|
@@ -1320,13 +1087,212 @@ var TTAdapter = /** @class */function () {
|
|
|
1320
1087
|
/**
|
|
1321
1088
|
* 获取DataURL
|
|
1322
1089
|
*/
|
|
1323
|
-
|
|
1090
|
+
HarmonyAdapter.prototype.getDataURL = function (opts) {
|
|
1324
1091
|
var _a;
|
|
1325
1092
|
return (_a = this.chartInstance) === null || _a === void 0 ? void 0 : _a.getDataURL(opts);
|
|
1326
1093
|
};
|
|
1327
|
-
return
|
|
1094
|
+
return HarmonyAdapter;
|
|
1328
1095
|
}();
|
|
1329
|
-
/* harmony default export */ const
|
|
1096
|
+
/* harmony default export */ const harmony = (HarmonyAdapter);
|
|
1097
|
+
;// ./src/adapters/types.ts
|
|
1098
|
+
|
|
1099
|
+
|
|
1100
|
+
;// ./src/adapters/index.ts
|
|
1101
|
+
/**
|
|
1102
|
+
* TaroViz 平台适配器
|
|
1103
|
+
* 自动检测并加载适合当前平台的适配器
|
|
1104
|
+
*/
|
|
1105
|
+
var _a;
|
|
1106
|
+
|
|
1107
|
+
var PLATFORM_CONFIGS = (_a = {}, _a[PlatformType.H5] = {
|
|
1108
|
+
name: 'H5'
|
|
1109
|
+
}, _a[PlatformType.WEAPP] = {
|
|
1110
|
+
name: 'Wechat',
|
|
1111
|
+
requireComponent: true
|
|
1112
|
+
}, _a[PlatformType.ALIPAY] = {
|
|
1113
|
+
name: 'Alipay',
|
|
1114
|
+
requireComponent: true
|
|
1115
|
+
}, _a[PlatformType.SWAN] = {
|
|
1116
|
+
name: 'Baidu',
|
|
1117
|
+
requireComponent: true
|
|
1118
|
+
}, _a[PlatformType.TT] = {
|
|
1119
|
+
name: 'ByteDance',
|
|
1120
|
+
requireComponent: true
|
|
1121
|
+
}, _a[PlatformType.QQ] = {
|
|
1122
|
+
name: 'QQ',
|
|
1123
|
+
requireComponent: true
|
|
1124
|
+
}, _a[PlatformType.JD] = {
|
|
1125
|
+
name: 'JD',
|
|
1126
|
+
requireComponent: true
|
|
1127
|
+
}, _a[PlatformType.DD] = {
|
|
1128
|
+
name: 'DingTalk',
|
|
1129
|
+
requireComponent: true
|
|
1130
|
+
}, _a[PlatformType.QYWX] = {
|
|
1131
|
+
name: 'QiyeWechat'
|
|
1132
|
+
}, _a[PlatformType.LARK] = {
|
|
1133
|
+
name: 'Lark'
|
|
1134
|
+
}, _a[PlatformType.KWAI] = {
|
|
1135
|
+
name: 'Kwai',
|
|
1136
|
+
requireComponent: true
|
|
1137
|
+
}, _a[PlatformType.HARMONY] = {
|
|
1138
|
+
name: 'HarmonyOS',
|
|
1139
|
+
requireComponent: true
|
|
1140
|
+
}, _a);
|
|
1141
|
+
/**
|
|
1142
|
+
* 检测当前运行的平台环境
|
|
1143
|
+
*/
|
|
1144
|
+
function detectPlatform() {
|
|
1145
|
+
if (typeof window === 'undefined') {
|
|
1146
|
+
return PlatformType.H5;
|
|
1147
|
+
}
|
|
1148
|
+
var checks = [{
|
|
1149
|
+
test: function () {
|
|
1150
|
+
var _a, _b;
|
|
1151
|
+
return 'wx' in window && ((_a = window.wx) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync) && !((_b = window.wx) === null || _b === void 0 ? void 0 : _b.qy);
|
|
1152
|
+
},
|
|
1153
|
+
platform: PlatformType.WEAPP
|
|
1154
|
+
}, {
|
|
1155
|
+
test: function () {
|
|
1156
|
+
var _a;
|
|
1157
|
+
return 'my' in window && ((_a = window.my) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
1158
|
+
},
|
|
1159
|
+
platform: PlatformType.ALIPAY
|
|
1160
|
+
}, {
|
|
1161
|
+
test: function () {
|
|
1162
|
+
var _a;
|
|
1163
|
+
return 'swan' in window && ((_a = window.swan) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
1164
|
+
},
|
|
1165
|
+
platform: PlatformType.SWAN
|
|
1166
|
+
}, {
|
|
1167
|
+
test: function () {
|
|
1168
|
+
var _a;
|
|
1169
|
+
return 'tt' in window && ((_a = window.tt) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
1170
|
+
},
|
|
1171
|
+
platform: PlatformType.TT
|
|
1172
|
+
}, {
|
|
1173
|
+
test: function () {
|
|
1174
|
+
var _a;
|
|
1175
|
+
return 'qq' in window && ((_a = window.qq) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
1176
|
+
},
|
|
1177
|
+
platform: PlatformType.QQ
|
|
1178
|
+
}, {
|
|
1179
|
+
test: function () {
|
|
1180
|
+
var _a;
|
|
1181
|
+
return 'jd' in window && ((_a = window.jd) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
1182
|
+
},
|
|
1183
|
+
platform: PlatformType.JD
|
|
1184
|
+
}, {
|
|
1185
|
+
test: function () {
|
|
1186
|
+
var _a;
|
|
1187
|
+
return 'dd' in window && ((_a = window.dd) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync);
|
|
1188
|
+
},
|
|
1189
|
+
platform: PlatformType.DD
|
|
1190
|
+
}, {
|
|
1191
|
+
test: function () {
|
|
1192
|
+
var _a;
|
|
1193
|
+
return 'wx' in window && ((_a = window.wx) === null || _a === void 0 ? void 0 : _a.qy);
|
|
1194
|
+
},
|
|
1195
|
+
platform: PlatformType.QYWX
|
|
1196
|
+
}, {
|
|
1197
|
+
test: function () {
|
|
1198
|
+
var _a, _b;
|
|
1199
|
+
return 'tt' in window && ((_b = (_a = window.tt) === null || _a === void 0 ? void 0 : _a.env) === null || _b === void 0 ? void 0 : _b.appName) === 'lark';
|
|
1200
|
+
},
|
|
1201
|
+
platform: PlatformType.LARK
|
|
1202
|
+
}, {
|
|
1203
|
+
test: function () {
|
|
1204
|
+
return navigator.userAgent.includes('HarmonyOS');
|
|
1205
|
+
},
|
|
1206
|
+
platform: PlatformType.HARMONY
|
|
1207
|
+
}];
|
|
1208
|
+
for (var _i = 0, checks_1 = checks; _i < checks_1.length; _i++) {
|
|
1209
|
+
var check = checks_1[_i];
|
|
1210
|
+
if (check.test()) {
|
|
1211
|
+
return check.platform;
|
|
1212
|
+
}
|
|
1213
|
+
}
|
|
1214
|
+
return PlatformType.H5;
|
|
1215
|
+
}
|
|
1216
|
+
/**
|
|
1217
|
+
* 判断运行环境
|
|
1218
|
+
*/
|
|
1219
|
+
function getEnv() {
|
|
1220
|
+
var _a;
|
|
1221
|
+
if (typeof window !== 'undefined' && typeof document !== 'undefined') {
|
|
1222
|
+
return 'h5';
|
|
1223
|
+
}
|
|
1224
|
+
if (typeof __webpack_require__.g !== 'undefined' && ((_a = __webpack_require__.g === null || __webpack_require__.g === void 0 ? void 0 : __webpack_require__.g.wx) === null || _a === void 0 ? void 0 : _a.getSystemInfoSync)) {
|
|
1225
|
+
return 'weapp';
|
|
1226
|
+
}
|
|
1227
|
+
return 'unknown';
|
|
1228
|
+
}
|
|
1229
|
+
/**
|
|
1230
|
+
* 创建适配器实例
|
|
1231
|
+
* 使用静态导入避免动态 require 的 ESM 问题
|
|
1232
|
+
*/
|
|
1233
|
+
function createAdapterInstance(platform, options) {
|
|
1234
|
+
// 预加载所有适配器(编译时解析,支持 tree-shaking)
|
|
1235
|
+
switch (platform) {
|
|
1236
|
+
case PlatformType.H5:
|
|
1237
|
+
case PlatformType.ALIPAY:
|
|
1238
|
+
case PlatformType.QQ:
|
|
1239
|
+
case PlatformType.JD:
|
|
1240
|
+
case PlatformType.DD:
|
|
1241
|
+
case PlatformType.QYWX:
|
|
1242
|
+
case PlatformType.LARK:
|
|
1243
|
+
case PlatformType.KWAI:
|
|
1244
|
+
return h5/* default */.A.create(options);
|
|
1245
|
+
case PlatformType.WEAPP:
|
|
1246
|
+
return weapp/* default */.A.create(options);
|
|
1247
|
+
case PlatformType.SWAN:
|
|
1248
|
+
return swan.create(options);
|
|
1249
|
+
case PlatformType.TT:
|
|
1250
|
+
return tt.create(options);
|
|
1251
|
+
case PlatformType.HARMONY:
|
|
1252
|
+
return harmony.create(options);
|
|
1253
|
+
default:
|
|
1254
|
+
return h5/* default */.A.create(options);
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
// 静态导入适配器
|
|
1258
|
+
|
|
1259
|
+
|
|
1260
|
+
|
|
1261
|
+
|
|
1262
|
+
|
|
1263
|
+
/**
|
|
1264
|
+
* 获取适配器
|
|
1265
|
+
*/
|
|
1266
|
+
function getAdapter(options) {
|
|
1267
|
+
var platform = detectPlatform();
|
|
1268
|
+
var config = PLATFORM_CONFIGS[platform];
|
|
1269
|
+
// 检查是否需要 component 属性
|
|
1270
|
+
if ((config === null || config === void 0 ? void 0 : config.requireComponent) && !('component' in options)) {
|
|
1271
|
+
console.warn("[TaroViz] ".concat(config.name, "Adapter requires component property, fallback to H5Adapter"));
|
|
1272
|
+
}
|
|
1273
|
+
try {
|
|
1274
|
+
return createAdapterInstance(platform, options);
|
|
1275
|
+
} catch (error) {
|
|
1276
|
+
console.error("[TaroViz] Failed to load adapter for platform '".concat(platform, "':"), error);
|
|
1277
|
+
return h5/* default */.A.create(options);
|
|
1278
|
+
}
|
|
1279
|
+
}
|
|
1280
|
+
// 导出所有适配器
|
|
1281
|
+
|
|
1282
|
+
|
|
1283
|
+
|
|
1284
|
+
|
|
1285
|
+
|
|
1286
|
+
/**
|
|
1287
|
+
* 版本信息
|
|
1288
|
+
*/
|
|
1289
|
+
var adapters_version = '1.2.0';
|
|
1290
|
+
|
|
1291
|
+
/* harmony default export */ const adapters = ({
|
|
1292
|
+
getAdapter: getAdapter,
|
|
1293
|
+
getEnv: getEnv,
|
|
1294
|
+
detectPlatform: detectPlatform
|
|
1295
|
+
});
|
|
1330
1296
|
|
|
1331
1297
|
/***/ },
|
|
1332
1298
|
|
|
@@ -1611,8 +1577,8 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
1611
1577
|
// EXTERNAL MODULE: external "react"
|
|
1612
1578
|
var external_react_ = __webpack_require__(15);
|
|
1613
1579
|
var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
|
|
1614
|
-
// EXTERNAL MODULE: ./src/adapters/index.ts +
|
|
1615
|
-
var adapters = __webpack_require__(
|
|
1580
|
+
// EXTERNAL MODULE: ./src/adapters/index.ts + 8 modules
|
|
1581
|
+
var adapters = __webpack_require__(234);
|
|
1616
1582
|
// EXTERNAL MODULE: ./src/core/utils/index.ts + 2 modules
|
|
1617
1583
|
var utils = __webpack_require__(524);
|
|
1618
1584
|
;// ./src/charts/utils.ts
|
|
@@ -1787,13 +1753,11 @@ var BaseChartWrapper = function (_a) {
|
|
|
1787
1753
|
width: typeof width === 'number' ? "".concat(width, "px") : width,
|
|
1788
1754
|
height: typeof height === 'number' ? "".concat(height, "px") : height
|
|
1789
1755
|
}, style);
|
|
1790
|
-
// 使用带有处理的适配器配置创建适配器实例
|
|
1791
|
-
var adapter = (0,adapters/* getAdapter */.cK)(adapterConfig);
|
|
1792
1756
|
return /*#__PURE__*/external_react_default().createElement("div", {
|
|
1793
1757
|
className: "taroviz-".concat(chartType, " ").concat(className),
|
|
1794
1758
|
style: mergedStyle,
|
|
1795
1759
|
ref: containerRef
|
|
1796
|
-
}
|
|
1760
|
+
});
|
|
1797
1761
|
};
|
|
1798
1762
|
/* harmony default export */ const common_BaseChartWrapper = (BaseChartWrapper);
|
|
1799
1763
|
|
|
@@ -3020,11 +2984,15 @@ var defaultLocalization = new Localization();
|
|
|
3020
2984
|
* @returns 唯一标识符字符串
|
|
3021
2985
|
*/
|
|
3022
2986
|
function uuid() {
|
|
3023
|
-
|
|
3024
|
-
|
|
3025
|
-
|
|
3026
|
-
return
|
|
3027
|
-
}
|
|
2987
|
+
var _a;
|
|
2988
|
+
// 使用 crypto API 生成加密安全的 UUID
|
|
2989
|
+
if (typeof ((_a = globalThis.crypto) === null || _a === void 0 ? void 0 : _a.randomUUID) === 'function') {
|
|
2990
|
+
return globalThis.crypto.randomUUID();
|
|
2991
|
+
}
|
|
2992
|
+
// 回退:使用 Math.random() + 时间戳混合
|
|
2993
|
+
var timestamp = Date.now().toString(36);
|
|
2994
|
+
var randomPart = Math.random().toString(36).substring(2, 15);
|
|
2995
|
+
return "".concat(timestamp, "-").concat(randomPart, "-").concat(Math.random().toString(36).substring(2, 10));
|
|
3028
2996
|
}
|
|
3029
2997
|
/**
|
|
3030
2998
|
* 生成简短的唯一标识符
|
|
@@ -3307,8 +3275,8 @@ var __webpack_exports__ = {};
|
|
|
3307
3275
|
// EXTERNAL MODULE: external "react"
|
|
3308
3276
|
var external_react_ = __webpack_require__(15);
|
|
3309
3277
|
var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
|
|
3310
|
-
// EXTERNAL MODULE: ./src/adapters/index.ts +
|
|
3311
|
-
var adapters = __webpack_require__(
|
|
3278
|
+
// EXTERNAL MODULE: ./src/adapters/index.ts + 8 modules
|
|
3279
|
+
var adapters = __webpack_require__(234);
|
|
3312
3280
|
// EXTERNAL MODULE: ./src/core/animation/index.ts + 2 modules
|
|
3313
3281
|
var animation = __webpack_require__(251);
|
|
3314
3282
|
;// ./src/core/utils/chartInstances.ts
|
|
@@ -3322,6 +3290,15 @@ var CHART_INSTANCES = {};
|
|
|
3322
3290
|
* @param instance 图表实例
|
|
3323
3291
|
*/
|
|
3324
3292
|
function registerChart(id, instance) {
|
|
3293
|
+
// 如果已存在同名ID,先释放旧实例防止内存泄漏
|
|
3294
|
+
if (CHART_INSTANCES[id]) {
|
|
3295
|
+
try {
|
|
3296
|
+
console.warn("[TaroViz] Chart instance '".concat(id, "' already exists, replacing and disposing old instance"));
|
|
3297
|
+
CHART_INSTANCES[id].dispose();
|
|
3298
|
+
} catch (e) {
|
|
3299
|
+
console.warn("Failed to dispose old chart instance: ".concat(id), e);
|
|
3300
|
+
}
|
|
3301
|
+
}
|
|
3325
3302
|
CHART_INSTANCES[id] = instance;
|
|
3326
3303
|
}
|
|
3327
3304
|
/**
|
|
@@ -8810,35 +8787,47 @@ function useDataPolling(fetchFn, options) {
|
|
|
8810
8787
|
var _h = (0,external_react_.useState)(null),
|
|
8811
8788
|
error = _h[0],
|
|
8812
8789
|
setError = _h[1];
|
|
8813
|
-
|
|
8814
|
-
|
|
8815
|
-
|
|
8790
|
+
// 用于取消进行中的请求
|
|
8791
|
+
var abortRef = (0,external_react_.useRef)({
|
|
8792
|
+
cancelled: false
|
|
8793
|
+
});
|
|
8816
8794
|
var fetchData = (0,external_react_.useCallback)(function () {
|
|
8817
8795
|
return hooks_awaiter(_this, void 0, void 0, function () {
|
|
8818
|
-
var retries, result, e_1;
|
|
8796
|
+
var currentAbort, retries, result, e_1;
|
|
8819
8797
|
return hooks_generator(this, function (_a) {
|
|
8820
8798
|
switch (_a.label) {
|
|
8821
8799
|
case 0:
|
|
8800
|
+
// 取消之前的请求
|
|
8801
|
+
abortRef.current.cancelled = true;
|
|
8802
|
+
// 创建新的取消标记
|
|
8803
|
+
abortRef.current = {
|
|
8804
|
+
cancelled: false
|
|
8805
|
+
};
|
|
8806
|
+
currentAbort = abortRef.current;
|
|
8822
8807
|
retries = retryCount;
|
|
8823
8808
|
setLoading(true);
|
|
8824
8809
|
setError(null);
|
|
8825
8810
|
_a.label = 1;
|
|
8826
8811
|
case 1:
|
|
8827
|
-
if (!(retries >= 0)) return [3 /*break*/, 9];
|
|
8812
|
+
if (!(retries >= 0 && !currentAbort.cancelled)) return [3 /*break*/, 9];
|
|
8828
8813
|
_a.label = 2;
|
|
8829
8814
|
case 2:
|
|
8830
8815
|
_a.trys.push([2, 4,, 8]);
|
|
8831
8816
|
return [4 /*yield*/, fetchFn()];
|
|
8832
8817
|
case 3:
|
|
8833
8818
|
result = _a.sent();
|
|
8834
|
-
|
|
8835
|
-
|
|
8819
|
+
if (!currentAbort.cancelled) {
|
|
8820
|
+
setData(result);
|
|
8821
|
+
setLoading(false);
|
|
8822
|
+
}
|
|
8836
8823
|
return [2 /*return*/];
|
|
8837
8824
|
case 4:
|
|
8838
8825
|
e_1 = _a.sent();
|
|
8839
8826
|
retries--;
|
|
8840
|
-
if (!(retries < 0)) return [3 /*break*/, 5];
|
|
8841
|
-
|
|
8827
|
+
if (!(retries < 0 || currentAbort.cancelled)) return [3 /*break*/, 5];
|
|
8828
|
+
if (!currentAbort.cancelled) {
|
|
8829
|
+
setError(e_1);
|
|
8830
|
+
}
|
|
8842
8831
|
setLoading(false);
|
|
8843
8832
|
return [3 /*break*/, 7];
|
|
8844
8833
|
case 5:
|
|
@@ -8865,14 +8854,15 @@ function useDataPolling(fetchFn, options) {
|
|
|
8865
8854
|
if (interval > 0) {
|
|
8866
8855
|
var timer_1 = setInterval(fetchData, interval);
|
|
8867
8856
|
return function () {
|
|
8868
|
-
|
|
8857
|
+
clearInterval(timer_1);
|
|
8858
|
+
abortRef.current.cancelled = true;
|
|
8869
8859
|
};
|
|
8870
8860
|
}
|
|
8871
|
-
|
|
8861
|
+
return function () {
|
|
8862
|
+
abortRef.current.cancelled = true;
|
|
8863
|
+
};
|
|
8864
|
+
}, [interval, autoStart, fetchData]);
|
|
8872
8865
|
var refresh = (0,external_react_.useCallback)(function () {
|
|
8873
|
-
setRefreshIndex(function (prev) {
|
|
8874
|
-
return prev + 1;
|
|
8875
|
-
});
|
|
8876
8866
|
fetchData();
|
|
8877
8867
|
}, [fetchData]);
|
|
8878
8868
|
return {
|