dockview-core 6.5.0 → 6.6.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.
@@ -1417,9 +1417,29 @@ var DockviewComponent = /** @class */ (function (_super) {
1417
1417
  return result;
1418
1418
  };
1419
1419
  DockviewComponent.prototype.fromJSON = function (data, options) {
1420
- var e_15, _a, e_16, _b, e_17, _c, e_18, _d, e_19, _e, e_20, _f, e_21, _g, e_22, _h, e_23, _j, e_24, _k;
1420
+ var e_15, _a, e_16, _b, e_17, _c, e_18, _d, e_19, _e, e_20, _f, e_21, _g, e_22, _h, e_23, _j, e_24, _k, e_25, _l;
1421
1421
  var _this = this;
1422
- var _l, _m, _o;
1422
+ var _m, _o, _p;
1423
+ try {
1424
+ // Cancel any popout-restoration timers queued by a previous fromJSON
1425
+ // that haven't fired yet. Each cleanup also disposes the orphan group
1426
+ // that was registered in _groups synchronously but never parented
1427
+ // into a popout window — otherwise the upcoming clear() would call
1428
+ // gridview.remove() on an unparented element and throw
1429
+ // "Invalid grid element". See issue #1304.
1430
+ for (var _q = __values(__spreadArray([], __read(this._popoutRestorationCleanups), false)), _r = _q.next(); !_r.done; _r = _q.next()) {
1431
+ var cleanup = _r.value;
1432
+ cleanup();
1433
+ }
1434
+ }
1435
+ catch (e_15_1) { e_15 = { error: e_15_1 }; }
1436
+ finally {
1437
+ try {
1438
+ if (_r && !_r.done && (_a = _q.return)) _a.call(_q);
1439
+ }
1440
+ finally { if (e_15) throw e_15.error; }
1441
+ }
1442
+ this._popoutRestorationCleanups.clear();
1423
1443
  var existingPanels = new Map();
1424
1444
  var tempGroup;
1425
1445
  if (options === null || options === void 0 ? void 0 : options.reuseExistingPanels) {
@@ -1433,19 +1453,19 @@ var DockviewComponent = /** @class */ (function (_super) {
1433
1453
  this._groups.delete(tempGroup.api.id);
1434
1454
  var newPanels = Object.keys(data.panels);
1435
1455
  try {
1436
- for (var _p = __values(this.panels), _q = _p.next(); !_q.done; _q = _p.next()) {
1437
- var panel = _q.value;
1456
+ for (var _s = __values(this.panels), _t = _s.next(); !_t.done; _t = _s.next()) {
1457
+ var panel = _t.value;
1438
1458
  if (newPanels.includes(panel.api.id)) {
1439
1459
  existingPanels.set(panel.api.id, panel);
1440
1460
  }
1441
1461
  }
1442
1462
  }
1443
- catch (e_15_1) { e_15 = { error: e_15_1 }; }
1463
+ catch (e_16_1) { e_16 = { error: e_16_1 }; }
1444
1464
  finally {
1445
1465
  try {
1446
- if (_q && !_q.done && (_a = _p.return)) _a.call(_p);
1466
+ if (_t && !_t.done && (_b = _s.return)) _b.call(_s);
1447
1467
  }
1448
- finally { if (e_15) throw e_15.error; }
1468
+ finally { if (e_16) throw e_16.error; }
1449
1469
  }
1450
1470
  this.movingLock(function () {
1451
1471
  Array.from(existingPanels.values()).forEach(function (panel) {
@@ -1476,7 +1496,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1476
1496
  var width = this.width;
1477
1497
  var height = this.height;
1478
1498
  var createGroupFromSerializedState_1 = function (data) {
1479
- var e_25, _a;
1499
+ var e_26, _a;
1480
1500
  var id = data.id, locked = data.locked, hideHeader = data.hideHeader, headerPosition = data.headerPosition, views = data.views, activeView = data.activeView;
1481
1501
  if (typeof id !== 'string') {
1482
1502
  throw new Error('dockview: group id must be of type string');
@@ -1514,12 +1534,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1514
1534
  _loop_1(child);
1515
1535
  }
1516
1536
  }
1517
- catch (e_25_1) { e_25 = { error: e_25_1 }; }
1537
+ catch (e_26_1) { e_26 = { error: e_26_1 }; }
1518
1538
  finally {
1519
1539
  try {
1520
1540
  if (views_2_1 && !views_2_1.done && (_a = views_2.return)) _a.call(views_2);
1521
1541
  }
1522
- finally { if (e_25) throw e_25.error; }
1542
+ finally { if (e_26) throw e_26.error; }
1523
1543
  }
1524
1544
  var _loop_2 = function (i) {
1525
1545
  var panel = createdPanels[i];
@@ -1567,39 +1587,39 @@ var DockviewComponent = /** @class */ (function (_super) {
1567
1587
  // Auto-create edge groups for positions in the serialized state
1568
1588
  // that don't already have a group registered (e.g. when fromJSON
1569
1589
  // is called before the user has called addEdgeGroup).
1570
- for (var _r = __values([
1590
+ for (var _u = __values([
1571
1591
  'top',
1572
1592
  'bottom',
1573
1593
  'left',
1574
1594
  'right',
1575
- ]), _s = _r.next(); !_s.done; _s = _r.next()) {
1576
- var _position = _s.value;
1595
+ ]), _v = _u.next(); !_v.done; _v = _u.next()) {
1596
+ var _position = _v.value;
1577
1597
  var fixedData = data.edgeGroups[_position];
1578
1598
  if (fixedData && !this._edgeGroups.has(_position)) {
1579
1599
  var groupState = fixedData.group;
1580
- var id = (_l = groupState === null || groupState === void 0 ? void 0 : groupState.id) !== null && _l !== void 0 ? _l : "".concat(_position, "-group");
1600
+ var id = (_m = groupState === null || groupState === void 0 ? void 0 : groupState.id) !== null && _m !== void 0 ? _m : "".concat(_position, "-group");
1581
1601
  this.addEdgeGroup(_position, { id: id });
1582
1602
  }
1583
1603
  }
1584
1604
  }
1585
- catch (e_16_1) { e_16 = { error: e_16_1 }; }
1605
+ catch (e_17_1) { e_17 = { error: e_17_1 }; }
1586
1606
  finally {
1587
1607
  try {
1588
- if (_s && !_s.done && (_b = _r.return)) _b.call(_r);
1608
+ if (_v && !_v.done && (_c = _u.return)) _c.call(_u);
1589
1609
  }
1590
- finally { if (e_16) throw e_16.error; }
1610
+ finally { if (e_17) throw e_17.error; }
1591
1611
  }
1592
1612
  try {
1593
1613
  // Restore panel contents of edge groups
1594
- for (var _t = __values(this._edgeGroups), _u = _t.next(); !_u.done; _u = _t.next()) {
1595
- var _v = __read(_u.value, 2), position = _v[0], edgeGroup = _v[1];
1614
+ for (var _w = __values(this._edgeGroups), _x = _w.next(); !_x.done; _x = _w.next()) {
1615
+ var _y = __read(_x.value, 2), position = _y[0], edgeGroup = _y[1];
1596
1616
  var edgeData = data.edgeGroups[position];
1597
1617
  var groupState = edgeData === null || edgeData === void 0 ? void 0 : edgeData.group;
1598
1618
  if (groupState) {
1599
1619
  var views = groupState.views, activeView = groupState.activeView;
1600
1620
  var createdPanels = [];
1601
1621
  try {
1602
- for (var views_1 = (e_18 = void 0, __values(views)), views_1_1 = views_1.next(); !views_1_1.done; views_1_1 = views_1.next()) {
1622
+ for (var views_1 = (e_19 = void 0, __values(views)), views_1_1 = views_1.next(); !views_1_1.done; views_1_1 = views_1.next()) {
1603
1623
  var panelId = views_1_1.value;
1604
1624
  if (panels[panelId]) {
1605
1625
  var panel = this._deserializer.fromJSON(panels[panelId], edgeGroup);
@@ -1607,12 +1627,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1607
1627
  }
1608
1628
  }
1609
1629
  }
1610
- catch (e_18_1) { e_18 = { error: e_18_1 }; }
1630
+ catch (e_19_1) { e_19 = { error: e_19_1 }; }
1611
1631
  finally {
1612
1632
  try {
1613
- if (views_1_1 && !views_1_1.done && (_d = views_1.return)) _d.call(views_1);
1633
+ if (views_1_1 && !views_1_1.done && (_e = views_1.return)) _e.call(views_1);
1614
1634
  }
1615
- finally { if (e_18) throw e_18.error; }
1635
+ finally { if (e_19) throw e_19.error; }
1616
1636
  }
1617
1637
  for (var i = 0; i < createdPanels.length; i++) {
1618
1638
  var panel = createdPanels[i];
@@ -1634,16 +1654,16 @@ var DockviewComponent = /** @class */ (function (_super) {
1634
1654
  }
1635
1655
  }
1636
1656
  }
1637
- catch (e_17_1) { e_17 = { error: e_17_1 }; }
1657
+ catch (e_18_1) { e_18 = { error: e_18_1 }; }
1638
1658
  finally {
1639
1659
  try {
1640
- if (_u && !_u.done && (_c = _t.return)) _c.call(_t);
1660
+ if (_x && !_x.done && (_d = _w.return)) _d.call(_w);
1641
1661
  }
1642
- finally { if (e_17) throw e_17.error; }
1662
+ finally { if (e_18) throw e_18.error; }
1643
1663
  }
1644
1664
  this._shellManager.fromJSON(data.edgeGroups);
1645
1665
  }
1646
- var serializedFloatingGroups = (_m = data.floatingGroups) !== null && _m !== void 0 ? _m : [];
1666
+ var serializedFloatingGroups = (_o = data.floatingGroups) !== null && _o !== void 0 ? _o : [];
1647
1667
  try {
1648
1668
  for (var serializedFloatingGroups_1 = __values(serializedFloatingGroups), serializedFloatingGroups_1_1 = serializedFloatingGroups_1.next(); !serializedFloatingGroups_1_1.done; serializedFloatingGroups_1_1 = serializedFloatingGroups_1.next()) {
1649
1669
  var serializedFloatingGroup = serializedFloatingGroups_1_1.value;
@@ -1658,14 +1678,14 @@ var DockviewComponent = /** @class */ (function (_super) {
1658
1678
  });
1659
1679
  }
1660
1680
  }
1661
- catch (e_19_1) { e_19 = { error: e_19_1 }; }
1681
+ catch (e_20_1) { e_20 = { error: e_20_1 }; }
1662
1682
  finally {
1663
1683
  try {
1664
- if (serializedFloatingGroups_1_1 && !serializedFloatingGroups_1_1.done && (_e = serializedFloatingGroups_1.return)) _e.call(serializedFloatingGroups_1);
1684
+ if (serializedFloatingGroups_1_1 && !serializedFloatingGroups_1_1.done && (_f = serializedFloatingGroups_1.return)) _f.call(serializedFloatingGroups_1);
1665
1685
  }
1666
- finally { if (e_19) throw e_19.error; }
1686
+ finally { if (e_20) throw e_20.error; }
1667
1687
  }
1668
- var serializedPopoutGroups = (_o = data.popoutGroups) !== null && _o !== void 0 ? _o : [];
1688
+ var serializedPopoutGroups = (_p = data.popoutGroups) !== null && _p !== void 0 ? _p : [];
1669
1689
  // Create a promise that resolves when all popout groups are created
1670
1690
  var popoutPromises_1 = [];
1671
1691
  // Queue popup group creation with delays to avoid browser blocking
@@ -1675,8 +1695,36 @@ var DockviewComponent = /** @class */ (function (_super) {
1675
1695
  // Add a small delay for each popup after the first to avoid browser popup blocking
1676
1696
  var popoutPromise = new Promise(function (resolve) {
1677
1697
  var cleanup = function () {
1698
+ var e_27, _a;
1678
1699
  _this._popoutRestorationCleanups.delete(cleanup);
1679
1700
  clearTimeout(handle);
1701
+ // The group was registered in _groups synchronously
1702
+ // but the timer that would parent it into the popout
1703
+ // window never ran. Dispose the orphan here so the
1704
+ // next clear() doesn't trip over an unparented
1705
+ // element. See issue #1304.
1706
+ if (!_this.isDisposed &&
1707
+ _this._groups.has(group.id) &&
1708
+ group.element.parentElement === null) {
1709
+ try {
1710
+ for (var _b = __values(__spreadArray([], __read(group.panels), false)), _c = _b.next(); !_c.done; _c = _b.next()) {
1711
+ var panel = _c.value;
1712
+ _this.removePanel(panel, {
1713
+ removeEmptyGroup: false,
1714
+ });
1715
+ }
1716
+ }
1717
+ catch (e_27_1) { e_27 = { error: e_27_1 }; }
1718
+ finally {
1719
+ try {
1720
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
1721
+ }
1722
+ finally { if (e_27) throw e_27.error; }
1723
+ }
1724
+ group.dispose();
1725
+ _this._groups.delete(group.id);
1726
+ _this._onDidRemoveGroup.fire(group);
1727
+ }
1680
1728
  resolve();
1681
1729
  };
1682
1730
  var handle = setTimeout(function () {
@@ -1710,17 +1758,17 @@ var DockviewComponent = /** @class */ (function (_super) {
1710
1758
  // Store the promise for tests to wait on
1711
1759
  this._popoutRestorationPromise = Promise.all(popoutPromises_1).then(function () { return void 0; });
1712
1760
  try {
1713
- for (var _w = __values(this._floatingGroups), _x = _w.next(); !_x.done; _x = _w.next()) {
1714
- var floatingGroup = _x.value;
1761
+ for (var _z = __values(this._floatingGroups), _0 = _z.next(); !_0.done; _0 = _z.next()) {
1762
+ var floatingGroup = _0.value;
1715
1763
  floatingGroup.overlay.setBounds();
1716
1764
  }
1717
1765
  }
1718
- catch (e_20_1) { e_20 = { error: e_20_1 }; }
1766
+ catch (e_21_1) { e_21 = { error: e_21_1 }; }
1719
1767
  finally {
1720
1768
  try {
1721
- if (_x && !_x.done && (_f = _w.return)) _f.call(_w);
1769
+ if (_0 && !_0.done && (_g = _z.return)) _g.call(_z);
1722
1770
  }
1723
- finally { if (e_20) throw e_20.error; }
1771
+ finally { if (e_21) throw e_21.error; }
1724
1772
  }
1725
1773
  if (typeof activeGroup === 'string') {
1726
1774
  var panel = this.getPanel(activeGroup);
@@ -1735,65 +1783,65 @@ var DockviewComponent = /** @class */ (function (_super) {
1735
1783
  /**
1736
1784
  * Takes all the successfully created groups and remove all of their panels.
1737
1785
  */
1738
- for (var _y = __values(this.groups), _z = _y.next(); !_z.done; _z = _y.next()) {
1739
- var group = _z.value;
1786
+ for (var _1 = __values(this.groups), _2 = _1.next(); !_2.done; _2 = _1.next()) {
1787
+ var group = _2.value;
1740
1788
  try {
1741
- for (var _0 = (e_22 = void 0, __values(group.panels)), _1 = _0.next(); !_1.done; _1 = _0.next()) {
1742
- var panel = _1.value;
1789
+ for (var _3 = (e_23 = void 0, __values(group.panels)), _4 = _3.next(); !_4.done; _4 = _3.next()) {
1790
+ var panel = _4.value;
1743
1791
  this.removePanel(panel, {
1744
1792
  removeEmptyGroup: false,
1745
1793
  skipDispose: false,
1746
1794
  });
1747
1795
  }
1748
1796
  }
1749
- catch (e_22_1) { e_22 = { error: e_22_1 }; }
1797
+ catch (e_23_1) { e_23 = { error: e_23_1 }; }
1750
1798
  finally {
1751
1799
  try {
1752
- if (_1 && !_1.done && (_h = _0.return)) _h.call(_0);
1800
+ if (_4 && !_4.done && (_j = _3.return)) _j.call(_3);
1753
1801
  }
1754
- finally { if (e_22) throw e_22.error; }
1802
+ finally { if (e_23) throw e_23.error; }
1755
1803
  }
1756
1804
  }
1757
1805
  }
1758
- catch (e_21_1) { e_21 = { error: e_21_1 }; }
1806
+ catch (e_22_1) { e_22 = { error: e_22_1 }; }
1759
1807
  finally {
1760
1808
  try {
1761
- if (_z && !_z.done && (_g = _y.return)) _g.call(_y);
1809
+ if (_2 && !_2.done && (_h = _1.return)) _h.call(_1);
1762
1810
  }
1763
- finally { if (e_21) throw e_21.error; }
1811
+ finally { if (e_22) throw e_22.error; }
1764
1812
  }
1765
1813
  try {
1766
1814
  /**
1767
1815
  * To remove a group we cannot call this.removeGroup(...) since this makes assumptions about
1768
1816
  * the underlying HTMLElement existing in the Gridview.
1769
1817
  */
1770
- for (var _2 = __values(this.groups), _3 = _2.next(); !_3.done; _3 = _2.next()) {
1771
- var group = _3.value;
1818
+ for (var _5 = __values(this.groups), _6 = _5.next(); !_6.done; _6 = _5.next()) {
1819
+ var group = _6.value;
1772
1820
  group.dispose();
1773
1821
  this._groups.delete(group.id);
1774
1822
  this._onDidRemoveGroup.fire(group);
1775
1823
  }
1776
1824
  }
1777
- catch (e_23_1) { e_23 = { error: e_23_1 }; }
1825
+ catch (e_24_1) { e_24 = { error: e_24_1 }; }
1778
1826
  finally {
1779
1827
  try {
1780
- if (_3 && !_3.done && (_j = _2.return)) _j.call(_2);
1828
+ if (_6 && !_6.done && (_k = _5.return)) _k.call(_5);
1781
1829
  }
1782
- finally { if (e_23) throw e_23.error; }
1830
+ finally { if (e_24) throw e_24.error; }
1783
1831
  }
1784
1832
  try {
1785
1833
  // iterate over a reassigned array since original array will be modified
1786
- for (var _4 = __values(__spreadArray([], __read(this._floatingGroups), false)), _5 = _4.next(); !_5.done; _5 = _4.next()) {
1787
- var floatingGroup = _5.value;
1834
+ for (var _7 = __values(__spreadArray([], __read(this._floatingGroups), false)), _8 = _7.next(); !_8.done; _8 = _7.next()) {
1835
+ var floatingGroup = _8.value;
1788
1836
  floatingGroup.dispose();
1789
1837
  }
1790
1838
  }
1791
- catch (e_24_1) { e_24 = { error: e_24_1 }; }
1839
+ catch (e_25_1) { e_25 = { error: e_25_1 }; }
1792
1840
  finally {
1793
1841
  try {
1794
- if (_5 && !_5.done && (_k = _4.return)) _k.call(_4);
1842
+ if (_8 && !_8.done && (_l = _7.return)) _l.call(_7);
1795
1843
  }
1796
- finally { if (e_24) throw e_24.error; }
1844
+ finally { if (e_25) throw e_25.error; }
1797
1845
  }
1798
1846
  // fires clean-up events and clears the underlying HTML gridview.
1799
1847
  this.clear();
@@ -1810,7 +1858,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1810
1858
  this._onDidLayoutFromJSON.fire();
1811
1859
  };
1812
1860
  DockviewComponent.prototype.clear = function () {
1813
- var e_26, _a, e_27, _b;
1861
+ var e_28, _a, e_29, _b;
1814
1862
  var groups = Array.from(this._groups.values()).map(function (_) { return _.value; });
1815
1863
  var hasActiveGroup = !!this.activeGroup;
1816
1864
  try {
@@ -1820,17 +1868,17 @@ var DockviewComponent = /** @class */ (function (_super) {
1820
1868
  // Edge groups are structural - only clear their panels, not the group itself
1821
1869
  var panels = __spreadArray([], __read(group.panels), false);
1822
1870
  try {
1823
- for (var panels_1 = (e_27 = void 0, __values(panels)), panels_1_1 = panels_1.next(); !panels_1_1.done; panels_1_1 = panels_1.next()) {
1871
+ for (var panels_1 = (e_29 = void 0, __values(panels)), panels_1_1 = panels_1.next(); !panels_1_1.done; panels_1_1 = panels_1.next()) {
1824
1872
  var panel = panels_1_1.value;
1825
1873
  this.removePanel(panel, { removeEmptyGroup: false });
1826
1874
  }
1827
1875
  }
1828
- catch (e_27_1) { e_27 = { error: e_27_1 }; }
1876
+ catch (e_29_1) { e_29 = { error: e_29_1 }; }
1829
1877
  finally {
1830
1878
  try {
1831
1879
  if (panels_1_1 && !panels_1_1.done && (_b = panels_1.return)) _b.call(panels_1);
1832
1880
  }
1833
- finally { if (e_27) throw e_27.error; }
1881
+ finally { if (e_29) throw e_29.error; }
1834
1882
  }
1835
1883
  continue;
1836
1884
  }
@@ -1838,12 +1886,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1838
1886
  this.removeGroup(group, { skipActive: true });
1839
1887
  }
1840
1888
  }
1841
- catch (e_26_1) { e_26 = { error: e_26_1 }; }
1889
+ catch (e_28_1) { e_28 = { error: e_28_1 }; }
1842
1890
  finally {
1843
1891
  try {
1844
1892
  if (groups_1_1 && !groups_1_1.done && (_a = groups_1.return)) _a.call(groups_1);
1845
1893
  }
1846
- finally { if (e_26) throw e_26.error; }
1894
+ finally { if (e_28) throw e_28.error; }
1847
1895
  }
1848
1896
  if (hasActiveGroup) {
1849
1897
  this.doSetGroupAndPanelActive(undefined);
@@ -1851,7 +1899,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1851
1899
  this.gridview.clear();
1852
1900
  };
1853
1901
  DockviewComponent.prototype.closeAllGroups = function () {
1854
- var e_28, _a;
1902
+ var e_30, _a;
1855
1903
  try {
1856
1904
  for (var _b = __values(this._groups.entries()), _c = _b.next(); !_c.done; _c = _b.next()) {
1857
1905
  var entry = _c.value;
@@ -1859,12 +1907,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1859
1907
  group.value.model.closeAllPanels();
1860
1908
  }
1861
1909
  }
1862
- catch (e_28_1) { e_28 = { error: e_28_1 }; }
1910
+ catch (e_30_1) { e_30 = { error: e_30_1 }; }
1863
1911
  finally {
1864
1912
  try {
1865
1913
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
1866
1914
  }
1867
- finally { if (e_28) throw e_28.error; }
1915
+ finally { if (e_30) throw e_30.error; }
1868
1916
  }
1869
1917
  };
1870
1918
  DockviewComponent.prototype.addPanel = function (options) {
@@ -2116,7 +2164,7 @@ var DockviewComponent = /** @class */ (function (_super) {
2116
2164
  this.doRemoveGroup(group, options);
2117
2165
  };
2118
2166
  DockviewComponent.prototype.doRemoveGroup = function (group, options) {
2119
- var e_29, _a;
2167
+ var e_31, _a;
2120
2168
  var _b;
2121
2169
  // Edge groups are permanent structural elements - never remove them from the layout
2122
2170
  if (__spreadArray([], __read(this._edgeGroups.values()), false).includes(group)) {
@@ -2133,12 +2181,12 @@ var DockviewComponent = /** @class */ (function (_super) {
2133
2181
  });
2134
2182
  }
2135
2183
  }
2136
- catch (e_29_1) { e_29 = { error: e_29_1 }; }
2184
+ catch (e_31_1) { e_31 = { error: e_31_1 }; }
2137
2185
  finally {
2138
2186
  try {
2139
2187
  if (panels_2_1 && !panels_2_1.done && (_a = panels_2.return)) _a.call(panels_2);
2140
2188
  }
2141
- finally { if (e_29) throw e_29.error; }
2189
+ finally { if (e_31) throw e_31.error; }
2142
2190
  }
2143
2191
  }
2144
2192
  var activePanel = this.activePanel;
@@ -2470,9 +2518,9 @@ var DockviewComponent = /** @class */ (function (_super) {
2470
2518
  return;
2471
2519
  }
2472
2520
  var addPanelsToGroup = function (targetGroup) {
2473
- var e_30, _a, e_31, _b;
2521
+ var e_32, _a, e_33, _b;
2474
2522
  _this.movingLock(function () {
2475
- var e_32, _a;
2523
+ var e_34, _a;
2476
2524
  try {
2477
2525
  for (var removedPanels_3 = __values(removedPanels), removedPanels_3_1 = removedPanels_3.next(); !removedPanels_3_1.done; removedPanels_3_1 = removedPanels_3.next()) {
2478
2526
  var panel = removedPanels_3_1.value;
@@ -2483,12 +2531,12 @@ var DockviewComponent = /** @class */ (function (_super) {
2483
2531
  });
2484
2532
  }
2485
2533
  }
2486
- catch (e_32_1) { e_32 = { error: e_32_1 }; }
2534
+ catch (e_34_1) { e_34 = { error: e_34_1 }; }
2487
2535
  finally {
2488
2536
  try {
2489
2537
  if (removedPanels_3_1 && !removedPanels_3_1.done && (_a = removedPanels_3.return)) _a.call(removedPanels_3);
2490
2538
  }
2491
- finally { if (e_32) throw e_32.error; }
2539
+ finally { if (e_34) throw e_34.error; }
2492
2540
  }
2493
2541
  });
2494
2542
  // Recreate the tab group in the destination
@@ -2504,12 +2552,12 @@ var DockviewComponent = /** @class */ (function (_super) {
2504
2552
  targetGroup.model.addPanelToTabGroup(newTabGroup.id, panel.id);
2505
2553
  }
2506
2554
  }
2507
- catch (e_30_1) { e_30 = { error: e_30_1 }; }
2555
+ catch (e_32_1) { e_32 = { error: e_32_1 }; }
2508
2556
  finally {
2509
2557
  try {
2510
2558
  if (removedPanels_1_1 && !removedPanels_1_1.done && (_a = removedPanels_1.return)) _a.call(removedPanels_1);
2511
2559
  }
2512
- finally { if (e_30) throw e_30.error; }
2560
+ finally { if (e_32) throw e_32.error; }
2513
2561
  }
2514
2562
  if (!options.skipSetActive) {
2515
2563
  _this.doSetGroupAndPanelActive(targetGroup);
@@ -2523,12 +2571,12 @@ var DockviewComponent = /** @class */ (function (_super) {
2523
2571
  });
2524
2572
  }
2525
2573
  }
2526
- catch (e_31_1) { e_31 = { error: e_31_1 }; }
2574
+ catch (e_33_1) { e_33 = { error: e_33_1 }; }
2527
2575
  finally {
2528
2576
  try {
2529
2577
  if (removedPanels_2_1 && !removedPanels_2_1.done && (_b = removedPanels_2.return)) _b.call(removedPanels_2);
2530
2578
  }
2531
- finally { if (e_31) throw e_31.error; }
2579
+ finally { if (e_33) throw e_33.error; }
2532
2580
  }
2533
2581
  };
2534
2582
  var targetGroup;
@@ -2554,7 +2602,7 @@ var DockviewComponent = /** @class */ (function (_super) {
2554
2602
  addPanelsToGroup(targetGroup);
2555
2603
  };
2556
2604
  DockviewComponent.prototype.moveGroup = function (options) {
2557
- var e_33, _a, e_34, _b, e_35, _c, e_36, _d;
2605
+ var e_35, _a, e_36, _b, e_37, _c, e_38, _d;
2558
2606
  var _this = this;
2559
2607
  var from = options.from.group;
2560
2608
  var to = options.to.group;
@@ -2586,7 +2634,7 @@ var DockviewComponent = /** @class */ (function (_super) {
2586
2634
  this.doRemoveGroup(from, { skipActive: true });
2587
2635
  }
2588
2636
  this.movingLock(function () {
2589
- var e_37, _a;
2637
+ var e_39, _a;
2590
2638
  try {
2591
2639
  for (var panels_4 = __values(panels_3), panels_4_1 = panels_4.next(); !panels_4_1.done; panels_4_1 = panels_4.next()) {
2592
2640
  var panel = panels_4_1.value;
@@ -2596,12 +2644,12 @@ var DockviewComponent = /** @class */ (function (_super) {
2596
2644
  });
2597
2645
  }
2598
2646
  }
2599
- catch (e_37_1) { e_37 = { error: e_37_1 }; }
2647
+ catch (e_39_1) { e_39 = { error: e_39_1 }; }
2600
2648
  finally {
2601
2649
  try {
2602
2650
  if (panels_4_1 && !panels_4_1.done && (_a = panels_4.return)) _a.call(panels_4);
2603
2651
  }
2604
- finally { if (e_37) throw e_37.error; }
2652
+ finally { if (e_39) throw e_39.error; }
2605
2653
  }
2606
2654
  });
2607
2655
  try {
@@ -2614,26 +2662,26 @@ var DockviewComponent = /** @class */ (function (_super) {
2614
2662
  componentParams: snapshot.componentParams,
2615
2663
  });
2616
2664
  try {
2617
- for (var _e = (e_34 = void 0, __values(snapshot.panelIds)), _f = _e.next(); !_f.done; _f = _e.next()) {
2665
+ for (var _e = (e_36 = void 0, __values(snapshot.panelIds)), _f = _e.next(); !_f.done; _f = _e.next()) {
2618
2666
  var panelId = _f.value;
2619
2667
  to.model.addPanelToTabGroup(newTabGroup.id, panelId);
2620
2668
  }
2621
2669
  }
2622
- catch (e_34_1) { e_34 = { error: e_34_1 }; }
2670
+ catch (e_36_1) { e_36 = { error: e_36_1 }; }
2623
2671
  finally {
2624
2672
  try {
2625
2673
  if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
2626
2674
  }
2627
- finally { if (e_34) throw e_34.error; }
2675
+ finally { if (e_36) throw e_36.error; }
2628
2676
  }
2629
2677
  }
2630
2678
  }
2631
- catch (e_33_1) { e_33 = { error: e_33_1 }; }
2679
+ catch (e_35_1) { e_35 = { error: e_35_1 }; }
2632
2680
  finally {
2633
2681
  try {
2634
2682
  if (tabGroupSnapshots_1_1 && !tabGroupSnapshots_1_1.done && (_a = tabGroupSnapshots_1.return)) _a.call(tabGroupSnapshots_1);
2635
2683
  }
2636
- finally { if (e_33) throw e_33.error; }
2684
+ finally { if (e_35) throw e_35.error; }
2637
2685
  }
2638
2686
  // Ensure group becomes active after move
2639
2687
  if (options.skipSetActive !== true) {
@@ -2676,7 +2724,7 @@ var DockviewComponent = /** @class */ (function (_super) {
2676
2724
  });
2677
2725
  source = this.createGroup();
2678
2726
  this.movingLock(function () {
2679
- var e_38, _a;
2727
+ var e_40, _a;
2680
2728
  try {
2681
2729
  for (var movedPanels_2 = __values(movedPanels_1), movedPanels_2_1 = movedPanels_2.next(); !movedPanels_2_1.done; movedPanels_2_1 = movedPanels_2.next()) {
2682
2730
  var panel = movedPanels_2_1.value;
@@ -2686,12 +2734,12 @@ var DockviewComponent = /** @class */ (function (_super) {
2686
2734
  });
2687
2735
  }
2688
2736
  }
2689
- catch (e_38_1) { e_38 = { error: e_38_1 }; }
2737
+ catch (e_40_1) { e_40 = { error: e_40_1 }; }
2690
2738
  finally {
2691
2739
  try {
2692
2740
  if (movedPanels_2_1 && !movedPanels_2_1.done && (_a = movedPanels_2.return)) _a.call(movedPanels_2);
2693
2741
  }
2694
- finally { if (e_38) throw e_38.error; }
2742
+ finally { if (e_40) throw e_40.error; }
2695
2743
  }
2696
2744
  });
2697
2745
  try {
@@ -2704,26 +2752,26 @@ var DockviewComponent = /** @class */ (function (_super) {
2704
2752
  componentParams: snapshot.componentParams,
2705
2753
  });
2706
2754
  try {
2707
- for (var _g = (e_36 = void 0, __values(snapshot.panelIds)), _h = _g.next(); !_h.done; _h = _g.next()) {
2755
+ for (var _g = (e_38 = void 0, __values(snapshot.panelIds)), _h = _g.next(); !_h.done; _h = _g.next()) {
2708
2756
  var panelId = _h.value;
2709
2757
  source.model.addPanelToTabGroup(newTabGroup.id, panelId);
2710
2758
  }
2711
2759
  }
2712
- catch (e_36_1) { e_36 = { error: e_36_1 }; }
2760
+ catch (e_38_1) { e_38 = { error: e_38_1 }; }
2713
2761
  finally {
2714
2762
  try {
2715
2763
  if (_h && !_h.done && (_d = _g.return)) _d.call(_g);
2716
2764
  }
2717
- finally { if (e_36) throw e_36.error; }
2765
+ finally { if (e_38) throw e_38.error; }
2718
2766
  }
2719
2767
  }
2720
2768
  }
2721
- catch (e_35_1) { e_35 = { error: e_35_1 }; }
2769
+ catch (e_37_1) { e_37 = { error: e_37_1 }; }
2722
2770
  finally {
2723
2771
  try {
2724
2772
  if (tabGroupSnapshots_2_1 && !tabGroupSnapshots_2_1.done && (_c = tabGroupSnapshots_2.return)) _c.call(tabGroupSnapshots_2);
2725
2773
  }
2726
- finally { if (e_35) throw e_35.error; }
2774
+ finally { if (e_37) throw e_37.error; }
2727
2775
  }
2728
2776
  }
2729
2777
  else {
@@ -3030,7 +3078,7 @@ var DockviewComponent = /** @class */ (function (_super) {
3030
3078
  }
3031
3079
  };
3032
3080
  DockviewComponent.prototype.updateTheme = function () {
3033
- var e_39, _a;
3081
+ var e_41, _a;
3034
3082
  var _b, _c, _d, _e, _f, _g, _h, _j, _k;
3035
3083
  var theme = (_b = this._options.theme) !== null && _b !== void 0 ? _b : theme_1.themeAbyss;
3036
3084
  // Apply the theme class only to the shell so edge groups and the
@@ -3071,12 +3119,12 @@ var DockviewComponent = /** @class */ (function (_super) {
3071
3119
  group.model.updateTabGroups();
3072
3120
  }
3073
3121
  }
3074
- catch (e_39_1) { e_39 = { error: e_39_1 }; }
3122
+ catch (e_41_1) { e_41 = { error: e_41_1 }; }
3075
3123
  finally {
3076
3124
  try {
3077
3125
  if (_m && !_m.done && (_a = _l.return)) _a.call(_l);
3078
3126
  }
3079
- finally { if (e_39) throw e_39.error; }
3127
+ finally { if (e_41) throw e_41.error; }
3080
3128
  }
3081
3129
  };
3082
3130
  return DockviewComponent;