@univerjs/sheets-data-validation 0.24.0 → 0.25.0-insiders.20260608-e4336f7

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 (123) hide show
  1. package/lib/cjs/facade.js +114 -128
  2. package/lib/cjs/index.js +185 -160
  3. package/lib/cjs/locale/ar-SA.js +139 -0
  4. package/lib/cjs/locale/ca-ES.js +139 -0
  5. package/lib/cjs/locale/de-DE.js +139 -0
  6. package/lib/cjs/locale/en-US.js +154 -0
  7. package/lib/cjs/locale/es-ES.js +139 -0
  8. package/lib/cjs/locale/fa-IR.js +139 -0
  9. package/lib/cjs/locale/fr-FR.js +139 -0
  10. package/lib/cjs/locale/id-ID.js +139 -0
  11. package/lib/cjs/locale/it-IT.js +139 -0
  12. package/lib/cjs/locale/ja-JP.js +139 -0
  13. package/lib/cjs/locale/ko-KR.js +139 -0
  14. package/lib/cjs/locale/pl-PL.js +139 -0
  15. package/lib/cjs/locale/pt-BR.js +139 -0
  16. package/lib/cjs/locale/ru-RU.js +139 -0
  17. package/lib/cjs/locale/sk-SK.js +139 -0
  18. package/lib/cjs/locale/vi-VN.js +139 -0
  19. package/lib/cjs/locale/zh-CN.js +139 -0
  20. package/lib/cjs/locale/zh-HK.js +139 -0
  21. package/lib/cjs/locale/zh-TW.js +139 -0
  22. package/lib/es/facade.js +115 -129
  23. package/lib/es/index.js +183 -156
  24. package/lib/es/locale/ar-SA.js +138 -0
  25. package/lib/es/locale/ca-ES.js +138 -0
  26. package/lib/es/locale/de-DE.js +138 -0
  27. package/lib/es/locale/en-US.js +153 -0
  28. package/lib/es/locale/es-ES.js +138 -0
  29. package/lib/es/locale/fa-IR.js +138 -0
  30. package/lib/es/locale/fr-FR.js +138 -0
  31. package/lib/es/locale/id-ID.js +138 -0
  32. package/lib/es/locale/it-IT.js +138 -0
  33. package/lib/es/locale/ja-JP.js +138 -0
  34. package/lib/es/locale/ko-KR.js +138 -0
  35. package/lib/es/locale/pl-PL.js +138 -0
  36. package/lib/es/locale/pt-BR.js +138 -0
  37. package/lib/es/locale/ru-RU.js +138 -0
  38. package/lib/es/locale/sk-SK.js +138 -0
  39. package/lib/es/locale/vi-VN.js +138 -0
  40. package/lib/es/locale/zh-CN.js +138 -0
  41. package/lib/es/locale/zh-HK.js +138 -0
  42. package/lib/es/locale/zh-TW.js +138 -0
  43. package/lib/facade.js +115 -129
  44. package/lib/index.js +183 -156
  45. package/lib/locale/ar-SA.js +138 -0
  46. package/lib/locale/ca-ES.js +138 -0
  47. package/lib/locale/de-DE.js +138 -0
  48. package/lib/locale/en-US.js +153 -0
  49. package/lib/locale/es-ES.js +138 -0
  50. package/lib/locale/fa-IR.js +138 -0
  51. package/lib/locale/fr-FR.js +138 -0
  52. package/lib/locale/id-ID.js +138 -0
  53. package/lib/locale/it-IT.js +138 -0
  54. package/lib/locale/ja-JP.js +138 -0
  55. package/lib/locale/ko-KR.js +138 -0
  56. package/lib/locale/pl-PL.js +138 -0
  57. package/lib/locale/pt-BR.js +138 -0
  58. package/lib/locale/ru-RU.js +138 -0
  59. package/lib/locale/sk-SK.js +138 -0
  60. package/lib/locale/vi-VN.js +138 -0
  61. package/lib/locale/zh-CN.js +138 -0
  62. package/lib/locale/zh-HK.js +138 -0
  63. package/lib/locale/zh-TW.js +138 -0
  64. package/lib/types/facade/f-data-validation-builder.d.ts +50 -25
  65. package/lib/types/facade/f-data-validation.d.ts +26 -13
  66. package/lib/types/facade/f-range.d.ts +10 -5
  67. package/lib/types/facade/f-univer.d.ts +2 -1
  68. package/lib/types/facade/f-workbook.d.ts +1 -43
  69. package/lib/types/facade/f-worksheet.d.ts +8 -9
  70. package/lib/types/index.d.ts +5 -5
  71. package/lib/types/locale/ar-SA.d.ts +18 -0
  72. package/lib/types/locale/ca-ES.d.ts +18 -0
  73. package/lib/types/locale/de-DE.d.ts +18 -0
  74. package/lib/types/locale/en-US.d.ts +156 -0
  75. package/lib/types/locale/es-ES.d.ts +18 -0
  76. package/lib/types/locale/fa-IR.d.ts +18 -0
  77. package/lib/types/locale/fr-FR.d.ts +18 -0
  78. package/lib/types/locale/id-ID.d.ts +18 -0
  79. package/lib/types/locale/it-IT.d.ts +18 -0
  80. package/lib/types/locale/ja-JP.d.ts +18 -0
  81. package/lib/types/locale/ko-KR.d.ts +18 -0
  82. package/lib/types/locale/pl-PL.d.ts +18 -0
  83. package/lib/types/locale/pt-BR.d.ts +18 -0
  84. package/lib/types/locale/ru-RU.d.ts +18 -0
  85. package/lib/types/locale/sk-SK.d.ts +18 -0
  86. package/lib/types/locale/vi-VN.d.ts +18 -0
  87. package/lib/types/locale/zh-CN.d.ts +18 -0
  88. package/lib/types/locale/zh-HK.d.ts +18 -0
  89. package/lib/types/locale/zh-TW.d.ts +18 -0
  90. package/lib/types/types/const/operator-text-map.d.ts +2 -1
  91. package/lib/types/validators/any-validator.d.ts +2 -2
  92. package/lib/types/validators/base-sheet-validator.d.ts +26 -0
  93. package/lib/types/validators/checkbox-validator.d.ts +2 -2
  94. package/lib/types/validators/custom-validator.d.ts +2 -2
  95. package/lib/types/validators/date-validator.d.ts +2 -2
  96. package/lib/types/validators/decimal-validator.d.ts +2 -2
  97. package/lib/types/validators/list-validator.d.ts +2 -2
  98. package/lib/types/validators/text-length-validator.d.ts +2 -2
  99. package/lib/types/validators/util.d.ts +0 -2
  100. package/lib/types/validators/whole-validator.d.ts +2 -2
  101. package/lib/umd/facade.js +1 -1
  102. package/lib/umd/index.js +1 -1
  103. package/lib/umd/locale/ar-SA.js +1 -0
  104. package/lib/umd/locale/ca-ES.js +1 -0
  105. package/lib/umd/locale/de-DE.js +1 -0
  106. package/lib/umd/locale/en-US.js +1 -0
  107. package/lib/umd/locale/es-ES.js +1 -0
  108. package/lib/umd/locale/fa-IR.js +1 -0
  109. package/lib/umd/locale/fr-FR.js +1 -0
  110. package/lib/umd/locale/id-ID.js +1 -0
  111. package/lib/umd/locale/it-IT.js +1 -0
  112. package/lib/umd/locale/ja-JP.js +1 -0
  113. package/lib/umd/locale/ko-KR.js +1 -0
  114. package/lib/umd/locale/pl-PL.js +1 -0
  115. package/lib/umd/locale/pt-BR.js +1 -0
  116. package/lib/umd/locale/ru-RU.js +1 -0
  117. package/lib/umd/locale/sk-SK.js +1 -0
  118. package/lib/umd/locale/vi-VN.js +1 -0
  119. package/lib/umd/locale/zh-CN.js +1 -0
  120. package/lib/umd/locale/zh-HK.js +1 -0
  121. package/lib/umd/locale/zh-TW.js +1 -0
  122. package/package.json +14 -9
  123. package/LICENSE +0 -176
