@univerjs/engine-render 0.4.2-nightly.202411031606 → 0.4.2-nightly.202411051606

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
@@ -22,7 +22,7 @@ const MIDDLE_CELL_POS_MAGIC_NUMBER = 1, DEFAULT_FONTFACE_PLANE = '"Helvetica Neu
22
22
  var CURSOR_TYPE = /* @__PURE__ */ ((CURSOR_TYPE2) => (CURSOR_TYPE2.DEFAULT = "default", CURSOR_TYPE2.AUTO = "auto", CURSOR_TYPE2.CROSSHAIR = "crosshair", CURSOR_TYPE2.POINTER = "pointer", CURSOR_TYPE2.MOVE = "move", CURSOR_TYPE2.EAST_RESIZE = "e-resize", CURSOR_TYPE2.NORTH_EAST_RESIZE = "ne-resize", CURSOR_TYPE2.NORTH_WEST_RESIZE = "nw-resize", CURSOR_TYPE2.NORTH_RESIZE = "n-resize", CURSOR_TYPE2.SOUTH_EAST_RESIZE = "se-resize", CURSOR_TYPE2.SOUTH_WEST_RESIZE = "sw-resize", CURSOR_TYPE2.SOUTH_RESIZE = "s-resize", CURSOR_TYPE2.WEST_RESIZE = "w-resize", CURSOR_TYPE2.TEXT = "text", CURSOR_TYPE2.WAIT = "wait", CURSOR_TYPE2.HELP = "help", CURSOR_TYPE2.CELL = "cell", CURSOR_TYPE2.NONE = "none", CURSOR_TYPE2.VERTICAL_TEXT = "vertical-text", CURSOR_TYPE2.NO_DROP = "no-drop", CURSOR_TYPE2.GRAB = "grab", CURSOR_TYPE2.GRABBING = "grabbing", CURSOR_TYPE2.ALL_SCROLL = "all-scroll", CURSOR_TYPE2.COLUMN_RESIZE = "col-resize", CURSOR_TYPE2.ROW_RESIZE = "row-resize", CURSOR_TYPE2.PROGRESS = "progress", CURSOR_TYPE2.NOT_ALLOWED = "not-allowed", CURSOR_TYPE2.ZOOM_IN = "zoom-in", CURSOR_TYPE2.ZOOM_OUT = "zoom-out", CURSOR_TYPE2))(CURSOR_TYPE || {}), DOCUMENT_CONTEXT_CLIP_TYPE = /* @__PURE__ */ ((DOCUMENT_CONTEXT_CLIP_TYPE2) => (DOCUMENT_CONTEXT_CLIP_TYPE2[DOCUMENT_CONTEXT_CLIP_TYPE2.noClip = 0] = "noClip", DOCUMENT_CONTEXT_CLIP_TYPE2[DOCUMENT_CONTEXT_CLIP_TYPE2.DOC_SIZE = 1] = "DOC_SIZE", DOCUMENT_CONTEXT_CLIP_TYPE2[DOCUMENT_CONTEXT_CLIP_TYPE2.CONTENT_SIZE_LEFT = 2] = "CONTENT_SIZE_LEFT", DOCUMENT_CONTEXT_CLIP_TYPE2[DOCUMENT_CONTEXT_CLIP_TYPE2.CONTENT_SIZE_CENTER = 3] = "CONTENT_SIZE_CENTER", DOCUMENT_CONTEXT_CLIP_TYPE2[DOCUMENT_CONTEXT_CLIP_TYPE2.CONTENT_SIZE_Right = 4] = "CONTENT_SIZE_Right", DOCUMENT_CONTEXT_CLIP_TYPE2))(DOCUMENT_CONTEXT_CLIP_TYPE || {});
23
23
  const COLOR_BLACK_RGB = "rgb(0,0,0)";
