@wcardinal/wcardinal-ui 0.372.0 → 0.373.0

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 (82) hide show
  1. package/dist/types/wcardinal/ui/shape/e-shape-connector-container-impl.d.ts +1 -1
  2. package/dist/types/wcardinal/ui/shape/e-shape-connector-container.d.ts +2 -1
  3. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge-container-impl.d.ts +2 -1
  4. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge-container.d.ts +2 -1
  5. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge-impl.d.ts +1 -1
  6. package/dist/types/wcardinal/ui/shape/e-shape-connector-edge.d.ts +1 -1
  7. package/dist/types/wcardinal/ui/shape/e-shape-deleter.d.ts +2 -0
  8. package/dist/types/wcardinal/ui/shape/e-shape.d.ts +6 -8
  9. package/dist/types/wcardinal/ui/shape/variant/e-shape-base.d.ts +10 -13
  10. package/dist/types/wcardinal/ui/shape/variant/e-shape-connector-line.d.ts +6 -5
  11. package/dist/types/wcardinal/ui/shape/variant/e-shape-group-size-parent.d.ts +4 -3
  12. package/dist/types/wcardinal/ui/shape/variant/e-shape-lock-part.d.ts +8 -0
  13. package/dist/types/wcardinal/ui/shape/variant/e-shape-lock.d.ts +9 -0
  14. package/dist/types/wcardinal/ui/shape/variant/index.d.ts +2 -0
  15. package/dist/wcardinal/ui/d-chart-axis-base-bar.js +3 -2
  16. package/dist/wcardinal/ui/d-chart-axis-base-bar.js.map +1 -1
  17. package/dist/wcardinal/ui/d-chart-axis-base-tick-container.js +7 -6
  18. package/dist/wcardinal/ui/d-chart-axis-base-tick-container.js.map +1 -1
  19. package/dist/wcardinal/ui/d-chart-axis-guide-simple-shape-impl.js +7 -6
  20. package/dist/wcardinal/ui/d-chart-axis-guide-simple-shape-impl.js.map +1 -1
  21. package/dist/wcardinal/ui/d-chart-series-line-of-any.js +3 -2
  22. package/dist/wcardinal/ui/d-chart-series-line-of-any.js.map +1 -1
  23. package/dist/wcardinal/ui/d-chart-series-line.js +3 -2
  24. package/dist/wcardinal/ui/d-chart-series-line.js.map +1 -1
  25. package/dist/wcardinal/ui/d-chart-series-linear.js +3 -2
  26. package/dist/wcardinal/ui/d-chart-series-linear.js.map +1 -1
  27. package/dist/wcardinal/ui/d-diagram-canvas-editor-snap.js +5 -4
  28. package/dist/wcardinal/ui/d-diagram-canvas-editor-snap.js.map +1 -1
  29. package/dist/wcardinal/ui/shape/e-shape-capability.js +1 -1
  30. package/dist/wcardinal/ui/shape/e-shape-capability.js.map +1 -1
  31. package/dist/wcardinal/ui/shape/e-shape-connector-container-impl.js +4 -2
  32. package/dist/wcardinal/ui/shape/e-shape-connector-container-impl.js.map +1 -1
  33. package/dist/wcardinal/ui/shape/e-shape-connector-container.js.map +1 -1
  34. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container-impl.js +3 -3
  35. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container-impl.js.map +1 -1
  36. package/dist/wcardinal/ui/shape/e-shape-connector-edge-container.js.map +1 -1
  37. package/dist/wcardinal/ui/shape/e-shape-connector-edge-impl.js +2 -2
  38. package/dist/wcardinal/ui/shape/e-shape-connector-edge-impl.js.map +1 -1
  39. package/dist/wcardinal/ui/shape/e-shape-connector-edge.js.map +1 -1
  40. package/dist/wcardinal/ui/shape/e-shape-deleter.js +18 -2
  41. package/dist/wcardinal/ui/shape/e-shape-deleter.js.map +1 -1
  42. package/dist/wcardinal/ui/shape/e-shape-runtime-impl.js +5 -4
  43. package/dist/wcardinal/ui/shape/e-shape-runtime-impl.js.map +1 -1
  44. package/dist/wcardinal/ui/shape/e-shape-transforms.js +5 -4
  45. package/dist/wcardinal/ui/shape/e-shape-transforms.js.map +1 -1
  46. package/dist/wcardinal/ui/shape/e-shape.js.map +1 -1
  47. package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js +3 -2
  48. package/dist/wcardinal/ui/shape/variant/deserialize-connector-line.js.map +1 -1
  49. package/dist/wcardinal/ui/shape/variant/e-shape-base.js +59 -73
  50. package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
  51. package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js +18 -18
  52. package/dist/wcardinal/ui/shape/variant/e-shape-connector-line.js.map +1 -1
  53. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-editor.js +33 -26
  54. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-editor.js.map +1 -1
  55. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-layout.js +3 -2
  56. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-layout.js.map +1 -1
  57. package/dist/wcardinal/ui/shape/variant/e-shape-group-size-parent.js.map +1 -1
  58. package/dist/wcardinal/ui/shape/variant/e-shape-group.js +2 -0
  59. package/dist/wcardinal/ui/shape/variant/e-shape-group.js.map +1 -1
  60. package/dist/wcardinal/ui/shape/variant/e-shape-lock-part.js +8 -0
  61. package/dist/wcardinal/ui/shape/variant/e-shape-lock-part.js.map +1 -0
  62. package/dist/wcardinal/ui/shape/variant/e-shape-lock.js +31 -0
  63. package/dist/wcardinal/ui/shape/variant/e-shape-lock.js.map +1 -0
  64. package/dist/wcardinal/ui/shape/variant/index.js +2 -0
  65. package/dist/wcardinal/ui/shape/variant/index.js.map +1 -1
  66. package/dist/wcardinal/ui/shape/variant/to-resized.js +3 -2
  67. package/dist/wcardinal/ui/shape/variant/to-resized.js.map +1 -1
  68. package/dist/wcardinal/ui/theme/dark/d-theme-dark-atlas.js +1 -1
  69. package/dist/wcardinal/ui/theme/dark/d-theme-dark-atlas.js.map +1 -1
  70. package/dist/wcardinal/ui/theme/white/d-theme-white-atlas.js +1 -1
  71. package/dist/wcardinal/ui/theme/white/d-theme-white-atlas.js.map +1 -1
  72. package/dist/wcardinal-ui-theme-dark.js +2 -2
  73. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  74. package/dist/wcardinal-ui-theme-dark.min.js.map +1 -1
  75. package/dist/wcardinal-ui-theme-white.js +2 -2
  76. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  77. package/dist/wcardinal-ui-theme-white.min.js.map +1 -1
  78. package/dist/wcardinal-ui.cjs.js +215 -168
  79. package/dist/wcardinal-ui.js +213 -166
  80. package/dist/wcardinal-ui.min.js +2 -2
  81. package/dist/wcardinal-ui.min.js.map +1 -1
  82. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.372.0
