@univerjs/sheets-ui 0.10.11 → 0.10.12-nightly.202510221114

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/es/index.js CHANGED
@@ -1529,11 +1529,15 @@ class cm extends se {
1529
1529
  * @returns {ISelectionWithCoord[]} {range, primary, style}[]
1530
1530
  */
1531
1531
  getSelectionDataWithStyle() {
1532
- const t = this._selectionControls, [n, i] = this._skeleton.getLocation();
1533
- return t.map((o) => {
1534
- const s = o.getValue();
1535
- return s.rangeWithCoord.sheetId = i, s.rangeWithCoord.unitId = n, s;
1536
- });
1532
+ const t = this._selectionControls;
1533
+ if (this._skeleton.worksheet) {
1534
+ const [n, i] = this._skeleton.getLocation();
1535
+ return t.map((o) => {
1536
+ const s = o.getValue();
1537
+ return s.rangeWithCoord.sheetId = i, s.rangeWithCoord.unitId = n, s;
1538
+ });
1539
+ }
1540
+ return [];
1537
1541
  }
1538
1542
  /**
1539
1543
  * @TODO lumixraku DO NOT expose private props.
@@ -6516,8 +6520,8 @@ let wi = class extends se {
6516
6520
  e && (this.disposeWithMe(
6517
6521
  We(
6518
6522
  this._scrollManagerService.rawScrollInfo$.subscribe((t) => {
6519
- var h;
6520
- const n = (h = this._sheetSkeletonManagerService.getCurrentParam()) == null ? void 0 : h.skeleton;
6523
+ var g;
6524
+ const n = (g = this._sheetSkeletonManagerService.getCurrentParam()) == null ? void 0 : g.skeleton;
6521
6525
  if (!n) return;
6522
6526
  if (t == null) {
6523
6527
  e.scrollToViewportPos({
@@ -6526,12 +6530,12 @@ let wi = class extends se {
6526
6530
  });
6527
6531
  return;
6528
6532
  }
6529
- const { sheetViewStartRow: i, sheetViewStartColumn: o, offsetX: s, offsetY: l } = t, { startX: a, startY: c } = n.getCellWithCoordByIndex(
6533
+ const { sheetViewStartRow: i, sheetViewStartColumn: o, offsetX: s, offsetY: l, duration: a } = t, { startX: c, startY: d } = n.getCellWithCoordByIndex(
6530
6534
  i,
6531
6535
  o,
6532
6536
  !1
6533
- ), d = a + s, u = c + l;
6534
- e.scrollToViewportPos({ viewportScrollX: d, viewportScrollY: u });
6537
+ ), u = c + s, h = d + l;
6538
+ a ? this._smoothScrollToViewportPos({ viewportMain: e, viewportScrollX: u, viewportScrollY: h, duration: a }) : e.scrollToViewportPos({ viewportScrollX: u, viewportScrollY: h });
6535
6539
  })
6536
6540
  )
6537
6541
  ), this.disposeWithMe(
@@ -6602,6 +6606,17 @@ let wi = class extends se {
6602
6606
  })
6603
6607
  ));
6604
6608
  }
6609
+ _smoothScrollToViewportPos(r) {
6610
+ const { viewportMain: e, viewportScrollX: t, viewportScrollY: n, duration: i } = r, o = performance.now(), s = e.viewportScrollX, l = e.viewportScrollY, a = t - s, c = n - l;
6611
+ function d(u) {
6612
+ const h = u - o, g = Math.min(h / i, 1), m = 1 - (1 - g) ** 3, f = s + a * m, v = l + c * m;
6613
+ e.scrollToViewportPos({
6614
+ viewportScrollX: f,
6615
+ viewportScrollY: v
6616
+ }), g < 1 && requestAnimationFrame(d);
6617
+ }
6618
+ requestAnimationFrame(d);
6619
+ }
6605
6620
  _updateViewportScroll(r = 0, e = 0) {
6606
6621
  const t = this._getSheetObject();
6607
6622
  if (!t) return;
@@ -6626,16 +6641,17 @@ let wi = class extends se {
6626
6641
  * @param {number} column - Cell column
6627
6642
  * @returns {boolean} - true if scroll is successful
6628
6643
  */
6629
- scrollToCell(r, e) {
6630
- const t = this._context.unit.getActiveSheet(), {
6631
- ySplit: n,
6632
- xSplit: i
6633
- } = t.getFreeze();
6644
+ scrollToCell(r, e, t) {
6645
+ const n = this._context.unit.getActiveSheet(), {
6646
+ ySplit: i,
6647
+ xSplit: o
6648
+ } = n.getFreeze();
6634
6649
  return this._commandService.syncExecuteCommand(fn.id, {
6635
- sheetViewStartRow: r - n,
6636
- sheetViewStartColumn: e - i,
6650
+ sheetViewStartRow: r - i,
6651
+ sheetViewStartColumn: e - o,
6637
6652
  offsetX: 0,
6638
- offsetY: 0
6653
+ offsetY: 0,
6654
+ duration: t
6639
6655
  });
6640
6656
  }
6641
6657
  _initCommandListener() {
@@ -6816,14 +6832,15 @@ const mn = {
6816
6832
  handler: (r, e) => {
6817
6833
  if (!e)
6818
6834
  return !1;
6819
- const { unitId: t, sheetId: n, offsetX: i, offsetY: o, sheetViewStartColumn: s, sheetViewStartRow: l } = e;
6835
+ const { unitId: t, sheetId: n, offsetX: i, offsetY: o, sheetViewStartColumn: s, sheetViewStartRow: l, duration: a } = e;
6820
6836
  return r.get(ve).getRenderById(t).with(Et).emitRawScrollParam({
6821
6837
  unitId: t,
6822
6838
  sheetId: n,
6823
6839
  offsetX: i,
6824
6840
  offsetY: o,
6825
6841
  sheetViewStartRow: l,
6826
- sheetViewStartColumn: s
6842
+ sheetViewStartColumn: s,
6843
+ duration: a
6827
6844
  }), !0;
6828
6845
  }
6829
6846
  }, Po = {
@@ -6864,22 +6881,23 @@ const mn = {
6864
6881
  const { workbook: o, worksheet: s, unitId: l } = i, c = n.getRenderById(l).with(Et).getCurrentScrollState();
6865
6882
  if (!s)
6866
6883
  return !1;
6867
- const { sheetViewStartRow: d, sheetViewStartColumn: u, offsetX: h, offsetY: g } = e, {
6868
- sheetViewStartColumn: m,
6869
- sheetViewStartRow: f,
6870
- offsetX: v,
6871
- offsetY: p
6872
- } = c || {}, { xSplit: C, ySplit: w } = i.worksheet.getConfig().freeze;
6884
+ const { sheetViewStartRow: d, sheetViewStartColumn: u, offsetX: h, offsetY: g, duration: m } = e, {
6885
+ sheetViewStartColumn: f,
6886
+ sheetViewStartRow: v,
6887
+ offsetX: p,
6888
+ offsetY: C
6889
+ } = c || {}, { xSplit: w, ySplit: S } = i.worksheet.getConfig().freeze;
6873
6890
  return r.get(W).syncExecuteCommand(mn.id, {
6874
6891
  unitId: o.getUnitId(),
6875
6892
  sheetId: s.getSheetId(),
6876
6893
  // why + ySplit? receiver - ySplit in scroll.operation.ts
6877
6894
  // sheetViewStartRow: sheetViewStartRow + ySplit,
6878
6895
  // sheetViewStartColumn: sheetViewStartColumn + xSplit,
6879
- sheetViewStartRow: d != null ? d : f != null ? f : 0 + w,
6880
- sheetViewStartColumn: u != null ? u : m != null ? m : 0 + C,
6881
- offsetX: h != null ? h : v,
6882
- offsetY: g != null ? g : p
6896
+ sheetViewStartRow: d != null ? d : v != null ? v : 0 + S,
6897
+ sheetViewStartColumn: u != null ? u : f != null ? f : 0 + w,
6898
+ offsetX: h != null ? h : p,
6899
+ offsetY: g != null ? g : C,
6900
+ duration: m
6883
6901
  });
6884
6902
  }
6885
6903
  }, Tm = {