package/lib/es/facade.js CHANGED
@@ -1,12 +1,12 @@
1
- import { CanceledError, DataValidationErrorStyle, DataValidationOperator, DataValidationStatus, DataValidationType, ICommandService, IUniverInstanceService, generateRandomId, toDisposable } from "@univerjs/core";
1
+ import { CanceledError, DataValidationErrorStyle, DataValidationOperator, DataValidationStatus, DataValidationType, ICommandService, IUniverInstanceService, generateRandomId } from "@univerjs/core";
2
2
  import { AddSheetDataValidationCommand, ClearRangeDataValidationCommand, RemoveSheetAllDataValidationCommand, RemoveSheetDataValidationCommand, SheetDataValidationModel, SheetsDataValidationValidatorService, UpdateSheetDataValidationOptionsCommand, UpdateSheetDataValidationRangeCommand, UpdateSheetDataValidationSettingCommand } from "@univerjs/sheets-data-validation";
3
3
  import { FRange, FWorkbook, FWorksheet } from "@univerjs/sheets/facade";
4
4
  import { DataValidationModel, getRuleOptions } from "@univerjs/data-validation";
5
5
  import { serializeRangeToRefString } from "@univerjs/engine-formula";
6
+ import { serializeListOptions } from "@univerjs/sheets";
6
7
  import { FEventName, FUniver } from "@univerjs/core/facade";
7
- import { filter } from "rxjs";
8
8
 