2
+ Winter Cardinal UI v0.373.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -2563,9 +2563,11 @@ var EShapeConnectorContainerImpl = /** @class */ (function () {
2563
2563
  });
2564
2564
  return this;
2565
2565
  };
2566
- EShapeConnectorContainerImpl.prototype.detach = function () {
2566
+ EShapeConnectorContainerImpl.prototype.detach = function (exceptions) {
2567
2567
  this._edges.forEach(function (edge) {
2568
- edge.set(null);
2568
+ if (exceptions == null || !exceptions.has(edge.parent)) {
2569
+ edge.set(null);
2570
+ }
2569
2571
  });
2570
2572
  return this;
2571
2573
  };
@@ -4475,7 +4477,7 @@ var PRIMITIVE = ID | COORDINATE | SHAPE | TEXT$2 | TEXTURE | DATA | ACTION | CUR
4475
4477
  var GROUP = PRIMITIVE | UNGROUPING;
4476
4478
  var EMBEDDED = ID | COORDINATE | REPLACING | GROUPING | TEXT$2 | DATA | ACTION | LAYER | DATA_MAPPING;
4477
4479
  var EMBEDDED_ACCEPTOR_EDGE = ID | COORDINATE | REPLACING | FILL$1 | STROKE$1 | TEXT$2 | TEXTURE | DATA | ACTION | CURSOR$1 | LAYER;
4478
- var CONNECTOR = ID | REPLACING | FILL$1 | STROKE$1 | LINE | LINE_TAIL | LINE_HEAD | TEXT$2 | TEXTURE | DATA | ACTION | CURSOR$1 | LAYER | CHILDREN$1;
4480
+ var CONNECTOR = ID | SHAPE | TEXT$2 | TEXTURE | DATA | ACTION | CURSOR$1 | LAYER | CHILDREN$1;
4479
4481
  var ALL = PRIMITIVE | STROKE_SIDE | BORDER_RADIUS | DATA_MAPPING | UNGROUPING;
4480
4482
  var EShapeCapability = {
4481
4483
  NONE: NONE,
@@ -4641,6 +4643,44 @@ var EShapeCapabilityContainerImpl = /** @class */ (function () {
4641
4643
  return EShapeCapabilityContainerImpl;
4642
4644
  }());
4643
4645
 
4646
+ var EShapeLock = /** @class */ (function () {
4647
+ function EShapeLock() {
4648
+ this._count = 0;
4649
+ this._flag = 0;
4650
+ }
4651
+ EShapeLock.prototype.lock = function () {
4652
+ this._count += 1;
4653
+ if (this._count === 1) {
4654
+ this._flag = 0;
4655
+ return true;
4656
+ }
4657
+ return false;
4658
+ };
4659
+ EShapeLock.prototype.unlock = function () {
4660
+ this._count -= 1;
4661
+ return this._count <= 0 && this._flag !== 0;
4662
+ };
4663
+ EShapeLock.prototype.isLocked = function (high) {
4664
+ if (0 < this._count) {
4665
+ this._flag |= high ? 3 : 1;
4666
+ return true;
4667
+ }
4668
+ return false;
4669
+ };
4670
+ EShapeLock.prototype.isHigh = function () {
4671
+ return 1 < this._flag;
4672
+ };
4673
+ return EShapeLock;
4674
+ }());
4675
+
4676
+ var EShapeLockPart = {
4677
+ TRANSFORM: 1,
4678
+ TRANSFORM_PARENT: 2,
4679
+ UPLOADED: 4,
4680
+ TRANSFORM_AND_UPLOADED: 7,
4681
+ CONNECTOR: 8
4682
+ };
4683
+
4644
4684
  /*
4645
4685
  * Copyright (C) 2019 Toshiba Corporation
4646
4686
  * SPDX-License-Identifier: Apache-2.0
@@ -4653,13 +4693,11 @@ var EShapeBase = /** @class */ (function (_super) {
4653
4693
  _this.uuid = 0;
4654
4694
  _this.type = type;
4655
4695
  _this.transform = _this.newTransform();
4656
- _this._onTransformChangeLock = 0;
4657
- _this._isOnTransformChanged = false;
4658
4696
  _this.action = new EShapeAction();
4659
4697
  _this._visible = true;
4660
- _this._uploadedUpdateLock = 0;
4661
- _this._isUploadedUpdated = false;
4662
- _this._isUploadedUpdatedRecursively = false;
4698
+ _this._lockTransform = new EShapeLock();
4699
+ _this._lockTransformParent = new EShapeLock();
4700
+ _this._lockUploaded = new EShapeLock();
4663
4701
  _this._boundsTransformId = NaN;
4664
4702
  _this._boundsInternalTransformId = NaN;
4665
4703
  _this._boundsLocalTransformId = NaN;
@@ -4700,6 +4738,9 @@ var EShapeBase = /** @class */ (function (_super) {
4700
4738
  this.onParentTransformChange();
4701
4739
  };
4702
4740
  EShapeBase.prototype.onParentTransformChange = function () {
4741
+ if (this._lockTransformParent.isLocked()) {
4742
+ return;
4743
+ }
4703
4744
  this.updateUploaded();
4704
4745
  var connector = this._connector;
4705
4746
  if (connector != null) {
@@ -4711,79 +4752,62 @@ var EShapeBase = /** @class */ (function (_super) {
4711
4752
  }
4712
4753
  };
4713
4754
  EShapeBase.prototype.onTransformChange_ = function () {
4714
- if (this._onTransformChangeLock === 0) {
4715
- var parent_1 = this.parent;
4716
- if (parent_1 != null) {
4717
- parent_1.onChildTransformChange();
4718
- }
4755
+ if (this._lockTransform.isLocked()) {
4756
+ return;
4719
4757
  }
4720
- else {
4721
- this._isOnTransformChanged = true;
4758
+ var parent = this.parent;
4759
+ if (parent != null) {
4760
+ parent.onChildTransformChange();
4722
4761
  }
4723
4762
  };
4724
- EShapeBase.prototype.disallowOnTransformChange = function () {
4725
- this._onTransformChangeLock += 1;
4726
- if (this._onTransformChangeLock === 1) {
4727
- this._isOnTransformChanged = false;
4763
+ EShapeBase.prototype.lock = function (part) {
4764
+ if (part & EShapeLockPart.TRANSFORM) {
4765
+ this._lockTransform.lock();
4728
4766
  }
4767
+ if (part & EShapeLockPart.TRANSFORM_PARENT) {
4768
+ this._lockTransformParent.lock();
4769
+ }
4770
+ if (part & EShapeLockPart.UPLOADED) {
4771
+ this._lockUploaded.lock();
4772
+ }
4773
+ return this;
4729
4774
  };
4730
- EShapeBase.prototype.allowOnTransformChange = function (invokeOnTransformChange) {
4731
- this._onTransformChangeLock -= 1;
4732
- if (this._onTransformChangeLock === 0) {
4733
- if (this._isOnTransformChanged) {
4734
- this._isOnTransformChanged = false;
4735
- if (invokeOnTransformChange) {
4736
- this.onTransformChange();
4737
- }
4775
+ EShapeBase.prototype.unlock = function (part, invoke) {
4776
+ if (part & EShapeLockPart.UPLOADED) {
4777
+ var lockUploaded = this._lockUploaded;
4778
+ if (lockUploaded.unlock() && invoke) {
4779
+ this.updateUploaded(lockUploaded.isHigh());
4738
4780
  }
4739
4781
  }
4782
+ if (part & EShapeLockPart.TRANSFORM_PARENT) {
4783
+ if (this._lockTransformParent.unlock() && invoke) {
4784
+ this.onParentTransformChange();
4785
+ }
4786
+ }
4787
+ if (part & EShapeLockPart.TRANSFORM) {
4788
+ if (this._lockTransform.unlock() && invoke) {
4789
+ this.onTransformChange();
4790
+ }
4791
+ }
4792
+ return this;
4740
4793
  };
4741
4794
  EShapeBase.prototype.onChildTransformChange = function () {
4742
4795
  //
4743
4796
  };
4744
- EShapeBase.prototype.disallowUploadedUpdate = function () {
4745
- this._uploadedUpdateLock += 1;
4746
- if (this._uploadedUpdateLock === 1) {
4747
- this._isUploadedUpdated = false;
4748
- this._isUploadedUpdatedRecursively = false;
4797
+ EShapeBase.prototype.updateUploaded = function (recursively) {
4798
+ if (this._lockUploaded.isLocked()) {
4799
+ return;
4749
4800
  }
4750
- };
4751
- EShapeBase.prototype.allowUploadedUpdate = function () {
4752
- this._uploadedUpdateLock -= 1;
4753
- if (this._uploadedUpdateLock === 0) {
4754
- if (this._isUploadedUpdatedRecursively) {
4755
- this._isUploadedUpdatedRecursively = false;
4756
- this._isUploadedUpdated = false;
4757
- this.updateUploadedRecursively();
4758
- }
4759
- else if (this._isUploadedUpdated) {
4760
- this._isUploadedUpdated = false;
4761
- this.updateUploaded();
4762
- }
4801
+ var uploaded = this.uploaded;
4802
+ if (uploaded != null) {
4803
+ uploaded.update(this);
4763
4804
  }
4764
- };
4765
- EShapeBase.prototype.updateUploadedRecursively = function () {
4766
- if (this._uploadedUpdateLock === 0) {
4767
- this.updateUploaded();
4805
+ if (recursively === true) {
4768
4806
  var children = this.children;
4769
4807
  for (var i = 0, imax = children.length; i < imax; ++i) {
4770
- children[i].updateUploadedRecursively();
4771
- }
4772
- }
4773
- else {
4774
- this._isUploadedUpdatedRecursively = true;
4775
- }
4776
- };
4777
- EShapeBase.prototype.updateUploaded = function () {
4778
- if (this._uploadedUpdateLock === 0) {
4779
- var uploaded = this.uploaded;
4780
- if (uploaded != null) {
4781
- uploaded.update(this);
4808
+ children[i].updateUploaded(true);
4782
4809
  }
4783
4810
  }
4784
- else {
4785
- this._isUploadedUpdated = true;
4786
- }
4787
4811
  };
4788
4812
  Object.defineProperty(EShapeBase.prototype, "image", {
4789
4813
  get: function () {
@@ -4828,9 +4852,9 @@ var EShapeBase = /** @class */ (function (_super) {
4828
4852
  Object.defineProperty(EShapeBase.prototype, "visible", {
4829
4853
  get: function () {
4830
4854
  if (this._visible) {
4831
- var parent_2 = this.parent;
4832
- if (parent_2 instanceof EShapeBase) {
4833
- return parent_2.visible;
4855
+ var parent_1 = this.parent;
4856
+ if (parent_1 instanceof EShapeBase) {
4857
+ return parent_1.visible;
4834
4858
  }
4835
4859
  return true;
4836
4860
  }
@@ -4839,7 +4863,7 @@ var EShapeBase = /** @class */ (function (_super) {
4839
4863
  set: function (visible) {
4840
4864
  if (this._visible !== visible) {
4841
4865
  this._visible = visible;
4842
- this.updateUploadedRecursively();
4866
+ this.updateUploaded(true);
4843
4867
  }
4844
4868
  },
4845
4869
  enumerable: false,
@@ -4848,9 +4872,9 @@ var EShapeBase = /** @class */ (function (_super) {
4848
4872
  Object.defineProperty(EShapeBase.prototype, "worldVisible", {
4849
4873
  get: function () {
4850
4874
  if (this._visible) {
4851
- var parent_3 = this.parent;
4852
- if (parent_3) {
4853
- return parent_3.worldVisible;
4875
+ var parent_2 = this.parent;
4876
+ if (parent_2) {
4877
+ return parent_2.worldVisible;
4854
4878
  }
4855
4879
  return true;
4856
4880
  }
@@ -4894,7 +4918,7 @@ var EShapeBase = /** @class */ (function (_super) {
4894
4918
  children[i].onAttach();
4895
4919
  }
4896
4920
  };
4897
- EShapeBase.prototype.detach = function () {
4921
+ EShapeBase.prototype.detach = function (exceptions) {
4898
4922
  var parent = this.parent;
4899
4923
  if (parent) {
4900
4924
  this.parent = null;
@@ -4904,20 +4928,20 @@ var EShapeBase = /** @class */ (function (_super) {
4904
4928
  children.splice(index, 1);
4905
4929
  parent.onChildTransformChange();
4906
4930
  parent.toDirty();
4907
- this.onDetach();
4931
+ this.onDetach(exceptions);
4908
4932
  }
4909
4933
  }
4910
4934
  return this;
4911
4935
  };
4912
- EShapeBase.prototype.onDetach = function () {
4936
+ EShapeBase.prototype.onDetach = function (exceptions) {
4913
4937
  this.uploaded = undefined;
4914
4938
  var connector = this._connector;
4915
4939
  if (connector) {
4916
- connector.detach();
4940
+ connector.detach(exceptions);
4917
4941
  }
4918
4942
  var children = this.children;
4919
4943
  for (var i = 0, imax = children.length; i < imax; ++i) {
4920
- children[i].onDetach();
4944
+ children[i].onDetach(exceptions);
4921
4945
  }
4922
4946
  };
4923
4947
  // Transform
@@ -16932,10 +16956,10 @@ var EShapeTransforms = /** @class */ (function () {
16932
16956
  // Size
16933
16957
  editor.size.copyFrom(shape.size);
16934
16958
  //
16935
- shape.disallowOnTransformChange();
16959
+ shape.lock(EShapeLockPart.TRANSFORM);
16936
16960
  };
16937
16961
  EShapeTransforms.finalize = function (shape) {
16938
- shape.allowOnTransformChange(true);
16962
+ shape.unlock(EShapeLockPart.TRANSFORM, true);
16939
16963
  };
16940
16964
  EShapeTransforms.apply = function (shape, transform, capability) {
16941
16965
  var editor = shape.editor;
@@ -16949,7 +16973,7 @@ var EShapeTransforms = /** @class */ (function () {
16949
16973
  }
16950
16974
  };
16951
16975
  EShapeTransforms.applyLocal = function (shape, localTransform, capability, size) {
16952
- shape.disallowUploadedUpdate();
16976
+ shape.lock(EShapeLockPart.UPLOADED);
16953
16977
  // Reconstruct the position, the rotation and the size
16954
16978
  var a = localTransform.a;
16955
16979
  var b = localTransform.b;
@@ -17009,7 +17033,7 @@ var EShapeTransforms = /** @class */ (function () {
17009
17033
  }
17010
17034
  }
17011
17035
  //
17012
- shape.allowUploadedUpdate();
17036
+ shape.unlock(EShapeLockPart.UPLOADED, true);
17013
17037
  };
17014
17038
  return EShapeTransforms;
17015
17039
  }());
@@ -17063,9 +17087,9 @@ var EShapeGroupSizeLayout = /** @class */ (function () {
17063
17087
  .translate(-pivotX, -pivotY)
17064
17088
  .scale(sx, sy)
17065
17089
  .translate(+pivotX, +pivotY);
17066
- shape.disallowOnTransformChange();
17090
+ shape.lock(EShapeLockPart.TRANSFORM);
17067
17091
  EShapeTransforms.applyLocal(shape, transform, EShapeCapability.ALL, childBase);
17068
- shape.allowOnTransformChange(false);
17092
+ shape.unlock(EShapeLockPart.TRANSFORM, false);
17069
17093
  };
17070
17094
  EShapeGroupSizeLayout.WORK_TRANSFORM = new pixi_js.Matrix();
17071
17095
  return EShapeGroupSizeLayout;
@@ -17169,41 +17193,43 @@ var EShapeGroupSizeEditor = /** @class */ (function () {
17169
17193
  };
17170
17194
  EShapeGroupSizeEditor.prototype.doFit = function () {
17171
17195
  var parent = this._parent;
17172
- parent.disallowOnTransformChange();
17196
+ parent.lock(EShapeLockPart.TRANSFORM | EShapeLockPart.TRANSFORM_PARENT);
17173
17197
  // Calculate the rect
17174
17198
  var rect = this.calcRect(this._workRectForFit);
17175
17199
  // Set size
17176
17200
  var size = this._size;
17177
17201
  size.set(rect.width, rect.height);
17178
- // Position & Pivot
17179
- // rx := rect.x
17180
- // ry := rect.y
17202
+ // Calculating new position & pivot
17203
+ //
17204
+ // cx := rect.x + rect.width * 0.5
17205
+ // cy := rect.y + rect.height * 0.5
17206
+ //
17207
+ // Since the local transform need to be unchanged:
17208
+ //
17209
+ // | a c tx | | a c px' - (a * pvx' + c * pvy') |
17210
+ // | b d ty | = | b d py' - (b * pvx' + d * pvy') |
17211
+ // | 0 0 1 | | 0 0 1 |
17212
+ //
17213
+ // Here, (px', py') and (pvx', pvy') are the new position
17214
+ // and the new pivot, respectively.
17181
17215
  //
17182
- // | a c tx | | 1 0 +rx | | 1 0 -rx | | a c tx + (a * rx + c * ry) | | 1 0 -rx |
17183
- // | b d ty | | 0 1 +ry | | 0 1 -ry | = | b d ty + (b * rx + d * ry) | | 0 1 -ry |
17184
- // | 0 0 1 | | 0 0 1 | | 0 0 1 | | 0 0 1 | | 0 0 1 |
17216
+ // Setting the new pivot (pvx', pvy') to (cx, cy) leads to
17185
17217
  //
17186
- // tx -> tx + (a * rx + c * ry) = poxition.x - (a * pivot.x + c * pivot.y)
17187
- // ty -> ty + (b * rx + d * ry) = poxition.y - (b * pivot.x + d * pivot.y)
17188
- // position.x -> position.x + (a * rx + c * ry) - (a * pivot.x + c * pivot.y)
17189
- // position.y -> position.y + (b * rx + d * ry) - (b * pivot.x + d * pivot.y)
17190
- // pivot.x -> 0
17191
- // pivot.y -> 0
17218
+ // | a c tx | | a c px' - (a * cx + c * cy) |
17219
+ // | b d ty | = | b d py' - (b * cx + d * cy) |
17220
+ // | 0 0 1 | | 0 0 1 |
17192
17221
  //
17193
- // a -> a', b -> b', c -> c', tx -> tx', ty -> ty'
17222
+ // tx = px - (a * pvx + c * pvy) = px' - (a * cx + c * cy)
17223
+ // ty = py - (b * pvx + d * pvy) = py' - (b * cx + d * cy)
17194
17224
  //
17195
- // | a' c' tx' | | 1 0 -rx | | a' c' tx' - (a' * rx + c' * ry) |
17196
- // | b' d' ty' | | 0 1 -ry | = | b' d' ty' - (b' * rx + d' * ry) |
17197
- // | 0 0 1 | | 0 0 1 | | 0 0 1 |
17225
+ // Thus, the new position (px', py') is
17198
17226
  //
17199
- // tx' -> tx' - (a' * rx + c' * ry) = poxition.x - (a' * pivot.x + c' * pivot.y)
17200
- // ty' -> ty' - (b' * rx + d' * ry) = poxition.y - (b' * pivot.x + d' * pivot.y)
17201
- // pivot.x -> pivot.x + rx
17202
- // pivot.y -> pivot.y + ry
17227
+ // px' = px + (a * (cx - pvx) + c * (cy - pvy))
17228
+ // py' = py + (b * (cy - pvx) + d * (cy - pvy))
17203
17229
  parent.updateTransform();
17204
17230
  var transform = parent.transform;
17205
- var x = rect.x + rect.width * 0.5;
17206
- var y = rect.y + rect.height * 0.5;
17231
+ var cx = rect.x + rect.width * 0.5;
17232
+ var cy = rect.y + rect.height * 0.5;
17207
17233
  var position = transform.position;
17208
17234
  var localTransform = transform.localTransform;
17209
17235
  var a = localTransform.a;
@@ -17211,12 +17237,16 @@ var EShapeGroupSizeEditor = /** @class */ (function () {
17211
17237
  var c = localTransform.c;
17212
17238
  var d = localTransform.d;
17213
17239
  var pivot = transform.pivot;
17214
- position.set(position.x + (a * x + c * y) - (a * pivot.x + c * pivot.y), position.y + (b * x + d * y) - (b * pivot.x + d * pivot.y));
17215
- pivot.set(x, y);
17240
+ var pvx = pivot.x;
17241
+ var pvy = pivot.y;
17242
+ var dpvx = cx - pvx;
17243
+ var dpvy = cy - pvy;
17244
+ position.set(position.x + (a * dpvx + c * dpvy), position.y + (b * dpvx + d * dpvy));
17245
+ pivot.set(cx, cy);
17216
17246
  // Reset the data
17217
17247
  this.reset(parent.children, this._layouts, size);
17218
17248
  //
17219
- parent.allowOnTransformChange(true);
17249
+ parent.unlock(EShapeLockPart.TRANSFORM | EShapeLockPart.TRANSFORM_PARENT, true);
17220
17250
  };
17221
17251
  EShapeGroupSizeEditor.prototype.reset = function (children, layouts, size) {
17222
17252
  for (var i = 0, imax = Math.min(layouts.length, children.length); i < imax; ++i) {
@@ -18611,9 +18641,9 @@ var EShapeConnectorEdgeImpl = /** @class */ (function () {
18611
18641
  }
18612
18642
  return this;
18613
18643
  };
18614
- EShapeConnectorEdgeImpl.prototype.detach = function () {
18644
+ EShapeConnectorEdgeImpl.prototype.detach = function (exceptions) {
18615
18645
  var shape = this._acceptor.shape;
18616
- if (shape) {
18646
+ if (shape != null && (exceptions == null || !exceptions.has(shape))) {
18617
18647
  if (shape.connector.remove(this)) {
18618
18648
  this.onAcceptorChange();
18619
18649
  }
@@ -18725,10 +18755,10 @@ var EShapeConnectorEdgeContainerImpl = /** @class */ (function () {
18725
18755
  this.unlock();
18726
18756
  return this;
18727
18757
  };
18728
- EShapeConnectorEdgeContainerImpl.prototype.detach = function () {
18758
+ EShapeConnectorEdgeContainerImpl.prototype.detach = function (exceptions) {
18729
18759
  this.lock();
18730
- this._tail.detach();
18731
- this._head.detach();
18760
+ this._tail.detach(exceptions);
18761
+ this._head.detach(exceptions);
18732
18762
  this.unlock();
18733
18763
  return this;
18734
18764
  };
@@ -20097,8 +20127,7 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
20097
20127
  _this._headNormalId = 0;
20098
20128
  _this._headMargin = 0;
20099
20129
  _this._bodyId = 0;
20100
- _this._lockCount = 0;
20101
- _this._isChanged = false;
20130
+ _this._lockChange = new EShapeLock();
20102
20131
  var sx = EShapeDefaults.SIZE_X;
20103
20132
  var sy = EShapeDefaults.SIZE_Y;
20104
20133
  var hx = sx * 0.5;
@@ -20111,20 +20140,20 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
20111
20140
  _this._body = new EShapeConnectorBodyImpl(_this, onChangeBound);
20112
20141
  return _this;
20113
20142
  }
20114
- EShapeConnectorLine.prototype.lock = function () {
20115
- this._lockCount += 1;
20116
- if (this._lockCount === 1) {
20117
- this._isChanged = false;
20143
+ EShapeConnectorLine.prototype.lock = function (part) {
20144
+ _super.prototype.lock.call(this, part);
20145
+ if (part & EShapeLockPart.CONNECTOR) {
20146
+ this._lockChange.lock();
20118
20147
  }
20148
+ return this;
20119
20149
  };
20120
- EShapeConnectorLine.prototype.unlock = function () {
20121
- this._lockCount -= 1;
20122
- if (this._lockCount === 0) {
20123
- if (this._isChanged) {
20150
+ EShapeConnectorLine.prototype.unlock = function (part, invoke) {
20151
+ if (part & EShapeLockPart.CONNECTOR) {
20152
+ if (this._lockChange.unlock() && invoke) {
20124
20153
  this.onChange();
20125
20154
  }
20126
- this._isChanged = false;
20127
20155
  }
20156
+ return _super.prototype.unlock.call(this, part, invoke);
20128
20157
  };
20129
20158
  Object.defineProperty(EShapeConnectorLine.prototype, "points", {
20130
20159
  get: function () {
@@ -20151,14 +20180,13 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
20151
20180
  _super.prototype.onAttach.call(this);
20152
20181
  this._edge.attach();
20153
20182
  };
20154
- EShapeConnectorLine.prototype.onDetach = function () {
20155
- this._edge.detach();
20156
- _super.prototype.onDetach.call(this);
20183
+ EShapeConnectorLine.prototype.onDetach = function (exceptions) {
20184
+ this._edge.detach(exceptions);
20185
+ _super.prototype.onDetach.call(this, exceptions);
20157
20186
  };
20158
20187
  EShapeConnectorLine.prototype.onChange = function () {
20159
20188
  var _a;
20160
- if (0 < this._lockCount) {
20161
- this._isChanged = true;
20189
+ if (this._lockChange.isLocked()) {
20162
20190
  return;
20163
20191
  }
20164
20192
  var edge = this._edge;
@@ -20206,7 +20234,7 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
20206
20234
  values[i + 0] -= cx;
20207
20235
  values[i + 1] -= cy;
20208
20236
  }
20209
- this.disallowUploadedUpdate();
20237
+ this.lock(EShapeLockPart.TRANSFORM_AND_UPLOADED);
20210
20238
  transformPosition.set(px + cx, py + cy);
20211
20239
  transform.scale.set(1, 1);
20212
20240
  transform.rotation = 0;
@@ -20214,7 +20242,7 @@ var EShapeConnectorLine = /** @class */ (function (_super) {
20214
20242
  points.toFitted(sx, sy);
20215
20243
  this.size.set(sx, sy);
20216
20244
  points.set(values);
20217
- this.allowUploadedUpdate();
20245
+ this.unlock(EShapeLockPart.TRANSFORM_AND_UPLOADED, true);
20218
20246
  }
20219
20247
  };
20220
20248
  EShapeConnectorLine.prototype.fillPoints = function (tail, tailMargin, head, headMargin, body, px, py, values) {
@@ -24263,12 +24291,12 @@ var EShapeRuntimeImpl = /** @class */ (function () {
24263
24291
  this.interactive = false;
24264
24292
  }
24265
24293
  EShapeRuntimeImpl.prototype.initialize = function (shape) {
24266
- shape.disallowUploadedUpdate();
24294
+ shape.lock(EShapeLockPart.UPLOADED);
24267
24295
  var actions = this.actions;
24268
24296
  for (var i = 0, imax = actions.length; i < imax; ++i) {
24269
24297
  actions[i].initialize(shape, this);
24270
24298
  }
24271
- shape.allowUploadedUpdate();
24299
+ shape.unlock(EShapeLockPart.UPLOADED, true);
24272
24300
  };
24273
24301
  EShapeRuntimeImpl.prototype.isActionable = function () {
24274
24302
  return 0 < this.actions.length;
@@ -24595,9 +24623,9 @@ var EShapeRuntimeImpl = /** @class */ (function () {
24595
24623
  if (isEffectTimeUp) {
24596
24624
  this.effect = NaN;
24597
24625
  }
24598
- shape.disallowUploadedUpdate();
24626
+ shape.lock(EShapeLockPart.UPLOADED);
24599
24627
  this.onUpdate(shape, time);
24600
- shape.allowUploadedUpdate();
24628
+ shape.unlock(EShapeLockPart.UPLOADED, true);
24601
24629
  var wasStateChanged = this.isStateChanged;
24602
24630
  shape.state.removeAll(EShapeRuntimeImpl.TRANSIENT_STATES);
24603
24631
  this.isStateChanged = wasStateChanged;
@@ -38653,7 +38681,7 @@ var onDeserializedConnectorLine = function (item, shape, mapping, manager) {
38653
38681
  manager.setExtension(resourceId, parsed);
38654
38682
  }
38655
38683
  // Lock
38656
- shape.lock();
38684
+ shape.lock(EShapeLockPart.CONNECTOR);
38657
38685
  // Points
38658
38686
  var points = shape.points;
38659
38687
  points.deserialize(parsed[1], manager);
@@ -38671,7 +38699,7 @@ var onDeserializedConnectorLine = function (item, shape, mapping, manager) {
38671
38699
  body.set(EShapeConnectorBodies.from(points.values, edge.tail.margin, edge.head.margin));
38672
38700
  }
38673
38701
  // Unlock
38674
- shape.unlock();
38702
+ shape.unlock(EShapeLockPart.CONNECTOR, true);
38675
38703
  }
38676
38704
  }
38677
38705
  };
@@ -39611,6 +39639,7 @@ var EShapeGroup = /** @class */ (function (_super) {
39611
39639
  clone.parent = result;
39612
39640
  result.children.push(clone);
39613
39641
  }
39642
+ EShapeConnectors.moveAll(children, result.children, children, result.children);
39614
39643
  result.onChildTransformChange();
39615
39644
  result.toDirty();
39616
39645
  return result;
@@ -45498,7 +45527,7 @@ var toResized = function (shape, from, to, centerMode, isPerfect) {
45498
45527
  var cposition = EShapeCapabilities.contains(shape, EShapeCapability.POSITION);
45499
45528
  var cwidth = EShapeCapabilities.contains(shape, EShapeCapability.WIDTH);
45500
45529
  var cheight = EShapeCapabilities.contains(shape, EShapeCapability.HEIGHT);
45501
- shape.disallowUploadedUpdate();
45530
+ shape.lock(EShapeLockPart.UPLOADED);
45502
45531
  var position = shape.transform.position;
45503
45532
  if (centerMode) {
45504
45533
  var dx = Math.abs(to.x - from.x);
@@ -45595,7 +45624,7 @@ var toResized = function (shape, from, to, centerMode, isPerfect) {
45595
45624
  }
45596
45625
  }
45597
45626
  }
45598
- shape.allowUploadedUpdate();
45627
+ shape.unlock(EShapeLockPart.UPLOADED, true);
45599
45628
  };
45600
45629
 
45601
45630
  /*
@@ -45851,14 +45880,26 @@ var EShapeSearch = /** @class */ (function () {
45851
45880
  var EShapeDeleter = /** @class */ (function () {
45852
45881
  function EShapeDeleter() {
45853
45882
  }
45883
+ EShapeDeleter.addAll = function (shapes, result) {
45884
+ for (var i = 0, imax = shapes.length; i < imax; ++i) {
45885
+ var shape = shapes[i];
45886
+ result.add(shape);
45887
+ this.addAll(shape.children, result);
45888
+ }
45889
+ return result;
45890
+ };
45854
45891
  EShapeDeleter.delete = function (parent, shapes, generateListOfDetachedShapes) {
45892
+ var _a;
45855
45893
  var children = parent.children;
45856
45894
  var length = children.length;
45857
45895
  // Update indices
45896
+ var exceptions = ((_a = EShapeDeleter.EXCEPTIONS) !== null && _a !== void 0 ? _a : (EShapeDeleter.EXCEPTIONS = new Set()));
45858
45897
  for (var i = 0; i < length; ++i) {
45859
45898
  var child = children[i];
45860
45899
  if (child.selected) {
45861
45900
  child.index = length + i;
45901
+ exceptions.add(child);
45902
+ this.addAll(child.children, exceptions);
45862
45903
  }
45863
45904
  else {
45864
45905
  child.index = i;
@@ -45875,9 +45916,10 @@ var EShapeDeleter = /** @class */ (function () {
45875
45916
  child.parent = null;
45876
45917
  child.selected = false;
45877
45918
  child.uploaded = undefined;
45878
- child.onDetach();
45919
+ child.onDetach(exceptions);
45879
45920
  }
45880
45921
  else {
45922
+ exceptions.clear();
45881
45923
  var size = children.length - (i + 1);
45882
45924
  if (0 < size) {
45883
45925
  var result = children.splice(i + 1, size);
@@ -45896,6 +45938,7 @@ var EShapeDeleter = /** @class */ (function () {
45896
45938
  }
45897
45939
  }
45898
45940
  }
45941
+ exceptions.clear();
45899
45942
  if (0 < children.length) {
45900
45943
  var result = children.splice(0, children.length);
45901
45944
  if (shapes != null) {
@@ -45919,9 +45962,10 @@ var EShapeDeleter = /** @class */ (function () {
45919
45962
  child.parent = null;
45920
45963
  child.selected = false;
45921
45964
  child.uploaded = undefined;
45922
- child.onDetach();
45965
+ child.onDetach(exceptions);
45923
45966
  }
45924
45967
  else {
45968
+ exceptions.clear();
45925
45969
  children.length = i + 1;
45926
45970
  if (shapes != null) {
45927
45971
  shapes.length = 0;
@@ -45931,6 +45975,7 @@ var EShapeDeleter = /** @class */ (function () {
45931
45975
  return null;
45932
45976
  }
45933
45977
  }
45978
+ exceptions.clear();
45934
45979
  if (0 < children.length) {
45935
45980
  children.length = 0;
45936
45981
  if (shapes != null) {
@@ -46866,7 +46911,7 @@ var UtilSvgAtlasBuilder = /** @class */ (function () {
46866
46911
  * Copyright (C) 2019 Toshiba Corporation
46867
46912
  * SPDX-License-Identifier: Apache-2.0
46868
46913
  */
46869
- var DThemeWhiteAtlas = new UtilSvgAtlasBuilder(256, 1, 3);
46914
+ var DThemeWhiteAtlas = new UtilSvgAtlasBuilder(512, 1, 3);
46870
46915
 
46871
46916
  /*
46872
46917
  * Copyright (C) 2019 Toshiba Corporation
@@ -56802,7 +56847,7 @@ var loadThemeWhiteAll = function () {
56802
56847
  * Copyright (C) 2019 Toshiba Corporation
56803
56848
  * SPDX-License-Identifier: Apache-2.0
56804
56849
  */
56805
- var DThemeDarkAtlas = new UtilSvgAtlasBuilder(256, 1, 3);
56850
+ var DThemeDarkAtlas = new UtilSvgAtlasBuilder(512, 1, 3);
56806
56851
 
56807
56852
  /*
56808
56853
  * Copyright (C) 2019 Toshiba Corporation
@@ -74985,7 +75030,7 @@ var DChartAxisBaseBar = /** @class */ (function () {
74985
75030
  var plotAreaWidth = plotArea.width;
74986
75031
  var plotAreaHeight = plotArea.height;
74987
75032
  var offset = this._parser.padding * index;
74988
- shape.disallowUploadedUpdate();
75033
+ shape.lock(EShapeLockPart.UPLOADED);
74989
75034
  var position = shape.transform.position;
74990
75035
  var size = shape.size;
74991
75036
  switch (this._parser.position) {
@@ -75006,7 +75051,7 @@ var DChartAxisBaseBar = /** @class */ (function () {
75006
75051
  size.set(0, plotAreaHeight);
75007
75052
  break;
75008
75053
  }
75009
- shape.allowUploadedUpdate();
75054
+ shape.unlock(EShapeLockPart.UPLOADED, true);
75010
75055
  return true;
75011
75056
  }
75012
75057
  return false;
@@ -76054,18 +76099,18 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
76054
76099
  return true;
76055
76100
  };
76056
76101
  DChartAxisBaseTickContainer.prototype.showMajor = function (shape, x, y, text) {
76057
- shape.disallowUploadedUpdate();
76102
+ shape.lock(EShapeLockPart.UPLOADED);
76058
76103
  shape.visible = true;
76059
76104
  shape.transform.position.set(x, y);
76060
76105
  shape.text.value = text != null ? text : "";
76061
- shape.allowUploadedUpdate();
76106
+ shape.unlock(EShapeLockPart.UPLOADED, true);
76062
76107
  };
76063
76108
  DChartAxisBaseTickContainer.prototype.showMajorGridline = function (shape, value, x, y, sx, sy) {
76064
- shape.disallowUploadedUpdate();
76109
+ shape.lock(EShapeLockPart.UPLOADED);
76065
76110
  shape.visible = true;
76066
76111
  shape.transform.position.set(x, y);
76067
76112
  shape.size.set(sx, sy);
76068
- shape.allowUploadedUpdate();
76113
+ shape.unlock(EShapeLockPart.UPLOADED, true);
76069
76114
  };
76070
76115
  DChartAxisBaseTickContainer.prototype.hideMajor = function (shape) {
76071
76116
  shape.visible = false;
@@ -76074,11 +76119,11 @@ var DChartAxisBaseTickContainer = /** @class */ (function () {
76074
76119
  shape.visible = false;
76075
76120
  };
76076
76121
  DChartAxisBaseTickContainer.prototype.showMinor = function (shape, x, y, text) {
76077
- shape.disallowUploadedUpdate();
76122
+ shape.lock(EShapeLockPart.UPLOADED);
76078
76123
  shape.visible = true;
76079
76124
  shape.transform.position.set(x, y);
76080
76125
  shape.text.value = text != null ? text : "";
76081
- shape.allowUploadedUpdate();
76126
+ shape.unlock(EShapeLockPart.UPLOADED, true);
76082
76127
  };
76083
76128
  DChartAxisBaseTickContainer.prototype.hideMinor = function (shape) {
76084
76129
  shape.visible = false;
@@ -76541,7 +76586,7 @@ var DChartAxisGuideSimpleShapeImpl = /** @class */ (function () {
76541
76586
  DChartAxisGuideSimpleShapeImpl.prototype.update = function (position, x, y, visible, width, height, offset) {
76542
76587
  var bar = this._bar;
76543
76588
  if (bar != null) {
76544
- bar.disallowUploadedUpdate();
76589
+ bar.lock(EShapeLockPart.UPLOADED);
76545
76590
  switch (position) {
76546
76591
  case DChartAxisPosition.TOP:
76547
76592
  bar.transform.position.set(x, y);
@@ -76564,7 +76609,7 @@ var DChartAxisGuideSimpleShapeImpl = /** @class */ (function () {
76564
76609
  bar.visible = visible;
76565
76610
  break;
76566
76611
  }
76567
- bar.allowUploadedUpdate();
76612
+ bar.unlock(EShapeLockPart.UPLOADED, true);
76568
76613
  }
76569
76614
  var label = this._label;
76570
76615
  if (label != null) {
@@ -76572,7 +76617,7 @@ var DChartAxisGuideSimpleShapeImpl = /** @class */ (function () {
76572
76617
  var s = label.size;
76573
76618
  var ox = offset + s.x * 0.5 + m;
76574
76619
  var oy = offset + s.y * 0.5 + m;
76575
- label.disallowUploadedUpdate();
76620
+ label.lock(EShapeLockPart.UPLOADED);
76576
76621
  switch (position) {
76577
76622
  case DChartAxisPosition.TOP:
76578
76623
  label.transform.position.set(x, -oy);
@@ -76591,7 +76636,7 @@ var DChartAxisGuideSimpleShapeImpl = /** @class */ (function () {
76591
76636
  label.visible = visible;
76592
76637
  break;
76593
76638
  }
76594
- label.allowUploadedUpdate();
76639
+ label.unlock(EShapeLockPart.UPLOADED, true);
76595
76640
  }
76596
76641
  var tick = this._tick;
76597
76642
  if (tick != null) {
@@ -76599,7 +76644,7 @@ var DChartAxisGuideSimpleShapeImpl = /** @class */ (function () {
76599
76644
  var s = tick.size;
76600
76645
  var ox = offset + s.x * 0.5 + m;
76601
76646
  var oy = offset + s.y * 0.5 + m;
76602
- tick.disallowUploadedUpdate();
76647
+ tick.lock(EShapeLockPart.UPLOADED);
76603
76648
  switch (position) {
76604
76649
  case DChartAxisPosition.TOP:
76605
76650
  tick.transform.position.set(x, -oy);
@@ -76618,7 +76663,7 @@ var DChartAxisGuideSimpleShapeImpl = /** @class */ (function () {
76618
76663
  tick.visible = visible;
76619
76664
  break;
76620
76665
  }
76621
- tick.allowUploadedUpdate();
76666
+ tick.unlock(EShapeLockPart.UPLOADED, true);
76622
76667
  }
76623
76668
  return true;
76624
76669
  };
@@ -79429,9 +79474,9 @@ var DChartSeriesLineOfAny = /** @class */ (function (_super) {
79429
79474
  values[i + 0] -= cx;
79430
79475
  values[i + 1] -= cy;
79431
79476
  }
79432
- line.disallowUploadedUpdate();
79477
+ line.lock(EShapeLockPart.UPLOADED);
79433
79478
  this.applyLine(line, xcoordinate, ycoordinate, sx, sy, cx, cy, values);
79434
- line.allowUploadedUpdate();
79479
+ line.unlock(EShapeLockPart.UPLOADED, true);
79435
79480
  };
79436
79481
  DChartSeriesLineOfAny.prototype.adjustLineRegion = function (xmin, xmax, ymin, ymax, result) {
79437
79482
  result.xmin = xmin;
@@ -79921,7 +79966,7 @@ var DChartSeriesLine = /** @class */ (function (_super) {
79921
79966
  return false;
79922
79967
  };
79923
79968
  DChartSeriesLine.prototype.doUpdateLine = function (line, xcoordinate, ycoordinate, isPointsDirty) {
79924
- line.disallowUploadedUpdate();
79969
+ line.lock(EShapeLockPart.UPLOADED);
79925
79970
  if (isPointsDirty) {
79926
79971
  var values = line.points.values;
79927
79972
  var segments = line.points.segments;
@@ -80004,7 +80049,7 @@ var DChartSeriesLine = /** @class */ (function (_super) {
80004
80049
  }
80005
80050
  line.transform.position.set(xcoordinate.transform.map(this._centerX), ycoordinate.transform.map(this._centerY));
80006
80051
  line.transform.scale.set(xcoordinate.transform.scale, ycoordinate.transform.scale);
80007
- line.allowUploadedUpdate();
80052
+ line.unlock(EShapeLockPart.UPLOADED, true);
80008
80053
  };
80009
80054
  DChartSeriesLine.prototype.updateRegion = function () {
80010
80055
  var pointId = this._pointId;
@@ -80363,12 +80408,12 @@ var DChartSeriesLinear = /** @class */ (function (_super) {
80363
80408
  if (0 < segments.length) {
80364
80409
  segments.length = 0;
80365
80410
  }
80366
- line.disallowUploadedUpdate();
80411
+ line.lock(EShapeLockPart.UPLOADED);
80367
80412
  line.points.set(values, segments);
80368
80413
  line.points.toFitted(sx, sy);
80369
80414
  line.size.set(sx, sy);
80370
80415
  line.transform.position.set(cx, cy);
80371
- line.allowUploadedUpdate();
80416
+ line.unlock(EShapeLockPart.UPLOADED, true);
80372
80417
  };
80373
80418
  DChartSeriesLinear.prototype.updateRegion = function () {
80374
80419
  // DO NOTHING
@@ -81959,23 +82004,23 @@ var DDiagramCanvasEditorSnap = /** @class */ (function () {
81959
82004
  var shape = null;
81960
82005
  if (index < shapes.length) {
81961
82006
  shape = shapes[index];
81962
- shape.disallowUploadedUpdate();
82007
+ shape.lock(EShapeLockPart.UPLOADED);
81963
82008
  shape.points.position = position;
81964
82009
  shape.transform.position.set(x, y);
81965
82010
  shape.stroke.set(true, style.color, style.alpha, style.width, undefined, undefined, style.style);
81966
82011
  shape.size.set(w, h);
81967
82012
  shape.visible = true;
81968
- shape.allowUploadedUpdate();
82013
+ shape.unlock(EShapeLockPart.UPLOADED, true);
81969
82014
  }
81970
82015
  else {
81971
82016
  shape = new EShapeBar();
81972
- shape.disallowUploadedUpdate();
82017
+ shape.lock(EShapeLockPart.UPLOADED);
81973
82018
  shape.points.position = position;
81974
82019
  shape.transform.position.set(x, y);
81975
82020
  shape.stroke.set(true, style.color, style.alpha, style.width, undefined, undefined, style.style);
81976
82021
  shape.size.set(w, h);
81977
82022
  shape.visible = true;
81978
- shape.allowUploadedUpdate();
82023
+ shape.unlock(EShapeLockPart.UPLOADED, true);
81979
82024
  shape.attach(container);
81980
82025
  }
81981
82026
  };
@@ -95722,6 +95767,8 @@ exports.EShapeLineOfRectangles = EShapeLineOfRectangles;
95722
95767
  exports.EShapeLineOfTriangleRoundeds = EShapeLineOfTriangleRoundeds;
95723
95768
  exports.EShapeLineOfTriangles = EShapeLineOfTriangles;
95724
95769
  exports.EShapeLinePoints = EShapeLinePoints;
95770
+ exports.EShapeLock = EShapeLock;
95771
+ exports.EShapeLockPart = EShapeLockPart;
95725
95772
  exports.EShapeNull = EShapeNull;
95726
95773
  exports.EShapeOnDeserializeds = EShapeOnDeserializeds;
95727
95774
  exports.EShapePointsFormatters = EShapePointsFormatters;