@visactor/vchart 2.1.0-alpha.7 → 2.1.0-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +59 -6
  3. package/build/index.js +59 -6
  4. package/build/index.min.js +1 -1
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/component/index.js +1 -1
  7. package/cjs/component/util.js +1 -1
  8. package/cjs/constant/animate.js +1 -2
  9. package/cjs/constant/attribute.js +2 -1
  10. package/cjs/constant/sunburst.js +1 -2
  11. package/cjs/constant/waterfall.js +2 -1
  12. package/cjs/core/expression-function.js +1 -1
  13. package/cjs/core/factory.js +1 -1
  14. package/cjs/core/index.js +1 -1
  15. package/cjs/core/instance-manager.js +1 -1
  16. package/cjs/core/interface.js +1 -1
  17. package/cjs/core/vchart.js +1 -5
  18. package/cjs/core/vchart.js.map +1 -1
  19. package/cjs/data/data-view-utils.js +1 -1
  20. package/cjs/data/initialize.js +1 -1
  21. package/cjs/data/register.js +1 -1
  22. package/cjs/event/event.d.ts +4 -0
  23. package/cjs/event/event.js +26 -7
  24. package/cjs/event/event.js.map +1 -1
  25. package/cjs/scale/color-ordinal-scale.d.ts +1 -0
  26. package/cjs/scale/color-ordinal-scale.js +3 -0
  27. package/cjs/scale/color-ordinal-scale.js.map +1 -1
  28. package/cjs/scale/global-scale.js +9 -2
  29. package/cjs/scale/global-scale.js.map +1 -1
  30. package/esm/component/index.js +1 -1
  31. package/esm/component/util.js +1 -1
  32. package/esm/constant/animate.js +1 -2
  33. package/esm/constant/attribute.js +2 -1
  34. package/esm/constant/sunburst.js +1 -2
  35. package/esm/constant/waterfall.js +2 -1
  36. package/esm/core/expression-function.js +1 -1
  37. package/esm/core/factory.js +1 -1
  38. package/esm/core/index.js +1 -1
  39. package/esm/core/instance-manager.js +1 -1
  40. package/esm/core/interface.js +1 -1
  41. package/esm/core/vchart.js +1 -5
  42. package/esm/core/vchart.js.map +1 -1
  43. package/esm/data/data-view-utils.js +1 -1
  44. package/esm/data/initialize.js +1 -1
  45. package/esm/data/register.js +1 -1
  46. package/esm/event/event.d.ts +4 -0
  47. package/esm/event/event.js +26 -7
  48. package/esm/event/event.js.map +1 -1
  49. package/esm/scale/color-ordinal-scale.d.ts +1 -0
  50. package/esm/scale/color-ordinal-scale.js +3 -0
  51. package/esm/scale/color-ordinal-scale.js.map +1 -1
  52. package/esm/scale/global-scale.js +9 -1
  53. package/esm/scale/global-scale.js.map +1 -1
  54. package/package.json +5 -5
package/build/index.es.js CHANGED
@@ -57796,6 +57796,10 @@ function getColorSchemeBySeries(colorScheme, seriesSpec) {
57796
57796
  }
57797
57797
 
