@univerjs/core 1.0.4 → 1.2.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.
package/lib/index.js CHANGED
@@ -123,7 +123,7 @@ function installShims() {
123
123
  }
124
124
 
125
125
  //#endregion
126
- //#region \0@oxc-project+runtime@0.149.0/helpers/esm/typeof.js
126
+ //#region \0@oxc-project+runtime@0.153.0/helpers/esm/typeof.js
127
127
  function _typeof(o) {
128
128
  "@babel/helpers - typeof";
129
129
  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
@@ -134,7 +134,7 @@ function _typeof(o) {
134
134
  }
135
135
 
136
136
  //#endregion
137
- //#region \0@oxc-project+runtime@0.149.0/helpers/esm/toPrimitive.js
137
+ //#region \0@oxc-project+runtime@0.153.0/helpers/esm/toPrimitive.js
138
138
  function toPrimitive(t, r) {
139
139
  if ("object" != _typeof(t) || !t) return t;
140
140
  var e = t[Symbol.toPrimitive];
@@ -147,14 +147,14 @@ function toPrimitive(t, r) {
147
147
  }
148
148
 
149
149
  //#endregion
150
- //#region \0@oxc-project+runtime@0.149.0/helpers/esm/toPropertyKey.js
150
+ //#region \0@oxc-project+runtime@0.153.0/helpers/esm/toPropertyKey.js
151
151
  function toPropertyKey(t) {
152
152
  var i = toPrimitive(t, "string");
153
153
  return "symbol" == _typeof(i) ? i : i + "";
154
154
  }
155
155
 
156
156
  //#endregion
157
- //#region \0@oxc-project+runtime@0.149.0/helpers/esm/defineProperty.js
157
+ //#region \0@oxc-project+runtime@0.153.0/helpers/esm/defineProperty.js
158
158
  function _defineProperty(e, r, t) {
159
159
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
160
160
  value: t,
@@ -1670,7 +1670,7 @@ let ThemeColors = /* @__PURE__ */ function(ThemeColors) {
1670
1670
  //#endregion
1671
1671
  //#region package.json
1672
1672
  var name = "@univerjs/core";
1673
- var version = "1.0.4";
1673
+ var version = "1.2.0";
1674
1674
 
1675
1675
  //#endregion
1676
1676
  //#region src/common/array.ts
@@ -2016,7 +2016,7 @@ function hashLogContent(...args) {
2016
2016
  }
2017
2017
 
2018
2018
  //#endregion
2019
- //#region \0@oxc-project+runtime@0.149.0/helpers/esm/decorateParam.js
2019
+ //#region \0@oxc-project+runtime@0.153.0/helpers/esm/decorateParam.js
2020
2020
  function __decorateParam(paramIndex, decorator) {
2021
2021
  return function(target, key) {
2022
2022
  decorator(target, key, paramIndex);
@@ -2024,7 +2024,7 @@ function __decorateParam(paramIndex, decorator) {
2024
2024
  }
2025
2025
 
2026
2026
  //#endregion
2027
- //#region \0@oxc-project+runtime@0.149.0/helpers/esm/decorate.js
2027
+ //#region \0@oxc-project+runtime@0.153.0/helpers/esm/decorate.js
2028
2028
  function __decorate(decorators, target, key, desc) {
2029
2029
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2030
2030
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -5775,7 +5775,7 @@ function datePartsToExcel1900Serial(year, month, day) {
5775
5775
  return unixDays + (unixDays <= -25509 ? 25568 : 25569);
5776
5776
  }
5777
5777
  function excelSerialToDateTimeParts(serial, options) {
5778
- if (!Number.isFinite(serial) || serial < 0) return null;
5778
+ if (!Number.isFinite(serial) || serial < 0 || serial >= getDateSystemMaxSerial(options.dateSystem) + 1) return null;
5779
5779
  const wholeDays = Math.floor(serial);
5780
5780
  const excel1900Serial = options.dateSystem === "date1904" ? wholeDays + EXCEL_1904_OFFSET : wholeDays;
5781
5781
  const [year, month, day] = toYMD(excel1900Serial, 0, true);
@@ -9270,8 +9270,10 @@ function startOf(date, unit, isUTC) {
9270
9270
  }
9271
9271
  }
9272
9272
  function getWeekOfYear(date, isUTC) {
9273
- const currentWeekStart = startOf(date, "week", isUTC);
9274
- const firstWeekStart = startOf(startOf(date, "year", isUTC), "week", isUTC);
9273
+ const current = getDateParts(startOf(date, "week", isUTC), isUTC);
9274
+ const first = getDateParts(startOf(startOf(date, "year", isUTC), "week", isUTC), isUTC);
9275
+ const currentWeekStart = createDateWithParts(current.year, current.month, current.day, 0, 0, 0, 0, true);
9276
+ const firstWeekStart = createDateWithParts(first.year, first.month, first.day, 0, 0, 0, 0, true);
9275
9277
  return Math.floor((currentWeekStart.getTime() - firstWeekStart.getTime()) / DAY / 7) + 1;
9276
9278
  }
9277
9279
  function getTimezoneString(date, isUTC, compact = false) {
@@ -11561,24 +11563,6 @@ function scanFormulaStringState(formula, start, end, initialState) {
11561
11563
  return inString;
11562
11564
  }
11563
11565
 
11564
- //#endregion
11565
- //#region src/common/async.ts
11566
- /**
11567
- * Copyright 2023-present DreamNum Co., Ltd.
11568
- *
11569
- * Licensed under the Apache License, Version 2.0 (the "License");
11570
- * you may not use this file except in compliance with the License.
11571
- * You may obtain a copy of the License at
11572
- *
11573
- * http://www.apache.org/licenses/LICENSE-2.0
11574
- *
11575
- * Unless required by applicable law or agreed to in writing, software
11576
- * distributed under the License is distributed on an "AS IS" BASIS,
11577
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11578
- * See the License for the specific language governing permissions and
11579
- * limitations under the License.
11580
- */
11581
-
11582
11566
  //#endregion
11583
11567
  //#region src/common/boolean.ts
11584
11568
  /**
@@ -11625,6 +11609,7 @@ const DOCS_COMMENT_EDITOR_UNIT_ID_KEY = `${PREFIX}COMMENT_EDITOR`;
11625
11609
  const DEFAULT_EMPTY_DOCUMENT_VALUE = "\r\n";
11626
11610
  const IS_ROW_STYLE_PRECEDE_COLUMN_STYLE = "isRowStylePrecedeColumnStyle";
11627
11611
  const AUTO_HEIGHT_FOR_MERGED_CELLS = Symbol("AUTO_HEIGHT_FOR_MERGED_CELLS");
11612
+ const SHEET_TEXT_LINE_GAP = Symbol("SHEET_TEXT_LINE_GAP");
11628
11613
  function createInternalEditorID(id) {
11629
11614
  return `${PREFIX}${id}`;
11630
11615
  }
@@ -14949,6 +14934,13 @@ function updateParagraphs(body, updateBody, textLength, currentIndex, coverType)
14949
14934
  const { startIndex: removeStartIndex, paragraphId: removeParagraphId, paragraphStyle: removeParagraphStyle, bullet: removeBullet } = removeParagraph;
14950
14935
  let newParagraphStyle;
14951
14936
  let newBullet;
14937
+ const paragraphAttributes = coverType === 0 ? {
14938
+ ...removeParagraph,
14939
+ ...updateParagraph
14940
+ } : {
14941
+ ...updateParagraph,
14942
+ ...removeParagraph
14943
+ };
14952
14944
  if (coverType === 0) {
14953
14945
  newParagraphStyle = {
14954
14946
  ...removeParagraphStyle,
@@ -14978,10 +14970,11 @@ function updateParagraphs(body, updateBody, textLength, currentIndex, coverType)
14978
14970
  }
14979
14971
  if (updateStartIndex === removeStartIndex) {
14980
14972
  splitUpdateParagraphs.push({
14973
+ ...paragraphAttributes,
14981
14974
  startIndex: updateStartIndex,
14982
14975
  paragraphId: updateParagraphId ?? removeParagraphId,
14983
14976
  paragraphStyle: newParagraphStyle,
14984
- bullet: newBullet
14977
+ bullet: removeBullet == null && updateBullet == null ? void 0 : newBullet
14985
14978
  });
14986
14979
  break;
14987
14980
  }
@@ -16053,7 +16046,7 @@ var ActionIterator = class {
16053
16046
  return this.peekLength() < Number.POSITIVE_INFINITY;
16054
16047
  }
16055
16048
  next(length) {
16056
- if (!length) length = Number.POSITIVE_INFINITY;
16049
+ if (length === void 0) length = Number.POSITIVE_INFINITY;
16057
16050
  const nextAction = this._actions[this._index];
16058
16051
  if (nextAction) {
16059
16052
  const offset = this._offset;
@@ -16593,6 +16586,21 @@ function transformParagraph(originParagraph, targetParagraph, originCoverType, t
16593
16586
  else if (originParagraph.bullet === void 0) paragraph.bullet = Tools.deepClone(targetParagraph.bullet);
16594
16587
  else if (originCoverType === 1 || targetCoverType === 1) paragraph.bullet = transformType === 0 && targetParagraph.bullet ? Tools.deepClone(targetParagraph.bullet) : Tools.deepClone(originParagraph.bullet);
16595
16588
  else if (transformType === 0 && targetParagraph.bullet !== void 0) paragraph.bullet = Tools.deepClone(targetParagraph.bullet);
16589
+ for (const key of [
16590
+ "headingCollapsed",
16591
+ "styleId",
16592
+ "sourceBullet",
16593
+ "directBullet"
16594
+ ]) {
16595
+ const origin = originParagraph[key];
16596
+ const target = targetParagraph[key];
16597
+ let value;
16598
+ if (originCoverType === 1 && targetCoverType === 1) value = transformType === 1 ? origin : target;
16599
+ else if (origin === void 0) value = target;
16600
+ else if (originCoverType === 1 || targetCoverType === 1) value = transformType === 0 && target !== void 0 ? target : origin;
16601
+ else if (transformType === 0) value = target;
16602
+ if (value !== void 0) Object.assign(paragraph, { [key]: Tools.deepClone(value) });
16603
+ }
16596
16604
  if (paragraph.bullet === void 0) delete paragraph.bullet;
16597
16605
  return paragraph;
16598
16606
  }
@@ -16930,11 +16938,7 @@ var TextX = class TextX {
16930
16938
  }
16931
16939
  if (action.t === "r" && action.body != null) {
16932
16940
  const body = getBodySlice(doc, index, index + action.len, true);
16933
- for (const field of [
16934
- "tables",
16935
- "columnGroups",
16936
- "blockRanges"
16937
- ]) if (action.body[field] == null) delete body[field];
16941
+ for (const field of Object.keys(body)) if (field !== "dataStream" && field !== "paragraphs" && action.body[field] == null) Reflect.deleteProperty(body, field);
16938
16942
  if (action.body.paragraphs == null) delete body.paragraphs;
16939
16943
  else {
16940
16944
  var _body$paragraphs;
@@ -17570,8 +17574,10 @@ function replaceInDocumentBody(body, query, target, caseSensitive) {
17570
17574
  documentStyle: {}
17571
17575
  });
17572
17576
  const queryLen = query.length;
17573
- let index;
17574
- while ((index = (caseSensitive ? documentDataModel.getBody().dataStream : documentDataModel.getBody().dataStream.toLowerCase()).indexOf(query)) >= 0) {
17577
+ const expression = createLiteralRegExp(query, caseSensitive ? "g" : "gi");
17578
+ let match;
17579
+ while ((match = expression.exec(documentDataModel.getBody().dataStream)) !== null) {
17580
+ const index = match.index;
17575
17581
  const textX = new TextX();
17576
17582
  const jsonX = JSONX.getInstance();
17577
17583
  if (index > 0) textX.retain(index);
@@ -17593,6 +17599,7 @@ function replaceInDocumentBody(body, query, target, caseSensitive) {
17593
17599
  }
17594
17600
  textX.delete(queryLen);
17595
17601
  documentDataModel.apply(jsonX.editOp(textX.serialize()));
17602
+ expression.lastIndex = index + target.length;
17596
17603
  }
17597
17604
  const newBody = documentDataModel.getBody();
17598
17605
  documentDataModel.dispose();
@@ -22153,6 +22160,23 @@ const IImageIoService = createIdentifier("core.image-io.service");
22153
22160
  //#region src/services/image-io/url-image.service.ts
22154
22161
  const IURLImageService = createIdentifier("core.url-image.service");
22155
22162
 
22163
+ //#endregion
22164
+ //#region src/sheets/calculation-settings.ts
22165
+ const MAX_ITERATION_COUNT = 32767;
22166
+ const DEFAULT_WORKBOOK_CALCULATION_SETTINGS = Object.freeze({
22167
+ iterativeCalculation: false,
22168
+ maxIterations: 100,
22169
+ maxChange: .001
22170
+ });
22171
+ function normalizeWorkbookCalculationSettings(value) {
22172
+ const defaults = DEFAULT_WORKBOOK_CALCULATION_SETTINGS;
22173
+ return {
22174
+ iterativeCalculation: typeof (value === null || value === void 0 ? void 0 : value.iterativeCalculation) === "boolean" ? value.iterativeCalculation : defaults.iterativeCalculation,
22175
+ maxIterations: Number.isInteger(value === null || value === void 0 ? void 0 : value.maxIterations) && value.maxIterations >= 1 && value.maxIterations <= 32767 ? value.maxIterations : defaults.maxIterations,
22176
+ maxChange: typeof (value === null || value === void 0 ? void 0 : value.maxChange) === "number" && Number.isFinite(value.maxChange) && value.maxChange > 0 ? value.maxChange : defaults.maxChange
22177
+ };
22178
+ }
22179
+
22156
22180
  //#endregion
22157
22181
  //#region src/sheets/empty-snapshot.ts
22158
22182
  function getEmptySnapshot$2(unitID = "", locale = "zhCN", name = "") {
@@ -24762,6 +24786,7 @@ let Workbook = class Workbook extends UnitModel {
24762
24786
  this._snapshot.dateSystem = "date1900";
24763
24787
  }
24764
24788
  }
24789
+ this._snapshot.calculationSettings = normalizeWorkbookCalculationSettings(workbookData.calculationSettings);
24765
24790
  const { styles } = this._snapshot;
24766
24791
  if (this._snapshot.id == null || this._snapshot.id.length === 0) this._snapshot.id = generateRandomId(6);
24767
24792
  this._unitId = this._snapshot.id;
@@ -24799,6 +24824,12 @@ let Workbook = class Workbook extends UnitModel {
24799
24824
  getSnapshot() {
24800
24825
  return this._snapshot;
24801
24826
  }
24827
+ getCalculationSettings() {
24828
+ return normalizeWorkbookCalculationSettings(this._snapshot.calculationSettings);
24829
+ }
24830
+ setCalculationSettings(settings) {
24831
+ this._snapshot.calculationSettings = { ...settings };
24832
+ }
24802
24833
  setName(name) {
24803
24834
  this._name$.next(name);
24804
24835
  this._snapshot.name = name;
@@ -25226,8 +25257,7 @@ let UniverInstanceService = class UniverInstanceService extends Disposable {
25226
25257
  }
25227
25258
  }
25228
25259
  _tryResetFocusOnRemoval(unitId) {
25229
- var _this$focused3;
25230
- if (((_this$focused3 = this.focused) === null || _this$focused3 === void 0 ? void 0 : _this$focused3.getUnitId()) === unitId) this._focused$.next(null);
25260
+ if (this._focused$.getValue() === unitId) this.focusUnit(null);
25231
25261
  }
25232
25262
  _getUnitById(unitId) {
25233
25263
  for (const [type, units] of this._unitsByType) {
@@ -27160,6 +27190,69 @@ var RTree = class {
27160
27190
  }
27161
27191
  };
27162
27192
 
27193
+ //#endregion
27194
+ //#region src/types/enum/record-filter.ts
27195
+ /**
27196
+ * Copyright 2023-present DreamNum Co., Ltd.
27197
+ *
27198
+ * Licensed under the Apache License, Version 2.0 (the "License");
27199
+ * you may not use this file except in compliance with the License.
27200
+ * You may obtain a copy of the License at
27201
+ *
27202
+ * http://www.apache.org/licenses/LICENSE-2.0
27203
+ *
27204
+ * Unless required by applicable law or agreed to in writing, software
27205
+ * distributed under the License is distributed on an "AS IS" BASIS,
27206
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
27207
+ * See the License for the specific language governing permissions and
27208
+ * limitations under the License.
27209
+ */
27210
+ /** Typed record identities shared by compact Table and external report filters. */
27211
+ let RecordValueType = /* @__PURE__ */ function(RecordValueType) {
27212
+ RecordValueType["Blank"] = "blank";
27213
+ RecordValueType["String"] = "string";
27214
+ RecordValueType["Number"] = "number";
27215
+ RecordValueType["Date"] = "date";
27216
+ RecordValueType["Boolean"] = "boolean";
27217
+ RecordValueType["Error"] = "error";
27218
+ return RecordValueType;
27219
+ }({});
27220
+ /** Values are wire identifiers; an absent native Table filter represents All. */
27221
+ let FilterSelectionMode = /* @__PURE__ */ function(FilterSelectionMode) {
27222
+ FilterSelectionMode["All"] = "all";
27223
+ FilterSelectionMode["Include"] = "include";
27224
+ FilterSelectionMode["Exclude"] = "exclude";
27225
+ return FilterSelectionMode;
27226
+ }({});
27227
+
27228
+ //#endregion
27229
+ //#region src/shared/record-value.ts
27230
+ function getRecordValueKey(_value) {
27231
+ const value = _value;
27232
+ if (!isRecord(value) || typeof value.type !== "string") throw new TypeError("Invalid record value.");
27233
+ switch (value.type) {
27234
+ case "blank":
27235
+ if ("value" in value) throw new TypeError("Blank record values cannot have a value.");
27236
+ return "[\"blank\"]";
27237
+ case "string":
27238
+ case "error":
27239
+ if (typeof value.value !== "string") throw new TypeError("Invalid record value.");
27240
+ return JSON.stringify([value.type, value.value]);
27241
+ case "boolean":
27242
+ if (typeof value.value !== "boolean") throw new TypeError("Invalid record value.");
27243
+ return JSON.stringify([value.type, value.value]);
27244
+ case "number":
27245
+ case "date":
27246
+ if (typeof value.value !== "number") throw new TypeError("Invalid record value.");
27247
+ if (!Number.isFinite(value.value)) throw new RangeError("Record numeric values must be finite.");
27248
+ return JSON.stringify([value.type, value.value === 0 ? 0 : value.value]);
27249
+ default: throw new TypeError("Unknown record value type.");
27250
+ }
27251
+ }
27252
+ function isRecord(value) {
27253
+ return typeof value === "object" && value !== null && !Array.isArray(value);
27254
+ }
27255
+
27163
27256
  //#endregion
27164
27257
  //#region src/shared/timer.ts
27165
27258
  /**
@@ -27206,6 +27299,32 @@ function delayAnimationFrame(frames = 1) {
27206
27299
  });
27207
27300
  }
27208
27301
 
27302
+ //#endregion
27303
+ //#region src/shared/units.ts
27304
+ /**
27305
+ * Copyright 2023-present DreamNum Co., Ltd.
27306
+ *
27307
+ * Licensed under the Apache License, Version 2.0 (the "License");
27308
+ * you may not use this file except in compliance with the License.
27309
+ * You may obtain a copy of the License at
27310
+ *
27311
+ * http://www.apache.org/licenses/LICENSE-2.0
27312
+ *
27313
+ * Unless required by applicable law or agreed to in writing, software
27314
+ * distributed under the License is distributed on an "AS IS" BASIS,
27315
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
27316
+ * See the License for the specific language governing permissions and
27317
+ * limitations under the License.
27318
+ */
27319
+ /** English Metric Units per CSS pixel at 96 DPI. */
27320
+ const EMU_PER_CSS_PX = 9525;
27321
+ function cssPxToEmu(value) {
27322
+ return Math.round(value * EMU_PER_CSS_PX);
27323
+ }
27324
+ function emuToCssPx(value) {
27325
+ return value / EMU_PER_CSS_PX;
27326
+ }
27327
+
27209
27328
  //#endregion
27210
27329
  //#region src/sheets/clone.ts
27211
27330
  /**
@@ -27432,6 +27551,21 @@ Skeleton = __decorate([__decorateParam(0, Inject(LocaleService))], Skeleton);
27432
27551
  //#endregion
27433
27552
  //#region src/sheets/sheet-skeleton.ts
27434
27553
  /**
27554
+ * Copyright 2023-present DreamNum Co., Ltd.
27555
+ *
27556
+ * Licensed under the Apache License, Version 2.0 (the "License");
27557
+ * you may not use this file except in compliance with the License.
27558
+ * You may obtain a copy of the License at
27559
+ *
27560
+ * http://www.apache.org/licenses/LICENSE-2.0
27561
+ *
27562
+ * Unless required by applicable law or agreed to in writing, software
27563
+ * distributed under the License is distributed on an "AS IS" BASIS,
27564
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
27565
+ * See the License for the specific language governing permissions and
27566
+ * limitations under the License.
27567
+ */
27568
+ /**
27435
27569
  * Reusable gap fixture for visual and integration testing.
27436
27570
  */
27437
27571
  function createSheetGapTestConfig(overrides = {}) {
@@ -27502,6 +27636,8 @@ let SheetSkeleton = class SheetSkeleton extends Skeleton {
27502
27636
  _defineProperty(this, "_scaleY", 1);
27503
27637
  _defineProperty(this, "_scrollX", 0);
27504
27638
  _defineProperty(this, "_scrollY", 0);
27639
+ _defineProperty(this, "_gapConfigChanged$", new Subject());
27640
+ _defineProperty(this, "gapConfigChanged$", this._gapConfigChanged$.asObservable());
27505
27641
  this._worksheetData = this.worksheet.getConfig();
27506
27642
  this._cellData = this.worksheet.getCellMatrix();
27507
27643
  this._imageCacheMap = new ImageCacheMap(this._injector);
@@ -27593,6 +27729,7 @@ let SheetSkeleton = class SheetSkeleton extends Skeleton {
27593
27729
  this._gapConfig = this._fillDefaultGapThemeColors(config);
27594
27730
  this.makeDirty(true);
27595
27731
  this._updateLayout();
27732
+ this._gapConfigChanged$.next();
27596
27733
  }
27597
27734
  _fillDefaultGapThemeColors(config) {
27598
27735
  if (config.defaultBackgroundColor && config.defaultStripeColor) return config;
@@ -28026,13 +28163,14 @@ let SheetSkeleton = class SheetSkeleton extends Skeleton {
28026
28163
  };
28027
28164
  }
28028
28165
  /**
28029
- * Here, offsetX and offsetY are the coordinates in the viewport, including the rowHeaderWidthAndMarginLeft and columnHeaderHeightAndMarginTop.
28166
+ * Coordinates include the row and column headers. Defaults to the current viewport transform;
28167
+ * pass unit scales and zero scroll for Sheet model coordinates.
28030
28168
  */
28031
- getCellIndexAndOffsetByPosition(offsetX, offsetY) {
28032
- const { actualRow, actualColumn, startX, startY } = this.getCellWithCoordByOffset(offsetX, offsetY, this._scaleX, this._scaleY, {
28033
- x: this._scrollX,
28034
- y: this._scrollY
28035
- });
28169
+ getCellIndexAndOffsetByPosition(offsetX, offsetY, scaleX = this._scaleX, scaleY = this._scaleY, scrollXY = {
28170
+ x: this._scrollX,
28171
+ y: this._scrollY
28172
+ }) {
28173
+ const { actualRow, actualColumn, startX, startY } = this.getCellWithCoordByOffset(offsetX, offsetY, scaleX, scaleY, scrollXY);
28036
28174
  return {
28037
28175
  row: actualRow,
28038
28176
  rowOffset: offsetY - startY,
@@ -28068,6 +28206,7 @@ let SheetSkeleton = class SheetSkeleton extends Skeleton {
28068
28206
  }
28069
28207
  dispose() {
28070
28208
  super.dispose();
28209
+ this._gapConfigChanged$.complete();
28071
28210
  this._rowHeightAccumulation = [];
28072
28211
  this._columnWidthAccumulation = [];
28073
28212
  this._rowTotalHeight = 0;
@@ -28417,41 +28556,6 @@ let DataValidationType = /* @__PURE__ */ function(DataValidationType) {
28417
28556
  return DataValidationType;
28418
28557
  }({});
28419
28558
 
28420
- //#endregion
28421
- //#region src/types/enum/record-filter.ts
28422
- /**
28423
- * Copyright 2023-present DreamNum Co., Ltd.
28424
- *
28425
- * Licensed under the Apache License, Version 2.0 (the "License");
28426
- * you may not use this file except in compliance with the License.
28427
- * You may obtain a copy of the License at
28428
- *
28429
- * http://www.apache.org/licenses/LICENSE-2.0
28430
- *
28431
- * Unless required by applicable law or agreed to in writing, software
28432
- * distributed under the License is distributed on an "AS IS" BASIS,
28433
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
28434
- * See the License for the specific language governing permissions and
28435
- * limitations under the License.
28436
- */
28437
- /** Typed record identities shared by compact Table and external report filters. */
28438
- let RecordValueType = /* @__PURE__ */ function(RecordValueType) {
28439
- RecordValueType["Blank"] = "blank";
28440
- RecordValueType["String"] = "string";
28441
- RecordValueType["Number"] = "number";
28442
- RecordValueType["Date"] = "date";
28443
- RecordValueType["Boolean"] = "boolean";
28444
- RecordValueType["Error"] = "error";
28445
- return RecordValueType;
28446
- }({});
28447
- /** Values are wire identifiers; an absent native Table filter represents All. */
28448
- let FilterSelectionMode = /* @__PURE__ */ function(FilterSelectionMode) {
28449
- FilterSelectionMode["All"] = "all";
28450
- FilterSelectionMode["Include"] = "include";
28451
- FilterSelectionMode["Exclude"] = "exclude";
28452
- return FilterSelectionMode;
28453
- }({});
28454
-
28455
28559
  //#endregion
28456
28560
  //#region src/services/resource-loader/resource-loader.service.ts
28457
28561
  let ResourceLoaderService = class ResourceLoaderService extends Disposable {
@@ -28745,4 +28849,4 @@ function createUniverInjector(parentInjector, override) {
28745
28849
  installShims();
28746
28850
 
28747
28851
  //#endregion
28748
- export { ABCToNumber, AUTO_HEIGHT_FOR_MERGED_CELLS, AbsoluteRefType, ActionIterator, AlignTypeH, AlignTypeV, ArrangeTypeEnum, AsyncInterceptorManager, AsyncLock, AuthzIoLocalService, AutoFillSeries, BASE_RECORD_ID_FIELD_ID, BASE_RECORD_ID_FIELD_NAME, BORDER_KEYS, BORDER_STYLE_KEYS, BaseConditionalColorOperator, BaseConditionalColorTarget, BaseConditionalDateMode, BaseDataModel, BaseFieldType, BaseFilterConjunction, BaseFilterOperator, BaseHierarchyInvalidReason, BaseRecordLinkRole, BaseSortDirection, BaseViewType, BaselineOffset, BlockType, BooleanNumber, BorderStyleTypes, BorderType, BuildTextUtils, BulletAlignment, COLORS, COLOR_STYLE_KEYS, COMMAND_LOG_EXECUTION_CONFIG_KEY, CanceledError, CellModeEnum, CellValueType, ColorKit, ColorType, ColumnLayoutType, ColumnResponsiveType, ColumnSeparatorType, CommandService, CommandType, CommonHideTypes, ConfigService, ContextService, CopyPasteType, CustomCommandExecutionError, CustomDecorationType, CustomRangeType, DEFAULT_CELL, DEFAULT_DOC, DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING, DEFAULT_DOCUMENT_PARAGRAPH_SPACE_ABOVE, DEFAULT_DOCUMENT_PARAGRAPH_SPACE_BELOW, DEFAULT_DOCUMENT_SUB_COMPONENT_ID, DEFAULT_EMPTY_DOCUMENT_VALUE, DEFAULT_NUMBER_FORMAT, DEFAULT_RANGE, DEFAULT_RANGE_ARRAY, DEFAULT_SELECTION, DEFAULT_STYLES, DEFAULT_TEXT_FORMAT, DEFAULT_TEXT_FORMAT_EXCEL, DEFAULT_WORKSHEET_COLUMN_COUNT, DEFAULT_WORKSHEET_COLUMN_COUNT_KEY, DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT, DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY, DEFAULT_WORKSHEET_COLUMN_WIDTH, DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY, DEFAULT_WORKSHEET_ROW_COUNT, DEFAULT_WORKSHEET_ROW_COUNT_KEY, DEFAULT_WORKSHEET_ROW_HEIGHT, DEFAULT_WORKSHEET_ROW_HEIGHT_KEY, DEFAULT_WORKSHEET_ROW_TITLE_WIDTH, DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY, DOCS_COMMENT_EDITOR_UNIT_ID_KEY, DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY, DOCS_NORMAL_EDITOR_UNIT_ID_KEY, DOC_DRAWING_PRINTING_COMPONENT_KEY, DOC_RANGE_TYPE, DashStyleType, DataStreamTreeNodeType, DataStreamTreeTokenType, DataValidationErrorStyle, DataValidationImeMode, DataValidationOperator, DataValidationRenderMode, DataValidationStatus, DataValidationType, DateSystem, DeleteDirection, DependentOn, DesktopLogService, DeveloperMetadataVisibility, Dimension, Direction, Disposable, DisposableCollection, DocStyleType, DocumentBlockRangeType, DocumentBlockType, DocumentDataModel, DocumentFlavor, DocxBreakType, DrawingTypeEnum, EDITOR_ACTIVATED, EXCEL_1904_OFFSET, EXTENSION_NAMES, ErrorService, EventState, EventSubject, FOCUSING_BOARD, FOCUSING_COMMENT_EDITOR, FOCUSING_COMMON_DRAWINGS, FOCUSING_DOC, FOCUSING_EDITOR_INPUT_FORMULA, FOCUSING_EDITOR_STANDALONE, FOCUSING_FX_BAR_EDITOR, FOCUSING_PANEL_EDITOR, FOCUSING_SHAPE_TEXT_EDITOR, FOCUSING_SHEET, FOCUSING_SLIDE, FOCUSING_UNIT, FOCUSING_UNIVER_EDITOR, FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE, FORMULA_EDITOR_ACTIVATED, FilterSelectionMode, FollowNumberWithType, FontItalic, FontStyleType, FontWeight, FormulaType, GridType, HorizontalAlign, IAuthzIoService, ICommandService, IConfigService, IConfirmService, IContextService, IImageIoService, ILocalStorageService, ILogService, IMentionIOService, IPermissionService, IResourceLoaderService, IResourceManagerService, IS_ROW_STYLE_PRECEDE_COLUMN_STYLE, IURLImageService, IUndoRedoService, IUniverInstanceService, ImageCacheMap, ImageSourceType, ImageUploadStatusType, Inject, InjectSelf, Injector, InterceptorEffectEnum, InterceptorManager, InterpolationPointType, json1 as JSON1, JSONX, LOCALE_META, LRUHelper, LRUMap, LifecycleService, LifecycleStages, LifecycleUnreachableError, ListGlyphType, LocalUndoRedoService, LocaleService, LocaleType, LogLevel, LookUp, MAX_COLUMN_COUNT, MAX_ROW_COUNT, MODERN_DOCUMENT_DEFAULT_MARGIN, MODERN_DOCUMENT_WIDTH, MOVE_BUFFER_VALUE, Many, MemoryCursor, MentionIOLocalService, MentionType, ModernDocumentWidthMode, NAMED_STYLE_MAP, NAMED_STYLE_SPACE_MAP, NamedStyleType, NilCommand, NumberUnitType, OBJECT_PERMISSION_CONFIG_KEY, ObjectMatrix, ObjectPermissionRuleModel, ObjectPermissionService, ObjectRelativeFromH, ObjectRelativeFromV, Optional, PADDING_KEYS, PAGE_SIZE, PAPER_TYPES, PARAGRAPH_ID_PREFIX, PRESERVE_INSERTED_PARAGRAPH_IDS, PRESET_LIST_TYPE, PageOrientType, PaperType, ParagraphElementType, ParagraphStyleBuilder, ParagraphStyleValue, PermissionService, PermissionStatus, Plugin, PluginService, PositionedObjectLayoutType, PresetListType, ProtectionType, Quantity, QuickListType, QuickListTypeMap, RANGE_DIRECTION, RANGE_TYPE, RBush, RCDisposable, RESTORE_INSERTED_PARAGRAPH_IDS, RGBA_PAREN, RGB_PAREN, ROTATE_BUFFER_VALUE, RTree, Range, RecordValueType, Rectangle, RediError, RedoCommand, RedoCommandId, RefAlias, RegionService, Registry, RegistryAsMap, RelativeDate, ResourceManagerService, RichTextBuilder, RichTextParagraphBuilder, RichTextRunBuilder, RichTextValue, RxDisposable, SECTION_ID_PREFIX, SHEET_EDITOR_UNITS, STYLE_KEYS, SectionType, Self, SheetSkeleton, SheetTypes, SheetViewModel, Skeleton, SkipSelf, SliceBodyType, SpacingRule, Styles, TEXT_DECORATION_KEYS, TEXT_ROTATION_KEYS, THEME_COLORS, TRADITIONAL_DOCUMENT_DEFAULT_MARGIN, TabStopAlignment, TabStopLeader, TableAlignmentType, TableLayoutType, TableRowHeightRule, TableSizeType, TableTextWrapType, TestConfirmService, TextDecoration, TextDecorationBuilder, TextDirection, TextDirectionType, TextStyleBuilder, TextStyleValue, TextX, TextXActionType, ThemeColorType, ThemeColors, ThemeService, Tools, UndoCommand, UndoCommandId, UnitModel, Univer, UniverInstanceService, UniverInstanceType, UpdateDocsAttributeType, UserManagerService, VerticalAlign, VerticalAlignmentType, WithNew, Workbook, Worksheet, WorksheetHiddenState, WrapStrategy, WrapTextType, addLinkToDocumentModel, afterInitApply, afterTime, allocateBaseFormulaTableName, assertBaseTableRecordIdentity, awaitTime, binSearchFirstGreaterThanTarget, binarySearchArray, bufferDebounceTime, cellToRange, characterSpacingControlType, checkForSubstrings, checkIfMove, checkParagraphHasBullet, checkParagraphHasIndent, checkParagraphHasIndentByStyle, cloneBodyWithFreshParagraphIds, cloneCellData, cloneCellDataMatrix, cloneCellDataWithSpanAndDisplay, cloneParagraphWithId, cloneSectionBreakWithId, cloneValue, cloneWorksheetData, codeToBlob, columnLabelToNumber, composeBody, composeInterceptors, composeStyles, concatMatrixArray, containsInteriorInsertionOffset, containsStreamIndex, convertCellToRange, convertObservableToBehaviorSubject, covertCellValue, covertCellValues, createAsyncInterceptorKey, createBaseFormulaTableNameMap, createBaseFormulaTableReferenceNormalizer, createBaseRecordIdField, createDefaultBaseTableSnapshot, createDefaultUser, createDocumentModelWithStyle, createIdentifier, createInterceptorKey, createInternalEditorID, createParagraphId, createRandomId, createRowColIter, createSectionId, createSheetGapTestConfig, currencySymbols, customNameCharacterCheck, dateKit, debounce, dedupe, dedupeBy, deepCompare, delayAnimationFrame, deleteContent, excelDateSerial, excelDateTimePartsToSerial, excelDateTimeSerial, excelSerialToDate, excelSerialToDateTime, excelSerialToDateTimeParts, extractPureTextFromCell, forwardRef, fromCallback, fromEventSubject, generateIntervalsByPoints, generateRandomId, get, getArrayLength, getBaseFormulaTableName, getEmptySnapshot as getBasesEmptySnapshot, getBlockRangeInterval, getBodySlice, getBodySliceForSplitTextXAction, getBodySliceForTextXAction, getBorderStyleType, getCellCoordByIndexSimple, getCellValueType, getCellWithCoordByIndexCore, getColorStyle, getColumnGroupRangeInterval, getCustomBlockIdsInSelections, getCustomBlockInterval, getCustomBlockSlice, getCustomDecorationSlice, getCustomRangeInterval, getCustomRangeSlice, getDateSystemMaxSerial, getDisplayValueFromCell, getEmptySnapshot$1 as getDocsEmptySnapshot, getDocsUpdateBody, getDrawingOrderIndex, getEmptyCell, getExclusiveRangeInterval, getInclusiveRangeInterval, getIntersectRange, getNumfmtLocaleTag, getNumfmtParseValueFilter, getOriginCellValue, getParagraphContentStartOffset, getParagraphContentStartOffsets, getParagraphFollowingBlockOffset, getParagraphsSlice, getPlainText, getReverseDirection, getRichTextEditPath, getSdtBindingKey, getSdtBindingValue, getSectionBreakSlice, getSectionHeaderFooterReferenceKey, getEmptySnapshot$2 as getSheetsEmptySnapshot, getSingleDataStreamChange, getTableCellTokenInterval, getTableRangeInterval, getTableRowTokenInterval, getTableSlice, getTextRunSlice, getTransformOffsetX, getTransformOffsetY, getWorksheetUID, groupBy, handleStyleToString, hashAlgorithm, horizontalLineSegmentsSubtraction, insertMatrixArray, insertTextToContent, intersectsOperationalIntervals, invertColorByHSL, invertColorByMatrix, isAsyncDependencyItem, isAsyncHook, isBaseRecordIdFieldName, isBlackColor, isBooleanString, isCellCoverable, isCellV, isClassDependencyItem, isCommentEditorID, isCtor, isDefaultFormat, isDisposable, isEmptyCell, isFactoryDependencyItem, isFormulaId, isFormulaString, isICellData, isInternalEditorID, isNodeEnv, isNotNullOrUndefined, isNullCell, isNumeric, isPatternEqualWithoutDecimal, isRangesEqual, isRealNum, isSafeNumeric, isSafeUrl, isSameStyleTextRun, isTextFormat, isUnitRangesEqual, isValidBaseRecordId, isValidRange, isValueDependencyItem, isWhiteColor, makeArray, makeCellRangeToRangeData, mapObjectMatrix, merge, mergeIntervals, mergeLocales, mergeOverrideWithDependencies, mergeSets, mergeWith, mergeWorksheetSnapshotWithDefault, migrateBaseFormulaTableNames, mixinClass, moveMatrixArray, moveRangeByOffset, nameCharacterCheck, noop, normalizeBaseFormulaTableName, normalizeBaseFormulaTableReferences, normalizeBody, normalizeDrawingOrderIndex, normalizeInsertedSectionIdsForDocument, normalizeTextRuns, normalizeUrl, numberToABC, numberToListABC, api_exports as numfmt, regexp, registerDependencies, remove, repeatStringNumTimes, replaceInDocumentBody, requestImmediateMacroTask, resolveDocumentParagraphStyle, resolveSectionHeaderFooterReference, resolveSectionHeaderFooterReferences, resolveWithBasePath, rotate, searchArray, searchInOrderedArray, selectionToArray, sequence, sequenceAsync, sequenceExecute, sequenceExecuteAsync, set, setDependencies, setWith, shallowEqual, shiftExclusiveRangeOnDelete, shiftExclusiveRangeOnInsert, shiftInclusiveRangeOnDelete, shiftInclusiveRangeOnInsert, skipParseTagNames, sliceMatrixArray, sortRules, sortRulesByDesc, sortRulesFactory, spliceArray, splitIntoGrid, takeAfter, throttle, toDisposable, touchDependencies, updateAttributeByDelete, updateAttributeByInsert, validateDocBodyStructure, validateDocumentStructure, willLoseNumericPrecision };
28852
+ export { ABCToNumber, AUTO_HEIGHT_FOR_MERGED_CELLS, AbsoluteRefType, ActionIterator, AlignTypeH, AlignTypeV, ArrangeTypeEnum, AsyncInterceptorManager, AsyncLock, AuthzIoLocalService, AutoFillSeries, BASE_RECORD_ID_FIELD_ID, BASE_RECORD_ID_FIELD_NAME, BORDER_KEYS, BORDER_STYLE_KEYS, BaseConditionalColorOperator, BaseConditionalColorTarget, BaseConditionalDateMode, BaseDataModel, BaseFieldType, BaseFilterConjunction, BaseFilterOperator, BaseHierarchyInvalidReason, BaseRecordLinkRole, BaseSortDirection, BaseViewType, BaselineOffset, BlockType, BooleanNumber, BorderStyleTypes, BorderType, BuildTextUtils, BulletAlignment, COLORS, COLOR_STYLE_KEYS, COMMAND_LOG_EXECUTION_CONFIG_KEY, CanceledError, CellModeEnum, CellValueType, ColorKit, ColorType, ColumnLayoutType, ColumnResponsiveType, ColumnSeparatorType, CommandService, CommandType, CommonHideTypes, ConfigService, ContextService, CopyPasteType, CustomCommandExecutionError, CustomDecorationType, CustomRangeType, DEFAULT_CELL, DEFAULT_DOC, DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING, DEFAULT_DOCUMENT_PARAGRAPH_SPACE_ABOVE, DEFAULT_DOCUMENT_PARAGRAPH_SPACE_BELOW, DEFAULT_DOCUMENT_SUB_COMPONENT_ID, DEFAULT_EMPTY_DOCUMENT_VALUE, DEFAULT_NUMBER_FORMAT, DEFAULT_RANGE, DEFAULT_RANGE_ARRAY, DEFAULT_SELECTION, DEFAULT_STYLES, DEFAULT_TEXT_FORMAT, DEFAULT_TEXT_FORMAT_EXCEL, DEFAULT_WORKSHEET_COLUMN_COUNT, DEFAULT_WORKSHEET_COLUMN_COUNT_KEY, DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT, DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY, DEFAULT_WORKSHEET_COLUMN_WIDTH, DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY, DEFAULT_WORKSHEET_ROW_COUNT, DEFAULT_WORKSHEET_ROW_COUNT_KEY, DEFAULT_WORKSHEET_ROW_HEIGHT, DEFAULT_WORKSHEET_ROW_HEIGHT_KEY, DEFAULT_WORKSHEET_ROW_TITLE_WIDTH, DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY, DOCS_COMMENT_EDITOR_UNIT_ID_KEY, DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY, DOCS_NORMAL_EDITOR_UNIT_ID_KEY, DOC_DRAWING_PRINTING_COMPONENT_KEY, DOC_RANGE_TYPE, DashStyleType, DataStreamTreeNodeType, DataStreamTreeTokenType, DataValidationErrorStyle, DataValidationImeMode, DataValidationOperator, DataValidationRenderMode, DataValidationStatus, DataValidationType, DateSystem, DeleteDirection, DependentOn, DesktopLogService, DeveloperMetadataVisibility, Dimension, Direction, Disposable, DisposableCollection, DocStyleType, DocumentBlockRangeType, DocumentBlockType, DocumentDataModel, DocumentFlavor, DocxBreakType, DrawingTypeEnum, EDITOR_ACTIVATED, EMU_PER_CSS_PX, EXCEL_1904_OFFSET, EXTENSION_NAMES, ErrorService, EventState, EventSubject, FOCUSING_BOARD, FOCUSING_COMMENT_EDITOR, FOCUSING_COMMON_DRAWINGS, FOCUSING_DOC, FOCUSING_EDITOR_INPUT_FORMULA, FOCUSING_EDITOR_STANDALONE, FOCUSING_FX_BAR_EDITOR, FOCUSING_PANEL_EDITOR, FOCUSING_SHAPE_TEXT_EDITOR, FOCUSING_SHEET, FOCUSING_SLIDE, FOCUSING_UNIT, FOCUSING_UNIVER_EDITOR, FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE, FORMULA_EDITOR_ACTIVATED, FilterSelectionMode, FollowNumberWithType, FontItalic, FontStyleType, FontWeight, FormulaType, GridType, HorizontalAlign, IAuthzIoService, ICommandService, IConfigService, IConfirmService, IContextService, IImageIoService, ILocalStorageService, ILogService, IMentionIOService, IPermissionService, IResourceLoaderService, IResourceManagerService, IS_ROW_STYLE_PRECEDE_COLUMN_STYLE, IURLImageService, IUndoRedoService, IUniverInstanceService, ImageCacheMap, ImageSourceType, ImageUploadStatusType, Inject, InjectSelf, Injector, InterceptorEffectEnum, InterceptorManager, InterpolationPointType, json1 as JSON1, JSONX, LOCALE_META, LRUHelper, LRUMap, LifecycleService, LifecycleStages, LifecycleUnreachableError, ListGlyphType, LocalUndoRedoService, LocaleService, LocaleType, LogLevel, LookUp, MAX_COLUMN_COUNT, MAX_ITERATION_COUNT, MAX_ROW_COUNT, MODERN_DOCUMENT_DEFAULT_MARGIN, MODERN_DOCUMENT_WIDTH, MOVE_BUFFER_VALUE, Many, MemoryCursor, MentionIOLocalService, MentionType, ModernDocumentWidthMode, NAMED_STYLE_MAP, NAMED_STYLE_SPACE_MAP, NamedStyleType, NilCommand, NumberUnitType, OBJECT_PERMISSION_CONFIG_KEY, ObjectMatrix, ObjectPermissionRuleModel, ObjectPermissionService, ObjectRelativeFromH, ObjectRelativeFromV, Optional, PADDING_KEYS, PAGE_SIZE, PAPER_TYPES, PARAGRAPH_ID_PREFIX, PRESERVE_INSERTED_PARAGRAPH_IDS, PRESET_LIST_TYPE, PageOrientType, PaperType, ParagraphElementType, ParagraphStyleBuilder, ParagraphStyleValue, PermissionService, PermissionStatus, Plugin, PluginService, PositionedObjectLayoutType, PresetListType, ProtectionType, Quantity, QuickListType, QuickListTypeMap, RANGE_DIRECTION, RANGE_TYPE, RBush, RCDisposable, RESTORE_INSERTED_PARAGRAPH_IDS, RGBA_PAREN, RGB_PAREN, ROTATE_BUFFER_VALUE, RTree, Range, RecordValueType, Rectangle, RediError, RedoCommand, RedoCommandId, RefAlias, RegionService, Registry, RegistryAsMap, RelativeDate, ResourceManagerService, RichTextBuilder, RichTextParagraphBuilder, RichTextRunBuilder, RichTextValue, RxDisposable, SECTION_ID_PREFIX, SHEET_EDITOR_UNITS, SHEET_TEXT_LINE_GAP, STYLE_KEYS, SectionType, Self, SheetSkeleton, SheetTypes, SheetViewModel, Skeleton, SkipSelf, SliceBodyType, SpacingRule, Styles, TEXT_DECORATION_KEYS, TEXT_ROTATION_KEYS, THEME_COLORS, TRADITIONAL_DOCUMENT_DEFAULT_MARGIN, TabStopAlignment, TabStopLeader, TableAlignmentType, TableLayoutType, TableRowHeightRule, TableSizeType, TableTextWrapType, TestConfirmService, TextDecoration, TextDecorationBuilder, TextDirection, TextDirectionType, TextStyleBuilder, TextStyleValue, TextX, TextXActionType, ThemeColorType, ThemeColors, ThemeService, Tools, UndoCommand, UndoCommandId, UnitModel, Univer, UniverInstanceService, UniverInstanceType, UpdateDocsAttributeType, UserManagerService, VerticalAlign, VerticalAlignmentType, WithNew, Workbook, Worksheet, WorksheetHiddenState, WrapStrategy, WrapTextType, addLinkToDocumentModel, afterInitApply, afterTime, allocateBaseFormulaTableName, assertBaseTableRecordIdentity, awaitTime, binSearchFirstGreaterThanTarget, binarySearchArray, bufferDebounceTime, cellToRange, characterSpacingControlType, checkForSubstrings, checkIfMove, checkParagraphHasBullet, checkParagraphHasIndent, checkParagraphHasIndentByStyle, cloneBodyWithFreshParagraphIds, cloneCellData, cloneCellDataMatrix, cloneCellDataWithSpanAndDisplay, cloneParagraphWithId, cloneSectionBreakWithId, cloneValue, cloneWorksheetData, codeToBlob, columnLabelToNumber, composeBody, composeInterceptors, composeStyles, concatMatrixArray, containsInteriorInsertionOffset, containsStreamIndex, convertCellToRange, convertObservableToBehaviorSubject, covertCellValue, covertCellValues, createAsyncInterceptorKey, createBaseFormulaTableNameMap, createBaseFormulaTableReferenceNormalizer, createBaseRecordIdField, createDefaultBaseTableSnapshot, createDefaultUser, createDocumentModelWithStyle, createIdentifier, createInterceptorKey, createInternalEditorID, createParagraphId, createRandomId, createRowColIter, createSectionId, createSheetGapTestConfig, cssPxToEmu, currencySymbols, customNameCharacterCheck, dateKit, debounce, dedupe, dedupeBy, deepCompare, delayAnimationFrame, deleteContent, emuToCssPx, excelDateSerial, excelDateTimePartsToSerial, excelDateTimeSerial, excelSerialToDate, excelSerialToDateTime, excelSerialToDateTimeParts, extractPureTextFromCell, forwardRef, fromCallback, fromEventSubject, generateIntervalsByPoints, generateRandomId, get, getArrayLength, getBaseFormulaTableName, getEmptySnapshot as getBasesEmptySnapshot, getBlockRangeInterval, getBodySlice, getBodySliceForSplitTextXAction, getBodySliceForTextXAction, getBorderStyleType, getCellCoordByIndexSimple, getCellValueType, getCellWithCoordByIndexCore, getColorStyle, getColumnGroupRangeInterval, getCustomBlockIdsInSelections, getCustomBlockInterval, getCustomBlockSlice, getCustomDecorationSlice, getCustomRangeInterval, getCustomRangeSlice, getDateSystemMaxSerial, getDisplayValueFromCell, getEmptySnapshot$1 as getDocsEmptySnapshot, getDocsUpdateBody, getDrawingOrderIndex, getEmptyCell, getExclusiveRangeInterval, getInclusiveRangeInterval, getIntersectRange, getNumfmtLocaleTag, getNumfmtParseValueFilter, getOriginCellValue, getParagraphContentStartOffset, getParagraphContentStartOffsets, getParagraphFollowingBlockOffset, getParagraphsSlice, getPlainText, getRecordValueKey, getReverseDirection, getRichTextEditPath, getSdtBindingKey, getSdtBindingValue, getSectionBreakSlice, getSectionHeaderFooterReferenceKey, getEmptySnapshot$2 as getSheetsEmptySnapshot, getSingleDataStreamChange, getTableCellTokenInterval, getTableRangeInterval, getTableRowTokenInterval, getTableSlice, getTextRunSlice, getTransformOffsetX, getTransformOffsetY, getWorksheetUID, groupBy, handleStyleToString, hashAlgorithm, horizontalLineSegmentsSubtraction, insertMatrixArray, insertTextToContent, intersectsOperationalIntervals, invertColorByHSL, invertColorByMatrix, isAsyncDependencyItem, isAsyncHook, isBaseRecordIdFieldName, isBlackColor, isBooleanString, isCellCoverable, isCellV, isClassDependencyItem, isCommentEditorID, isCtor, isDefaultFormat, isDisposable, isEmptyCell, isFactoryDependencyItem, isFormulaId, isFormulaString, isICellData, isInternalEditorID, isNodeEnv, isNotNullOrUndefined, isNullCell, isNumeric, isPatternEqualWithoutDecimal, isRangesEqual, isRealNum, isSafeNumeric, isSafeUrl, isSameStyleTextRun, isTextFormat, isUnitRangesEqual, isValidBaseRecordId, isValidRange, isValueDependencyItem, isWhiteColor, makeArray, makeCellRangeToRangeData, mapObjectMatrix, merge, mergeIntervals, mergeLocales, mergeOverrideWithDependencies, mergeSets, mergeWith, mergeWorksheetSnapshotWithDefault, migrateBaseFormulaTableNames, mixinClass, moveMatrixArray, moveRangeByOffset, nameCharacterCheck, noop, normalizeBaseFormulaTableName, normalizeBaseFormulaTableReferences, normalizeBody, normalizeDrawingOrderIndex, normalizeInsertedSectionIdsForDocument, normalizeTextRuns, normalizeUrl, normalizeWorkbookCalculationSettings, numberToABC, numberToListABC, api_exports as numfmt, regexp, registerDependencies, remove, repeatStringNumTimes, replaceInDocumentBody, requestImmediateMacroTask, resolveDocumentParagraphStyle, resolveSectionHeaderFooterReference, resolveSectionHeaderFooterReferences, resolveWithBasePath, rotate, searchArray, searchInOrderedArray, selectionToArray, sequence, sequenceAsync, sequenceExecute, sequenceExecuteAsync, set, setDependencies, setWith, shallowEqual, shiftExclusiveRangeOnDelete, shiftExclusiveRangeOnInsert, shiftInclusiveRangeOnDelete, shiftInclusiveRangeOnInsert, skipParseTagNames, sliceMatrixArray, sortRules, sortRulesByDesc, sortRulesFactory, spliceArray, splitIntoGrid, takeAfter, throttle, toDisposable, touchDependencies, updateAttributeByDelete, updateAttributeByInsert, validateDocBodyStructure, validateDocumentStructure, willLoseNumericPrecision };
@@ -19,6 +19,7 @@ export declare const DOCS_COMMENT_EDITOR_UNIT_ID_KEY = "__INTERNAL_EDITOR__COMME
19
19
  export declare const DEFAULT_EMPTY_DOCUMENT_VALUE = "\r\n";
20
20
  export declare const IS_ROW_STYLE_PRECEDE_COLUMN_STYLE = "isRowStylePrecedeColumnStyle";
21
21
  export declare const AUTO_HEIGHT_FOR_MERGED_CELLS: unique symbol;
22
+ export declare const SHEET_TEXT_LINE_GAP: unique symbol;
22
23
  export declare function createInternalEditorID(id: string): string;
23
24
  export declare function isInternalEditorID(id: string): boolean;
24
25
  export declare function isCommentEditorID(id: string): boolean;
@@ -38,6 +38,7 @@ export declare function getColumnGroupSlice(body: IDocumentBody, startOffset: nu
38
38
  export declare function getParagraphsSlice(body: IDocumentBody, startOffset: number, endOffset: number, type?: SliceBodyType): {
39
39
  startIndex: number;
40
40
  paragraphId: string;
41
+ headingCollapsed?: boolean;
41
42
  styleId?: string;
42
43
  paragraphStyle?: import("../../..").IParagraphStyle;
43
44
  bullet?: import("../../..").IBullet;
@@ -102,10 +102,15 @@ export { RBush, RTree } from './shared/r-tree';
102
102
  export type { BBox, IRTreeItem } from './shared/r-tree';
103
103
  export { generateRandomId } from './shared/random-id';
104
104
  export { getIntersectRange } from './shared/range';
105
+ export { getRecordValueKey } from './shared/record-value';
106
+ export type { RecordSelection, RecordValue } from './shared/record-value';
105
107
  export { afterTime, bufferDebounceTime, convertObservableToBehaviorSubject, fromCallback, takeAfter, } from './shared/rxjs';
106
108
  export { awaitTime, delayAnimationFrame } from './shared/timer';
107
109
  export { isNodeEnv } from './shared/tools';
110
+ export { cssPxToEmu, EMU_PER_CSS_PX, emuToCssPx } from './shared/units';
108
111
  export * from './sheets';
112
+ export type { IWorkbookCalculationSettings } from './sheets/calculation-settings';
113
+ export { MAX_ITERATION_COUNT, normalizeWorkbookCalculationSettings } from './sheets/calculation-settings';
109
114
  export { Skeleton } from './skeleton';
110
115
  export * from './types/const';
111
116
  export { skipParseTagNames } from './types/const/clipboard';
@@ -16,7 +16,7 @@
16
16
  import type { Observable } from 'rxjs';
17
17
  import type { IDisposable } from '../../common/di';
18
18
  import type { UnitModel } from '../../common/unit';
19
- import type { Nullable } from '../../shared';
19
+ import type { Nullable } from '../../shared/types';
20
20
  import { Injector } from '../../common/di';
21
21
  import { UniverInstanceType } from '../../common/unit';
22
22
  import { Disposable } from '../../shared/lifecycle';
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Copyright 2023-present DreamNum Co., Ltd.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import type { FilterSelectionMode } from '../types/enum/record-filter';
17
+ import { RecordValueType } from '../types/enum/record-filter';
18
+ export type RecordValue = {
19
+ type: RecordValueType.Blank;
20
+ } | {
21
+ type: RecordValueType.String | RecordValueType.Error;
22
+ value: string;
23
+ } | {
24
+ type: RecordValueType.Number | RecordValueType.Date;
25
+ value: number;
26
+ } | {
27
+ type: RecordValueType.Boolean;
28
+ value: boolean;
29
+ };
30
+ export type RecordSelection = {
31
+ mode: FilterSelectionMode.All;
32
+ } | {
33
+ mode: FilterSelectionMode.Include | FilterSelectionMode.Exclude;
34
+ values: RecordValue[];
35
+ };
36
+ export declare function getRecordValueKey(_value: RecordValue): string;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Copyright 2023-present DreamNum Co., Ltd.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ /** English Metric Units per CSS pixel at 96 DPI. */
17
+ export declare const EMU_PER_CSS_PX = 9525;
18
+ export declare function cssPxToEmu(value: number): number;
19
+ export declare function emuToCssPx(value: number): number;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Copyright 2023-present DreamNum Co., Ltd.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export interface IWorkbookCalculationSettings {
17
+ /**
18
+ * Whether circular references are evaluated iteratively. Defaults to false.
19
+ * When disabled, circular formulas retain their cached values, or use zero if no value is cached.
20
+ */
21
+ iterativeCalculation: boolean;
22
+ /**
23
+ * Maximum number of iterations for this workbook's formulas in a circular dependency group.
24
+ * Only used when iterative calculation is enabled.
25
+ * Must be an integer from 1 to 32767. Defaults to 100.
26
+ */
27
+ maxIterations: number;
28
+ /**
29
+ * Convergence threshold for the absolute change in numeric results between successive iterations.
30
+ * Iteration stops when every enabled cell in the group changes by at most this value.
31
+ * Must be a finite positive number. Defaults to 0.001; only used when iterative calculation is enabled.
32
+ */
33
+ maxChange: number;
34
+ }
35
+ export declare const MAX_ITERATION_COUNT = 32767;
36
+ export declare const DEFAULT_WORKBOOK_CALCULATION_SETTINGS: Readonly<IWorkbookCalculationSettings>;
37
+ export declare function normalizeWorkbookCalculationSettings(value?: Partial<IWorkbookCalculationSettings>): IWorkbookCalculationSettings;