@univerjs/sheets-filter 0.24.0 → 0.25.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.
Files changed (108) hide show
  1. package/lib/cjs/facade.js +16 -9
  2. package/lib/cjs/index.js +23 -10
  3. package/lib/cjs/locale/ar-SA.js +9 -0
  4. package/lib/cjs/locale/ca-ES.js +9 -0
  5. package/lib/cjs/locale/de-DE.js +9 -0
  6. package/lib/cjs/locale/en-US.js +24 -0
  7. package/lib/cjs/locale/es-ES.js +9 -0
  8. package/lib/cjs/locale/fa-IR.js +9 -0
  9. package/lib/cjs/locale/fr-FR.js +9 -0
  10. package/lib/cjs/locale/id-ID.js +9 -0
  11. package/lib/cjs/locale/it-IT.js +9 -0
  12. package/lib/cjs/locale/ja-JP.js +9 -0
  13. package/lib/cjs/locale/ko-KR.js +9 -0
  14. package/lib/cjs/locale/pl-PL.js +9 -0
  15. package/lib/cjs/locale/pt-BR.js +9 -0
  16. package/lib/cjs/locale/ru-RU.js +9 -0
  17. package/lib/cjs/locale/sk-SK.js +9 -0
  18. package/lib/cjs/locale/vi-VN.js +9 -0
  19. package/lib/cjs/locale/zh-CN.js +9 -0
  20. package/lib/cjs/locale/zh-HK.js +9 -0
  21. package/lib/cjs/locale/zh-TW.js +9 -0
  22. package/lib/es/facade.js +16 -9
  23. package/lib/es/index.js +23 -10
  24. package/lib/es/locale/ar-SA.js +8 -0
  25. package/lib/es/locale/ca-ES.js +8 -0
  26. package/lib/es/locale/de-DE.js +8 -0
  27. package/lib/es/locale/en-US.js +23 -0
  28. package/lib/es/locale/es-ES.js +8 -0
  29. package/lib/es/locale/fa-IR.js +8 -0
  30. package/lib/es/locale/fr-FR.js +8 -0
  31. package/lib/es/locale/id-ID.js +8 -0
  32. package/lib/es/locale/it-IT.js +8 -0
  33. package/lib/es/locale/ja-JP.js +8 -0
  34. package/lib/es/locale/ko-KR.js +8 -0
  35. package/lib/es/locale/pl-PL.js +8 -0
  36. package/lib/es/locale/pt-BR.js +8 -0
  37. package/lib/es/locale/ru-RU.js +8 -0
  38. package/lib/es/locale/sk-SK.js +8 -0
  39. package/lib/es/locale/vi-VN.js +8 -0
  40. package/lib/es/locale/zh-CN.js +8 -0
  41. package/lib/es/locale/zh-HK.js +8 -0
  42. package/lib/es/locale/zh-TW.js +8 -0
  43. package/lib/facade.js +16 -9
  44. package/lib/index.js +23 -10
  45. package/lib/locale/ar-SA.js +8 -0
  46. package/lib/locale/ca-ES.js +8 -0
  47. package/lib/locale/de-DE.js +8 -0
  48. package/lib/locale/en-US.js +23 -0
  49. package/lib/locale/es-ES.js +8 -0
  50. package/lib/locale/fa-IR.js +8 -0
  51. package/lib/locale/fr-FR.js +8 -0
  52. package/lib/locale/id-ID.js +8 -0
  53. package/lib/locale/it-IT.js +8 -0
  54. package/lib/locale/ja-JP.js +8 -0
  55. package/lib/locale/ko-KR.js +8 -0
  56. package/lib/locale/pl-PL.js +8 -0
  57. package/lib/locale/pt-BR.js +8 -0
  58. package/lib/locale/ru-RU.js +8 -0
  59. package/lib/locale/sk-SK.js +8 -0
  60. package/lib/locale/vi-VN.js +8 -0
  61. package/lib/locale/zh-CN.js +8 -0
  62. package/lib/locale/zh-HK.js +8 -0
  63. package/lib/locale/zh-TW.js +8 -0
  64. package/lib/types/controllers/sheets-filter.controller.d.ts +1 -0
  65. package/lib/types/facade/f-filter.d.ts +14 -7
  66. package/lib/types/facade/f-range.d.ts +4 -2
  67. package/lib/types/facade/f-worksheet.d.ts +2 -1
  68. package/lib/types/locale/ar-SA.d.ts +18 -0
  69. package/lib/types/locale/ca-ES.d.ts +18 -0
  70. package/lib/types/locale/de-DE.d.ts +18 -0
  71. package/lib/types/locale/en-US.d.ts +26 -0
  72. package/lib/types/locale/es-ES.d.ts +18 -0
  73. package/lib/types/locale/fa-IR.d.ts +18 -0
  74. package/lib/types/locale/fr-FR.d.ts +18 -0
  75. package/lib/types/locale/id-ID.d.ts +18 -0
  76. package/lib/types/locale/it-IT.d.ts +18 -0
  77. package/lib/types/locale/ja-JP.d.ts +18 -0
  78. package/lib/types/locale/ko-KR.d.ts +18 -0
  79. package/lib/types/locale/pl-PL.d.ts +18 -0
  80. package/lib/types/locale/pt-BR.d.ts +18 -0
  81. package/lib/types/locale/ru-RU.d.ts +18 -0
  82. package/lib/types/locale/sk-SK.d.ts +18 -0
  83. package/lib/types/locale/vi-VN.d.ts +18 -0
  84. package/lib/types/locale/zh-CN.d.ts +18 -0
  85. package/lib/types/locale/zh-HK.d.ts +18 -0
  86. package/lib/types/locale/zh-TW.d.ts +18 -0
  87. package/lib/umd/facade.js +1 -1
  88. package/lib/umd/index.js +1 -1
  89. package/lib/umd/locale/ar-SA.js +1 -0
  90. package/lib/umd/locale/ca-ES.js +1 -0
  91. package/lib/umd/locale/de-DE.js +1 -0
  92. package/lib/umd/locale/en-US.js +1 -0
  93. package/lib/umd/locale/es-ES.js +1 -0
  94. package/lib/umd/locale/fa-IR.js +1 -0
  95. package/lib/umd/locale/fr-FR.js +1 -0
  96. package/lib/umd/locale/id-ID.js +1 -0
  97. package/lib/umd/locale/it-IT.js +1 -0
  98. package/lib/umd/locale/ja-JP.js +1 -0
  99. package/lib/umd/locale/ko-KR.js +1 -0
  100. package/lib/umd/locale/pl-PL.js +1 -0
  101. package/lib/umd/locale/pt-BR.js +1 -0
  102. package/lib/umd/locale/ru-RU.js +1 -0
  103. package/lib/umd/locale/sk-SK.js +1 -0
  104. package/lib/umd/locale/vi-VN.js +1 -0
  105. package/lib/umd/locale/zh-CN.js +1 -0
  106. package/lib/umd/locale/zh-HK.js +1 -0
  107. package/lib/umd/locale/zh-TW.js +1 -0
  108. package/package.json +13 -8