57798
57798
  class ColorOrdinalScale extends OrdinalScale {
57799
+ setSpecified(value) {
57800
+ this._specified = value ? Object.assign({}, value) : {};
57801
+ return this;
57802
+ }
57799
57803
  range(value) {
57800
57804
  if (!value) {
57801
57805
  return super.range();
@@ -59384,6 +59388,7 @@ let Event$1 = class Event {
59384
59388
  }
59385
59389
  constructor(eventDispatcher, mode) {
59386
59390
  this._composedEventMap = new Map();
59391
+ this._eventHandlerMap = new Map();
59387
59392
  this._eventDispatcher = eventDispatcher;
59388
59393
  this._mode = mode;
59389
59394
  }
@@ -59405,11 +59410,12 @@ let Event$1 = class Event {
59405
59410
  }
59406
59411
  else {
59407
59412
  this._eventDispatcher.register(eType, handler);
59413
+ this._addEventHandler(eType, handler);
59408
59414
  }
59409
59415
  return this;
59410
59416
  }
59411
59417
  off(eType, query, cb) {
59412
- var _a, _b;
59418
+ var _a, _b, _c;
59413
59419
  const callback = (cb !== null && cb !== void 0 ? cb : query);
59414
59420
  const ComposedEventCtor = Factory.getComposedEvent(eType);
59415
59421
  if (!!ComposedEventCtor) {
@@ -59428,7 +59434,8 @@ let Event$1 = class Event {
59428
59434
  }
59429
59435
  else {
59430
59436
  if (callback) {
59431
- const handler = {
59437
+ const storedHandler = this._getEventHandler(eType, callback);
59438
+ const handler = (_c = storedHandler) !== null && _c !== void 0 ? _c : {
59432
59439
  callback,
59433
59440
  query: null,
59434
59441
  filter: {
@@ -59442,9 +59449,11 @@ let Event$1 = class Event {
59442
59449
  }
59443
59450
  };
59444
59451
  this._eventDispatcher.unregister(eType, handler);
59452
+ this._removeEventHandler(eType, callback);
59445
59453
  }
59446
59454
  else {
59447
59455
  this._eventDispatcher.unregister(eType);
59456
+ this._eventHandlerMap.delete(eType);
59448
59457
  }
59449
59458
  }
59450
59459
  return this;
@@ -59462,9 +59471,40 @@ let Event$1 = class Event {
59462
59471
  return this;
59463
59472
  }
59464
59473
  release() {
59465
- this._eventDispatcher.clear();
59474
+ this._eventHandlerMap.forEach((handlers, eventType) => {
59475
+ handlers.forEach(handler => {
59476
+ this._eventDispatcher.unregister(eventType, handler);
59477
+ });
59478
+ });
59479
+ this._eventHandlerMap.clear();
59480
+ this._composedEventMap.forEach(entry => {
59481
+ entry.event.unregister();
59482
+ });
59466
59483
  this._composedEventMap.clear();
59467
59484
  }
59485
+ _addEventHandler(eventType, handler) {
59486
+ if (!handler.callback) {
59487
+ return;
59488
+ }
59489
+ if (!this._eventHandlerMap.has(eventType)) {
59490
+ this._eventHandlerMap.set(eventType, new Map());
59491
+ }
59492
+ this._eventHandlerMap.get(eventType).set(handler.callback, handler);
59493
+ }
59494
+ _getEventHandler(eventType, callback) {
59495
+ var _a;
59496
+ return (_a = this._eventHandlerMap.get(eventType)) === null || _a === void 0 ? void 0 : _a.get(callback);
59497
+ }
59498
+ _removeEventHandler(eventType, callback) {
59499
+ const handlerMap = this._eventHandlerMap.get(eventType);
59500
+ if (!handlerMap) {
59501
+ return;
59502
+ }
59503
+ handlerMap.delete(callback);
59504
+ if (!handlerMap.size) {
59505
+ this._eventHandlerMap.delete(eventType);
59506
+ }
59507
+ }
59468
59508
  };
59469
59509
 
59470
59510
  var HOOK_EVENT;
@@ -66783,7 +66823,6 @@ class VChart {
66783
66823
  }
66784
66824
  if (updateResult.reMake) {
66785
66825
  (_c = this._compiler) === null || _c === void 0 ? void 0 : _c.releaseGrammar(true);
66786
- this._userEvents.forEach(e => { var _a; return (_a = this._event) === null || _a === void 0 ? void 0 : _a.on(e.eType, e.query, e.handler); });
66787
66826
  }
66788
66827
  else if (updateResult.reCompile) {
66789
66828
  (_d = this._compiler) === null || _d === void 0 ? void 0 : _d.clear({ chart: this._chart, vChart: this });
@@ -75567,8 +75606,22 @@ class GlobalScale {
75567
75606
  return result;
75568
75607
  }
75569
75608
  if (!isEqual(lastSpec.specified, s.specified)) {
75570
- result.reMake = true;
75571
- return result;
75609
+ if (s.id !== 'color') {
75610
+ result.reMake = true;
75611
+ return result;
75612
+ }
75613
+ const colorScale = scale;
75614
+ if (colorScale.setSpecified) {
75615
+ colorScale.setSpecified(s.specified);
75616
+ }
75617
+ else if (s.specified && colorScale.specified) {
75618
+ colorScale.specified(s.specified);
75619
+ }
75620
+ else {
75621
+ result.reMake = true;
75622
+ return result;
75623
+ }
75624
+ result.reRender = true;
75572
75625
  }
75573
75626
  if (s.range && !isEqual(s.range, scale.range())) {
75574
75627
  scale.range(s.range);
package/build/index.js CHANGED
@@ -57802,6 +57802,10 @@
57802
57802
  }
57803
57803
 
57804
57804
  class ColorOrdinalScale extends OrdinalScale {
57805
+ setSpecified(value) {
57806
+ this._specified = value ? Object.assign({}, value) : {};
57807
+ return this;
57808
+ }
57805
57809
  range(value) {
57806
57810
  if (!value) {
57807
57811
  return super.range();
@@ -59390,6 +59394,7 @@
59390
59394
  }
59391
59395
  constructor(eventDispatcher, mode) {
59392
59396
  this._composedEventMap = new Map();
59397
+ this._eventHandlerMap = new Map();
59393
59398
  this._eventDispatcher = eventDispatcher;
59394
59399
  this._mode = mode;
59395
59400
  }
@@ -59411,11 +59416,12 @@
59411
59416
  }
59412
59417
  else {
59413
59418
  this._eventDispatcher.register(eType, handler);
59419
+ this._addEventHandler(eType, handler);
59414
59420
  }
59415
59421
  return this;
59416
59422
  }
59417
59423
  off(eType, query, cb) {
59418
- var _a, _b;
59424
+ var _a, _b, _c;
59419
59425
  const callback = (cb !== null && cb !== void 0 ? cb : query);
59420
59426
  const ComposedEventCtor = Factory.getComposedEvent(eType);
59421
59427
  if (!!ComposedEventCtor) {
@@ -59434,7 +59440,8 @@
59434
59440
  }
59435
59441
  else {
59436
59442
  if (callback) {
59437
- const handler = {
59443
+ const storedHandler = this._getEventHandler(eType, callback);
59444
+ const handler = (_c = storedHandler) !== null && _c !== void 0 ? _c : {
59438
59445
  callback,
59439
59446
  query: null,
59440
59447
  filter: {
@@ -59448,9 +59455,11 @@
59448
59455
  }
59449
59456
  };
59450
59457
  this._eventDispatcher.unregister(eType, handler);
59458
+ this._removeEventHandler(eType, callback);
59451
59459
  }
59452
59460
  else {
59453
59461
  this._eventDispatcher.unregister(eType);
59462
+ this._eventHandlerMap.delete(eType);
59454
59463
  }
59455
59464
  }
59456
59465
  return this;
@@ -59468,9 +59477,40 @@
59468
59477
  return this;
59469
59478
  }
59470
59479
  release() {
59471
- this._eventDispatcher.clear();
59480
+ this._eventHandlerMap.forEach((handlers, eventType) => {
59481
+ handlers.forEach(handler => {
59482
+ this._eventDispatcher.unregister(eventType, handler);
59483
+ });
59484
+ });
59485
+ this._eventHandlerMap.clear();
59486
+ this._composedEventMap.forEach(entry => {
59487
+ entry.event.unregister();
59488
+ });
59472
59489
  this._composedEventMap.clear();
59473
59490
  }
59491
+ _addEventHandler(eventType, handler) {
59492
+ if (!handler.callback) {
59493
+ return;
59494
+ }
59495
+ if (!this._eventHandlerMap.has(eventType)) {
59496
+ this._eventHandlerMap.set(eventType, new Map());
59497
+ }
59498
+ this._eventHandlerMap.get(eventType).set(handler.callback, handler);
59499
+ }
59500
+ _getEventHandler(eventType, callback) {
59501
+ var _a;
59502
+ return (_a = this._eventHandlerMap.get(eventType)) === null || _a === void 0 ? void 0 : _a.get(callback);
59503
+ }
59504
+ _removeEventHandler(eventType, callback) {
59505
+ const handlerMap = this._eventHandlerMap.get(eventType);
59506
+ if (!handlerMap) {
59507
+ return;
59508
+ }
59509
+ handlerMap.delete(callback);
59510
+ if (!handlerMap.size) {
59511
+ this._eventHandlerMap.delete(eventType);
59512
+ }
59513
+ }
59474
59514
  };
59475
59515
 
59476
59516
  var HOOK_EVENT;
@@ -66789,7 +66829,6 @@
66789
66829
  }
66790
66830
  if (updateResult.reMake) {
66791
66831
  (_c = this._compiler) === null || _c === void 0 ? void 0 : _c.releaseGrammar(true);
66792
- this._userEvents.forEach(e => { var _a; return (_a = this._event) === null || _a === void 0 ? void 0 : _a.on(e.eType, e.query, e.handler); });
66793
66832
  }
66794
66833
  else if (updateResult.reCompile) {
66795
66834
  (_d = this._compiler) === null || _d === void 0 ? void 0 : _d.clear({ chart: this._chart, vChart: this });
@@ -75573,8 +75612,22 @@
75573
75612
  return result;
75574
75613
  }
75575
75614
  if (!isEqual(lastSpec.specified, s.specified)) {
75576
- result.reMake = true;
75577
- return result;
75615
+ if (s.id !== 'color') {
75616
+ result.reMake = true;
75617
+ return result;
75618
+ }
75619
+ const colorScale = scale;
75620
+ if (colorScale.setSpecified) {
75621
+ colorScale.setSpecified(s.specified);
75622
+ }
75623
+ else if (s.specified && colorScale.specified) {
75624
+ colorScale.specified(s.specified);
75625
+ }
75626
+ else {
75627
+ result.reMake = true;
75628
+ return result;
75629
+ }
75630
+ result.reRender = true;
75578
75631
  }
75579
75632
  if (s.range && !isEqual(s.range, scale.range())) {
75580
75633
  scale.range(s.range);