@univerjs/data-validation 0.5.5-nightly.202501241606 → 0.6.0-alpha.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/es/index.js CHANGED
@@ -1,699 +1,692 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value;
3
- var __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
4
- var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key != "symbol" ? key + "" : key, value);
5
- import { Disposable, Tools, ILogService, Inject, UniverInstanceType, IResourceManagerService, IUniverInstanceService, toDisposable, CommandType, ICommandService, IUndoRedoService, Plugin, merge, Injector, IConfigService, DataValidationOperator, LocaleService } from "@univerjs/core";
6
- import { Subject, debounceTime, BehaviorSubject } from "rxjs";
7
- function getRuleSetting(rule) {
1
+ var J = Object.defineProperty;
2
+ var z = (t, e, r) => e in t ? J(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r;
3
+ var c = (t, e, r) => z(t, typeof e != "symbol" ? e + "" : e, r);
4
+ import { Disposable as B, Tools as x, ILogService as N, Inject as O, UniverInstanceType as $, IResourceManagerService as K, IUniverInstanceService as Y, toDisposable as X, CommandType as E, ICommandService as T, IUndoRedoService as A, Plugin as Z, merge as k, Injector as G, IConfigService as ee, DataValidationOperator as s, LocaleService as te } from "@univerjs/core";
5
+ import { Subject as ae, debounceTime as re, BehaviorSubject as oe } from "rxjs";
6
+ function q(t) {
8
7
  return {
9
- type: rule.type,
10
- operator: rule.operator,
11
- formula1: rule.formula1,
12
- formula2: rule.formula2,
13
- allowBlank: rule.allowBlank
8
+ type: t.type,
9
+ operator: t.operator,
10
+ formula1: t.formula1,
11
+ formula2: t.formula2,
12
+ allowBlank: t.allowBlank
14
13
  };
15
14
  }
16
- __name(getRuleSetting, "getRuleSetting");
17
- function getRuleOptions(rule) {
15
+ function H(t) {
18
16
  return {
19
- error: rule.error,
20
- errorStyle: rule.errorStyle,
21
- errorTitle: rule.errorTitle,
22
- imeMode: rule.imeMode,
23
- prompt: rule.prompt,
24
- promptTitle: rule.promptTitle,
25
- showDropDown: rule.showDropDown,
26
- showErrorMessage: rule.showErrorMessage,
27
- showInputMessage: rule.showInputMessage,
28
- renderMode: rule.renderMode,
29
- bizInfo: rule.bizInfo
17
+ error: t.error,
18
+ errorStyle: t.errorStyle,
19
+ errorTitle: t.errorTitle,
20
+ imeMode: t.imeMode,
21
+ prompt: t.prompt,
22
+ promptTitle: t.promptTitle,
23
+ showDropDown: t.showDropDown,
24
+ showErrorMessage: t.showErrorMessage,
25
+ showInputMessage: t.showInputMessage,
26
+ renderMode: t.renderMode,
27
+ bizInfo: t.bizInfo
30
28
  };
31
29
  }
32
- __name(getRuleOptions, "getRuleOptions");
33
- var UpdateRuleType = /* @__PURE__ */ ((UpdateRuleType2) => (UpdateRuleType2[UpdateRuleType2.SETTING = 0] = "SETTING", UpdateRuleType2[UpdateRuleType2.RANGE = 1] = "RANGE", UpdateRuleType2[UpdateRuleType2.OPTIONS = 2] = "OPTIONS", UpdateRuleType2[UpdateRuleType2.ALL = 3] = "ALL", UpdateRuleType2))(UpdateRuleType || {}), __defProp$3 = Object.defineProperty, __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor, __decorateClass$3 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
34
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
35
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
36
- return kind && result && __defProp$3(target, key, result), result;
37
- }, "__decorateClass$3"), __decorateParam$3 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$3"), _a;
38
- let DataValidationModel = (_a = class extends Disposable {
39
- constructor(_logService) {
30
+ var h = /* @__PURE__ */ ((t) => (t[t.SETTING = 0] = "SETTING", t[t.RANGE = 1] = "RANGE", t[t.OPTIONS = 2] = "OPTIONS", t[t.ALL = 3] = "ALL", t))(h || {}), ne = Object.defineProperty, ie = Object.getOwnPropertyDescriptor, se = (t, e, r, a) => {
31
+ for (var o = a > 1 ? void 0 : a ? ie(e, r) : e, n = t.length - 1, i; n >= 0; n--)
32
+ (i = t[n]) && (o = (a ? i(e, r, o) : i(o)) || o);
33
+ return a && o && ne(e, r, o), o;
34
+ }, de = (t, e) => (r, a) => e(r, a, t);
35
+ let m = class extends B {
36
+ constructor(e) {
40
37
  super();
41
- __publicField(this, "_model", /* @__PURE__ */ new Map());
42
- __publicField(this, "_ruleChange$", new Subject());
43
- __publicField(this, "ruleChange$", this._ruleChange$.asObservable());
44
- __publicField(this, "ruleChangeDebounce$", this.ruleChange$.pipe(debounceTime(20)));
45
- this._logService = _logService, this.disposeWithMe({
46
- dispose: /* @__PURE__ */ __name(() => {
38
+ c(this, "_model", /* @__PURE__ */ new Map());
39
+ c(this, "_ruleChange$", new ae());
40
+ c(this, "ruleChange$", this._ruleChange$.asObservable());
41
+ c(this, "ruleChangeDebounce$", this.ruleChange$.pipe(re(20)));
42
+ this._logService = e, this.disposeWithMe({
43
+ dispose: () => {
47
44
  this._ruleChange$.complete();
48
- }, "dispose")
45
+ }
49
46
  });
50
47
  }
51
- _ensureMap(unitId, subUnitId) {
52
- this._model.has(unitId) || this._model.set(unitId, /* @__PURE__ */ new Map());
53
- const unitMap = this._model.get(unitId);
54
- if (unitMap.has(subUnitId))
55
- return unitMap.get(subUnitId);
56
- const map = { map: /* @__PURE__ */ new Map(), list: [] };
57
- return unitMap.set(subUnitId, map), map;
58
- }
59
- _addSubUnitRule(subUnit, rule, index) {
60
- const { map: dataValidationMap, list: dataValidations } = subUnit, rules = (Array.isArray(rule) ? rule : [rule]).filter((item) => !dataValidationMap.has(item.uid));
61
- typeof index == "number" && index < dataValidations.length ? dataValidations.splice(index, 0, ...rules) : dataValidations.push(...rules), rules.forEach((item) => {
62
- dataValidationMap.set(item.uid, item);
48
+ _ensureMap(e, r) {
49
+ this._model.has(e) || this._model.set(e, /* @__PURE__ */ new Map());
50
+ const a = this._model.get(e);
51
+ if (a.has(r))
52
+ return a.get(r);
53
+ const o = { map: /* @__PURE__ */ new Map(), list: [] };
54
+ return a.set(r, o), o;
55
+ }
56
+ _addSubUnitRule(e, r, a) {
57
+ const { map: o, list: n } = e, l = (Array.isArray(r) ? r : [r]).filter((d) => !o.has(d.uid));
58
+ typeof a == "number" && a < n.length ? n.splice(a, 0, ...l) : n.push(...l), l.forEach((d) => {
59
+ o.set(d.uid, d);
63
60
  });
64
61
  }
65
- _removeSubUnitRule(subUnit, ruleId) {
66
- const { map: dataValidationMap, list: dataValidations } = subUnit, index = dataValidations.findIndex((item) => item.uid === ruleId);
67
- index > -1 && (dataValidations.splice(index, 1), dataValidationMap.delete(ruleId));
68
- }
69
- _updateSubUnitRule(subUnit, ruleId, payload) {
70
- const { map: dataValidationMap, list: dataValidations } = subUnit, oldRule = dataValidationMap.get(ruleId), index = dataValidations.findIndex((rule2) => ruleId === rule2.uid);
71
- if (!oldRule)
72
- throw new Error(`Data validation rule is not found, ruleId: ${ruleId}.`);
73
- const rule = { ...oldRule };
74
- switch (payload.type) {
75
- case UpdateRuleType.RANGE: {
76
- rule.ranges = payload.payload;
62
+ _removeSubUnitRule(e, r) {
63
+ const { map: a, list: o } = e, n = o.findIndex((i) => i.uid === r);
64
+ n > -1 && (o.splice(n, 1), a.delete(r));
65
+ }
66
+ _updateSubUnitRule(e, r, a) {
67
+ const { map: o, list: n } = e, i = o.get(r), l = n.findIndex((u) => r === u.uid);
68
+ if (!i)
69
+ throw new Error(`Data validation rule is not found, ruleId: ${r}.`);
70
+ const d = { ...i };
71
+ switch (a.type) {
72
+ case h.RANGE: {
73
+ d.ranges = a.payload;
77
74
  break;
78
75
  }
79
- case UpdateRuleType.SETTING: {
80
- Object.assign(rule, getRuleSetting(payload.payload));
76
+ case h.SETTING: {
77
+ Object.assign(d, q(a.payload));
81
78
  break;
82
79
  }
83
- case UpdateRuleType.OPTIONS: {
84
- Object.assign(rule, getRuleOptions(payload.payload));
80
+ case h.OPTIONS: {
81
+ Object.assign(d, H(a.payload));
85
82
  break;
86
83
  }
87
- case UpdateRuleType.ALL: {
88
- Object.assign(rule, payload.payload);
84
+ case h.ALL: {
85
+ Object.assign(d, a.payload);
89
86
  break;
90
87
  }
91
88
  }
92
- return dataValidations[index] = rule, dataValidationMap.set(ruleId, rule), rule;
89
+ return n[l] = d, o.set(r, d), d;
93
90
  }
94
- _addRuleSideEffect(unitId, subUnitId, rule, source) {
95
- if (!this._ensureMap(unitId, subUnitId).map.get(rule.uid))
91
+ _addRuleSideEffect(e, r, a, o) {
92
+ if (!this._ensureMap(e, r).map.get(a.uid))
96
93
  return {
97
- rule,
94
+ rule: a,
98
95
  type: "add",
99
- unitId,
100
- subUnitId,
101
- source
96
+ unitId: e,
97
+ subUnitId: r,
98
+ source: o
102
99
  };
103
100
  }
104
- addRule(unitId, subUnitId, rule, source, index) {
101
+ addRule(e, r, a, o, n) {
105
102
  try {
106
- const subUnitMap = this._ensureMap(unitId, subUnitId), effects = (Array.isArray(rule) ? rule : [rule]).map((item) => this._addRuleSideEffect(unitId, subUnitId, item, source));
107
- this._addSubUnitRule(subUnitMap, rule, index), effects.forEach((effect) => {
108
- effect && this._ruleChange$.next(effect);
103
+ const i = this._ensureMap(e, r), d = (Array.isArray(a) ? a : [a]).map((u) => this._addRuleSideEffect(e, r, u, o));
104
+ this._addSubUnitRule(i, a, n), d.forEach((u) => {
105
+ u && this._ruleChange$.next(u);
109
106
  });
110
- } catch (error) {
111
- this._logService.error(error);
107
+ } catch (i) {
108
+ this._logService.error(i);
112
109
  }
113
110
  }
114
- updateRule(unitId, subUnitId, ruleId, payload, source) {
111
+ updateRule(e, r, a, o, n) {
115
112
  try {
116
- const subUnitMap = this._ensureMap(unitId, subUnitId), oldRule = Tools.deepClone(subUnitMap.map.get(ruleId));
117
- if (!oldRule)
118
- throw new Error(`Data validation rule is not found, ruleId: ${ruleId}.`);
119
- const rule = this._updateSubUnitRule(subUnitMap, ruleId, payload);
113
+ const i = this._ensureMap(e, r), l = x.deepClone(i.map.get(a));
114
+ if (!l)
115
+ throw new Error(`Data validation rule is not found, ruleId: ${a}.`);
116
+ const d = this._updateSubUnitRule(i, a, o);
120
117
  this._ruleChange$.next({
121
- rule,
118
+ rule: d,
122
119
  type: "update",
123
- unitId,
124
- subUnitId,
125
- source,
126
- updatePayload: payload,
127
- oldRule
120
+ unitId: e,
121
+ subUnitId: r,
122
+ source: n,
123
+ updatePayload: o,
124
+ oldRule: l
128
125
  });
129
- } catch (error) {
130
- this._logService.error(error);
126
+ } catch (i) {
127
+ this._logService.error(i);
131
128
  }
132
129
  }
133
- removeRule(unitId, subUnitId, ruleId, source) {
130
+ removeRule(e, r, a, o) {
134
131
  try {
135
- const map = this._ensureMap(unitId, subUnitId), oldRule = map.map.get(ruleId);
136
- oldRule && (this._removeSubUnitRule(map, ruleId), this._ruleChange$.next({
137
- rule: oldRule,
132
+ const n = this._ensureMap(e, r), i = n.map.get(a);
133
+ i && (this._removeSubUnitRule(n, a), this._ruleChange$.next({
134
+ rule: i,
138
135
  type: "remove",
139
- unitId,
140
- subUnitId,
141
- source
136
+ unitId: e,
137
+ subUnitId: r,
138
+ source: o
142
139
  }));
143
- } catch (error) {
144
- this._logService.error(error);
140
+ } catch (n) {
141
+ this._logService.error(n);
145
142
  }
146
143
  }
147
- getRuleById(unitId, subUnitId, ruleId) {
148
- return this._ensureMap(unitId, subUnitId).map.get(ruleId);
144
+ getRuleById(e, r, a) {
145
+ return this._ensureMap(e, r).map.get(a);
149
146
  }
150
- getRuleIndex(unitId, subUnitId, ruleId) {
151
- return this._ensureMap(unitId, subUnitId).list.findIndex((rule) => rule.uid === ruleId);
147
+ getRuleIndex(e, r, a) {
148
+ return this._ensureMap(e, r).list.findIndex((n) => n.uid === a);
152
149
  }
153
- getRules(unitId, subUnitId) {
154
- return [...this._ensureMap(unitId, subUnitId).list];
150
+ getRules(e, r) {
151
+ return [...this._ensureMap(e, r).list];
155
152
  }
156
- getUnitRules(unitId) {
157
- const unitMap = this._model.get(unitId);
158
- if (!unitMap)
153
+ getUnitRules(e) {
154
+ const r = this._model.get(e);
155
+ if (!r)
159
156
  return [];
160
- const res = [];
161
- return unitMap.forEach((manager, subUnitId) => {
162
- res.push([subUnitId, manager.list]);
163
- }), res;
157
+ const a = [];
158
+ return r.forEach((o, n) => {
159
+ a.push([n, o.list]);
160
+ }), a;
164
161
  }
165
- deleteUnitRules(unitId) {
166
- this._model.delete(unitId);
162
+ deleteUnitRules(e) {
163
+ this._model.delete(e);
167
164
  }
168
- getSubUnitIds(unitId) {
169
- var _a5, _b;
170
- return Array.from((_b = (_a5 = this._model.get(unitId)) == null ? void 0 : _a5.keys()) != null ? _b : []);
165
+ getSubUnitIds(e) {
166
+ var r, a;
167
+ return Array.from((a = (r = this._model.get(e)) == null ? void 0 : r.keys()) != null ? a : []);
171
168
  }
172
169
  getAll() {
173
- return Array.from(this._model.keys()).map((unitId) => [unitId, this.getUnitRules(unitId)]);
174
- }
175
- }, __name(_a, "DataValidationModel"), _a);
176
- DataValidationModel = __decorateClass$3([
177
- __decorateParam$3(0, ILogService)
178
- ], DataValidationModel);
179
- var __defProp$2 = Object.defineProperty, __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor, __decorateClass$2 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
180
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
181
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
182
- return kind && result && __defProp$2(target, key, result), result;
183
- }, "__decorateClass$2"), __decorateParam$2 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$2");
184
- const DATA_VALIDATION_PLUGIN_NAME = "SHEET_DATA_VALIDATION_PLUGIN";
185
- var _a2;
186
- let DataValidationResourceController = (_a2 = class extends Disposable {
187
- constructor(_resourceManagerService, _univerInstanceService, _dataValidationModel) {
188
- super(), this._resourceManagerService = _resourceManagerService, this._univerInstanceService = _univerInstanceService, this._dataValidationModel = _dataValidationModel, this._initSnapshot();
170
+ return Array.from(this._model.keys()).map((e) => [e, this.getUnitRules(e)]);
171
+ }
172
+ };
173
+ m = se([
174
+ de(0, N)
175
+ ], m);
176
+ var le = Object.defineProperty, ue = Object.getOwnPropertyDescriptor, ce = (t, e, r, a) => {
177
+ for (var o = a > 1 ? void 0 : a ? ue(e, r) : e, n = t.length - 1, i; n >= 0; n--)
178
+ (i = t[n]) && (o = (a ? i(e, r, o) : i(o)) || o);
179
+ return a && o && le(e, r, o), o;
180
+ }, y = (t, e) => (r, a) => e(r, a, t);
181
+ const pe = "SHEET_DATA_VALIDATION_PLUGIN";
182
+ let I = class extends B {
183
+ constructor(t, e, r) {
184
+ super(), this._resourceManagerService = t, this._univerInstanceService = e, this._dataValidationModel = r, this._initSnapshot();
189
185
  }
190
186
  _initSnapshot() {
191
- const toJson = /* @__PURE__ */ __name((unitID) => {
192
- const map = this._dataValidationModel.getUnitRules(unitID), resultMap = {};
193
- return map ? (map.forEach(([key, v]) => {
194
- resultMap[key] = v;
195
- }), JSON.stringify(resultMap)) : "";
196
- }, "toJson"), parseJson = /* @__PURE__ */ __name((json) => {
197
- if (!json)
187
+ const t = (r) => {
188
+ const a = this._dataValidationModel.getUnitRules(r), o = {};
189
+ return a ? (a.forEach(([n, i]) => {
190
+ o[n] = i;
191
+ }), JSON.stringify(o)) : "";
192
+ }, e = (r) => {
193
+ if (!r)
198
194
  return {};
199
195
  try {
200
- return JSON.parse(json);
196
+ return JSON.parse(r);
201
197
  } catch {
202
198
  return {};
203
199
  }
204
- }, "parseJson");
200
+ };
205
201
  this.disposeWithMe(
206
202
  this._resourceManagerService.registerPluginResource({
207
- pluginName: DATA_VALIDATION_PLUGIN_NAME,
208
- businesses: [UniverInstanceType.UNIVER_SHEET],
209
- toJson: /* @__PURE__ */ __name((unitID) => toJson(unitID), "toJson"),
210
- parseJson: /* @__PURE__ */ __name((json) => parseJson(json), "parseJson"),
211
- onUnLoad: /* @__PURE__ */ __name((unitID) => {
212
- this._dataValidationModel.deleteUnitRules(unitID);
213
- }, "onUnLoad"),
214
- onLoad: /* @__PURE__ */ __name((unitID, value) => {
215
- Object.keys(value).forEach((subunitId) => {
216
- value[subunitId].forEach((rule) => {
217
- this._dataValidationModel.addRule(unitID, subunitId, rule, "patched");
203
+ pluginName: pe,
204
+ businesses: [$.UNIVER_SHEET],
205
+ toJson: (r) => t(r),
206
+ parseJson: (r) => e(r),
207
+ onUnLoad: (r) => {
208
+ this._dataValidationModel.deleteUnitRules(r);
209
+ },
210
+ onLoad: (r, a) => {
211
+ Object.keys(a).forEach((o) => {
212
+ a[o].forEach((i) => {
213
+ this._dataValidationModel.addRule(r, o, i, "patched");
218
214
  });
219
215
  });
220
- }, "onLoad")
216
+ }
221
217
  })
222
218
  );
223
219
  }
224
- }, __name(_a2, "DataValidationResourceController"), _a2);
225
- DataValidationResourceController = __decorateClass$2([
226
- __decorateParam$2(0, IResourceManagerService),
227
- __decorateParam$2(1, IUniverInstanceService),
228
- __decorateParam$2(2, Inject(DataValidationModel))
229
- ], DataValidationResourceController);
230
- var DataValidatorRegistryScope = /* @__PURE__ */ ((DataValidatorRegistryScope2) => (DataValidatorRegistryScope2.SHEET = "sheet", DataValidatorRegistryScope2))(DataValidatorRegistryScope || {});
231
- const _DataValidatorRegistryService = class _DataValidatorRegistryService {
220
+ };
221
+ I = ce([
222
+ y(0, K),
223
+ y(1, Y),
224
+ y(2, O(m))
225
+ ], I);
226
+ var me = /* @__PURE__ */ ((t) => (t.SHEET = "sheet", t))(me || {});
227
+ class j {
232
228
  constructor() {
233
- __publicField(this, "_validatorByScopes", /* @__PURE__ */ new Map());
234
- __publicField(this, "_validatorMap", /* @__PURE__ */ new Map());
235
- __publicField(this, "_validatorsChange$", new BehaviorSubject(void 0));
236
- __publicField(this, "validatorsChange$", this._validatorsChange$.asObservable());
237
- }
238
- _addValidatorToScope(validator, scope) {
239
- this._validatorByScopes.has(scope) || this._validatorByScopes.set(scope, []);
240
- const validators = this._validatorByScopes.get(scope);
241
- if (validators.findIndex((m) => m.id === validator.id) > -1)
242
- throw new Error(`Validator item with the same id ${validator.id} has already been added!`);
243
- validators.push(validator);
244
- }
245
- _removeValidatorFromScope(validator, scope) {
246
- const validators = this._validatorByScopes.get(scope);
247
- if (!validators)
229
+ c(this, "_validatorByScopes", /* @__PURE__ */ new Map());
230
+ c(this, "_validatorMap", /* @__PURE__ */ new Map());
231
+ c(this, "_validatorsChange$", new oe(void 0));
232
+ c(this, "validatorsChange$", this._validatorsChange$.asObservable());
233
+ }
234
+ _addValidatorToScope(e, r) {
235
+ this._validatorByScopes.has(r) || this._validatorByScopes.set(r, []);
236
+ const a = this._validatorByScopes.get(r);
237
+ if (a.findIndex((o) => o.id === e.id) > -1)
238
+ throw new Error(`Validator item with the same id ${e.id} has already been added!`);
239
+ a.push(e);
240
+ }
241
+ _removeValidatorFromScope(e, r) {
242
+ const a = this._validatorByScopes.get(r);
243
+ if (!a)
248
244
  return;
249
- const index = validators.findIndex((v) => v.id === validator.id);
250
- index > -1 && validators.splice(index, 1);
251
- }
252
- register(validator) {
253
- return this._validatorMap.set(validator.id, validator), Array.isArray(validator.scopes) ? validator.scopes.forEach((scope) => {
254
- this._addValidatorToScope(validator, scope);
255
- }) : this._addValidatorToScope(validator, validator.scopes), this._validatorsChange$.next(), toDisposable(() => {
256
- this._validatorMap.delete(validator.id), Array.isArray(validator.scopes) ? validator.scopes.forEach((scope) => {
257
- this._removeValidatorFromScope(validator, scope);
258
- }) : this._removeValidatorFromScope(validator, validator.scopes), this._validatorsChange$.next();
245
+ const o = a.findIndex((n) => n.id === e.id);
246
+ o > -1 && a.splice(o, 1);
247
+ }
248
+ register(e) {
249
+ return this._validatorMap.set(e.id, e), Array.isArray(e.scopes) ? e.scopes.forEach((r) => {
250
+ this._addValidatorToScope(e, r);
251
+ }) : this._addValidatorToScope(e, e.scopes), this._validatorsChange$.next(), X(() => {
252
+ this._validatorMap.delete(e.id), Array.isArray(e.scopes) ? e.scopes.forEach((r) => {
253
+ this._removeValidatorFromScope(e, r);
254
+ }) : this._removeValidatorFromScope(e, e.scopes), this._validatorsChange$.next();
259
255
  });
260
256
  }
261
- getValidatorItem(id) {
262
- return this._validatorMap.get(id);
257
+ getValidatorItem(e) {
258
+ return this._validatorMap.get(e);
263
259
  }
264
- getValidatorsByScope(scope) {
265
- return this._validatorByScopes.get(scope);
260
+ getValidatorsByScope(e) {
261
+ return this._validatorByScopes.get(e);
266
262
  }
267
- };
268
- __name(_DataValidatorRegistryService, "DataValidatorRegistryService");
269
- let DataValidatorRegistryService = _DataValidatorRegistryService;
270
- const AddDataValidationMutation = {
271
- type: CommandType.MUTATION,
263
+ }
264
+ const S = {
265
+ type: E.MUTATION,
272
266
  id: "data-validation.mutation.addRule",
273
- handler(accessor, params) {
274
- if (!params)
267
+ handler(t, e) {
268
+ if (!e)
275
269
  return !1;
276
- const { unitId, subUnitId, rule, index, source = "command" } = params;
277
- return accessor.get(DataValidationModel).addRule(unitId, subUnitId, rule, source, index), !0;
270
+ const { unitId: r, subUnitId: a, rule: o, index: n, source: i = "command" } = e;
271
+ return t.get(m).addRule(r, a, o, i, n), !0;
278
272
  }
279
- }, RemoveDataValidationMutation = {
280
- type: CommandType.MUTATION,
273
+ }, v = {
274
+ type: E.MUTATION,
281
275
  id: "data-validation.mutation.removeRule",
282
- handler(accessor, params) {
283
- if (!params)
276
+ handler(t, e) {
277
+ if (!e)
284
278
  return !1;
285
- const { unitId, subUnitId, ruleId, source = "command" } = params, dataValidationModel = accessor.get(DataValidationModel);
286
- return Array.isArray(ruleId) ? ruleId.forEach((item) => {
287
- dataValidationModel.removeRule(unitId, subUnitId, item, source);
288
- }) : dataValidationModel.removeRule(unitId, subUnitId, ruleId, source), !0;
279
+ const { unitId: r, subUnitId: a, ruleId: o, source: n = "command" } = e, i = t.get(m);
280
+ return Array.isArray(o) ? o.forEach((l) => {
281
+ i.removeRule(r, a, l, n);
282
+ }) : i.removeRule(r, a, o, n), !0;
289
283
  }
290
- }, UpdateDataValidationMutation = {
291
- type: CommandType.MUTATION,
284
+ }, f = {
285
+ type: E.MUTATION,
292
286
  id: "data-validation.mutation.updateRule",
293
- handler(accessor, params) {
294
- if (!params)
287
+ handler(t, e) {
288
+ if (!e)
295
289
  return !1;
296
- const { unitId, subUnitId, ruleId, payload, source = "command" } = params;
297
- return accessor.get(DataValidationModel).updateRule(unitId, subUnitId, ruleId, payload, source), !0;
290
+ const { unitId: r, subUnitId: a, ruleId: o, payload: n, source: i = "command" } = e;
291
+ return t.get(m).updateRule(r, a, o, n, i), !0;
298
292
  }
299
- }, AddDataValidationCommand = {
300
- type: CommandType.COMMAND,
293
+ }, he = {
294
+ type: E.COMMAND,
301
295
  id: "data-validation.command.addRule",
302
- async handler(accessor, params) {
303
- if (accessor.get(ILogService).error("[Deprecated]: `AddDataValidationCommand` is deprecated, please use `AddSheetDataValidationCommand` in `@univerjs/sheets-data-validation` instead!"), !params)
296
+ async handler(t, e) {
297
+ if (t.get(N).error("[Deprecated]: `AddDataValidationCommand` is deprecated, please use `AddSheetDataValidationCommand` in `@univerjs/sheets-data-validation` instead!"), !e)
304
298
  return !1;
305
- const { rule, unitId, subUnitId } = params, commandService = accessor.get(ICommandService), undoRedoService = accessor.get(IUndoRedoService), mutationParams = {
306
- ...params,
299
+ const { rule: a, unitId: o, subUnitId: n } = e, i = t.get(T), l = t.get(A), d = {
300
+ ...e,
307
301
  rule: {
308
- ...params.rule,
309
- ranges: [params.rule.range]
302
+ ...e.rule,
303
+ ranges: [e.rule.range]
310
304
  }
311
- }, redoMutations = [{
312
- id: AddDataValidationMutation.id,
313
- params: mutationParams
314
- }], undoMutations = [{
315
- id: RemoveDataValidationMutation.id,
305
+ }, u = [{
306
+ id: S.id,
307
+ params: d
308
+ }], p = [{
309
+ id: v.id,
316
310
  params: {
317
- unitId,
318
- subUnitId,
319
- ruleId: rule.uid
311
+ unitId: o,
312
+ subUnitId: n,
313
+ ruleId: a.uid
320
314
  }
321
315
  }];
322
- return undoRedoService.pushUndoRedo({
323
- unitID: unitId,
324
- redoMutations,
325
- undoMutations
326
- }), await commandService.executeCommand(AddDataValidationMutation.id, mutationParams), !0;
327
- }
328
- }, RemoveDataValidationCommand = {
329
- type: CommandType.COMMAND,
316
+ return l.pushUndoRedo({
317
+ unitID: o,
318
+ redoMutations: u,
319
+ undoMutations: p
320
+ }), await i.executeCommand(S.id, d), !0;
321
+ }
322
+ }, _e = {
323
+ type: E.COMMAND,
330
324
  id: "data-validation.command.removeRule",
331
- handler(accessor, params) {
332
- if (accessor.get(ILogService).error("[Deprecated]: `RemoveDataValidationCommand` is deprecated, please use `RemoveSheetDataValidationCommand` in `@univerjs/sheets-data-validation` instead!"), !params)
325
+ handler(t, e) {
326
+ if (t.get(N).error("[Deprecated]: `RemoveDataValidationCommand` is deprecated, please use `RemoveSheetDataValidationCommand` in `@univerjs/sheets-data-validation` instead!"), !e)
333
327
  return !1;
334
- const { unitId, subUnitId, ruleId } = params, commandService = accessor.get(ICommandService), undoRedoService = accessor.get(IUndoRedoService), dataValidationModel = accessor.get(DataValidationModel), redoMutations = [{
335
- id: RemoveDataValidationMutation.id,
336
- params
337
- }], undoMutations = [{
338
- id: AddDataValidationMutation.id,
328
+ const { unitId: a, subUnitId: o, ruleId: n } = e, i = t.get(T), l = t.get(A), d = t.get(m), u = [{
329
+ id: v.id,
330
+ params: e
331
+ }], p = [{
332
+ id: S.id,
339
333
  params: {
340
- unitId,
341
- subUnitId,
334
+ unitId: a,
335
+ subUnitId: o,
342
336
  rule: {
343
- ...dataValidationModel.getRuleById(unitId, subUnitId, ruleId)
337
+ ...d.getRuleById(a, o, n)
344
338
  },
345
- index: dataValidationModel.getRuleIndex(unitId, subUnitId, ruleId)
339
+ index: d.getRuleIndex(a, o, n)
346
340
  }
347
341
  }];
348
- return undoRedoService.pushUndoRedo({
349
- undoMutations,
350
- redoMutations,
351
- unitID: params.unitId
352
- }), commandService.executeCommand(RemoveDataValidationMutation.id, params), !0;
353
- }
354
- }, UpdateDataValidationOptionsCommand = {
355
- type: CommandType.COMMAND,
342
+ return l.pushUndoRedo({
343
+ undoMutations: p,
344
+ redoMutations: u,
345
+ unitID: e.unitId
346
+ }), i.executeCommand(v.id, e), !0;
347
+ }
348
+ }, Ee = {
349
+ type: E.COMMAND,
356
350
  id: "data-validation.command.updateDataValidationSetting",
357
- handler(accessor, params) {
358
- if (accessor.get(ILogService).warn("[Deprecated]: `UpdateDataValidationOptionsCommand` is deprecated, please use `UpdateSheetDataValidationOptionsCommand` in `@univerjs/sheets-data-validation` instead!"), !params)
351
+ handler(t, e) {
352
+ if (t.get(N).warn("[Deprecated]: `UpdateDataValidationOptionsCommand` is deprecated, please use `UpdateSheetDataValidationOptionsCommand` in `@univerjs/sheets-data-validation` instead!"), !e)
359
353
  return !1;
360
- const commandService = accessor.get(ICommandService), redoUndoService = accessor.get(IUndoRedoService), dataValidationModel = accessor.get(DataValidationModel), { unitId, subUnitId, ruleId, options } = params, rule = dataValidationModel.getRuleById(unitId, subUnitId, ruleId);
361
- if (!rule)
354
+ const a = t.get(T), o = t.get(A), n = t.get(m), { unitId: i, subUnitId: l, ruleId: d, options: u } = e, p = n.getRuleById(i, l, d);
355
+ if (!p)
362
356
  return !1;
363
- const mutationParams = {
364
- unitId,
365
- subUnitId,
366
- ruleId,
357
+ const _ = {
358
+ unitId: i,
359
+ subUnitId: l,
360
+ ruleId: d,
367
361
  payload: {
368
- type: UpdateRuleType.OPTIONS,
369
- payload: options
362
+ type: h.OPTIONS,
363
+ payload: u
370
364
  }
371
- }, redoMutations = [{
372
- id: UpdateDataValidationMutation.id,
373
- params: mutationParams
374
- }], undoMutationParams = {
375
- unitId,
376
- subUnitId,
377
- ruleId,
365
+ }, g = [{
366
+ id: f.id,
367
+ params: _
368
+ }], M = {
369
+ unitId: i,
370
+ subUnitId: l,
371
+ ruleId: d,
378
372
  payload: {
379
- type: UpdateRuleType.OPTIONS,
380
- payload: getRuleOptions(rule)
373
+ type: h.OPTIONS,
374
+ payload: H(p)
381
375
  }
382
- }, undoMutations = [{
383
- id: UpdateDataValidationMutation.id,
384
- params: undoMutationParams
376
+ }, R = [{
377
+ id: f.id,
378
+ params: M
385
379
  }];
386
- return redoUndoService.pushUndoRedo({
387
- unitID: unitId,
388
- redoMutations,
389
- undoMutations
390
- }), commandService.executeCommand(UpdateDataValidationMutation.id, mutationParams), !0;
391
- }
392
- }, UpdateDataValidationSettingCommand = {
393
- type: CommandType.COMMAND,
380
+ return o.pushUndoRedo({
381
+ unitID: i,
382
+ redoMutations: g,
383
+ undoMutations: R
384
+ }), a.executeCommand(f.id, _), !0;
385
+ }
386
+ }, ge = {
387
+ type: E.COMMAND,
394
388
  id: "data-validation.command.updateDataValidationOptions",
395
- handler(accessor, params) {
396
- if (accessor.get(ILogService).error("[Deprecated]: `UpdateDataValidationSettingCommand` is deprecated, please use `UpdateSheetDataValidationSettingCommand` in `@univerjs/sheets-data-validation` instead!"), !params)
389
+ handler(t, e) {
390
+ if (t.get(N).error("[Deprecated]: `UpdateDataValidationSettingCommand` is deprecated, please use `UpdateSheetDataValidationSettingCommand` in `@univerjs/sheets-data-validation` instead!"), !e)
397
391
  return !1;
398
- const commandService = accessor.get(ICommandService), redoUndoService = accessor.get(IUndoRedoService), dataValidationModel = accessor.get(DataValidationModel), dataValidatorRegistryService = accessor.get(DataValidatorRegistryService), { unitId, subUnitId, ruleId, setting } = params, validator = dataValidatorRegistryService.getValidatorItem(setting.type);
399
- if (!validator)
392
+ const a = t.get(T), o = t.get(A), n = t.get(m), i = t.get(j), { unitId: l, subUnitId: d, ruleId: u, setting: p } = e, _ = i.getValidatorItem(p.type);
393
+ if (!_)
400
394
  return !1;
401
- const rule = dataValidationModel.getRuleById(unitId, subUnitId, ruleId);
402
- if (!rule)
395
+ const g = n.getRuleById(l, d, u);
396
+ if (!g)
403
397
  return !1;
404
- const newRule = { ...rule, ...setting };
405
- if (!validator.validatorFormula(newRule, unitId, subUnitId).success)
398
+ const M = { ...g, ...p };
399
+ if (!_.validatorFormula(M, l, d).success)
406
400
  return !1;
407
- const mutationParams = {
408
- unitId,
409
- subUnitId,
410
- ruleId,
401
+ const R = {
402
+ unitId: l,
403
+ subUnitId: d,
404
+ ruleId: u,
411
405
  payload: {
412
- type: UpdateRuleType.SETTING,
406
+ type: h.SETTING,
413
407
  payload: {
414
- ...setting,
415
- ...validator.normalizeFormula(newRule, unitId, subUnitId)
408
+ ...p,
409
+ ..._.normalizeFormula(M, l, d)
416
410
  }
417
411
  }
418
- }, redoMutations = [{
419
- id: UpdateDataValidationMutation.id,
420
- params: mutationParams
421
- }], undoMutationParams = {
422
- unitId,
423
- subUnitId,
424
- ruleId,
412
+ }, Q = [{
413
+ id: f.id,
414
+ params: R
415
+ }], F = {
416
+ unitId: l,
417
+ subUnitId: d,
418
+ ruleId: u,
425
419
  payload: {
426
- type: UpdateRuleType.SETTING,
427
- payload: getRuleSetting(rule)
420
+ type: h.SETTING,
421
+ payload: q(g)
428
422
  }
429
- }, undoMutations = [{
430
- id: UpdateDataValidationMutation.id,
431
- params: undoMutationParams
423
+ }, W = [{
424
+ id: f.id,
425
+ params: F
432
426
  }];
433
- return redoUndoService.pushUndoRedo({
434
- unitID: unitId,
435
- redoMutations,
436
- undoMutations
437
- }), commandService.executeCommand(UpdateDataValidationMutation.id, mutationParams), !0;
438
- }
439
- }, RemoveAllDataValidationCommand = {
440
- type: CommandType.COMMAND,
427
+ return o.pushUndoRedo({
428
+ unitID: l,
429
+ redoMutations: Q,
430
+ undoMutations: W
431
+ }), a.executeCommand(f.id, R), !0;
432
+ }
433
+ }, fe = {
434
+ type: E.COMMAND,
441
435
  id: "data-validation.command.removeAll",
442
- handler(accessor, params) {
443
- if (accessor.get(ILogService).error("[Deprecated]: `RemoveAllDataValidationCommand` is deprecated, please use `RemoveSheetAllDataValidationCommand` in `@univerjs/sheets-data-validation` instead!"), !params)
436
+ handler(t, e) {
437
+ if (t.get(N).error("[Deprecated]: `RemoveAllDataValidationCommand` is deprecated, please use `RemoveSheetAllDataValidationCommand` in `@univerjs/sheets-data-validation` instead!"), !e)
444
438
  return !1;
445
- const { unitId, subUnitId } = params, commandService = accessor.get(ICommandService), dataValidationModel = accessor.get(DataValidationModel), undoRedoService = accessor.get(IUndoRedoService), currentRules = [...dataValidationModel.getRules(unitId, subUnitId)], redoParams = {
446
- unitId,
447
- subUnitId,
448
- ruleId: currentRules.map((rule) => rule.uid)
449
- }, redoMutations = [{
450
- id: RemoveDataValidationMutation.id,
451
- params: redoParams
452
- }], undoMutations = [{
453
- id: AddDataValidationMutation.id,
439
+ const { unitId: a, subUnitId: o } = e, n = t.get(T), i = t.get(m), l = t.get(A), d = [...i.getRules(a, o)], u = {
440
+ unitId: a,
441
+ subUnitId: o,
442
+ ruleId: d.map((g) => g.uid)
443
+ }, p = [{
444
+ id: v.id,
445
+ params: u
446
+ }], _ = [{
447
+ id: S.id,
454
448
  params: {
455
- unitId,
456
- subUnitId,
457
- rule: currentRules
449
+ unitId: a,
450
+ subUnitId: o,
451
+ rule: d
458
452
  }
459
453
  }];
460
- return undoRedoService.pushUndoRedo({
461
- redoMutations,
462
- undoMutations,
463
- unitID: unitId
464
- }), commandService.executeCommand(RemoveDataValidationMutation.id, redoParams), !0;
465
- }
466
- }, DATA_VALIDATION_PLUGIN_CONFIG_KEY = "data-validation.config", defaultPluginConfig = {};
467
- var __defProp$1 = Object.defineProperty, __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor, __decorateClass$1 = /* @__PURE__ */ __name((decorators, target, key, kind) => {
468
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$1(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
469
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
470
- return kind && result && __defProp$1(target, key, result), result;
471
- }, "__decorateClass$1"), __decorateParam$1 = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam$1");
472
- const PLUGIN_NAME = "UNIVER_DATA_VALIDATION_PLUGIN";
473
- var _a3;
474
- let UniverDataValidationPlugin = (_a3 = class extends Plugin {
475
- constructor(_config = defaultPluginConfig, _injector, _commandService, _configService) {
476
- super(), this._config = _config, this._injector = _injector, this._commandService = _commandService, this._configService = _configService;
477
- const { ...rest } = merge(
454
+ return l.pushUndoRedo({
455
+ redoMutations: p,
456
+ undoMutations: _,
457
+ unitID: a
458
+ }), n.executeCommand(v.id, u), !0;
459
+ }
460
+ }, ve = "data-validation.config", U = {};
461
+ var Ne = Object.defineProperty, Te = Object.getOwnPropertyDescriptor, Se = (t, e, r, a) => {
462
+ for (var o = a > 1 ? void 0 : a ? Te(e, r) : e, n = t.length - 1, i; n >= 0; n--)
463
+ (i = t[n]) && (o = (a ? i(e, r, o) : i(o)) || o);
464
+ return a && o && Ne(e, r, o), o;
465
+ }, L = (t, e) => (r, a) => e(r, a, t);
466
+ const Ae = "UNIVER_DATA_VALIDATION_PLUGIN";
467
+ var V;
468
+ let D = (V = class extends Z {
469
+ constructor(t = U, e, r, a) {
470
+ super(), this._config = t, this._injector = e, this._commandService = r, this._configService = a;
471
+ const { ...o } = k(
478
472
  {},
479
- defaultPluginConfig,
473
+ U,
480
474
  this._config
481
475
  );
482
- this._configService.setConfig(DATA_VALIDATION_PLUGIN_CONFIG_KEY, rest);
476
+ this._configService.setConfig(ve, o);
483
477
  }
484
478
  onStarting() {
485
479
  [
486
- [DataValidationModel],
487
- [DataValidatorRegistryService],
488
- [DataValidationResourceController]
489
- ].forEach((d) => this._injector.add(d)), [
480
+ [m],
481
+ [j],
482
+ [I]
483
+ ].forEach((t) => this._injector.add(t)), [
490
484
  // command
491
- AddDataValidationCommand,
492
- RemoveAllDataValidationCommand,
493
- UpdateDataValidationOptionsCommand,
494
- UpdateDataValidationSettingCommand,
495
- RemoveDataValidationCommand,
485
+ he,
486
+ fe,
487
+ Ee,
488
+ ge,
489
+ _e,
496
490
  // mutation
497
- AddDataValidationMutation,
498
- UpdateDataValidationMutation,
499
- RemoveDataValidationMutation
500
- ].forEach((command) => {
501
- this._commandService.registerCommand(command);
491
+ S,
492
+ f,
493
+ v
494
+ ].forEach((t) => {
495
+ this._commandService.registerCommand(t);
502
496
  });
503
497
  }
504
498
  onReady() {
505
- this._injector.get(DataValidationResourceController);
506
- }
507
- }, __name(_a3, "UniverDataValidationPlugin"), __publicField(_a3, "pluginName", PLUGIN_NAME), __publicField(_a3, "type", UniverInstanceType.UNIVER_SHEET), _a3);
508
- UniverDataValidationPlugin = __decorateClass$1([
509
- __decorateParam$1(1, Inject(Injector)),
510
- __decorateParam$1(2, ICommandService),
511
- __decorateParam$1(3, IConfigService)
512
- ], UniverDataValidationPlugin);
513
- DataValidationOperator.BETWEEN + "", DataValidationOperator.EQUAL + "", DataValidationOperator.GREATER_THAN + "", DataValidationOperator.GREATER_THAN_OR_EQUAL + "", DataValidationOperator.LESS_THAN + "", DataValidationOperator.LESS_THAN_OR_EQUAL + "", DataValidationOperator.NOT_BETWEEN + "", DataValidationOperator.NOT_EQUAL + "";
514
- const OperatorTitleMap = {
515
- [DataValidationOperator.BETWEEN]: "dataValidation.ruleName.between",
516
- [DataValidationOperator.EQUAL]: "dataValidation.ruleName.equal",
517
- [DataValidationOperator.GREATER_THAN]: "dataValidation.ruleName.greaterThan",
518
- [DataValidationOperator.GREATER_THAN_OR_EQUAL]: "dataValidation.ruleName.greaterThanOrEqual",
519
- [DataValidationOperator.LESS_THAN]: "dataValidation.ruleName.lessThan",
520
- [DataValidationOperator.LESS_THAN_OR_EQUAL]: "dataValidation.ruleName.lessThanOrEqual",
521
- [DataValidationOperator.NOT_BETWEEN]: "dataValidation.ruleName.notBetween",
522
- [DataValidationOperator.NOT_EQUAL]: "dataValidation.ruleName.notEqual"
523
- }, OperatorErrorTitleMap = {
524
- [DataValidationOperator.BETWEEN]: "dataValidation.errorMsg.between",
525
- [DataValidationOperator.EQUAL]: "dataValidation.errorMsg.equal",
526
- [DataValidationOperator.GREATER_THAN]: "dataValidation.errorMsg.greaterThan",
527
- [DataValidationOperator.GREATER_THAN_OR_EQUAL]: "dataValidation.errorMsg.greaterThanOrEqual",
528
- [DataValidationOperator.LESS_THAN]: "dataValidation.errorMsg.lessThan",
529
- [DataValidationOperator.LESS_THAN_OR_EQUAL]: "dataValidation.errorMsg.lessThanOrEqual",
530
- [DataValidationOperator.NOT_BETWEEN]: "dataValidation.errorMsg.notBetween",
531
- [DataValidationOperator.NOT_EQUAL]: "dataValidation.errorMsg.notEqual"
532
- }, TextLengthErrorTitleMap = {
533
- [DataValidationOperator.BETWEEN]: "dataValidation.textLength.errorMsg.between",
534
- [DataValidationOperator.EQUAL]: "dataValidation.textLength.errorMsg.equal",
535
- [DataValidationOperator.GREATER_THAN]: "dataValidation.textLength.errorMsg.greaterThan",
536
- [DataValidationOperator.GREATER_THAN_OR_EQUAL]: "dataValidation.textLength.errorMsg.greaterThanOrEqual",
537
- [DataValidationOperator.LESS_THAN]: "dataValidation.textLength.errorMsg.lessThan",
538
- [DataValidationOperator.LESS_THAN_OR_EQUAL]: "dataValidation.textLength.errorMsg.lessThanOrEqual",
539
- [DataValidationOperator.NOT_BETWEEN]: "dataValidation.textLength.errorMsg.notBetween",
540
- [DataValidationOperator.NOT_EQUAL]: "dataValidation.textLength.errorMsg.notEqual"
541
- }, TWO_FORMULA_OPERATOR_COUNT = [
542
- DataValidationOperator.BETWEEN,
543
- DataValidationOperator.NOT_BETWEEN
499
+ this._injector.get(I);
500
+ }
501
+ }, c(V, "pluginName", Ae), c(V, "type", $.UNIVER_SHEET), V);
502
+ D = Se([
503
+ L(1, O(G)),
504
+ L(2, T),
505
+ L(3, ee)
506
+ ], D);
507
+ s.BETWEEN + "", s.EQUAL + "", s.GREATER_THAN + "", s.GREATER_THAN_OR_EQUAL + "", s.LESS_THAN + "", s.LESS_THAN_OR_EQUAL + "", s.NOT_BETWEEN + "", s.NOT_EQUAL + "";
508
+ const Me = {
509
+ [s.BETWEEN]: "dataValidation.ruleName.between",
510
+ [s.EQUAL]: "dataValidation.ruleName.equal",
511
+ [s.GREATER_THAN]: "dataValidation.ruleName.greaterThan",
512
+ [s.GREATER_THAN_OR_EQUAL]: "dataValidation.ruleName.greaterThanOrEqual",
513
+ [s.LESS_THAN]: "dataValidation.ruleName.lessThan",
514
+ [s.LESS_THAN_OR_EQUAL]: "dataValidation.ruleName.lessThanOrEqual",
515
+ [s.NOT_BETWEEN]: "dataValidation.ruleName.notBetween",
516
+ [s.NOT_EQUAL]: "dataValidation.ruleName.notEqual"
517
+ }, Re = {
518
+ [s.BETWEEN]: "dataValidation.errorMsg.between",
519
+ [s.EQUAL]: "dataValidation.errorMsg.equal",
520
+ [s.GREATER_THAN]: "dataValidation.errorMsg.greaterThan",
521
+ [s.GREATER_THAN_OR_EQUAL]: "dataValidation.errorMsg.greaterThanOrEqual",
522
+ [s.LESS_THAN]: "dataValidation.errorMsg.lessThan",
523
+ [s.LESS_THAN_OR_EQUAL]: "dataValidation.errorMsg.lessThanOrEqual",
524
+ [s.NOT_BETWEEN]: "dataValidation.errorMsg.notBetween",
525
+ [s.NOT_EQUAL]: "dataValidation.errorMsg.notEqual"
526
+ }, we = {
527
+ [s.BETWEEN]: "dataValidation.textLength.errorMsg.between",
528
+ [s.EQUAL]: "dataValidation.textLength.errorMsg.equal",
529
+ [s.GREATER_THAN]: "dataValidation.textLength.errorMsg.greaterThan",
530
+ [s.GREATER_THAN_OR_EQUAL]: "dataValidation.textLength.errorMsg.greaterThanOrEqual",
531
+ [s.LESS_THAN]: "dataValidation.textLength.errorMsg.lessThan",
532
+ [s.LESS_THAN_OR_EQUAL]: "dataValidation.textLength.errorMsg.lessThanOrEqual",
533
+ [s.NOT_BETWEEN]: "dataValidation.textLength.errorMsg.notBetween",
534
+ [s.NOT_EQUAL]: "dataValidation.textLength.errorMsg.notEqual"
535
+ }, be = [
536
+ s.BETWEEN,
537
+ s.NOT_BETWEEN
544
538
  ];
545
- var __defProp2 = Object.defineProperty, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __decorateClass = /* @__PURE__ */ __name((decorators, target, key, kind) => {
546
- for (var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target, i = decorators.length - 1, decorator; i >= 0; i--)
547
- (decorator = decorators[i]) && (result = (kind ? decorator(target, key, result) : decorator(result)) || result);
548
- return kind && result && __defProp2(target, key, result), result;
549
- }, "__decorateClass"), __decorateParam = /* @__PURE__ */ __name((index, decorator) => (target, key) => decorator(target, key, index), "__decorateParam");
550
- const FORMULA1 = "{FORMULA1}", FORMULA2 = "{FORMULA2}", operatorNameMap = {
551
- [DataValidationOperator.BETWEEN]: "dataValidation.operators.between",
552
- [DataValidationOperator.EQUAL]: "dataValidation.operators.equal",
553
- [DataValidationOperator.GREATER_THAN]: "dataValidation.operators.greaterThan",
554
- [DataValidationOperator.GREATER_THAN_OR_EQUAL]: "dataValidation.operators.greaterThanOrEqual",
555
- [DataValidationOperator.LESS_THAN]: "dataValidation.operators.lessThan",
556
- [DataValidationOperator.LESS_THAN_OR_EQUAL]: "dataValidation.operators.lessThanOrEqual",
557
- [DataValidationOperator.NOT_BETWEEN]: "dataValidation.operators.notBetween",
558
- [DataValidationOperator.NOT_EQUAL]: "dataValidation.operators.notEqual"
539
+ var Ve = Object.defineProperty, Oe = Object.getOwnPropertyDescriptor, Ie = (t, e, r, a) => {
540
+ for (var o = a > 1 ? void 0 : a ? Oe(e, r) : e, n = t.length - 1, i; n >= 0; n--)
541
+ (i = t[n]) && (o = (a ? i(e, r, o) : i(o)) || o);
542
+ return a && o && Ve(e, r, o), o;
543
+ }, w = (t, e) => (r, a) => e(r, a, t);
544
+ const b = "{FORMULA1}", C = "{FORMULA2}", ye = {
545
+ [s.BETWEEN]: "dataValidation.operators.between",
546
+ [s.EQUAL]: "dataValidation.operators.equal",
547
+ [s.GREATER_THAN]: "dataValidation.operators.greaterThan",
548
+ [s.GREATER_THAN_OR_EQUAL]: "dataValidation.operators.greaterThanOrEqual",
549
+ [s.LESS_THAN]: "dataValidation.operators.lessThan",
550
+ [s.LESS_THAN_OR_EQUAL]: "dataValidation.operators.lessThanOrEqual",
551
+ [s.NOT_BETWEEN]: "dataValidation.operators.notBetween",
552
+ [s.NOT_EQUAL]: "dataValidation.operators.notEqual"
559
553
  };
560
- var _a4;
561
- let BaseDataValidator = (_a4 = class {
554
+ let P = class {
562
555
  // #endregion
563
- constructor(localeService, injector) {
564
- __publicField(this, "offsetFormulaByRange", !0);
556
+ constructor(t, e) {
557
+ c(this, "offsetFormulaByRange", !0);
565
558
  // #region UI related
566
- __publicField(this, "formulaInput");
567
- __publicField(this, "canvasRender", null);
568
- __publicField(this, "dropdown");
569
- __publicField(this, "optionsInput");
570
- __publicField(this, "skipDefaultFontRender");
571
- this.localeService = localeService, this.injector = injector;
559
+ c(this, "formulaInput");
560
+ c(this, "canvasRender", null);
561
+ c(this, "dropdown");
562
+ c(this, "optionsInput");
563
+ c(this, "skipDefaultFontRender");
564
+ this.localeService = t, this.injector = e;
572
565
  }
573
566
  get operatorNames() {
574
- return this.operators.map((operator) => this.localeService.t(operatorNameMap[operator]));
567
+ return this.operators.map((t) => this.localeService.t(ye[t]));
575
568
  }
576
569
  get titleStr() {
577
570
  return this.localeService.t(this.title);
578
571
  }
579
- generateRuleName(rule) {
580
- var _a5, _b;
581
- if (!rule.operator)
572
+ generateRuleName(t) {
573
+ var r, a;
574
+ if (!t.operator)
582
575
  return this.titleStr;
583
- const ruleName = this.localeService.t(OperatorTitleMap[rule.operator]).replace(FORMULA1, (_a5 = rule.formula1) != null ? _a5 : "").replace(FORMULA2, (_b = rule.formula2) != null ? _b : "");
584
- return `${this.titleStr} ${ruleName}`;
576
+ const e = this.localeService.t(Me[t.operator]).replace(b, (r = t.formula1) != null ? r : "").replace(C, (a = t.formula2) != null ? a : "");
577
+ return `${this.titleStr} ${e}`;
585
578
  }
586
- generateRuleErrorMessage(rule, position) {
587
- var _a5, _b;
588
- return rule.operator ? `${this.localeService.t(OperatorErrorTitleMap[rule.operator]).replace(FORMULA1, (_a5 = rule.formula1) != null ? _a5 : "").replace(FORMULA2, (_b = rule.formula2) != null ? _b : "")}` : this.titleStr;
579
+ generateRuleErrorMessage(t, e) {
580
+ var a, o;
581
+ return t.operator ? `${this.localeService.t(Re[t.operator]).replace(b, (a = t.formula1) != null ? a : "").replace(C, (o = t.formula2) != null ? o : "")}` : this.titleStr;
589
582
  }
590
- getExtraStyle(rule, value, ctx, row, column) {
583
+ getExtraStyle(t, e, r, a, o) {
591
584
  }
592
- getRuleFinalError(rule, position) {
593
- return rule.showErrorMessage && rule.error ? rule.error : this.generateRuleErrorMessage(rule, position);
585
+ getRuleFinalError(t, e) {
586
+ return t.showErrorMessage && t.error ? t.error : this.generateRuleErrorMessage(t, e);
594
587
  }
595
- isEmptyCellValue(cellValue) {
596
- return cellValue === "" || cellValue === void 0 || cellValue === null;
588
+ isEmptyCellValue(t) {
589
+ return t === "" || t === void 0 || t === null;
597
590
  }
598
- normalizeFormula(rule, unitId, subUnitId) {
591
+ normalizeFormula(t, e, r) {
599
592
  return {
600
- formula1: rule.formula1,
601
- formula2: rule.formula2
593
+ formula1: t.formula1,
594
+ formula2: t.formula2
602
595
  };
603
596
  }
604
- async isValidType(cellInfo, formula, rule) {
597
+ async isValidType(t, e, r) {
605
598
  return !0;
606
599
  }
607
- transform(cellInfo, formula, rule) {
608
- return cellInfo;
600
+ transform(t, e, r) {
601
+ return t;
609
602
  }
610
- async validatorIsEqual(cellInfo, formula, rule) {
611
- const { formula1 } = formula, { value: cellValue } = cellInfo;
612
- return Number.isNaN(formula1) ? !0 : cellValue === formula1;
603
+ async validatorIsEqual(t, e, r) {
604
+ const { formula1: a } = e, { value: o } = t;
605
+ return Number.isNaN(a) ? !0 : o === a;
613
606
  }
614
- async validatorIsNotEqual(cellInfo, formula, _rule) {
615
- const { formula1 } = formula;
616
- return Number.isNaN(formula1) ? !0 : cellInfo.value !== formula1;
607
+ async validatorIsNotEqual(t, e, r) {
608
+ const { formula1: a } = e;
609
+ return Number.isNaN(a) ? !0 : t.value !== a;
617
610
  }
618
- async validatorIsBetween(cellInfo, formula, _rule) {
619
- const { formula1, formula2 } = formula;
620
- if (Number.isNaN(formula1) || Number.isNaN(formula2))
611
+ async validatorIsBetween(t, e, r) {
612
+ const { formula1: a, formula2: o } = e;
613
+ if (Number.isNaN(a) || Number.isNaN(o))
621
614
  return !0;
622
- const start = Math.min(formula1, formula2), end = Math.max(formula1, formula2);
623
- return cellInfo.value >= start && cellInfo.value <= end;
615
+ const n = Math.min(a, o), i = Math.max(a, o);
616
+ return t.value >= n && t.value <= i;
624
617
  }
625
- async validatorIsNotBetween(cellInfo, formula, _rule) {
626
- const { formula1, formula2 } = formula;
627
- if (Number.isNaN(formula1) || Number.isNaN(formula2))
618
+ async validatorIsNotBetween(t, e, r) {
619
+ const { formula1: a, formula2: o } = e;
620
+ if (Number.isNaN(a) || Number.isNaN(o))
628
621
  return !0;
629
- const start = Math.min(formula1, formula2), end = Math.max(formula1, formula2);
630
- return cellInfo.value < start || cellInfo.value > end;
631
- }
632
- async validatorIsGreaterThan(cellInfo, formula, _rule) {
633
- const { formula1 } = formula;
634
- return Number.isNaN(formula1) ? !0 : cellInfo.value > formula1;
635
- }
636
- async validatorIsGreaterThanOrEqual(cellInfo, formula, _rule) {
637
- const { formula1 } = formula;
638
- return Number.isNaN(formula1) ? !0 : cellInfo.value >= formula1;
639
- }
640
- async validatorIsLessThan(cellInfo, formula, _rule) {
641
- const { formula1 } = formula;
642
- return Number.isNaN(formula1) ? !0 : cellInfo.value < formula1;
643
- }
644
- async validatorIsLessThanOrEqual(cellInfo, formula, _rule) {
645
- const { formula1 } = formula;
646
- return Number.isNaN(formula1) ? !0 : cellInfo.value <= formula1;
647
- }
648
- async validator(cellInfo, rule) {
649
- const { value: cellValue, unitId, subUnitId } = cellInfo, isEmpty = this.isEmptyCellValue(cellValue), { allowBlank = !0, operator } = rule;
650
- if (isEmpty)
651
- return allowBlank;
652
- const formulaInfo = await this.parseFormula(rule, unitId, subUnitId, cellInfo.row, cellInfo.column);
653
- if (!formulaInfo.isFormulaValid || !await this.isValidType(cellInfo, formulaInfo, rule))
622
+ const n = Math.min(a, o), i = Math.max(a, o);
623
+ return t.value < n || t.value > i;
624
+ }
625
+ async validatorIsGreaterThan(t, e, r) {
626
+ const { formula1: a } = e;
627
+ return Number.isNaN(a) ? !0 : t.value > a;
628
+ }
629
+ async validatorIsGreaterThanOrEqual(t, e, r) {
630
+ const { formula1: a } = e;
631
+ return Number.isNaN(a) ? !0 : t.value >= a;
632
+ }
633
+ async validatorIsLessThan(t, e, r) {
634
+ const { formula1: a } = e;
635
+ return Number.isNaN(a) ? !0 : t.value < a;
636
+ }
637
+ async validatorIsLessThanOrEqual(t, e, r) {
638
+ const { formula1: a } = e;
639
+ return Number.isNaN(a) ? !0 : t.value <= a;
640
+ }
641
+ async validator(t, e) {
642
+ const { value: r, unitId: a, subUnitId: o } = t, n = this.isEmptyCellValue(r), { allowBlank: i = !0, operator: l } = e;
643
+ if (n)
644
+ return i;
645
+ const d = await this.parseFormula(e, a, o, t.row, t.column);
646
+ if (!d.isFormulaValid || !await this.isValidType(t, d, e))
654
647
  return !1;
655
- if (!Tools.isDefine(operator))
648
+ if (!x.isDefine(l))
656
649
  return !0;
657
- const transformedCell = this.transform(cellInfo, formulaInfo, rule);
658
- switch (operator) {
659
- case DataValidationOperator.BETWEEN:
660
- return this.validatorIsBetween(transformedCell, formulaInfo, rule);
661
- case DataValidationOperator.EQUAL:
662
- return this.validatorIsEqual(transformedCell, formulaInfo, rule);
663
- case DataValidationOperator.GREATER_THAN:
664
- return this.validatorIsGreaterThan(transformedCell, formulaInfo, rule);
665
- case DataValidationOperator.GREATER_THAN_OR_EQUAL:
666
- return this.validatorIsGreaterThanOrEqual(transformedCell, formulaInfo, rule);
667
- case DataValidationOperator.LESS_THAN:
668
- return this.validatorIsLessThan(transformedCell, formulaInfo, rule);
669
- case DataValidationOperator.LESS_THAN_OR_EQUAL:
670
- return this.validatorIsLessThanOrEqual(transformedCell, formulaInfo, rule);
671
- case DataValidationOperator.NOT_BETWEEN:
672
- return this.validatorIsNotBetween(transformedCell, formulaInfo, rule);
673
- case DataValidationOperator.NOT_EQUAL:
674
- return this.validatorIsNotEqual(transformedCell, formulaInfo, rule);
650
+ const u = this.transform(t, d, e);
651
+ switch (l) {
652
+ case s.BETWEEN:
653
+ return this.validatorIsBetween(u, d, e);
654
+ case s.EQUAL:
655
+ return this.validatorIsEqual(u, d, e);
656
+ case s.GREATER_THAN:
657
+ return this.validatorIsGreaterThan(u, d, e);
658
+ case s.GREATER_THAN_OR_EQUAL:
659
+ return this.validatorIsGreaterThanOrEqual(u, d, e);
660
+ case s.LESS_THAN:
661
+ return this.validatorIsLessThan(u, d, e);
662
+ case s.LESS_THAN_OR_EQUAL:
663
+ return this.validatorIsLessThanOrEqual(u, d, e);
664
+ case s.NOT_BETWEEN:
665
+ return this.validatorIsNotBetween(u, d, e);
666
+ case s.NOT_EQUAL:
667
+ return this.validatorIsNotEqual(u, d, e);
675
668
  default:
676
669
  throw new Error("Unknown operator.");
677
670
  }
678
671
  }
679
- }, __name(_a4, "BaseDataValidator"), _a4);
680
- BaseDataValidator = __decorateClass([
681
- __decorateParam(0, Inject(LocaleService)),
682
- __decorateParam(1, Inject(Injector))
683
- ], BaseDataValidator);
672
+ };
673
+ P = Ie([
674
+ w(0, O(te)),
675
+ w(1, O(G))
676
+ ], P);
684
677
  export {
685
- AddDataValidationMutation,
686
- BaseDataValidator,
687
- DataValidationModel,
688
- DataValidationResourceController,
689
- DataValidatorRegistryScope,
690
- DataValidatorRegistryService,
691
- RemoveDataValidationMutation,
692
- TWO_FORMULA_OPERATOR_COUNT,
693
- TextLengthErrorTitleMap,
694
- UniverDataValidationPlugin,
695
- UpdateDataValidationMutation,
696
- UpdateRuleType,
697
- getRuleOptions,
698
- getRuleSetting
678
+ S as AddDataValidationMutation,
679
+ P as BaseDataValidator,
680
+ m as DataValidationModel,
681
+ I as DataValidationResourceController,
682
+ me as DataValidatorRegistryScope,
683
+ j as DataValidatorRegistryService,
684
+ v as RemoveDataValidationMutation,
685
+ be as TWO_FORMULA_OPERATOR_COUNT,
686
+ we as TextLengthErrorTitleMap,
687
+ D as UniverDataValidationPlugin,
688
+ f as UpdateDataValidationMutation,
689
+ h as UpdateRuleType,
690
+ H as getRuleOptions,
691
+ q as getRuleSetting
699
692
  };