9
- //#region \0@oxc-project+runtime@0.129.0/helpers/typeof.js
9
+ //#region \0@oxc-project+runtime@0.134.0/helpers/esm/typeof.js
10
10
  function _typeof(o) {
11
11
  "@babel/helpers - typeof";
12
12
  return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
@@ -17,7 +17,7 @@ function _typeof(o) {
17
17
  }
18
18
 
19
19
  //#endregion
20
- //#region \0@oxc-project+runtime@0.129.0/helpers/toPrimitive.js
20
+ //#region \0@oxc-project+runtime@0.134.0/helpers/esm/toPrimitive.js
21
21
  function toPrimitive(t, r) {
22
22
  if ("object" != _typeof(t) || !t) return t;
23
23
  var e = t[Symbol.toPrimitive];
@@ -30,14 +30,14 @@ function toPrimitive(t, r) {
30
30
  }
31
31
 
32
32
  //#endregion
33
- //#region \0@oxc-project+runtime@0.129.0/helpers/toPropertyKey.js
33
+ //#region \0@oxc-project+runtime@0.134.0/helpers/esm/toPropertyKey.js
34
34
  function toPropertyKey(t) {
35
35
  var i = toPrimitive(t, "string");
36
36
  return "symbol" == _typeof(i) ? i : i + "";
37
37
  }
38
38
 
39
39
  //#endregion
40
- //#region \0@oxc-project+runtime@0.129.0/helpers/defineProperty.js
40
+ //#region \0@oxc-project+runtime@0.134.0/helpers/esm/defineProperty.js
41
41
  function _defineProperty(e, r, t) {
42
42
  return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
43
43
  value: t,
@@ -55,7 +55,8 @@ function _defineProperty(e, r, t) {
55
55
  * ```typescript
56
56
  * // Set the data validation for cell A1 to require a value from B1:B10
57
57
  * const fWorkbook = univerAPI.getActiveWorkbook();
58
- * const fWorksheet = fWorkbook.getActiveSheet();
58
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
59
+ * if (!fWorksheet) return;
59
60
  * const fRange = fWorksheet.getRange('B1:B2');
60
61
  * fRange.setValues([
61
62
  * ['Yes'],
@@ -90,7 +91,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
90
91
  * @example
91
92
  * ```typescript
92
93
  * const fWorkbook = univerAPI.getActiveWorkbook();
93
- * const fWorksheet = fWorkbook.getActiveSheet();
94
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
95
+ * if (!fWorksheet) return;
94
96
  *
95
97
  * // Create a new data validation rule that requires a number between 1 and 10 for the range A1:B10
96
98
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -114,7 +116,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
114
116
  * @example
115
117
  * ```typescript
116
118
  * const fWorkbook = univerAPI.getActiveWorkbook();
117
- * const fWorksheet = fWorkbook.getActiveSheet();
119
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
120
+ * if (!fWorksheet) return;
118
121
  *
119
122
  * // Create a new data validation rule that requires a number between 1 and 10 for the range A1:B10
120
123
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -212,7 +215,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
212
215
  * @example
213
216
  * ```typescript
214
217
  * const fWorkbook = univerAPI.getActiveWorkbook();
215
- * const fWorksheet = fWorkbook.getActiveSheet();
218
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
219
+ * if (!fWorksheet) return;
216
220
  *
217
221
  * // Set the data validation for cell A1:A10 to require a checkbox with default 1 and 0 values
218
222
  * const fRange = fWorksheet.getRange('A1:A10');
@@ -242,7 +246,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
242
246
  * @example
243
247
  * ```typescript
244
248
  * const fWorkbook = univerAPI.getActiveWorkbook();
245
- * const fWorksheet = fWorkbook.getActiveSheet();
249
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
250
+ * if (!fWorksheet) return;
246
251
  *
247
252
  * // Set some date values in the range A1:B2
248
253
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -275,7 +280,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
275
280
  * @example
276
281
  * ```typescript
277
282
  * const fWorkbook = univerAPI.getActiveWorkbook();
278
- * const fWorksheet = fWorkbook.getActiveSheet();
283
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
284
+ * if (!fWorksheet) return;
279
285
  *
280
286
  * // Set some date values in the range A1:B2
281
287
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -310,7 +316,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
310
316
  * @example
311
317
  * ```typescript
312
318
  * const fWorkbook = univerAPI.getActiveWorkbook();
313
- * const fWorksheet = fWorkbook.getActiveSheet();
319
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
320
+ * if (!fWorksheet) return;
314
321
  *
315
322
  * // Set some date values in the range A1:B2
316
323
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -344,7 +351,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
344
351
  * @example
345
352
  * ```typescript
346
353
  * const fWorkbook = univerAPI.getActiveWorkbook();
347
- * const fWorksheet = fWorkbook.getActiveSheet();
354
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
355
+ * if (!fWorksheet) return;
348
356
  *
349
357
  * // Set some date values in the range A1:B2
350
358
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -383,7 +391,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
383
391
  * @example
384
392
  * ```typescript
385
393
  * const fWorkbook = univerAPI.getActiveWorkbook();
386
- * const fWorksheet = fWorkbook.getActiveSheet();
394
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
395
+ * if (!fWorksheet) return;
387
396
  *
388
397
  * // Set some date values in the range A1:B2
389
398
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -417,7 +426,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
417
426
  * @example
418
427
  * ```typescript
419
428
  * const fWorkbook = univerAPI.getActiveWorkbook();
420
- * const fWorksheet = fWorkbook.getActiveSheet();
429
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
430
+ * if (!fWorksheet) return;
421
431
  *
422
432
  * // Set some date values in the range A1:B2
423
433
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -451,7 +461,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
451
461
  * @example
452
462
  * ```typescript
453
463
  * const fWorkbook = univerAPI.getActiveWorkbook();
454
- * const fWorksheet = fWorkbook.getActiveSheet();
464
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
465
+ * if (!fWorksheet) return;
455
466
  *
456
467
  * // Set some date values in the range A1:B2
457
468
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -485,7 +496,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
485
496
  * @example
486
497
  * ```typescript
487
498
  * const fWorkbook = univerAPI.getActiveWorkbook();
488
- * const fWorksheet = fWorkbook.getActiveSheet();
499
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
500
+ * if (!fWorksheet) return;
489
501
  *
490
502
  * // Set some values in the range A1:B2 and C1:D2
491
503
  * const cell = fWorksheet.getRange('A1:B2');
@@ -529,7 +541,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
529
541
  * @example
530
542
  * ```typescript
531
543
  * const fWorkbook = univerAPI.getActiveWorkbook();
532
- * const fWorksheet = fWorkbook.getActiveSheet();
544
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
545
+ * if (!fWorksheet) return;
533
546
  *
534
547
  * // Create a new data validation rule that requires a number between 1 and 10 for the range A1:B10
535
548
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -559,7 +572,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
559
572
  * @example
560
573
  * ```typescript
561
574
  * const fWorkbook = univerAPI.getActiveWorkbook();
562
- * const fWorksheet = fWorkbook.getActiveSheet();
575
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
576
+ * if (!fWorksheet) return;
563
577
  *
564
578
  * // Create a new data validation rule that requires a number equal to 10 for the range A1:B10
565
579
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -589,7 +603,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
589
603
  * @example
590
604
  * ```typescript
591
605
  * const fWorkbook = univerAPI.getActiveWorkbook();
592
- * const fWorksheet = fWorkbook.getActiveSheet();
606
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
607
+ * if (!fWorksheet) return;
593
608
  *
594
609
  * // Create a new data validation rule that requires a number greater than 10 for the range A1:B10
595
610
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -619,7 +634,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
619
634
  * @example
620
635
  * ```typescript
621
636
  * const fWorkbook = univerAPI.getActiveWorkbook();
622
- * const fWorksheet = fWorkbook.getActiveSheet();
637
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
638
+ * if (!fWorksheet) return;
623
639
  *
624
640
  * // Create a new data validation rule that requires a number greater than 10 or equal to 10 for the range A1:B10
625
641
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -649,7 +665,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
649
665
  * @example
650
666
  * ```typescript
651
667
  * const fWorkbook = univerAPI.getActiveWorkbook();
652
- * const fWorksheet = fWorkbook.getActiveSheet();
668
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
669
+ * if (!fWorksheet) return;
653
670
  *
654
671
  * // Create a new data validation rule that requires a number less than 10 for the range A1:B10
655
672
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -679,7 +696,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
679
696
  * @example
680
697
  * ```typescript
681
698
  * const fWorkbook = univerAPI.getActiveWorkbook();
682
- * const fWorksheet = fWorkbook.getActiveSheet();
699
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
700
+ * if (!fWorksheet) return;
683
701
  *
684
702
  * // Create a new data validation rule that requires a number less than 10 or equal to 10 for the range A1:B10
685
703
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -710,7 +728,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
710
728
  * @example
711
729
  * ```typescript
712
730
  * const fWorkbook = univerAPI.getActiveWorkbook();
713
- * const fWorksheet = fWorkbook.getActiveSheet();
731
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
732
+ * if (!fWorksheet) return;
714
733
  *
715
734
  * // Create a new data validation rule that requires a number not between 1 and 10 for the range A1:B10
716
735
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -740,7 +759,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
740
759
  * @example
741
760
  * ```typescript
742
761
  * const fWorkbook = univerAPI.getActiveWorkbook();
743
- * const fWorksheet = fWorkbook.getActiveSheet();
762
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
763
+ * if (!fWorksheet) return;
744
764
  *
745
765
  * // Create a new data validation rule that requires a number not equal to 10 for the range A1:B10
746
766
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -772,7 +792,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
772
792
  * @example
773
793
  * ```typescript
774
794
  * const fWorkbook = univerAPI.getActiveWorkbook();
775
- * const fWorksheet = fWorkbook.getActiveSheet();
795
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
796
+ * if (!fWorksheet) return;
776
797
  *
777
798
  * // Create a new data validation rule that requires the user to enter a value from the list ['Yes', 'No'] for the range A1:B10
778
799
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -789,7 +810,7 @@ var FDataValidationBuilder = class FDataValidationBuilder {
789
810
  */
790
811
  requireValueInList(values, multiple, showDropdown) {
791
812
  this._rule.type = multiple ? DataValidationType.LIST_MULTIPLE : DataValidationType.LIST;
792
- this._rule.formula1 = values.join(",");
813
+ this._rule.formula1 = serializeListOptions(values);
793
814
  this._rule.formula2 = void 0;
794
815
  this._rule.showDropDown = showDropdown !== null && showDropdown !== void 0 ? showDropdown : true;
795
816
  return this;
@@ -804,7 +825,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
804
825
  * @example
805
826
  * ```typescript
806
827
  * const fWorkbook = univerAPI.getActiveWorkbook();
807
- * const fWorksheet = fWorkbook.getActiveSheet();
828
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
829
+ * if (!fWorksheet) return;
808
830
  *
809
831
  * // Set the values in the range B1:B2
810
832
  * const fRange = fWorksheet.getRange('B1:B2');
@@ -846,7 +868,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
846
868
  * @example
847
869
  * ```typescript
848
870
  * const fWorkbook = univerAPI.getActiveWorkbook();
849
- * const fWorksheet = fWorkbook.getActiveSheet();
871
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
872
+ * if (!fWorksheet) return;
850
873
  *
851
874
  * // Set the data validation for cell A1:B2 to allow invalid data, so A1:B2 will display a warning when invalid data is entered
852
875
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -877,7 +900,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
877
900
  * ```typescript
878
901
  * // Assume current sheet is empty data
879
902
  * const fWorkbook = univerAPI.getActiveWorkbook();
880
- * const fWorksheet = fWorkbook.getActiveSheet();
903
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
904
+ * if (!fWorksheet) return;
881
905
  *
882
906
  * // Set the data validation for cell A1:B2 to allow blank values
883
907
  * const fRange = fWorksheet.getRange('A1:B2');
@@ -907,7 +931,8 @@ var FDataValidationBuilder = class FDataValidationBuilder {
907
931
  * @example
908
932
  * ```typescript
909
933
  * const fWorkbook = univerAPI.getActiveWorkbook();
910
- * const fWorksheet = fWorkbook.getActiveSheet();
934
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
935
+ * if (!fWorksheet) return;
911
936
  *
912
937
  * // Create a new data validation rule that requires the user to enter a value from the list ['Yes', 'No'] for the range A1:B10
913
938
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -948,7 +973,8 @@ var FDataValidation = class {
948
973
  * @example
949
974
  * ```typescript
950
975
  * const fWorkbook = univerAPI.getActiveWorkbook();
951
- * const fWorksheet = fWorkbook.getActiveSheet();
976
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
977
+ * if (!fWorksheet) return;
952
978
  * const rules = fWorksheet.getDataValidations();
953
979
  * rules.forEach((rule) => {
954
980
  * console.log(rule, rule.getAllowInvalid());
@@ -964,7 +990,8 @@ var FDataValidation = class {
964
990
  * @example
965
991
  * ```typescript
966
992
  * const fWorkbook = univerAPI.getActiveWorkbook();
967
- * const fWorksheet = fWorkbook.getActiveSheet();
993
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
994
+ * if (!fWorksheet) return;
968
995
  * const rules = fWorksheet.getDataValidations();
969
996
  * rules.forEach((rule) => {
970
997
  * console.log(rule, rule.getCriteriaType());
@@ -980,7 +1007,8 @@ var FDataValidation = class {
980
1007
  * @example
981
1008
  * ```typescript
982
1009
  * const fWorkbook = univerAPI.getActiveWorkbook();
983
- * const fWorksheet = fWorkbook.getActiveSheet();
1010
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1011
+ * if (!fWorksheet) return;
984
1012
  * const rules = fWorksheet.getDataValidations();
985
1013
  * rules.forEach((rule) => {
986
1014
  * console.log(rule);
@@ -1003,7 +1031,8 @@ var FDataValidation = class {
1003
1031
  * @example
1004
1032
  * ```typescript
1005
1033
  * const fWorkbook = univerAPI.getActiveWorkbook();
1006
- * const fWorksheet = fWorkbook.getActiveSheet();
1034
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1035
+ * if (!fWorksheet) return;
1007
1036
  * const fRange = fWorksheet.getRange('A1:B10');
1008
1037
  * const rule = univerAPI.newDataValidation()
1009
1038
  * .requireNumberBetween(1, 10)
@@ -1026,7 +1055,8 @@ var FDataValidation = class {
1026
1055
  * @example
1027
1056
  * ```typescript
1028
1057
  * const fWorkbook = univerAPI.getActiveWorkbook();
1029
- * const fWorksheet = fWorkbook.getActiveSheet();
1058
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1059
+ * if (!fWorksheet) return;
1030
1060
  * const fRange = fWorksheet.getRange('A1:B10');
1031
1061
  * const rule = univerAPI.newDataValidation()
1032
1062
  * .requireNumberBetween(1, 10)
@@ -1057,7 +1087,8 @@ var FDataValidation = class {
1057
1087
  * @example
1058
1088
  * ```typescript
1059
1089
  * const fWorkbook = univerAPI.getActiveWorkbook();
1060
- * const fWorksheet = fWorkbook.getActiveSheet();
1090
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1091
+ * if (!fWorksheet) return;
1061
1092
  * const rules = fWorksheet.getDataValidations();
1062
1093
  * rules.forEach((rule) => {
1063
1094
  * console.log(rule, rule.getApplied());
@@ -1079,7 +1110,8 @@ var FDataValidation = class {
1079
1110
  * @example
1080
1111
  * ```typescript
1081
1112
  * const fWorkbook = univerAPI.getActiveWorkbook();
1082
- * const fWorksheet = fWorkbook.getActiveSheet();
1113
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1114
+ * if (!fWorksheet) return;
1083
1115
  * const rules = fWorksheet.getDataValidations();
1084
1116
  * rules.forEach((rule) => {
1085
1117
  * console.log(rule);
@@ -1101,7 +1133,8 @@ var FDataValidation = class {
1101
1133
  * @example
1102
1134
  * ```typescript
1103
1135
  * const fWorkbook = univerAPI.getActiveWorkbook();
1104
- * const fWorksheet = fWorkbook.getActiveSheet();
1136
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1137
+ * if (!fWorksheet) return;
1105
1138
  * const fRange = fWorksheet.getRange('A1:B10');
1106
1139
  * console.log(fRange.getDataValidation().getUnitId());
1107
1140
  * ```
@@ -1116,7 +1149,8 @@ var FDataValidation = class {
1116
1149
  * @example
1117
1150
  * ```typescript
1118
1151
  * const fWorkbook = univerAPI.getActiveWorkbook();
1119
- * const fWorksheet = fWorkbook.getActiveSheet();
1152
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1153
+ * if (!fWorksheet) return;
1120
1154
  * const fRange = fWorksheet.getRange('A1:B10');
1121
1155
  * console.log(fRange.getDataValidation().getSheetId());
1122
1156
  * ```
@@ -1134,7 +1168,8 @@ var FDataValidation = class {
1134
1168
  * @example
1135
1169
  * ```typescript
1136
1170
  * const fWorkbook = univerAPI.getActiveWorkbook();
1137
- * const fWorksheet = fWorkbook.getActiveSheet();
1171
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1172
+ * if (!fWorksheet) return;
1138
1173
  *
1139
1174
  * // Create a new data validation rule that requires a number equal to 20 for the range A1:B10
1140
1175
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -1179,7 +1214,8 @@ var FDataValidation = class {
1179
1214
  * @example
1180
1215
  * ```typescript
1181
1216
  * const fWorkbook = univerAPI.getActiveWorkbook();
1182
- * const fWorksheet = fWorkbook.getActiveSheet();
1217
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1218
+ * if (!fWorksheet) return;
1183
1219
  *
1184
1220
  * // Create a new data validation rule that requires a number equal to 20 for the range A1:B10
1185
1221
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -1218,7 +1254,8 @@ var FDataValidation = class {
1218
1254
  * @example
1219
1255
  * ```typescript
1220
1256
  * const fWorkbook = univerAPI.getActiveWorkbook();
1221
- * const fWorksheet = fWorkbook.getActiveSheet();
1257
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1258
+ * if (!fWorksheet) return;
1222
1259
  *
1223
1260
  * // Create a new data validation rule that requires a number equal to 20 for the range A1:B10
1224
1261
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -1250,7 +1287,8 @@ var FDataValidation = class {
1250
1287
  * @example
1251
1288
  * ```typescript
1252
1289
  * const fWorkbook = univerAPI.getActiveWorkbook();
1253
- * const fWorksheet = fWorkbook.getActiveSheet();
1290
+ * const fWorksheet = fWorkbook.getSheetByName('Sheet1');
1291
+ * if (!fWorksheet) return;
1254
1292
  *
1255
1293
  * // Create a new data validation rule that requires a number equal to 20 for the range A1:B10
1256
1294
  * const fRange = fWorksheet.getRange('A1:B10');
@@ -1377,7 +1415,10 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1377
1415
  if (!injector.has(SheetDataValidationModel)) return { dispose: () => {} };
1378
1416
  return injector.get(SheetDataValidationModel).ruleChange$.subscribe((ruleChange) => {
1379
1417
  const { unitId, subUnitId, rule, oldRule, type } = ruleChange;
1380
- const target = this.getSheetTarget(unitId, subUnitId);
1418
+ const target = this.getSheetCommandTarget({
1419
+ unitId,
1420
+ subUnitId
1421
+ });
1381
1422
  if (!target) return;
1382
1423
  const { workbook, worksheet } = target;
1383
1424
  const eventParams = {
@@ -1395,7 +1436,10 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1395
1436
  if (!injector.has(SheetDataValidationModel)) return { dispose: () => {} };
1396
1437
  return injector.get(SheetDataValidationModel).validStatusChange$.subscribe((statusChange) => {
1397
1438
  const { unitId, subUnitId, ruleId, status, row, col } = statusChange;
1398
- const target = this.getSheetTarget(unitId, subUnitId);
1439
+ const target = this.getSheetCommandTarget({
1440
+ unitId,
1441
+ subUnitId
1442
+ });
1399
1443
  if (!target) return;
1400
1444
  const { workbook, worksheet } = target;
1401
1445
  const rule = worksheet.getDataValidation(ruleId);
@@ -1414,13 +1458,14 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1414
1458
  this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetDataValidationAdd, () => commandService.beforeCommandExecuted((commandInfo) => {
1415
1459
  if (commandInfo.id === AddSheetDataValidationCommand.id) {
1416
1460
  const params = commandInfo.params;
1417
- const target = this.getSheetTarget(params.unitId, params.subUnitId);
1461
+ const target = this.getSheetCommandTarget(params);
1418
1462
  if (!target) return;
1419
1463
  const { workbook, worksheet } = target;
1464
+ const { rule } = params;
1420
1465
  const eventParams = {
1421
1466
  worksheet,
1422
1467
  workbook,
1423
- rule: params.rule
1468
+ rule
1424
1469
  };
1425
1470
  this.fireEvent(this.Event.BeforeSheetDataValidationAdd, eventParams);
1426
1471
  if (eventParams.cancel) throw new CanceledError();
@@ -1429,17 +1474,18 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1429
1474
  this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetDataValidationCriteriaUpdate, () => commandService.beforeCommandExecuted((commandInfo) => {
1430
1475
  if (commandInfo.id === UpdateSheetDataValidationSettingCommand.id) {
1431
1476
  const params = commandInfo.params;
1432
- const target = this.getSheetTarget(params.unitId, params.subUnitId);
1477
+ const target = this.getSheetCommandTarget(params);
1433
1478
  if (!target) return;
1434
1479
  const { workbook, worksheet } = target;
1435
- const rule = worksheet.getDataValidation(params.ruleId);
1480
+ const { ruleId, setting: newCriteria } = params;
1481
+ const rule = worksheet.getDataValidation(ruleId);
1436
1482
  if (!rule) return;
1437
1483
  const eventParams = {
1438
1484
  worksheet,
1439
1485
  workbook,
1440
1486
  rule,
1441
- ruleId: params.ruleId,
1442
- newCriteria: params.setting
1487
+ ruleId,
1488
+ newCriteria
1443
1489
  };
1444
1490
  this.fireEvent(this.Event.BeforeSheetDataValidationCriteriaUpdate, eventParams);
1445
1491
  if (eventParams.cancel) throw new CanceledError();
@@ -1448,17 +1494,18 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1448
1494
  this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetDataValidationRangeUpdate, () => commandService.beforeCommandExecuted((commandInfo) => {
1449
1495
  if (commandInfo.id === UpdateSheetDataValidationRangeCommand.id) {
1450
1496
  const params = commandInfo.params;
1451
- const target = this.getSheetTarget(params.unitId, params.subUnitId);
1497
+ const target = this.getSheetCommandTarget(params);
1452
1498
  if (!target) return;
1453
1499
  const { workbook, worksheet } = target;
1454
- const rule = worksheet.getDataValidation(params.ruleId);
1500
+ const { ruleId, ranges: newRanges } = params;
1501
+ const rule = worksheet.getDataValidation(ruleId);
1455
1502
  if (!rule) return;
1456
1503
  const eventParams = {
1457
1504
  worksheet,
1458
1505
  workbook,
1459
1506
  rule,
1460
- ruleId: params.ruleId,
1461
- newRanges: params.ranges
1507
+ ruleId,
1508
+ newRanges
1462
1509
  };
1463
1510
  this.fireEvent(this.Event.BeforeSheetDataValidationRangeUpdate, eventParams);
1464
1511
  if (eventParams.cancel) throw new CanceledError();
@@ -1467,17 +1514,18 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1467
1514
  this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetDataValidationOptionsUpdate, () => commandService.beforeCommandExecuted((commandInfo) => {
1468
1515
  if (commandInfo.id === UpdateSheetDataValidationOptionsCommand.id) {
1469
1516
  const params = commandInfo.params;
1470
- const target = this.getSheetTarget(params.unitId, params.subUnitId);
1517
+ const target = this.getSheetCommandTarget(params);
1471
1518
  if (!target) return;
1472
1519
  const { workbook, worksheet } = target;
1473
- const rule = worksheet.getDataValidation(params.ruleId);
1520
+ const { ruleId, options: newOptions } = params;
1521
+ const rule = worksheet.getDataValidation(ruleId);
1474
1522
  if (!rule) return;
1475
1523
  const eventParams = {
1476
1524
  worksheet,
1477
1525
  workbook,
1478
1526
  rule,
1479
- ruleId: params.ruleId,
1480
- newOptions: params.options
1527
+ ruleId,
1528
+ newOptions
1481
1529
  };
1482
1530
  this.fireEvent(this.Event.BeforeSheetDataValidationOptionsUpdate, eventParams);
1483
1531
  if (eventParams.cancel) throw new CanceledError();
@@ -1486,16 +1534,17 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1486
1534
  this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetDataValidationDelete, () => commandService.beforeCommandExecuted((commandInfo) => {
1487
1535
  if (commandInfo.id === RemoveSheetDataValidationCommand.id) {
1488
1536
  const params = commandInfo.params;
1489
- const target = this.getSheetTarget(params.unitId, params.subUnitId);
1537
+ const target = this.getSheetCommandTarget(params);
1490
1538
  if (!target) return;
1491
1539
  const { workbook, worksheet } = target;
1492
- const rule = worksheet.getDataValidation(params.ruleId);
1540
+ const { ruleId } = params;
1541
+ const rule = worksheet.getDataValidation(ruleId);
1493
1542
  if (!rule) return;
1494
1543
  const eventParams = {
1495
1544
  worksheet,
1496
1545
  workbook,
1497
1546
  rule,
1498
- ruleId: params.ruleId
1547
+ ruleId
1499
1548
  };
1500
1549
  this.fireEvent(this.Event.BeforeSheetDataValidationDelete, eventParams);
1501
1550
  if (eventParams.cancel) throw new CanceledError();
@@ -1504,7 +1553,7 @@ var FUniverSheetsDataValidationMixin = class extends FUniver {
1504
1553
  this.disposeWithMe(this.registerEventHandler(this.Event.BeforeSheetDataValidationDeleteAll, () => commandService.beforeCommandExecuted((commandInfo) => {
1505
1554
  if (commandInfo.id === RemoveSheetAllDataValidationCommand.id) {
1506
1555
  const params = commandInfo.params;
1507
- const target = this.getSheetTarget(params.unitId, params.subUnitId);
1556
+ const target = this.getSheetCommandTarget(params);
1508
1557
  if (!target) return;
1509
1558
  const { workbook, worksheet } = target;
1510
1559
  const eventParams = {
@@ -1588,66 +1637,6 @@ var FWorkbookSheetsDataValidationMixin = class extends FWorkbook {
1588
1637
  rule
1589
1638
  };
1590
1639
  }
1591
- onDataValidationChange(callback) {
1592
- return toDisposable(this._dataValidationModel.ruleChange$.pipe(filter((change) => change.unitId === this._workbook.getUnitId())).subscribe(callback));
1593
- }
1594
- onDataValidationStatusChange(callback) {
1595
- return toDisposable(this._dataValidationModel.validStatusChange$.pipe(filter((change) => change.unitId === this._workbook.getUnitId())).subscribe(callback));
1596
- }
1597
- onBeforeAddDataValidation(callback) {
1598
- return toDisposable(this._commandService.beforeCommandExecuted((commandInfo, options) => {
1599
- const params = commandInfo.params;
1600
- if (commandInfo.id === AddSheetDataValidationCommand.id) {
1601
- if (params.unitId !== this._workbook.getUnitId()) return;
1602
- if (callback(params, options) === false) throw new Error("Command is stopped by the hook onBeforeAddDataValidation");
1603
- }
1604
- }));
1605
- }
1606
- onBeforeUpdateDataValidationCriteria(callback) {
1607
- return toDisposable(this._commandService.beforeCommandExecuted((commandInfo, options) => {
1608
- const params = commandInfo.params;
1609
- if (commandInfo.id === UpdateSheetDataValidationSettingCommand.id) {
1610
- if (params.unitId !== this._workbook.getUnitId()) return;
1611
- if (callback(params, options) === false) throw new Error("Command is stopped by the hook onBeforeUpdateDataValidationCriteria");
1612
- }
1613
- }));
1614
- }
1615
- onBeforeUpdateDataValidationRange(callback) {
1616
- return toDisposable(this._commandService.beforeCommandExecuted((commandInfo, options) => {
1617
- const params = commandInfo.params;
1618
- if (commandInfo.id === UpdateSheetDataValidationRangeCommand.id) {
1619
- if (params.unitId !== this._workbook.getUnitId()) return;
1620
- if (callback(params, options) === false) throw new Error("Command is stopped by the hook onBeforeUpdateDataValidationRange");
1621
- }
1622
- }));
1623
- }
1624
- onBeforeUpdateDataValidationOptions(callback) {
1625
- return toDisposable(this._commandService.beforeCommandExecuted((commandInfo, options) => {
1626
- const params = commandInfo.params;
1627
- if (commandInfo.id === UpdateSheetDataValidationOptionsCommand.id) {
1628
- if (params.unitId !== this._workbook.getUnitId()) return;
1629
- if (callback(params, options) === false) throw new Error("Command is stopped by the hook onBeforeUpdateDataValidationOptions");
1630
- }
1631
- }));
1632
- }
1633
- onBeforeDeleteDataValidation(callback) {
1634
- return toDisposable(this._commandService.beforeCommandExecuted((commandInfo, options) => {
1635
- const params = commandInfo.params;
1636
- if (commandInfo.id === RemoveSheetDataValidationCommand.id) {
1637
- if (params.unitId !== this._workbook.getUnitId()) return;
1638
- if (callback(params, options) === false) throw new Error("Command is stopped by the hook onBeforeDeleteDataValidation");
1639
- }
1640
- }));
1641
- }
1642
- onBeforeDeleteAllDataValidation(callback) {
1643
- return toDisposable(this._commandService.beforeCommandExecuted((commandInfo, options) => {
1644
- const params = commandInfo.params;
1645
- if (commandInfo.id === RemoveSheetAllDataValidationCommand.id) {
1646
- if (params.unitId !== this._workbook.getUnitId()) return;
1647
- if (callback(params, options) === false) throw new Error("Command is stopped by the hook onBeforeDeleteAllDataValidation");
1648
- }
1649
- }));
1650
- }
1651
1640
  };
1652
1641
  FWorkbook.extend(FWorkbookSheetsDataValidationMixin);
1653
1642
 
@@ -1660,11 +1649,8 @@ var FWorksheetDataValidationMixin = class extends FWorksheet {
1660
1649
  getDataValidations() {
1661
1650
  return this._injector.get(DataValidationModel).getRules(this._workbook.getUnitId(), this._worksheet.getSheetId()).map((rule) => new FDataValidation(rule, this._worksheet, this._injector));
1662
1651
  }
1663
- getValidatorStatus() {
1664
- return this._injector.get(SheetsDataValidationValidatorService).validatorWorksheet(this._workbook.getUnitId(), this._worksheet.getSheetId());
1665
- }
1666
1652
  getValidatorStatusAsync() {
1667
- return this.getValidatorStatus();
1653
+ return this._injector.get(SheetsDataValidationValidatorService).validatorWorksheet(this._workbook.getUnitId(), this._worksheet.getSheetId());
1668
1654
  }
1669
1655
  getDataValidation(ruleId) {
1670
1656
  const rule = this._injector.get(DataValidationModel).getRuleById(this._workbook.getUnitId(), this._worksheet.getSheetId(), ruleId);