microboard-temp 0.4.34 → 0.4.35

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.
@@ -19649,6 +19649,8 @@ class BaseItem extends Mbr {
19649
19649
  transformation;
19650
19650
  linkTo;
19651
19651
  parent = "Board";
19652
+ children = null;
19653
+ canBeNested = true;
19652
19654
  transformationRenderBlock = undefined;
19653
19655
  board;
19654
19656
  id;
@@ -19680,6 +19682,87 @@ class BaseItem extends Mbr {
19680
19682
  this.getRichText()?.setId(id);
19681
19683
  return this;
19682
19684
  }
19685
+ addChildItems(children) {
19686
+ if (!this.children) {
19687
+ return;
19688
+ }
19689
+ const childrenIds = children.map((child) => {
19690
+ child.parent = this.getId();
19691
+ return child.getId();
19692
+ });
19693
+ this.updateChildren([...this.children, ...childrenIds]);
19694
+ }
19695
+ removeChildItems(children) {
19696
+ if (!this.children) {
19697
+ return;
19698
+ }
19699
+ const newChildren = Array.isArray(children) ? children : [children];
19700
+ const childrenIds = newChildren.map((child) => {
19701
+ child.parent = "Board";
19702
+ return child.getId();
19703
+ });
19704
+ this.updateChildren(this.children.filter((child) => !childrenIds.includes(child)));
19705
+ }
19706
+ emitNesting(children) {
19707
+ const itemsToAdd = [];
19708
+ const itemsToRemove = [];
19709
+ children.forEach((child) => {
19710
+ if (this.handleNesting(child)) {
19711
+ itemsToAdd.push(child);
19712
+ } else {
19713
+ itemsToRemove.push(child);
19714
+ }
19715
+ });
19716
+ this.addChildItems(itemsToAdd);
19717
+ this.removeChildItems(itemsToRemove);
19718
+ }
19719
+ updateChildren(children) {
19720
+ this.emit({
19721
+ class: this.itemType,
19722
+ method: "updateChildren",
19723
+ item: [this.getId()],
19724
+ newData: { children },
19725
+ prevData: { children: this.children }
19726
+ });
19727
+ }
19728
+ handleNesting(item, options) {
19729
+ const isItem = "itemType" in item;
19730
+ const itemMbr = isItem ? item.getMbr() : item;
19731
+ if (item instanceof BaseItem && !item.canBeNested) {
19732
+ return false;
19733
+ }
19734
+ if (options?.cancelIfChild && isItem && item.parent !== "Board") {
19735
+ return false;
19736
+ }
19737
+ const mbr = this.getMbr().copy();
19738
+ if (item.isEnclosedOrCrossedBy(mbr)) {
19739
+ if (mbr.isInside(itemMbr.getCenter())) {
19740
+ if (!options || !options.onlyForOut) {
19741
+ return true;
19742
+ }
19743
+ }
19744
+ }
19745
+ return false;
19746
+ }
19747
+ applyUpdateChildren(children) {
19748
+ if (!this.children) {
19749
+ return;
19750
+ }
19751
+ children.forEach((child) => {
19752
+ if (this.parent !== child && this.getId() !== child) {
19753
+ const foundItem = this.board.items.getById(child);
19754
+ if (!this.children.includes(child) && foundItem) {
19755
+ foundItem.parent = this.getId();
19756
+ }
19757
+ }
19758
+ });
19759
+ this.children = children;
19760
+ this.updateMbr();
19761
+ this.subject.publish(this);
19762
+ }
19763
+ updateMbr() {
19764
+ return;
19765
+ }
19683
19766
  getLinkTo() {
19684
19767
  return this.linkTo.link;
19685
19768
  }
@@ -19729,6 +19812,12 @@ class BaseItem extends Mbr {
19729
19812
  case "LinkTo":
19730
19813
  this.linkTo.apply(op);
19731
19814
  break;
19815
+ case this.itemType:
19816
+ op = op;
19817
+ switch (op.method) {
19818
+ case "updateChildren":
19819
+ this.applyUpdateChildren(op.newData.children);
19820
+ }
19732
19821
  }
19733
19822
  }
