@univerjs/sheets-data-validation 1.0.0-alpha.7 → 1.0.0-beta.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/cjs/facade.js +7 -14
- package/lib/cjs/index.js +43 -61
- package/lib/es/facade.js +7 -14
- package/lib/es/index.js +45 -63
- package/lib/facade.js +7 -14
- package/lib/index.js +45 -63
- package/lib/types/facade/f-range.d.ts +1 -1
- package/lib/types/facade/f-univer.d.ts +0 -15
- package/lib/umd/facade.js +1 -1
- package/lib/umd/index.js +1 -1
- package/package.json +10 -12
package/lib/cjs/facade.js
CHANGED
|
@@ -7,7 +7,7 @@ let _univerjs_engine_formula = require("@univerjs/engine-formula");
|
|
|
7
7
|
let _univerjs_sheets = require("@univerjs/sheets");
|
|
8
8
|
let _univerjs_core_facade = require("@univerjs/core/facade");
|
|
9
9
|
|
|
10
|
-
//#region \0@oxc-project+runtime@0.
|
|
10
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/typeof.js
|
|
11
11
|
function _typeof(o) {
|
|
12
12
|
"@babel/helpers - typeof";
|
|
13
13
|
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
|
|
@@ -18,7 +18,7 @@ function _typeof(o) {
|
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
//#endregion
|
|
21
|
-
//#region \0@oxc-project+runtime@0.
|
|
21
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPrimitive.js
|
|
22
22
|
function toPrimitive(t, r) {
|
|
23
23
|
if ("object" != _typeof(t) || !t) return t;
|
|
24
24
|
var e = t[Symbol.toPrimitive];
|
|
@@ -31,14 +31,14 @@ function toPrimitive(t, r) {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
//#endregion
|
|
34
|
-
//#region \0@oxc-project+runtime@0.
|
|
34
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPropertyKey.js
|
|
35
35
|
function toPropertyKey(t) {
|
|
36
36
|
var i = toPrimitive(t, "string");
|
|
37
37
|
return "symbol" == _typeof(i) ? i : i + "";
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
//#endregion
|
|
41
|
-
//#region \0@oxc-project+runtime@0.
|
|
41
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/defineProperty.js
|
|
42
42
|
function _defineProperty(e, r, t) {
|
|
43
43
|
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
|
|
44
44
|
value: t,
|
|
@@ -80,7 +80,7 @@ function _defineProperty(e, r, t) {
|
|
|
80
80
|
var FDataValidationBuilder = class FDataValidationBuilder {
|
|
81
81
|
constructor(rule) {
|
|
82
82
|
_defineProperty(this, "_rule", void 0);
|
|
83
|
-
this._rule = rule
|
|
83
|
+
this._rule = rule ?? {
|
|
84
84
|
uid: (0, _univerjs_core.generateRandomId)(),
|
|
85
85
|
ranges: void 0,
|
|
86
86
|
type: _univerjs_core.DataValidationType.CUSTOM
|
|
@@ -813,7 +813,7 @@ var FDataValidationBuilder = class FDataValidationBuilder {
|
|
|
813
813
|
this._rule.type = multiple ? _univerjs_core.DataValidationType.LIST_MULTIPLE : _univerjs_core.DataValidationType.LIST;
|
|
814
814
|
this._rule.formula1 = (0, _univerjs_sheets.serializeListOptions)(values);
|
|
815
815
|
this._rule.formula2 = void 0;
|
|
816
|
-
this._rule.showDropDown = showDropdown
|
|
816
|
+
this._rule.showDropDown = showDropdown ?? true;
|
|
817
817
|
return this;
|
|
818
818
|
}
|
|
819
819
|
/**
|
|
@@ -857,7 +857,7 @@ var FDataValidationBuilder = class FDataValidationBuilder {
|
|
|
857
857
|
range: range.getRange()
|
|
858
858
|
})}`;
|
|
859
859
|
this._rule.formula2 = void 0;
|
|
860
|
-
this._rule.showDropDown = showDropdown
|
|
860
|
+
this._rule.showDropDown = showDropdown ?? true;
|
|
861
861
|
return this;
|
|
862
862
|
}
|
|
863
863
|
/**
|
|
@@ -1397,13 +1397,6 @@ _univerjs_sheets_facade.FRange.extend(FRangeSheetsDataValidationMixin);
|
|
|
1397
1397
|
//#endregion
|
|
1398
1398
|
//#region src/facade/f-univer.ts
|
|
1399
1399
|
var FUniverSheetsDataValidationMixin = class extends _univerjs_core_facade.FUniver {
|
|
1400
|
-
/**
|
|
1401
|
-
* @deprecated use `univerAPI.newDataValidation()` as instead.
|
|
1402
|
-
* @returns {FDataValidationBuilder} A new instance of the FDataValidationBuilder class
|
|
1403
|
-
*/
|
|
1404
|
-
static newDataValidation() {
|
|
1405
|
-
return new FDataValidationBuilder();
|
|
1406
|
-
}
|
|
1407
1400
|
newDataValidation() {
|
|
1408
1401
|
return new FDataValidationBuilder();
|
|
1409
1402
|
}
|
package/lib/cjs/index.js
CHANGED
|
@@ -7,7 +7,7 @@ let rxjs = require("rxjs");
|
|
|
7
7
|
let _univerjs_protocol = require("@univerjs/protocol");
|
|
8
8
|
let _univerjs_sheets_formula = require("@univerjs/sheets-formula");
|
|
9
9
|
|
|
10
|
-
//#region \0@oxc-project+runtime@0.
|
|
10
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/typeof.js
|
|
11
11
|
function _typeof(o) {
|
|
12
12
|
"@babel/helpers - typeof";
|
|
13
13
|
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
|
|
@@ -18,7 +18,7 @@ function _typeof(o) {
|
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
//#endregion
|
|
21
|
-
//#region \0@oxc-project+runtime@0.
|
|
21
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPrimitive.js
|
|
22
22
|
function toPrimitive(t, r) {
|
|
23
23
|
if ("object" != _typeof(t) || !t) return t;
|
|
24
24
|
var e = t[Symbol.toPrimitive];
|
|
@@ -31,14 +31,14 @@ function toPrimitive(t, r) {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
//#endregion
|
|
34
|
-
//#region \0@oxc-project+runtime@0.
|
|
34
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/toPropertyKey.js
|
|
35
35
|
function toPropertyKey(t) {
|
|
36
36
|
var i = toPrimitive(t, "string");
|
|
37
37
|
return "symbol" == _typeof(i) ? i : i + "";
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
//#endregion
|
|
41
|
-
//#region \0@oxc-project+runtime@0.
|
|
41
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/defineProperty.js
|
|
42
42
|
function _defineProperty(e, r, t) {
|
|
43
43
|
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
|
|
44
44
|
value: t,
|
|
@@ -49,7 +49,7 @@ function _defineProperty(e, r, t) {
|
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
//#endregion
|
|
52
|
-
//#region \0@oxc-project+runtime@0.
|
|
52
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/decorateParam.js
|
|
53
53
|
function __decorateParam(paramIndex, decorator) {
|
|
54
54
|
return function(target, key) {
|
|
55
55
|
decorator(target, key, paramIndex);
|
|
@@ -57,7 +57,7 @@ function __decorateParam(paramIndex, decorator) {
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
//#endregion
|
|
60
|
-
//#region \0@oxc-project+runtime@0.
|
|
60
|
+
//#region \0@oxc-project+runtime@0.140.0/helpers/esm/decorate.js
|
|
61
61
|
function __decorate(decorators, target, key, desc) {
|
|
62
62
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
63
63
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -187,9 +187,8 @@ function isLegalFormulaResult(res) {
|
|
|
187
187
|
* Judge if the data-validation's formula need to be offseted by ranges
|
|
188
188
|
*/
|
|
189
189
|
function shouldOffsetFormulaByRange(type, validatorRegistryService) {
|
|
190
|
-
var _validator$offsetForm;
|
|
191
190
|
const validator = validatorRegistryService.getValidatorItem(type);
|
|
192
|
-
return (
|
|
191
|
+
return (validator === null || validator === void 0 ? void 0 : validator.offsetFormulaByRange) ?? false;
|
|
193
192
|
}
|
|
194
193
|
|
|
195
194
|
//#endregion
|
|
@@ -385,8 +384,7 @@ function getCellValueOrigin(cell) {
|
|
|
385
384
|
return (0, _univerjs_core.getOriginCellValue)(cell);
|
|
386
385
|
}
|
|
387
386
|
function getStringCellValue(cell) {
|
|
388
|
-
|
|
389
|
-
return String((_getCellValueOrigin = getCellValueOrigin(cell)) !== null && _getCellValueOrigin !== void 0 ? _getCellValueOrigin : "");
|
|
387
|
+
return String(getCellValueOrigin(cell) ?? "");
|
|
390
388
|
}
|
|
391
389
|
|
|
392
390
|
//#endregion
|
|
@@ -715,8 +713,7 @@ var RuleMatrix = class RuleMatrix {
|
|
|
715
713
|
const mutations = [];
|
|
716
714
|
let deleteIndex = 0;
|
|
717
715
|
rules.forEach((rule, index) => {
|
|
718
|
-
|
|
719
|
-
const newRanges = (_this$_map$get = this._map.get(rule.uid)) !== null && _this$_map$get !== void 0 ? _this$_map$get : [];
|
|
716
|
+
const newRanges = this._map.get(rule.uid) ?? [];
|
|
720
717
|
const oldRanges = rule.ranges;
|
|
721
718
|
if (newRanges.length !== 0 && (newRanges.length !== oldRanges.length || newRanges.some((range, i) => !_univerjs_core.Rectangle.equals(range, oldRanges[i])))) mutations.push({
|
|
722
719
|
type: "update",
|
|
@@ -740,8 +737,7 @@ var RuleMatrix = class RuleMatrix {
|
|
|
740
737
|
const mutations = [];
|
|
741
738
|
let deleteIndex = 0;
|
|
742
739
|
rules.forEach((rule, index) => {
|
|
743
|
-
|
|
744
|
-
const newRanges = (_this$_map$get2 = this._map.get(rule.uid)) !== null && _this$_map$get2 !== void 0 ? _this$_map$get2 : [];
|
|
740
|
+
const newRanges = this._map.get(rule.uid) ?? [];
|
|
745
741
|
const oldRanges = rule.ranges;
|
|
746
742
|
if (newRanges.length !== 0 && (newRanges.length !== oldRanges.length || newRanges.some((range, i) => !_univerjs_core.Rectangle.equals(range, oldRanges[i])))) mutations.push({
|
|
747
743
|
type: "update",
|
|
@@ -760,8 +756,7 @@ var RuleMatrix = class RuleMatrix {
|
|
|
760
756
|
}
|
|
761
757
|
});
|
|
762
758
|
Array.from(additionRules).forEach((rule) => {
|
|
763
|
-
|
|
764
|
-
const newRanges = (_this$_map$get3 = this._map.get(rule.uid)) !== null && _this$_map$get3 !== void 0 ? _this$_map$get3 : [];
|
|
759
|
+
const newRanges = this._map.get(rule.uid) ?? [];
|
|
765
760
|
mutations.push({
|
|
766
761
|
type: "add",
|
|
767
762
|
rule: {
|
|
@@ -946,8 +941,8 @@ let SheetDataValidationModel = class SheetDataValidationModel extends _univerjs_
|
|
|
946
941
|
});
|
|
947
942
|
return _univerjs_core.DataValidationStatus.VALIDATING;
|
|
948
943
|
}
|
|
949
|
-
onCompete(current
|
|
950
|
-
return current
|
|
944
|
+
onCompete(current ?? _univerjs_core.DataValidationStatus.VALID, false);
|
|
945
|
+
return current ?? _univerjs_core.DataValidationStatus.VALID;
|
|
951
946
|
} else {
|
|
952
947
|
onCompete(_univerjs_core.DataValidationStatus.VALID, false);
|
|
953
948
|
return _univerjs_core.DataValidationStatus.VALID;
|
|
@@ -1058,15 +1053,13 @@ var BaseSheetValidator = class extends _univerjs_data_validation.BaseDataValidat
|
|
|
1058
1053
|
return this.operators.map((operator) => this.localeService.t(OperatorTextMap[operator]));
|
|
1059
1054
|
}
|
|
1060
1055
|
generateRuleName(rule) {
|
|
1061
|
-
var _rule$formula, _rule$formula2;
|
|
1062
1056
|
if (!rule.operator) return this.localeService.t(OperatorTitleMap.NONE).replace(TYPE, this.titleStr);
|
|
1063
|
-
const ruleName = this.localeService.t(OperatorTitleMap[rule.operator]).replace(FORMULA1$1,
|
|
1057
|
+
const ruleName = this.localeService.t(OperatorTitleMap[rule.operator]).replace(FORMULA1$1, rule.formula1 ?? "").replace(FORMULA2$1, rule.formula2 ?? "");
|
|
1064
1058
|
return `${this.titleStr} ${ruleName}`;
|
|
1065
1059
|
}
|
|
1066
1060
|
generateRuleErrorMessage(rule, _position) {
|
|
1067
|
-
var _rule$formula3, _rule$formula4;
|
|
1068
1061
|
if (!rule.operator) return this.localeService.t(OperatorErrorTitleMap.NONE).replace(TYPE, this.titleStr);
|
|
1069
|
-
return `${this.localeService.t(OperatorErrorTitleMap[rule.operator]).replace(FORMULA1$1,
|
|
1062
|
+
return `${this.localeService.t(OperatorErrorTitleMap[rule.operator]).replace(FORMULA1$1, rule.formula1 ?? "").replace(FORMULA2$1, rule.formula2 ?? "")}`;
|
|
1070
1063
|
}
|
|
1071
1064
|
};
|
|
1072
1065
|
|
|
@@ -1093,7 +1086,7 @@ var CheckboxValidator = class extends BaseSheetValidator {
|
|
|
1093
1086
|
_defineProperty(this, "skipDefaultFontRender", (rule, cellValue, pos) => {
|
|
1094
1087
|
const { unitId, subUnitId } = pos;
|
|
1095
1088
|
const { formula1, formula2 } = this.parseFormulaSync(rule, unitId, subUnitId);
|
|
1096
|
-
const valueStr = `${cellValue
|
|
1089
|
+
const valueStr = `${cellValue ?? ""}`;
|
|
1097
1090
|
return !valueStr || valueStr === `${formula1}` || valueStr === `${formula2}`;
|
|
1098
1091
|
});
|
|
1099
1092
|
}
|
|
@@ -1151,7 +1144,7 @@ var CheckboxValidator = class extends BaseSheetValidator {
|
|
|
1151
1144
|
const { value, unitId, subUnitId } = cellInfo;
|
|
1152
1145
|
const { formula1, formula2, originFormula1, originFormula2 } = await this.parseFormula(rule, unitId, subUnitId);
|
|
1153
1146
|
if (!_univerjs_core.Tools.isDefine(formula1) || !_univerjs_core.Tools.isDefine(formula2)) return true;
|
|
1154
|
-
return _univerjs_core.Tools.isDefine(value) && (String(value) === String(formula1) || String(value) === String(formula2) || String(value) === String(originFormula1
|
|
1147
|
+
return _univerjs_core.Tools.isDefine(value) && (String(value) === String(formula1) || String(value) === String(formula2) || String(value) === String(originFormula1 ?? "") || String(value) === String(originFormula2 ?? ""));
|
|
1155
1148
|
}
|
|
1156
1149
|
generateRuleErrorMessage(rule) {
|
|
1157
1150
|
return this.localeService.t("sheets-data-validation.checkbox.error");
|
|
@@ -1377,15 +1370,14 @@ var DateValidator = class extends BaseSheetValidator {
|
|
|
1377
1370
|
return this.operators.map((operator) => this.localeService.t(DateOperatorNameMap[operator]));
|
|
1378
1371
|
}
|
|
1379
1372
|
generateRuleName(rule) {
|
|
1380
|
-
var _rule$formula, _rule$formula2;
|
|
1381
1373
|
if (!rule.operator) return this.localeService.t(DateOperatorTitleMap.NONE);
|
|
1382
|
-
const ruleName = this.localeService.t(DateOperatorTitleMap[rule.operator]).replace(FORMULA1,
|
|
1374
|
+
const ruleName = this.localeService.t(DateOperatorTitleMap[rule.operator]).replace(FORMULA1, rule.formula1 ?? "").replace(FORMULA2, rule.formula2 ?? "");
|
|
1383
1375
|
return `${this.titleStr} ${ruleName}`;
|
|
1384
1376
|
}
|
|
1385
1377
|
generateRuleErrorMessage(rule, pos) {
|
|
1386
1378
|
if (!rule.operator) return this.titleStr;
|
|
1387
1379
|
const { transformedFormula1, transformedFormula2 } = getTransformedFormula(this._lexerTreeBuilder, rule, pos);
|
|
1388
|
-
return `${this.localeService.t(DateOperatorErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1
|
|
1380
|
+
return `${this.localeService.t(DateOperatorErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1 ?? "").replace(FORMULA2, transformedFormula2 ?? "")}`;
|
|
1389
1381
|
}
|
|
1390
1382
|
};
|
|
1391
1383
|
|
|
@@ -1463,7 +1455,7 @@ var DecimalValidator = class extends BaseSheetValidator {
|
|
|
1463
1455
|
generateRuleErrorMessage(rule, position) {
|
|
1464
1456
|
if (!rule.operator) return this.localeService.t(OperatorErrorTitleMap.NONE).replace("{TYPE}", this.titleStr);
|
|
1465
1457
|
const { transformedFormula1, transformedFormula2 } = getTransformedFormula(this._lexerTreeBuilder, rule, position);
|
|
1466
|
-
return `${this.localeService.t(OperatorErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1
|
|
1458
|
+
return `${this.localeService.t(OperatorErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1 ?? "").replace(FORMULA2, transformedFormula2 ?? "")}`;
|
|
1467
1459
|
}
|
|
1468
1460
|
};
|
|
1469
1461
|
|
|
@@ -1529,21 +1521,19 @@ var ListValidator = class extends BaseSheetValidator {
|
|
|
1529
1521
|
});
|
|
1530
1522
|
}
|
|
1531
1523
|
validatorFormula(rule, unitId, subUnitId) {
|
|
1532
|
-
var
|
|
1524
|
+
var _this$_univerInstance;
|
|
1533
1525
|
const success = !_univerjs_core.Tools.isBlank(rule.formula1);
|
|
1534
|
-
const valid = isValidListFormula(
|
|
1535
|
-
const
|
|
1536
|
-
const isIntersects = isRuleIntersects(rule, sheetName !== null && sheetName !== void 0 ? sheetName : "");
|
|
1526
|
+
const valid = isValidListFormula(rule.formula1 ?? "", this._lexer);
|
|
1527
|
+
const isIntersects = isRuleIntersects(rule, ((_this$_univerInstance = this._univerInstanceService.getUnit(unitId, _univerjs_core.UniverInstanceType.UNIVER_SHEET)) === null || _this$_univerInstance === void 0 || (_this$_univerInstance = _this$_univerInstance.getSheetBySheetId(subUnitId)) === null || _this$_univerInstance === void 0 ? void 0 : _this$_univerInstance.getName()) ?? "");
|
|
1537
1528
|
return {
|
|
1538
1529
|
success: Boolean(success && valid && !isIntersects),
|
|
1539
1530
|
formula1: success ? valid ? !isIntersects ? void 0 : this.localeService.t("sheets-data-validation.validFail.listIntersects") : this.localeService.t("sheets-data-validation.validFail.listInvalid") : this.localeService.t("sheets-data-validation.validFail.list")
|
|
1540
1531
|
};
|
|
1541
1532
|
}
|
|
1542
1533
|
getExtraStyle(rule, value, { style: defaultStyle }) {
|
|
1543
|
-
|
|
1544
|
-
const tb = (_ref = defaultStyle.tb !== _univerjs_core.WrapStrategy.OVERFLOW ? defaultStyle.tb : _univerjs_core.WrapStrategy.CLIP) !== null && _ref !== void 0 ? _ref : _univerjs_core.WrapStrategy.WRAP;
|
|
1534
|
+
const tb = (defaultStyle.tb !== _univerjs_core.WrapStrategy.OVERFLOW ? defaultStyle.tb : _univerjs_core.WrapStrategy.CLIP) ?? _univerjs_core.WrapStrategy.WRAP;
|
|
1545
1535
|
if (rule.type === _univerjs_core.DataValidationType.LIST && (rule.renderMode === _univerjs_core.DataValidationRenderMode.ARROW || rule.renderMode === _univerjs_core.DataValidationRenderMode.TEXT)) {
|
|
1546
|
-
const color = this.getListWithColorMap(rule)[`${value
|
|
1536
|
+
const color = this.getListWithColorMap(rule)[`${value ?? ""}`];
|
|
1547
1537
|
if (color) return {
|
|
1548
1538
|
bg: { rgb: color },
|
|
1549
1539
|
tb
|
|
@@ -1577,10 +1567,9 @@ var ListValidator = class extends BaseSheetValidator {
|
|
|
1577
1567
|
return this.localeService.t("sheets-data-validation.list.error");
|
|
1578
1568
|
}
|
|
1579
1569
|
_getUnitAndSubUnit(currentUnitId, currentSubUnitId) {
|
|
1580
|
-
|
|
1581
|
-
const workbook = (_ref2 = currentUnitId ? this._univerInstanceService.getUniverSheetInstance(currentUnitId) : void 0) !== null && _ref2 !== void 0 ? _ref2 : this._univerInstanceService.getCurrentUnitOfType(_univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
1570
|
+
const workbook = (currentUnitId ? this._univerInstanceService.getUnit(currentUnitId, _univerjs_core.UniverInstanceType.UNIVER_SHEET) : void 0) ?? this._univerInstanceService.getCurrentUnitOfType(_univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
1582
1571
|
if (!workbook) return null;
|
|
1583
|
-
const worksheet = (
|
|
1572
|
+
const worksheet = (currentSubUnitId ? workbook.getSheetBySheetId(currentSubUnitId) : void 0) ?? workbook.getActiveSheet();
|
|
1584
1573
|
if (!worksheet) return null;
|
|
1585
1574
|
return {
|
|
1586
1575
|
unitId: workbook.getUnitId(),
|
|
@@ -1686,17 +1675,17 @@ var TextLengthValidator = class extends BaseSheetValidator {
|
|
|
1686
1675
|
generateRuleErrorMessage(rule, pos) {
|
|
1687
1676
|
if (!rule.operator) return this.titleStr;
|
|
1688
1677
|
const { transformedFormula1, transformedFormula2 } = getTransformedFormula(this._lexerTreeBuilder, rule, pos);
|
|
1689
|
-
return `${this.localeService.t(TextLengthErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1
|
|
1678
|
+
return `${this.localeService.t(TextLengthErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1 ?? "").replace(FORMULA2, transformedFormula2 ?? "")}`;
|
|
1690
1679
|
}
|
|
1691
1680
|
};
|
|
1692
1681
|
|
|
1693
1682
|
//#endregion
|
|
1694
1683
|
//#region src/commands/commands/data-validation.command.ts
|
|
1695
1684
|
function isBlankCell(cellData) {
|
|
1696
|
-
var _cellData$p$body
|
|
1685
|
+
var _cellData$p$body;
|
|
1697
1686
|
if (!cellData) return true;
|
|
1698
1687
|
if (!cellData.p) return _univerjs_core.Tools.isBlank(cellData.v);
|
|
1699
|
-
return !((
|
|
1688
|
+
return !(((_cellData$p$body = cellData.p.body) === null || _cellData$p$body === void 0 ? void 0 : _cellData$p$body.dataStream) ?? "").slice(0, -2).trim();
|
|
1700
1689
|
}
|
|
1701
1690
|
function getDataValidationDiffMutations(unitId, subUnitId, diffs, accessor, source = "command", fillDefaultValue = true) {
|
|
1702
1691
|
const lexerTreeBuilder = accessor.get(_univerjs_engine_formula.LexerTreeBuilder);
|
|
@@ -1893,7 +1882,7 @@ function getDataValidationDiffMutations(unitId, subUnitId, diffs, accessor, sour
|
|
|
1893
1882
|
params: {
|
|
1894
1883
|
unitId,
|
|
1895
1884
|
subUnitId,
|
|
1896
|
-
cellValue: redoMatrix.
|
|
1885
|
+
cellValue: redoMatrix.clone()
|
|
1897
1886
|
}
|
|
1898
1887
|
};
|
|
1899
1888
|
const undoSetRangeValues = {
|
|
@@ -2058,7 +2047,7 @@ const UpdateSheetDataValidationSettingCommand = {
|
|
|
2058
2047
|
params: {
|
|
2059
2048
|
unitId,
|
|
2060
2049
|
subUnitId,
|
|
2061
|
-
cellValue: redoMatrix.
|
|
2050
|
+
cellValue: redoMatrix.clone()
|
|
2062
2051
|
}
|
|
2063
2052
|
};
|
|
2064
2053
|
const undoSetRangeValues = {
|
|
@@ -2311,7 +2300,7 @@ DataValidationFormulaController = __decorate([
|
|
|
2311
2300
|
//#endregion
|
|
2312
2301
|
//#region package.json
|
|
2313
2302
|
var name = "@univerjs/sheets-data-validation";
|
|
2314
|
-
var version = "1.0.0-
|
|
2303
|
+
var version = "1.0.0-beta.0";
|
|
2315
2304
|
|
|
2316
2305
|
//#endregion
|
|
2317
2306
|
//#region src/config/config.ts
|
|
@@ -2356,7 +2345,7 @@ let DataValidationFormulaRefRangeController = class DataValidationFormulaRefRang
|
|
|
2356
2345
|
const oldRanges = rule.ranges;
|
|
2357
2346
|
const oldFormula1 = rule.formula1;
|
|
2358
2347
|
const oldFormula2 = rule.formula2;
|
|
2359
|
-
const disposable = this._formulaRefRangeService.registerRangeFormula(unitId, subUnitId, oldRanges, [oldFormula1
|
|
2348
|
+
const disposable = this._formulaRefRangeService.registerRangeFormula(unitId, subUnitId, oldRanges, [oldFormula1 ?? "", oldFormula2 ?? ""], (res) => {
|
|
2360
2349
|
if (res.length === 0) return {
|
|
2361
2350
|
undos: [{
|
|
2362
2351
|
id: _univerjs_data_validation.AddDataValidationMutation.id,
|
|
@@ -2512,10 +2501,9 @@ let DataValidationRefRangeController = class DataValidationRefRangeController ex
|
|
|
2512
2501
|
return `${unitID}_${subUnitId}_${ruleId}`;
|
|
2513
2502
|
}
|
|
2514
2503
|
registerFormula(unitId, subUnitId, rule) {
|
|
2515
|
-
var _this$_disposableMap$;
|
|
2516
2504
|
const ruleId = rule.uid;
|
|
2517
2505
|
const id = this._getIdWithUnitId(unitId, subUnitId, ruleId);
|
|
2518
|
-
const disposeSet =
|
|
2506
|
+
const disposeSet = this._disposableMap.get(id) ?? /* @__PURE__ */ new Set();
|
|
2519
2507
|
const handleFormulaChange = (type, formulaString) => {
|
|
2520
2508
|
const oldRule = this._dataValidationModel.getRuleById(unitId, subUnitId, ruleId);
|
|
2521
2509
|
if (!oldRule) return {
|
|
@@ -2581,7 +2569,6 @@ let DataValidationRefRangeController = class DataValidationRefRangeController ex
|
|
|
2581
2569
|
}
|
|
2582
2570
|
}
|
|
2583
2571
|
register(unitId, subUnitId, rule) {
|
|
2584
|
-
var _this$_disposableMap$2;
|
|
2585
2572
|
const handleRangeChange = (commandInfo) => {
|
|
2586
2573
|
const oldRanges = [...rule.ranges];
|
|
2587
2574
|
const resultRanges = oldRanges.map((range) => {
|
|
@@ -2642,7 +2629,7 @@ let DataValidationRefRangeController = class DataValidationRefRangeController ex
|
|
|
2642
2629
|
disposeList.push(() => disposable.dispose());
|
|
2643
2630
|
});
|
|
2644
2631
|
const id = this._getIdWithUnitId(unitId, subUnitId, rule.uid);
|
|
2645
|
-
const current =
|
|
2632
|
+
const current = this._disposableMap.get(id) ?? /* @__PURE__ */ new Set();
|
|
2646
2633
|
current.add(() => disposeList.forEach((dispose) => dispose()));
|
|
2647
2634
|
this._disposableMap.set(id, current);
|
|
2648
2635
|
}
|
|
@@ -2704,7 +2691,7 @@ let SheetDataValidationSheetController = class SheetDataValidationSheetControlle
|
|
|
2704
2691
|
var _workbook$getActiveSh;
|
|
2705
2692
|
const params = commandInfo.params;
|
|
2706
2693
|
const unitId = params.unitId || this._univerInstanceService.getCurrentUnitOfType(_univerjs_core.UniverInstanceType.UNIVER_SHEET).getUnitId();
|
|
2707
|
-
const workbook = this._univerInstanceService.
|
|
2694
|
+
const workbook = this._univerInstanceService.getUnit(unitId, _univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
2708
2695
|
if (!workbook) return {
|
|
2709
2696
|
redos: [],
|
|
2710
2697
|
undos: []
|
|
@@ -2836,9 +2823,8 @@ var CustomFormulaValidator = class extends BaseSheetValidator {
|
|
|
2836
2823
|
_defineProperty(this, "_lexerTreeBuilder", this.injector.get(_univerjs_engine_formula.LexerTreeBuilder));
|
|
2837
2824
|
}
|
|
2838
2825
|
validatorFormula(rule, unitId, subUnitId) {
|
|
2839
|
-
var _rule$formula;
|
|
2840
2826
|
const success = (0, _univerjs_core.isFormulaString)(rule.formula1);
|
|
2841
|
-
const formulaText =
|
|
2827
|
+
const formulaText = rule.formula1 ?? "";
|
|
2842
2828
|
const valid = this._lexerTreeBuilder.checkIfAddBracket(formulaText) === 0 && formulaText.startsWith(_univerjs_engine_formula.operatorToken.EQUALS);
|
|
2843
2829
|
return {
|
|
2844
2830
|
success: success && valid,
|
|
@@ -2870,8 +2856,7 @@ var CustomFormulaValidator = class extends BaseSheetValidator {
|
|
|
2870
2856
|
return this.localeService.t("sheets-data-validation.custom.error");
|
|
2871
2857
|
}
|
|
2872
2858
|
generateRuleName(rule) {
|
|
2873
|
-
|
|
2874
|
-
return this.localeService.t("sheets-data-validation.custom.ruleName").replace("{FORMULA1}", (_rule$formula2 = rule.formula1) !== null && _rule$formula2 !== void 0 ? _rule$formula2 : "");
|
|
2859
|
+
return this.localeService.t("sheets-data-validation.custom.ruleName").replace("{FORMULA1}", rule.formula1 ?? "");
|
|
2875
2860
|
}
|
|
2876
2861
|
};
|
|
2877
2862
|
|
|
@@ -2978,7 +2963,7 @@ var WholeValidator = class extends BaseSheetValidator {
|
|
|
2978
2963
|
generateRuleErrorMessage(rule, position) {
|
|
2979
2964
|
if (!rule.operator) return this.localeService.t(OperatorErrorTitleMap.NONE).replace("{TYPE}", this.titleStr);
|
|
2980
2965
|
const { transformedFormula1, transformedFormula2 } = getTransformedFormula(this._lexerTreeBuilder, rule, position);
|
|
2981
|
-
return `${this.localeService.t(OperatorErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1
|
|
2966
|
+
return `${this.localeService.t(OperatorErrorTitleMap[rule.operator]).replace(FORMULA1, transformedFormula1 ?? "").replace(FORMULA2, transformedFormula2 ?? "")}`;
|
|
2982
2967
|
}
|
|
2983
2968
|
};
|
|
2984
2969
|
|
|
@@ -3154,10 +3139,7 @@ let SheetsDataValidationValidatorService = class SheetsDataValidationValidatorSe
|
|
|
3154
3139
|
* Because during the validation process, merged cells are all marked as VALIDATING status in cache.
|
|
3155
3140
|
*/
|
|
3156
3141
|
if (mergeCells.length) mergeCells.forEach(({ resultRowIndex, resultColIndex, row, col }) => {
|
|
3157
|
-
if (result[resultRowIndex][resultColIndex] === _univerjs_core.DataValidationStatus.VALIDATING)
|
|
3158
|
-
var _this$_dataValidation;
|
|
3159
|
-
result[resultRowIndex][resultColIndex] = (_this$_dataValidation = this._dataValidationCacheService.getValue(unitId, subUnitId, row, col)) !== null && _this$_dataValidation !== void 0 ? _this$_dataValidation : _univerjs_core.DataValidationStatus.VALID;
|
|
3160
|
-
}
|
|
3142
|
+
if (result[resultRowIndex][resultColIndex] === _univerjs_core.DataValidationStatus.VALIDATING) result[resultRowIndex][resultColIndex] = this._dataValidationCacheService.getValue(unitId, subUnitId, row, col) ?? _univerjs_core.DataValidationStatus.VALID;
|
|
3161
3143
|
});
|
|
3162
3144
|
return result;
|
|
3163
3145
|
}
|
|
@@ -3271,7 +3253,7 @@ _defineProperty(UniverSheetsDataValidationPlugin, "packageName", name);
|
|
|
3271
3253
|
_defineProperty(UniverSheetsDataValidationPlugin, "version", version);
|
|
3272
3254
|
_defineProperty(UniverSheetsDataValidationPlugin, "type", _univerjs_core.UniverInstanceType.UNIVER_SHEET);
|
|
3273
3255
|
UniverSheetsDataValidationPlugin = __decorate([
|
|
3274
|
-
(0, _univerjs_core.DependentOn)(
|
|
3256
|
+
(0, _univerjs_core.DependentOn)(_univerjs_data_validation.UniverDataValidationPlugin, _univerjs_engine_formula.UniverFormulaEnginePlugin, _univerjs_sheets.UniverSheetsPlugin, _univerjs_sheets_formula.UniverSheetsFormulaPlugin),
|
|
3275
3257
|
__decorateParam(1, (0, _univerjs_core.Inject)(_univerjs_core.Injector)),
|
|
3276
3258
|
__decorateParam(2, _univerjs_core.ICommandService),
|
|
3277
3259
|
__decorateParam(3, _univerjs_core.IConfigService)
|
|
@@ -3286,7 +3268,7 @@ function createDefaultNewRule(accessor) {
|
|
|
3286
3268
|
type: _univerjs_core.DataValidationType.DECIMAL,
|
|
3287
3269
|
operator: _univerjs_core.DataValidationOperator.EQUAL,
|
|
3288
3270
|
formula1: "100",
|
|
3289
|
-
ranges: currentRanges
|
|
3271
|
+
ranges: currentRanges ?? [{
|
|
3290
3272
|
startColumn: 0,
|
|
3291
3273
|
endColumn: 0,
|
|
3292
3274
|
startRow: 0,
|
package/lib/es/facade.js
CHANGED
|
@@ -6,7 +6,7 @@ import { serializeRangeToRefString } from "@univerjs/engine-formula";
|
|
|
6
6
|
import { serializeListOptions } from "@univerjs/sheets";
|
|
7
7
|
import { FEventName, FUniver } from "@univerjs/core/facade";
|
|
8
8
|
|
|
9
|
-
//#region \0@oxc-project+runtime@0.
|
|
9
|
+
//#region \0@oxc-project+runtime@0.140.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.
|
|
20
|
+
//#region \0@oxc-project+runtime@0.140.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.
|
|
33
|
+
//#region \0@oxc-project+runtime@0.140.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.
|
|
40
|
+
//#region \0@oxc-project+runtime@0.140.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,
|
|
@@ -79,7 +79,7 @@ function _defineProperty(e, r, t) {
|
|
|
79
79
|
var FDataValidationBuilder = class FDataValidationBuilder {
|
|
80
80
|
constructor(rule) {
|
|
81
81
|
_defineProperty(this, "_rule", void 0);
|
|
82
|
-
this._rule = rule
|
|
82
|
+
this._rule = rule ?? {
|
|
83
83
|
uid: generateRandomId(),
|
|
84
84
|
ranges: void 0,
|
|
85
85
|
type: DataValidationType.CUSTOM
|
|
@@ -812,7 +812,7 @@ var FDataValidationBuilder = class FDataValidationBuilder {
|
|
|
812
812
|
this._rule.type = multiple ? DataValidationType.LIST_MULTIPLE : DataValidationType.LIST;
|
|
813
813
|
this._rule.formula1 = serializeListOptions(values);
|
|
814
814
|
this._rule.formula2 = void 0;
|
|
815
|
-
this._rule.showDropDown = showDropdown
|
|
815
|
+
this._rule.showDropDown = showDropdown ?? true;
|
|
816
816
|
return this;
|
|
817
817
|
}
|
|
818
818
|
/**
|
|
@@ -856,7 +856,7 @@ var FDataValidationBuilder = class FDataValidationBuilder {
|
|
|
856
856
|
range: range.getRange()
|
|
857
857
|
})}`;
|
|
858
858
|
this._rule.formula2 = void 0;
|
|
859
|
-
this._rule.showDropDown = showDropdown
|
|
859
|
+
this._rule.showDropDown = showDropdown ?? true;
|
|
860
860
|
return this;
|
|
861
861
|
}
|
|
862
862
|
/**
|
|
@@ -1396,13 +1396,6 @@ FRange.extend(FRangeSheetsDataValidationMixin);
|
|
|
1396
1396
|
//#endregion
|
|
1397
1397
|
//#region src/facade/f-univer.ts
|
|
1398
1398
|
var FUniverSheetsDataValidationMixin = class extends FUniver {
|
|
1399
|
-
/**
|
|
1400
|
-
* @deprecated use `univerAPI.newDataValidation()` as instead.
|
|
1401
|
-
* @returns {FDataValidationBuilder} A new instance of the FDataValidationBuilder class
|
|
1402
|
-
*/
|
|
1403
|
-
static newDataValidation() {
|
|
1404
|
-
return new FDataValidationBuilder();
|
|
1405
|
-
}
|
|
1406
1399
|
newDataValidation() {
|
|
1407
1400
|
return new FDataValidationBuilder();
|
|
1408
1401
|
}
|