24
24
  var BORDER_TYPE = /* @__PURE__ */ ((BORDER_TYPE2) => (BORDER_TYPE2.TOP = "t", BORDER_TYPE2.BOTTOM = "b", BORDER_TYPE2.LEFT = "l", BORDER_TYPE2.RIGHT = "r", BORDER_TYPE2.TL_BR = "tl_br", BORDER_TYPE2.TL_BC = "tl_bc", BORDER_TYPE2.TL_MR = "tl_mr", BORDER_TYPE2.BL_TR = "bl_tr", BORDER_TYPE2.ML_TR = "ml_tr", BORDER_TYPE2.BC_TR = "bc_tr", BORDER_TYPE2))(BORDER_TYPE || {}), ORIENTATION_TYPE = /* @__PURE__ */ ((ORIENTATION_TYPE2) => (ORIENTATION_TYPE2[ORIENTATION_TYPE2.UP = 0] = "UP", ORIENTATION_TYPE2[ORIENTATION_TYPE2.DOWN = 1] = "DOWN", ORIENTATION_TYPE2))(ORIENTATION_TYPE || {}), RENDER_CLASS_TYPE = /* @__PURE__ */ ((RENDER_CLASS_TYPE2) => (RENDER_CLASS_TYPE2.ENGINE = "Engine", RENDER_CLASS_TYPE2.SCENE = "Scene", RENDER_CLASS_TYPE2.BASE_OBJECT = "BaseObject", RENDER_CLASS_TYPE2.SCENE_VIEWER = "SceneViewer", RENDER_CLASS_TYPE2.CANVAS = "Canvas", RENDER_CLASS_TYPE2.VIEWPORT = "Viewport", RENDER_CLASS_TYPE2.LAYER = "Layer", RENDER_CLASS_TYPE2.GROUP = "Group", RENDER_CLASS_TYPE2.IMAGE = "Image", RENDER_CLASS_TYPE2.SHAPE = "Shape", RENDER_CLASS_TYPE2.TEXT = "Text", RENDER_CLASS_TYPE2))(RENDER_CLASS_TYPE || {});
25
- const MAXIMUM_ROW_HEIGHT = 2e3, MAXIMUM_COL_WIDTH = 2e3, FIX_ONE_PIXEL_BLUR_OFFSET = 0.5, DRAWING_OBJECT_LOWER_LAYER_INDEX = 3, DRAWING_OBJECT_LAYER_INDEX = 4, DRAWING_OBJECT_UPPER_LAYER_INDEX = 5;
25
+ const MAXIMUM_ROW_HEIGHT = 2e3, MAXIMUM_COL_WIDTH = 2e3, MIN_COL_WIDTH = 2, FIX_ONE_PIXEL_BLUR_OFFSET = 0.5, DRAWING_OBJECT_LOWER_LAYER_INDEX = 3, DRAWING_OBJECT_LAYER_INDEX = 4, DRAWING_OBJECT_UPPER_LAYER_INDEX = 5;
26
26
  var TRANSFORM_CHANGE_OBSERVABLE_TYPE = /* @__PURE__ */ ((TRANSFORM_CHANGE_OBSERVABLE_TYPE2) => (TRANSFORM_CHANGE_OBSERVABLE_TYPE2[TRANSFORM_CHANGE_OBSERVABLE_TYPE2.translate = 0] = "translate", TRANSFORM_CHANGE_OBSERVABLE_TYPE2[TRANSFORM_CHANGE_OBSERVABLE_TYPE2.resize = 1] = "resize", TRANSFORM_CHANGE_OBSERVABLE_TYPE2[TRANSFORM_CHANGE_OBSERVABLE_TYPE2.scale = 2] = "scale", TRANSFORM_CHANGE_OBSERVABLE_TYPE2[TRANSFORM_CHANGE_OBSERVABLE_TYPE2.skew = 3] = "skew", TRANSFORM_CHANGE_OBSERVABLE_TYPE2[TRANSFORM_CHANGE_OBSERVABLE_TYPE2.flip = 4] = "flip", TRANSFORM_CHANGE_OBSERVABLE_TYPE2[TRANSFORM_CHANGE_OBSERVABLE_TYPE2.all = 5] = "all", TRANSFORM_CHANGE_OBSERVABLE_TYPE2))(TRANSFORM_CHANGE_OBSERVABLE_TYPE || {});