19734
19823
  addOnRemoveCallback(cb) {
@@ -38352,6 +38441,7 @@ class Frame extends BaseItem {
38352
38441
  linkTo;
38353
38442
  text;
38354
38443
  canChangeRatio = true;
38444
+ canBeNested = false;
38355
38445
  newShape = null;
38356
38446
  transformationRenderBlock = undefined;
38357
38447
  constructor(board, getItemById, id = "", name = "", shapeType = defaultFrameData.shapeType, backgroundColor = defaultFrameData.backgroundColor, backgroundOpacity = defaultFrameData.backgroundOpacity, borderColor = defaultFrameData.borderColor, borderOpacity = defaultFrameData.borderOpacity, borderStyle = defaultFrameData.borderStyle, borderWidth = defaultFrameData.borderWidth) {
@@ -38390,42 +38480,6 @@ class Frame extends BaseItem {
38390
38480
  this.board = board;
38391
38481
  return this;
38392
38482
  }
38393
- emitAddChild(children) {
38394
- const childrenIds = children.map((child) => {
38395
- child.parent = this.getId();
38396
- return child.getId();
38397
- });
38398
- this.addChild(childrenIds);
38399
- }
38400
- emitRemoveChild(children) {
38401
- const newChildren = Array.isArray(children) ? children : [children];
38402
- const childrenIds = newChildren.map((child) => {
38403
- child.parent = "Board";
38404
- return child.getId();
38405
- });
38406
- this.removeChild(childrenIds);
38407
- }
38408
- emitNesting(children) {
38409
- const itemsToAdd = [];
38410
- const itemsToRemove = [];
38411
- children.forEach((child) => {
38412
- if (this.handleNesting(child)) {
38413
- itemsToAdd.push(child);
38414
- } else {
38415
- itemsToRemove.push(child);
38416
- }
38417
- });
38418
- this.emitAddChild(itemsToAdd);
38419
- this.emitRemoveChild(itemsToRemove);
38420
- }
38421
- addChild(childId) {
38422
- this.emit({
38423
- class: "Frame",
38424
- method: "addChild",
38425
- item: [this.getId()],
38426
- childId
38427
- });
38428
- }
38429
38483
  applyAddChild(childId, noWarn = false) {
38430
38484
  const children = Array.isArray(childId) ? childId : [childId];
38431
38485
  children.forEach((child) => {
@@ -38446,36 +38500,9 @@ class Frame extends BaseItem {
38446
38500
  this.children = this.children.filter((currChild) => !childId.includes(currChild));
38447
38501
  this.subject.publish(this);
38448
38502
  }
38449
- removeChild(childId) {
38450
- this.emit({
38451
- class: "Frame",
38452
- method: "removeChild",
38453
- item: [this.getId()],
38454
- childId
38455
- });
38456
- }
38457
38503
  getLinkTo() {
38458
38504
  return this.linkTo.link;
38459
38505
  }
38460
- handleNesting(item, options) {
38461
- const isItem = "itemType" in item;
38462
- const itemMbr = isItem ? item.getMbr() : item;
38463
- if (item instanceof Frame) {
38464
- return false;
38465
- }
38466
- if (options?.cancelIfChild && isItem && item.parent !== "Board") {
38467
- return false;
38468
- }
38469
- const frameMbr = this.getMbr().copy();
38470
- if (item.isEnclosedOrCrossedBy(frameMbr)) {
38471
- if (frameMbr.isInside(itemMbr.getCenter())) {
38472
- if (!options || !options.onlyForOut) {
38473
- return true;
38474
- }
38475
- }
38476
- }
38477
- return false;
38478
- }
38479
38506
  initPath() {
38480
38507
  this.path = Frames[this.shapeType].path.copy();
38481
38508
  this.textContainer = Frames[this.shapeType].textBounds.copy();
@@ -50429,7 +50456,7 @@ class BoardSelection {
50429
50456
  if (isParentFrame && isRemoveChildFromFrame) {
50430
50457
  parentFrame.emitRemoveChild([val.item]);
50431
50458
  }
50432
- val.nested.emitAddChild([val.item]);
50459
+ val.nested.addChildItems([val.item]);
50433
50460
  } else if (val.item.parent !== "Board") {
50434
50461
  if (isParentFrame) {
50435
50462
  parentFrame.emitRemoveChild([val.item]);
@@ -52119,7 +52146,7 @@ class SpatialIndex {
52119
52146
  remove(item) {
52120
52147
  if (item instanceof Frame) {
52121
52148
  const newItems = item.getChildrenIds().map((childId) => this.getById(childId)).filter((child) => child !== undefined);
52122
- item.emitRemoveChild(newItems);
52149
+ item.removeChildItems(newItems);
52123
52150
  }
52124
52151
  if (item.parent !== "Board") {
52125
52152
  const parentFrame = this.items.getById(item.parent);
@@ -53198,7 +53225,7 @@ class Board {
53198
53225
  }
53199
53226
  });
53200
53227
  framesMap.forEach((items2, frame) => {
53201
- frame.emitAddChild(items2);
53228
+ frame.addChildItems(items2);
53202
53229
  });
53203
53230
  }
53204
53231
  createItem(id, data) {
package/dist/cjs/index.js CHANGED
@@ -19649,6 +19649,8 @@ class BaseItem extends Mbr {
19649
19649
  transformation;
19650
19650
  linkTo;
19651
19651
  parent = "Board";
19652
+ children = null;
19653
+ canBeNested = true;
19652
19654
  transformationRenderBlock = undefined;
19653
19655
  board;
19654
19656
  id;
@@ -19680,6 +19682,87 @@ class BaseItem extends Mbr {
19680
19682
  this.getRichText()?.setId(id);
19681
19683
  return this;
19682
19684
  }
19685
+ addChildItems(children) {
19686
+ if (!this.children) {
19687
+ return;
19688
+ }
19689
+ const childrenIds = children.map((child) => {
19690
+ child.parent = this.getId();
19691
+ return child.getId();
19692
+ });
19693
+ this.updateChildren([...this.children, ...childrenIds]);
19694
+ }
19695
+ removeChildItems(children) {
19696
+ if (!this.children) {
19697
+ return;
19698
+ }
19699
+ const newChildren = Array.isArray(children) ? children : [children];
19700
+ const childrenIds = newChildren.map((child) => {
19701
+ child.parent = "Board";
19702
+ return child.getId();
19703
+ });
19704
+ this.updateChildren(this.children.filter((child) => !childrenIds.includes(child)));
19705
+ }
19706
+ emitNesting(children) {
19707
+ const itemsToAdd = [];
19708
+ const itemsToRemove = [];
19709
+ children.forEach((child) => {
19710
+ if (this.handleNesting(child)) {
19711
+ itemsToAdd.push(child);
19712
+ } else {
19713
+ itemsToRemove.push(child);
19714
+ }
19715
+ });
19716
+ this.addChildItems(itemsToAdd);
19717
+ this.removeChildItems(itemsToRemove);
19718
+ }
19719
+ updateChildren(children) {
19720
+ this.emit({
19721
+ class: this.itemType,
19722
+ method: "updateChildren",
19723
+ item: [this.getId()],
19724
+ newData: { children },
19725
+ prevData: { children: this.children }
19726
+ });
19727
+ }
19728
+ handleNesting(item, options) {
19729
+ const isItem = "itemType" in item;
19730
+ const itemMbr = isItem ? item.getMbr() : item;
19731
+ if (item instanceof BaseItem && !item.canBeNested) {
19732
+ return false;
19733
+ }
19734
+ if (options?.cancelIfChild && isItem && item.parent !== "Board") {
19735
+ return false;
19736
+ }
19737
+ const mbr = this.getMbr().copy();
19738
+ if (item.isEnclosedOrCrossedBy(mbr)) {
19739
+ if (mbr.isInside(itemMbr.getCenter())) {
19740
+ if (!options || !options.onlyForOut) {
19741
+ return true;
19742
+ }
19743
+ }
19744
+ }
19745
+ return false;
19746
+ }
19747
+ applyUpdateChildren(children) {
19748
+ if (!this.children) {
19749
+ return;
19750
+ }
19751
+ children.forEach((child) => {
19752
+ if (this.parent !== child && this.getId() !== child) {
19753
+ const foundItem = this.board.items.getById(child);
19754
+ if (!this.children.includes(child) && foundItem) {
19755
+ foundItem.parent = this.getId();
19756
+ }
19757
+ }
19758
+ });
19759
+ this.children = children;
19760
+ this.updateMbr();
19761
+ this.subject.publish(this);
19762
+ }
19763
+ updateMbr() {
19764
+ return;
19765
+ }
19683
19766
  getLinkTo() {
19684
19767
  return this.linkTo.link;
19685
19768
  }
@@ -19729,6 +19812,12 @@ class BaseItem extends Mbr {
19729
19812
  case "LinkTo":
19730
19813
  this.linkTo.apply(op);
19731
19814
  break;
19815
+ case this.itemType:
19816
+ op = op;
19817
+ switch (op.method) {
19818
+ case "updateChildren":
19819
+ this.applyUpdateChildren(op.newData.children);
19820
+ }
19732
19821
  }
19733
19822
  }
19734
19823
  addOnRemoveCallback(cb) {
@@ -38352,6 +38441,7 @@ class Frame extends BaseItem {
38352
38441
  linkTo;
38353
38442
  text;
38354
38443
  canChangeRatio = true;
38444
+ canBeNested = false;
38355
38445
  newShape = null;
38356
38446
  transformationRenderBlock = undefined;
38357
38447
  constructor(board, getItemById, id = "", name = "", shapeType = defaultFrameData.shapeType, backgroundColor = defaultFrameData.backgroundColor, backgroundOpacity = defaultFrameData.backgroundOpacity, borderColor = defaultFrameData.borderColor, borderOpacity = defaultFrameData.borderOpacity, borderStyle = defaultFrameData.borderStyle, borderWidth = defaultFrameData.borderWidth) {
@@ -38390,42 +38480,6 @@ class Frame extends BaseItem {
38390
38480
  this.board = board;
38391
38481
  return this;
38392
38482
  }
38393
- emitAddChild(children) {
38394
- const childrenIds = children.map((child) => {
38395
- child.parent = this.getId();
38396
- return child.getId();
38397
- });
38398
- this.addChild(childrenIds);
38399
- }
38400
- emitRemoveChild(children) {
38401
- const newChildren = Array.isArray(children) ? children : [children];
38402
- const childrenIds = newChildren.map((child) => {
38403
- child.parent = "Board";
38404
- return child.getId();
38405
- });
38406
- this.removeChild(childrenIds);
38407
- }
38408
- emitNesting(children) {
38409
- const itemsToAdd = [];
38410
- const itemsToRemove = [];
38411
- children.forEach((child) => {
38412
- if (this.handleNesting(child)) {
38413
- itemsToAdd.push(child);
38414
- } else {
38415
- itemsToRemove.push(child);
38416
- }
38417
- });
38418
- this.emitAddChild(itemsToAdd);
38419
- this.emitRemoveChild(itemsToRemove);
38420
- }
38421
- addChild(childId) {
38422
- this.emit({
38423
- class: "Frame",
38424
- method: "addChild",
38425
- item: [this.getId()],
38426
- childId
38427
- });
38428
- }
38429
38483
  applyAddChild(childId, noWarn = false) {
38430
38484
  const children = Array.isArray(childId) ? childId : [childId];
38431
38485
  children.forEach((child) => {
@@ -38446,36 +38500,9 @@ class Frame extends BaseItem {
38446
38500
  this.children = this.children.filter((currChild) => !childId.includes(currChild));
38447
38501
  this.subject.publish(this);
38448
38502
  }
38449
- removeChild(childId) {
38450
- this.emit({
38451
- class: "Frame",
38452
- method: "removeChild",
38453
- item: [this.getId()],
38454
- childId
38455
- });
38456
- }
38457
38503
  getLinkTo() {
38458
38504
  return this.linkTo.link;
38459
38505
  }
38460
- handleNesting(item, options) {
38461
- const isItem = "itemType" in item;
38462
- const itemMbr = isItem ? item.getMbr() : item;
38463
- if (item instanceof Frame) {
38464
- return false;
38465
- }
38466
- if (options?.cancelIfChild && isItem && item.parent !== "Board") {
38467
- return false;
38468
- }
38469
- const frameMbr = this.getMbr().copy();
38470
- if (item.isEnclosedOrCrossedBy(frameMbr)) {
38471
- if (frameMbr.isInside(itemMbr.getCenter())) {
38472
- if (!options || !options.onlyForOut) {
38473
- return true;
38474
- }
38475
- }
38476
- }
38477
- return false;
38478
- }
38479
38506
  initPath() {
38480
38507
  this.path = Frames[this.shapeType].path.copy();
38481
38508
  this.textContainer = Frames[this.shapeType].textBounds.copy();
@@ -50429,7 +50456,7 @@ class BoardSelection {
50429
50456
  if (isParentFrame && isRemoveChildFromFrame) {
50430
50457
  parentFrame.emitRemoveChild([val.item]);
50431
50458
  }
50432
- val.nested.emitAddChild([val.item]);
50459
+ val.nested.addChildItems([val.item]);
50433
50460
  } else if (val.item.parent !== "Board") {
50434
50461
  if (isParentFrame) {
50435
50462
  parentFrame.emitRemoveChild([val.item]);
@@ -52119,7 +52146,7 @@ class SpatialIndex {
52119
52146
  remove(item) {
52120
52147
  if (item instanceof Frame) {
52121
52148
  const newItems = item.getChildrenIds().map((childId) => this.getById(childId)).filter((child) => child !== undefined);
52122
- item.emitRemoveChild(newItems);
52149
+ item.removeChildItems(newItems);
52123
52150
  }
52124
52151
  if (item.parent !== "Board") {
52125
52152
  const parentFrame = this.items.getById(item.parent);
@@ -53198,7 +53225,7 @@ class Board {
53198
53225
  }
53199
53226
  });
53200
53227
  framesMap.forEach((items2, frame) => {
53201
- frame.emitAddChild(items2);
53228
+ frame.addChildItems(items2);
53202
53229
  });
53203
53230
  }
53204
53231
  createItem(id, data) {
package/dist/cjs/node.js CHANGED
@@ -22188,6 +22188,8 @@ class BaseItem extends Mbr {
22188
22188
  transformation;
22189
22189
  linkTo;
22190
22190
  parent = "Board";
22191
+ children = null;
22192
+ canBeNested = true;
22191
22193
  transformationRenderBlock = undefined;
22192
22194
  board;
22193
22195
  id;
@@ -22219,6 +22221,87 @@ class BaseItem extends Mbr {
22219
22221
  this.getRichText()?.setId(id);
22220
22222
  return this;
22221
22223
  }
22224
+ addChildItems(children) {
22225
+ if (!this.children) {
22226
+ return;
22227
+ }
22228
+ const childrenIds = children.map((child) => {
22229
+ child.parent = this.getId();
22230
+ return child.getId();
22231
+ });
22232
+ this.updateChildren([...this.children, ...childrenIds]);
22233
+ }
22234
+ removeChildItems(children) {
22235
+ if (!this.children) {
22236
+ return;
22237
+ }
22238
+ const newChildren = Array.isArray(children) ? children : [children];
22239
+ const childrenIds = newChildren.map((child) => {
22240
+ child.parent = "Board";
22241
+ return child.getId();
22242
+ });
22243
+ this.updateChildren(this.children.filter((child) => !childrenIds.includes(child)));
22244
+ }
22245
+ emitNesting(children) {
22246
+ const itemsToAdd = [];
22247
+ const itemsToRemove = [];
22248
+ children.forEach((child) => {
22249
+ if (this.handleNesting(child)) {
22250
+ itemsToAdd.push(child);
22251
+ } else {
22252
+ itemsToRemove.push(child);
22253
+ }
22254
+ });
22255
+ this.addChildItems(itemsToAdd);
22256
+ this.removeChildItems(itemsToRemove);
22257
+ }
22258
+ updateChildren(children) {
22259
+ this.emit({
22260
+ class: this.itemType,
22261
+ method: "updateChildren",
22262
+ item: [this.getId()],
22263
+ newData: { children },
22264
+ prevData: { children: this.children }
22265
+ });
22266
+ }
22267
+ handleNesting(item, options) {
22268
+ const isItem = "itemType" in item;
22269
+ const itemMbr = isItem ? item.getMbr() : item;
22270
+ if (item instanceof BaseItem && !item.canBeNested) {
22271
+ return false;
22272
+ }
22273
+ if (options?.cancelIfChild && isItem && item.parent !== "Board") {
22274
+ return false;
22275
+ }
22276
+ const mbr = this.getMbr().copy();
22277
+ if (item.isEnclosedOrCrossedBy(mbr)) {
22278
+ if (mbr.isInside(itemMbr.getCenter())) {
22279
+ if (!options || !options.onlyForOut) {
22280
+ return true;
22281
+ }
22282
+ }
22283
+ }
22284
+ return false;
22285
+ }
22286
+ applyUpdateChildren(children) {
22287
+ if (!this.children) {
22288
+ return;
22289
+ }
22290
+ children.forEach((child) => {
22291
+ if (this.parent !== child && this.getId() !== child) {
22292
+ const foundItem = this.board.items.getById(child);
22293
+ if (!this.children.includes(child) && foundItem) {
22294
+ foundItem.parent = this.getId();
22295
+ }
22296
+ }
22297
+ });
22298
+ this.children = children;
22299
+ this.updateMbr();
22300
+ this.subject.publish(this);
22301
+ }
22302
+ updateMbr() {
22303
+ return;
22304
+ }
22222
22305
  getLinkTo() {
22223
22306
  return this.linkTo.link;
22224
22307
  }
@@ -22268,6 +22351,12 @@ class BaseItem extends Mbr {
22268
22351
  case "LinkTo":
22269
22352
  this.linkTo.apply(op);
22270
22353
  break;
22354
+ case this.itemType:
22355
+ op = op;
22356
+ switch (op.method) {
22357
+ case "updateChildren":
22358
+ this.applyUpdateChildren(op.newData.children);
22359
+ }
22271
22360
  }
22272
22361
  }
22273
22362
  addOnRemoveCallback(cb) {
@@ -40892,6 +40981,7 @@ class Frame extends BaseItem {
40892
40981
  linkTo;
40893
40982
  text;
40894
40983
  canChangeRatio = true;
40984
+ canBeNested = false;
40895
40985
  newShape = null;
40896
40986
  transformationRenderBlock = undefined;
40897
40987
  constructor(board, getItemById, id = "", name = "", shapeType = defaultFrameData.shapeType, backgroundColor = defaultFrameData.backgroundColor, backgroundOpacity = defaultFrameData.backgroundOpacity, borderColor = defaultFrameData.borderColor, borderOpacity = defaultFrameData.borderOpacity, borderStyle = defaultFrameData.borderStyle, borderWidth = defaultFrameData.borderWidth) {
@@ -40930,42 +41020,6 @@ class Frame extends BaseItem {
40930
41020
  this.board = board;
40931
41021
  return this;
40932
41022
  }
40933
- emitAddChild(children) {
40934
- const childrenIds = children.map((child) => {
40935
- child.parent = this.getId();
40936
- return child.getId();
40937
- });
40938
- this.addChild(childrenIds);
40939
- }
40940
- emitRemoveChild(children) {
40941
- const newChildren = Array.isArray(children) ? children : [children];
40942
- const childrenIds = newChildren.map((child) => {
40943
- child.parent = "Board";
40944
- return child.getId();
40945
- });
40946
- this.removeChild(childrenIds);
40947
- }
40948
- emitNesting(children) {
40949
- const itemsToAdd = [];
40950
- const itemsToRemove = [];
40951
- children.forEach((child) => {
40952
- if (this.handleNesting(child)) {
40953
- itemsToAdd.push(child);
40954
- } else {
40955
- itemsToRemove.push(child);
40956
- }
40957
- });
40958
- this.emitAddChild(itemsToAdd);
40959
- this.emitRemoveChild(itemsToRemove);
40960
- }
40961
- addChild(childId) {
40962
- this.emit({
40963
- class: "Frame",
40964
- method: "addChild",
40965
- item: [this.getId()],
40966
- childId
40967
- });
40968
- }
40969
41023
  applyAddChild(childId, noWarn = false) {
40970
41024
  const children = Array.isArray(childId) ? childId : [childId];
40971
41025
  children.forEach((child) => {
@@ -40986,36 +41040,9 @@ class Frame extends BaseItem {
40986
41040
  this.children = this.children.filter((currChild) => !childId.includes(currChild));
40987
41041
  this.subject.publish(this);
40988
41042
  }
40989
- removeChild(childId) {
40990
- this.emit({
40991
- class: "Frame",
40992
- method: "removeChild",
40993
- item: [this.getId()],
40994
- childId
40995
- });
40996
- }
40997
41043
  getLinkTo() {
40998
41044
  return this.linkTo.link;
40999
41045
  }
41000
- handleNesting(item, options) {
41001
- const isItem = "itemType" in item;
41002
- const itemMbr = isItem ? item.getMbr() : item;
41003
- if (item instanceof Frame) {
41004
- return false;
41005
- }
41006
- if (options?.cancelIfChild && isItem && item.parent !== "Board") {
41007
- return false;
41008
- }
41009
- const frameMbr = this.getMbr().copy();
41010
- if (item.isEnclosedOrCrossedBy(frameMbr)) {
41011
- if (frameMbr.isInside(itemMbr.getCenter())) {
41012
- if (!options || !options.onlyForOut) {
41013
- return true;
41014
- }
41015
- }
41016
- }
41017
- return false;
41018
- }
41019
41046
  initPath() {
41020
41047
  this.path = Frames[this.shapeType].path.copy();
41021
41048
  this.textContainer = Frames[this.shapeType].textBounds.copy();
@@ -52969,7 +52996,7 @@ class BoardSelection {
52969
52996
  if (isParentFrame && isRemoveChildFromFrame) {
52970
52997
  parentFrame.emitRemoveChild([val.item]);
52971
52998
  }
52972
- val.nested.emitAddChild([val.item]);
52999
+ val.nested.addChildItems([val.item]);
52973
53000
  } else if (val.item.parent !== "Board") {
52974
53001
  if (isParentFrame) {
52975
53002
  parentFrame.emitRemoveChild([val.item]);
@@ -54592,7 +54619,7 @@ class SpatialIndex {
54592
54619
  remove(item) {
54593
54620
  if (item instanceof Frame) {
54594
54621
  const newItems = item.getChildrenIds().map((childId) => this.getById(childId)).filter((child) => child !== undefined);
54595
- item.emitRemoveChild(newItems);
54622
+ item.removeChildItems(newItems);
54596
54623
  }
54597
54624
  if (item.parent !== "Board") {
54598
54625
  const parentFrame = this.items.getById(item.parent);
@@ -55671,7 +55698,7 @@ class Board {
55671
55698
  }
55672
55699
  });
55673
55700
  framesMap.forEach((items2, frame) => {
55674
- frame.emitAddChild(items2);
55701
+ frame.addChildItems(items2);
55675
55702
  });
55676
55703
  }
55677
55704
  createItem(id, data) {