package/lib/cjs/facade.js CHANGED
@@ -70,7 +70,7 @@ var FUniverSheetsFilterMixin = class extends _univerjs_core_facade.FUniver {
70
70
  _univerjs_core_facade.FUniver.extend(FUniverSheetsFilterMixin);
71
71
 
72
72
  //#endregion
73
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorateParam.js
73
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorateParam.js
74
74
  function __decorateParam(paramIndex, decorator) {
75
75
  return function(target, key) {
76
76
  decorator(target, key, paramIndex);
@@ -78,7 +78,7 @@ function __decorateParam(paramIndex, decorator) {
78
78
  }
79
79
 
80
80
  //#endregion
81
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorate.js
81
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorate.js
82
82
  function __decorate(decorators, target, key, desc) {
83
83
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
84
84
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -102,7 +102,8 @@ let FFilter = class FFilter {
102
102
  * @example
103
103
  * ```typescript
104
104
  * const fWorkbook = univerAPI.getActiveWorkbook();
105
- * const fWorksheet = fWorkbook.getActiveSheet();
105
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
106
+ * if (!fWorksheet) return;
106
107
  *
107
108
  * // Set some values of the range C1:F10
108
109
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -151,7 +152,8 @@ let FFilter = class FFilter {
151
152
  * @example
152
153
  * ```typescript
153
154
  * const fWorkbook = univerAPI.getActiveWorkbook();
154
- * const fWorksheet = fWorkbook.getActiveSheet();
155
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
156
+ * if (!fWorksheet) return;
155
157
  *
156
158
  * // Set some values of the range C1:F10
157
159
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -202,7 +204,8 @@ let FFilter = class FFilter {
202
204
  * @example
203
205
  * ```typescript
204
206
  * const fWorkbook = univerAPI.getActiveWorkbook();
205
- * const fWorksheet = fWorkbook.getActiveSheet();
207
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
208
+ * if (!fWorksheet) return;
206
209
  *
207
210
  * // Set some values of the range C1:F10
208
211
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -260,7 +263,8 @@ let FFilter = class FFilter {
260
263
  * @example
261
264
  * ```typescript
262
265
  * const fWorkbook = univerAPI.getActiveWorkbook();
263
- * const fWorksheet = fWorkbook.getActiveSheet();
266
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
267
+ * if (!fWorksheet) return;
264
268
  *
265
269
  * // Set some values of the range C1:F10
266
270
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -311,7 +315,8 @@ let FFilter = class FFilter {
311
315
  * @example
312
316
  * ```typescript
313
317
  * const fWorkbook = univerAPI.getActiveWorkbook();
314
- * const fWorksheet = fWorkbook.getActiveSheet();
318
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
319
+ * if (!fWorksheet) return;
315
320
  * const fFilter = fWorksheet.getFilter();
316
321
  * console.log(fFilter?.getRange().getA1Notation());
317
322
  * ```
@@ -326,7 +331,8 @@ let FFilter = class FFilter {
326
331
  * @example
327
332
  * ```typescript
328
333
  * const fWorkbook = univerAPI.getActiveWorkbook();
329
- * const fWorksheet = fWorkbook.getActiveSheet();
334
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
335
+ * if (!fWorksheet) return;
330
336
  *
331
337
  * // Set some values of the range C1:F10
332
338
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -377,7 +383,8 @@ let FFilter = class FFilter {
377
383
  * @example
378
384
  * ```typescript
379
385
  * const fWorkbook = univerAPI.getActiveWorkbook();
380
- * const fWorksheet = fWorkbook.getActiveSheet();
386
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
387
+ * if (!fWorksheet) return;
381
388
  * const fRange = fWorksheet.getRange('A1:D14');
382
389
  * let fFilter = fRange.createFilter();
383
390
  *
package/lib/cjs/index.js CHANGED
@@ -164,7 +164,7 @@ function isWildCardString(str) {
164
164
  }
165
165
 
166
166
  //#endregion
167
- //#region \0@oxc-project+runtime@0.129.0/helpers/typeof.js
167
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/typeof.js
168
168
  function _typeof(o) {
169
169
  "@babel/helpers - typeof";
170
170
  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
@@ -175,7 +175,7 @@ function _typeof(o) {
175
175
  }
176
176
 
177
177
  //#endregion
178
- //#region \0@oxc-project+runtime@0.129.0/helpers/toPrimitive.js
178
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/toPrimitive.js
179
179
  function toPrimitive(t, r) {
180
180
  if ("object" != _typeof(t) || !t) return t;
181
181
  var e = t[Symbol.toPrimitive];
@@ -188,14 +188,14 @@ function toPrimitive(t, r) {
188
188
  }
189
189
 
190
190
  //#endregion
191
- //#region \0@oxc-project+runtime@0.129.0/helpers/toPropertyKey.js
191
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/toPropertyKey.js
192
192
  function toPropertyKey(t) {
193
193
  var i = toPrimitive(t, "string");
194
194
  return "symbol" == _typeof(i) ? i : i + "";
195
195
  }
196
196
 
197
197
  //#endregion
198
- //#region \0@oxc-project+runtime@0.129.0/helpers/defineProperty.js
198
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/defineProperty.js
199
199
  function _defineProperty(e, r, t) {
200
200
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
201
201
  value: t,
@@ -596,7 +596,7 @@ function extractFilterValueFromCell(cell) {
596
596
  }
597
597
 
598
598
  //#endregion
599
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorateParam.js
599
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorateParam.js
600
600
  function __decorateParam(paramIndex, decorator) {
601
601
  return function(target, key) {
602
602
  decorator(target, key, paramIndex);
@@ -604,7 +604,7 @@ function __decorateParam(paramIndex, decorator) {
604
604
  }
605
605
 
606
606
  //#endregion
607
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorate.js
607
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorate.js
608
608
  function __decorate(decorators, target, key, desc) {
609
609
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
610
610
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -1202,6 +1202,15 @@ let SheetsFilterController = class SheetsFilterController extends _univerjs_core
1202
1202
  }));
1203
1203
  }
1204
1204
  _initCommands() {
1205
+ [
1206
+ SetSheetFilterRangeCommand,
1207
+ RemoveSheetFilterCommand,
1208
+ SetSheetsFilterCriteriaCommand,
1209
+ ClearSheetsFilterCriteriaCommand,
1210
+ ReCalcSheetsFilterCommand
1211
+ ].forEach((command) => {
1212
+ this.disposeWithMe(this._commandService.registerCommand(command));
1213
+ });
1205
1214
  [
1206
1215
  SetSheetsFilterCriteriaMutation,
1207
1216
  SetSheetsFilterRangeMutation,
@@ -1565,10 +1574,9 @@ let SheetsFilterController = class SheetsFilterController extends _univerjs_core
1565
1574
  var _this$_univerInstance;
1566
1575
  const worksheet = (_this$_univerInstance = this._univerInstanceService.getUniverSheetInstance(unitId)) === null || _this$_univerInstance === void 0 ? void 0 : _this$_univerInstance.getSheetBySheetId(subUnitId);
1567
1576
  if (!worksheet) return this._handleNull();
1568
- const hiddenRows = [];
1569
- for (let r = removeStartRow; r <= removeEndRow; r++) if (worksheet.getRowFiltered(r)) hiddenRows.push(r);
1577
+ const hiddenRowCount = this._getFilteredRowCount(worksheet, removeStartRow, removeEndRow);
1570
1578
  const afterStartRow = Math.min(startRow, removeStartRow);
1571
- const afterEndRow = afterStartRow + (endRow - startRow) - count + hiddenRows.length;
1579
+ const afterEndRow = afterStartRow + (endRow - startRow) - count + hiddenRowCount;
1572
1580
  const setFilterRangeMutationParams = {
1573
1581
  unitId,
1574
1582
  subUnitId,
@@ -1588,6 +1596,11 @@ let SheetsFilterController = class SheetsFilterController extends _univerjs_core
1588
1596
  redos: mergeSetFilterCriteria(redos)
1589
1597
  };
1590
1598
  }
1599
+ _getFilteredRowCount(worksheet, startRow, endRow) {
1600
+ let count = 0;
1601
+ for (let row = startRow; row <= endRow; row++) if (worksheet.getRowFiltered(row)) count++;
1602
+ return count;
1603
+ }
1591
1604
  handleMoveColsCommand({ fromRange, toRange }, unitId, subUnitId) {
1592
1605
  var _filterModel$getRange4;
1593
1606
  const filterModel = this._sheetsFilterService.getFilterModel(unitId, subUnitId);
@@ -2216,7 +2229,7 @@ SheetsFilterSyncController = __decorate([
2216
2229
  //#endregion
2217
2230
  //#region package.json
2218
2231
  var name = "@univerjs/sheets-filter";
2219
- var version = "0.24.0";
2232
+ var version = "0.25.0";
2220
2233
 
2221
2234
  //#endregion
2222
2235
  //#region src/services/sheet-filter-formula.service.ts
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/ar-SA.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "يحتوي النطاق المحدد على صف واحد فقط وهو غير صالح للتصفية." },
5
+ msg: { "filter-header-forbidden": "لا يمكنك نقل صف الرأس الخاص بالتصفية." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/ca-ES.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "L'interval seleccionat només té una fila i no és vàlid per filtrar." },
5
+ msg: { "filter-header-forbidden": "No pots moure la fila de capçalera d'un filtre." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/de-DE.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "Der ausgewählte Bereich hat nur eine Zeile und ist für den Filter ungültig." },
5
+ msg: { "filter-header-forbidden": "Die Kopfzeile eines Filters kann nicht verschoben werden." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,24 @@
1
+
2
+ //#region src/locale/en-US.ts
3
+ /**
4
+ * Copyright 2023-present DreamNum Co., Ltd.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+ const locale = { "sheets-filter": {
19
+ command: { "not-valid-filter-range": "The selected range only has one row and not valid for filter." },
20
+ msg: { "filter-header-forbidden": "You can't move the header row of a filter." }
21
+ } };
22
+
23
+ //#endregion
24
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/es-ES.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "El rango seleccionado solo tiene una fila y no es válido para filtrar." },
5
+ msg: { "filter-header-forbidden": "No puedes mover la fila de encabezado de un filtro." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/fa-IR.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "محدوده انتخاب شده فقط یک ردیف دارد و برای فیلتر معتبر نیست." },
5
+ msg: { "filter-header-forbidden": "شما نمی‌توانید ردیف هدر یک فیلتر را جابه‌جا کنید." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/fr-FR.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "La plage sélectionnée n'a qu'une seule ligne et n'est pas valide pour le filtre." },
5
+ msg: { "filter-header-forbidden": "Vous ne pouvez pas déplacer la ligne d'en-tête d'un filtre." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/id-ID.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "Rentang yang dipilih hanya memiliki satu baris dan tidak valid untuk filter." },
5
+ msg: { "filter-header-forbidden": "Anda tidak dapat memindahkan baris header filter." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/it-IT.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "L'intervallo selezionato ha una sola riga e non è valido per il filtro." },
5
+ msg: { "filter-header-forbidden": "Non è possibile spostare la riga di intestazione di un filtro." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/ja-JP.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "選択範囲に1行しか含まれていないため、フィルタを適用できません。" },
5
+ msg: { "filter-header-forbidden": "フィルタヘッダー行は移動できません。" }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/ko-KR.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "선택한 범위에 한 행만 있어 필터를 적용할 수 없습니다." },
5
+ msg: { "filter-header-forbidden": "필터 헤더 행은 이동할 수 없습니다." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/pl-PL.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "Wybrany zakres ma tylko jeden wiersz i nie jest prawidłowy do filtrowania." },
5
+ msg: { "filter-header-forbidden": "Nie można przenieść wiersza nagłówka filtra." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/pt-BR.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "O intervalo selecionado possui apenas uma linha e não é válido para filtro." },
5
+ msg: { "filter-header-forbidden": "Você não pode mover a linha de cabeçalho de um filtro." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/ru-RU.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "Выбранный диапазон содержит только одну строку и не подходит для фильтра." },
5
+ msg: { "filter-header-forbidden": "Вы не можете переместить строку заголовка фильтра." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/sk-SK.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "Vybraný rozsah má iba jeden riadok a nie je vhodný na filtrovanie." },
5
+ msg: { "filter-header-forbidden": "Riadok hlavičky filtra sa nedá presunúť." }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/vi-VN.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "Khu vực được chọn chỉ có một hàng, không thể lọc" },
5
+ msg: { "filter-header-forbidden": "Không thể di chuyển hàng đầu lọc" }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/zh-CN.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "选中的区域只有一行,无法进行筛选" },
5
+ msg: { "filter-header-forbidden": "无法移动筛选行头" }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/zh-HK.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "選取的區域只有一列,無法進行篩選" },
5
+ msg: { "filter-header-forbidden": "無法移動篩選列頭" }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
@@ -0,0 +1,9 @@
1
+
2
+ //#region src/locale/zh-TW.ts
3
+ const locale = { "sheets-filter": {
4
+ command: { "not-valid-filter-range": "選取的區域只有一列,無法進行篩選" },
5
+ msg: { "filter-header-forbidden": "無法移動篩選列頭" }
6
+ } };
7
+
8
+ //#endregion
9
+ module.exports = locale;
package/lib/es/facade.js CHANGED
@@ -69,7 +69,7 @@ var FUniverSheetsFilterMixin = class extends FUniver {
69
69
  FUniver.extend(FUniverSheetsFilterMixin);
70
70
 
71
71
  //#endregion
72
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorateParam.js
72
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorateParam.js
73
73
  function __decorateParam(paramIndex, decorator) {
74
74
  return function(target, key) {
75
75
  decorator(target, key, paramIndex);
@@ -77,7 +77,7 @@ function __decorateParam(paramIndex, decorator) {
77
77
  }
78
78
 
79
79
  //#endregion
80
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorate.js
80
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorate.js
81
81
  function __decorate(decorators, target, key, desc) {
82
82
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
83
83
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -101,7 +101,8 @@ let FFilter = class FFilter {
101
101
  * @example
102
102
  * ```typescript
103
103
  * const fWorkbook = univerAPI.getActiveWorkbook();
104
- * const fWorksheet = fWorkbook.getActiveSheet();
104
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
105
+ * if (!fWorksheet) return;
105
106
  *
106
107
  * // Set some values of the range C1:F10
107
108
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -150,7 +151,8 @@ let FFilter = class FFilter {
150
151
  * @example
151
152
  * ```typescript
152
153
  * const fWorkbook = univerAPI.getActiveWorkbook();
153
- * const fWorksheet = fWorkbook.getActiveSheet();
154
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
155
+ * if (!fWorksheet) return;
154
156
  *
155
157
  * // Set some values of the range C1:F10
156
158
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -201,7 +203,8 @@ let FFilter = class FFilter {
201
203
  * @example
202
204
  * ```typescript
203
205
  * const fWorkbook = univerAPI.getActiveWorkbook();
204
- * const fWorksheet = fWorkbook.getActiveSheet();
206
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
207
+ * if (!fWorksheet) return;
205
208
  *
206
209
  * // Set some values of the range C1:F10
207
210
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -259,7 +262,8 @@ let FFilter = class FFilter {
259
262
  * @example
260
263
  * ```typescript
261
264
  * const fWorkbook = univerAPI.getActiveWorkbook();
262
- * const fWorksheet = fWorkbook.getActiveSheet();
265
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
266
+ * if (!fWorksheet) return;
263
267
  *
264
268
  * // Set some values of the range C1:F10
265
269
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -310,7 +314,8 @@ let FFilter = class FFilter {
310
314
  * @example
311
315
  * ```typescript
312
316
  * const fWorkbook = univerAPI.getActiveWorkbook();
313
- * const fWorksheet = fWorkbook.getActiveSheet();
317
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
318
+ * if (!fWorksheet) return;
314
319
  * const fFilter = fWorksheet.getFilter();
315
320
  * console.log(fFilter?.getRange().getA1Notation());
316
321
  * ```
@@ -325,7 +330,8 @@ let FFilter = class FFilter {
325
330
  * @example
326
331
  * ```typescript
327
332
  * const fWorkbook = univerAPI.getActiveWorkbook();
328
- * const fWorksheet = fWorkbook.getActiveSheet();
333
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
334
+ * if (!fWorksheet) return;
329
335
  *
330
336
  * // Set some values of the range C1:F10
331
337
  * const fRange = fWorksheet.getRange('C1:F10');
@@ -376,7 +382,8 @@ let FFilter = class FFilter {
376
382
  * @example
377
383
  * ```typescript
378
384
  * const fWorkbook = univerAPI.getActiveWorkbook();
379
- * const fWorksheet = fWorkbook.getActiveSheet();
385
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
386
+ * if (!fWorksheet) return;
380
387
  * const fRange = fWorksheet.getRange('A1:D14');
381
388
  * let fFilter = fRange.createFilter();
382
389
  *
package/lib/es/index.js CHANGED
@@ -163,7 +163,7 @@ function isWildCardString(str) {
163
163
  }
164
164
 
165
165
  //#endregion
166
- //#region \0@oxc-project+runtime@0.129.0/helpers/typeof.js
166
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/typeof.js
167
167
  function _typeof(o) {
168
168
  "@babel/helpers - typeof";
169
169
  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
@@ -174,7 +174,7 @@ function _typeof(o) {
174
174
  }
175
175
 
176
176
  //#endregion
177
- //#region \0@oxc-project+runtime@0.129.0/helpers/toPrimitive.js
177
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/toPrimitive.js
178
178
  function toPrimitive(t, r) {
179
179
  if ("object" != _typeof(t) || !t) return t;
180
180
  var e = t[Symbol.toPrimitive];
@@ -187,14 +187,14 @@ function toPrimitive(t, r) {
187
187
  }
188
188
 
189
189
  //#endregion
190
- //#region \0@oxc-project+runtime@0.129.0/helpers/toPropertyKey.js
190
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/toPropertyKey.js
191
191
  function toPropertyKey(t) {
192
192
  var i = toPrimitive(t, "string");
193
193
  return "symbol" == _typeof(i) ? i : i + "";
194
194
  }
195
195
 
196
196
  //#endregion
197
- //#region \0@oxc-project+runtime@0.129.0/helpers/defineProperty.js
197
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/defineProperty.js
198
198
  function _defineProperty(e, r, t) {
199
199
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
200
200
  value: t,
@@ -595,7 +595,7 @@ function extractFilterValueFromCell(cell) {
595
595
  }
596
596
 
597
597
  //#endregion
598
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorateParam.js
598
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorateParam.js
599
599
  function __decorateParam(paramIndex, decorator) {
600
600
  return function(target, key) {
601
601
  decorator(target, key, paramIndex);
@@ -603,7 +603,7 @@ function __decorateParam(paramIndex, decorator) {
603
603
  }
604
604
 
605
605
  //#endregion
606
- //#region \0@oxc-project+runtime@0.129.0/helpers/decorate.js
606
+ //#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorate.js
607
607
  function __decorate(decorators, target, key, desc) {
608
608
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
609
609
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -1201,6 +1201,15 @@ let SheetsFilterController = class SheetsFilterController extends Disposable {
1201
1201
  }));
1202
1202
  }
1203
1203
  _initCommands() {
1204
+ [
1205
+ SetSheetFilterRangeCommand,
1206
+ RemoveSheetFilterCommand,
1207
+ SetSheetsFilterCriteriaCommand,
1208
+ ClearSheetsFilterCriteriaCommand,
1209
+ ReCalcSheetsFilterCommand
1210
+ ].forEach((command) => {
1211
+ this.disposeWithMe(this._commandService.registerCommand(command));
1212
+ });
1204
1213
  [
1205
1214
  SetSheetsFilterCriteriaMutation,
1206
1215
  SetSheetsFilterRangeMutation,
@@ -1564,10 +1573,9 @@ let SheetsFilterController = class SheetsFilterController extends Disposable {
1564
1573
  var _this$_univerInstance;
1565
1574
  const worksheet = (_this$_univerInstance = this._univerInstanceService.getUniverSheetInstance(unitId)) === null || _this$_univerInstance === void 0 ? void 0 : _this$_univerInstance.getSheetBySheetId(subUnitId);
1566
1575
  if (!worksheet) return this._handleNull();
1567
- const hiddenRows = [];
1568
- for (let r = removeStartRow; r <= removeEndRow; r++) if (worksheet.getRowFiltered(r)) hiddenRows.push(r);
1576
+ const hiddenRowCount = this._getFilteredRowCount(worksheet, removeStartRow, removeEndRow);
1569
1577
  const afterStartRow = Math.min(startRow, removeStartRow);
1570
- const afterEndRow = afterStartRow + (endRow - startRow) - count + hiddenRows.length;
1578
+ const afterEndRow = afterStartRow + (endRow - startRow) - count + hiddenRowCount;
1571
1579
  const setFilterRangeMutationParams = {
1572
1580
  unitId,
1573
1581
  subUnitId,
@@ -1587,6 +1595,11 @@ let SheetsFilterController = class SheetsFilterController extends Disposable {
1587
1595
  redos: mergeSetFilterCriteria(redos)
1588
1596
  };
1589
1597
  }
1598
+ _getFilteredRowCount(worksheet, startRow, endRow) {
1599
+ let count = 0;
1600
+ for (let row = startRow; row <= endRow; row++) if (worksheet.getRowFiltered(row)) count++;
1601
+ return count;
1602
+ }
1590
1603
  handleMoveColsCommand({ fromRange, toRange }, unitId, subUnitId) {
1591
1604
  var _filterModel$getRange4;
1592
1605
  const filterModel = this._sheetsFilterService.getFilterModel(unitId, subUnitId);
@@ -2215,7 +2228,7 @@ SheetsFilterSyncController = __decorate([
2215
2228
  //#endregion
2216
2229
  //#region package.json
2217
2230
  var name = "@univerjs/sheets-filter";
2218
- var version = "0.24.0";
2231
+ var version = "0.25.0";
2219
2232
 
2220
2233
  //#endregion
2221
2234
  //#region src/services/sheet-filter-formula.service.ts
@@ -0,0 +1,8 @@
1
+ //#region src/locale/ar-SA.ts
2
+ const locale = { "sheets-filter": {
3
+ command: { "not-valid-filter-range": "يحتوي النطاق المحدد على صف واحد فقط وهو غير صالح للتصفية." },
4
+ msg: { "filter-header-forbidden": "لا يمكنك نقل صف الرأس الخاص بالتصفية." }
5
+ } };
6
+
7
+ //#endregion
8
+ export { locale as default };
@@ -0,0 +1,8 @@
1
+ //#region src/locale/ca-ES.ts
2
+ const locale = { "sheets-filter": {
3
+ command: { "not-valid-filter-range": "L'interval seleccionat només té una fila i no és vàlid per filtrar." },
4
+ msg: { "filter-header-forbidden": "No pots moure la fila de capçalera d'un filtre." }
5
+ } };
6
+
7
+ //#endregion
8
+ export { locale as default };
@@ -0,0 +1,8 @@
1
+ //#region src/locale/de-DE.ts
2
+ const locale = { "sheets-filter": {
3
+ command: { "not-valid-filter-range": "Der ausgewählte Bereich hat nur eine Zeile und ist für den Filter ungültig." },
4
+ msg: { "filter-header-forbidden": "Die Kopfzeile eines Filters kann nicht verschoben werden." }
5
+ } };
6
+
7
+ //#endregion
8
+ export { locale as default };
@@ -0,0 +1,23 @@
1
+ //#region src/locale/en-US.ts
2
+ /**
3
+ * Copyright 2023-present DreamNum Co., Ltd.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ const locale = { "sheets-filter": {
18
+ command: { "not-valid-filter-range": "The selected range only has one row and not valid for filter." },
19
+ msg: { "filter-header-forbidden": "You can't move the header row of a filter." }
20
+ } };
21
+
22
+ //#endregion
23
+ export { locale as default };
@@ -0,0 +1,8 @@
1
+ //#region src/locale/es-ES.ts
2
+ const locale = { "sheets-filter": {
3
+ command: { "not-valid-filter-range": "El rango seleccionado solo tiene una fila y no es válido para filtrar." },
4
+ msg: { "filter-header-forbidden": "No puedes mover la fila de encabezado de un filtro." }
5
+ } };
6
+
7
+ //#endregion
8
+ export { locale as default };