27
27
  const _Base = class _Base {
28
28
  isEmpty() {
@@ -4919,7 +4919,7 @@ __name(_Custom, "Custom");
4919
4919
  let Custom = _Custom;
4920
4920
  SpreadsheetExtensionRegistry.add(Custom);
4921
4921
  var ShowGridlinesState = /* @__PURE__ */ ((ShowGridlinesState2) => (ShowGridlinesState2[ShowGridlinesState2.OFF = 0] = "OFF", ShowGridlinesState2[ShowGridlinesState2.ON = 1] = "ON", ShowGridlinesState2))(ShowGridlinesState || {}), SHEET_VIEWPORT_KEY = /* @__PURE__ */ ((SHEET_VIEWPORT_KEY2) => (SHEET_VIEWPORT_KEY2.VIEW_MAIN = "viewMain", SHEET_VIEWPORT_KEY2.VIEW_MAIN_LEFT_TOP = "viewMainLeftTop", SHEET_VIEWPORT_KEY2.VIEW_MAIN_TOP = "viewMainTop", SHEET_VIEWPORT_KEY2.VIEW_MAIN_LEFT = "viewMainLeft", SHEET_VIEWPORT_KEY2.VIEW_ROW_TOP = "viewRowTop", SHEET_VIEWPORT_KEY2.VIEW_ROW_BOTTOM = "viewRowBottom", SHEET_VIEWPORT_KEY2.VIEW_COLUMN_LEFT = "viewColumnLeft", SHEET_VIEWPORT_KEY2.VIEW_COLUMN_RIGHT = "viewColumnRight", SHEET_VIEWPORT_KEY2.VIEW_LEFT_TOP = "viewLeftTop", SHEET_VIEWPORT_KEY2))(SHEET_VIEWPORT_KEY || {});
4922
- const FONT_EXTENSION_Z_INDEX = 45, EXPAND_SIZE_FOR_RENDER_OVERFLOW = 20, sheetContentViewportKeys = [SHEET_VIEWPORT_KEY.VIEW_MAIN, SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP, SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP, SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT], sheetHeaderViewportKeys = [SHEET_VIEWPORT_KEY.VIEW_ROW_TOP, SHEET_VIEWPORT_KEY.VIEW_ROW_BOTTOM, SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT, SHEET_VIEWPORT_KEY.VIEW_COLUMN_RIGHT, SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP];
4922
+ const FONT_EXTENSION_Z_INDEX = 45, EXPAND_SIZE_FOR_RENDER_OVERFLOW = 20, sheetContentViewportKeys = [SHEET_VIEWPORT_KEY.VIEW_MAIN, SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT_TOP, SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP, SHEET_VIEWPORT_KEY.VIEW_MAIN_LEFT], sheetHeaderViewportKeys = [SHEET_VIEWPORT_KEY.VIEW_ROW_TOP, SHEET_VIEWPORT_KEY.VIEW_ROW_BOTTOM, SHEET_VIEWPORT_KEY.VIEW_COLUMN_LEFT, SHEET_VIEWPORT_KEY.VIEW_COLUMN_RIGHT, SHEET_VIEWPORT_KEY.VIEW_LEFT_TOP], MEASURE_EXTENT = 1e4, MEASURE_EXTENT_FOR_PARAGRAPH = MEASURE_EXTENT / 10;
4923
4923
  var __defProp$4 = Object.defineProperty, __getOwnPropDesc$4 = Object.getOwnPropertyDescriptor, __decorateClass$4 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
4924
4924
  for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$4(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
4925
4925
  (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
@@ -23084,7 +23084,7 @@ function hyphenConfig(paragraphStyle, sectionBreakConfig) {
23084
23084
  }
23085
23085
  __name(hyphenConfig, "hyphenConfig");
23086
23086
  function shaping(ctx, content, viewModel, paragraphNode, sectionBreakConfig, useOpenType = !1) {
23087
- var _a10;
23087
+ var _a10, _b;
23088
23088
  const {
23089
23089
  gridType = GridType.LINES,
23090
23090
  charSpace = 0,
@@ -23148,8 +23148,7 @@ function shaping(ctx, content, viewModel, paragraphNode, sectionBreakConfig, use
23148
23148
  if (char === DataStreamTreeTokenType.TAB) {
23149
23149
  const charSpaceApply = getCharSpaceApply(charSpace, defaultTabStop, gridType, snapToGrid);
23150
23150
  newGlyph = createSkeletonTabGlyph(config, charSpaceApply);
23151
- } else
23152
- newGlyph = createSkeletonLetterGlyph(char, config);
23151
+ } else char === DataStreamTreeTokenType.PARAGRAPH && ((_b = sectionBreakConfig.renderConfig) == null ? void 0 : _b.zeroWidthParagraphBreak) === BooleanNumber.TRUE ? newGlyph = createSkeletonLetterGlyph(char, config, 0) : newGlyph = createSkeletonLetterGlyph(char, config);
23153
23152
  shapedGlyphs.push(newGlyph), i += char.length, src = src.substring(char.length);
23154
23153
  } else if (startWithEmoji(src)) {
23155
23154
  const { step, glyphGroup } = emojiHandler(
@@ -24638,12 +24637,12 @@ let DocumentSkeleton = _DocumentSkeleton;
24638
24637
  function createDocumentModelWithStyle(content, textStyle, config = {}) {
24639
24638
  const contentLength = content.length, {
24640
24639
  textRotation,
24641
- paddingData = DEFAULT_PADDING_DATA,
24640
+ paddingData,
24642
24641
  horizontalAlign = HorizontalAlign.UNSPECIFIED,
24643
24642
  verticalAlign = VerticalAlign.UNSPECIFIED,
24644
24643
  wrapStrategy = WrapStrategy.UNSPECIFIED,
24645
24644
  cellValueType
24646
- } = config, { t: marginTop, r: marginRight, b: marginBottom, l: marginLeft } = paddingData, { vertexAngle, centerAngle } = convertTextRotation(textRotation), documentData = {
24645
+ } = config, { t: marginTop, r: marginRight, b: marginBottom, l: marginLeft } = paddingData || DEFAULT_PADDING_DATA, { vertexAngle, centerAngle } = convertTextRotation(textRotation), documentData = {
24647
24646
  id: "d",
24648
24647
  body: {
24649
24648
  dataStream: `${content}${DEFAULT_EMPTY_DOCUMENT_VALUE}`,
@@ -25079,7 +25078,7 @@ let SpreadsheetSkeleton = (_a6 = class extends Skeleton {
25079
25078
  let colWidth = 0;
25080
25079
  const visibleRangeViewMain = this.visibleRangeByViewportKey(SHEET_VIEWPORT_KEY.VIEW_MAIN);
25081
25080
  if (!visibleRangeViewMain) return colWidth;
25082
- const { startRow: startRowOfViewMain, endRow: endRowOfViewMain } = visibleRangeViewMain, rowCount = this.worksheet.getRowCount(), checkStart = Math.max(0, startRowOfViewMain - 1e4), checkEnd = Math.min(rowCount, endRowOfViewMain + 1e4), otherRowIndex = /* @__PURE__ */ new Set();
25081
+ const { startRow: startRowOfViewMain, endRow: endRowOfViewMain } = visibleRangeViewMain, rowCount = this.worksheet.getRowCount(), otherRowIndex = /* @__PURE__ */ new Set();
25083
25082
  otherRowIndex.add(0), otherRowIndex.add(rowCount - 1);
25084
25083
  const visibleRangeViewMainTop = this.visibleRangeByViewportKey(SHEET_VIEWPORT_KEY.VIEW_MAIN_TOP);
25085
25084
  if (visibleRangeViewMainTop) {
@@ -25087,21 +25086,22 @@ let SpreadsheetSkeleton = (_a6 = class extends Skeleton {
25087
25086
  for (let i = startRowOfViewMainTop; i <= endRowOfViewMainTop; i++)
25088
25087
  otherRowIndex.add(i);
25089
25088
  }
25090
- const rowIdxArr = (/* @__PURE__ */ __name((start, end, additionalArr) => [...Array.from(
25089
+ const createRowSequence = /* @__PURE__ */ __name((start, end, additionalArr) => [...Array.from(
25091
25090
  { length: end - start + 1 },
25092
25091
  (_2, i) => i + start
25093
- ), ...additionalArr], "createRowSequence"))(checkStart, checkEnd, otherRowIndex), preColIndex = Math.max(0, colIndex - 1), currColWidth = this._columnWidthAccumulation[colIndex] - this._columnWidthAccumulation[preColIndex];
25092
+ ), ...additionalArr], "createRowSequence"), checkStartRow = Math.max(0, startRowOfViewMain - MEASURE_EXTENT), checkEndRow = Math.min(rowCount, endRowOfViewMain + MEASURE_EXTENT), rowIdxArr = createRowSequence(checkStartRow, checkEndRow, otherRowIndex), preColIndex = Math.max(0, colIndex - 1);
25093
+ let currColWidth = this._columnWidthAccumulation[colIndex] - this._columnWidthAccumulation[preColIndex];
25094
+ colIndex === 0 && (currColWidth = this._columnWidthAccumulation[colIndex]);
25094
25095
  for (let i = 0; i < rowIdxArr.length; i++) {
25095
25096
  const row = rowIdxArr[i], { isMerged, isMergedMainCell } = this._getCellMergeInfo(colIndex, row);
25096
25097
  if (isMerged && !isMergedMainCell || !this.worksheet.getRowVisible(row)) continue;
25097
25098
  const cell = worksheet.getCell(row, colIndex);
25098
- if (!cell || cell.p && (row + 1e3 <= startRowOfViewMain || row - 1e3 >= endRowOfViewMain))
25099
+ if (!cell || cell.p && (row + MEASURE_EXTENT_FOR_PARAGRAPH <= startRowOfViewMain || row - MEASURE_EXTENT_FOR_PARAGRAPH >= endRowOfViewMain))
25099
25100
  continue;
25100
25101
  let measuredWidth = this._getMeasuredWidthByCell(cell, currColWidth);
25101
- if (cell.fontRenderExtension && (measuredWidth += (((_a10 = cell.fontRenderExtension) == null ? void 0 : _a10.leftOffset) || 0) + (((_b = cell.fontRenderExtension) == null ? void 0 : _b.rightOffset) || 0)), colWidth = Math.max(colWidth, measuredWidth), colWidth >= MAXIMUM_COL_WIDTH)
25102
- return MAXIMUM_COL_WIDTH;
25102
+ if (cell.fontRenderExtension && (measuredWidth += (((_a10 = cell.fontRenderExtension) == null ? void 0 : _a10.leftOffset) || 0) + (((_b = cell.fontRenderExtension) == null ? void 0 : _b.rightOffset) || 0)), colWidth = Math.max(colWidth, measuredWidth), colWidth >= MAXIMUM_COL_WIDTH) return MAXIMUM_COL_WIDTH;
25103
25103
  }
25104
- return colWidth === 0 ? currColWidth : colWidth;
25104
+ return colWidth === 0 ? currColWidth : Math.max(MIN_COL_WIDTH, colWidth);
25105
25105
  }
25106
25106
  /**
25107
25107
  * For _calculateColMaxWidth
@@ -25452,8 +25452,7 @@ let SpreadsheetSkeleton = (_a6 = class extends Skeleton {
25452
25452
  ...DEFAULT_CELL_DOCUMENT_MODEL_OPTION,
25453
25453
  ...options
25454
25454
  }, style = this._styles.getStyleByCell(cell);
25455
- if (!cell)
25456
- return;
25455
+ if (!cell) return;
25457
25456
  let documentModel, fontString = "document";
25458
25457
  const cellOtherConfig = extractOtherStyle(style), textRotation = ignoreTextRotation ? DEFAULT_STYLES.tr : cellOtherConfig.textRotation || DEFAULT_STYLES.tr;
25459
25458
  let horizontalAlign = cellOtherConfig.horizontalAlign || DEFAULT_STYLES.ht;
@@ -25702,10 +25701,10 @@ let SpreadsheetSkeleton = (_a6 = class extends Skeleton {
25702
25701
  border: new ObjectMatrix()
25703
25702
  }, this._handleBgMatrix.reset(), this._handleBorderMatrix.reset(), this._overflowCache.reset();
25704
25703
  }
25705
- _makeDocumentSkeletonDirty(row, col) {
25706
- var _a10;
25707
- this._stylesCache.fontMatrix != null && ((_a10 = this._stylesCache.fontMatrix.getValue(row, col)) == null || _a10.documentSkeleton.makeDirty(!0));
25708
- }
25704
+ // private _makeDocumentSkeletonDirty(row: number, col: number): void {
25705
+ // if (this._stylesCache.fontMatrix == null) return;
25706
+ // this._stylesCache.fontMatrix.getValue(row, col)?.documentSkeleton.makeDirty(true); ;
25707
+ // }
25709
25708
  _setBorderStylesCache(row, col, style, options) {
25710
25709
  if (!(Tools.isDefine(this._handleBorderMatrix.getValue(row, col)) || !((options == null ? void 0 : options.cacheItem) || { bg: !0, border: !0 }).border) && (this._handleBorderMatrix.setValue(row, col, !0), style && style.bd)) {
25711
25710
  const mergeRange = options == null ? void 0 : options.mergeRange;
@@ -25786,8 +25785,7 @@ let SpreadsheetSkeleton = (_a6 = class extends Skeleton {
25786
25785
  */
25787
25786
  _setMergeBorderProps(type, cache, mergeRange) {
25788
25787
  var _a10;
25789
- if (!this.worksheet || !cache.border)
25790
- return;
25788
+ if (!this.worksheet || !cache.border) return;
25791
25789
  const borders = [];
25792
25790
  let isAddBorders = !0, forStart = mergeRange.startRow, forEnd = mergeRange.endRow, row = mergeRange.startRow, column = mergeRange.startColumn;
25793
25791
  type === BORDER_TYPE.TOP ? (row = mergeRange.startRow, forStart = mergeRange.startColumn, forEnd = mergeRange.endColumn) : type === BORDER_TYPE.BOTTOM ? (row = mergeRange.endRow, forStart = mergeRange.startColumn, forEnd = mergeRange.endColumn) : type === BORDER_TYPE.LEFT ? (column = mergeRange.startColumn, forStart = mergeRange.startRow, forEnd = mergeRange.endRow) : type === BORDER_TYPE.RIGHT && (column = mergeRange.endColumn, forStart = mergeRange.startRow, forEnd = mergeRange.endRow);
@@ -25841,12 +25839,6 @@ let SpreadsheetSkeleton = (_a6 = class extends Skeleton {
25841
25839
  color: rgb
25842
25840
  };
25843
25841
  }
25844
- _getFontFormat(format) {
25845
- if (!format)
25846
- return {};
25847
- const { ff, fs, it, bl, ul, st, ol, cl } = format, style = {};
25848
- return ff && (style.ff = ff), fs && (style.fs = fs), it && (style.it = it), bl && (style.bl = bl), ul && (style.ul = ul), st && (style.st = st), ol && (style.ol = ol), cl && (style.cl = cl), style;
25849
- }
25850
25842
  /**
25851
25843
  * New version to get merge data.
25852
25844
  * @param row
@@ -25856,45 +25848,6 @@ let SpreadsheetSkeleton = (_a6 = class extends Skeleton {
25856
25848
  _getCellMergeInfo(row, column) {
25857
25849
  return this.worksheet.getCellInfoInMergeData(row, column);
25858
25850
  }
25859
- /**
25860
- * Cache the merged cells on the current screen to improve computational performance.
25861
- * @param mergeData all marge data
25862
- * @param range current screen range, include row and column
25863
- */
25864
- _getMergeCells(mergeData, range) {
25865
- const endColumnLast = this.columnWidthAccumulation.length - 1;
25866
- range ? range = {
25867
- startRow: range.startRow,
25868
- endRow: range.endRow,
25869
- endColumn: endColumnLast,
25870
- startColumn: 0
25871
- } : range = { startRow: 0, startColumn: 0, endRow: this.rowHeightAccumulation.length - 1, endColumn: endColumnLast };
25872
- const { startRow, startColumn, endRow, endColumn } = range, cacheDataMerge = [];
25873
- for (let i = 0; i < mergeData.length; i++) {
25874
- const {
25875
- startRow: mergeStartRow,
25876
- endRow: mergeEndRow,
25877
- startColumn: mergeStartColumn,
25878
- endColumn: mergeEndColumn
25879
- } = mergeData[i];
25880
- for (let r = startRow; r <= endRow; r++) {
25881
- let isBreak = !1;
25882
- for (let c = startColumn; c <= endColumn; c++)
25883
- if (r >= mergeStartRow && r <= mergeEndRow && c >= mergeStartColumn && c <= mergeEndColumn) {
25884
- cacheDataMerge.push({
25885
- startRow: mergeStartRow,
25886
- endRow: mergeEndRow,
25887
- startColumn: mergeStartColumn,
25888
- endColumn: mergeEndColumn
25889
- }), isBreak = !0;
25890
- break;
25891
- }
25892
- if (isBreak)
25893
- break;
25894
- }
25895
- }
25896
- return cacheDataMerge;
25897
- }
25898
25851
  }, __name(_a6, "SpreadsheetSkeleton"), _a6);
25899
25852
  SpreadsheetSkeleton = __decorateClass$3([
25900
25853
  __decorateParam$3(4, Inject(LocaleService)),
@@ -33565,6 +33518,7 @@ export {
33565
33518
  MAXIMUM_COL_WIDTH,
33566
33519
  MAXIMUM_ROW_HEIGHT,
33567
33520
  MIDDLE_CELL_POS_MAGIC_NUMBER,
33521
+ MIN_COL_WIDTH,
33568
33522
  Marker,
33569
33523
  NORMAL_TEXT_SELECTION_PLUGIN_STYLE,
33570
33524
  ORIENTATION_TYPE,
@@ -118,6 +118,7 @@ export declare enum RENDER_CLASS_TYPE {
118
118
  }
119
119
  export declare const MAXIMUM_ROW_HEIGHT = 2000;
120
120
  export declare const MAXIMUM_COL_WIDTH = 2000;
121
+ export declare const MIN_COL_WIDTH = 2;
121
122
  export declare const FIX_ONE_PIXEL_BLUR_OFFSET = 0.5;
122
123
  export declare const DRAWING_OBJECT_LOWER_LAYER_INDEX = 3;
123
124
  export declare const DRAWING_OBJECT_LAYER_INDEX = 4;
@@ -6,3 +6,5 @@ export declare const PRINTING_BG_Z_INDEX = 21;
6
6
  export declare const EXPAND_SIZE_FOR_RENDER_OVERFLOW = 20;
7
7
  export declare const sheetContentViewportKeys: SHEET_VIEWPORT_KEY[];
8
8
  export declare const sheetHeaderViewportKeys: SHEET_VIEWPORT_KEY[];
9
+ export declare const MEASURE_EXTENT = 10000;
10
+ export declare const MEASURE_EXTENT_FOR_PARAGRAPH: number;
@@ -286,7 +286,6 @@ export declare class SpreadsheetSkeleton extends Skeleton {
286
286
  * Any changes to sheet model would reset cache.
287
287
  */
288
288
  private _resetCache;
289
- private _makeDocumentSkeletonDirty;
290
289
  _setBorderStylesCache(row: number, col: number, style: Nullable<IStyleData>, options: {
291
290
  mergeRange?: IRange;
292
291
  cacheItem?: ICacheItem;
@@ -310,7 +309,6 @@ export declare class SpreadsheetSkeleton extends Skeleton {
310
309
  */
311
310
  private _setMergeBorderProps;
312
311
  private _setBorderProps;
313
- private _getFontFormat;
314
312
  /**
315
313
  * New version to get merge data.
316
314
  * @param row
@@ -318,11 +316,5 @@ export declare class SpreadsheetSkeleton extends Skeleton {
318
316
  * @returns {ISelectionCell} The cell info with merge data
319
317
  */
320
318
  private _getCellMergeInfo;
321
- /**
322
- * Cache the merged cells on the current screen to improve computational performance.
323
- * @param mergeData all marge data
324
- * @param range current screen range, include row and column
325
- */
326
- private _getMergeCells;
327
319
  }
328
320
  export {};