@univerjs/sheets-data-validation 0.3.0-alpha.0 → 0.3.0-nightly.202410101606

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 (69) hide show
  1. package/README.md +2 -2
  2. package/lib/cjs/index.js +1 -9
  3. package/lib/es/index.js +1 -5568
  4. package/lib/types/commands/commands/data-validation.command.d.ts +0 -1
  5. package/lib/types/common/const.d.ts +0 -1
  6. package/lib/types/controllers/dv-ref-range.controller.d.ts +1 -1
  7. package/lib/types/controllers/dv.controller.d.ts +1 -4
  8. package/lib/types/index.d.ts +10 -4
  9. package/lib/types/plugin.d.ts +4 -5
  10. package/lib/types/utils/create.d.ts +1 -1
  11. package/lib/types/validators/checkbox-validator.d.ts +2 -5
  12. package/lib/types/validators/custom-validator.d.ts +0 -1
  13. package/lib/types/validators/date-validator.d.ts +2 -5
  14. package/lib/types/validators/decimal-validator.d.ts +1 -3
  15. package/lib/types/validators/list-multiple-validator.d.ts +0 -2
  16. package/lib/types/validators/list-validator.d.ts +2 -6
  17. package/lib/types/validators/text-length-validator.d.ts +1 -2
  18. package/lib/types/validators/whole-validator.d.ts +1 -3
  19. package/lib/umd/index.js +1 -9
  20. package/package.json +20 -33
  21. package/LICENSE +0 -176
  22. package/lib/index.css +0 -1
  23. package/lib/locale/en-US.json +0 -167
  24. package/lib/locale/ru-RU.json +0 -167
  25. package/lib/locale/vi-VN.json +0 -167
  26. package/lib/locale/zh-CN.json +0 -167
  27. package/lib/locale/zh-TW.json +0 -167
  28. package/lib/types/commands/operations/data-validation.operation.d.ts +0 -17
  29. package/lib/types/controllers/config.schema.d.ts +0 -8
  30. package/lib/types/controllers/dv-alert.controller.d.ts +0 -14
  31. package/lib/types/controllers/dv-auto-fill.controller.d.ts +0 -10
  32. package/lib/types/controllers/dv-copy-paste.controller.d.ts +0 -13
  33. package/lib/types/controllers/dv-permission.controller.d.ts +0 -9
  34. package/lib/types/controllers/dv-reject-input.controller.d.ts +0 -15
  35. package/lib/types/controllers/dv-render.controller.d.ts +0 -39
  36. package/lib/types/controllers/dv.menu.d.ts +0 -7
  37. package/lib/types/controllers/menu.schema.d.ts +0 -2
  38. package/lib/types/locale/en-US.d.ts +0 -3
  39. package/lib/types/locale/ru-RU.d.ts +0 -3
  40. package/lib/types/locale/vi-VN.d.ts +0 -3
  41. package/lib/types/locale/zh-CN.d.ts +0 -183
  42. package/lib/types/locale/zh-TW.d.ts +0 -3
  43. package/lib/types/mobile-plugin.d.ts +0 -12
  44. package/lib/types/services/data-validation-panel.service.d.ts +0 -32
  45. package/lib/types/services/dropdown-manager.service.d.ts +0 -40
  46. package/lib/types/views/date-dropdown/index.d.ts +0 -3
  47. package/lib/types/views/detail/index.d.ts +0 -2
  48. package/lib/types/views/drop-down/CellDropdown.d.ts +0 -2
  49. package/lib/types/views/drop-down/index.d.ts +0 -18
  50. package/lib/types/views/formula-input/base-formula-input.d.ts +0 -3
  51. package/lib/types/views/formula-input/checkbox-formula-input.d.ts +0 -3
  52. package/lib/types/views/formula-input/custom-formula-input.d.ts +0 -3
  53. package/lib/types/views/formula-input/formula-input.d.ts +0 -4
  54. package/lib/types/views/formula-input/index.d.ts +0 -6
  55. package/lib/types/views/formula-input/list-formula-input.d.ts +0 -3
  56. package/lib/types/views/index.d.ts +0 -20
  57. package/lib/types/views/item/index.d.ts +0 -10
  58. package/lib/types/views/list/index.d.ts +0 -2
  59. package/lib/types/views/list-dropdown/index.d.ts +0 -3
  60. package/lib/types/views/options/index.d.ts +0 -8
  61. package/lib/types/views/panel/index.d.ts +0 -2
  62. package/lib/types/views/render-mode/index.d.ts +0 -10
  63. package/lib/types/views/show-time/index.d.ts +0 -10
  64. package/lib/types/widgets/checkbox-widget.d.ts +0 -19
  65. package/lib/types/widgets/dropdown-multiple-widget.d.ts +0 -19
  66. package/lib/types/widgets/dropdown-widget.d.ts +0 -28
  67. package/lib/types/widgets/shape/dropdown.d.ts +0 -12
  68. package/lib/types/widgets/shape/index.d.ts +0 -18
  69. package/lib/types/widgets/shape/layout.d.ts +0 -37
package/lib/cjs/index.js CHANGED
@@ -1,9 +1 @@
1
- "use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const core=require("@univerjs/core"),dataValidation=require("@univerjs/data-validation"),sheets=require("@univerjs/sheets"),sheetsUi=require("@univerjs/sheets-ui"),rxjs=require("rxjs"),engineFormula=require("@univerjs/engine-formula"),sheetsFormula=require("@univerjs/sheets-formula"),React=require("react"),design=require("@univerjs/design"),docsUi=require("@univerjs/docs-ui"),ui=require("@univerjs/ui"),cs=require("clsx"),engineRender=require("@univerjs/engine-render"),dayjs=require("dayjs"),sheetsNumfmt=require("@univerjs/sheets-numfmt"),docs=require("@univerjs/docs"),DATA_VALIDATION_PLUGIN_NAME="SHEET_DATA_VALIDATION_PLUGIN",DROP_DOWN_DEFAULT_COLOR="#ECECEC",_DataValidationCacheService=class _DataValidationCacheService{constructor(){__publicField(this,"_cacheMatrix",new Map)}_ensureCache(unitId,subUnitId){let unitMap=this._cacheMatrix.get(unitId);unitMap||(unitMap=new Map,this._cacheMatrix.set(unitId,unitMap));let cacheMatrix=unitMap.get(subUnitId);return cacheMatrix||(cacheMatrix=new core.ObjectMatrix,unitMap.set(subUnitId,cacheMatrix)),cacheMatrix}ensureCache(unitId,subUnitId){return this._ensureCache(unitId,subUnitId)}addRule(unitId,subUnitId,rule){this.markRangeDirty(unitId,subUnitId,rule.ranges)}removeRule(unitId,subUnitId,rule){this._deleteRange(unitId,subUnitId,rule.ranges)}updateRuleRanges(unitId,subUnitId,ruleId,newRanges,oldRanges){const cache=this._ensureCache(unitId,subUnitId);oldRanges.forEach(range=>{core.Range.foreach(range,(row,col)=>{const item=cache.getValue(row,col);item&&(item.temp=!0)})}),newRanges.forEach(range=>{core.Range.foreach(range,(row,col)=>{const item=cache.getValue(row,col);item&&item.ruleId===ruleId?item.temp=!1:cache.setValue(row,col,void 0)})}),oldRanges.forEach(range=>{core.Range.foreach(range,(row,col)=>{const item=cache.getValue(row,col);item&&item.temp===!0&&cache.realDeleteValue(row,col)})})}markRangeDirty(unitId,subUnitId,ranges){const cache=this._ensureCache(unitId,subUnitId);ranges.forEach(range=>{core.Range.foreach(range,(row,col)=>{cache.setValue(row,col,void 0)})})}markCellDirty(unitId,subUnitId,row,col){this._ensureCache(unitId,subUnitId).setValue(row,col,void 0)}_deleteRange(unitId,subUnitId,ranges){const cache=this._ensureCache(unitId,subUnitId);ranges.forEach(range=>{core.Range.foreach(range,(row,col)=>{cache.realDeleteValue(row,col)})})}getValue(unitId,subUnitId,row,col){return this._ensureCache(unitId,subUnitId).getValue(row,col)}setValue(unitId,subUnitId,row,col,value){return this._ensureCache(unitId,subUnitId).setValue(row,col,value)}};__name(_DataValidationCacheService,"DataValidationCacheService");let DataValidationCacheService=_DataValidationCacheService;var __defProp$k=Object.defineProperty,__getOwnPropDesc$k=Object.getOwnPropertyDescriptor,__decorateClass$k=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$k(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$k(target,key,result),result},"__decorateClass$k"),__decorateParam$k=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$k");function transformFormula(lexerTreeBuilder,formula,originRow,originCol,targetRow,targetCol){return lexerTreeBuilder.moveFormulaRefOffset(formula,targetCol-originCol,targetRow-originRow)}__name(transformFormula,"transformFormula");var _a;exports.DataValidationCustomFormulaService=(_a=class extends core.Disposable{constructor(_instanceSrv,_registerOtherFormulaService,_lexerTreeBuilder,_dataValidationModel,_dataValidationCacheService,_logService){super();__publicField(this,"_formulaMap",new Map);__publicField(this,"_ruleFormulaMap",new Map);__publicField(this,"_formulaCellMap",new Map);this._instanceSrv=_instanceSrv,this._registerOtherFormulaService=_registerOtherFormulaService,this._lexerTreeBuilder=_lexerTreeBuilder,this._dataValidationModel=_dataValidationModel,this._dataValidationCacheService=_dataValidationCacheService,this._logService=_logService,this._initFormulaResultHandler()}_initFormulaResultHandler(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(resultMap=>{for(const unitId in resultMap){const unitMap=resultMap[unitId];if(this._instanceSrv.getUnitType(unitId)===core.UniverInstanceType.UNIVER_SHEET)for(const subUnitId in unitMap){const results=unitMap[subUnitId],{formulaCellMap,ruleFormulaMap}=this._ensureMaps(unitId,subUnitId);results.forEach(result=>{var _a24,_b;const ruleInfo=ruleFormulaMap.get((_a24=result.extra)==null?void 0:_a24.ruleId),cellInfo=formulaCellMap.get(result.formulaId),rule=this._dataValidationModel.getRuleById(unitId,subUnitId,(_b=result.extra)==null?void 0:_b.ruleId);rule&&ruleInfo&&!ruleInfo.isTransformable&&this._dataValidationCacheService.markRangeDirty(unitId,subUnitId,rule.ranges),cellInfo&&this._dataValidationCacheService.markCellDirty(unitId,subUnitId,cellInfo.row,cellInfo.column)})}}}))}_ensureMaps(unitId,subUnitId){let formulaUnitMap=this._formulaMap.get(unitId),ruleFormulaUnitMap=this._ruleFormulaMap.get(unitId),formulaCellUnitMap=this._formulaCellMap.get(unitId);(!formulaUnitMap||!ruleFormulaUnitMap||!formulaCellUnitMap)&&(formulaUnitMap=new Map,ruleFormulaUnitMap=new Map,formulaCellUnitMap=new Map,this._formulaMap.set(unitId,formulaUnitMap),this._ruleFormulaMap.set(unitId,ruleFormulaUnitMap),this._formulaCellMap.set(unitId,formulaCellUnitMap));let formulaMap=formulaUnitMap.get(subUnitId),ruleFormulaMap=ruleFormulaUnitMap.get(subUnitId),formulaCellMap=formulaCellUnitMap.get(subUnitId);return(!formulaMap||!ruleFormulaMap||!formulaCellMap)&&(formulaMap=new core.ObjectMatrix,formulaUnitMap.set(subUnitId,formulaMap),ruleFormulaMap=new Map,ruleFormulaUnitMap.set(subUnitId,ruleFormulaMap),formulaCellMap=new Map,formulaCellUnitMap.set(subUnitId,formulaCellMap)),{formulaMap,ruleFormulaMap,formulaCellMap}}_registerFormula(unitId,subUnitId,ruleId,formulaString){return this._registerOtherFormulaService.registerFormula(unitId,subUnitId,formulaString,{ruleId})}deleteByRuleId(unitId,subUnitId,ruleId){const{formulaMap,formulaCellMap,ruleFormulaMap}=this._ensureMaps(unitId,subUnitId),rule=this._dataValidationModel.getRuleById(unitId,subUnitId,ruleId),formulaIdList=new Set,formulaInfo=ruleFormulaMap.get(ruleId);!rule||!formulaInfo||(ruleFormulaMap.delete(ruleId),rule.ranges.forEach(range=>{core.Range.foreach(range,(row,col)=>{const value=formulaMap.getValue(row,col);if(value&&value.ruleId===ruleId){const{formulaId}=value;formulaMap.realDeleteValue(row,col),formulaIdList.add(formulaId),formulaCellMap.delete(formulaId)}})}),this._registerOtherFormulaService.deleteFormula(unitId,subUnitId,Array.from(formulaIdList.values())))}_addFormulaByRange(unitId,subUnitId,ruleId,formula,ranges){const{formulaMap,ruleFormulaMap,formulaCellMap}=this._ensureMaps(unitId,subUnitId);if(!formula)return;const originRow=ranges[0].startRow,originCol=ranges[0].startColumn;let originFormulaId;ranges.forEach(range=>{core.Range.foreach(range,(row,column)=>{const relativeFormula=transformFormula(this._lexerTreeBuilder,formula,originRow,originCol,row,column),formulaId=this._registerFormula(unitId,subUnitId,ruleId,relativeFormula);formulaMap.setValue(row,column,{formulaId,ruleId}),formulaCellMap.set(formulaId,{row,column})})}),ruleFormulaMap.set(ruleId,{formula,originCol,originRow,formulaId:originFormulaId,isTransformable:!0})}addRule(unitId,subUnitId,rule){const{ranges,formula1,uid:ruleId,type}=rule;type!==core.DataValidationType.CUSTOM||!formula1||!core.isFormulaString(formula1)||this._addFormulaByRange(unitId,subUnitId,ruleId,formula1,ranges)}updateRuleRanges(unitId,subUnitId,ruleId,oldRanges,newRanges){const{formulaMap,ruleFormulaMap,formulaCellMap}=this._ensureMaps(unitId,subUnitId),info=ruleFormulaMap.get(ruleId);if(!info)return;const{formula,originCol,originRow,isTransformable,formulaId}=info,deleteFormulaIdList=new Set;oldRanges.forEach(range=>{core.Range.foreach(range,(row,col)=>{const value=formulaMap.getValue(row,col);value&&value.ruleId===ruleId&&(value.temp=!0)})}),newRanges.forEach(range=>{core.Range.foreach(range,(row,col)=>{var _a24;const oldValue=(_a24=formulaMap.getValue(row,col))!=null?_a24:{};if(oldValue.ruleId!==ruleId){const oldRuleFormula=ruleFormulaMap.get(oldValue.ruleId);if(oldRuleFormula!=null&&oldRuleFormula.isTransformable&&deleteFormulaIdList.add(oldValue.formulaId),isTransformable){const relativeText=transformFormula(this._lexerTreeBuilder,formula,originRow,originCol,row,col),formulaId2=this._registerFormula(unitId,subUnitId,ruleId,relativeText);formulaMap.setValue(row,col,{ruleId,formulaId:formulaId2}),formulaCellMap.set(formulaId2,{row,column:col})}else formulaMap.setValue(row,col,{ruleId,formulaId})}else oldValue.temp=!1})}),oldRanges.forEach(range=>{core.Range.foreach(range,(row,col)=>{const value=formulaMap.getValue(row,col);value&&value.ruleId===ruleId&&value.temp===!0&&(formulaMap.realDeleteValue(row,col),isTransformable&&deleteFormulaIdList.add(value.formulaId))})}),deleteFormulaIdList.forEach(formulaId2=>{formulaCellMap.delete(formulaId2)}),this._registerOtherFormulaService.deleteFormula(unitId,subUnitId,Array.from(deleteFormulaIdList.values()))}updateRuleFormula(unitId,subUnitId,ruleId,ranges,formula){const{ruleFormulaMap}=this._ensureMaps(unitId,subUnitId),current=ruleFormulaMap.get(ruleId);(!current||current.formula!==formula)&&this._addFormulaByRange(unitId,subUnitId,ruleId,formula,ranges)}getCellFormulaValue(unitId,subUnitId,row,col){const{formulaMap}=this._ensureMaps(unitId,subUnitId),current=formulaMap.getValue(row,col);return current?this._registerOtherFormulaService.getFormulaValue(unitId,subUnitId,current.formulaId):Promise.resolve(void 0)}getRuleFormulaInfo(unitId,subUnitId,ruleId){const{ruleFormulaMap}=this._ensureMaps(unitId,subUnitId);return ruleFormulaMap.get(ruleId)}},__name(_a,"DataValidationCustomFormulaService"),_a);exports.DataValidationCustomFormulaService=__decorateClass$k([__decorateParam$k(0,core.IUniverInstanceService),__decorateParam$k(1,core.Inject(sheetsFormula.RegisterOtherFormulaService)),__decorateParam$k(2,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$k(3,core.Inject(dataValidation.DataValidationModel)),__decorateParam$k(4,core.Inject(DataValidationCacheService)),__decorateParam$k(5,core.ILogService)],exports.DataValidationCustomFormulaService);var __defProp$j=Object.defineProperty,__getOwnPropDesc$j=Object.getOwnPropertyDescriptor,__decorateClass$j=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$j(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$j(target,key,result),result},"__decorateClass$j"),__decorateParam$j=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$j"),_a2;exports.DataValidationFormulaService=(_a2=class extends core.Disposable{constructor(_instanceService,_registerOtherFormulaService,_dataValidationCacheService,_dataValidationModel){super();__publicField(this,"_formulaRuleMap",new Map);this._instanceService=_instanceService,this._registerOtherFormulaService=_registerOtherFormulaService,this._dataValidationCacheService=_dataValidationCacheService,this._dataValidationModel=_dataValidationModel,this._initFormulaResultHandler()}_initFormulaResultHandler(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(resultMap=>{for(const unitId in resultMap){const unitMap=resultMap[unitId];if(this._instanceService.getUnitType(unitId)===core.UniverInstanceType.UNIVER_SHEET)for(const subUnitId in unitMap){const results=unitMap[subUnitId],formulaMap=this._ensureRuleFormulaMap(unitId,subUnitId);results.forEach(result=>{var _a24,_b;if(formulaMap.get((_a24=result.extra)==null?void 0:_a24.ruleId)){const rule=this._dataValidationModel.getRuleById(unitId,subUnitId,(_b=result.extra)==null?void 0:_b.ruleId);rule&&this._dataValidationCacheService.markRangeDirty(unitId,subUnitId,rule.ranges)}})}}}))}_ensureRuleFormulaMap(unitId,subUnitId){let unitMap=this._formulaRuleMap.get(unitId);unitMap||(unitMap=new Map,this._formulaRuleMap.set(unitId,unitMap));let subUnitMap=unitMap.get(subUnitId);return subUnitMap||(subUnitMap=new Map,unitMap.set(subUnitId,subUnitMap)),subUnitMap}addRule(unitId,subUnitId,ruleId,formula1,formula2){const isFormula1Legal=core.isFormulaString(formula1),isFormula2Legal=core.isFormulaString(formula2);if(!isFormula1Legal&&!isFormula2Legal)return;const formulaRuleMap=this._ensureRuleFormulaMap(unitId,subUnitId),item=[void 0,void 0];if(isFormula1Legal){const id=this._registerOtherFormulaService.registerFormula(unitId,subUnitId,formula1,{ruleId});item[0]={id,text:formula1}}if(isFormula2Legal){const id=this._registerOtherFormulaService.registerFormula(unitId,subUnitId,formula2,{ruleId});item[1]={id,text:formula2}}formulaRuleMap.set(ruleId,item)}removeRule(unitId,subUnitId,ruleId){const item=this._ensureRuleFormulaMap(unitId,subUnitId).get(ruleId);if(!item)return;const[formula1,formula2]=item,idList=[formula1==null?void 0:formula1.id,formula2==null?void 0:formula2.id].filter(Boolean);idList.length&&this._registerOtherFormulaService.deleteFormula(unitId,subUnitId,idList)}updateRuleFormulaText(unitId,subUnitId,ruleId,formula1,formula2){const item=this._ensureRuleFormulaMap(unitId,subUnitId).get(ruleId);if(!item){this.addRule(unitId,subUnitId,ruleId,formula1,formula2);return}const[oldFormula1,oldFormula2]=item;if((oldFormula1==null?void 0:oldFormula1.text)!==formula1)if(oldFormula1&&this._registerOtherFormulaService.deleteFormula(unitId,subUnitId,[oldFormula1.id]),core.isFormulaString(formula1)){const formulaId=this._registerOtherFormulaService.registerFormula(unitId,subUnitId,formula1,{ruleId});item[0]={text:formula1,id:formulaId}}else item[0]=void 0;if((oldFormula2==null?void 0:oldFormula2.text)!==formula2)if(oldFormula2&&this._registerOtherFormulaService.deleteFormula(unitId,subUnitId,[oldFormula2.id]),core.isFormulaString(formula2)){const formulaId=this._registerOtherFormulaService.registerFormula(unitId,subUnitId,formula2,{ruleId});item[1]={text:formula2,id:formulaId}}else item[1]=void 0}getRuleFormulaResult(unitId,subUnitId,ruleId){const formulaInfo=this._ensureRuleFormulaMap(unitId,subUnitId).get(ruleId);if(!formulaInfo)return Promise.resolve(null);const getResult=__name(async info=>info&&this._registerOtherFormulaService.getFormulaValue(unitId,subUnitId,info.id),"getResult");return Promise.all([getResult(formulaInfo[0]),getResult(formulaInfo[1])])}getRuleFormulaResultSync(unitId,subUnitId,ruleId){const formulaInfo=this._ensureRuleFormulaMap(unitId,subUnitId).get(ruleId);if(formulaInfo)return formulaInfo.map(i=>{if(i)return this._registerOtherFormulaService.getFormulaValueSync(unitId,subUnitId,i.id)})}getRuleFormulaInfo(unitId,subUnitId,ruleId){return this._ensureRuleFormulaMap(unitId,subUnitId).get(ruleId)}},__name(_a2,"DataValidationFormulaService"),_a2);exports.DataValidationFormulaService=__decorateClass$j([__decorateParam$j(0,core.IUniverInstanceService),__decorateParam$j(1,core.Inject(sheetsFormula.RegisterOtherFormulaService)),__decorateParam$j(2,core.Inject(DataValidationCacheService)),__decorateParam$j(3,core.Inject(dataValidation.DataValidationModel))],exports.DataValidationFormulaService);function getCellValueOrigin(cell){return core.getOriginCellValue(cell)}__name(getCellValueOrigin,"getCellValueOrigin");function getStringCellValue(cell){var _a24;return String((_a24=getCellValueOrigin(cell))!=null?_a24:"")}__name(getStringCellValue,"getStringCellValue");var _a3;const Interval=(_a3=class{constructor(low,high){this.low=low,this.high=high}clone(){return new _a3(this.low,this.high)}get max(){return this.clone()}less_than(other_interval){return this.low<other_interval.low||this.low===other_interval.low&&this.high<other_interval.high}equal_to(other_interval){return this.low===other_interval.low&&this.high===other_interval.high}intersect(other_interval){return!this.not_intersect(other_interval)}not_intersect(other_interval){return this.high<other_interval.low||other_interval.high<this.low}merge(other_interval){return new _a3(this.low===void 0?other_interval.low:this.low<other_interval.low?this.low:other_interval.low,this.high===void 0?other_interval.high:this.high>other_interval.high?this.high:other_interval.high)}output(){return[this.low,this.high]}static comparable_max(interval1,interval2){return interval1.merge(interval2)}static comparable_less_than(val1,val2){return val1<val2}},__name(_a3,"Interval"),_a3),RB_TREE_COLOR_RED=0,RB_TREE_COLOR_BLACK=1,_Node=class _Node{constructor(key=void 0,value=void 0,left=null,right=null,parent=null,color=RB_TREE_COLOR_BLACK){if(this.left=left,this.right=right,this.parent=parent,this.color=color,this.item={key,value},key&&key instanceof Array&&key.length===2&&!Number.isNaN(key[0])&&!Number.isNaN(key[1])){let[low,high]=key;low>high&&([low,high]=[high,low]),this.item.key=new Interval(low,high)}this.max=this.item.key?this.item.key.max:void 0}isNil(){return this.item.key===void 0&&this.item.value===void 0&&this.left===null&&this.right===null&&this.color===RB_TREE_COLOR_BLACK}_value_less_than(other_node){return this.item.value&&other_node.item.value&&this.item.value.less_than?this.item.value.less_than(other_node.item.value):this.item.value<other_node.item.value}less_than(other_node){return this.item.value===this.item.key&&other_node.item.value===other_node.item.key?this.item.key.less_than(other_node.item.key):this.item.key.less_than(other_node.item.key)||this.item.key.equal_to(other_node.item.key)&&this._value_less_than(other_node)}_value_equal(other_node){return this.item.value&&other_node.item.value&&this.item.value.equal_to?this.item.value.equal_to(other_node.item.value):this.item.value===other_node.item.value}equal_to(other_node){return this.item.value===this.item.key&&other_node.item.value===other_node.item.key?this.item.key.equal_to(other_node.item.key):this.item.key.equal_to(other_node.item.key)&&this._value_equal(other_node)}intersect(other_node){return this.item.key.intersect(other_node.item.key)}copy_data(other_node){this.item.key=other_node.item.key,this.item.value=other_node.item.value}update_max(){if(this.max=this.item.key?this.item.key.max:void 0,this.right&&this.right.max){const comparable_max=this.item.key.constructor.comparable_max;this.max=comparable_max(this.max,this.right.max)}if(this.left&&this.left.max){const comparable_max=this.item.key.constructor.comparable_max;this.max=comparable_max(this.max,this.left.max)}}not_intersect_left_subtree(search_node){const comparable_less_than=this.item.key.constructor.comparable_less_than;let high=this.left.max.high!==void 0?this.left.max.high:this.left.max;return comparable_less_than(high,search_node.item.key.low)}not_intersect_right_subtree(search_node){const comparable_less_than=this.item.key.constructor.comparable_less_than;let low=this.right.max.low!==void 0?this.right.max.low:this.right.item.key.low;return comparable_less_than(search_node.item.key.high,low)}};__name(_Node,"Node");let Node=_Node;const _IntervalTree=class _IntervalTree{constructor(){this.root=null,this.nil_node=new Node}get size(){let count=0;return this.tree_walk(this.root,()=>count++),count}get keys(){let res=[];return this.tree_walk(this.root,node=>res.push(node.item.key.output?node.item.key.output():node.item.key)),res}get values(){let res=[];return this.tree_walk(this.root,node=>res.push(node.item.value)),res}get items(){let res=[];return this.tree_walk(this.root,node=>res.push({key:node.item.key.output?node.item.key.output():node.item.key,value:node.item.value})),res}isEmpty(){return this.root==null||this.root===this.nil_node}clear(){this.root=null}insert(key,value=key){if(key===void 0)return;let insert_node=new Node(key,value,this.nil_node,this.nil_node,null,RB_TREE_COLOR_RED);return this.tree_insert(insert_node),this.recalc_max(insert_node),insert_node}exist(key,value=key){let search_node=new Node(key,value);return!!this.tree_search(this.root,search_node)}remove(key,value=key){let search_node=new Node(key,value),delete_node=this.tree_search(this.root,search_node);return delete_node&&this.tree_delete(delete_node),delete_node}search(interval,outputMapperFn=(value,key)=>value===key?key.output():value){let search_node=new Node(interval),resp_nodes=[];return this.tree_search_interval(this.root,search_node,resp_nodes),resp_nodes.map(node=>outputMapperFn(node.item.value,node.item.key))}intersect_any(interval){let search_node=new Node(interval);return this.tree_find_any_interval(this.root,search_node)}forEach(visitor){this.tree_walk(this.root,node=>visitor(node.item.key,node.item.value))}map(callback){const tree=new _IntervalTree;return this.tree_walk(this.root,node=>tree.insert(node.item.key,callback(node.item.value,node.item.key))),tree}*iterate(interval,outputMapperFn=(value,key)=>value===key?key.output():value){let node;for(interval?node=this.tree_search_nearest_forward(this.root,new Node(interval)):this.root&&(node=this.local_minimum(this.root));node;)yield outputMapperFn(node.item.value,node.item.key),node=this.tree_successor(node)}recalc_max(node){let node_current=node;for(;node_current.parent!=null;)node_current.parent.update_max(),node_current=node_current.parent}tree_insert(insert_node){let current_node=this.root,parent_node=null;if(this.root==null||this.root===this.nil_node)this.root=insert_node;else{for(;current_node!==this.nil_node;)parent_node=current_node,insert_node.less_than(current_node)?current_node=current_node.left:current_node=current_node.right;insert_node.parent=parent_node,insert_node.less_than(parent_node)?parent_node.left=insert_node:parent_node.right=insert_node}this.insert_fixup(insert_node)}insert_fixup(insert_node){let current_node,uncle_node;for(current_node=insert_node;current_node!==this.root&&current_node.parent.color===RB_TREE_COLOR_RED;)current_node.parent===current_node.parent.parent.left?(uncle_node=current_node.parent.parent.right,uncle_node.color===RB_TREE_COLOR_RED?(current_node.parent.color=RB_TREE_COLOR_BLACK,uncle_node.color=RB_TREE_COLOR_BLACK,current_node.parent.parent.color=RB_TREE_COLOR_RED,current_node=current_node.parent.parent):(current_node===current_node.parent.right&&(current_node=current_node.parent,this.rotate_left(current_node)),current_node.parent.color=RB_TREE_COLOR_BLACK,current_node.parent.parent.color=RB_TREE_COLOR_RED,this.rotate_right(current_node.parent.parent))):(uncle_node=current_node.parent.parent.left,uncle_node.color===RB_TREE_COLOR_RED?(current_node.parent.color=RB_TREE_COLOR_BLACK,uncle_node.color=RB_TREE_COLOR_BLACK,current_node.parent.parent.color=RB_TREE_COLOR_RED,current_node=current_node.parent.parent):(current_node===current_node.parent.left&&(current_node=current_node.parent,this.rotate_right(current_node)),current_node.parent.color=RB_TREE_COLOR_BLACK,current_node.parent.parent.color=RB_TREE_COLOR_RED,this.rotate_left(current_node.parent.parent)));this.root.color=RB_TREE_COLOR_BLACK}tree_delete(delete_node){let cut_node,fix_node;delete_node.left===this.nil_node||delete_node.right===this.nil_node?cut_node=delete_node:cut_node=this.tree_successor(delete_node),cut_node.left!==this.nil_node?fix_node=cut_node.left:fix_node=cut_node.right,fix_node.parent=cut_node.parent,cut_node===this.root?this.root=fix_node:(cut_node===cut_node.parent.left?cut_node.parent.left=fix_node:cut_node.parent.right=fix_node,cut_node.parent.update_max()),this.recalc_max(fix_node),cut_node!==delete_node&&(delete_node.copy_data(cut_node),delete_node.update_max(),this.recalc_max(delete_node)),cut_node.color===RB_TREE_COLOR_BLACK&&this.delete_fixup(fix_node)}delete_fixup(fix_node){let current_node=fix_node,brother_node;for(;current_node!==this.root&&current_node.parent!=null&&current_node.color===RB_TREE_COLOR_BLACK;)current_node===current_node.parent.left?(brother_node=current_node.parent.right,brother_node.color===RB_TREE_COLOR_RED&&(brother_node.color=RB_TREE_COLOR_BLACK,current_node.parent.color=RB_TREE_COLOR_RED,this.rotate_left(current_node.parent),brother_node=current_node.parent.right),brother_node.left.color===RB_TREE_COLOR_BLACK&&brother_node.right.color===RB_TREE_COLOR_BLACK?(brother_node.color=RB_TREE_COLOR_RED,current_node=current_node.parent):(brother_node.right.color===RB_TREE_COLOR_BLACK&&(brother_node.color=RB_TREE_COLOR_RED,brother_node.left.color=RB_TREE_COLOR_BLACK,this.rotate_right(brother_node),brother_node=current_node.parent.right),brother_node.color=current_node.parent.color,current_node.parent.color=RB_TREE_COLOR_BLACK,brother_node.right.color=RB_TREE_COLOR_BLACK,this.rotate_left(current_node.parent),current_node=this.root)):(brother_node=current_node.parent.left,brother_node.color===RB_TREE_COLOR_RED&&(brother_node.color=RB_TREE_COLOR_BLACK,current_node.parent.color=RB_TREE_COLOR_RED,this.rotate_right(current_node.parent),brother_node=current_node.parent.left),brother_node.left.color===RB_TREE_COLOR_BLACK&&brother_node.right.color===RB_TREE_COLOR_BLACK?(brother_node.color=RB_TREE_COLOR_RED,current_node=current_node.parent):(brother_node.left.color===RB_TREE_COLOR_BLACK&&(brother_node.color=RB_TREE_COLOR_RED,brother_node.right.color=RB_TREE_COLOR_BLACK,this.rotate_left(brother_node),brother_node=current_node.parent.left),brother_node.color=current_node.parent.color,current_node.parent.color=RB_TREE_COLOR_BLACK,brother_node.left.color=RB_TREE_COLOR_BLACK,this.rotate_right(current_node.parent),current_node=this.root));current_node.color=RB_TREE_COLOR_BLACK}tree_search(node,search_node){if(!(node==null||node===this.nil_node))return search_node.equal_to(node)?node:search_node.less_than(node)?this.tree_search(node.left,search_node):this.tree_search(node.right,search_node)}tree_search_nearest_forward(node,search_node){let best,curr=node;for(;curr&&curr!==this.nil_node;)curr.less_than(search_node)?curr.intersect(search_node)?(best=curr,curr=curr.left):curr=curr.right:((!best||curr.less_than(best))&&(best=curr),curr=curr.left);return best||null}tree_search_interval(node,search_node,res){node!=null&&node!==this.nil_node&&(node.left!==this.nil_node&&!node.not_intersect_left_subtree(search_node)&&this.tree_search_interval(node.left,search_node,res),node.intersect(search_node)&&res.push(node),node.right!==this.nil_node&&!node.not_intersect_right_subtree(search_node)&&this.tree_search_interval(node.right,search_node,res))}tree_find_any_interval(node,search_node){let found=!1;return node!=null&&node!==this.nil_node&&(node.left!==this.nil_node&&!node.not_intersect_left_subtree(search_node)&&(found=this.tree_find_any_interval(node.left,search_node)),found||(found=node.intersect(search_node)),!found&&node.right!==this.nil_node&&!node.not_intersect_right_subtree(search_node)&&(found=this.tree_find_any_interval(node.right,search_node))),found}local_minimum(node){let node_min=node;for(;node_min.left!=null&&node_min.left!==this.nil_node;)node_min=node_min.left;return node_min}local_maximum(node){let node_max=node;for(;node_max.right!=null&&node_max.right!==this.nil_node;)node_max=node_max.right;return node_max}tree_successor(node){let node_successor,current_node,parent_node;if(node.right!==this.nil_node)node_successor=this.local_minimum(node.right);else{for(current_node=node,parent_node=node.parent;parent_node!=null&&parent_node.right===current_node;)current_node=parent_node,parent_node=parent_node.parent;node_successor=parent_node}return node_successor}rotate_left(x){let y=x.right;x.right=y.left,y.left!==this.nil_node&&(y.left.parent=x),y.parent=x.parent,x===this.root?this.root=y:x===x.parent.left?x.parent.left=y:x.parent.right=y,y.left=x,x.parent=y,x!=null&&x!==this.nil_node&&x.update_max(),y=x.parent,y!=null&&y!==this.nil_node&&y.update_max()}rotate_right(y){let x=y.left;y.left=x.right,x.right!==this.nil_node&&(x.right.parent=y),x.parent=y.parent,y===this.root?this.root=x:y===y.parent.left?y.parent.left=x:y.parent.right=x,x.right=y,y.parent=x,y!==null&&y!==this.nil_node&&y.update_max(),x=y.parent,x!=null&&x!==this.nil_node&&x.update_max()}tree_walk(node,action){node!=null&&node!==this.nil_node&&(this.tree_walk(node.left,action),action(node),this.tree_walk(node.right,action))}testRedBlackProperty(){let res=!0;return this.tree_walk(this.root,function(node){node.color===RB_TREE_COLOR_RED&&(node.left.color===RB_TREE_COLOR_BLACK&&node.right.color===RB_TREE_COLOR_BLACK||(res=!1))}),res}testBlackHeightProperty(node){let height=0,heightLeft=0,heightRight=0;if(node.color===RB_TREE_COLOR_BLACK&&height++,node.left!==this.nil_node?heightLeft=this.testBlackHeightProperty(node.left):heightLeft=1,node.right!==this.nil_node?heightRight=this.testBlackHeightProperty(node.right):heightRight=1,heightLeft!==heightRight)throw new Error("Red-black height property violated");return height+=heightLeft,height}};__name(_IntervalTree,"IntervalTree");let IntervalTree=_IntervalTree;const _RuleMatrix=class _RuleMatrix{constructor(value,_unitId,_subUnitId,_univerInstanceService,_disableTree=!1){__publicField(this,"_map");__publicField(this,"_tree",new Map);__publicField(this,"_dirty",!0);__publicField(this,"_buildTree",__name(()=>{if(!this._dirty||this._disableTree)return;const map=new Map;this._map.forEach((ranges,ruleId)=>{ranges.forEach(range=>{for(let col=range.startColumn;col<=range.endColumn;col++){let items=map.get(col);items||(items=[],map.set(col,items)),items.push({startRow:range.startRow,endRow:range.endRow,ruleId})}})});const treeMap=new Map;map.forEach((items,col)=>{const tree=new IntervalTree;items.forEach(item=>{tree.insert([item.startRow,item.endRow],item.ruleId)}),treeMap.set(col,tree)}),this._tree=treeMap,this._dirty=!1},"_buildTree"));__publicField(this,"_debonceBuildTree",core.debounce(this._buildTree,0));this._unitId=_unitId,this._subUnitId=_subUnitId,this._univerInstanceService=_univerInstanceService,this._disableTree=_disableTree,this._map=value,this._buildTree()}get _worksheet(){var _a24;return(_a24=this._univerInstanceService.getUnit(this._unitId,core.UniverInstanceType.UNIVER_SHEET))==null?void 0:_a24.getSheetBySheetId(this._subUnitId)}addRule(rule){if(!this._worksheet)return;const ruleId=rule.uid,ranges=rule.ranges.map(range=>core.Range.transformRange(range,this._worksheet));this._map.forEach((value,key)=>{const newRanges=core.Rectangle.subtractMulti(value,ranges);newRanges.length===0?this._map.delete(key):this._map.set(key,newRanges)}),this._dirty=!0,this._map.set(ruleId,ranges),this._debonceBuildTree()}removeRange(_ranges){if(!this._worksheet)return;const ranges=_ranges.map(range=>core.Range.transformRange(range,this._worksheet));this._map.forEach((value,key)=>{const newRanges=core.Rectangle.subtractMulti(value,ranges);newRanges.length===0?this._map.delete(key):this._map.set(key,newRanges)}),this._dirty=!0,this._debonceBuildTree()}removeRule(rule){this._map.delete(rule.uid),this._dirty=!0,this._debonceBuildTree()}updateRange(ruleId,_newRanges){if(!this._worksheet)return;this._map.delete(ruleId);const ranges=_newRanges.map(range=>core.Range.transformRange(range,this._worksheet));this._map.forEach((value,key)=>{const newRanges=core.Rectangle.subtractMulti(value,ranges);newRanges.length===0?this._map.delete(key):this._map.set(key,newRanges)}),this._map.set(ruleId,ranges),this._dirty=!0,this._debonceBuildTree()}addRangeRules(rules){rules.forEach(({id:ruleId,ranges})=>{if(!ranges.length)return;let current=this._map.get(ruleId);current?(this._map.set(ruleId,core.Rectangle.mergeRanges([...current,...ranges])),current=this._map.get(ruleId)):(current=ranges,this._map.set(ruleId,current)),this._map.forEach((value,key)=>{if(key===ruleId)return;const newRanges=core.Rectangle.subtractMulti(value,ranges);newRanges.length===0?this._map.delete(key):this._map.set(key,newRanges)})}),this._dirty=!0,this._debonceBuildTree()}diff(rules){const mutations=[];let deleteIndex=0;return rules.forEach((rule,index)=>{var _a24;const newRanges=(_a24=this._map.get(rule.uid))!=null?_a24:[],oldRanges=rule.ranges;newRanges.length!==0&&(newRanges.length!==oldRanges.length||newRanges.some((range,i)=>!core.Rectangle.equals(range,oldRanges[i])))&&mutations.push({type:"update",ruleId:rule.uid,oldRanges,newRanges}),newRanges.length===0&&(mutations.push({type:"delete",rule,index:index-deleteIndex}),deleteIndex++)}),mutations}diffWithAddition(rules,additionRules){const mutations=[];let deleteIndex=0;return rules.forEach((rule,index)=>{var _a24;const newRanges=(_a24=this._map.get(rule.uid))!=null?_a24:[],oldRanges=rule.ranges;newRanges.length!==0&&(newRanges.length!==oldRanges.length||newRanges.some((range,i)=>!core.Rectangle.equals(range,oldRanges[i])))&&mutations.push({type:"update",ruleId:rule.uid,oldRanges,newRanges}),newRanges.length===0&&(mutations.push({type:"delete",rule,index:index-deleteIndex}),deleteIndex++)}),Array.from(additionRules).forEach(rule=>{var _a24;const newRanges=(_a24=this._map.get(rule.uid))!=null?_a24:[];mutations.push({type:"add",rule:{...rule,ranges:newRanges}})}),mutations}clone(){return new _RuleMatrix(new Map(core.Tools.deepClone(Array.from(this._map.entries()))),this._unitId,this._subUnitId,this._univerInstanceService,!0)}getValue(row,col){this._dirty&&this._buildTree();const tree=this._tree.get(col);if(!tree)return;const result=tree.search([row,row]);return result.length>0?result[0]:void 0}};__name(_RuleMatrix,"RuleMatrix");let RuleMatrix=_RuleMatrix;var __defProp$i=Object.defineProperty,__getOwnPropDesc$i=Object.getOwnPropertyDescriptor,__decorateClass$i=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$i(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$i(target,key,result),result},"__decorateClass$i"),__decorateParam$i=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$i"),_a4;exports.SheetDataValidationModel=(_a4=class extends core.Disposable{constructor(_dataValidationModel,_univerInstanceService,_dataValidatorRegistryService,_dataValidationCacheService,_dataValidationFormulaService,_dataValidationCustomFormulaService,_commandService){super();__publicField(this,"_ruleMatrixMap",new Map);__publicField(this,"_validStatusChange$",new rxjs.Subject);__publicField(this,"_ruleChange$",new rxjs.Subject);__publicField(this,"ruleChange$",this._ruleChange$.asObservable());__publicField(this,"validStatusChange$",this._validStatusChange$.asObservable());this._dataValidationModel=_dataValidationModel,this._univerInstanceService=_univerInstanceService,this._dataValidatorRegistryService=_dataValidatorRegistryService,this._dataValidationCacheService=_dataValidationCacheService,this._dataValidationFormulaService=_dataValidationFormulaService,this._dataValidationCustomFormulaService=_dataValidationCustomFormulaService,this._commandService=_commandService,this._initRuleUpdateListener(),this.disposeWithMe(()=>{this._ruleChange$.complete(),this._validStatusChange$.complete()}),this._initUniverInstanceListener()}_initUniverInstanceListener(){this.disposeWithMe(this._univerInstanceService.unitDisposed$.subscribe(unit=>{this._ruleMatrixMap.delete(unit.getUnitId())})),this.disposeWithMe(this._commandService.onCommandExecuted(command=>{if(command.id===sheets.RemoveSheetMutation.id){const{unitId,subUnitId}=command.params,subUnitMap=this._ruleMatrixMap.get(unitId);subUnitMap&&subUnitMap.delete(subUnitId)}}))}_initRuleUpdateListener(){const allRules=this._dataValidationModel.getAll();for(const[unitId,subUnitMap]of allRules)for(const[subUnitId,rules]of subUnitMap)for(const rule of rules)this._ruleChange$.next({type:"add",unitId,subUnitId,rule,source:"patched"}),this._addRule(unitId,subUnitId,rule);this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(ruleChange=>{switch(this._ruleChange$.next(ruleChange),ruleChange.type){case"add":this._addRule(ruleChange.unitId,ruleChange.subUnitId,ruleChange.rule);break;case"update":this._updateRule(ruleChange.unitId,ruleChange.subUnitId,ruleChange.rule.uid,ruleChange.oldRule,ruleChange.updatePayload);break;case"remove":this._removeRule(ruleChange.unitId,ruleChange.subUnitId,ruleChange.rule);break}}))}_ensureRuleMatrix(unitId,subUnitId){let unitMap=this._ruleMatrixMap.get(unitId);unitMap||(unitMap=new Map,this._ruleMatrixMap.set(unitId,unitMap));let matrix=unitMap.get(subUnitId);return matrix||(matrix=new RuleMatrix(new Map,unitId,subUnitId,this._univerInstanceService),unitMap.set(subUnitId,matrix)),matrix}_addRuleSideEffect(unitId,subUnitId,rule){this._ensureRuleMatrix(unitId,subUnitId).addRule(rule),this._dataValidationCacheService.addRule(unitId,subUnitId,rule),this._dataValidationFormulaService.addRule(unitId,subUnitId,rule.uid,rule.formula1,rule.formula2),this._dataValidationCustomFormulaService.addRule(unitId,subUnitId,rule)}_addRule(unitId,subUnitId,rule){(Array.isArray(rule)?rule:[rule]).forEach(item=>{this._addRuleSideEffect(unitId,subUnitId,item)})}_updateRule(unitId,subUnitId,ruleId,oldRule,payload){const ruleMatrix=this._ensureRuleMatrix(unitId,subUnitId);payload.type===dataValidation.UpdateRuleType.RANGE?(ruleMatrix.updateRange(ruleId,payload.payload),this._dataValidationCacheService.updateRuleRanges(unitId,subUnitId,ruleId,payload.payload,oldRule.ranges),this._dataValidationCustomFormulaService.updateRuleRanges(unitId,subUnitId,ruleId,oldRule.ranges,payload.payload)):payload.type===dataValidation.UpdateRuleType.SETTING&&(this._dataValidationCacheService.markRangeDirty(unitId,subUnitId,oldRule.ranges),this._dataValidationFormulaService.updateRuleFormulaText(unitId,subUnitId,ruleId,payload.payload.formula1,payload.payload.formula2),this._dataValidationCustomFormulaService.updateRuleFormula(unitId,subUnitId,ruleId,oldRule.ranges,payload.payload.formula1))}_removeRule(unitId,subUnitId,oldRule){this._ensureRuleMatrix(unitId,subUnitId).removeRule(oldRule),this._dataValidationCacheService.removeRule(unitId,subUnitId,oldRule)}getValidator(type){return this._dataValidatorRegistryService.getValidatorItem(type)}getRuleIdByLocation(unitId,subUnitId,row,col){return this._ensureRuleMatrix(unitId,subUnitId).getValue(row,col)}getRuleByLocation(unitId,subUnitId,row,col){const ruleId=this.getRuleIdByLocation(unitId,subUnitId,row,col);if(ruleId)return this._dataValidationModel.getRuleById(unitId,subUnitId,ruleId)}validator(cell,rule,pos,_onCompete){const{col,row,unitId,subUnitId,worksheet}=pos,ruleId=rule.uid,onCompete=__name((status,changed)=>{_onCompete&&_onCompete(status,changed),changed&&this._validStatusChange$.next({unitId,subUnitId,ruleId:rule.uid,status})},"onCompete"),validator=this.getValidator(rule.type),cellRaw=worksheet.getCellRaw(row,col),cellValue=getCellValueOrigin(cellRaw),interceptValue=getCellValueOrigin(cell);if(validator){const cache=this._dataValidationCacheService.ensureCache(unitId,subUnitId),current=cache.getValue(row,col);return!current||current.value!==cellValue||current.interceptValue!==interceptValue||current.ruleId!==ruleId?(cache.setValue(row,col,{value:cellValue,interceptValue,status:core.DataValidationStatus.VALIDATING,ruleId}),validator.validator({value:cellValue,unitId,subUnitId,row,column:col,worksheet:pos.worksheet,workbook:pos.workbook,interceptValue:getCellValueOrigin(cell),t:cellRaw==null?void 0:cellRaw.t},rule).then(status=>{const realStatus=status?core.DataValidationStatus.VALID:core.DataValidationStatus.INVALID;cache.setValue(row,col,{value:cellValue,status:realStatus,ruleId,interceptValue}),onCompete(realStatus,!0)}),core.DataValidationStatus.VALIDATING):(onCompete(current.status,!1),current.status)}else return onCompete(core.DataValidationStatus.VALID,!1),core.DataValidationStatus.VALID}getRuleErrorMsg(unitId,subUnitId,ruleId){const rule=this._dataValidationModel.getRuleById(unitId,subUnitId,ruleId);if(!rule)return"";const validator=this._dataValidatorRegistryService.getValidatorItem(rule.type);return rule.error?rule.error:validator?validator.getRuleFinalError(rule):""}getRuleObjectMatrix(unitId,subUnitId){return this._ensureRuleMatrix(unitId,subUnitId)}getRuleById(unitId,subUnitId,ruleId){return this._dataValidationModel.getRuleById(unitId,subUnitId,ruleId)}getRuleIndex(unitId,subUnitId,ruleId){return this._dataValidationModel.getRuleIndex(unitId,subUnitId,ruleId)}getRules(unitId,subUnitId){return[...this._dataValidationModel.getRules(unitId,subUnitId)]}getUnitRules(unitId){return this._dataValidationModel.getUnitRules(unitId)}deleteUnitRules(unitId){return this._dataValidationModel.deleteUnitRules(unitId)}getSubUnitIds(unitId){return this._dataValidationModel.getSubUnitIds(unitId)}getAll(){return this._dataValidationModel.getAll()}},__name(_a4,"SheetDataValidationModel"),_a4);exports.SheetDataValidationModel=__decorateClass$i([core.OnLifecycle(core.LifecycleStages.Starting,exports.SheetDataValidationModel),__decorateParam$i(0,core.Inject(dataValidation.DataValidationModel)),__decorateParam$i(1,core.IUniverInstanceService),__decorateParam$i(2,core.Inject(dataValidation.DataValidatorRegistryService)),__decorateParam$i(3,core.Inject(DataValidationCacheService)),__decorateParam$i(4,core.Inject(exports.DataValidationFormulaService)),__decorateParam$i(5,core.Inject(exports.DataValidationCustomFormulaService)),__decorateParam$i(6,core.ICommandService)],exports.SheetDataValidationModel);function createDefaultNewRule(accessor){const currentRanges=accessor.get(sheets.SheetsSelectionsService).getCurrentSelections().map(s=>s.range);return{uid:core.Tools.generateRandomId(6),type:core.DataValidationType.DECIMAL,operator:core.DataValidationOperator.EQUAL,formula1:"100",ranges:currentRanges!=null?currentRanges:[{startColumn:0,endColumn:0,startRow:0,endRow:0}]}}__name(createDefaultNewRule,"createDefaultNewRule");function getFormulaResult(result){var _a24,_b;return(_b=(_a24=result==null?void 0:result[0])==null?void 0:_a24[0])==null?void 0:_b.v}__name(getFormulaResult,"getFormulaResult");function getFormulaCellData(result){var _a24;return(_a24=result==null?void 0:result[0])==null?void 0:_a24[0]}__name(getFormulaCellData,"getFormulaCellData");var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(x){return x&&x.__esModule&&Object.prototype.hasOwnProperty.call(x,"default")?x.default:x}__name(getDefaultExportFromCjs,"getDefaultExportFromCjs");var jsxRuntime={exports:{}},reactJsxRuntime_production_min={};/**
2
- * @license React
3
- * react-jsx-runtime.production.min.js
4
- *
5
- * Copyright (c) Facebook, Inc. and its affiliates.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */var f=React,k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function q(c,a,g){var b,d={},e=null,h=null;g!==void 0&&(e=""+g),a.key!==void 0&&(e=""+a.key),a.ref!==void 0&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)d[b]===void 0&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}__name(q,"q");reactJsxRuntime_production_min.Fragment=l;reactJsxRuntime_production_min.jsx=q;reactJsxRuntime_production_min.jsxs=q;jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports;function CustomFormulaInput(props){var _a24;const{unitId,subUnitId,value,onChange,showError,validResult}=props,formula1Res=showError?validResult==null?void 0:validResult.formula1:"";return jsxRuntimeExports.jsx(design.FormLayout,{error:formula1Res,children:jsxRuntimeExports.jsx(docsUi.TextEditor,{value:(_a24=value==null?void 0:value.formula1)!=null?_a24:"",id:core.createInternalEditorID(`dataValidation-custom-formula-${unitId}-${subUnitId}`),onChange:__name(newValue=>{onChange==null||onChange({...value,formula1:(newValue!=null?newValue:"").trim()})},"onChange"),onlyInputFormula:!0,openForSheetUnitId:unitId,openForSheetSubUnitId:subUnitId})})}__name(CustomFormulaInput,"CustomFormulaInput");const dataValidationFormula="univer-data-validation-formula",dataValidationFormulaAnd="univer-data-validation-formula-and",dataValidationFormulaListItem="univer-data-validation-formula-list-item",dataValidationFormulaListItemIcon="univer-data-validation-formula-list-item-icon",dataValidationFormulaListItemDrag="univer-data-validation-formula-list-item-drag",dataValidationFormulaListAdd="univer-data-validation-formula-list-add",dataValidationFormulaColorSelect="univer-data-validation-formula-color-select",dataValidationFormulaColorSelectPanel="univer-data-validation-formula-color-select-panel",dataValidationFormulaColorItem="univer-data-validation-formula-color-item",styles$6={dataValidationFormula,dataValidationFormulaAnd,dataValidationFormulaListItem,dataValidationFormulaListItemIcon,dataValidationFormulaListItemDrag,dataValidationFormulaListAdd,dataValidationFormulaColorSelect,dataValidationFormulaColorSelectPanel,dataValidationFormulaColorItem},BaseFormulaInput=__name(props=>{const{isTwoFormula=!1,value,onChange,showError,validResult}=props,localeService=core.useDependency(core.LocaleService),formula1Res=showError?validResult==null?void 0:validResult.formula1:"",formula2Res=showError?validResult==null?void 0:validResult.formula2:"";return isTwoFormula?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(design.FormLayout,{error:formula1Res,children:jsxRuntimeExports.jsx(design.Input,{className:styles$6.dataValidationFormula,placeholder:localeService.t("dataValidation.panel.formulaPlaceholder"),value:value==null?void 0:value.formula1,onChange:__name(newValue=>{onChange==null||onChange({...value,formula1:newValue})},"onChange")})}),jsxRuntimeExports.jsx("div",{className:styles$6.dataValidationFormulaAnd,children:localeService.t("dataValidation.panel.formulaAnd")}),jsxRuntimeExports.jsx(design.FormLayout,{error:formula2Res,children:jsxRuntimeExports.jsx(design.Input,{className:styles$6.dataValidationFormula,placeholder:localeService.t("dataValidation.panel.formulaPlaceholder"),value:value==null?void 0:value.formula2,onChange:__name(newValue=>{onChange==null||onChange({...value,formula2:newValue})},"onChange")})})]}):jsxRuntimeExports.jsx(design.FormLayout,{error:formula1Res,children:jsxRuntimeExports.jsx(design.Input,{className:styles$6.dataValidationFormula,placeholder:localeService.t("dataValidation.panel.formulaPlaceholder"),value:value==null?void 0:value.formula1,onChange:__name(newValue=>{onChange==null||onChange({formula1:newValue})},"onChange")})})},"BaseFormulaInput");var __assign=function(){return __assign=Object.assign||function(t){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t[p2]=s[p2])}return t},__assign.apply(this,arguments)},__rest=function(s,e){var t={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e.indexOf(p2)<0&&(t[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t[p2[i]]=s[p2[i]]);return t},IconBase=React.forwardRef(function(props,ref){var icon=props.icon,id=props.id,className=props.className,extend=props.extend,restProps=__rest(props,["icon","id","className","extend"]),cls="univerjs-icon univerjs-icon-".concat(id," ").concat(className||"").trim(),idSuffix=React.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return React.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a24){var key=_a24[0],value=_a24[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a24,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a24=node.children)===null||_a24===void 0)&&_a24.length)?__assign(__assign({},node),{children:node.children.map(function(child){return typeof child.attrs.id=="string"&&defIds&&defIds.indexOf(child.attrs.id)>-1?__assign(__assign({},child),{attrs:__assign(__assign({},child.attrs),{id:child.attrs.id+runtimeProps.idSuffix})}):child})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid");IconBase.displayName="UniverIcon";var element$6={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},CheckMarkSingle=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"check-mark-single",ref,icon:element$6}))});CheckMarkSingle.displayName="CheckMarkSingle";var element$5={tag:"svg",attrs:{fill:"none",viewBox:"0 0 17 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M1.4917 3.07803C1.4917 2.19437 2.20804 1.47803 3.0917 1.47803H5.6917C6.57536 1.47803 7.2917 2.19437 7.2917 3.07803V5.67803C7.2917 6.56168 6.57535 7.27803 5.6917 7.27803H3.0917C2.20804 7.27803 1.4917 6.56168 1.4917 5.67803V3.07803ZM3.0917 2.67803C2.87078 2.67803 2.6917 2.85711 2.6917 3.07803V5.67803C2.6917 5.89894 2.87079 6.07803 3.0917 6.07803H5.6917C5.91261 6.07803 6.0917 5.89894 6.0917 5.67803V3.07803C6.0917 2.85711 5.91261 2.67803 5.6917 2.67803H3.0917Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M14.6175 2.45279C14.8518 2.68711 14.8518 3.06701 14.6175 3.30132L11.6151 6.30365C11.3957 6.52307 11.0451 6.53897 10.8067 6.34031L8.80915 4.67566C8.55458 4.46352 8.52019 4.08518 8.73233 3.83062 8.94447 3.57605 9.32281 3.54166 9.57737 3.7538L11.154 5.06767 13.769 2.45278C14.0033 2.21847 14.3832 2.21848 14.6175 2.45279zM14.1175 9.19746C14.3518 9.43178 14.3518 9.81168 14.1175 10.046L12.5418 11.6217 14.1175 13.1975C14.3518 13.4318 14.3518 13.8117 14.1175 14.046 13.8832 14.2803 13.5033 14.2803 13.269 14.046L11.6933 12.4703 10.1175 14.046C9.88321 14.2803 9.50331 14.2803 9.269 14.046 9.03468 13.8117 9.03468 13.4318 9.269 13.1975L10.8447 11.6217 9.269 10.046C9.03468 9.81168 9.03468 9.43178 9.269 9.19746 9.50331 8.96315 9.88321 8.96315 10.1175 9.19746L11.6933 10.7732 13.269 9.19746C13.5033 8.96315 13.8832 8.96315 14.1175 9.19746z"}},{tag:"path",attrs:{fill:"currentColor",d:"M3.0917 8.72168C2.20804 8.72168 1.4917 9.43802 1.4917 10.3217V12.9217C1.4917 13.8053 2.20804 14.5217 3.0917 14.5217H5.6917C6.57535 14.5217 7.2917 13.8053 7.2917 12.9217V10.3217C7.2917 9.43802 6.57536 8.72168 5.6917 8.72168H3.0917ZM2.6917 10.3217C2.6917 10.1008 2.87078 9.92168 3.0917 9.92168H5.6917C5.91261 9.92168 6.0917 10.1008 6.0917 10.3217V12.9217C6.0917 13.1426 5.91261 13.3217 5.6917 13.3217H3.0917C2.87079 13.3217 2.6917 13.1426 2.6917 12.9217V10.3217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},DataValidationSingle=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"data-validation-single",ref,icon:element$5}))});DataValidationSingle.displayName="DataValidationSingle";var element$4={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.3313 1.4667C5.3313 1.13533 5.59993.866699 5.9313.866699H10.069C10.4004.866699 10.669 1.13533 10.669 1.4667 10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667zM1.09985 3.64443C1.09985 3.31306 1.36848 3.04443 1.69985 3.04443H14.2999C14.6312 3.04443 14.8999 3.31306 14.8999 3.64443 14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443zM6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928 9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171 10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778 9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539 9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263 6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539 5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778 6.12398 9.15024C5.88966 8.91593 5.88966 8.53603 6.12398 8.30171z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.75332 5.22217C3.86966 5.22217 3.15332 5.93851 3.15332 6.82217V12.5331C3.15332 13.9691 4.31738 15.1332 5.75332 15.1332H10.2465C11.6825 15.1332 12.8465 13.9691 12.8465 12.5331V6.82217C12.8465 5.93851 12.1302 5.22217 11.2465 5.22217H4.75332ZM4.35332 6.82217C4.35332 6.60125 4.53241 6.42217 4.75332 6.42217H11.2465C11.4674 6.42217 11.6465 6.60125 11.6465 6.82217V12.5331C11.6465 13.3063 11.0197 13.9332 10.2465 13.9332H5.75332C4.98012 13.9332 4.35332 13.3063 4.35332 12.5331V6.82217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},DeleteSingle=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"delete-single",ref,icon:element$4}))});DeleteSingle.displayName="DeleteSingle";var element$3={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.6 1.99991C8.60001 1.66854 8.33138 1.39991 8.00001 1.3999C7.66864 1.3999 7.40001 1.66853 7.4 1.9999L7.39996 7.3999H1.9999C1.66853 7.3999 1.3999 7.66853 1.3999 7.9999C1.3999 8.33127 1.66853 8.5999 1.9999 8.5999H7.39995L7.3999 13.9999C7.3999 14.3313 7.66853 14.5999 7.9999 14.5999C8.33127 14.5999 8.5999 14.3313 8.5999 13.9999L8.59995 8.5999H13.9999C14.3313 8.5999 14.5999 8.33127 14.5999 7.9999C14.5999 7.66853 14.3313 7.3999 13.9999 7.3999H8.59996L8.6 1.99991Z"}}]},IncreaseSingle=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"increase-single",ref,icon:element$3}))});IncreaseSingle.displayName="IncreaseSingle";var element$2={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M11.3536 6.14645C11.5488 6.34171 11.5488 6.65829 11.3536 6.85355L8.35355 9.85355C8.15829 10.0488 7.84171 10.0488 7.64645 9.85355L4.64645 6.85355C4.45118 6.65829 4.45118 6.34171 4.64645 6.14645C4.84171 5.95118 5.15829 5.95118 5.35355 6.14645L8 8.79289L10.6464 6.14645C10.8417 5.95118 11.1583 5.95118 11.3536 6.14645Z",fillRule:"evenodd",clipRule:"evenodd"}}]},MoreDownSingle=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"more-down-single",ref,icon:element$2}))});MoreDownSingle.displayName="MoreDownSingle";var element$1={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M4.64645 9.85355C4.45118 9.65829 4.45118 9.34171 4.64645 9.14645L7.64645 6.14645C7.84171 5.95118 8.15829 5.95118 8.35355 6.14645L11.3536 9.14645C11.5488 9.34171 11.5488 9.65829 11.3536 9.85355C11.1583 10.0488 10.8417 10.0488 10.6464 9.85355L8 7.20711L5.35355 9.85355C5.15829 10.0488 4.84171 10.0488 4.64645 9.85355Z",fillRule:"evenodd",clipRule:"evenodd"}}]},MoreUpSingle=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"more-up-single",ref,icon:element$1}))});MoreUpSingle.displayName="MoreUpSingle";var element={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"mask",attrs:{id:"mask0_622_8",style:{maskType:"alpha"},width:16,height:16,x:0,y:0,maskUnits:"userSpaceOnUse"},children:[{tag:"path",attrs:{fill:"#D9D9D9",d:"M0 0H16V16H0z"}}]},{tag:"g",attrs:{fill:"currentColor",mask:"url(#mask0_622_8)"},children:[{tag:"path",attrs:{d:"M6 5C6.55228 5 7 4.55228 7 4 7 3.44772 6.55228 3 6 3 5.44772 3 5 3.44772 5 4 5 4.55228 5.44772 5 6 5zM6 9C6.55228 9 7 8.55229 7 8 7 7.44772 6.55228 7 6 7 5.44772 7 5 7.44772 5 8 5 8.55229 5.44772 9 6 9zM7 12C7 12.5523 6.55228 13 6 13 5.44772 13 5 12.5523 5 12 5 11.4477 5.44772 11 6 11 6.55228 11 7 11.4477 7 12zM10 5C10.5523 5 11 4.55228 11 4 11 3.44772 10.5523 3 10 3 9.44771 3 9 3.44772 9 4 9 4.55228 9.44771 5 10 5zM11 8C11 8.55229 10.5523 9 10 9 9.44771 9 9 8.55229 9 8 9 7.44772 9.44771 7 10 7 10.5523 7 11 7.44772 11 8zM10 13C10.5523 13 11 12.5523 11 12 11 11.4477 10.5523 11 10 11 9.44771 11 9 11.4477 9 12 9 12.5523 9.44771 13 10 13z"}}]}]},SequenceSingle=React.forwardRef(function(props,ref){return React.createElement(IconBase,Object.assign({},props,{id:"sequence-single",ref,icon:element}))});SequenceSingle.displayName="SequenceSingle";var P=(E=>(E[E.View=0]="View",E[E.Edit=1]="Edit",E[E.ManageCollaborator=2]="ManageCollaborator",E[E.Print=3]="Print",E[E.Duplicate=4]="Duplicate",E[E.Comment=5]="Comment",E[E.Copy=6]="Copy",E[E.Share=7]="Share",E[E.Export=8]="Export",E[E.MoveWorksheet=9]="MoveWorksheet",E[E.DeleteWorksheet=10]="DeleteWorksheet",E[E.HideWorksheet=11]="HideWorksheet",E[E.RenameWorksheet=12]="RenameWorksheet",E[E.CreateWorksheet=13]="CreateWorksheet",E[E.SetWorksheetStyle=14]="SetWorksheetStyle",E[E.EditWorksheetCell=15]="EditWorksheetCell",E[E.InsertHyperlink=16]="InsertHyperlink",E[E.Sort=17]="Sort",E[E.Filter=18]="Filter",E[E.PivotTable=19]="PivotTable",E[E.FloatImg=20]="FloatImg",E[E.History=21]="History",E[E.RwHgtClWdt=22]="RwHgtClWdt",E[E.ViemRwHgtClWdt=23]="ViemRwHgtClWdt",E[E.ViewFilter=24]="ViewFilter",E[E.MoveSheet=25]="MoveSheet",E[E.DeleteSheet=26]="DeleteSheet",E[E.HideSheet=27]="HideSheet",E[E.CopySheet=28]="CopySheet",E[E.RenameSheet=29]="RenameSheet",E[E.CreateSheet=30]="CreateSheet",E[E.SelectProtectedCells=31]="SelectProtectedCells",E[E.SelectUnProtectedCells=32]="SelectUnProtectedCells",E[E.SetCellStyle=33]="SetCellStyle",E[E.SetCellValue=34]="SetCellValue",E[E.SetRowStyle=35]="SetRowStyle",E[E.SetColumnStyle=36]="SetColumnStyle",E[E.InsertRow=37]="InsertRow",E[E.InsertColumn=38]="InsertColumn",E[E.DeleteRow=39]="DeleteRow",E[E.DeleteColumn=40]="DeleteColumn",E[E.EditExtraObject=41]="EditExtraObject",E[E.Delete=42]="Delete",E[E.RecoverHistory=43]="RecoverHistory",E[E.ViewHistory=44]="ViewHistory",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(P||{}),__defProp$h=Object.defineProperty,__getOwnPropDesc$h=Object.getOwnPropertyDescriptor,__decorateClass$h=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$h(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$h(target,key,result),result},"__decorateClass$h"),__decorateParam$h=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$h"),_a5;let DataValidationFormulaController=(_a5=class extends core.Disposable{constructor(_univerInstanceService,_permissionService,_lexerTreeBuilder){super(),this._univerInstanceService=_univerInstanceService,this._permissionService=_permissionService,this._lexerTreeBuilder=_lexerTreeBuilder}getFormulaRefCheck(formulaString){var _a24,_b;const sequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(formulaString);if(!sequenceNodes)return!0;for(let i=0;i<sequenceNodes.length;i++){const node=sequenceNodes[i];if(typeof node=="string")continue;const{token}=node,sequenceGrid=engineFormula.deserializeRangeWithSheet(token),workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);let targetSheet=workbook.getActiveSheet();const unitId=workbook.getUnitId();if(sequenceGrid.sheetName){if(targetSheet=workbook.getSheetBySheetName(sequenceGrid.sheetName),!targetSheet)return!1;const subUnitId=targetSheet==null?void 0:targetSheet.getSheetId();if(!this._permissionService.getPermissionPoint(new sheets.WorksheetViewPermission(unitId,subUnitId).id))return!1}if(!targetSheet)return!1;const{startRow,endRow,startColumn,endColumn}=sequenceGrid.range;for(let i2=startRow;i2<=endRow;i2++)for(let j=startColumn;j<=endColumn;j++){const permission=(_b=(_a24=targetSheet.getCell(i2,j))==null?void 0:_a24.selectionProtection)==null?void 0:_b[0];if((permission==null?void 0:permission[P.View])===!1)return!1}}return!0}},__name(_a5,"DataValidationFormulaController"),_a5);DataValidationFormulaController=__decorateClass$h([core.OnLifecycle(core.LifecycleStages.Rendered,DataValidationFormulaController),__decorateParam$h(0,core.IUniverInstanceService),__decorateParam$h(1,core.IPermissionService),__decorateParam$h(2,core.Inject(engineFormula.LexerTreeBuilder))],DataValidationFormulaController);function serializeListOptions(options){return options.filter(Boolean).join(",")}__name(serializeListOptions,"serializeListOptions");function deserializeListOptions(optionsStr){return optionsStr.split(",").filter(Boolean)}__name(deserializeListOptions,"deserializeListOptions");function getDataValidationCellValue(cellData){const cellValue=getCellValueOrigin(cellData);return cellValue==null?"":cellValue.toString()}__name(getDataValidationCellValue,"getDataValidationCellValue");const DEFAULT_COLOR_PRESET=["#FFFFFF","#FEE7E7","#FEF0E6","#EFFBD0","#E4F4FE","#E8ECFD","#F1EAFA","#FDE8F3","#E5E5E5","#FDCECE","#FDC49B","#DEF6A2","#9FDAFF","#D0D9FB","#E3D5F6","#FBD0E8","#656565","#FE4B4B","#FF8C51","#8BBB11","#0B9EFB","#3A60F7","#9E6DE3","#F248A6"],ColorSelect=__name(props=>{const{value,onChange,disabled}=props,[open,setOpen]=React.useState(!1);return jsxRuntimeExports.jsx(design.Select,{disabled,open,onDropdownVisibleChange:setOpen,dropdownStyle:{width:112},className:styles$6.dataValidationFormulaColorSelect,value,onChange,labelRender:__name(item=>jsxRuntimeExports.jsx("div",{className:styles$6.dataValidationFormulaColorItem,style:{background:item.value,marginTop:5}}),"labelRender"),dropdownRender:__name(()=>jsxRuntimeExports.jsx("div",{className:styles$6.dataValidationFormulaColorSelectPanel,children:DEFAULT_COLOR_PRESET.map(color=>jsxRuntimeExports.jsx("div",{onClick:__name(()=>{onChange(color),setOpen(!1)},"onClick"),className:styles$6.dataValidationFormulaColorItem,style:{background:color}},color))}),"dropdownRender")})},"ColorSelect"),Template=__name(props=>{const{item,commonProps,style}=props,{onItemChange,onItemDelete}=commonProps;return jsxRuntimeExports.jsxs("div",{className:styles$6.dataValidationFormulaListItem,style,children:[item.isRef?null:jsxRuntimeExports.jsx("div",{className:cs(styles$6.dataValidationFormulaListItemDrag,"draggableHandle"),children:jsxRuntimeExports.jsx(SequenceSingle,{})}),jsxRuntimeExports.jsx(ColorSelect,{value:item.color,onChange:__name(color=>{onItemChange(item.id,item.label,color)},"onChange")}),jsxRuntimeExports.jsx(design.Input,{disabled:item.isRef,value:item.label,onChange:__name(label=>{onItemChange(item.id,label,item.color)},"onChange")}),item.isRef?null:jsxRuntimeExports.jsx("div",{className:styles$6.dataValidationFormulaListItemIcon,children:jsxRuntimeExports.jsx(DeleteSingle,{onClick:__name(()=>onItemDelete(item.id),"onClick")})})]})},"Template");function ListFormulaInput(props){const{value,onChange:_onChange=__name(()=>{},"_onChange"),unitId,subUnitId,validResult,showError,ruleId}=props,{formula1="",formula2=""}=value||{},containerRef=React.useRef(null),[isFormulaStr,setIsFormulaStr]=React.useState(()=>core.isFormulaString(formula1)?"1":"0"),[formulaStr,setFormulaStr]=React.useState(isFormulaStr==="1"?formula1:"="),[formulaStrCopy,setFormulaStrCopy]=React.useState(isFormulaStr==="1"?formula1:"="),localeService=core.useDependency(core.LocaleService),dataValidatorRegistryService=core.useDependency(dataValidation.DataValidatorRegistryService),dataValidationModel=core.useDependency(dataValidation.DataValidationModel),dataValidationFormulaController=core.useDependency(DataValidationFormulaController),[refColors,setRefColors]=React.useState(()=>formula2.split(",")),listValidator=dataValidatorRegistryService.getValidatorItem(core.DataValidationType.LIST),[refOptions,setRefOptions]=React.useState([]),[localError,setLocalError]=React.useState(""),formula1Res=showError?validResult==null?void 0:validResult.formula1:"",ruleChange$=React.useMemo(()=>dataValidationModel.ruleChange$.pipe(rxjs.debounceTime(16)),[]),ruleChange=ui.useObservable(ruleChange$),onChange=ui.useEvent(_onChange);React.useEffect(()=>{(async()=>{await new Promise(resolve=>{setTimeout(()=>resolve(!0),100)});const rule=dataValidationModel.getRuleById(unitId,subUnitId,ruleId),formula12=rule==null?void 0:rule.formula1;if(core.isFormulaString(formula12)&&listValidator&&rule){const res=await listValidator.getListAsync(rule,unitId,subUnitId);setRefOptions(res)}})()},[dataValidationModel,ruleChange,listValidator,ruleId,subUnitId,unitId]),React.useEffect(()=>{core.isFormulaString(formula1)&&formula1!==formulaStrCopy&&(setFormulaStr(formula1),setFormulaStrCopy(formulaStrCopy))},[formulaStrCopy,formula1]);const[strList,setStrList]=React.useState(()=>{const strOptions=isFormulaStr!=="1"?deserializeListOptions(formula1):[],strColors=formula2.split(",");return strOptions.map((label,i)=>({label,color:strColors[i]||DROP_DOWN_DEFAULT_COLOR,isRef:!1,id:core.Tools.generateRandomId(4)}))}),handleStrItemChange=__name((id,value2,color)=>{const item=strList.find(i=>i.id===id);item&&(item.label=value2,item.color=color,setStrList([...strList]))},"handleStrItemChange"),handleStrItemDelete=__name(id=>{const index=strList.findIndex(i=>i.id===id);index!==-1&&(strList.splice(index,1),setStrList([...strList]))},"handleStrItemDelete"),colorList=formula2.split(","),refFinalList=React.useMemo(()=>refOptions.map((label,i)=>({label,color:colorList[i]||DROP_DOWN_DEFAULT_COLOR,id:`${i}`,isRef:!0})),[colorList,refOptions]),handleRefItemChange=__name((id,value2,color)=>{const newColors=[...refColors];newColors[+id]=color,setRefColors(newColors),onChange({formula1,formula2:newColors.join(",")})},"handleRefItemChange"),handleAdd=__name(()=>{setStrList([...strList,{label:"",color:DROP_DOWN_DEFAULT_COLOR,isRef:!1,id:core.Tools.generateRandomId(4)}])},"handleAdd");React.useEffect(()=>{if(isFormulaStr==="1")return;const labelSet=new Set,finalList=[];strList.map(item=>({labelList:item.label.split(","),item})).forEach(({item,labelList})=>{labelList.forEach(labelItem=>{labelSet.has(labelItem)||(labelSet.add(labelItem),finalList.push({label:labelItem,color:item.color}))})}),onChange({formula1:serializeListOptions(finalList.map(item=>item.label)),formula2:finalList.map(item=>item.color===DROP_DOWN_DEFAULT_COLOR?"":item.color).join(",")})},[strList,onChange,isFormulaStr,formulaStrCopy,refColors]);const updateFormula=React.useMemo(()=>async str=>{if(!core.isFormulaString(str)){onChange==null||onChange({formula1:"",formula2});return}dataValidationFormulaController.getFormulaRefCheck(str)?(onChange==null||onChange({formula1:core.isFormulaString(str)?str:"",formula2}),setLocalError("")):(onChange==null||onChange({formula1:"",formula2}),setFormulaStr("="),setLocalError(localeService.t("dataValidation.validFail.formulaError")))},[formula2,onChange]);return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.list.options"),children:jsxRuntimeExports.jsxs(design.RadioGroup,{value:isFormulaStr,onChange:__name(v=>{setIsFormulaStr(v),setFormulaStr(formulaStrCopy),v==="1"&&onChange({formula1:formulaStrCopy==="="?"":formulaStrCopy,formula2:refColors.join(",")})},"onChange"),children:[jsxRuntimeExports.jsx(design.Radio,{value:"0",children:localeService.t("dataValidation.list.customOptions")}),jsxRuntimeExports.jsx(design.Radio,{value:"1",children:localeService.t("dataValidation.list.refOptions")})]})}),isFormulaStr==="1"?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(design.FormLayout,{error:formula1Res||localError,children:jsxRuntimeExports.jsx(docsUi.TextEditor,{id:core.createInternalEditorID(`list-ref-range-${unitId}-${subUnitId}`),value:formulaStr,openForSheetUnitId:unitId,openForSheetSubUnitId:subUnitId,onlyInputFormula:!0,onChange:__name(async newString=>{const str=(newString!=null?newString:"").trim();setFormulaStrCopy(str),updateFormula(str)},"onChange")})}),jsxRuntimeExports.jsx(design.FormLayout,{children:jsxRuntimeExports.jsx("div",{ref:containerRef,children:refFinalList.map(item=>jsxRuntimeExports.jsx(Template,{item,commonProps:{onItemChange:handleRefItemChange},style:{marginBottom:12}},item.id))})})]}):jsxRuntimeExports.jsx(design.FormLayout,{error:formula1Res,children:jsxRuntimeExports.jsxs("div",{ref:containerRef,style:{marginTop:"-12px"},children:[jsxRuntimeExports.jsx(design.DraggableList,{list:strList,onListChange:setStrList,rowHeight:32,margin:[0,12],draggableHandle:".draggableHandle",itemRender:__name(item=>jsxRuntimeExports.jsx(Template,{item,commonProps:{onItemChange:handleStrItemChange,onItemDelete:handleStrItemDelete}},item.id),"itemRender"),idKey:"id"}),jsxRuntimeExports.jsxs("a",{className:styles$6.dataValidationFormulaListAdd,onClick:handleAdd,children:[jsxRuntimeExports.jsx(IncreaseSingle,{}),localeService.t("dataValidation.list.add")]})]})})]})}__name(ListFormulaInput,"ListFormulaInput");function CheckboxFormulaInput(props){const{value,onChange,showError,validResult}=props,localeService=core.useDependency(core.LocaleService),formula1Res=showError?validResult==null?void 0:validResult.formula1:"",formula2Res=showError?validResult==null?void 0:validResult.formula2:"",[checked,setChecked]=React.useState(!((value==null?void 0:value.formula1)===void 0&&(value==null?void 0:value.formula2)===void 0));return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(design.FormLayout,{children:jsxRuntimeExports.jsx(design.Checkbox,{checked,onChange:__name(newValue=>{newValue?setChecked(!0):(setChecked(!1),onChange==null||onChange({...value,formula1:void 0,formula2:void 0}))},"onChange"),children:localeService.t("dataValidation.checkbox.tips")})}),checked?jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.checkbox.checked"),error:formula1Res,children:jsxRuntimeExports.jsx(design.Input,{className:styles$6.dataValidationFormula,placeholder:localeService.t("dataValidation.panel.valuePlaceholder"),value:value==null?void 0:value.formula1,onChange:__name(newValue=>{onChange==null||onChange({...value,formula1:newValue||void 0})},"onChange")})}):null,checked?jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.checkbox.unchecked"),error:formula2Res,children:jsxRuntimeExports.jsx(design.Input,{className:styles$6.dataValidationFormula,placeholder:localeService.t("dataValidation.panel.valuePlaceholder"),value:value==null?void 0:value.formula2,onChange:__name(newValue=>{onChange==null||onChange({...value,formula2:newValue||void 0})},"onChange")})}):null]})}__name(CheckboxFormulaInput,"CheckboxFormulaInput");const CUSTOM_FORMULA_INPUT_NAME="data-validation.custom-formula-input",BASE_FORMULA_INPUT_NAME="data-validation.formula-input",LIST_FORMULA_INPUT_NAME="data-validation.list-formula-input",CHECKBOX_FORMULA_INPUT_NAME="data-validation.checkbox-formula-input",FORMULA_INPUTS=[[CUSTOM_FORMULA_INPUT_NAME,CustomFormulaInput],[BASE_FORMULA_INPUT_NAME,BaseFormulaInput],[LIST_FORMULA_INPUT_NAME,ListFormulaInput],[CHECKBOX_FORMULA_INPUT_NAME,CheckboxFormulaInput]];var __defProp$g=Object.defineProperty,__getOwnPropDesc$g=Object.getOwnPropertyDescriptor,__decorateClass$g=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$g(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$g(target,key,result),result},"__decorateClass$g"),__decorateParam$g=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$g");const MARGIN_H$2=6;var _a6;let CheckboxRender=(_a6=class{constructor(_commandService,_formulaService,_themeService){this._commandService=_commandService,this._formulaService=_formulaService,this._themeService=_themeService}_calc(cellInfo,style){var _a24,_b,_c;const{vt,ht}=style||{},width=cellInfo.endX-cellInfo.startX-MARGIN_H$2*2,height=cellInfo.endY-cellInfo.startY,size=((_a24=style==null?void 0:style.fs)!=null?_a24:10)*1.6;let widgetLeft=0,widgetTop=0;switch(vt){case core.VerticalAlign.TOP:widgetTop=0;break;case core.VerticalAlign.BOTTOM:widgetTop=0+(height-size);break;default:widgetTop=0+(height-size)/2;break}switch(ht){case core.HorizontalAlign.LEFT:widgetLeft=MARGIN_H$2;break;case core.HorizontalAlign.RIGHT:widgetLeft=MARGIN_H$2+(width-size);break;default:widgetLeft=MARGIN_H$2+(width-size)/2;break}return{left:cellInfo.startX+widgetLeft,top:cellInfo.startY+widgetTop,width:((_b=style==null?void 0:style.fs)!=null?_b:10)*1.6,height:((_c=style==null?void 0:style.fs)!=null?_c:10)*1.6}}calcCellAutoHeight(info){var _a24;const{style}=info;return((_a24=style==null?void 0:style.fs)!=null?_a24:10)*1.6}async _parseFormula(rule,unitId,subUnitId){var _a24,_b;const{formula1=CHECKBOX_FORMULA_1,formula2=CHECKBOX_FORMULA_2}=rule,results=await this._formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid);return{formula1:core.isFormulaString(formula1)?getFormulaResult((_a24=results==null?void 0:results[0])==null?void 0:_a24.result):formula1,formula2:core.isFormulaString(formula2)?getFormulaResult((_b=results==null?void 0:results[1])==null?void 0:_b.result):formula2}}drawWith(ctx,info){var _a24,_b,_c,_d,_e,_f;const{style,data,primaryWithCoord,unitId,subUnitId,worksheet,row,col}=info,cellBounding=primaryWithCoord.isMergedMainCell?primaryWithCoord.mergeInfo:primaryWithCoord,value=getCellValueOrigin(worksheet.getCellRaw(row,col)),rule=(_a24=data.dataValidation)==null?void 0:_a24.rule,validator=(_b=data.dataValidation)==null?void 0:_b.validator;if(!rule||!validator)return;const colors=this._themeService.getCurrentTheme();if(!((_c=validator.skipDefaultFontRender)!=null&&_c.call(validator,rule,value,{unitId,subUnitId})))return;const result=validator.parseFormulaSync(rule,unitId,subUnitId),{formula1}=result,layout=this._calc(cellBounding,style),{a:scaleX,d:scaleY}=ctx.getTransform(),left=engineRender.fixLineWidthByScale(layout.left,scaleX),top=engineRender.fixLineWidthByScale(layout.top,scaleY),transform=engineRender.Transform.create().composeMatrix({left,top,scaleX:1,scaleY:1,angle:0,skewX:0,skewY:0,flipX:!1,flipY:!1}),cellWidth=cellBounding.endX-cellBounding.startX,cellHeight=cellBounding.endY-cellBounding.startY;ctx.save(),ctx.beginPath(),ctx.rect(cellBounding.startX,cellBounding.startY,cellWidth,cellHeight),ctx.clip();const m2=transform.getMatrix();ctx.transform(m2[0],m2[1],m2[2],m2[3],m2[4],m2[5]);const size=((_d=style==null?void 0:style.fs)!=null?_d:10)*1.6,checked=String(value)===String(formula1),defaultColor=colors.hyacinth500;engineRender.Checkbox.drawWith(ctx,{checked,width:size,height:size,fill:(_f=(_e=style==null?void 0:style.cl)==null?void 0:_e.rgb)!=null?_f:defaultColor}),ctx.restore()}isHit(evt,info){const cellBounding=info.primaryWithCoord.isMergedMainCell?info.primaryWithCoord.mergeInfo:info.primaryWithCoord,layout=this._calc(cellBounding,info.style),startY=layout.top,endY=layout.top+layout.height,startX=layout.left,endX=layout.left+layout.width,{x:offsetX,y:offsetY}=evt;return offsetX<=endX&&offsetX>=startX&&offsetY<=endY&&offsetY>=startY}async onPointerDown(info,evt){var _a24,_b,_c;if(evt.button===2)return;const{primaryWithCoord,unitId,subUnitId,data,worksheet,row,col}=info,value=getCellValueOrigin(worksheet.getCellRaw(row,col)),rule=(_a24=data.dataValidation)==null?void 0:_a24.rule,validator=(_b=data.dataValidation)==null?void 0:_b.validator;if(!rule||!validator||!((_c=validator.skipDefaultFontRender)!=null&&_c.call(validator,rule,value,{unitId,subUnitId})))return;const{formula1,formula2}=await this._parseFormula(rule,unitId,subUnitId),params={range:{startColumn:primaryWithCoord.actualColumn,endColumn:primaryWithCoord.actualColumn,startRow:primaryWithCoord.actualRow,endRow:primaryWithCoord.actualRow},value:{v:String(value)===transformCheckboxValue(String(formula1))?formula2:formula1,p:null}};this._commandService.executeCommand(sheets.SetRangeValuesCommand.id,params)}},__name(_a6,"CheckboxRender"),_a6);CheckboxRender=__decorateClass$g([__decorateParam$g(0,core.ICommandService),__decorateParam$g(1,core.Inject(exports.DataValidationFormulaService)),__decorateParam$g(2,core.Inject(core.ThemeService))],CheckboxRender);const CHECKBOX_FORMULA_1=1,CHECKBOX_FORMULA_2=0;function getFailMessage(formula,localeService){return core.Tools.isBlank(formula)?localeService.t("dataValidation.validFail.value"):core.isFormulaString(formula)?localeService.t("dataValidation.validFail.primitive"):""}__name(getFailMessage,"getFailMessage");const transformCheckboxValue=__name(value=>core.Tools.isDefine(value)&&String(value).toLowerCase()==="true"?"1":String(value).toLowerCase()==="false"?"0":value,"transformCheckboxValue"),_CheckboxValidator=class _CheckboxValidator extends dataValidation.BaseDataValidator{constructor(){super(...arguments);__publicField(this,"id",core.DataValidationType.CHECKBOX);__publicField(this,"title","dataValidation.checkbox.title");__publicField(this,"operators",[]);__publicField(this,"scopes",["sheet"]);__publicField(this,"formulaInput",CHECKBOX_FORMULA_INPUT_NAME);__publicField(this,"canvasRender",this.injector.createInstance(CheckboxRender));__publicField(this,"_formulaService",this.injector.get(exports.DataValidationFormulaService));__publicField(this,"skipDefaultFontRender",__name((rule,cellValue,pos)=>{const{formula1,formula2}=this.parseFormulaSync(rule,pos.unitId,pos.subUnitId),valueStr=`${cellValue!=null?cellValue:""}`;return!valueStr||valueStr===`${formula1}`||valueStr===`${formula2}`},"skipDefaultFontRender"))}validatorFormula(rule,unitId,subUnitId){const{formula1,formula2}=rule,isEqual=formula1===formula2;if(core.Tools.isBlank(formula1)&&core.Tools.isBlank(formula2))return{success:!0};if(isEqual)return{success:!1,formula1:this.localeService.t("dataValidation.validFail.checkboxEqual"),formula2:this.localeService.t("dataValidation.validFail.checkboxEqual")};const error1=getFailMessage(formula1,this.localeService),error2=getFailMessage(formula2,this.localeService);return{success:!error1&&!error2,formula1:error1,formula2:error2}}async parseFormula(rule,unitId,subUnitId){var _a24,_b;const{formula1=CHECKBOX_FORMULA_1,formula2=CHECKBOX_FORMULA_2}=rule,results=await this._formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid),originFormula1=core.isFormulaString(formula1)?getFormulaResult((_a24=results==null?void 0:results[0])==null?void 0:_a24.result):formula1,originFormula2=core.isFormulaString(formula2)?getFormulaResult((_b=results==null?void 0:results[1])==null?void 0:_b.result):formula2;return{formula1:transformCheckboxValue(originFormula1),formula2:transformCheckboxValue(originFormula2),originFormula1,originFormula2}}getExtraStyle(rule,value){return{tb:core.WrapStrategy.CLIP}}parseFormulaSync(rule,unitId,subUnitId){var _a24,_b;const{formula1=CHECKBOX_FORMULA_1,formula2=CHECKBOX_FORMULA_2}=rule,results=this._formulaService.getRuleFormulaResultSync(unitId,subUnitId,rule.uid),originFormula1=core.isFormulaString(formula1)?getFormulaResult((_a24=results==null?void 0:results[0])==null?void 0:_a24.result):formula1,originFormula2=core.isFormulaString(formula2)?getFormulaResult((_b=results==null?void 0:results[1])==null?void 0:_b.result):formula2;return{formula1:transformCheckboxValue(originFormula1),formula2:transformCheckboxValue(originFormula2),originFormula1,originFormula2}}async isValidType(cellInfo,formula,rule){const{value,unitId,subUnitId}=cellInfo,{formula1,formula2,originFormula1,originFormula2}=await this.parseFormula(rule,unitId,subUnitId);return!core.Tools.isDefine(formula1)||!core.Tools.isDefine(formula2)?!0:core.Tools.isDefine(value)&&(String(value)===String(formula1)||String(value)===String(formula2)||String(value)===String(originFormula1!=null?originFormula1:"")||String(value)===String(originFormula2!=null?originFormula2:""))}generateRuleErrorMessage(rule){return this.localeService.t("dataValidation.checkbox.error")}};__name(_CheckboxValidator,"CheckboxValidator");let CheckboxValidator=_CheckboxValidator;const DateOperatorNameMap={[core.DataValidationOperator.BETWEEN]:"dataValidation.date.operators.between",[core.DataValidationOperator.EQUAL]:"dataValidation.date.operators.equal",[core.DataValidationOperator.GREATER_THAN]:"dataValidation.date.operators.greaterThan",[core.DataValidationOperator.GREATER_THAN_OR_EQUAL]:"dataValidation.date.operators.greaterThanOrEqual",[core.DataValidationOperator.LESS_THAN]:"dataValidation.date.operators.lessThan",[core.DataValidationOperator.LESS_THAN_OR_EQUAL]:"dataValidation.date.operators.lessThanOrEqual",[core.DataValidationOperator.NOT_BETWEEN]:"dataValidation.date.operators.notBetween",[core.DataValidationOperator.NOT_EQUAL]:"dataValidation.date.operators.notEqual"};core.DataValidationOperator.BETWEEN+"",core.DataValidationOperator.EQUAL+"",core.DataValidationOperator.GREATER_THAN+"",core.DataValidationOperator.GREATER_THAN_OR_EQUAL+"",core.DataValidationOperator.LESS_THAN+"",core.DataValidationOperator.LESS_THAN_OR_EQUAL+"",core.DataValidationOperator.NOT_BETWEEN+"",core.DataValidationOperator.NOT_EQUAL+"";const DateOperatorTitleMap={[core.DataValidationOperator.BETWEEN]:"dataValidation.date.ruleName.between",[core.DataValidationOperator.EQUAL]:"dataValidation.date.ruleName.equal",[core.DataValidationOperator.GREATER_THAN]:"dataValidation.date.ruleName.greaterThan",[core.DataValidationOperator.GREATER_THAN_OR_EQUAL]:"dataValidation.date.ruleName.greaterThanOrEqual",[core.DataValidationOperator.LESS_THAN]:"dataValidation.date.ruleName.lessThan",[core.DataValidationOperator.LESS_THAN_OR_EQUAL]:"dataValidation.date.ruleName.lessThanOrEqual",[core.DataValidationOperator.NOT_BETWEEN]:"dataValidation.date.ruleName.notBetween",[core.DataValidationOperator.NOT_EQUAL]:"dataValidation.date.ruleName.notEqual"},DateOperatorErrorTitleMap={[core.DataValidationOperator.BETWEEN]:"dataValidation.date.errorMsg.between",[core.DataValidationOperator.EQUAL]:"dataValidation.date.errorMsg.equal",[core.DataValidationOperator.GREATER_THAN]:"dataValidation.date.errorMsg.greaterThan",[core.DataValidationOperator.GREATER_THAN_OR_EQUAL]:"dataValidation.date.errorMsg.greaterThanOrEqual",[core.DataValidationOperator.LESS_THAN]:"dataValidation.date.errorMsg.lessThan",[core.DataValidationOperator.LESS_THAN_OR_EQUAL]:"dataValidation.date.errorMsg.lessThanOrEqual",[core.DataValidationOperator.NOT_BETWEEN]:"dataValidation.date.errorMsg.notBetween",[core.DataValidationOperator.NOT_EQUAL]:"dataValidation.date.errorMsg.notEqual"},TWO_FORMULA_OPERATOR_COUNT=[core.DataValidationOperator.BETWEEN,core.DataValidationOperator.NOT_BETWEEN];var utc$1={exports:{}};(function(module2,exports2){(function(t,i){module2.exports=i()})(commonjsGlobal,function(){var t="minute",i=/[+-]\d\d(?::?\d\d)?/g,e=/([+-]|\d\d)/g;return function(s,f2,n2){var u=f2.prototype;n2.utc=function(t2){var i2={date:t2,utc:!0,args:arguments};return new f2(i2)},u.utc=function(i2){var e2=n2(this.toDate(),{locale:this.$L,utc:!0});return i2?e2.add(this.utcOffset(),t):e2},u.local=function(){return n2(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t2){t2.utc&&(this.$u=!0),this.$utils().u(t2.$offset)||(this.$offset=t2.$offset),o.call(this,t2)};var r=u.init;u.init=function(){if(this.$u){var t2=this.$d;this.$y=t2.getUTCFullYear(),this.$M=t2.getUTCMonth(),this.$D=t2.getUTCDate(),this.$W=t2.getUTCDay(),this.$H=t2.getUTCHours(),this.$m=t2.getUTCMinutes(),this.$s=t2.getUTCSeconds(),this.$ms=t2.getUTCMilliseconds()}else r.call(this)};var a=u.utcOffset;u.utcOffset=function(s2,f3){var n3=this.$utils().u;if(n3(s2))return this.$u?0:n3(this.$offset)?a.call(this):this.$offset;if(typeof s2=="string"&&(s2=function(t2){t2===void 0&&(t2="");var s3=t2.match(i);if(!s3)return null;var f4=(""+s3[0]).match(e)||["-",0,0],n4=f4[0],u3=60*+f4[1]+ +f4[2];return u3===0?0:n4==="+"?u3:-u3}(s2),s2===null))return this;var u2=Math.abs(s2)<=16?60*s2:s2,o2=this;if(f3)return o2.$offset=u2,o2.$u=s2===0,o2;if(s2!==0){var r2=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o2=this.local().add(u2+r2,t)).$offset=u2,o2.$x.$localOffset=r2}else o2=this.utc();return o2};var h=u.format;u.format=function(t2){var i2=t2||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,i2)},u.valueOf=function(){var t2=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t2},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l2=u.toDate;u.toDate=function(t2){return t2==="s"&&this.$offset?n2(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l2.call(this)};var c=u.diff;u.diff=function(t2,i2,e2){if(t2&&this.$u===t2.$u)return c.call(this,t2,i2,e2);var s2=this.local(),f3=n2(t2).local();return c.call(s2,f3,i2,e2)}}})})(utc$1);var utcExports=utc$1.exports;const utc=getDefaultExportFromCjs(utcExports);var __defProp$f=Object.defineProperty,__getOwnPropDesc$f=Object.getOwnPropertyDescriptor,__decorateClass$f=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$f(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$f(target,key,result),result},"__decorateClass$f"),__decorateParam$f=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$f"),_a7;let DataValidationRejectInputController=(_a7=class extends core.Disposable{constructor(_editorBridgeService,_dataValidationModel,_dataValidatorRegistryService,_dialogService,_localeService){super(),this._editorBridgeService=_editorBridgeService,this._dataValidationModel=_dataValidationModel,this._dataValidatorRegistryService=_dataValidatorRegistryService,this._dialogService=_dialogService,this._localeService=_localeService,this._initEditorBridgeInterceptor()}_initEditorBridgeInterceptor(){this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().AFTER_CELL_EDIT_ASYNC,{handler:__name(async(cellPromise,context,next)=>{var _a24;const cell=await cellPromise,{worksheet,row,col,unitId,subUnitId,workbook}=context,ruleId=this._dataValidationModel.getRuleIdByLocation(unitId,subUnitId,row,col),rule=ruleId?this._dataValidationModel.getRuleById(unitId,subUnitId,ruleId):void 0;if(!rule||rule.errorStyle!==core.DataValidationErrorStyle.STOP)return next(Promise.resolve(cell));const validator=await this._dataValidatorRegistryService.getValidatorItem(rule.type);if(!validator||await validator.validator({value:getCellValueOrigin(cell),interceptValue:getCellValueOrigin((_a24=context==null?void 0:context.origin)!=null?_a24:cell),row,column:col,unitId,subUnitId,worksheet,workbook,t:cell==null?void 0:cell.t},rule))return next(Promise.resolve(cell));const oldCell=worksheet.getCellRaw(row,col);return this._dialogService.open({width:368,title:{title:this._localeService.t("dataValidation.alert.title")},id:"reject-input-dialog",children:{title:validator.getRuleFinalError(rule)},footer:{title:React.createElement(design.Button,{type:"primary",onClick:__name(()=>this._dialogService.close("reject-input-dialog"),"onClick")},this._localeService.t("dataValidation.alert.ok"))},onClose:__name(()=>{this._dialogService.close("reject-input-dialog")},"onClose")}),next(Promise.resolve(oldCell))},"handler")})}showReject(title){this._dialogService.open({width:368,title:{title:this._localeService.t("dataValidation.alert.title")},id:"reject-input-dialog",children:{title},footer:{title:React.createElement(design.Button,{type:"primary",onClick:__name(()=>this._dialogService.close("reject-input-dialog"),"onClick")},this._localeService.t("dataValidation.alert.ok"))},onClose:__name(()=>{this._dialogService.close("reject-input-dialog")},"onClose")})}},__name(_a7,"DataValidationRejectInputController"),_a7);DataValidationRejectInputController=__decorateClass$f([core.OnLifecycle(core.LifecycleStages.Ready,DataValidationRejectInputController),__decorateParam$f(0,sheetsUi.IEditorBridgeService),__decorateParam$f(1,core.Inject(exports.SheetDataValidationModel)),__decorateParam$f(2,core.Inject(dataValidation.DataValidatorRegistryService)),__decorateParam$f(3,ui.IDialogService),__decorateParam$f(4,core.Inject(core.LocaleService))],DataValidationRejectInputController);const dvDateDropdown="univer-dv-date-dropdown",dvDateDropdownBtns="univer-dv-date-dropdown-btns",styles$5={dvDateDropdown,dvDateDropdownBtns};dayjs.extend(utc);const transformDate=__name(value=>{if(value==null||typeof value=="boolean")return;if(typeof value=="number"||!Number.isNaN(+value))return dayjs(core.numfmt.format("yyyy-MM-dd HH:mm:ss",Number(value)));const date=dayjs(value);if(date.isValid())return date},"transformDate");function DateDropdown(props){var _a24,_b,_c;const{location,hideFn}=props,{worksheet,row,col,unitId,subUnitId,workbook}=location,commandService=core.useDependency(core.ICommandService),rejectInputController=core.useDependency(DataValidationRejectInputController),cellData=worksheet.getCell(row,col),rule=(_a24=cellData==null?void 0:cellData.dataValidation)==null?void 0:_a24.rule,validator=(_b=cellData==null?void 0:cellData.dataValidation)==null?void 0:_b.validator,cellStr=getCellValueOrigin(worksheet.getCellRaw(row,col)),originDate=transformDate(cellStr),[localDate,setLocalDate]=React.useState(originDate),showTime=!!((_c=rule==null?void 0:rule.bizInfo)!=null&&_c.showTime),date=localDate&&localDate.isValid()?localDate:dayjs(),localeService=core.useDependency(core.LocaleService);if(!cellData||!rule||!validator)return;const handleSave=__name(async()=>{var _a25,_b2,_c2;if(!date)return;const dateStr=date.format(showTime?"YYYY-MM-DD HH:mm:ss":"YYYY-MM-DD 00:00:00"),serialTime=(_a25=core.numfmt.parseDate(dateStr))==null?void 0:_a25.v,cellStyle=workbook.getStyles().getStyleByCell(cellData),format=(_c2=(_b2=cellStyle==null?void 0:cellStyle.n)==null?void 0:_b2.pattern)!=null?_c2:"",patternType=sheetsNumfmt.getPatternType(format);rule.errorStyle!==core.DataValidationErrorStyle.STOP||await validator.validator({value:serialTime,unitId,subUnitId,row,column:col,worksheet,workbook,interceptValue:dateStr.replace("Z","").replace("T"," "),t:core.CellValueType.NUMBER},rule)?(commandService.executeCommand(sheets.SetRangeValuesCommand.id,{unitId,subUnitId,range:{startColumn:col,endColumn:col,startRow:row,endRow:row},value:{v:serialTime,t:2,p:null,f:null,si:null,s:{n:{pattern:showTime?patternType==="datetime"?format:"yyyy-MM-dd hh:mm:ss":patternType==="date"?format:"yyyy-MM-dd"}}}}),hideFn()):rejectInputController.showReject(validator.getRuleFinalError(rule))},"handleSave");return jsxRuntimeExports.jsxs("div",{className:styles$5.dvDateDropdown,children:[jsxRuntimeExports.jsx(design.DatePanel,{defaultValue:date,pickerValue:date,showTime:showTime||void 0,onSelect:__name(async newValue=>{setLocalDate(newValue)},"onSelect"),onPanelChange:__name(value=>{setLocalDate(value)},"onPanelChange"),disabledDate:__name(current=>!core.numfmt.parseDate(current.format("YYYY-MM-DD")),"disabledDate")}),jsxRuntimeExports.jsx("div",{className:styles$5.dvDateDropdownBtns,children:jsxRuntimeExports.jsx(design.Button,{size:"small",type:"primary",onClick:handleSave,disabled:!date.isValid(),children:localeService.t("dataValidation.alert.ok")})})]})}__name(DateDropdown,"DateDropdown");function CellDropdown(){const dropdownManagerService=core.useDependency(DataValidationDropdownManagerService),activeDropdown=ui.useObservable(dropdownManagerService.activeDropdown$,dropdownManagerService.activeDropdown),componentManager=core.useDependency(ui.ComponentManager);if(!activeDropdown)return null;const{location,componentKey}=activeDropdown,Component=componentManager.get(componentKey),key=`${location.unitId}-${location.subUnitId}-${location.row}-${location.col}`;if(!Component)return null;const hideFn=__name(()=>{dropdownManagerService.hideDropdown()},"hideFn");return jsxRuntimeExports.jsx(Component,{location,hideFn},key)}__name(CellDropdown,"CellDropdown");const DROP_DOWN_KEY="sheet.ui.dropdown";var __defProp$e=Object.defineProperty,__getOwnPropDesc$e=Object.getOwnPropertyDescriptor,__decorateClass$e=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$e(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$e(target,key,result),result},"__decorateClass$e"),__decorateParam$e=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$e"),_a8;let DataValidationDropdownManagerService=(_a8=class extends core.Disposable{constructor(_canvasPopupManagerService,_univerInstanceService,_dataValidatorRegistryService,_zenZoneService,_renderManagerService,_dataValidationModel,_sheetsSelectionsService){super();__publicField(this,"_activeDropdown");__publicField(this,"_activeDropdown$",new rxjs.Subject);__publicField(this,"_currentPopup",null);__publicField(this,"activeDropdown$",this._activeDropdown$.asObservable());__publicField(this,"_zenVisible",!1);this._canvasPopupManagerService=_canvasPopupManagerService,this._univerInstanceService=_univerInstanceService,this._dataValidatorRegistryService=_dataValidatorRegistryService,this._zenZoneService=_zenZoneService,this._renderManagerService=_renderManagerService,this._dataValidationModel=_dataValidationModel,this._sheetsSelectionsService=_sheetsSelectionsService,this._init(),this._initSelectionChange(),this.disposeWithMe(()=>{this._activeDropdown$.complete()})}get activeDropdown(){return this._activeDropdown}_init(){this.disposeWithMe(this._zenZoneService.visible$.subscribe(visible=>{this._zenVisible=visible,visible&&this.hideDropdown()}))}_getDropdownByCell(unitId,subUnitId,row,col){const workbook=unitId?this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET):this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const worksheet=subUnitId?workbook.getSheetBySheetId(subUnitId):workbook.getActiveSheet();if(!worksheet)return;const rule=this._dataValidationModel.getRuleByLocation(workbook.getUnitId(),worksheet.getSheetId(),row,col);if(!rule)return;const validator=this._dataValidatorRegistryService.getValidatorItem(rule.type);return validator==null?void 0:validator.dropdown}_initSelectionChange(){this.disposeWithMe(this._sheetsSelectionsService.selectionMoveEnd$.subscribe(selections=>{selections&&selections.every(selection=>!(selection.primary&&this._getDropdownByCell(selection.primary.unitId,selection.primary.sheetId,selection.primary.actualRow,selection.primary.actualColumn)))&&this.hideDropdown()}))}showDropdown(param,closeOnOutSide=!0){const{location}=param,{row,col,unitId,subUnitId}=location;if(this._currentPopup&&this._currentPopup.dispose(),this._zenVisible)return;this._activeDropdown=param,this._activeDropdown$.next(this._activeDropdown);const currentRender=this._renderManagerService.getRenderById(core.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY),popupDisposable=this._canvasPopupManagerService.attachPopupToCell(row,col,{componentKey:DROP_DOWN_KEY,onClickOutside:__name(()=>{closeOnOutSide&&this.hideDropdown()},"onClickOutside"),offset:[0,3],excludeOutside:[currentRender==null?void 0:currentRender.engine.getCanvasElement()].filter(Boolean)},unitId,subUnitId);if(!popupDisposable)throw new Error("[DataValidationDropdownManagerService]: cannot show dropdown!");const disposableCollection=new core.DisposableCollection;disposableCollection.add(popupDisposable),disposableCollection.add({dispose:__name(()=>{var _a24,_b;(_b=(_a24=this._activeDropdown)==null?void 0:_a24.onHide)==null||_b.call(_a24)},"dispose")}),this._currentPopup=disposableCollection}hideDropdown(){this._activeDropdown&&(this._currentPopup&&this._currentPopup.dispose(),this._currentPopup=null,this._activeDropdown=null,this._activeDropdown$.next(null))}showDataValidationDropdown(unitId,subUnitId,row,col,onHide){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const worksheet=workbook.getSheetBySheetId(subUnitId);if(!worksheet)return;const rule=this._dataValidationModel.getRuleByLocation(workbook.getUnitId(),worksheet.getSheetId(),row,col);if(!rule)return;const validator=this._dataValidatorRegistryService.getValidatorItem(rule.type);if(!validator||!validator.dropdown){this.hideDropdown();return}this.showDropdown({location:{workbook,worksheet,row,col,unitId,subUnitId},componentKey:validator.dropdown,onHide})}},__name(_a8,"DataValidationDropdownManagerService"),_a8);DataValidationDropdownManagerService=__decorateClass$e([__decorateParam$e(0,core.Inject(sheetsUi.SheetCanvasPopManagerService)),__decorateParam$e(1,core.IUniverInstanceService),__decorateParam$e(2,core.Inject(dataValidation.DataValidatorRegistryService)),__decorateParam$e(3,ui.IZenZoneService),__decorateParam$e(4,engineRender.IRenderManagerService),__decorateParam$e(5,core.Inject(exports.SheetDataValidationModel)),__decorateParam$e(6,core.Inject(sheets.SheetsSelectionsService))],DataValidationDropdownManagerService);var __defProp$d=Object.defineProperty,__getOwnPropDesc$d=Object.getOwnPropertyDescriptor,__decorateClass$d=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$d(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$d(target,key,result),result},"__decorateClass$d"),__decorateParam$d=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$d"),_a9;let DataValidationPanelService=(_a9=class extends core.Disposable{constructor(_univerInstanceService,_sidebarService){super();__publicField(this,"_open$",new rxjs.BehaviorSubject(!1));__publicField(this,"open$",this._open$.pipe(rxjs.distinctUntilChanged()));__publicField(this,"_activeRule");__publicField(this,"_activeRule$",new rxjs.BehaviorSubject(void 0));__publicField(this,"activeRule$",this._activeRule$.asObservable());__publicField(this,"_closeDisposable",null);this._univerInstanceService=_univerInstanceService,this._sidebarService=_sidebarService,this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_SHEET).pipe(rxjs.filter(sheet=>!sheet)).subscribe(()=>{this.close()}))}get activeRule(){return this._activeRule}get isOpen(){return this._open$.getValue()}dispose(){var _a24;super.dispose(),this._open$.next(!1),this._open$.complete(),this._activeRule$.complete(),(_a24=this._closeDisposable)==null||_a24.dispose()}open(){this._open$.next(!0)}close(){var _a24;this._open$.next(!1),(_a24=this._closeDisposable)==null||_a24.dispose()}setCloseDisposable(disposable){this._closeDisposable=core.toDisposable(()=>{disposable.dispose(),this._closeDisposable=null})}setActiveRule(rule){this._activeRule=rule,this._activeRule$.next(rule)}},__name(_a9,"DataValidationPanelService"),_a9);DataValidationPanelService=__decorateClass$d([__decorateParam$d(0,core.IUniverInstanceService),__decorateParam$d(1,ui.ISidebarService)],DataValidationPanelService);const DATA_VALIDATION_PANEL="DataValidationPanel",OpenValidationPanelOperation={id:"data-validation.operation.open-validation-panel",type:core.CommandType.OPERATION,handler(accessor,params){if(!params)return!1;const{ruleId,isAdd}=params,dataValidationPanelService=accessor.get(DataValidationPanelService),dataValidationModel=accessor.get(dataValidation.DataValidationModel),univerInstanceService=accessor.get(core.IUniverInstanceService),sidebarService=accessor.get(ui.ISidebarService),target=sheets.getSheetCommandTarget(univerInstanceService);if(!target)return!1;const{unitId,subUnitId}=target,rule=ruleId?dataValidationModel.getRuleById(unitId,subUnitId,ruleId):void 0;dataValidationPanelService.open(),dataValidationPanelService.setActiveRule(rule&&{unitId,subUnitId,rule});const disposable=sidebarService.open({header:{title:isAdd?"dataValidation.panel.addTitle":"dataValidation.panel.title"},children:{label:DATA_VALIDATION_PANEL},width:312,onClose:__name(()=>dataValidationPanelService.close(),"onClose")});return dataValidationPanelService.setCloseDisposable(disposable),!0}},CloseValidationPanelOperation={id:"data-validation.operation.close-validation-panel",type:core.CommandType.OPERATION,handler(accessor){return accessor.get(DataValidationPanelService).close(),!0}},ToggleValidationPanelOperation={id:"data-validation.operation.toggle-validation-panel",type:core.CommandType.OPERATION,handler(accessor){const commandService=accessor.get(core.ICommandService),dataValidationPanelService=accessor.get(DataValidationPanelService);return dataValidationPanelService.open(),dataValidationPanelService.isOpen?commandService.executeCommand(CloseValidationPanelOperation.id):commandService.executeCommand(OpenValidationPanelOperation.id),!0}},ShowDataValidationDropdown={type:core.CommandType.OPERATION,id:"sheet.operation.show-data-validation-dropdown",handler(accessor,params){if(!params)return!1;const dataValidationDropdownManagerService=accessor.get(DataValidationDropdownManagerService),{unitId,subUnitId,row,column}=params,activeDropdown=dataValidationDropdownManagerService.activeDropdown,currLoc=activeDropdown==null?void 0:activeDropdown.location;return currLoc&&currLoc.unitId===unitId&&currLoc.subUnitId===subUnitId&&currLoc.row===row&&currLoc.col===column||dataValidationDropdownManagerService.showDataValidationDropdown(unitId,subUnitId,row,column),!0}},HideDataValidationDropdown={type:core.CommandType.OPERATION,id:"sheet.operation.hide-data-validation-dropdown",handler(accessor,params){return params?(accessor.get(DataValidationDropdownManagerService).hideDropdown(),!0):!1}},PLUGIN_CONFIG_KEY="sheets-data-validation.config",defaultPluginConfig={},dvListDropdown="univer-dv-list-dropdown",dvListDropdownTitle="univer-dv-list-dropdown-title",dvListDropdownList="univer-dv-list-dropdown-list",dvListDropdownListContainer="univer-dv-list-dropdown-list-container",dvListDropdownSelectedIcon="univer-dv-list-dropdown-selected-icon",dvListDropdownItemContainer="univer-dv-list-dropdown-item-container",dvListDropdownItem="univer-dv-list-dropdown-item",dvListDropdownSplit="univer-dv-list-dropdown-split",dvListDropdownEdit="univer-dv-list-dropdown-edit",styles$4={dvListDropdown,dvListDropdownTitle,dvListDropdownList,dvListDropdownListContainer,dvListDropdownSelectedIcon,dvListDropdownItemContainer,dvListDropdownItem,dvListDropdownSplit,dvListDropdownEdit},SelectList=__name(props=>{var _a24,_b;const{value,onChange,multiple,options,title,onEdit,style,filter,location}=props,localeService=core.useDependency(core.LocaleService),configService=core.useDependency(core.IConfigService),lowerFilter=filter==null?void 0:filter.toLowerCase(),{row,col,unitId,subUnitId}=location,filteredOptions=options.filter(item=>lowerFilter?item.label.toLowerCase().includes(lowerFilter):!0),showEditOnDropdown=(_b=(_a24=configService.getConfig(PLUGIN_CONFIG_KEY))==null?void 0:_a24.showEditOnDropdown)!=null?_b:!0,sheetPermissionInterceptorBaseController=core.useDependency(sheetsUi.SheetPermissionInterceptorBaseController),hasPermission=React.useMemo(()=>sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetEditPermission]},[{startColumn:col,startRow:row,endColumn:col,endRow:row}],unitId,subUnitId),[sheetPermissionInterceptorBaseController,col,row,unitId,subUnitId]);return jsxRuntimeExports.jsxs("div",{className:styles$4.dvListDropdown,style,children:[jsxRuntimeExports.jsx("div",{className:styles$4.dvListDropdownTitle,children:title}),jsxRuntimeExports.jsx("div",{className:styles$4.dvListDropdownList,children:jsxRuntimeExports.jsx(design.Scrollbar,{children:jsxRuntimeExports.jsx("div",{className:styles$4.dvListDropdownListContainer,children:filteredOptions.map((item,i)=>{const selected=value.indexOf(item.value)>-1,handleClick=__name(()=>{let set;selected?set=new Set(value.filter(sub=>sub!==item.value)):set=new Set(multiple?[...value,item.value]:[item.value]);const newValue=[];options.forEach(opt=>{set.has(opt.value)&&newValue.push(opt.value)}),onChange(newValue)},"handleClick"),index=item.label.toLocaleLowerCase().indexOf(lowerFilter);return jsxRuntimeExports.jsxs("div",{className:styles$4.dvListDropdownItemContainer,onClick:handleClick,children:[jsxRuntimeExports.jsx("div",{className:styles$4.dvListDropdownItem,style:{background:item.color||DROP_DOWN_DEFAULT_COLOR},children:lowerFilter&&item.label.toLowerCase().includes(lowerFilter)?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("span",{children:item.label.substring(0,index)}),jsxRuntimeExports.jsx("span",{style:{fontWeight:"bold"},children:item.label.substring(index,index+lowerFilter.length)}),jsxRuntimeExports.jsx("span",{children:item.label.substring(index+lowerFilter.length)})]}):item.label}),jsxRuntimeExports.jsx("div",{className:styles$4.dvListDropdownSelectedIcon,children:selected?jsxRuntimeExports.jsx(CheckMarkSingle,{}):null})]},i)})})},filter)}),showEditOnDropdown&&hasPermission?jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx("div",{className:styles$4.dvListDropdownSplit}),jsxRuntimeExports.jsx("div",{className:styles$4.dvListDropdownEdit,children:jsxRuntimeExports.jsx("a",{onClick:onEdit,children:localeService.t("dataValidation.list.edit")})})]}):null]})},"SelectList");function ListDropDown(props){var _a24,_b;const{location,hideFn}=props,{worksheet,row,col,unitId,subUnitId}=location,dataValidationModel=core.useDependency(dataValidation.DataValidationModel),[editingText,setEditingText]=React.useState(""),commandService=core.useDependency(core.ICommandService),localeService=core.useDependency(core.LocaleService),[localValue,setLocalValue]=React.useState(""),editorBridgeService=core.useDependency(sheetsUi.IEditorBridgeService),instanceService=core.useDependency(core.IUniverInstanceService),ruleChange$=React.useMemo(()=>dataValidationModel.ruleChange$.pipe(rxjs.debounceTime(16)),[]);ui.useObservable(ruleChange$);const anchorRect=design.RectPopup.useContext(),cellWidth=anchorRect.right-anchorRect.left;if(React.useEffect(()=>{const dispose=commandService.onCommandExecuted(command=>{var _a25,_b2;if(command.id===docs.RichTextEditingMutation.id){const params=command.params,{unitId:unitId2}=params,unit=instanceService.getUnit(unitId2,core.UniverInstanceType.UNIVER_DOC);if(!unit)return;const text=core.BuildTextUtils.transform.getPlainText((_b2=(_a25=unit.getSnapshot().body)==null?void 0:_a25.dataStream)!=null?_b2:"");setEditingText(text)}});return()=>{dispose.dispose()}},[commandService,instanceService]),!worksheet)return null;const cellData=worksheet.getCell(row,col),rule=(_a24=cellData==null?void 0:cellData.dataValidation)==null?void 0:_a24.rule,validator=(_b=cellData==null?void 0:cellData.dataValidation)==null?void 0:_b.validator,showColor=(rule==null?void 0:rule.renderMode)===core.DataValidationRenderMode.CUSTOM||(rule==null?void 0:rule.renderMode)===void 0;if(!cellData||!rule||!validator||validator.id.indexOf(core.DataValidationType.LIST)!==0)return;const multiple=rule.type===core.DataValidationType.LIST_MULTIPLE,list=validator.getListWithColor(rule,unitId,subUnitId),cellStr=localValue||getDataValidationCellValue(worksheet.getCellRaw(row,col)),value=deserializeListOptions(cellStr),handleEdit=__name(()=>{commandService.executeCommand(OpenValidationPanelOperation.id,{ruleId:rule.uid}),hideFn()},"handleEdit"),options=list.map(item=>({label:item.label,value:item.label,color:showColor?item.color:"transparent"}));return jsxRuntimeExports.jsx(SelectList,{style:{minWidth:cellWidth,maxWidth:Math.max(cellWidth,200)},title:multiple?localeService.t("dataValidation.listMultiple.dropdown"):localeService.t("dataValidation.list.dropdown"),value,multiple,onChange:__name(newValue=>{const str=serializeListOptions(newValue),params={unitId,subUnitId,range:{startColumn:col,endColumn:col,startRow:row,endRow:row},value:{v:str,p:null,f:null,si:null}};editorBridgeService.isVisible()&&editorBridgeService.changeVisible({visible:!1,keycode:ui.KeyCode.ESC,eventType:engineRender.DeviceInputEventType.Keyboard,unitId}),commandService.executeCommand(sheets.SetRangeValuesCommand.id,params),setLocalValue(str),multiple||hideFn()},"onChange"),options,onEdit:handleEdit,filter:editingText,location})}__name(ListDropDown,"ListDropDown");const dataValidationOptionsButton="univer-data-validation-options-button",dataValidationOptionsButtonIcon="univer-data-validation-options-button-icon",styles$3={dataValidationOptionsButton,dataValidationOptionsButtonIcon};function DataValidationOptions(props){var _a24;const localeService=core.useDependency(core.LocaleService),componentManager=core.useDependency(ui.ComponentManager),{value,onChange,extraComponent}=props,[show,setShow]=React.useState(!1),ExtraOptions=extraComponent?componentManager.get(extraComponent):null;return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsxs("div",{className:styles$3.dataValidationOptionsButton,onClick:__name(()=>setShow(!show),"onClick"),children:[localeService.t("dataValidation.panel.options"),show?jsxRuntimeExports.jsx(MoreUpSingle,{className:styles$3.dataValidationOptionsButtonIcon}):jsxRuntimeExports.jsx(MoreDownSingle,{className:styles$3.dataValidationOptionsButtonIcon})]}),show&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[ExtraOptions?jsxRuntimeExports.jsx(ExtraOptions,{value,onChange}):null,jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.panel.invalid"),children:jsxRuntimeExports.jsxs(design.RadioGroup,{value:`${(_a24=value.errorStyle)!=null?_a24:core.DataValidationErrorStyle.WARNING}`,onChange:__name(errorStyle=>onChange({...value,errorStyle:+errorStyle}),"onChange"),children:[jsxRuntimeExports.jsx(design.Radio,{value:`${core.DataValidationErrorStyle.WARNING}`,children:localeService.t("dataValidation.panel.showWarning")}),jsxRuntimeExports.jsx(design.Radio,{value:`${core.DataValidationErrorStyle.STOP}`,children:localeService.t("dataValidation.panel.rejectInput")})]})}),jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.panel.messageInfo"),children:jsxRuntimeExports.jsx(design.Checkbox,{checked:value.showErrorMessage,onChange:__name(()=>onChange({...value,showErrorMessage:!value.showErrorMessage}),"onChange"),children:localeService.t("dataValidation.panel.showInfo")})}),value.showErrorMessage?jsxRuntimeExports.jsx(design.FormLayout,{children:jsxRuntimeExports.jsx(design.Input,{value:value.error,onChange:__name(error=>onChange({...value,error}),"onChange")})}):null]})]})}__name(DataValidationOptions,"DataValidationOptions");const dataValidationDetail="univer-data-validation-detail",dataValidationDetailFormItem="univer-data-validation-detail-form-item",dataValidationDetailButtons="univer-data-validation-detail-buttons",dataValidationDetailButton="univer-data-validation-detail-button",styles$2={dataValidationDetail,dataValidationDetailFormItem,dataValidationDetailButtons,dataValidationDetailButton},debounceExecuteFactory=__name(commandService=>core.debounce(async(id,params,options,callback)=>{const res=await commandService.executeCommand(id,params,options);callback==null||callback(res)},1e3),"debounceExecuteFactory");function DataValidationDetail(){const[key,setKey]=React.useState(0),dataValidationPanelService=core.useDependency(DataValidationPanelService),activeRuleInfo=ui.useObservable(dataValidationPanelService.activeRule$,dataValidationPanelService.activeRule),{unitId,subUnitId,rule}=activeRuleInfo||{},ruleId=rule.uid,validatorService=core.useDependency(dataValidation.DataValidatorRegistryService),componentManager=core.useDependency(ui.ComponentManager),commandService=core.useDependency(core.ICommandService),dataValidationModel=core.useDependency(dataValidation.DataValidationModel),localeService=core.useDependency(core.LocaleService),[localRule,setLocalRule]=React.useState(rule),validator=validatorService.getValidatorItem(localRule.type),[showError,setShowError]=React.useState(!1),validators=validatorService.getValidatorsByScope(dataValidation.DataValidatorRegistryScope.SHEET),[localRanges,setLocalRanges]=React.useState(()=>localRule.ranges.map(i=>({unitId:"",sheetId:"",range:i}))),debounceExecute=React.useMemo(()=>debounceExecuteFactory(commandService),[commandService]);if(React.useEffect(()=>{commandService.onCommandExecuted(commandInfo=>{(commandInfo.id===core.UndoCommand.id||commandInfo.id===core.RedoCommand.id)&&setTimeout(()=>{const activeRule=dataValidationModel.getRuleById(unitId,subUnitId,ruleId);setKey(k2=>k2+1),activeRule&&(setLocalRule(activeRule),setLocalRanges(activeRule.ranges.map(i=>({unitId:"",sheetId:"",range:i}))))},20)})},[commandService,dataValidationModel,ruleId,subUnitId,unitId]),!validator)return null;const operators=validator.operators,operatorNames=validator.operatorNames,isTwoFormula=localRule.operator?dataValidation.TWO_FORMULA_OPERATOR_COUNT.includes(localRule.operator):!1,handleOk=__name(()=>{localRule.ranges.length&&(validator.validatorFormula(localRule,unitId,subUnitId).success?dataValidationPanelService.setActiveRule(null):setShowError(!0))},"handleOk"),handleUpdateRuleRanges=ui.useEvent(unitRanges=>{if(core.isUnitRangesEqual(unitRanges,localRanges))return;setLocalRanges(unitRanges);const ranges=unitRanges.filter(i=>(!i.unitId||i.unitId===unitId)&&(!i.sheetId||i.sheetId===subUnitId)).map(i=>i.range);if(setLocalRule({...localRule,ranges}),ranges.length===0)return;const params={unitId,subUnitId,ruleId,ranges};debounceExecute(UpdateSheetDataValidationRangeCommand.id,params)}),handleUpdateRuleSetting=__name(setting=>{if(core.shallowEqual(setting,dataValidation.getRuleSetting(localRule)))return;setLocalRule({...localRule,...setting});const params={unitId,subUnitId,ruleId,setting};debounceExecute(UpdateSheetDataValidationSettingCommand.id,params,void 0)},"handleUpdateRuleSetting"),handleDelete=__name(async()=>{await commandService.executeCommand(RemoveSheetDataValidationCommand.id,{ruleId,unitId,subUnitId}),dataValidationPanelService.setActiveRule(null)},"handleDelete"),baseRule={type:localRule.type,operator:localRule.operator,formula1:localRule.formula1,formula2:localRule.formula2,allowBlank:localRule.allowBlank},handleChangeType=__name(newType=>{const validator2=validatorService.getValidatorItem(newType);if(!validator2)return;const operators2=validator2.operators,rule2=dataValidationModel.getRuleById(unitId,subUnitId,ruleId),newRule=newType===(rule2==null?void 0:rule2.type)||newType.includes("list")&&(rule2!=null&&rule2.type.includes("list"))?{...rule2,type:newType}:{...localRule,type:newType,operator:operators2[0],formula1:void 0,formula2:void 0};setLocalRule(newRule),commandService.executeCommand(UpdateSheetDataValidationSettingCommand.id,{unitId,subUnitId,ruleId:localRule.uid,setting:dataValidation.getRuleSetting(newRule)})},"handleChangeType"),FormulaInput=componentManager.get(validator.formulaInput),rangeStr=React.useMemo(()=>localRanges.map(i=>engineFormula.serializeRange(i.range)).join(","),[]),options=dataValidation.getRuleOptions(localRule),handleUpdateRuleOptions=__name(newOptions=>{core.shallowEqual(newOptions,dataValidation.getRuleOptions(localRule))||(setLocalRule({...localRule,...newOptions}),debounceExecute(UpdateSheetDataValidationOptionsCommand.id,{unitId,subUnitId,ruleId,options:newOptions}))},"handleUpdateRuleOptions");return jsxRuntimeExports.jsxs("div",{className:styles$2.dataValidationDetail,children:[jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.panel.range"),error:localRule.ranges.length?"":localeService.t("dataValidation.panel.rangeError"),children:jsxRuntimeExports.jsx(docsUi.RangeSelector,{className:styles$2.dataValidationDetailFormItem,value:rangeStr,id:core.createInternalEditorID("data-validation-detail"),openForSheetUnitId:unitId,openForSheetSubUnitId:subUnitId,onChange:__name(newRange=>{newRange.some(i=>!core.isValidRange(i.range)||i.range.endColumn<i.range.startColumn||i.range.endRow<i.range.startRow)||handleUpdateRuleRanges(newRange)},"onChange")},key)}),jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.panel.type"),children:jsxRuntimeExports.jsx(design.Select,{options:validators==null?void 0:validators.map(validator2=>({label:localeService.t(validator2.title),value:validator2.id})),value:localRule.type,onChange:handleChangeType,className:styles$2.dataValidationDetailFormItem})}),operators!=null&&operators.length?jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.panel.operator"),children:jsxRuntimeExports.jsx(design.Select,{options:operators.map((op,i)=>({value:`${op}`,label:operatorNames[i]})),value:`${localRule.operator}`,onChange:__name(operator=>{handleUpdateRuleSetting({...baseRule,operator})},"onChange"),className:styles$2.dataValidationDetailFormItem})}):null,FormulaInput?jsxRuntimeExports.jsx(FormulaInput,{isTwoFormula,value:{formula1:localRule.formula1,formula2:localRule.formula2},onChange:__name(value=>{handleUpdateRuleSetting({...baseRule,...value})},"onChange"),showError,validResult:validator.validatorFormula(localRule,unitId,subUnitId),unitId,subUnitId,ruleId},key+localRule.type):null,jsxRuntimeExports.jsx(DataValidationOptions,{value:options,onChange:handleUpdateRuleOptions,extraComponent:validator.optionsInput}),jsxRuntimeExports.jsxs("div",{className:styles$2.dataValidationDetailButtons,children:[jsxRuntimeExports.jsx(design.Button,{className:styles$2.dataValidationDetailButton,onClick:handleDelete,children:localeService.t("dataValidation.panel.removeRule")}),jsxRuntimeExports.jsx(design.Button,{className:styles$2.dataValidationDetailButton,type:"primary",onClick:handleOk,children:localeService.t("dataValidation.panel.done")})]})]})}__name(DataValidationDetail,"DataValidationDetail");const dataValidationItemContainer="univer-data-validation-item-container",dataValidationItemTitle="univer-data-validation-item-title",dataValidationItemContent="univer-data-validation-item-content",dataValidationItemIcon="univer-data-validation-item-icon",styles$1={dataValidationItemContainer,dataValidationItemTitle,dataValidationItemContent,dataValidationItemIcon},DataValidationItem=__name(props=>{const{rule,onClick,unitId,subUnitId,disable}=props,validatorRegistry=core.useDependency(dataValidation.DataValidatorRegistryService),commandService=core.useDependency(core.ICommandService),markSelectionService=core.useDependency(sheetsUi.IMarkSelectionService),validator=validatorRegistry.getValidatorItem(rule.type),ids=React.useRef(),[isHover,setIsHover]=React.useState(!1),handleDelete=__name(e=>{commandService.executeCommand(RemoveSheetDataValidationCommand.id,{ruleId:rule.uid,unitId,subUnitId}),e.stopPropagation()},"handleDelete");return React.useEffect(()=>()=>{var _a24;ids.current&&((_a24=ids.current)==null||_a24.forEach(id=>{id&&markSelectionService.removeShape(id)}))},[markSelectionService]),jsxRuntimeExports.jsxs("div",{className:styles$1.dataValidationItemContainer,onClick,onMouseEnter:__name(()=>{disable||(setIsHover(!0),ids.current=rule.ranges.map(range=>markSelectionService.addShape({range,style:{hasAutoFill:!1,fill:"rgba(73, 184, 17, 0.05)",strokeWidth:1,stroke:"#49B811",widgets:{}},primary:{startColumn:range.startColumn,endColumn:range.endColumn,startRow:range.startRow,endRow:range.endRow,actualRow:range.startRow,actualColumn:range.startColumn,isMerged:!1,isMergedMainCell:!1}})))},"onMouseEnter"),onMouseLeave:__name(()=>{var _a24;setIsHover(!1),(_a24=ids.current)==null||_a24.forEach(id=>{id&&markSelectionService.removeShape(id)}),ids.current=void 0},"onMouseLeave"),children:[jsxRuntimeExports.jsx("div",{className:styles$1.dataValidationItemTitle,children:validator==null?void 0:validator.generateRuleName(rule)}),jsxRuntimeExports.jsx("div",{className:styles$1.dataValidationItemContent,children:rule.ranges.map(range=>engineFormula.serializeRange(range)).join(",")}),isHover?jsxRuntimeExports.jsx("div",{className:styles$1.dataValidationItemIcon,onClick:handleDelete,children:jsxRuntimeExports.jsx(DeleteSingle,{})}):null]})},"DataValidationItem"),dataValidationList="univer-data-validation-list",dataValidationListButtons="univer-data-validation-list-buttons",dataValidationListButton="univer-data-validation-list-button",styles={dataValidationList,dataValidationListButtons,dataValidationListButton};function DataValidationList(){const univerInstanceService=core.useDependency(core.IUniverInstanceService),workbook=ui.useObservable(()=>univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_SHEET),void 0,void 0,[]);return workbook?jsxRuntimeExports.jsx(DataValidationListWithWorkbook,{workbook}):null}__name(DataValidationList,"DataValidationList");function DataValidationListWithWorkbook(props){const sheetDataValidationModel=core.useDependency(exports.SheetDataValidationModel),univerInstanceService=core.useDependency(core.IUniverInstanceService),commandService=core.useDependency(core.ICommandService),injector=core.useDependency(core.Injector),dataValidationPanelService=core.useDependency(DataValidationPanelService),localeService=core.useDependency(core.LocaleService),[rules,setRules]=React.useState([]),{workbook}=props,worksheet=ui.useObservable(workbook.activeSheet$,void 0,!0),unitId=workbook.getUnitId(),subUnitId=worksheet==null?void 0:worksheet.getSheetId();React.useEffect(()=>{setRules(sheetDataValidationModel.getRules(unitId,subUnitId));const subscription=sheetDataValidationModel.ruleChange$.subscribe(change=>{change.unitId===unitId&&change.subUnitId===subUnitId&&setRules(sheetDataValidationModel.getRules(unitId,subUnitId))});return()=>{subscription.unsubscribe()}},[unitId,subUnitId,sheetDataValidationModel]);const handleAddRule=__name(async()=>{const rule=createDefaultNewRule(injector),params={unitId,subUnitId,rule};await commandService.executeCommand(AddSheetDataValidationCommand.id,params),dataValidationPanelService.setActiveRule({unitId,subUnitId,rule})},"handleAddRule"),handleRemoveAll=__name(()=>{commandService.executeCommand(RemoveSheetAllDataValidationCommand.id,{unitId,subUnitId})},"handleRemoveAll"),rulesByPermissionCheck=__name(rules2=>{const workbook2=univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),worksheet2=workbook2.getActiveSheet(),unitId2=workbook2.getUnitId(),subUnitId2=worksheet2.getSheetId();return rules2.map(rule=>sheets.checkRangesEditablePermission(injector,unitId2,subUnitId2,rule.ranges)?{...rule}:{...rule,disable:!0})},"getDvRulesByPermissionCorrect")(rules),hasDisableRule=rulesByPermissionCheck==null?void 0:rulesByPermissionCheck.some(rule=>rule.disable);return jsxRuntimeExports.jsxs("div",{className:styles.dataValidationList,children:[rulesByPermissionCheck==null?void 0:rulesByPermissionCheck.map(rule=>{var _a24;return jsxRuntimeExports.jsx(DataValidationItem,{unitId,subUnitId,onClick:__name(()=>{rule.disable||dataValidationPanelService.setActiveRule({unitId,subUnitId,rule})},"onClick"),rule,disable:(_a24=rule.disable)!=null?_a24:!1},rule.uid)}),jsxRuntimeExports.jsxs("div",{className:styles.dataValidationListButtons,children:[rules.length&&!hasDisableRule?jsxRuntimeExports.jsx(design.Button,{className:styles.dataValidationListButton,onClick:handleRemoveAll,children:localeService.t("dataValidation.panel.removeAll")}):null,jsxRuntimeExports.jsx(design.Button,{className:styles.dataValidationListButton,type:"primary",onClick:handleAddRule,children:localeService.t("dataValidation.panel.add")})]})]})}__name(DataValidationListWithWorkbook,"DataValidationListWithWorkbook");const DataValidationPanel=__name(()=>{const dataValidationPanelService=core.useDependency(DataValidationPanelService),activeRule=ui.useObservable(dataValidationPanelService.activeRule$,dataValidationPanelService.activeRule);return activeRule?jsxRuntimeExports.jsx(DataValidationDetail,{},activeRule.rule.uid):jsxRuntimeExports.jsx(DataValidationList,{})},"DataValidationPanel"),LIST_DROPDOWN_KEY="data-validation.list.dropdown",DATE_DROPDOWN_KEY="data-validation.date.dropdown",DATE_SHOW_TIME_OPTION="DATE_SHOW_TIME_OPTION";function DateShowTimeOption(props){var _a24;const{value,onChange}=props,localeService=core.useDependency(core.LocaleService);return jsxRuntimeExports.jsx(design.FormLayout,{children:jsxRuntimeExports.jsx(design.Checkbox,{checked:(_a24=value.bizInfo)==null?void 0:_a24.showTime,onChange:__name(showTime=>{onChange({...value,bizInfo:{...value.bizInfo,showTime}})},"onChange"),children:localeService.t("dataValidation.showTime.label")})})}__name(DateShowTimeOption,"DateShowTimeOption");DateShowTimeOption.componentKey=DATE_SHOW_TIME_OPTION;const FORMULA1$1="{FORMULA1}",FORMULA2$1="{FORMULA2}",transformDate2SerialNumber=__name(value=>{var _a24,_b;if(value==null||typeof value=="boolean")return;if(typeof value=="number"||!Number.isNaN(+value))return+value;const v=(_a24=core.numfmt.parseDate(value))==null?void 0:_a24.v;return core.Tools.isDefine(v)?v:(_b=core.numfmt.parseDate(dayjs(value).format("YYYY-MM-DD HH:mm:ss")))==null?void 0:_b.v},"transformDate2SerialNumber"),_DateValidator=class _DateValidator extends dataValidation.BaseDataValidator{constructor(){super(...arguments);__publicField(this,"id",core.DataValidationType.DATE);__publicField(this,"title","dataValidation.date.title");__publicField(this,"operators",[core.DataValidationOperator.BETWEEN,core.DataValidationOperator.EQUAL,core.DataValidationOperator.GREATER_THAN,core.DataValidationOperator.GREATER_THAN_OR_EQUAL,core.DataValidationOperator.LESS_THAN,core.DataValidationOperator.LESS_THAN_OR_EQUAL,core.DataValidationOperator.NOT_BETWEEN,core.DataValidationOperator.NOT_EQUAL]);__publicField(this,"scopes",["sheet"]);__publicField(this,"formulaInput",BASE_FORMULA_INPUT_NAME);__publicField(this,"optionsInput",DateShowTimeOption.componentKey);__publicField(this,"dropdown",DATE_DROPDOWN_KEY);__publicField(this,"_formulaService",this.injector.get(exports.DataValidationFormulaService))}async parseFormula(rule,unitId,subUnitId){var _a24,_b;const results=await this._formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid),{formula1,formula2}=rule;return{formula1:transformDate2SerialNumber(core.isFormulaString(formula1)?getFormulaResult((_a24=results==null?void 0:results[0])==null?void 0:_a24.result):formula1),formula2:transformDate2SerialNumber(core.isFormulaString(formula2)?getFormulaResult((_b=results==null?void 0:results[1])==null?void 0:_b.result):formula2)}}parseFormulaSync(rule,unitId,subUnitId){var _a24,_b;const results=this._formulaService.getRuleFormulaResultSync(unitId,subUnitId,rule.uid),{formula1,formula2}=rule;return{formula1:transformDate2SerialNumber(core.isFormulaString(formula1)?getFormulaResult((_a24=results==null?void 0:results[0])==null?void 0:_a24.result):formula1),formula2:transformDate2SerialNumber(core.isFormulaString(formula2)?getFormulaResult((_b=results==null?void 0:results[1])==null?void 0:_b.result):formula2)}}async isValidType(info){const{interceptValue,value}=info;return typeof value=="number"&&typeof interceptValue=="string"?!0:typeof interceptValue=="string"?!!core.numfmt.parseDate(interceptValue):!1}_validatorSingleFormula(formula){return!core.Tools.isBlank(formula)&&(core.isFormulaString(formula)||!Number.isNaN(+formula)||!!(formula&&core.numfmt.parseDate(formula)))}validatorFormula(rule,unitId,subUnitId){const operator=rule.operator;if(!operator)return{success:!1};const formula1Success=this._validatorSingleFormula(rule.formula1),errorMsg=this.localeService.t("dataValidation.validFail.date");if(TWO_FORMULA_OPERATOR_COUNT.includes(operator)){const formula2Success=this._validatorSingleFormula(rule.formula2);return{success:formula1Success&&formula2Success,formula1:formula1Success?void 0:errorMsg,formula2:formula2Success?void 0:errorMsg}}return{success:formula1Success,formula1:formula1Success?void 0:errorMsg}}normalizeFormula(rule,_unitId,_subUnitId){const{formula1,formula2,bizInfo}=rule,normlizeSingleFormula=__name(formula=>{var _a24;if(!formula)return formula;let date;if(!Number.isNaN(+formula))date=core.numfmt.dateFromSerial(+formula);else{const res=(_a24=core.numfmt.parseDate(formula))==null?void 0:_a24.v;if(res==null)return"";date=core.numfmt.dateFromSerial(res)}return dayjs(`${date[0]}/${date[1]}/${date[2]} ${date[3]}:${date[4]}:${date[5]}`).format(bizInfo!=null&&bizInfo.showTime?"YYYY-MM-DD HH:mm:ss":"YYYY-MM-DD")},"normlizeSingleFormula");return{formula1:core.isFormulaString(formula1)?formula1:normlizeSingleFormula(`${formula1}`),formula2:core.isFormulaString(formula2)?formula2:normlizeSingleFormula(`${formula2}`)}}transform(cellInfo,_formula,_rule){const{value}=cellInfo;return{...cellInfo,value:transformDate2SerialNumber(value)}}async validatorIsEqual(cellInfo,formula,rule){const{formula1}=formula,{value:cellValue}=cellInfo;return Number.isNaN(formula1)?!0:cellValue===formula1}async validatorIsNotEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value!==formula1}async validatorIsBetween(cellInfo,formula,_rule){const{formula1,formula2}=formula;if(Number.isNaN(formula1)||Number.isNaN(formula2))return!0;const start=Math.min(formula1,formula2),end=Math.max(formula1,formula2);return cellInfo.value>=start&&cellInfo.value<=end}async validatorIsNotBetween(cellInfo,formula,_rule){const{formula1,formula2}=formula;if(Number.isNaN(formula1)||Number.isNaN(formula2))return!0;const start=Math.min(formula1,formula2),end=Math.max(formula1,formula2);return cellInfo.value<start||cellInfo.value>end}async validatorIsGreaterThan(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value>formula1}async validatorIsGreaterThanOrEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value>=formula1}async validatorIsLessThan(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value<formula1}async validatorIsLessThanOrEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value<=formula1}get operatorNames(){return this.operators.map(operator=>this.localeService.t(DateOperatorNameMap[operator]))}generateRuleName(rule){var _a24,_b;if(!rule.operator)return this.titleStr;const ruleName=this.localeService.t(DateOperatorTitleMap[rule.operator]).replace(FORMULA1$1,(_a24=rule.formula1)!=null?_a24:"").replace(FORMULA2$1,(_b=rule.formula2)!=null?_b:"");return`${this.titleStr} ${ruleName}`}generateRuleErrorMessage(rule){var _a24,_b;return rule.operator?`${this.localeService.t(DateOperatorErrorTitleMap[rule.operator]).replace(FORMULA1$1,(_a24=rule.formula1)!=null?_a24:"").replace(FORMULA2$1,(_b=rule.formula2)!=null?_b:"")}`:this.titleStr}};__name(_DateValidator,"DateValidator");let DateValidator=_DateValidator;function getCellValueNumber(cellValue){let str=cellValue;return typeof cellValue=="string"?((cellValue.startsWith("¥")||cellValue.startsWith("$"))&&(str=cellValue.slice(1)),+str):+cellValue}__name(getCellValueNumber,"getCellValueNumber");const _DecimalValidator=class _DecimalValidator extends dataValidation.BaseDataValidator{constructor(){super(...arguments);__publicField(this,"_formulaService",this.injector.get(exports.DataValidationFormulaService));__publicField(this,"id",core.DataValidationType.DECIMAL);__publicField(this,"title","dataValidation.decimal.title");__publicField(this,"operators",[core.DataValidationOperator.BETWEEN,core.DataValidationOperator.EQUAL,core.DataValidationOperator.GREATER_THAN,core.DataValidationOperator.GREATER_THAN_OR_EQUAL,core.DataValidationOperator.LESS_THAN,core.DataValidationOperator.LESS_THAN_OR_EQUAL,core.DataValidationOperator.NOT_BETWEEN,core.DataValidationOperator.NOT_EQUAL]);__publicField(this,"scopes",["sheet"]);__publicField(this,"formulaInput",BASE_FORMULA_INPUT_NAME);__publicField(this,"dropDownInput")}_isFormulaOrNumber(formula){return!core.Tools.isBlank(formula)&&(core.isFormulaString(formula)||!Number.isNaN(+formula))}async isValidType(cellInfo,formula,rule){const{value:cellValue}=cellInfo;return!Number.isNaN(getCellValueNumber(cellValue))}transform(cellInfo,formula,rule){const{value:cellValue}=cellInfo;return{...cellInfo,value:getCellValueNumber(cellValue)}}_parseNumber(formula){return formula==null?Number.NaN:+formula}async parseFormula(rule,unitId,subUnitId){var _a24,_b,_c,_d,_e,_f,_g,_h;const formulaInfo=await this._formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid),{formula1,formula2}=rule;return{formula1:this._parseNumber(core.isFormulaString(formula1)?(_d=(_c=(_b=(_a24=formulaInfo==null?void 0:formulaInfo[0])==null?void 0:_a24.result)==null?void 0:_b[0])==null?void 0:_c[0])==null?void 0:_d.v:formula1),formula2:this._parseNumber(core.isFormulaString(formula2)?(_h=(_g=(_f=(_e=formulaInfo==null?void 0:formulaInfo[1])==null?void 0:_e.result)==null?void 0:_f[0])==null?void 0:_g[0])==null?void 0:_h.v:formula2)}}validatorFormula(rule,unitId,subUnitId){const operator=rule.operator;if(!operator)return{success:!1};const formula1Success=core.Tools.isDefine(rule.formula1)&&this._isFormulaOrNumber(rule.formula1),formula2Success=core.Tools.isDefine(rule.formula2)&&this._isFormulaOrNumber(rule.formula2),isTwoFormula=TWO_FORMULA_OPERATOR_COUNT.includes(operator),errorMsg=this.localeService.t("dataValidation.validFail.number");return isTwoFormula?{success:formula1Success&&formula2Success,formula1:formula1Success?void 0:errorMsg,formula2:formula2Success?void 0:errorMsg}:{success:formula1Success,formula1:formula1Success?"":errorMsg}}async validatorIsEqual(cellInfo,formula,rule){const{formula1}=formula,{value:cellValue}=cellInfo;return Number.isNaN(formula1)?!0:cellValue===formula1}async validatorIsNotEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value!==formula1}async validatorIsBetween(cellInfo,formula,_rule){const{formula1,formula2}=formula;if(Number.isNaN(formula1)||Number.isNaN(formula2))return!0;const start=Math.min(formula1,formula2),end=Math.max(formula1,formula2);return cellInfo.value>=start&&cellInfo.value<=end}async validatorIsNotBetween(cellInfo,formula,_rule){const{formula1,formula2}=formula;if(Number.isNaN(formula1)||Number.isNaN(formula2))return!0;const start=Math.min(formula1,formula2),end=Math.max(formula1,formula2);return cellInfo.value<start||cellInfo.value>end}async validatorIsGreaterThan(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value>formula1}async validatorIsGreaterThanOrEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value>=formula1}async validatorIsLessThan(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value<formula1}async validatorIsLessThanOrEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value<=formula1}};__name(_DecimalValidator,"DecimalValidator");let DecimalValidator=_DecimalValidator;const LIST_RENDER_MODE_OPTION_INPUT="LIST_RENDER_MODE_OPTION_INPUT";function ListRenderModeInput(props){var _a24;const{value,onChange}=props,localeService=core.useDependency(core.LocaleService);return jsxRuntimeExports.jsx(design.FormLayout,{label:localeService.t("dataValidation.renderMode.label"),children:jsxRuntimeExports.jsxs(design.RadioGroup,{value:`${(_a24=value.renderMode)!=null?_a24:core.DataValidationRenderMode.CUSTOM}`,onChange:__name(renderMode=>onChange({...value,renderMode:+renderMode}),"onChange"),children:[jsxRuntimeExports.jsx(design.Radio,{value:`${core.DataValidationRenderMode.CUSTOM}`,children:localeService.t("dataValidation.renderMode.chip")}),jsxRuntimeExports.jsx(design.Radio,{value:`${core.DataValidationRenderMode.ARROW}`,children:localeService.t("dataValidation.renderMode.arrow")}),jsxRuntimeExports.jsx(design.Radio,{value:`${core.DataValidationRenderMode.TEXT}`,children:localeService.t("dataValidation.renderMode.text")})]})})}__name(ListRenderModeInput,"ListRenderModeInput");ListRenderModeInput.componentKey=LIST_RENDER_MODE_OPTION_INPUT;var __defProp$c=Object.defineProperty,__getOwnPropDesc$c=Object.getOwnPropertyDescriptor,__decorateClass$c=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$c(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$c(target,key,result),result},"__decorateClass$c"),__decorateParam$c=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$c");const PADDING_H$1=4,ICON_SIZE=4,ICON_PLACE$1=14,MARGIN_H$1=6,MARGIN_V$1=4,DROP_DOWN_ICON_COLOR="#565656",downPath$1=new Path2D("M3.32201 4.84556C3.14417 5.05148 2.85583 5.05148 2.67799 4.84556L0.134292 1.90016C-0.152586 1.56798 0.0505937 1 0.456301 1L5.5437 1C5.94941 1 6.15259 1.56798 5.86571 1.90016L3.32201 4.84556Z");function convertToDocumentData(text,style){const contentLength=text.length;return{id:"d",body:{dataStream:`${text}${core.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[{ts:{fs:11,ff:void 0,it:core.BooleanNumber.FALSE,bl:core.BooleanNumber.FALSE,ul:{s:core.BooleanNumber.FALSE},st:{s:core.BooleanNumber.FALSE},ol:{s:core.BooleanNumber.FALSE},cl:void 0,...style,bg:void 0,bd:void 0},st:0,ed:contentLength}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}}}}__name(convertToDocumentData,"convertToDocumentData");function createDocSkeleton(text,localeService,style){const documentData=convertToDocumentData(text,style),docModel=new core.DocumentDataModel(documentData),docViewModel=new engineRender.DocumentViewModel(docModel);return{documentSkeleton:engineRender.DocumentSkeleton.create(docViewModel,localeService),docModel,docViewModel}}__name(createDocSkeleton,"createDocSkeleton");function createDocuments(text,localeService,style){const{documentSkeleton,docModel,docViewModel}=createDocSkeleton(text,localeService,style);return{documents:new engineRender.Documents(`DOCUMENTS_${core.Tools.generateRandomId()}`,documentSkeleton,{pageMarginLeft:0,pageMarginTop:0}),documentSkeleton,docModel,docViewModel}}__name(createDocuments,"createDocuments");function calcPadding(cellWidth,cellHeight,fontWidth,fontHeight,vt,ht,margin=!0){let paddingTop=0;const realMargin=margin?MARGIN_V$1:0;switch(vt){case core.VerticalAlign.BOTTOM:paddingTop=cellHeight-fontHeight-realMargin;break;case core.VerticalAlign.MIDDLE:paddingTop=(cellHeight-fontHeight)/2;break;default:paddingTop=realMargin;break}paddingTop=Math.max(MARGIN_V$1,paddingTop);let paddingLeft=0;switch(ht){case core.HorizontalAlign.CENTER:paddingLeft=(cellWidth-fontWidth)/2;break;case core.HorizontalAlign.RIGHT:paddingLeft=cellWidth-fontWidth;break}return paddingLeft=Math.max(MARGIN_H$1,paddingLeft),{paddingLeft,paddingTop}}__name(calcPadding,"calcPadding");var _a10;let DropdownWidget=(_a10=class{constructor(_localeService,_commandService){__publicField(this,"_dropdownInfoMap",new Map);__publicField(this,"zIndex");__publicField(this,"onPointerEnter");__publicField(this,"onPointerLeave");this._localeService=_localeService,this._commandService=_commandService}_ensureMap(subUnitId){let map=this._dropdownInfoMap.get(subUnitId);return map||(map=new Map,this._dropdownInfoMap.set(subUnitId,map)),map}_generateKey(row,col){return`${row}.${col}`}_drawDownIcon(ctx,cellBounding,cellWidth,cellHeight,fontHeight,vt,pd){const{t=core.DEFAULT_STYLES.pd.t,b=core.DEFAULT_STYLES.pd.b}=pd,left=cellWidth-ICON_PLACE$1;let top;switch(vt){case core.VerticalAlign.MIDDLE:top=(cellHeight-ICON_SIZE)/2;break;case core.VerticalAlign.BOTTOM:top=cellHeight-b-fontHeight-MARGIN_V$1+(fontHeight/2-ICON_SIZE/2);break;default:top=t+MARGIN_V$1+(fontHeight/2-ICON_SIZE/2);break}ctx.save(),ctx.translateWithPrecision(cellBounding.startX+left,cellBounding.startY+top),ctx.fillStyle="#565656",ctx.fill(downPath$1),ctx.restore()}drawWith(ctx,info,skeleton){var _a24,_b;const{primaryWithCoord,row,col,style,data,subUnitId}=info,_cellBounding=primaryWithCoord.isMergedMainCell?primaryWithCoord.mergeInfo:primaryWithCoord,rule=(_a24=data.dataValidation)==null?void 0:_a24.rule,validator=(_b=data.dataValidation)==null?void 0:_b.validator,fontRenderExtension=data.fontRenderExtension,{leftOffset=0,rightOffset=0,topOffset=0,downOffset=0}=fontRenderExtension||{};if(!rule||!validator||!validator||validator.id.indexOf(core.DataValidationType.LIST)!==0||!validator.skipDefaultFontRender(rule))return;const cellBounding={startX:_cellBounding.startX+leftOffset,endX:_cellBounding.endX-rightOffset,startY:_cellBounding.startY+topOffset,endY:_cellBounding.endY-downOffset},cellWidth=cellBounding.endX-cellBounding.startX,cellHeight=cellBounding.endY-cellBounding.startY,map=this._ensureMap(subUnitId),key=this._generateKey(row,col),list=validator.getListWithColor(rule),value=getCellValueOrigin(data),valueStr=`${value!=null?value:""}`,activeItem=list.find(i=>i.label===valueStr);let{tb,vt,ht,pd}=style||{};if(tb=tb!=null?tb:core.WrapStrategy.WRAP,vt=vt!=null?vt:core.VerticalAlign.BOTTOM,ht=ht!=null?ht:core.DEFAULT_STYLES.ht,pd=pd!=null?pd:core.DEFAULT_STYLES.pd,rule.renderMode===core.DataValidationRenderMode.ARROW){const{l:l2=core.DEFAULT_STYLES.pd.l,t=core.DEFAULT_STYLES.pd.t,r=core.DEFAULT_STYLES.pd.r,b=core.DEFAULT_STYLES.pd.b}=pd,realWidth=cellWidth-l2-r-ICON_PLACE$1,{documentSkeleton,documents,docModel}=createDocuments(valueStr,this._localeService,style);tb===core.WrapStrategy.WRAP&&docModel.updateDocumentDataPageSize(Math.max(realWidth,1)),documentSkeleton.calculate(),documentSkeleton.getActualSize();const textLayout=engineRender.getDocsSkeletonPageSize(documentSkeleton),{height:fontHeight,width:fontWidth}=textLayout,{paddingTop,paddingLeft}=calcPadding(realWidth,cellHeight-t-b,fontWidth,fontHeight,vt,ht,!0);this._drawDownIcon(ctx,cellBounding,cellWidth,cellHeight,fontHeight,vt,pd),ctx.save(),ctx.translateWithPrecision(cellBounding.startX+l2,cellBounding.startY+t),ctx.beginPath(),ctx.rect(0,0,cellWidth-l2-r,cellHeight-t-b),ctx.clip(),ctx.translateWithPrecision(0,paddingTop),ctx.save(),ctx.translateWithPrecision(PADDING_H$1,0),ctx.beginPath(),ctx.rect(0,0,realWidth,fontHeight),ctx.clip(),documents.render(ctx),ctx.translateWithPrecision(paddingLeft,0),ctx.restore(),ctx.restore(),map.set(key,{left:cellBounding.endX+l2+skeleton.rowHeaderWidth-ICON_PLACE$1,top:cellBounding.startY+t+skeleton.columnHeaderHeight,width:ICON_PLACE$1,height:cellHeight-t-b})}else{ctx.save(),ctx.translateWithPrecision(cellBounding.startX,cellBounding.startY),ctx.beginPath(),ctx.rect(0,0,cellWidth,cellHeight),ctx.clip();const realWidth=cellWidth-MARGIN_H$1*2-PADDING_H$1-ICON_PLACE$1,{documentSkeleton,documents,docModel}=createDocuments(valueStr,this._localeService,style);tb===core.WrapStrategy.WRAP&&docModel.updateDocumentDataPageSize(Math.max(realWidth,1)),documentSkeleton.calculate();const textLayout=engineRender.getDocsSkeletonPageSize(documentSkeleton),{height:fontHeight,width:fontWidth}=textLayout,{paddingTop,paddingLeft}=calcPadding(realWidth,cellHeight,fontWidth,fontHeight,vt,ht);ctx.translateWithPrecision(MARGIN_H$1,paddingTop);const rectWidth=Math.max(cellWidth-MARGIN_H$1*2,1),rectHeight=fontHeight;engineRender.Rect.drawWith(ctx,{width:rectWidth,height:rectHeight,fill:(activeItem==null?void 0:activeItem.color)||DROP_DOWN_DEFAULT_COLOR,radius:8}),ctx.save(),ctx.translateWithPrecision(PADDING_H$1,0),ctx.beginPath(),ctx.rect(0,0,realWidth,fontHeight),ctx.clip(),ctx.translateWithPrecision(paddingLeft,0),documents.render(ctx),ctx.restore(),ctx.translateWithPrecision(realWidth+PADDING_H$1+4,(fontHeight-ICON_SIZE)/2),ctx.fillStyle=DROP_DOWN_ICON_COLOR,ctx.fill(downPath$1),ctx.restore(),map.set(key,{left:cellBounding.startX+MARGIN_H$1+skeleton.rowHeaderWidth,top:cellBounding.startY+paddingTop+skeleton.columnHeaderHeight,width:rectWidth,height:rectHeight})}}calcCellAutoHeight(info){var _a24;const{primaryWithCoord,style,data}=info,_cellBounding=primaryWithCoord.isMergedMainCell?primaryWithCoord.mergeInfo:primaryWithCoord,fontRenderExtension=data.fontRenderExtension,{leftOffset=0,rightOffset=0,topOffset=0,downOffset=0}=fontRenderExtension||{},rule=(_a24=data.dataValidation)==null?void 0:_a24.rule;if(!rule||rule.renderMode===core.DataValidationRenderMode.TEXT)return;const cellBounding={startX:_cellBounding.startX+leftOffset,endX:_cellBounding.endX-rightOffset,startY:_cellBounding.startY+topOffset,endY:_cellBounding.endY-downOffset},cellWidth=cellBounding.endX-cellBounding.startX,value=getCellValueOrigin(data),valueStr=`${value!=null?value:""}`;let{tb,pd}=style||{};const{t=core.DEFAULT_STYLES.pd.t,b=core.DEFAULT_STYLES.pd.b}=pd!=null?pd:{};if(tb=tb!=null?tb:core.WrapStrategy.WRAP,rule.renderMode===core.DataValidationRenderMode.ARROW){const realWidth=cellWidth-ICON_PLACE$1,{documentSkeleton,docModel}=createDocuments(valueStr,this._localeService,style);tb===core.WrapStrategy.WRAP&&docModel.updateDocumentDataPageSize(Math.max(realWidth,1)),documentSkeleton.calculate(),documentSkeleton.getActualSize();const textLayout=engineRender.getDocsSkeletonPageSize(documentSkeleton),{height:fontHeight}=textLayout;return fontHeight+t+b+MARGIN_V$1*2}else{const realWidth=cellWidth-MARGIN_H$1*2-PADDING_H$1-ICON_PLACE$1,{documentSkeleton,docModel}=createDocSkeleton(valueStr,this._localeService,style);tb===core.WrapStrategy.WRAP&&docModel.updateDocumentDataPageSize(Math.max(realWidth,1)),documentSkeleton.calculate();const textLayout=engineRender.getDocsSkeletonPageSize(documentSkeleton),{height:fontHeight}=textLayout;return fontHeight+MARGIN_V$1*2}}isHit(position,info){const{data,subUnitId,row,col}=info,dropdownInfo=this._ensureMap(subUnitId).get(this._generateKey(row,col)),validation=data.dataValidation;if(!validation||!dropdownInfo||validation.rule.renderMode===core.DataValidationRenderMode.TEXT)return!1;const{top,left,width,height}=dropdownInfo,{x,y}=position;return x>=left&&x<=left+width&&y>=top&&y<=top+height}onPointerDown(info,evt){if(evt.button===2)return;const{unitId,subUnitId,row,col}=info,params={unitId,subUnitId,row,column:col};this._commandService.executeCommand(ShowDataValidationDropdown.id,params)}},__name(_a10,"DropdownWidget"),_a10);DropdownWidget=__decorateClass$c([__decorateParam$c(0,core.Inject(core.LocaleService)),__decorateParam$c(1,core.ICommandService)],DropdownWidget);function getRuleFormulaResultSet(result){if(!result)return[];const resultSet=new Set;return result.forEach(row=>{row.forEach(cell=>{var _a24,_b;const value=getCellValueOrigin(cell);if(value!=null){if(typeof value!="string"&&typeof(cell==null?void 0:cell.s)=="object"&&((_b=(_a24=cell.s)==null?void 0:_a24.n)!=null&&_b.pattern)){resultSet.add(core.numfmt.format(cell.s.n.pattern,value,{throws:!1}));return}resultSet.add(value.toString())}})}),[...resultSet]}__name(getRuleFormulaResultSet,"getRuleFormulaResultSet");const supportedFormula=["if","indirect","choose","offset"];function isValidListFormula(formula,lexer){if(!core.isFormulaString(formula)||engineFormula.isReferenceString(formula.slice(1)))return!0;const nodes=lexer.sequenceNodesBuilder(formula);return nodes&&nodes.some(node=>typeof node=="object"&&node.nodeType===engineFormula.sequenceNodeType.FUNCTION&&supportedFormula.indexOf(node.token.toLowerCase())>-1)}__name(isValidListFormula,"isValidListFormula");function isRuleIntersects(rule,sheetName){const{formula1="",ranges}=rule;if(engineFormula.isReferenceString(formula1.slice(1))){const refRange=engineFormula.deserializeRangeWithSheet(formula1.slice(1));if((!refRange.sheetName||refRange.sheetName===sheetName)&&ranges.some(range=>core.Rectangle.intersects(range,refRange.range)))return!0}return!1}__name(isRuleIntersects,"isRuleIntersects");const _ListValidator=class _ListValidator extends dataValidation.BaseDataValidator{constructor(){super(...arguments);__publicField(this,"formulaService",this.injector.get(exports.DataValidationFormulaService));__publicField(this,"_lexer",this.injector.get(engineFormula.LexerTreeBuilder));__publicField(this,"_univerInstanceService",this.injector.get(core.IUniverInstanceService));__publicField(this,"id",core.DataValidationType.LIST);__publicField(this,"title","dataValidation.list.title");__publicField(this,"operators",[]);__publicField(this,"scopes",["sheet"]);__publicField(this,"formulaInput",LIST_FORMULA_INPUT_NAME);__publicField(this,"canvasRender",this.injector.createInstance(DropdownWidget));__publicField(this,"dropdown",LIST_DROPDOWN_KEY);__publicField(this,"optionsInput",ListRenderModeInput.componentKey);__publicField(this,"skipDefaultFontRender",__name(rule=>rule.renderMode!==core.DataValidationRenderMode.TEXT,"skipDefaultFontRender"))}validatorFormula(rule,unitId,subUnitId){var _a24,_b,_c;const success=!core.Tools.isBlank(rule.formula1),valid=isValidListFormula((_a24=rule.formula1)!=null?_a24:"",this._lexer),sheetName=(_c=(_b=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET))==null?void 0:_b.getSheetBySheetId(subUnitId))==null?void 0:_c.getName(),isIntersects=isRuleIntersects(rule,sheetName!=null?sheetName:"");return{success:!!(success&&valid&&!isIntersects),formula1:success?valid?isIntersects?this.localeService.t("dataValidation.validFail.listIntersects"):void 0:this.localeService.t("dataValidation.validFail.listInvalid"):this.localeService.t("dataValidation.validFail.list")}}getExtraStyle(rule,value,{style:defaultStyle}){var _a24;const tb=(_a24=defaultStyle.tb!==core.WrapStrategy.OVERFLOW?defaultStyle.tb:core.WrapStrategy.CLIP)!=null?_a24:core.WrapStrategy.WRAP;if(rule.type===core.DataValidationType.LIST&&(rule.renderMode===core.DataValidationRenderMode.ARROW||rule.renderMode===core.DataValidationRenderMode.TEXT)){const colorMap=this.getListWithColorMap(rule),valueStr=`${value!=null?value:""}`,color=colorMap[valueStr];if(color)return{bg:{rgb:color},tb}}return{tb}}parseCellValue(cellValue){const cellString=cellValue.toString();return deserializeListOptions(cellString)}async parseFormula(rule,unitId,subUnitId){var _a24;const{formula1=""}=rule,results=await this.formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid);return{formula1:core.isFormulaString(formula1)?getRuleFormulaResultSet((_a24=results==null?void 0:results[0])==null?void 0:_a24.result):deserializeListOptions(formula1),formula2:void 0}}async isValidType(cellInfo,formula,rule){const{value}=cellInfo,{formula1=[]}=formula;return this.parseCellValue(value).every(i=>formula1.includes(i))}generateRuleName(){return this.localeService.t("dataValidation.list.name")}generateRuleErrorMessage(){return this.localeService.t("dataValidation.list.error")}getList(rule,currentUnitId,currentSubUnitId){var _a24,_b,_c;const{formula1=""}=rule,univerInstanceService=this.injector.get(core.IUniverInstanceService),workbook=(_a24=currentUnitId?univerInstanceService.getUniverSheetInstance(currentUnitId):void 0)!=null?_a24:univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return[];const worksheet=(_b=currentSubUnitId?workbook.getSheetBySheetId(currentSubUnitId):void 0)!=null?_b:workbook.getActiveSheet();if(!worksheet)return[];const unitId=workbook.getUnitId(),subUnitId=worksheet.getSheetId(),results=this.formulaService.getRuleFormulaResultSync(unitId,subUnitId,rule.uid);return core.isFormulaString(formula1)?getRuleFormulaResultSet((_c=results==null?void 0:results[0])==null?void 0:_c.result):deserializeListOptions(formula1)}async getListAsync(rule,currentUnitId,currentSubUnitId){var _a24,_b,_c;const{formula1=""}=rule,univerInstanceService=this.injector.get(core.IUniverInstanceService),workbook=(_a24=currentUnitId?univerInstanceService.getUniverSheetInstance(currentUnitId):void 0)!=null?_a24:univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return[];const worksheet=(_b=currentSubUnitId?workbook.getSheetBySheetId(currentSubUnitId):void 0)!=null?_b:workbook.getActiveSheet();if(!worksheet)return[];const unitId=workbook.getUnitId(),subUnitId=worksheet.getSheetId(),results=await this.formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid);return core.isFormulaString(formula1)?getRuleFormulaResultSet((_c=results==null?void 0:results[0])==null?void 0:_c.result):deserializeListOptions(formula1)}getListWithColor(rule,currentUnitId,currentSubUnitId){const list=this.getList(rule,currentUnitId,currentSubUnitId),colorList=(rule.formula2||"").split(",");return list.map((label,i)=>({label,color:colorList[i]}))}getListWithColorMap(rule,currentUnitId,currentSubUnitId){const list=this.getListWithColor(rule,currentUnitId,currentSubUnitId),map={};return list.forEach(item=>{item.color&&(map[item.label]=item.color)}),map}};__name(_ListValidator,"ListValidator");let ListValidator=_ListValidator;const FORMULA1="{FORMULA1}",FORMULA2="{FORMULA2}",_TextLengthValidator=class _TextLengthValidator extends dataValidation.BaseDataValidator{constructor(){super(...arguments);__publicField(this,"id",core.DataValidationType.TEXT_LENGTH);__publicField(this,"title","dataValidation.textLength.title");__publicField(this,"operators",[core.DataValidationOperator.BETWEEN,core.DataValidationOperator.EQUAL,core.DataValidationOperator.GREATER_THAN,core.DataValidationOperator.GREATER_THAN_OR_EQUAL,core.DataValidationOperator.LESS_THAN,core.DataValidationOperator.LESS_THAN_OR_EQUAL,core.DataValidationOperator.NOT_BETWEEN,core.DataValidationOperator.NOT_EQUAL]);__publicField(this,"scopes",["sheet"]);__publicField(this,"formulaInput",BASE_FORMULA_INPUT_NAME);__publicField(this,"_formulaService",this.injector.get(exports.DataValidationFormulaService))}_isFormulaOrInt(formula){return!core.Tools.isBlank(formula)&&(core.isFormulaString(formula)||!Number.isNaN(+formula)&&Number.isInteger(+formula))}validatorFormula(rule,unitId,subUnitId){const operator=rule.operator;if(!operator)return{success:!1};const formula1Success=core.Tools.isDefine(rule.formula1)&&this._isFormulaOrInt(rule.formula1),formula2Success=core.Tools.isDefine(rule.formula2)&&this._isFormulaOrInt(rule.formula2),isTwoFormula=TWO_FORMULA_OPERATOR_COUNT.includes(operator),errorMsg=this.localeService.t("dataValidation.validFail.number");return isTwoFormula?{success:formula1Success&&formula2Success,formula1:formula1Success?void 0:errorMsg,formula2:formula2Success?void 0:errorMsg}:{success:formula1Success,formula1:errorMsg}}_parseNumber(formula){return formula==null?Number.NaN:+formula}_isValidFormula(formula){return!Number.isNaN(formula)}async parseFormula(rule,unitId,subUnitId){var _a24,_b,_c,_d,_e,_f,_g,_h;const formulaInfo=await this._formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid),{formula1,formula2}=rule;return{formula1:this._parseNumber(core.isFormulaString(formula1)?(_d=(_c=(_b=(_a24=formulaInfo==null?void 0:formulaInfo[0])==null?void 0:_a24.result)==null?void 0:_b[0])==null?void 0:_c[0])==null?void 0:_d.v:formula1),formula2:this._parseNumber(core.isFormulaString(formula2)?(_h=(_g=(_f=(_e=formulaInfo==null?void 0:formulaInfo[1])==null?void 0:_e.result)==null?void 0:_f[0])==null?void 0:_g[0])==null?void 0:_h.v:formula2)}}transform(cellInfo,_formula,_rule){return{...cellInfo,value:cellInfo.value.toString().length}}async isValidType(cellInfo,formula,rule){const{value:cellValue}=cellInfo;return typeof cellValue=="string"||typeof cellValue=="number"}async validatorIsEqual(cellInfo,formula,rule){const{formula1}=formula;return core.Tools.isDefine(formula1)?cellInfo.value===formula1:!1}async validatorIsNotEqual(cellInfo,formula,rule){const{formula1}=formula;return core.Tools.isDefine(formula1)?cellInfo.value!==formula1:!1}async validatorIsBetween(cellInfo,formula,rule){const{formula1,formula2}=formula,{value:cellValue}=cellInfo;if(!this._isValidFormula(formula1)||!this._isValidFormula(formula2))return!1;const max=Math.max(formula1,formula2),min=Math.min(formula1,formula2);return cellValue>=min&&cellValue<=max}async validatorIsNotBetween(cellInfo,formula,rule){const{formula1,formula2}=formula,{value:cellValue}=cellInfo;if(!this._isValidFormula(formula1)||!this._isValidFormula(formula2))return!1;const max=Math.max(formula1,formula2),min=Math.min(formula1,formula2);return cellValue<min||cellValue>max}async validatorIsGreaterThan(cellInfo,formula,rule){const{formula1}=formula,{value:cellValue}=cellInfo;return this._isValidFormula(formula1)?cellValue>formula1:!1}async validatorIsGreaterThanOrEqual(cellInfo,formula,rule){const{formula1}=formula,{value:cellValue}=cellInfo;return this._isValidFormula(formula1)?cellValue>=formula1:!1}async validatorIsLessThan(cellInfo,formula,rule){const{formula1}=formula,{value:cellValue}=cellInfo;return this._isValidFormula(formula1)?cellValue<formula1:!1}async validatorIsLessThanOrEqual(cellInfo,formula,rule){const{formula1}=formula,{value:cellValue}=cellInfo;return this._isValidFormula(formula1)?cellValue<=formula1:!1}generateRuleErrorMessage(rule){var _a24,_b;return rule.operator?`${this.localeService.t(dataValidation.TextLengthErrorTitleMap[rule.operator]).replace(FORMULA1,(_a24=rule.formula1)!=null?_a24:"").replace(FORMULA2,(_b=rule.formula2)!=null?_b:"")}`:this.titleStr}};__name(_TextLengthValidator,"TextLengthValidator");let TextLengthValidator=_TextLengthValidator;function isBlankCell(cellData){var _a24,_b;return cellData?cellData.p?!((_b=(_a24=cellData.p.body)==null?void 0:_a24.dataStream)!=null?_b:"").slice(0,-2).trim():core.Tools.isBlank(cellData.v):!0}__name(isBlankCell,"isBlankCell");function getDataValidationDiffMutations(unitId,subUnitId,diffs,accessor,source="command",fillDefaultValue=!0){const redoMutations=[],undoMutations=[],sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService,{unitId,subUnitId});if(!target)return{redoMutations,undoMutations};const{worksheet}=target,redoMatrix=new core.ObjectMatrix;function setRangesDefaultValue(ranges,defaultValue){fillDefaultValue&&ranges.forEach(range=>{core.Range.foreach(range,(row,column)=>{const cellData=worksheet.getCellRaw(row,column),value=getStringCellValue(cellData);(isBlankCell(cellData)||value===defaultValue)&&redoMatrix.setValue(row,column,{v:defaultValue,p:null})})})}__name(setRangesDefaultValue,"setRangesDefaultValue"),diffs.forEach(diff=>{switch(diff.type){case"delete":redoMutations.push({id:dataValidation.RemoveDataValidationMutation.id,params:{unitId,subUnitId,ruleId:diff.rule.uid,source}}),undoMutations.unshift({id:dataValidation.AddDataValidationMutation.id,params:{unitId,subUnitId,rule:diff.rule,index:diff.index,source}});break;case"update":{redoMutations.push({id:dataValidation.UpdateDataValidationMutation.id,params:{unitId,subUnitId,ruleId:diff.ruleId,payload:{type:dataValidation.UpdateRuleType.RANGE,payload:diff.newRanges},source}}),undoMutations.unshift({id:dataValidation.UpdateDataValidationMutation.id,params:{unitId,subUnitId,ruleId:diff.ruleId,payload:{type:dataValidation.UpdateRuleType.RANGE,payload:diff.oldRanges},source}});const rule=sheetDataValidationModel.getRuleById(unitId,subUnitId,diff.ruleId);if(rule&&rule.type===core.DataValidationType.CHECKBOX){const formula=sheetDataValidationModel.getValidator(core.DataValidationType.CHECKBOX).parseFormulaSync(rule,unitId,subUnitId);setRangesDefaultValue(diff.newRanges,formula.formula2)}break}case"add":{if(redoMutations.push({id:dataValidation.AddDataValidationMutation.id,params:{unitId,subUnitId,rule:diff.rule,source}}),undoMutations.unshift({id:dataValidation.RemoveDataValidationMutation.id,params:{unitId,subUnitId,ruleId:diff.rule.uid,source}}),diff.rule.type===core.DataValidationType.CHECKBOX){const formula=sheetDataValidationModel.getValidator(core.DataValidationType.CHECKBOX).parseFormulaSync(diff.rule,unitId,subUnitId);setRangesDefaultValue(diff.rule.ranges,formula.originFormula2)}break}}});const redoSetRangeValues={id:sheets.SetRangeValuesMutation.id,params:{unitId,subUnitId,cellValue:redoMatrix.getData()}},undoSetRangeValues={id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(accessor,redoSetRangeValues.params)};return redoMutations.push(redoSetRangeValues),undoMutations.push(undoSetRangeValues),{redoMutations,undoMutations}}__name(getDataValidationDiffMutations,"getDataValidationDiffMutations");const UpdateSheetDataValidationRangeCommand={type:core.CommandType.COMMAND,id:"sheet.command.updateDataValidationRuleRange",async handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,ranges,ruleId}=params,sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService);if(!sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId))return!1;const matrix=sheetDataValidationModel.getRuleObjectMatrix(unitId,subUnitId).clone();matrix.updateRange(ruleId,ranges);const diffs=matrix.diff(sheetDataValidationModel.getRules(unitId,subUnitId)),{redoMutations,undoMutations}=getDataValidationDiffMutations(unitId,subUnitId,diffs,accessor);return undoRedoService.pushUndoRedo({undoMutations,redoMutations,unitID:unitId}),await core.sequenceExecuteAsync(redoMutations,commandService),!0}},AddSheetDataValidationCommand={type:core.CommandType.COMMAND,id:"sheet.command.addDataValidation",async handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,rule}=params,sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),matrix=sheetDataValidationModel.getRuleObjectMatrix(unitId,subUnitId).clone();matrix.addRule(rule);const diffs=matrix.diff(sheetDataValidationModel.getRules(unitId,subUnitId)),mutationParams={unitId,subUnitId,rule},{redoMutations,undoMutations}=getDataValidationDiffMutations(unitId,subUnitId,diffs,accessor);return redoMutations.push({id:dataValidation.AddDataValidationMutation.id,params:mutationParams}),undoMutations.unshift({id:dataValidation.RemoveDataValidationMutation.id,params:{unitId,subUnitId,ruleId:rule.uid}}),undoRedoService.pushUndoRedo({unitID:unitId,redoMutations,undoMutations}),await core.sequenceExecuteAsync(redoMutations,commandService),!0}},AddSheetDataValidationAndOpenCommand={type:core.CommandType.COMMAND,id:"data-validation.command.addRuleAndOpen",async handler(accessor){const univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService);if(!target)return!1;const{workbook,worksheet}=target,rule=createDefaultNewRule(accessor),commandService=accessor.get(core.ICommandService),unitId=workbook.getUnitId(),subUnitId=worksheet.getSheetId(),addParams={rule,unitId,subUnitId};return await commandService.executeCommand(AddSheetDataValidationCommand.id,addParams)?(commandService.executeCommand(OpenValidationPanelOperation.id,{ruleId:rule.uid,isAdd:!0}),!0):!1}},UpdateSheetDataValidationSettingCommand={type:core.CommandType.COMMAND,id:"sheets.command.update-data-validation-setting",handler(accessor,params){if(!params)return!1;const commandService=accessor.get(core.ICommandService),redoUndoService=accessor.get(core.IUndoRedoService),sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),dataValidatorRegistryService=accessor.get(dataValidation.DataValidatorRegistryService),{unitId,subUnitId,ruleId,setting}=params,validator=dataValidatorRegistryService.getValidatorItem(setting.type);if(!validator)return!1;const rule=sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId);if(!rule)return!1;const newRule={...rule,...setting};if(!validator.validatorFormula(newRule,unitId,subUnitId).success)return!1;const mutationParams={unitId,subUnitId,ruleId,payload:{type:dataValidation.UpdateRuleType.SETTING,payload:{...setting,...validator.normalizeFormula(newRule,unitId,subUnitId)}}},redoMutations=[{id:dataValidation.UpdateDataValidationMutation.id,params:mutationParams}],undoMutationParams={unitId,subUnitId,ruleId,payload:{type:dataValidation.UpdateRuleType.SETTING,payload:dataValidation.getRuleSetting(rule)}},undoMutations=[{id:dataValidation.UpdateDataValidationMutation.id,params:undoMutationParams}];if(setting.type===core.DataValidationType.CHECKBOX){const ranges=rule.ranges,univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService,{unitId,subUnitId});if(target){const redoMatrix=new core.ObjectMatrix,{worksheet}=target,{formula2:oldFormula2=CHECKBOX_FORMULA_2,formula1:oldFormula1=CHECKBOX_FORMULA_1}=rule,{formula2=CHECKBOX_FORMULA_2,formula1=CHECKBOX_FORMULA_1}=setting;ranges.forEach(range=>{core.Range.foreach(range,(row,column)=>{const cellData=worksheet.getCellRaw(row,column),value=getStringCellValue(cellData);isBlankCell(cellData)||value===String(oldFormula2)?redoMatrix.setValue(row,column,{v:formula2,p:null}):value===String(oldFormula1)&&redoMatrix.setValue(row,column,{v:formula1,p:null})})});const redoSetRangeValues={id:sheets.SetRangeValuesMutation.id,params:{unitId,subUnitId,cellValue:redoMatrix.getData()}},undoSetRangeValues={id:sheets.SetRangeValuesMutation.id,params:sheets.SetRangeValuesUndoMutationFactory(accessor,redoSetRangeValues.params)};redoMutations.push(redoSetRangeValues),undoMutations.push(undoSetRangeValues)}}return core.sequenceExecute(redoMutations,commandService).result?(redoUndoService.pushUndoRedo({unitID:unitId,redoMutations,undoMutations}),!0):!1}},UpdateSheetDataValidationOptionsCommand={type:core.CommandType.COMMAND,id:"sheets.command.update-data-validation-options",handler(accessor,params){if(!params)return!1;const commandService=accessor.get(core.ICommandService),redoUndoService=accessor.get(core.IUndoRedoService),sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),{unitId,subUnitId,ruleId,options}=params,rule=sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId);if(!rule)return!1;const mutationParams={unitId,subUnitId,ruleId,payload:{type:dataValidation.UpdateRuleType.OPTIONS,payload:options}},redoMutations=[{id:dataValidation.UpdateDataValidationMutation.id,params:mutationParams}],undoMutationParams={unitId,subUnitId,ruleId,payload:{type:dataValidation.UpdateRuleType.OPTIONS,payload:dataValidation.getRuleOptions(rule)}},undoMutations=[{id:dataValidation.UpdateDataValidationMutation.id,params:undoMutationParams}];return redoUndoService.pushUndoRedo({unitID:unitId,redoMutations,undoMutations}),commandService.executeCommand(dataValidation.UpdateDataValidationMutation.id,mutationParams),!0}},ClearRangeDataValidationCommand={type:core.CommandType.COMMAND,id:"sheets.command.clear-range-data-validation",handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,ranges}=params,commandService=accessor.get(core.ICommandService),univerInstanceService=accessor.get(core.IUniverInstanceService),target=sheets.getSheetCommandTarget(univerInstanceService,{unitId,subUnitId}),sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel);if(!target)return!1;const undoRedoService=accessor.get(core.IUndoRedoService),matrix=sheetDataValidationModel.getRuleObjectMatrix(unitId,subUnitId).clone();matrix.removeRange(ranges);const diffs=matrix.diff(sheetDataValidationModel.getRules(unitId,subUnitId)),{redoMutations,undoMutations}=getDataValidationDiffMutations(unitId,subUnitId,diffs,accessor);return undoRedoService.pushUndoRedo({unitID:unitId,redoMutations,undoMutations}),core.sequenceExecute(redoMutations,commandService).result}},RemoveSheetAllDataValidationCommand={type:core.CommandType.COMMAND,id:"sheet.command.remove-all-data-validation",handler(accessor,params){if(!params)return!1;const{unitId,subUnitId}=params,commandService=accessor.get(core.ICommandService),sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),undoRedoService=accessor.get(core.IUndoRedoService),currentRules=[...sheetDataValidationModel.getRules(unitId,subUnitId)],redoParams={unitId,subUnitId,ruleId:currentRules.map(rule=>rule.uid)},redoMutations=[{id:dataValidation.RemoveDataValidationMutation.id,params:redoParams}],undoMutations=[{id:dataValidation.AddDataValidationMutation.id,params:{unitId,subUnitId,rule:currentRules}}];return undoRedoService.pushUndoRedo({redoMutations,undoMutations,unitID:unitId}),commandService.executeCommand(dataValidation.RemoveDataValidationMutation.id,redoParams),!0}},removeDataValidationUndoFactory=__name((accessor,redoParams)=>{const sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),{unitId,subUnitId,ruleId,source}=redoParams;if(Array.isArray(ruleId)){const rules=ruleId.map(id=>sheetDataValidationModel.getRuleById(unitId,subUnitId,id)).filter(Boolean);return[{id:dataValidation.AddDataValidationMutation.id,params:{unitId,subUnitId,rule:rules,source}}]}return[{id:dataValidation.AddDataValidationMutation.id,params:{unitId,subUnitId,rule:{...sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId)},index:sheetDataValidationModel.getRuleIndex(unitId,subUnitId,ruleId)}}]},"removeDataValidationUndoFactory"),RemoveSheetDataValidationCommand={type:core.CommandType.COMMAND,id:"sheet.command.remove-data-validation-rule",handler(accessor,params){if(!params)return!1;const{unitId,subUnitId,ruleId}=params,commandService=accessor.get(core.ICommandService),undoRedoService=accessor.get(core.IUndoRedoService),sheetDataValidationModel=accessor.get(exports.SheetDataValidationModel),redoMutations=[{id:dataValidation.RemoveDataValidationMutation.id,params}],undoMutations=[{id:dataValidation.AddDataValidationMutation.id,params:{unitId,subUnitId,rule:{...sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId)},index:sheetDataValidationModel.getRuleIndex(unitId,subUnitId,ruleId)}}];return undoRedoService.pushUndoRedo({undoMutations,redoMutations,unitID:params.unitId}),commandService.executeCommand(dataValidation.RemoveDataValidationMutation.id,params),!0}};function isLegalFormulaResult(res){return!engineFormula.ERROR_TYPE_SET.has(res)}__name(isLegalFormulaResult,"isLegalFormulaResult");const _CustomFormulaValidator=class _CustomFormulaValidator extends dataValidation.BaseDataValidator{constructor(){super(...arguments);__publicField(this,"id",core.DataValidationType.CUSTOM);__publicField(this,"title","dataValidation.custom.title");__publicField(this,"operators",[]);__publicField(this,"scopes",["sheet"]);__publicField(this,"formulaInput",CUSTOM_FORMULA_INPUT_NAME);__publicField(this,"_customFormulaService",this.injector.get(exports.DataValidationCustomFormulaService))}validatorFormula(rule,unitId,subUnitId){const success=core.isFormulaString(rule.formula1);return{success,formula1:success?"":this.localeService.t("dataValidation.validFail.formula")}}async parseFormula(_rule,_unitId,_subUnitId){return{formula1:void 0,formula2:void 0}}async isValidType(cellInfo,_formula,_rule){const{column,row,unitId,subUnitId}=cellInfo,result=await this._customFormulaService.getCellFormulaValue(unitId,subUnitId,row,column),cellData=getFormulaCellData(result==null?void 0:result.result),formulaResult=cellData==null?void 0:cellData.v;return core.Tools.isDefine(formulaResult)&&formulaResult!==""?cellData.t===core.CellValueType.BOOLEAN?!!formulaResult:typeof formulaResult=="boolean"?formulaResult:typeof formulaResult=="number"?!!formulaResult:typeof formulaResult=="string"?isLegalFormulaResult(formulaResult):!!formulaResult:!1}generateRuleErrorMessage(rule){return this.localeService.t("dataValidation.custom.error")}};__name(_CustomFormulaValidator,"CustomFormulaValidator");let CustomFormulaValidator=_CustomFormulaValidator;const PADDING_H=4,PADDING_V=0,MARGIN_H=4,MARGIN_V=4,CELL_PADDING_H=6,CELL_PADDING_V=6,ICON_PLACE=14;function getDropdownItemSize(text,fontStyle){const bBox=engineRender.FontCache.getTextSize(text,fontStyle),rectWidth=bBox.width+PADDING_H*2,{ba,bd}=bBox,height=ba+bd;return{width:rectWidth,height:height+PADDING_V*2,ba}}__name(getDropdownItemSize,"getDropdownItemSize");function layoutDropdowns(items,fontStyle,cellWidth,cellHeight){const contentWidth=cellWidth-ICON_PLACE-CELL_PADDING_H,contentHeight=cellHeight-CELL_PADDING_V*2,textLayout=items.map(item=>({layout:getDropdownItemSize(item,fontStyle),text:item}));let currentLine;const lines=[];textLayout.forEach(item=>{const{layout}=item,{width,height}=layout;!currentLine||currentLine.width+width+MARGIN_H>contentWidth?(currentLine={width,height,items:[{...item,left:0}]},lines.push(currentLine)):(currentLine.items.push({...item,left:currentLine.width+MARGIN_H}),currentLine.width=currentLine.width+width+MARGIN_H)});let totalHeight=0;return lines.forEach((line,index)=>{index===lines.length-1?totalHeight+=line.height:totalHeight+=line.height+MARGIN_V}),{lines,totalHeight,contentWidth,contentHeight,cellAutoHeight:totalHeight+CELL_PADDING_V*2}}__name(layoutDropdowns,"layoutDropdowns");const RADIUS=8,_Dropdown=class _Dropdown extends engineRender.Shape{static drawWith(ctx,props){const{fontFamily,fontString,fontSize,info,fill,color}=props,{layout,text}=info;ctx.save(),engineRender.Rect.drawWith(ctx,{width:layout.width,height:layout.height,radius:RADIUS,fill:fill||DROP_DOWN_DEFAULT_COLOR}),ctx.translateWithPrecision(PADDING_H,layout.ba),ctx.font=fontString,ctx.fillStyle=color,ctx.fillText(text,0,0),ctx.restore()}};__name(_Dropdown,"Dropdown");let Dropdown=_Dropdown;var __defProp$b=Object.defineProperty,__getOwnPropDesc$b=Object.getOwnPropertyDescriptor,__decorateClass$b=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$b(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$b(target,key,result),result},"__decorateClass$b"),__decorateParam$b=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$b");const downPath=new Path2D("M3.32201 4.84556C3.14417 5.05148 2.85583 5.05148 2.67799 4.84556L0.134292 1.90016C-0.152586 1.56798 0.0505937 1 0.456301 1L5.5437 1C5.94941 1 6.15259 1.56798 5.86571 1.90016L3.32201 4.84556Z");var _a11;let DropdownMultipleWidget=(_a11=class{constructor(_commandService){__publicField(this,"zIndex");__publicField(this,"_dropdownInfoMap",new Map);this._commandService=_commandService}_ensureMap(subUnitId){let map=this._dropdownInfoMap.get(subUnitId);return map||(map=new Map,this._dropdownInfoMap.set(subUnitId,map)),map}_generateKey(row,col){return`${row}.${col}`}_drawDownIcon(ctx,cellBounding,cellWidth,cellHeight,vt){const left=cellWidth-ICON_PLACE+4;let top=4;switch(vt){case core.VerticalAlign.MIDDLE:top=(cellHeight-ICON_PLACE)/2+4;break;case core.VerticalAlign.BOTTOM:top=cellHeight-ICON_PLACE+4;break}ctx.save(),ctx.translateWithPrecision(cellBounding.startX+left,cellBounding.startY+top),ctx.fillStyle="#565656",ctx.fill(downPath),ctx.restore()}drawWith(ctx,info,skeleton,spreadsheets){var _a24,_b;const{primaryWithCoord,row,col,style,data,subUnitId}=info,_cellBounding=primaryWithCoord.isMergedMainCell?primaryWithCoord.mergeInfo:primaryWithCoord,fontRenderExtension=data.fontRenderExtension,{leftOffset=0,rightOffset=0,topOffset=0,downOffset=0}=fontRenderExtension||{},validation=data.dataValidation,map=this._ensureMap(subUnitId),key=this._generateKey(row,col);if(!validation)return;const cellBounding={startX:_cellBounding.startX+leftOffset,endX:_cellBounding.endX-rightOffset,startY:_cellBounding.startY+topOffset,endY:_cellBounding.endY-downOffset},cellWidth=cellBounding.endX-cellBounding.startX,cellHeight=cellBounding.endY-cellBounding.startY,{cl}=style||{},color=(_a24=typeof cl=="object"?cl==null?void 0:cl.rgb:cl)!=null?_a24:"#000",fontStyle=engineRender.getFontStyleString(style!=null?style:void 0),{rule,validator:_validator}=validation,validator=_validator,{vt:_vt,ht}=style||{},vt=_vt!=null?_vt:core.VerticalAlign.MIDDLE,cellValue=(_b=getCellValueOrigin(data))!=null?_b:"",items=validator.parseCellValue(cellValue),labelColorMap=validator.getListWithColorMap(rule),layout=layoutDropdowns(items,fontStyle,cellWidth,cellHeight);this._drawDownIcon(ctx,cellBounding,cellWidth,cellHeight,vt),ctx.save(),ctx.translateWithPrecision(cellBounding.startX,cellBounding.startY),ctx.beginPath(),ctx.rect(0,0,cellWidth-ICON_PLACE,cellHeight),ctx.clip(),ctx.translateWithPrecision(CELL_PADDING_H,CELL_PADDING_V);let top=0;switch(vt){case core.VerticalAlign.MIDDLE:top=(layout.contentHeight-layout.totalHeight)/2;break;case core.VerticalAlign.BOTTOM:top=layout.contentHeight-layout.totalHeight;break}ctx.translateWithPrecision(0,top),layout.lines.forEach((line,index)=>{ctx.save();const{width,height,items:items2}=line;let left=0;switch(ht){case core.HorizontalAlign.RIGHT:left=layout.contentWidth-width;break;case core.HorizontalAlign.CENTER:left=(layout.contentWidth-width)/2;break}ctx.translate(left,index*(height+MARGIN_V)),items2.forEach(item=>{ctx.save(),ctx.translateWithPrecision(item.left,0),Dropdown.drawWith(ctx,{...fontStyle,info:item,color,fill:labelColorMap[item.text]}),ctx.restore()}),ctx.restore()}),ctx.restore(),map.set(key,{left:cellBounding.startX,top:cellBounding.startY,width:layout.contentWidth+CELL_PADDING_H+ICON_PLACE,height:layout.contentHeight+CELL_PADDING_V*2})}calcCellAutoHeight(info){var _a24;const{primaryWithCoord,style,data}=info,fontRenderExtension=data.fontRenderExtension,{leftOffset=0,rightOffset=0,topOffset=0,downOffset=0}=fontRenderExtension||{},_cellBounding=primaryWithCoord.isMergedMainCell?primaryWithCoord.mergeInfo:primaryWithCoord,cellBounding={startX:_cellBounding.startX+leftOffset,endX:_cellBounding.endX-rightOffset,startY:_cellBounding.startY+topOffset,endY:_cellBounding.endY-downOffset},validation=data.dataValidation;if(!validation)return;const cellWidth=cellBounding.endX-cellBounding.startX,cellHeight=cellBounding.endY-cellBounding.startY,cellValue=(_a24=getCellValueOrigin(data))!=null?_a24:"",{validator:_validator}=validation,items=_validator.parseCellValue(cellValue),fontStyle=engineRender.getFontStyleString(style!=null?style:void 0);return layoutDropdowns(items,fontStyle,cellWidth,cellHeight).cellAutoHeight}isHit(position,info){const{primaryWithCoord}=info,cellBounding=primaryWithCoord.isMergedMainCell?primaryWithCoord.mergeInfo:primaryWithCoord,{endX}=cellBounding,{x}=position;return x>=endX-ICON_PLACE&&x<=endX}onPointerDown(info,evt){if(evt.button===2)return;const{unitId,subUnitId,row,col}=info,params={unitId,subUnitId,row,column:col};this._commandService.executeCommand(ShowDataValidationDropdown.id,params)}},__name(_a11,"DropdownMultipleWidget"),_a11);DropdownMultipleWidget=__decorateClass$b([__decorateParam$b(0,core.ICommandService)],DropdownMultipleWidget);const _ListMultipleValidator=class _ListMultipleValidator extends ListValidator{constructor(){super(...arguments);__publicField(this,"id",core.DataValidationType.LIST_MULTIPLE);__publicField(this,"title","dataValidation.listMultiple.title");__publicField(this,"canvasRender",this.injector.createInstance(DropdownMultipleWidget));__publicField(this,"skipDefaultFontRender",__name(()=>!0,"skipDefaultFontRender"))}};__name(_ListMultipleValidator,"ListMultipleValidator");let ListMultipleValidator=_ListMultipleValidator;const _WholeValidator=class _WholeValidator extends dataValidation.BaseDataValidator{constructor(){super(...arguments);__publicField(this,"_formulaService",this.injector.get(exports.DataValidationFormulaService));__publicField(this,"id",core.DataValidationType.WHOLE);__publicField(this,"title","dataValidation.whole.title");__publicField(this,"operators",[core.DataValidationOperator.BETWEEN,core.DataValidationOperator.EQUAL,core.DataValidationOperator.GREATER_THAN,core.DataValidationOperator.GREATER_THAN_OR_EQUAL,core.DataValidationOperator.LESS_THAN,core.DataValidationOperator.LESS_THAN_OR_EQUAL,core.DataValidationOperator.NOT_BETWEEN,core.DataValidationOperator.NOT_EQUAL]);__publicField(this,"scopes",["sheet"]);__publicField(this,"formulaInput",BASE_FORMULA_INPUT_NAME);__publicField(this,"dropDownInput")}_isFormulaOrInt(formula){return!core.Tools.isBlank(formula)&&(core.isFormulaString(formula)||!Number.isNaN(+formula)&&Number.isInteger(+formula))}async isValidType(cellInfo,formula,rule){const{value:cellValue}=cellInfo,num=getCellValueNumber(cellValue);return!Number.isNaN(num)&&Number.isInteger(num)}transform(cellInfo,formula,rule){const{value:cellValue}=cellInfo;return{...cellInfo,value:getCellValueNumber(cellValue)}}_parseNumber(formula){return formula==null?Number.NaN:+formula}async parseFormula(rule,unitId,subUnitId){var _a24,_b,_c,_d,_e,_f,_g,_h;const formulaInfo=await this._formulaService.getRuleFormulaResult(unitId,subUnitId,rule.uid),{formula1,formula2}=rule;return{formula1:this._parseNumber(core.isFormulaString(formula1)?(_d=(_c=(_b=(_a24=formulaInfo==null?void 0:formulaInfo[0])==null?void 0:_a24.result)==null?void 0:_b[0])==null?void 0:_c[0])==null?void 0:_d.v:formula1),formula2:this._parseNumber(core.isFormulaString(formula2)?(_h=(_g=(_f=(_e=formulaInfo==null?void 0:formulaInfo[1])==null?void 0:_e.result)==null?void 0:_f[0])==null?void 0:_g[0])==null?void 0:_h.v:formula2)}}validatorFormula(rule,unitId,subUnitId){const operator=rule.operator;if(!operator)return{success:!1};const formula1Success=core.Tools.isDefine(rule.formula1)&&this._isFormulaOrInt(rule.formula1),formula2Success=core.Tools.isDefine(rule.formula2)&&this._isFormulaOrInt(rule.formula2),isTwoFormula=TWO_FORMULA_OPERATOR_COUNT.includes(operator),errorMsg=this.localeService.t("dataValidation.validFail.number");return isTwoFormula?{success:formula1Success&&formula2Success,formula1:formula1Success?void 0:errorMsg,formula2:formula2Success?void 0:errorMsg}:{success:formula1Success,formula1:errorMsg}}async validatorIsEqual(cellInfo,formula,rule){const{formula1}=formula,{value:cellValue}=cellInfo;return Number.isNaN(formula1)?!0:cellValue===formula1}async validatorIsNotEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value!==formula1}async validatorIsBetween(cellInfo,formula,_rule){const{formula1,formula2}=formula;if(Number.isNaN(formula1)||Number.isNaN(formula2))return!0;const start=Math.min(formula1,formula2),end=Math.max(formula1,formula2);return cellInfo.value>=start&&cellInfo.value<=end}async validatorIsNotBetween(cellInfo,formula,_rule){const{formula1,formula2}=formula;if(Number.isNaN(formula1)||Number.isNaN(formula2))return!0;const start=Math.min(formula1,formula2),end=Math.max(formula1,formula2);return cellInfo.value<start||cellInfo.value>end}async validatorIsGreaterThan(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value>formula1}async validatorIsGreaterThanOrEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value>=formula1}async validatorIsLessThan(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value<formula1}async validatorIsLessThanOrEqual(cellInfo,formula,_rule){const{formula1}=formula;return Number.isNaN(formula1)?!0:cellInfo.value<=formula1}};__name(_WholeValidator,"WholeValidator");let WholeValidator=_WholeValidator;const DataValidationIcon="data-validation-single",DATA_VALIDATION_MENU_ID="sheet.menu.data-validation";function dataValidationMenuFactory(accessor){return{id:DATA_VALIDATION_MENU_ID,type:ui.MenuItemType.SUBITEMS,icon:DataValidationIcon,tooltip:"dataValidation.title",hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetSetCellStylePermission,sheets.WorksheetEditPermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]})}}__name(dataValidationMenuFactory,"dataValidationMenuFactory");function openDataValidationMenuFactory(_accessor){return{id:OpenValidationPanelOperation.id,title:"dataValidation.panel.title",type:ui.MenuItemType.BUTTON}}__name(openDataValidationMenuFactory,"openDataValidationMenuFactory");function addDataValidationMenuFactory(_accessor){return{id:AddSheetDataValidationAndOpenCommand.id,title:"dataValidation.panel.add",type:ui.MenuItemType.BUTTON}}__name(addDataValidationMenuFactory,"addDataValidationMenuFactory");var __defProp$a=Object.defineProperty,__getOwnPropDesc$a=Object.getOwnPropertyDescriptor,__decorateClass$a=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$a(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$a(target,key,result),result},"__decorateClass$a"),__decorateParam$a=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$a"),_a12;let DataValidationController=(_a12=class extends core.RxDisposable{constructor(_univerInstanceService,_dataValidatorRegistryService,_injector,_componentManger,_selectionManagerService,_sheetInterceptorService,_sheetDataValidationModel){super(),this._univerInstanceService=_univerInstanceService,this._dataValidatorRegistryService=_dataValidatorRegistryService,this._injector=_injector,this._componentManger=_componentManger,this._selectionManagerService=_selectionManagerService,this._sheetInterceptorService=_sheetInterceptorService,this._sheetDataValidationModel=_sheetDataValidationModel,this._init()}_init(){this._registerValidators(),this._initCommandInterceptor(),this._initComponents()}_registerValidators(){[DecimalValidator,WholeValidator,TextLengthValidator,DateValidator,CheckboxValidator,ListValidator,ListMultipleValidator,CustomFormulaValidator].forEach(Validator=>{const validator=this._injector.createInstance(Validator);this.disposeWithMe(this._dataValidatorRegistryService.register(validator)),this.disposeWithMe({dispose:__name(()=>{this._injector.delete(Validator)},"dispose")})})}_initCommandInterceptor(){this._sheetInterceptorService.interceptCommand({getMutations:__name(commandInfo=>{var _a24;if(commandInfo.id===sheets.ClearSelectionAllCommand.id){const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=workbook.getUnitId(),worksheet=workbook.getActiveSheet();if(!worksheet)throw new Error("No active sheet found");const subUnitId=worksheet.getSheetId(),selections=(_a24=this._selectionManagerService.getCurrentSelections())==null?void 0:_a24.map(s=>s.range),ruleMatrix=this._sheetDataValidationModel.getRuleObjectMatrix(unitId,subUnitId).clone();selections&&ruleMatrix.removeRange(selections);const diffs=ruleMatrix.diff(this._sheetDataValidationModel.getRules(unitId,subUnitId)),{redoMutations,undoMutations}=getDataValidationDiffMutations(unitId,subUnitId,diffs,this._injector,"patched");return{undos:undoMutations,redos:redoMutations}}return{undos:[],redos:[]}},"getMutations")})}_initComponents(){[[DataValidationIcon,DataValidationSingle],[DATA_VALIDATION_PANEL,DataValidationPanel],[DROP_DOWN_KEY,CellDropdown],[LIST_DROPDOWN_KEY,ListDropDown],[DATE_DROPDOWN_KEY,DateDropdown],[ListRenderModeInput.componentKey,ListRenderModeInput],[DateShowTimeOption.componentKey,DateShowTimeOption],...FORMULA_INPUTS].forEach(([key,component])=>{this.disposeWithMe(this._componentManger.register(key,component))})}},__name(_a12,"DataValidationController"),_a12);DataValidationController=__decorateClass$a([core.OnLifecycle(core.LifecycleStages.Rendered,DataValidationController),__decorateParam$a(0,core.IUniverInstanceService),__decorateParam$a(1,core.Inject(dataValidation.DataValidatorRegistryService)),__decorateParam$a(2,core.Inject(core.Injector)),__decorateParam$a(3,core.Inject(ui.ComponentManager)),__decorateParam$a(4,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$a(5,core.Inject(sheets.SheetInterceptorService)),__decorateParam$a(6,core.Inject(exports.SheetDataValidationModel))],DataValidationController);var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$9");const ALERT_KEY="SHEET_DATA_VALIDATION_ALERT";var _a13;let DataValidationAlertController=(_a13=class extends core.Disposable{constructor(_hoverManagerService,_cellAlertManagerService,_univerInstanceService,_localeService,_zenZoneService){super(),this._hoverManagerService=_hoverManagerService,this._cellAlertManagerService=_cellAlertManagerService,this._univerInstanceService=_univerInstanceService,this._localeService=_localeService,this._zenZoneService=_zenZoneService,this._init()}_init(){this._initCellAlertPopup(),this._initZenService()}_initCellAlertPopup(){this.disposeWithMe(this._hoverManagerService.currentCell$.pipe(rxjs.debounceTime(100)).subscribe(cellPos=>{var _a24,_b;if(cellPos){const worksheet=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET).getActiveSheet();if(!worksheet)return;const cellData=worksheet.getCell(cellPos.location.row,cellPos.location.col);if(((_a24=cellData==null?void 0:cellData.dataValidation)==null?void 0:_a24.validStatus)===core.DataValidationStatus.INVALID){const currentAlert=this._cellAlertManagerService.currentAlert.get(ALERT_KEY),currentLoc=(_b=currentAlert==null?void 0:currentAlert.alert)==null?void 0:_b.location;if(currentLoc&&currentLoc.row===cellPos.location.row&&currentLoc.col===cellPos.location.col&&currentLoc.subUnitId===cellPos.location.subUnitId&&currentLoc.unitId===cellPos.location.unitId)return;const validator=cellData.dataValidation.validator,rule=cellData.dataValidation.rule;if(!validator)return;this._cellAlertManagerService.showAlert({type:sheetsUi.CellAlertType.ERROR,title:this._localeService.t("dataValidation.error.title"),message:validator==null?void 0:validator.getRuleFinalError(rule),location:cellPos.location,width:200,height:74,key:ALERT_KEY});return}}this._cellAlertManagerService.removeAlert(ALERT_KEY)}))}_initZenService(){this.disposeWithMe(this._zenZoneService.visible$.subscribe(visible=>{visible&&this._cellAlertManagerService.removeAlert(ALERT_KEY)}))}},__name(_a13,"DataValidationAlertController"),_a13);DataValidationAlertController=__decorateClass$9([core.OnLifecycle(core.LifecycleStages.Rendered,DataValidationAlertController),__decorateParam$9(0,core.Inject(sheetsUi.HoverManagerService)),__decorateParam$9(1,core.Inject(sheetsUi.CellAlertManagerService)),__decorateParam$9(2,core.IUniverInstanceService),__decorateParam$9(3,core.Inject(core.LocaleService)),__decorateParam$9(4,ui.IZenZoneService)],DataValidationAlertController);var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$8"),_a14;let DataValidationCopyPasteController=(_a14=class extends core.Disposable{constructor(_sheetClipboardService,_sheetDataValidationModel,_injector){super();__publicField(this,"_copyInfo");this._sheetClipboardService=_sheetClipboardService,this._sheetDataValidationModel=_sheetDataValidationModel,this._injector=_injector,this._initCopyPaste()}_initCopyPaste(){this._sheetClipboardService.addClipboardHook({id:DATA_VALIDATION_PLUGIN_NAME,onBeforeCopy:__name((unitId,subUnitId,range)=>this._collect(unitId,subUnitId,range),"onBeforeCopy"),onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>{const{copyType=sheetsUi.COPY_TYPE.COPY,pasteType}=payload,{range:copyRange}=pasteFrom||{},{range:pastedRange,unitId,subUnitId}=pasteTo;return this._generateMutations(pastedRange,{copyType,pasteType,copyRange,unitId,subUnitId})},"onPasteCells")})}_collect(unitId,subUnitId,range){const matrix=new core.ObjectMatrix;this._copyInfo={unitId,subUnitId,matrix};const discreteRange=this._injector.invoke(accessor=>sheetsUi.rangeToDiscreteRange(range,accessor,unitId,subUnitId));if(!discreteRange)return;const{rows,cols}=discreteRange;rows.forEach((row,rowIndex)=>{cols.forEach((col,colIndex)=>{const ruleId=this._sheetDataValidationModel.getRuleIdByLocation(unitId,subUnitId,row,col);matrix.setValue(rowIndex,colIndex,ruleId!=null?ruleId:"")})})}_generateMutations(pastedRange,copyInfo){if(!this._copyInfo)return{redos:[],undos:[]};if(copyInfo.copyType===sheetsUi.COPY_TYPE.CUT)return this._copyInfo=null,{redos:[],undos:[]};if(!this._copyInfo||!this._copyInfo.matrix.getSizeOf()||!copyInfo.copyRange)return{redos:[],undos:[]};if([sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMAT,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA].includes(copyInfo.pasteType))return{redos:[],undos:[]};const{unitId,subUnitId}=this._copyInfo;if(copyInfo.unitId!==unitId||subUnitId!==copyInfo.subUnitId){const ruleMatrix=this._sheetDataValidationModel.getRuleObjectMatrix(copyInfo.unitId,copyInfo.subUnitId).clone(),additionMatrix=new core.ObjectMatrix,addRules=new Set,{ranges:[vCopyRange,vPastedRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([copyInfo.copyRange,pastedRange]),repeatRange=sheetsUi.getRepeatRange(vCopyRange,vPastedRange,!0),additionRules=new Map;repeatRange.forEach(({startRange})=>{var _a24;(_a24=this._copyInfo)==null||_a24.matrix.forValue((row,col,ruleId)=>{const range=core.Rectangle.getPositionRange({startRow:row,endRow:row,startColumn:col,endColumn:col},startRange),transformedRuleId=`${subUnitId}-${ruleId}`,oldRule=this._sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId);!this._sheetDataValidationModel.getRuleById(copyInfo.unitId,copyInfo.subUnitId,transformedRuleId)&&oldRule&&additionRules.set(transformedRuleId,{...oldRule,uid:transformedRuleId});const{row:startRow,col:startColumn}=mapFunc(range.startRow,range.startColumn);addRules.add(transformedRuleId),additionMatrix.setValue(startRow,startColumn,transformedRuleId)})});const additions=Array.from(addRules).map(id=>({id,ranges:core.queryObjectMatrix(additionMatrix,value=>value===id)}));ruleMatrix.addRangeRules(additions);const{redoMutations,undoMutations}=getDataValidationDiffMutations(copyInfo.unitId,copyInfo.subUnitId,ruleMatrix.diffWithAddition(this._sheetDataValidationModel.getRules(copyInfo.unitId,copyInfo.subUnitId),additionRules.values()),this._injector,"patched");return{redos:redoMutations,undos:undoMutations}}else{const ruleMatrix=this._sheetDataValidationModel.getRuleObjectMatrix(unitId,subUnitId).clone(),additionMatrix=new core.ObjectMatrix,additionRules=new Set,{ranges:[vCopyRange,vPastedRange],mapFunc}=sheetsUi.virtualizeDiscreteRanges([copyInfo.copyRange,pastedRange]);sheetsUi.getRepeatRange(vCopyRange,vPastedRange,!0).forEach(({startRange})=>{var _a24;(_a24=this._copyInfo)==null||_a24.matrix.forValue((row,col,ruleId)=>{const range=core.Rectangle.getPositionRange({startRow:row,endRow:row,startColumn:col,endColumn:col},startRange),{row:startRow,col:startColumn}=mapFunc(range.startRow,range.startColumn);additionMatrix.setValue(startRow,startColumn,ruleId),additionRules.add(ruleId)})});const additions=Array.from(additionRules).map(id=>({id,ranges:core.queryObjectMatrix(additionMatrix,value=>value===id)}));ruleMatrix.addRangeRules(additions);const{redoMutations,undoMutations}=getDataValidationDiffMutations(unitId,subUnitId,ruleMatrix.diff(this._sheetDataValidationModel.getRules(unitId,subUnitId)),this._injector,"patched");return{redos:redoMutations,undos:undoMutations}}}},__name(_a14,"DataValidationCopyPasteController"),_a14);DataValidationCopyPasteController=__decorateClass$8([core.OnLifecycle(core.LifecycleStages.Ready,DataValidationCopyPasteController),__decorateParam$8(0,sheetsUi.ISheetClipboardService),__decorateParam$8(1,core.Inject(exports.SheetDataValidationModel)),__decorateParam$8(2,core.Inject(core.Injector))],DataValidationCopyPasteController);var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$7"),_a15;let DataValidationPermissionController=(_a15=class extends core.Disposable{constructor(_localeService,_commandService,_sheetPermissionInterceptorBaseController){super(),this._localeService=_localeService,this._commandService=_commandService,this._sheetPermissionInterceptorBaseController=_sheetPermissionInterceptorBaseController,this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{command.id===AddSheetDataValidationCommand.id&&(this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellStylePermission]})||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.setStyleErr"))),command.id===UpdateSheetDataValidationRangeCommand.id&&(this._sheetPermissionInterceptorBaseController.permissionCheckWithRanges({workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellStylePermission]},command.params.ranges)||this._sheetPermissionInterceptorBaseController.haveNotPermissionHandle(this._localeService.t("permission.dialog.setStyleErr")))}))}},__name(_a15,"DataValidationPermissionController"),_a15);DataValidationPermissionController=__decorateClass$7([core.OnLifecycle(core.LifecycleStages.Ready,DataValidationPermissionController),__decorateParam$7(0,core.Inject(core.LocaleService)),__decorateParam$7(1,core.ICommandService),__decorateParam$7(2,core.Inject(sheetsUi.SheetPermissionInterceptorBaseController))],DataValidationPermissionController);var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$6"),_a16;let DataValidationRefRangeController=(_a16=class extends core.Disposable{constructor(_dataValidationModel,_injector,_refRangeService,_dataValidationCustomFormulaService,_dataValidationFormulaService,_formulaRefRangeService){super();__publicField(this,"_disposableMap",new Map);__publicField(this,"registerRule",__name((unitId,subUnitId,rule)=>{this.register(unitId,subUnitId,rule),this.registerFormula(unitId,subUnitId,rule)},"registerRule"));this._dataValidationModel=_dataValidationModel,this._injector=_injector,this._refRangeService=_refRangeService,this._dataValidationCustomFormulaService=_dataValidationCustomFormulaService,this._dataValidationFormulaService=_dataValidationFormulaService,this._formulaRefRangeService=_formulaRefRangeService,this._initRefRange()}_getIdWithUnitId(unitID,subUnitId,ruleId){return`${unitID}_${subUnitId}_${ruleId}`}registerFormula(unitId,subUnitId,rule){var _a24;const ruleId=rule.uid,id=this._getIdWithUnitId(unitId,subUnitId,ruleId),disposeSet=(_a24=this._disposableMap.get(id))!=null?_a24:new Set,handleFormulaChange=__name((type,formulaString)=>{const oldRule=this._dataValidationModel.getRuleById(unitId,subUnitId,ruleId);if(!oldRule)return{redos:[],undos:[]};const oldFormula=oldRule[type];if(!oldFormula||oldFormula===formulaString)return{redos:[],undos:[]};const redoParams={unitId,subUnitId,ruleId:rule.uid,payload:{type:dataValidation.UpdateRuleType.SETTING,payload:{type:oldRule.type,formula1:oldRule.formula1,formula2:oldRule.formula2,[type]:formulaString}}},undoParams={unitId,subUnitId,ruleId:rule.uid,payload:{type:dataValidation.UpdateRuleType.SETTING,payload:{type:oldRule.type,formula1:oldRule.formula1,formula2:oldRule.formula2}}},redos=[{id:dataValidation.UpdateDataValidationMutation.id,params:redoParams}],undos=[{id:dataValidation.UpdateDataValidationMutation.id,params:undoParams}];return{redos,undos}},"handleFormulaChange");if(rule.type===core.DataValidationType.CUSTOM){const currentFormula=this._dataValidationCustomFormulaService.getRuleFormulaInfo(unitId,subUnitId,ruleId);if(currentFormula){const disposable=this._formulaRefRangeService.registerFormula(currentFormula.formula,newFormulaString=>handleFormulaChange("formula1",newFormulaString));disposeSet.add(()=>disposable.dispose())}}if(rule.type!==core.DataValidationType.CUSTOM){const currentFormula=this._dataValidationFormulaService.getRuleFormulaInfo(unitId,subUnitId,ruleId);if(currentFormula){const[formula1,formula2]=currentFormula;if(formula1){const disposable=this._formulaRefRangeService.registerFormula(formula1.text,newFormulaString=>handleFormulaChange("formula1",newFormulaString));disposeSet.add(()=>disposable.dispose())}if(formula2){const disposable=this._formulaRefRangeService.registerFormula(formula2.text,newFormulaString=>handleFormulaChange("formula2",newFormulaString));disposeSet.add(()=>disposable.dispose())}}}}register(unitId,subUnitId,rule){var _a24;const handleRangeChange=__name(commandInfo=>{const oldRanges=[...rule.ranges],resultRanges=oldRanges.map(range=>sheets.handleCommonDefaultRangeChangeWithEffectRefCommands(range,commandInfo)).filter(range=>!!range).flat();if(core.isRangesEqual(resultRanges,oldRanges))return{redos:[],undos:[]};if(resultRanges.length){const redoParams={unitId,subUnitId,ruleId:rule.uid,payload:{type:dataValidation.UpdateRuleType.RANGE,payload:resultRanges},source:"patched"},redos=[{id:dataValidation.UpdateDataValidationMutation.id,params:redoParams}],undos=[{id:dataValidation.UpdateDataValidationMutation.id,params:{unitId,subUnitId,ruleId:rule.uid,payload:{type:dataValidation.UpdateRuleType.RANGE,payload:oldRanges},source:"patched"}}];return{redos,undos}}else{const redoParams={unitId,subUnitId,ruleId:rule.uid},redos=[{id:dataValidation.RemoveDataValidationMutation.id,params:redoParams}],undos=removeDataValidationUndoFactory(this._injector,redoParams);return{redos,undos}}},"handleRangeChange"),disposeList=[];rule.ranges.forEach(range=>{const disposable=this._refRangeService.registerRefRange(range,handleRangeChange,unitId,subUnitId);disposeList.push(()=>disposable.dispose())});const id=this._getIdWithUnitId(unitId,subUnitId,rule.uid),current=(_a24=this._disposableMap.get(id))!=null?_a24:new Set;current.add(()=>disposeList.forEach(dispose=>dispose())),this._disposableMap.set(id,current)}_initRefRange(){const allRules=this._dataValidationModel.getAll();for(const[unitId,subUnitMap]of allRules)for(const[subUnitId,rules]of subUnitMap)for(const rule of rules)this.registerRule(unitId,subUnitId,rule);this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(option=>{const{unitId,subUnitId,rule}=option;switch(option.type){case"add":{const rule2=option.rule;this.registerRule(option.unitId,option.subUnitId,rule2);break}case"remove":{const disposeSet=this._disposableMap.get(this._getIdWithUnitId(unitId,subUnitId,rule.uid));disposeSet&&disposeSet.forEach(dispose=>dispose());break}case"update":{const rule2=option.rule,disposeSet=this._disposableMap.get(this._getIdWithUnitId(unitId,subUnitId,rule2.uid));disposeSet&&disposeSet.forEach(dispose=>dispose()),this.registerRule(option.unitId,option.subUnitId,rule2);break}}})),this.disposeWithMe(core.toDisposable(()=>{this._disposableMap.forEach(item=>{item.forEach(dispose=>dispose())}),this._disposableMap.clear()}))}},__name(_a16,"DataValidationRefRangeController"),_a16);DataValidationRefRangeController=__decorateClass$6([core.OnLifecycle(core.LifecycleStages.Starting,DataValidationRefRangeController),__decorateParam$6(0,core.Inject(exports.SheetDataValidationModel)),__decorateParam$6(1,core.Inject(core.Injector)),__decorateParam$6(2,core.Inject(sheets.RefRangeService)),__decorateParam$6(3,core.Inject(exports.DataValidationCustomFormulaService)),__decorateParam$6(4,core.Inject(exports.DataValidationFormulaService)),__decorateParam$6(5,core.Inject(sheetsFormula.FormulaRefRangeService))],DataValidationRefRangeController);const menuSchema={[ui.RibbonStartGroup.FORMULAS_INSERT]:{[DATA_VALIDATION_MENU_ID]:{order:9,menuItemFactory:dataValidationMenuFactory,[OpenValidationPanelOperation.id]:{order:0,menuItemFactory:openDataValidationMenuFactory},[AddSheetDataValidationAndOpenCommand.id]:{order:1,menuItemFactory:addDataValidationMenuFactory}}}};var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5");const INVALID_MARK={tr:{size:6,color:"#fe4b4b"}};var _a17;let SheetsDataValidationRenderController=(_a17=class extends core.RxDisposable{constructor(_commandService,_menuManagerService,_renderManagerService,_univerInstanceService,_autoHeightController,_dropdownManagerService,_sheetDataValidationModel,_dataValidatorRegistryService,_sheetInterceptorService,_editorBridgeService){super(),this._commandService=_commandService,this._menuManagerService=_menuManagerService,this._renderManagerService=_renderManagerService,this._univerInstanceService=_univerInstanceService,this._autoHeightController=_autoHeightController,this._dropdownManagerService=_dropdownManagerService,this._sheetDataValidationModel=_sheetDataValidationModel,this._dataValidatorRegistryService=_dataValidatorRegistryService,this._sheetInterceptorService=_sheetInterceptorService,this._editorBridgeService=_editorBridgeService,this._initMenu(),this._initSkeletonChange(),this._initDropdown(),this._initViewModelIntercept(),this._initAutoHeight()}_initMenu(){this._menuManagerService.mergeMenu(menuSchema)}_initDropdown(){this._editorBridgeService&&this.disposeWithMe(this._editorBridgeService.visible$.subscribe(visible=>{var _a24;if(!visible.visible){((_a24=this._dropdownManagerService.activeDropdown)==null?void 0:_a24.trigger)==="editor-bridge"&&this._dropdownManagerService.hideDropdown();return}const state=this._editorBridgeService.getEditCellState();if(state){const{unitId,sheetId,row,column}=state,workbook=this._univerInstanceService.getUniverSheetInstance(unitId);if(!workbook)return;const rule=this._sheetDataValidationModel.getRuleByLocation(unitId,sheetId,row,column);if(!rule)return;const validator=this._dataValidatorRegistryService.getValidatorItem(rule.type);if(!(validator!=null&&validator.dropdown))return;const worksheet=workbook.getActiveSheet();if(!worksheet)return;const activeDropdown=this._dropdownManagerService.activeDropdown,currLoc=activeDropdown==null?void 0:activeDropdown.location;if(currLoc&&currLoc.unitId===unitId&&currLoc.subUnitId===sheetId&&currLoc.row===row&&currLoc.col===column)return;this._dropdownManagerService.showDropdown({location:{unitId,subUnitId:sheetId,row,col:column,workbook,worksheet},componentKey:validator.dropdown,onHide:__name(()=>{},"onHide"),trigger:"editor-bridge"},!1)}}))}_initSkeletonChange(){const markSkeletonDirty=__name(()=>{var _a24,_b,_c;const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const unitId=workbook.getUnitId(),subUnitId=(_a24=workbook.getActiveSheet())==null?void 0:_a24.getSheetId();if(!subUnitId)return;const skeleton=(_c=(_b=this._renderManagerService.getRenderById(unitId))==null?void 0:_b.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(subUnitId))==null?void 0:_c.skeleton,currentRender=this._renderManagerService.getRenderById(unitId);skeleton==null||skeleton.makeDirty(!0),skeleton==null||skeleton.calculate(),currentRender&&currentRender.mainComponent.makeForceDirty()},"markSkeletonDirty");this.disposeWithMe(this._sheetDataValidationModel.ruleChange$.pipe(rxjs.debounceTime(16)).subscribe(()=>markSkeletonDirty())),this.disposeWithMe(this._sheetDataValidationModel.validStatusChange$.pipe(rxjs.debounceTime(16)).subscribe(()=>markSkeletonDirty()))}_initViewModelIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{effect:core.InterceptorEffectEnum.Style,priority:sheets.InterceptCellContentPriority.DATA_VALIDATION,handler:__name((cell,pos,next)=>{var _a24,_b,_c,_d;const{row,col,unitId,subUnitId,workbook,worksheet}=pos,ruleId=this._sheetDataValidationModel.getRuleIdByLocation(unitId,subUnitId,row,col);if(!ruleId)return next(cell);const rule=this._sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId);if(!rule)return next(cell);const validStatus=this._sheetDataValidationModel.validator(cell,rule,pos),validator=this._dataValidatorRegistryService.getValidatorItem(rule.type),cellOrigin=pos.rawData;let cache;const cellValue={get value(){var _a25;return cache!==void 0||(cache=(_a25=getCellValueOrigin(cellOrigin))!=null?_a25:null),cache}},valueStr={get value(){var _a25;return`${(_a25=cellValue.value)!=null?_a25:""}`}};return next({...cell,dataValidation:{ruleId,validStatus,rule,validator},markers:{...cell==null?void 0:cell.markers,...validStatus===core.DataValidationStatus.INVALID?INVALID_MARK:null},customRender:[...(_a24=cell==null?void 0:cell.customRender)!=null?_a24:[],...validator!=null&&validator.canvasRender?[validator.canvasRender]:[]],fontRenderExtension:{...cell==null?void 0:cell.fontRenderExtension,isSkip:((_b=cell==null?void 0:cell.fontRenderExtension)==null?void 0:_b.isSkip)||((_c=validator==null?void 0:validator.skipDefaultFontRender)==null?void 0:_c.call(validator,rule,cellValue.value,pos))},interceptorStyle:{...cell==null?void 0:cell.interceptorStyle,...validator==null?void 0:validator.getExtraStyle(rule,valueStr.value,{get style(){const styleMap=workbook.getStyles();return(typeof(cell==null?void 0:cell.s)=="string"?styleMap.get(cell==null?void 0:cell.s):cell==null?void 0:cell.s)||{}}})},interceptorAutoHeight:__name(()=>{var _a25,_b2,_c2,_d2,_e,_f;const skeleton=(_b2=(_a25=this._renderManagerService.getRenderById(unitId))==null?void 0:_a25.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(subUnitId))==null?void 0:_b2.skeleton;if(!skeleton)return;const mergeCell=skeleton.worksheet.getMergedCell(row,col),info={data:{...cell,dataValidation:{ruleId,validStatus,rule,validator}},style:skeleton.getsStyles().getStyleByCell(cell),primaryWithCoord:skeleton.getCellByIndex((_c2=mergeCell==null?void 0:mergeCell.startRow)!=null?_c2:row,(_d2=mergeCell==null?void 0:mergeCell.startColumn)!=null?_d2:col),unitId,subUnitId,row,col,workbook,worksheet};return(_f=(_e=validator==null?void 0:validator.canvasRender)==null?void 0:_e.calcCellAutoHeight)==null?void 0:_f.call(_e,info)},"interceptorAutoHeight"),coverable:((_d=cell==null?void 0:cell.coverable)!=null?_d:!0)&&!(rule.type===core.DataValidationType.LIST||rule.type===core.DataValidationType.LIST_MULTIPLE)})},"handler")}))}_initAutoHeight(){this._sheetDataValidationModel.ruleChange$.pipe(rxjs.filter(change=>change.source==="command"),rxjs.bufferTime(16)).subscribe(infos=>{const ranges=[];if(infos.forEach(info=>{var _a24;(_a24=info.rule)!=null&&_a24.ranges&&ranges.push(...info.rule.ranges)}),ranges.length){const mutations=this._autoHeightController.getUndoRedoParamsOfAutoHeight(ranges);core.sequenceExecute(mutations.redos,this._commandService)}})}},__name(_a17,"SheetsDataValidationRenderController"),_a17);SheetsDataValidationRenderController=__decorateClass$5([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsDataValidationRenderController),__decorateParam$5(0,core.ICommandService),__decorateParam$5(1,ui.IMenuManagerService),__decorateParam$5(2,engineRender.IRenderManagerService),__decorateParam$5(3,core.IUniverInstanceService),__decorateParam$5(4,core.Inject(sheetsUi.AutoHeightController)),__decorateParam$5(5,core.Inject(DataValidationDropdownManagerService)),__decorateParam$5(6,core.Inject(exports.SheetDataValidationModel)),__decorateParam$5(7,core.Inject(dataValidation.DataValidatorRegistryService)),__decorateParam$5(8,core.Inject(sheets.SheetInterceptorService)),__decorateParam$5(9,core.Optional(sheetsUi.IEditorBridgeService))],SheetsDataValidationRenderController);var _a18;let SheetsDataValidationMobileRenderController=(_a18=class extends core.RxDisposable{constructor(_commandService,_renderManagerService,_univerInstanceService,_autoHeightController,_dataValidatorRegistryService,_sheetInterceptorService,_sheetDataValidationModel){super(),this._commandService=_commandService,this._renderManagerService=_renderManagerService,this._univerInstanceService=_univerInstanceService,this._autoHeightController=_autoHeightController,this._dataValidatorRegistryService=_dataValidatorRegistryService,this._sheetInterceptorService=_sheetInterceptorService,this._sheetDataValidationModel=_sheetDataValidationModel,this._initSkeletonChange(),this._initViewModelIntercept(),this._initAutoHeight()}_initSkeletonChange(){const markSkeletonDirty=__name(()=>{var _a24,_b,_c;const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(!workbook)return;const unitId=workbook.getUnitId(),subUnitId=(_a24=workbook.getActiveSheet())==null?void 0:_a24.getSheetId();if(!subUnitId)return;const skeleton=(_c=(_b=this._renderManagerService.getRenderById(unitId))==null?void 0:_b.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(subUnitId))==null?void 0:_c.skeleton,currentRender=this._renderManagerService.getRenderById(unitId);skeleton==null||skeleton.makeDirty(!0),skeleton==null||skeleton.calculate(),currentRender&&currentRender.mainComponent.makeForceDirty()},"markSkeletonDirty");this.disposeWithMe(this._sheetDataValidationModel.ruleChange$.pipe(rxjs.debounceTime(16)).subscribe(()=>markSkeletonDirty())),this.disposeWithMe(this._sheetDataValidationModel.validStatusChange$.pipe(rxjs.debounceTime(16)).subscribe(()=>markSkeletonDirty()))}_initViewModelIntercept(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{effect:core.InterceptorEffectEnum.Style,priority:sheets.InterceptCellContentPriority.DATA_VALIDATION,handler:__name((cell,pos,next)=>{var _a24,_b,_c,_d;const{row,col,unitId,subUnitId,workbook,worksheet}=pos,ruleId=this._sheetDataValidationModel.getRuleIdByLocation(unitId,subUnitId,row,col);if(!ruleId)return next(cell);const rule=this._sheetDataValidationModel.getRuleById(unitId,subUnitId,ruleId);if(!rule)return next(cell);const validStatus=this._sheetDataValidationModel.validator(cell,rule,pos),validator=this._dataValidatorRegistryService.getValidatorItem(rule.type),cellOrigin=worksheet.getCellRaw(row,col),cellValue=getCellValueOrigin(cellOrigin),valueStr=`${cellValue!=null?cellValue:""}`;return next({...cell,dataValidation:{ruleId,validStatus,rule,validator},markers:{...cell==null?void 0:cell.markers,...validStatus===core.DataValidationStatus.INVALID?INVALID_MARK:null},customRender:[...(_a24=cell==null?void 0:cell.customRender)!=null?_a24:[],...validator!=null&&validator.canvasRender?[validator.canvasRender]:[]],fontRenderExtension:{...cell==null?void 0:cell.fontRenderExtension,isSkip:((_b=cell==null?void 0:cell.fontRenderExtension)==null?void 0:_b.isSkip)||((_c=validator==null?void 0:validator.skipDefaultFontRender)==null?void 0:_c.call(validator,rule,cellValue,pos))},interceptorStyle:{...cell==null?void 0:cell.interceptorStyle,...validator==null?void 0:validator.getExtraStyle(rule,valueStr,{get style(){const styleMap=workbook.getStyles();return(typeof(cell==null?void 0:cell.s)=="string"?styleMap.get(cell==null?void 0:cell.s):cell==null?void 0:cell.s)||{}}})},interceptorAutoHeight:__name(()=>{var _a25,_b2,_c2,_d2,_e,_f;const skeleton=(_b2=(_a25=this._renderManagerService.getRenderById(unitId))==null?void 0:_a25.with(sheetsUi.SheetSkeletonManagerService).getWorksheetSkeleton(subUnitId))==null?void 0:_b2.skeleton;if(!skeleton)return;const mergeCell=skeleton.worksheet.getMergedCell(row,col),info={data:{...cell,dataValidation:{ruleId,validStatus,rule,validator}},style:skeleton.getsStyles().getStyleByCell(cell),primaryWithCoord:skeleton.getCellByIndex((_c2=mergeCell==null?void 0:mergeCell.startRow)!=null?_c2:row,(_d2=mergeCell==null?void 0:mergeCell.startColumn)!=null?_d2:col),unitId,subUnitId,row,col,workbook,worksheet};return(_f=(_e=validator==null?void 0:validator.canvasRender)==null?void 0:_e.calcCellAutoHeight)==null?void 0:_f.call(_e,info)},"interceptorAutoHeight"),coverable:((_d=cell==null?void 0:cell.coverable)!=null?_d:!0)&&!(rule.type===core.DataValidationType.LIST||rule.type===core.DataValidationType.LIST_MULTIPLE)})},"handler")}))}_initAutoHeight(){this._sheetDataValidationModel.ruleChange$.pipe(rxjs.filter(change=>change.source==="command"),rxjs.bufferTime(16)).subscribe(infos=>{const ranges=[];if(infos.forEach(info=>{var _a24;(_a24=info.rule)!=null&&_a24.ranges&&ranges.push(...info.rule.ranges)}),ranges.length){const mutations=this._autoHeightController.getUndoRedoParamsOfAutoHeight(ranges);core.sequenceExecute(mutations.redos,this._commandService)}})}},__name(_a18,"SheetsDataValidationMobileRenderController"),_a18);SheetsDataValidationMobileRenderController=__decorateClass$5([core.OnLifecycle(core.LifecycleStages.Rendered,SheetsDataValidationMobileRenderController),__decorateParam$5(0,core.ICommandService),__decorateParam$5(1,engineRender.IRenderManagerService),__decorateParam$5(2,core.IUniverInstanceService),__decorateParam$5(3,core.Inject(sheetsUi.AutoHeightController)),__decorateParam$5(4,core.Inject(dataValidation.DataValidatorRegistryService)),__decorateParam$5(5,core.Inject(sheets.SheetInterceptorService)),__decorateParam$5(6,core.Inject(exports.SheetDataValidationModel))],SheetsDataValidationMobileRenderController);var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4"),_a19;exports.SheetsDataValidationValidatorService=(_a19=class{constructor(_univerInstanceService,_sheetDataValidationModel,_dataValidationCacheService){this._univerInstanceService=_univerInstanceService,this._sheetDataValidationModel=_sheetDataValidationModel,this._dataValidationCacheService=_dataValidationCacheService}async validatorCell(unitId,subUnitId,row,col){const workbook=this._univerInstanceService.getUnit(unitId,core.UniverInstanceType.UNIVER_SHEET);if(!workbook)throw new Error(`cannot find current workbook, unitId: ${unitId}`);const worksheet=workbook.getSheetBySheetId(subUnitId);if(!worksheet)throw new Error(`cannot find current worksheet, sheetId: ${subUnitId}`);if(!core.Tools.isDefine(row)||!core.Tools.isDefine(col))throw new Error(`row or col is not defined, row: ${row}, col: ${col}`);const cell=worksheet.getCell(row,col),rule=this._sheetDataValidationModel.getRuleByLocation(unitId,subUnitId,row,col);return rule?new Promise(resolve=>{this._sheetDataValidationModel.validator(cell,rule,{unitId,subUnitId,row,col,worksheet,workbook},resolve)}):core.DataValidationStatus.VALID}validatorRanges(unitId,subUnitId,ranges){return Promise.all(ranges.map(range=>{const promises=[];return core.Range.foreach(range,(row,col)=>{promises.push(this.validatorCell(unitId,subUnitId,row,col))}),promises}))}async validatorWorksheet(unitId,subUnitId){const rules=this._sheetDataValidationModel.getRules(unitId,subUnitId);return await Promise.all(rules.map(rule=>Promise.all(rule.ranges.map(range=>{const promises=[];return core.Range.foreach(range,(row,col)=>{promises.push(this.validatorCell(unitId,subUnitId,row,col))}),promises})))),this._dataValidationCacheService.ensureCache(unitId,subUnitId)}async validatorWorkbook(unitId){const sheetIds=this._sheetDataValidationModel.getSubUnitIds(unitId),results=await Promise.all(sheetIds.map(id=>this.validatorWorksheet(unitId,id))),map={};return results.forEach((result,i)=>{map[sheetIds[i]]=result}),map}getDataValidations(unitId,subUnitId,ranges){const ruleMatrix=this._sheetDataValidationModel.getRuleObjectMatrix(unitId,subUnitId),ruleIdSet=new Set;return ranges.forEach(range=>{core.Range.foreach(range,(row,col)=>{const ruleId=ruleMatrix.getValue(row,col);ruleId&&ruleIdSet.add(ruleId)})}),Array.from(ruleIdSet).map(id=>this._sheetDataValidationModel.getRuleById(unitId,subUnitId,id)).filter(Boolean)}getDataValidation(unitId,subUnitId,ranges){return this.getDataValidations(unitId,subUnitId,ranges)[0]}},__name(_a19,"SheetsDataValidationValidatorService"),_a19);exports.SheetsDataValidationValidatorService=__decorateClass$4([__decorateParam$4(0,core.IUniverInstanceService),__decorateParam$4(1,core.Inject(exports.SheetDataValidationModel)),__decorateParam$4(2,core.Inject(DataValidationCacheService))],exports.SheetsDataValidationValidatorService);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__defNormalProp$1=__name((obj,key,value)=>key in obj?__defProp$3(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp$1"),__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3"),__publicField$1=__name((obj,key,value)=>__defNormalProp$1(obj,typeof key!="symbol"?key+"":key,value),"__publicField$1"),_a20;exports.UniverSheetsDataValidationMobilePlugin=(_a20=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_commandService,_configService){super(),this._config=_config,this._injector=_injector,this._commandService=_commandService,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY,rest)}onStarting(){[[DataValidationPanelService],[DataValidationCacheService],[exports.DataValidationFormulaService],[exports.DataValidationCustomFormulaService],[DataValidationDropdownManagerService],[exports.SheetsDataValidationValidatorService],[exports.SheetDataValidationModel],[DataValidationController],[SheetsDataValidationMobileRenderController],[DataValidationAlertController],[DataValidationRefRangeController],[DataValidationPermissionController],[DataValidationCopyPasteController],[DataValidationFormulaController]].forEach(dep=>{this._injector.add(dep)}),[AddSheetDataValidationCommand,AddSheetDataValidationAndOpenCommand,UpdateSheetDataValidationRangeCommand,UpdateSheetDataValidationSettingCommand,UpdateSheetDataValidationOptionsCommand,RemoveSheetDataValidationCommand,RemoveSheetAllDataValidationCommand,ClearRangeDataValidationCommand,ShowDataValidationDropdown,HideDataValidationDropdown,CloseValidationPanelOperation,OpenValidationPanelOperation,ToggleValidationPanelOperation].forEach(command=>{this._commandService.registerCommand(command)})}},__name(_a20,"UniverSheetsDataValidationMobilePlugin"),_a20);__publicField$1(exports.UniverSheetsDataValidationMobilePlugin,"pluginName",DATA_VALIDATION_PLUGIN_NAME);__publicField$1(exports.UniverSheetsDataValidationMobilePlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsDataValidationMobilePlugin=__decorateClass$3([core.DependentOn(dataValidation.UniverDataValidationPlugin,sheets.UniverSheetsPlugin,sheetsUi.UniverSheetsUIPlugin),__decorateParam$3(1,core.Inject(core.Injector)),__decorateParam$3(2,core.ICommandService),__decorateParam$3(3,core.IConfigService)],exports.UniverSheetsDataValidationMobilePlugin);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2"),_a21;let DataValidationAutoFillController=(_a21=class extends core.Disposable{constructor(_autoFillService,_dataValidationModel,_injector){super(),this._autoFillService=_autoFillService,this._dataValidationModel=_dataValidationModel,this._injector=_injector,this._initAutoFill()}_initAutoFill(){const noopReturnFunc=__name(()=>({redos:[],undos:[]}),"noopReturnFunc"),generalApplyFunc=__name((location,applyType)=>{const{source:sourceRange,target:targetRange,unitId,subUnitId}=location,ruleMatrixCopy=this._dataValidationModel.getRuleObjectMatrix(unitId,subUnitId).clone(),virtualRange=sheetsUi.virtualizeDiscreteRanges([sourceRange,targetRange]),[vSourceRange,vTargetRange]=virtualRange.ranges,{mapFunc}=virtualRange,sourceStartCell={row:vSourceRange.startRow,col:vSourceRange.startColumn},repeats=sheetsUi.getAutoFillRepeatRange(vSourceRange,vTargetRange),additionMatrix=new core.ObjectMatrix,additionRules=new Set;repeats.forEach(repeat=>{const targetStartCell=repeat.repeatStartCell,relativeRange=repeat.relativeRange,sourceRange2={startRow:sourceStartCell.row,startColumn:sourceStartCell.col,endColumn:sourceStartCell.col,endRow:sourceStartCell.row},targetRange2={startRow:targetStartCell.row,startColumn:targetStartCell.col,endColumn:targetStartCell.col,endRow:targetStartCell.row};core.Range.foreach(relativeRange,(row,col)=>{const sourcePositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},sourceRange2),{row:sourceRow,col:sourceCol}=mapFunc(sourcePositionRange.startRow,sourcePositionRange.startColumn),ruleId=this._dataValidationModel.getRuleIdByLocation(unitId,subUnitId,sourceRow,sourceCol);if(ruleId){const targetPositionRange=core.Rectangle.getPositionRange({startRow:row,startColumn:col,endColumn:col,endRow:row},targetRange2),{row:targetRow,col:targetCol}=mapFunc(targetPositionRange.startRow,targetPositionRange.startColumn);additionMatrix.setValue(targetRow,targetCol,ruleId),additionRules.add(ruleId)}})});const additions=Array.from(additionRules).map(id=>({id,ranges:core.queryObjectMatrix(additionMatrix,value=>value===id)}));ruleMatrixCopy.addRangeRules(additions);const diffs=ruleMatrixCopy.diff(this._dataValidationModel.getRules(unitId,subUnitId)),{redoMutations,undoMutations}=getDataValidationDiffMutations(unitId,subUnitId,diffs,this._injector,"patched",applyType===sheetsUi.APPLY_TYPE.ONLY_FORMAT);return{undos:undoMutations,redos:redoMutations}},"generalApplyFunc"),disabledDataVallation=[core.DataValidationType.CHECKBOX],hook={id:DATA_VALIDATION_PLUGIN_NAME,onBeforeFillData:__name(location=>{const{source:sourceRange,unitId,subUnitId}=location;for(const row of sourceRange.rows)for(const col of sourceRange.cols){const dv=this._dataValidationModel.getRuleByLocation(unitId,subUnitId,row,col);if(dv&&disabledDataVallation.indexOf(dv.type)>-1){this._autoFillService.setDisableApplyType(sheetsUi.APPLY_TYPE.SERIES,!0);return}}},"onBeforeFillData"),onFillData:__name((location,direction,applyType)=>applyType===sheetsUi.APPLY_TYPE.COPY||applyType===sheetsUi.APPLY_TYPE.ONLY_FORMAT||applyType===sheetsUi.APPLY_TYPE.SERIES?generalApplyFunc(location,applyType):noopReturnFunc(),"onFillData"),onAfterFillData:__name(()=>{},"onAfterFillData")};this.disposeWithMe(this._autoFillService.addHook(hook))}},__name(_a21,"DataValidationAutoFillController"),_a21);DataValidationAutoFillController=__decorateClass$2([core.OnLifecycle(core.LifecycleStages.Ready,DataValidationAutoFillController),__decorateParam$2(0,sheetsUi.IAutoFillService),__decorateParam$2(1,core.Inject(exports.SheetDataValidationModel)),__decorateParam$2(2,core.Inject(core.Injector))],DataValidationAutoFillController);var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1"),_a22;let SheetDataValidationSheetController=(_a22=class extends core.Disposable{constructor(_sheetInterceptorService,_univerInstanceService,_sheetDataValidationModel){super(),this._sheetInterceptorService=_sheetInterceptorService,this._univerInstanceService=_univerInstanceService,this._sheetDataValidationModel=_sheetDataValidationModel,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(commandInfo=>{var _a24;if(commandInfo.id===sheets.RemoveSheetCommand.id){const params=commandInfo.params,unitId=params.unitId||this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET).getUnitId(),workbook=this._univerInstanceService.getUniverSheetInstance(unitId);if(!workbook)return{redos:[],undos:[]};const subUnitId=params.subUnitId||((_a24=workbook.getActiveSheet())==null?void 0:_a24.getSheetId());if(!subUnitId)return{redos:[],undos:[]};const rules=this._sheetDataValidationModel.getRules(unitId,subUnitId),ids=rules.map(i=>i.uid),redoParams={unitId,subUnitId,ruleId:ids,source:"patched"},undoParams={unitId,subUnitId,rule:[...rules],source:"patched"};return{redos:[{id:dataValidation.RemoveDataValidationMutation.id,params:redoParams}],undos:[{id:dataValidation.AddDataValidationMutation.id,params:undoParams}]}}return{redos:[],undos:[]}},"getMutations")}))}},__name(_a22,"SheetDataValidationSheetController"),_a22);SheetDataValidationSheetController=__decorateClass$1([core.OnLifecycle(core.LifecycleStages.Ready,SheetDataValidationSheetController),__decorateParam$1(0,core.Inject(sheets.SheetInterceptorService)),__decorateParam$1(1,core.Inject(core.IUniverInstanceService)),__decorateParam$1(2,core.Inject(exports.SheetDataValidationModel))],SheetDataValidationSheetController);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField"),_a23;exports.UniverSheetsDataValidationPlugin=(_a23=class extends core.Plugin{constructor(_config=defaultPluginConfig,_injector,_commandService,_configService){super(),this._config=_config,this._injector=_injector,this._commandService=_commandService,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY,rest)}onStarting(){[[DataValidationPanelService],[DataValidationCacheService],[exports.DataValidationFormulaService],[exports.DataValidationCustomFormulaService],[DataValidationDropdownManagerService],[exports.SheetsDataValidationValidatorService],[exports.SheetDataValidationModel],[DataValidationController],[SheetsDataValidationRenderController],[DataValidationAlertController],[DataValidationRefRangeController],[DataValidationPermissionController],[DataValidationAutoFillController],[DataValidationCopyPasteController],[DataValidationFormulaController],[DataValidationRejectInputController],[SheetDataValidationSheetController]].forEach(dep=>{this._injector.add(dep)}),[AddSheetDataValidationCommand,AddSheetDataValidationAndOpenCommand,UpdateSheetDataValidationRangeCommand,UpdateSheetDataValidationSettingCommand,UpdateSheetDataValidationOptionsCommand,RemoveSheetDataValidationCommand,RemoveSheetAllDataValidationCommand,ClearRangeDataValidationCommand,ShowDataValidationDropdown,HideDataValidationDropdown,CloseValidationPanelOperation,OpenValidationPanelOperation,ToggleValidationPanelOperation].forEach(command=>{this._commandService.registerCommand(command)})}},__name(_a23,"UniverSheetsDataValidationPlugin"),_a23);__publicField2(exports.UniverSheetsDataValidationPlugin,"pluginName",DATA_VALIDATION_PLUGIN_NAME);__publicField2(exports.UniverSheetsDataValidationPlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsDataValidationPlugin=__decorateClass([core.DependentOn(sheetsNumfmt.UniverSheetsNumfmtPlugin,dataValidation.UniverDataValidationPlugin,sheetsUi.UniverSheetsUIPlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,core.ICommandService),__decorateParam(3,core.IConfigService)],exports.UniverSheetsDataValidationPlugin);Object.defineProperty(exports,"DataValidationModel",{enumerable:!0,get:__name(()=>dataValidation.DataValidationModel,"get")});exports.AddSheetDataValidationAndOpenCommand=AddSheetDataValidationAndOpenCommand;exports.AddSheetDataValidationCommand=AddSheetDataValidationCommand;exports.ClearRangeDataValidationCommand=ClearRangeDataValidationCommand;exports.CloseValidationPanelOperation=CloseValidationPanelOperation;exports.DATA_VALIDATION_PLUGIN_NAME=DATA_VALIDATION_PLUGIN_NAME;exports.DATE_DROPDOWN_KEY=DATE_DROPDOWN_KEY;exports.DataValidationCacheService=DataValidationCacheService;exports.HideDataValidationDropdown=HideDataValidationDropdown;exports.LIST_DROPDOWN_KEY=LIST_DROPDOWN_KEY;exports.OpenValidationPanelOperation=OpenValidationPanelOperation;exports.RemoveSheetAllDataValidationCommand=RemoveSheetAllDataValidationCommand;exports.RemoveSheetDataValidationCommand=RemoveSheetDataValidationCommand;exports.ShowDataValidationDropdown=ShowDataValidationDropdown;exports.ToggleValidationPanelOperation=ToggleValidationPanelOperation;exports.UpdateSheetDataValidationOptionsCommand=UpdateSheetDataValidationOptionsCommand;exports.UpdateSheetDataValidationRangeCommand=UpdateSheetDataValidationRangeCommand;exports.UpdateSheetDataValidationSettingCommand=UpdateSheetDataValidationSettingCommand;
1
+ 'use strict';const _0x426d7e=_0x3883;(function(_0x22567a,_0xa4a4fe){const _0x150685=_0x3883,_0xd375ba=_0x22567a();while(!![]){try{const _0x3ccd81=-parseInt(_0x150685(0x246))/0x1*(-parseInt(_0x150685(0x187))/0x2)+parseInt(_0x150685(0x155))/0x3+-parseInt(_0x150685(0x206))/0x4+-parseInt(_0x150685(0x2e0))/0x5+-parseInt(_0x150685(0x128))/0x6*(parseInt(_0x150685(0xd4))/0x7)+parseInt(_0x150685(0x2e5))/0x8*(parseInt(_0x150685(0x1c4))/0x9)+parseInt(_0x150685(0x252))/0xa;if(_0x3ccd81===_0xa4a4fe)break;else _0xd375ba['push'](_0xd375ba['shift']());}catch(_0x142d94){_0xd375ba['push'](_0xd375ba['shift']());}}}(_0x5310,0xa3b29));var __defProp=Object[_0x426d7e(0x2d0)],__defNormalProp=(_0x3c27b6,_0x53ecb4,_0x1b13d5)=>_0x53ecb4 in _0x3c27b6?__defProp(_0x3c27b6,_0x53ecb4,{'enumerable':!0x0,'configurable':!0x0,'writable':!0x0,'value':_0x1b13d5}):_0x3c27b6[_0x53ecb4]=_0x1b13d5,__name=(_0x149c71,_0x58cbc4)=>__defProp(_0x149c71,_0x426d7e(0x295),{'value':_0x58cbc4,'configurable':!0x0}),__publicField=(_0x585f70,_0x34f47b,_0x59384e)=>__defNormalProp(_0x585f70,typeof _0x34f47b!=_0x426d7e(0x2e3)?_0x34f47b+'':_0x34f47b,_0x59384e);Object[_0x426d7e(0x2d0)](exports,Symbol['toStringTag'],{'value':_0x426d7e(0x2b1)});const core=require(_0x426d7e(0x101)),dataValidation=require(_0x426d7e(0x1fd)),sheets=require('@univerjs/sheets'),rxjs=require(_0x426d7e(0x24b)),engineFormula=require(_0x426d7e(0x2a7)),sheetsFormula=require('@univerjs/sheets-formula'),sheetsNumfmt=require('@univerjs/sheets-numfmt'),dayjs=require(_0x426d7e(0x151)),DATA_VALIDATION_PLUGIN_NAME=_0x426d7e(0x302),_DataValidationCacheService=class _DataValidationCacheService{constructor(){const _0x3d4829=_0x426d7e;__publicField(this,_0x3d4829(0x2ae),new Map());}[_0x426d7e(0x29b)](_0x3fd835,_0x829856){const _0x337421=_0x426d7e;let _0x49596e=this[_0x337421(0x2ae)][_0x337421(0x264)](_0x3fd835);_0x49596e||(_0x49596e=new Map(),this['_cacheMatrix']['set'](_0x3fd835,_0x49596e));let _0xd4afc2=_0x49596e[_0x337421(0x264)](_0x829856);return _0xd4afc2||(_0xd4afc2=new core[(_0x337421(0x1b8))](),_0x49596e['set'](_0x829856,_0xd4afc2)),_0xd4afc2;}[_0x426d7e(0x2fc)](_0x57fb76,_0x23c753){const _0x405e09=_0x426d7e;return this[_0x405e09(0x29b)](_0x57fb76,_0x23c753);}[_0x426d7e(0x1f8)](_0x311c02,_0x1964b2,_0x4290a9){const _0x545f43=_0x426d7e;this['markRangeDirty'](_0x311c02,_0x1964b2,_0x4290a9[_0x545f43(0xdc)]);}[_0x426d7e(0x15b)](_0x2f7086,_0x224144,_0x5e61b1){const _0x4332f8=_0x426d7e;this[_0x4332f8(0xc6)](_0x2f7086,_0x224144,_0x5e61b1[_0x4332f8(0xdc)]);}[_0x426d7e(0x218)](_0x38939d,_0x4e4db3,_0x1449ae,_0x1769f8,_0x54753a){const _0x3864cf=_0x426d7e,_0x582579=this[_0x3864cf(0x29b)](_0x38939d,_0x4e4db3);_0x54753a['forEach'](_0x9a22ed=>{const _0x42755a=_0x3864cf;core['Range'][_0x42755a(0x298)](_0x9a22ed,(_0x46c504,_0x32f660)=>{const _0x4dbdf0=_0x42755a,_0x533469=_0x582579[_0x4dbdf0(0x17c)](_0x46c504,_0x32f660);_0x533469&&(_0x533469[_0x4dbdf0(0x249)]=!0x0);});}),_0x1769f8[_0x3864cf(0x262)](_0x56124c=>{const _0x50db1a=_0x3864cf;core[_0x50db1a(0x227)]['foreach'](_0x56124c,(_0x52fb60,_0x260ab5)=>{const _0x277541=_0x50db1a,_0x461039=_0x582579[_0x277541(0x17c)](_0x52fb60,_0x260ab5);_0x461039&&_0x461039[_0x277541(0x20f)]===_0x1449ae?_0x461039[_0x277541(0x249)]=!0x1:_0x582579[_0x277541(0x1a7)](_0x52fb60,_0x260ab5,void 0x0);});}),_0x54753a['forEach'](_0x21ac86=>{const _0x4a78e7=_0x3864cf;core[_0x4a78e7(0x227)][_0x4a78e7(0x298)](_0x21ac86,(_0x5c9315,_0x3a4153)=>{const _0x1b9f55=_0x4a78e7,_0x3d0250=_0x582579[_0x1b9f55(0x17c)](_0x5c9315,_0x3a4153);_0x3d0250&&_0x3d0250[_0x1b9f55(0x249)]===!0x0&&_0x582579['realDeleteValue'](_0x5c9315,_0x3a4153);});});}[_0x426d7e(0x16a)](_0x24b50b,_0x560ee2,_0x3387d3){const _0x58ed26=_0x426d7e,_0x199d2e=this[_0x58ed26(0x29b)](_0x24b50b,_0x560ee2);_0x3387d3[_0x58ed26(0x262)](_0x3eb6d3=>{const _0x478b76=_0x58ed26;core[_0x478b76(0x227)][_0x478b76(0x298)](_0x3eb6d3,(_0x3046ef,_0x56d798)=>{_0x199d2e['setValue'](_0x3046ef,_0x56d798,void 0x0);});});}[_0x426d7e(0x2bf)](_0x15b291,_0x163804,_0x5001db,_0x474779){const _0x4d5ef5=_0x426d7e;this[_0x4d5ef5(0x29b)](_0x15b291,_0x163804)[_0x4d5ef5(0x1a7)](_0x5001db,_0x474779,void 0x0);}['_deleteRange'](_0xf374de,_0x155a62,_0xcd30df){const _0x2e5cd2=_0x426d7e,_0x3d6ed7=this[_0x2e5cd2(0x29b)](_0xf374de,_0x155a62);_0xcd30df['forEach'](_0x41947e=>{const _0x38f56e=_0x2e5cd2;core[_0x38f56e(0x227)][_0x38f56e(0x298)](_0x41947e,(_0x306622,_0x512716)=>{const _0xfbdc11=_0x38f56e;_0x3d6ed7[_0xfbdc11(0x2ce)](_0x306622,_0x512716);});});}[_0x426d7e(0x17c)](_0xb6524f,_0x1fe73c,_0x5171d4,_0xd8f2a){const _0x1a7c36=_0x426d7e;return this[_0x1a7c36(0x29b)](_0xb6524f,_0x1fe73c)[_0x1a7c36(0x17c)](_0x5171d4,_0xd8f2a);}[_0x426d7e(0x1a7)](_0x3fcb15,_0x383926,_0x25ac34,_0x432027,_0x2adda3){const _0x11d818=_0x426d7e;return this[_0x11d818(0x29b)](_0x3fcb15,_0x383926)[_0x11d818(0x1a7)](_0x25ac34,_0x432027,_0x2adda3);}};function _0x3883(_0x49786f,_0x24f584){const _0x5310c1=_0x5310();return _0x3883=function(_0x3883d3,_0x149e3d){_0x3883d3=_0x3883d3-0xbf;let _0x533abc=_0x5310c1[_0x3883d3];return _0x533abc;},_0x3883(_0x49786f,_0x24f584);}__name(_DataValidationCacheService,_0x426d7e(0x119));let DataValidationCacheService=_DataValidationCacheService;var __defProp$8=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$8=Object['getOwnPropertyDescriptor'],__decorateClass$8=__name((_0x56dc14,_0x11a2a7,_0x167745,_0x214778)=>{const _0x5a00b5=_0x426d7e;for(var _0x4c56af=_0x214778>0x1?void 0x0:_0x214778?__getOwnPropDesc$8(_0x11a2a7,_0x167745):_0x11a2a7,_0x45310c=_0x56dc14[_0x5a00b5(0x1f9)]-0x1,_0x45162c;_0x45310c>=0x0;_0x45310c--)(_0x45162c=_0x56dc14[_0x45310c])&&(_0x4c56af=(_0x214778?_0x45162c(_0x11a2a7,_0x167745,_0x4c56af):_0x45162c(_0x4c56af))||_0x4c56af);return _0x214778&&_0x4c56af&&__defProp$8(_0x11a2a7,_0x167745,_0x4c56af),_0x4c56af;},_0x426d7e(0xf2)),__decorateParam$8=__name((_0x2b2ebb,_0x370129)=>(_0x12c647,_0x4b2bd8)=>_0x370129(_0x12c647,_0x4b2bd8,_0x2b2ebb),_0x426d7e(0x153));function transformFormula(_0x56c25d,_0x321048,_0x2b0aa7,_0x52cd0c,_0x2c019d,_0x274469){const _0x2a0990=_0x426d7e;return _0x56c25d[_0x2a0990(0x2a5)](_0x321048,_0x274469-_0x52cd0c,_0x2c019d-_0x2b0aa7);}__name(transformFormula,_0x426d7e(0x22b));var _a;function _0x5310(){const _0x4f99fe=['newRanges','38496sFSMuL','PivotTable','intersect','isDefine','RxDisposable','label','_unitId','operatorNames','Copy','dataValidation.custom.title','_formulaMap','SelectUnProtectedCells','deleteByRuleId','interceptCommand','_isFormulaOrNumber','sheet.command.addDataValidation','root','payload','slice','then','transform','low','getCellFormulaValue','dataValidation.date.operators.greaterThan','MoveSheet','_isFormulaOrInt','Interval',',\x20col:\x20','pattern','_updateRule','CLIP','Inject','CheckboxValidator','dataValidation.date.operators.equal','DataValidationOperator','Print','formula','subtractMulti','dataValidation.list.error','dataValidation.date.errorMsg.lessThanOrEqual','_initCommandInterceptor','dayjs','InsertHyperlink','__decorateParam$8','ListValidator','658062uKwqGR','tree_delete','mergeRanges','registerRefRange','_value_equal','updatePayload','removeRule','set','__decorateClass$5','formulaId','subUnitId','CHECKBOX_FORMULA_1','OVERFLOW','true','left','format','rotate_right','getName','Duplicate','UNRECOGNIZED','validatorIsGreaterThan','markRangeDirty','_permissionService','sheets.command.clear-range-data-validation','unitId','serializeListOptions','getOriginCellValue','_commandService','dataValidation.validFail.list','LexerTreeBuilder','SheetDataValidationModel','worksheet','SheetsSelectionsService','_sheetInterceptorService','_ruleMatrixMap','getRuleFormulaResult','isValidListFormula','__publicField','uid','getValue','dataValidation.date.ruleName.greaterThanOrEqual','getDataValidationDiffMutations','DataValidationFormulaController','getRuleErrorMsg','BaseDataValidator','DataValidationController','join','all','validatorFormula','updateRange','2xqbrVw','Tools','showTime','insert_fixup','validatorCell','UpdateSheetDataValidationSettingCommand','merge','getDataValidations','__decorateParam','_value_less_than','Edit','sequenceExecute','not_intersect','parseFormulaSync','_lexer','getSheetCommandTarget','ViewFilter','__decorateParam$2','IUndoRedoService','DataValidationStatus','createInstance','startRow','Delete','ListMultipleValidator','iterate','getRuleIndex','local_maximum','not_intersect_left_subtree','sequenceNodesBuilder','params','_ruleChange$','deleteFormula','setValue','__decorateClass$2','SetColumnStyle','_addFormulaByRange','RenameSheet','getSheetBySheetName','getSheetBySheetId','isFormulaString','getRuleByLocation','dispose','formula1','_validStatusChange$','DataValidationType','formulaResult$','DataValidatorRegistryService','createDefaultNewRule','sequenceNodeType','ObjectMatrix','dataValidation.checkbox.error','getFormulaCellData','isNaN','intersect_any','DecimalValidator','ViewHistory','_ensureMaps','_addRuleSideEffect','SetRowStyle','CreateSheet','_logService','652338YuSngF','UniverSheetsDataValidationPlugin','transformCheckboxValue','toDisposable','item','_dataValidationModel','Comment','_initRuleUpdateListener','every','dataValidation.list.name','getRuleFormulaResultSync','_dataValidationFormulaService','scopes','parseCellValue','isRuleIntersects','dataValidation.listMultiple.title','Subject','startsWith','extra','UpdateRuleType','_formulaService','SheetDataValidationSheetController','isBlank','formulaService','update_max','tree_walk','HideSheet','UpdateDataValidationMutation','IUniverInstanceService','deepClone','getUnitId','value','less_than','DATE','type','DATA_VALIDATION_PLUGIN_NAME','CopySheet','flat','onStarting','nil_node','getRuleFormulaResultSet','getFormulaResult','_instanceSrv','getRuleOptions','resolve','_parseNumber','offset','keys','token','NOT_BETWEEN','getCellValueOrigin','isBlankCell','addRule','length','_sheetDataValidationModel','status','formula2','@univerjs/data-validation','_dataValidationCustomFormulaService','RuleMatrix','Share','index','string','getRuleObjectMatrix','getCellRaw','VALIDATING','3906944TrOwtt','UniverSheetsNumfmtPlugin','YYYY-MM-DD','CellValueType','isReferenceString','indirect','Disposable','DataValidationFormulaService','LIST','ruleId','exist','_dataValidatorRegistryService','getRuleIdByLocation','_map','removeDataValidationUndoFactory','tree_successor','diff','deserializeRangeWithSheet','updateRuleRanges','sheet','indexOf','boolean','_selectionManagerService','validatorIsLessThanOrEqual','success','asObservable','cannot\x20find\x20current\x20worksheet,\x20sheetId:\x20','SheetsDataValidationValidatorService','normlizeSingleFormula','__decorateClass','ICommandService','_formulaRuleMap','isEmpty','Range','updateRuleFormulaText','CHECKBOX','getRuleById','transformFormula','History','testRedBlackProperty','RemoveSheetAllDataValidationCommand','_subUnitId','renderMode','values','right','getMutations','unshift','add','dataValidation.validFail.listInvalid','number','toLowerCase','Sort','{FORMULA2}','DateValidator','tree_insert','getListWithColorMap','IPermissionService','getCurrentUnitForType','includes','isNil','text','100','dataValidation.date.ruleName.greaterThan','clone','166973eJdDuz','getFormulaRefCheck','FloatImg','temp','FUNCTION','rxjs','getActiveSheet','_customFormulaService','endColumn','dataValidation.decimal.title','_getIdWithUnitId','dataValidation.whole.title','11173490iKkwUY','Rectangle','_instanceService','TEXT','Filter','titleStr','numfmt','View','validatorWorksheet','object','EditExtraObject','dataValidation.date.ruleName.equal','LIST_MULTIPLE','skipDefaultFontRender','normalizeFormula','TEXT_LENGTH','forEach','sheet.command.remove-all-data-validation','get','tree_find_any_interval','split','onCommandExecuted','TextLengthValidator','validatorIsNotBetween','SetCellStyle','registerRule','_injector','column','sheets.command.update-data-validation-options','_disableTree','Plugin','dataValidation.validFail.checkboxEqual','_worksheet','operator','RANGE','getListAsync','dataValidation.validFail.listIntersects','key','ILogService','CommandType','isValidType','_disposableMap','EQUAL','COMMAND','__decorateParam$6','dataValidation.validFail.number','deserializeListOptions','validatorIsBetween','color','_formulaRefRangeService','sheetName','_ensureRuleMatrix','SheetInterceptorService','executeCommand','BETWEEN','_univerInstanceService','sheets.command.update-data-validation-setting','isInteger','DeleteRow','register','error','range','body','constructor','_dirty','rule','complete','name','delete','result','foreach','DeleteWorksheet','LESS_THAN','_ensureCache','getDataValidationCellValue','getValidator','dataValidation.date.errorMsg.equal','getUnitRules','patched','push','dataValidation.date.ruleName.between','Export','subscribe','moveFormulaRefOffset','UNIVER_SHEET','@univerjs/engine-formula','dataValidation.date.ruleName.notEqual','WholeValidator','registerFormula','_dataValidationCacheService','validator','getSheetId','_cacheMatrix','getUnit','addRangeRules','Module','generateRuleName','output','isArray','parseFormula','_registerFormula','interceptValue','selectionProtection','getRules','__decorateParam$5','ViemRwHgtClWdt','transformRange','__defNormalProp','getDataValidation','markCellDirty','dataValidation.validFail.date','endRow','comparable_max','intersects','clear','_initFormulaResultHandler','dataValidation.date.ruleName.notBetween','UniverInstanceType','dataValidation.date.operators.notBetween','getUniverSheetInstance','GREATER_THAN_OR_EQUAL','validatorIsEqual','getOwnPropertyDescriptor','operators','realDeleteValue','{FORMULA1}','defineProperty','sequenceExecuteAsync','getCurrentSelections','validStatusChange$','RemoveDataValidationMutation','ClearSelectionAllCommand','oldRule','getListWithColor','isRangesEqual','dataValidation.date.errorMsg.notBetween','validatorIsLessThan','tree_search_nearest_forward','max','_buildTree','_lexerTreeBuilder','title','1651665QAoaej','OPTIONS','getUnitType','symbol','validatorIsGreaterThanOrEqual','104IASTkK','YYYY-MM-DD\x20HH:mm:ss','EditWorksheetCell','equals','transformDate2SerialNumber','_initSheetChange','_tree','CreateWorksheet','dateFromSerial','LESS_THAN_OR_EQUAL','dataValidation.date.title','parent','validatorWorkbook','DataValidationRefRangeController','WrapStrategy','removeRange','update','rotate_left','getSubUnitIds','comparable_less_than','BOOLEAN','_validatorSingleFormula','items','ensureCache','DataValidationRenderMode','copy_data','RegisterOtherFormulaService','UpdateSheetDataValidationRangeCommand','workbook','SHEET_DATA_VALIDATION_PLUGIN','__decorateParam$4','getCell','InsertColumn','DataValidationCustomFormulaService','localeService','RenameWorksheet','__decorateClass$7','ARROW','_removeRule','dataValidation.date.errorMsg.lessThan','disposeWithMe','getRuleFormulaInfo','_deleteRange','WorksheetViewPermission','pushUndoRedo','recalc_max','ERROR_TYPE_SET','getFormulaValue','_registerValidators','ManageCollaborator','IntervalTree','Node','InsertRow','search','SetRangeValuesMutation','ruleChange$','511UoBrgg','FormulaRefRangeService','SetCellValue','map','_refRangeService','getCellValueNumber','dataValidation.date.errorMsg.greaterThanOrEqual','RemoveSheetDataValidationCommand','ranges','_ensureRuleFormulaMap','diffWithAddition','getAll','NOT_EQUAL','ClearRangeDataValidationCommand','_ruleFormulaMap','high','dataValidation.date.errorMsg.notEqual','generateRuleErrorMessage','min','RwHgtClWdt','getList','dataValidation.date.operators.lessThanOrEqual','GREATER_THAN','RemoveSheetMutation','parseDate','dataValidation.date.errorMsg.between','not_intersect_right_subtree','dataValidation.validFail.formula','sheet.command.updateDataValidationRuleRange','getData','__decorateClass$8','_addRule','replace','filter','SelectProtectedCells','_debonceBuildTree','__decorateClass$6','RecoverHistory','INVALID','DeleteSheet','local_minimum','debounce','dataValidation.textLength.title','nodeType','CustomFormulaValidator','@univerjs/core','injector','_registerOtherFormulaService','NaN','originFormula2','toString','dataValidation.date.operators.notEqual','testBlackHeightProperty','SetWorksheetStyle','AddDataValidationMutation','CUSTOM','isLegalFormulaResult','validatorIsNotEqual','SetRangeValuesUndoMutationFactory','MoveWorksheet','SETTING','_init','DeleteColumn','DECIMAL','VALID','Injector','from','insert','tree_search_interval','DataValidationCacheService','remove','some','_formulaCellMap','getPermissionPoint','_initUniverInstanceListener','DataValidationModel','dataValidation.validFail.primitive','RemoveSheetCommand','equal_to','next','tree_search','getValidatorItem','_isValidFormula'];_0x5310=function(){return _0x4f99fe;};return _0x5310();}exports[_0x426d7e(0x306)]=(_a=class extends core[_0x426d7e(0x20c)]{constructor(_0x593340,_0x118696,_0x1dad6f,_0x447f79,_0x55208b,_0x1d124c){const _0x45fa4a=_0x426d7e;super(),__publicField(this,_0x45fa4a(0x132),new Map()),__publicField(this,'_ruleFormulaMap',new Map()),__publicField(this,'_formulaCellMap',new Map()),(this[_0x45fa4a(0x1ee)]=_0x593340,this[_0x45fa4a(0x103)]=_0x118696,this[_0x45fa4a(0x2de)]=_0x1dad6f,this[_0x45fa4a(0x1c9)]=_0x447f79,this[_0x45fa4a(0x2ab)]=_0x55208b,this[_0x45fa4a(0x1c3)]=_0x1d124c,this[_0x45fa4a(0x2c5)]());}['_initFormulaResultHandler'](){const _0x4fc053=_0x426d7e;this[_0x4fc053(0xc4)](this[_0x4fc053(0x103)][_0x4fc053(0x1b4)][_0x4fc053(0x2a4)](_0x330a7d=>{const _0x13e2fe=_0x4fc053;for(const _0x485f98 in _0x330a7d){const _0x1cb922=_0x330a7d[_0x485f98];if(this['_instanceSrv'][_0x13e2fe(0x2e2)](_0x485f98)===core[_0x13e2fe(0x2c7)]['UNIVER_SHEET'])for(const _0x48b041 in _0x1cb922){const _0x1e55ed=_0x1cb922[_0x48b041],{formulaCellMap:_0x45bcdc,ruleFormulaMap:_0x9b388d}=this[_0x13e2fe(0x1bf)](_0x485f98,_0x48b041);_0x1e55ed[_0x13e2fe(0x262)](_0x3cc0ae=>{const _0x10542c=_0x13e2fe;var _0xafce3f,_0x38d3b6;const _0xe77b5c=_0x9b388d[_0x10542c(0x264)]((_0xafce3f=_0x3cc0ae['extra'])==null?void 0x0:_0xafce3f[_0x10542c(0x20f)]),_0x2394ca=_0x45bcdc[_0x10542c(0x264)](_0x3cc0ae[_0x10542c(0x15e)]),_0x58d216=this[_0x10542c(0x1c9)]['getRuleById'](_0x485f98,_0x48b041,(_0x38d3b6=_0x3cc0ae[_0x10542c(0x1d6)])==null?void 0x0:_0x38d3b6[_0x10542c(0x20f)]);_0x58d216&&_0xe77b5c&&!_0xe77b5c['isTransformable']&&this[_0x10542c(0x2ab)]['markRangeDirty'](_0x485f98,_0x48b041,_0x58d216[_0x10542c(0xdc)]),_0x2394ca&&this[_0x10542c(0x2ab)]['markCellDirty'](_0x485f98,_0x48b041,_0x2394ca['row'],_0x2394ca[_0x10542c(0x26d)]);});}}}));}[_0x426d7e(0x1bf)](_0xb1beaa,_0x229dce){const _0x54a64d=_0x426d7e;let _0x5878d0=this[_0x54a64d(0x132)]['get'](_0xb1beaa),_0x34cfba=this[_0x54a64d(0xe2)][_0x54a64d(0x264)](_0xb1beaa),_0x3b1a40=this[_0x54a64d(0x11c)][_0x54a64d(0x264)](_0xb1beaa);(!_0x5878d0||!_0x34cfba||!_0x3b1a40)&&(_0x5878d0=new Map(),_0x34cfba=new Map(),_0x3b1a40=new Map(),this[_0x54a64d(0x132)]['set'](_0xb1beaa,_0x5878d0),this[_0x54a64d(0xe2)][_0x54a64d(0x15c)](_0xb1beaa,_0x34cfba),this['_formulaCellMap'][_0x54a64d(0x15c)](_0xb1beaa,_0x3b1a40));let _0x2c4c62=_0x5878d0[_0x54a64d(0x264)](_0x229dce),_0xae9731=_0x34cfba['get'](_0x229dce),_0x43d62f=_0x3b1a40['get'](_0x229dce);return(!_0x2c4c62||!_0xae9731||!_0x43d62f)&&(_0x2c4c62=new core[(_0x54a64d(0x1b8))](),_0x5878d0[_0x54a64d(0x15c)](_0x229dce,_0x2c4c62),_0xae9731=new Map(),_0x34cfba['set'](_0x229dce,_0xae9731),_0x43d62f=new Map(),_0x3b1a40[_0x54a64d(0x15c)](_0x229dce,_0x43d62f)),{'formulaMap':_0x2c4c62,'ruleFormulaMap':_0xae9731,'formulaCellMap':_0x43d62f};}[_0x426d7e(0x2b6)](_0x1cf37e,_0x2bd860,_0x57e17d,_0x6b9fda){const _0x42fa75=_0x426d7e;return this[_0x42fa75(0x103)][_0x42fa75(0x2aa)](_0x1cf37e,_0x2bd860,_0x6b9fda,{'ruleId':_0x57e17d});}[_0x426d7e(0x134)](_0x2e50e6,_0x4307ab,_0x370f73){const _0x1da8db=_0x426d7e,{formulaMap:_0x4be457,formulaCellMap:_0x5f4606,ruleFormulaMap:_0x49b78d}=this[_0x1da8db(0x1bf)](_0x2e50e6,_0x4307ab),_0x5f5cb3=this[_0x1da8db(0x1c9)][_0x1da8db(0x22a)](_0x2e50e6,_0x4307ab,_0x370f73),_0x2d4085=new Set(),_0x2465cd=_0x49b78d[_0x1da8db(0x264)](_0x370f73);!_0x5f5cb3||!_0x2465cd||(_0x49b78d['delete'](_0x370f73),_0x5f5cb3['ranges']['forEach'](_0x5e45ff=>{core['Range']['foreach'](_0x5e45ff,(_0x2377a4,_0x5540be)=>{const _0x12b9ca=_0x3883,_0x182e1d=_0x4be457['getValue'](_0x2377a4,_0x5540be);if(_0x182e1d&&_0x182e1d[_0x12b9ca(0x20f)]===_0x370f73){const {formulaId:_0x178283}=_0x182e1d;_0x4be457[_0x12b9ca(0x2ce)](_0x2377a4,_0x5540be),_0x2d4085[_0x12b9ca(0x235)](_0x178283),_0x5f4606[_0x12b9ca(0x296)](_0x178283);}});}),this[_0x1da8db(0x103)][_0x1da8db(0x1a6)](_0x2e50e6,_0x4307ab,Array[_0x1da8db(0x116)](_0x2d4085['values']())));}['_addFormulaByRange'](_0x2761ac,_0x5cd888,_0x5121f9,_0x37c79f,_0x56e627){const _0x109210=_0x426d7e,{formulaMap:_0x25b7c6,ruleFormulaMap:_0x556728,formulaCellMap:_0x26b5e2}=this['_ensureMaps'](_0x2761ac,_0x5cd888);if(!_0x37c79f)return;const _0x41b484=_0x56e627[0x0]['startRow'],_0x39bfa9=_0x56e627[0x0]['startColumn'];let _0x4172b5;_0x56e627[_0x109210(0x262)](_0xbc8e26=>{const _0x3eb362=_0x109210;core['Range'][_0x3eb362(0x298)](_0xbc8e26,(_0x2c2f15,_0x4d9e10)=>{const _0x2c5f8b=_0x3eb362,_0x3eebb2=transformFormula(this[_0x2c5f8b(0x2de)],_0x37c79f,_0x41b484,_0x39bfa9,_0x2c2f15,_0x4d9e10),_0x447823=this['_registerFormula'](_0x2761ac,_0x5cd888,_0x5121f9,_0x3eebb2);_0x25b7c6[_0x2c5f8b(0x1a7)](_0x2c2f15,_0x4d9e10,{'formulaId':_0x447823,'ruleId':_0x5121f9}),_0x26b5e2[_0x2c5f8b(0x15c)](_0x447823,{'row':_0x2c2f15,'column':_0x4d9e10});});}),_0x556728['set'](_0x5121f9,{'formula':_0x37c79f,'originCol':_0x39bfa9,'originRow':_0x41b484,'formulaId':_0x4172b5,'isTransformable':!0x0});}[_0x426d7e(0x1f8)](_0x19021f,_0x5903b3,_0x24e421){const _0x2cfe1c=_0x426d7e,{ranges:_0x338b6f,formula1:_0x284084,uid:_0x5efcd3,type:_0x763657}=_0x24e421;_0x763657!==core[_0x2cfe1c(0x1b3)][_0x2cfe1c(0x10b)]||!_0x284084||!core[_0x2cfe1c(0x1ae)](_0x284084)||this[_0x2cfe1c(0x1aa)](_0x19021f,_0x5903b3,_0x5efcd3,_0x284084,_0x338b6f);}[_0x426d7e(0x218)](_0x1f32ba,_0xe1e223,_0x3d3320,_0x29e986,_0x4e5a14){const _0x41344e=_0x426d7e,{formulaMap:_0x1d991c,ruleFormulaMap:_0x515674,formulaCellMap:_0x5138d1}=this['_ensureMaps'](_0x1f32ba,_0xe1e223),_0x6ba03d=_0x515674['get'](_0x3d3320);if(!_0x6ba03d)return;const {formula:_0xa3af5b,originCol:_0x457023,originRow:_0x402cb7,isTransformable:_0xeb5a8a,formulaId:_0x443b24}=_0x6ba03d,_0x780deb=new Set();_0x29e986[_0x41344e(0x262)](_0x6db6b1=>{const _0x5d6847=_0x41344e;core[_0x5d6847(0x227)][_0x5d6847(0x298)](_0x6db6b1,(_0x2182c6,_0x12f0f6)=>{const _0x582760=_0x5d6847,_0x16e326=_0x1d991c[_0x582760(0x17c)](_0x2182c6,_0x12f0f6);_0x16e326&&_0x16e326['ruleId']===_0x3d3320&&(_0x16e326['temp']=!0x0);});}),_0x4e5a14['forEach'](_0x3577b9=>{const _0x4ce109=_0x41344e;core[_0x4ce109(0x227)][_0x4ce109(0x298)](_0x3577b9,(_0x81cc62,_0x47ffa2)=>{const _0x5750fb=_0x4ce109;var _0x2e1fac;const _0x55e094=(_0x2e1fac=_0x1d991c[_0x5750fb(0x17c)](_0x81cc62,_0x47ffa2))!=null?_0x2e1fac:{};if(_0x55e094['ruleId']!==_0x3d3320){const _0x4bd52b=_0x515674[_0x5750fb(0x264)](_0x55e094[_0x5750fb(0x20f)]);if(_0x4bd52b!=null&&_0x4bd52b['isTransformable']&&_0x780deb[_0x5750fb(0x235)](_0x55e094[_0x5750fb(0x15e)]),_0xeb5a8a){const _0x511d9c=transformFormula(this[_0x5750fb(0x2de)],_0xa3af5b,_0x402cb7,_0x457023,_0x81cc62,_0x47ffa2),_0x3985a8=this['_registerFormula'](_0x1f32ba,_0xe1e223,_0x3d3320,_0x511d9c);_0x1d991c[_0x5750fb(0x1a7)](_0x81cc62,_0x47ffa2,{'ruleId':_0x3d3320,'formulaId':_0x3985a8}),_0x5138d1[_0x5750fb(0x15c)](_0x3985a8,{'row':_0x81cc62,'column':_0x47ffa2});}else _0x1d991c[_0x5750fb(0x1a7)](_0x81cc62,_0x47ffa2,{'ruleId':_0x3d3320,'formulaId':_0x443b24});}else _0x55e094[_0x5750fb(0x249)]=!0x1;});}),_0x29e986['forEach'](_0x75367d=>{const _0x385f63=_0x41344e;core[_0x385f63(0x227)][_0x385f63(0x298)](_0x75367d,(_0x188d4a,_0x390366)=>{const _0x5311c5=_0x385f63,_0x5d910a=_0x1d991c[_0x5311c5(0x17c)](_0x188d4a,_0x390366);_0x5d910a&&_0x5d910a[_0x5311c5(0x20f)]===_0x3d3320&&_0x5d910a[_0x5311c5(0x249)]===!0x0&&(_0x1d991c[_0x5311c5(0x2ce)](_0x188d4a,_0x390366),_0xeb5a8a&&_0x780deb[_0x5311c5(0x235)](_0x5d910a[_0x5311c5(0x15e)]));});}),_0x780deb[_0x41344e(0x262)](_0x5aa8a0=>{const _0xb9738e=_0x41344e;_0x5138d1[_0xb9738e(0x296)](_0x5aa8a0);}),this[_0x41344e(0x103)][_0x41344e(0x1a6)](_0x1f32ba,_0xe1e223,Array[_0x41344e(0x116)](_0x780deb[_0x41344e(0x231)]()));}['updateRuleFormula'](_0x391961,_0x2d874f,_0x1edb9a,_0x8773e2,_0x118416){const _0x259686=_0x426d7e,{ruleFormulaMap:_0x18cf92}=this['_ensureMaps'](_0x391961,_0x2d874f),_0x5ca0d1=_0x18cf92[_0x259686(0x264)](_0x1edb9a);(!_0x5ca0d1||_0x5ca0d1['formula']!==_0x118416)&&this[_0x259686(0x1aa)](_0x391961,_0x2d874f,_0x1edb9a,_0x118416,_0x8773e2);}[_0x426d7e(0x13e)](_0x3da01e,_0x47af27,_0x4eddc0,_0x4d0554){const _0x42b9f5=_0x426d7e,{formulaMap:_0x210014}=this[_0x42b9f5(0x1bf)](_0x3da01e,_0x47af27),_0x12c3ab=_0x210014[_0x42b9f5(0x17c)](_0x4eddc0,_0x4d0554);return _0x12c3ab?this['_registerOtherFormulaService']['getFormulaValue'](_0x3da01e,_0x47af27,_0x12c3ab['formulaId']):Promise[_0x42b9f5(0x1f0)](void 0x0);}[_0x426d7e(0xc5)](_0x43ce58,_0x58a44f,_0x22fc1a){const _0x3fcee5=_0x426d7e,{ruleFormulaMap:_0xf9a16d}=this[_0x3fcee5(0x1bf)](_0x43ce58,_0x58a44f);return _0xf9a16d[_0x3fcee5(0x264)](_0x22fc1a);}},__name(_a,_0x426d7e(0x306)),_a),exports['DataValidationCustomFormulaService']=__decorateClass$8([__decorateParam$8(0x0,core[_0x426d7e(0x1e0)]),__decorateParam$8(0x1,core[_0x426d7e(0x147)](sheetsFormula[_0x426d7e(0x2ff)])),__decorateParam$8(0x2,core[_0x426d7e(0x147)](engineFormula[_0x426d7e(0x172)])),__decorateParam$8(0x3,core[_0x426d7e(0x147)](dataValidation['DataValidationModel'])),__decorateParam$8(0x4,core[_0x426d7e(0x147)](DataValidationCacheService)),__decorateParam$8(0x5,core[_0x426d7e(0x278)])],exports[_0x426d7e(0x306)]);var __defProp$7=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$7=Object['getOwnPropertyDescriptor'],__decorateClass$7=__name((_0xd1b05f,_0x8633cb,_0x3b89a5,_0x371886)=>{const _0x415461=_0x426d7e;for(var _0x1e61dd=_0x371886>0x1?void 0x0:_0x371886?__getOwnPropDesc$7(_0x8633cb,_0x3b89a5):_0x8633cb,_0x46b363=_0xd1b05f[_0x415461(0x1f9)]-0x1,_0x37511b;_0x46b363>=0x0;_0x46b363--)(_0x37511b=_0xd1b05f[_0x46b363])&&(_0x1e61dd=(_0x371886?_0x37511b(_0x8633cb,_0x3b89a5,_0x1e61dd):_0x37511b(_0x1e61dd))||_0x1e61dd);return _0x371886&&_0x1e61dd&&__defProp$7(_0x8633cb,_0x3b89a5,_0x1e61dd),_0x1e61dd;},_0x426d7e(0xc0)),__decorateParam$7=__name((_0x474c4d,_0x530f8f)=>(_0x5c794a,_0x1b15b4)=>_0x530f8f(_0x5c794a,_0x1b15b4,_0x474c4d),'__decorateParam$7'),_a2;exports[_0x426d7e(0x20d)]=(_a2=class extends core[_0x426d7e(0x20c)]{constructor(_0x4455f5,_0x174db6,_0x10b8b5,_0x51f226){const _0x3c1c69=_0x426d7e;super(),__publicField(this,_0x3c1c69(0x225),new Map()),(this[_0x3c1c69(0x254)]=_0x4455f5,this['_registerOtherFormulaService']=_0x174db6,this[_0x3c1c69(0x2ab)]=_0x10b8b5,this[_0x3c1c69(0x1c9)]=_0x51f226,this[_0x3c1c69(0x2c5)]());}[_0x426d7e(0x2c5)](){const _0x5b21e0=_0x426d7e;this[_0x5b21e0(0xc4)](this[_0x5b21e0(0x103)][_0x5b21e0(0x1b4)]['subscribe'](_0xad6c19=>{const _0x2fddc6=_0x5b21e0;for(const _0x4249a6 in _0xad6c19){const _0xe227ef=_0xad6c19[_0x4249a6];if(this['_instanceService'][_0x2fddc6(0x2e2)](_0x4249a6)===core[_0x2fddc6(0x2c7)][_0x2fddc6(0x2a6)])for(const _0x34a124 in _0xe227ef){const _0xa34441=_0xe227ef[_0x34a124],_0x4166ba=this[_0x2fddc6(0xdd)](_0x4249a6,_0x34a124);_0xa34441[_0x2fddc6(0x262)](_0x555b36=>{const _0x55b0f4=_0x2fddc6;var _0xffcb03,_0x186bd4;if(_0x4166ba[_0x55b0f4(0x264)]((_0xffcb03=_0x555b36['extra'])==null?void 0x0:_0xffcb03[_0x55b0f4(0x20f)])){const _0x495aaf=this[_0x55b0f4(0x1c9)]['getRuleById'](_0x4249a6,_0x34a124,(_0x186bd4=_0x555b36[_0x55b0f4(0x1d6)])==null?void 0x0:_0x186bd4['ruleId']);_0x495aaf&&this[_0x55b0f4(0x2ab)][_0x55b0f4(0x16a)](_0x4249a6,_0x34a124,_0x495aaf[_0x55b0f4(0xdc)]);}});}}}));}['_ensureRuleFormulaMap'](_0x4cfbdb,_0x1e43df){const _0x2b04e9=_0x426d7e;let _0x25bdfe=this[_0x2b04e9(0x225)][_0x2b04e9(0x264)](_0x4cfbdb);_0x25bdfe||(_0x25bdfe=new Map(),this[_0x2b04e9(0x225)][_0x2b04e9(0x15c)](_0x4cfbdb,_0x25bdfe));let _0x26f1a4=_0x25bdfe['get'](_0x1e43df);return _0x26f1a4||(_0x26f1a4=new Map(),_0x25bdfe[_0x2b04e9(0x15c)](_0x1e43df,_0x26f1a4)),_0x26f1a4;}['addRule'](_0x296ad4,_0x369be5,_0x4b02ae,_0x3b8fb6,_0x483df6){const _0x203f28=_0x426d7e,_0x137a77=core[_0x203f28(0x1ae)](_0x3b8fb6),_0x310b34=core[_0x203f28(0x1ae)](_0x483df6);if(!_0x137a77&&!_0x310b34)return;const _0x33a523=this[_0x203f28(0xdd)](_0x296ad4,_0x369be5),_0x1fb89d=[void 0x0,void 0x0];if(_0x137a77){const _0x242b86=this[_0x203f28(0x103)]['registerFormula'](_0x296ad4,_0x369be5,_0x3b8fb6,{'ruleId':_0x4b02ae});_0x1fb89d[0x0]={'id':_0x242b86,'text':_0x3b8fb6};}if(_0x310b34){const _0x54c3f7=this[_0x203f28(0x103)]['registerFormula'](_0x296ad4,_0x369be5,_0x483df6,{'ruleId':_0x4b02ae});_0x1fb89d[0x1]={'id':_0x54c3f7,'text':_0x483df6};}_0x33a523['set'](_0x4b02ae,_0x1fb89d);}[_0x426d7e(0x15b)](_0x32a5ef,_0x4a46b9,_0x4adf5c){const _0x18ab0b=_0x426d7e,_0x22a496=this[_0x18ab0b(0xdd)](_0x32a5ef,_0x4a46b9)['get'](_0x4adf5c);if(!_0x22a496)return;const [_0x254dfb,_0x5ef581]=_0x22a496,_0x201890=[_0x254dfb==null?void 0x0:_0x254dfb['id'],_0x5ef581==null?void 0x0:_0x5ef581['id']][_0x18ab0b(0xf5)](Boolean);_0x201890[_0x18ab0b(0x1f9)]&&this[_0x18ab0b(0x103)][_0x18ab0b(0x1a6)](_0x32a5ef,_0x4a46b9,_0x201890);}[_0x426d7e(0x228)](_0x12fdb0,_0x5e231a,_0x480042,_0x54f819,_0x231e44){const _0x2d76f7=_0x426d7e,_0x35dbeb=this[_0x2d76f7(0xdd)](_0x12fdb0,_0x5e231a)[_0x2d76f7(0x264)](_0x480042);if(!_0x35dbeb){this[_0x2d76f7(0x1f8)](_0x12fdb0,_0x5e231a,_0x480042,_0x54f819,_0x231e44);return;}const [_0xf389db,_0xc98f8b]=_0x35dbeb;if((_0xf389db==null?void 0x0:_0xf389db['text'])!==_0x54f819){if(_0xf389db&&this[_0x2d76f7(0x103)][_0x2d76f7(0x1a6)](_0x12fdb0,_0x5e231a,[_0xf389db['id']]),core[_0x2d76f7(0x1ae)](_0x54f819)){const _0x1b593c=this['_registerOtherFormulaService']['registerFormula'](_0x12fdb0,_0x5e231a,_0x54f819,{'ruleId':_0x480042});_0x35dbeb[0x0]={'text':_0x54f819,'id':_0x1b593c};}else _0x35dbeb[0x0]=void 0x0;}if((_0xc98f8b==null?void 0x0:_0xc98f8b[_0x2d76f7(0x242)])!==_0x231e44){if(_0xc98f8b&&this['_registerOtherFormulaService']['deleteFormula'](_0x12fdb0,_0x5e231a,[_0xc98f8b['id']]),core['isFormulaString'](_0x231e44)){const _0x214e84=this[_0x2d76f7(0x103)]['registerFormula'](_0x12fdb0,_0x5e231a,_0x231e44,{'ruleId':_0x480042});_0x35dbeb[0x1]={'text':_0x231e44,'id':_0x214e84};}else _0x35dbeb[0x1]=void 0x0;}}[_0x426d7e(0x178)](_0xe1ba43,_0x45dfc6,_0x44a57a){const _0x3d7380=_0x426d7e,_0x46f185=this[_0x3d7380(0xdd)](_0xe1ba43,_0x45dfc6)[_0x3d7380(0x264)](_0x44a57a);if(!_0x46f185)return Promise[_0x3d7380(0x1f0)](null);const _0x11c712=__name(async _0x139efb=>_0x139efb&&this[_0x3d7380(0x103)][_0x3d7380(0xcb)](_0xe1ba43,_0x45dfc6,_0x139efb['id']),'getResult');return Promise['all']([_0x11c712(_0x46f185[0x0]),_0x11c712(_0x46f185[0x1])]);}[_0x426d7e(0x1ce)](_0x1df156,_0x50f87d,_0x3769ac){const _0x57d479=_0x426d7e,_0x575643=this[_0x57d479(0xdd)](_0x1df156,_0x50f87d)[_0x57d479(0x264)](_0x3769ac);if(_0x575643)return _0x575643['map'](_0xfaabcf=>{const _0x3dedc8=_0x57d479;if(_0xfaabcf)return this[_0x3dedc8(0x103)]['getFormulaValueSync'](_0x1df156,_0x50f87d,_0xfaabcf['id']);});}[_0x426d7e(0xc5)](_0x2fca91,_0x17bf9d,_0x2a8b44){const _0x457d4a=_0x426d7e;return this['_ensureRuleFormulaMap'](_0x2fca91,_0x17bf9d)[_0x457d4a(0x264)](_0x2a8b44);}},__name(_a2,_0x426d7e(0x20d)),_a2),exports[_0x426d7e(0x20d)]=__decorateClass$7([__decorateParam$7(0x0,core[_0x426d7e(0x1e0)]),__decorateParam$7(0x1,core[_0x426d7e(0x147)](sheetsFormula['RegisterOtherFormulaService'])),__decorateParam$7(0x2,core[_0x426d7e(0x147)](DataValidationCacheService)),__decorateParam$7(0x3,core[_0x426d7e(0x147)](dataValidation[_0x426d7e(0x11f)]))],exports[_0x426d7e(0x20d)]);function getCellValueOrigin(_0x4b08bf){const _0x114613=_0x426d7e;return core[_0x114613(0x16f)](_0x4b08bf);}__name(getCellValueOrigin,_0x426d7e(0x1f6));function getStringCellValue(_0x128448){var _0x1684e2;return String((_0x1684e2=getCellValueOrigin(_0x128448))!=null?_0x1684e2:'');}__name(getStringCellValue,'getStringCellValue');var _a3;const Interval=(_a3=class{constructor(_0x32525d,_0x458e70){const _0x39aad2=_0x426d7e;this[_0x39aad2(0x13d)]=_0x32525d,this[_0x39aad2(0xe3)]=_0x458e70;}[_0x426d7e(0x245)](){const _0x423f2f=_0x426d7e;return new _a3(this['low'],this[_0x423f2f(0xe3)]);}get[_0x426d7e(0x2dc)](){const _0x5ba9f2=_0x426d7e;return this[_0x5ba9f2(0x245)]();}[_0x426d7e(0x1e4)](_0x3146e6){const _0x4edf1d=_0x426d7e;return this[_0x4edf1d(0x13d)]<_0x3146e6[_0x4edf1d(0x13d)]||this[_0x4edf1d(0x13d)]===_0x3146e6[_0x4edf1d(0x13d)]&&this[_0x4edf1d(0xe3)]<_0x3146e6[_0x4edf1d(0xe3)];}[_0x426d7e(0x122)](_0x1b59ac){const _0x1fb442=_0x426d7e;return this['low']===_0x1b59ac[_0x1fb442(0x13d)]&&this[_0x1fb442(0xe3)]===_0x1b59ac[_0x1fb442(0xe3)];}[_0x426d7e(0x12a)](_0x58f49b){const _0x175518=_0x426d7e;return!this[_0x175518(0x193)](_0x58f49b);}[_0x426d7e(0x193)](_0x2239b7){const _0x2b122b=_0x426d7e;return this['high']<_0x2239b7[_0x2b122b(0x13d)]||_0x2239b7[_0x2b122b(0xe3)]<this[_0x2b122b(0x13d)];}[_0x426d7e(0x18d)](_0x484f51){const _0x129aad=_0x426d7e;return new _a3(this[_0x129aad(0x13d)]===void 0x0?_0x484f51[_0x129aad(0x13d)]:this[_0x129aad(0x13d)]<_0x484f51[_0x129aad(0x13d)]?this[_0x129aad(0x13d)]:_0x484f51[_0x129aad(0x13d)],this['high']===void 0x0?_0x484f51[_0x129aad(0xe3)]:this['high']>_0x484f51[_0x129aad(0xe3)]?this['high']:_0x484f51[_0x129aad(0xe3)]);}['output'](){const _0x5350a1=_0x426d7e;return[this[_0x5350a1(0x13d)],this['high']];}static[_0x426d7e(0x2c2)](_0x11419d,_0x41973c){const _0x44b39b=_0x426d7e;return _0x11419d[_0x44b39b(0x18d)](_0x41973c);}static[_0x426d7e(0x2f8)](_0x433b83,_0x2edbbb){return _0x433b83<_0x2edbbb;}},__name(_a3,_0x426d7e(0x142)),_a3),RB_TREE_COLOR_RED=0x0,RB_TREE_COLOR_BLACK=0x1,_Node=class _Node{constructor(_0x8879e2=void 0x0,_0x24189f=void 0x0,_0x53561c=null,_0x194ea7=null,_0x2a7d29=null,_0xa7b401=RB_TREE_COLOR_BLACK){const _0x2bc638=_0x426d7e;if(this[_0x2bc638(0x163)]=_0x53561c,this[_0x2bc638(0x232)]=_0x194ea7,this['parent']=_0x2a7d29,this[_0x2bc638(0x282)]=_0xa7b401,this['item']={'key':_0x8879e2,'value':_0x24189f},_0x8879e2&&_0x8879e2 instanceof Array&&_0x8879e2['length']===0x2&&!Number[_0x2bc638(0x1bb)](_0x8879e2[0x0])&&!Number[_0x2bc638(0x1bb)](_0x8879e2[0x1])){let [_0x7927cd,_0x2962a2]=_0x8879e2;_0x7927cd>_0x2962a2&&([_0x7927cd,_0x2962a2]=[_0x2962a2,_0x7927cd]),this[_0x2bc638(0x1c8)][_0x2bc638(0x277)]=new Interval(_0x7927cd,_0x2962a2);}this[_0x2bc638(0x2dc)]=this[_0x2bc638(0x1c8)][_0x2bc638(0x277)]?this[_0x2bc638(0x1c8)][_0x2bc638(0x277)][_0x2bc638(0x2dc)]:void 0x0;}[_0x426d7e(0x241)](){const _0x290ebe=_0x426d7e;return this[_0x290ebe(0x1c8)][_0x290ebe(0x277)]===void 0x0&&this[_0x290ebe(0x1c8)]['value']===void 0x0&&this[_0x290ebe(0x163)]===null&&this[_0x290ebe(0x232)]===null&&this[_0x290ebe(0x282)]===RB_TREE_COLOR_BLACK;}[_0x426d7e(0x190)](_0x249119){const _0x4d942b=_0x426d7e;return this['item']['value']&&_0x249119[_0x4d942b(0x1c8)][_0x4d942b(0x1e3)]&&this['item'][_0x4d942b(0x1e3)][_0x4d942b(0x1e4)]?this[_0x4d942b(0x1c8)][_0x4d942b(0x1e3)][_0x4d942b(0x1e4)](_0x249119[_0x4d942b(0x1c8)]['value']):this['item']['value']<_0x249119[_0x4d942b(0x1c8)]['value'];}[_0x426d7e(0x1e4)](_0x3b24d6){const _0x1fb5aa=_0x426d7e;return this[_0x1fb5aa(0x1c8)][_0x1fb5aa(0x1e3)]===this[_0x1fb5aa(0x1c8)][_0x1fb5aa(0x277)]&&_0x3b24d6[_0x1fb5aa(0x1c8)]['value']===_0x3b24d6[_0x1fb5aa(0x1c8)][_0x1fb5aa(0x277)]?this[_0x1fb5aa(0x1c8)][_0x1fb5aa(0x277)][_0x1fb5aa(0x1e4)](_0x3b24d6[_0x1fb5aa(0x1c8)][_0x1fb5aa(0x277)]):this['item']['key'][_0x1fb5aa(0x1e4)](_0x3b24d6[_0x1fb5aa(0x1c8)][_0x1fb5aa(0x277)])||this[_0x1fb5aa(0x1c8)][_0x1fb5aa(0x277)][_0x1fb5aa(0x122)](_0x3b24d6['item'][_0x1fb5aa(0x277)])&&this[_0x1fb5aa(0x190)](_0x3b24d6);}['_value_equal'](_0x24c173){const _0xe6214c=_0x426d7e;return this[_0xe6214c(0x1c8)][_0xe6214c(0x1e3)]&&_0x24c173[_0xe6214c(0x1c8)][_0xe6214c(0x1e3)]&&this[_0xe6214c(0x1c8)][_0xe6214c(0x1e3)]['equal_to']?this[_0xe6214c(0x1c8)][_0xe6214c(0x1e3)][_0xe6214c(0x122)](_0x24c173[_0xe6214c(0x1c8)][_0xe6214c(0x1e3)]):this['item'][_0xe6214c(0x1e3)]===_0x24c173[_0xe6214c(0x1c8)][_0xe6214c(0x1e3)];}[_0x426d7e(0x122)](_0x487859){const _0x5cd184=_0x426d7e;return this[_0x5cd184(0x1c8)][_0x5cd184(0x1e3)]===this[_0x5cd184(0x1c8)][_0x5cd184(0x277)]&&_0x487859[_0x5cd184(0x1c8)][_0x5cd184(0x1e3)]===_0x487859[_0x5cd184(0x1c8)][_0x5cd184(0x277)]?this[_0x5cd184(0x1c8)][_0x5cd184(0x277)][_0x5cd184(0x122)](_0x487859['item'][_0x5cd184(0x277)]):this[_0x5cd184(0x1c8)][_0x5cd184(0x277)][_0x5cd184(0x122)](_0x487859['item']['key'])&&this[_0x5cd184(0x159)](_0x487859);}[_0x426d7e(0x12a)](_0xb7c74e){const _0x1e4425=_0x426d7e;return this[_0x1e4425(0x1c8)][_0x1e4425(0x277)][_0x1e4425(0x12a)](_0xb7c74e['item'][_0x1e4425(0x277)]);}[_0x426d7e(0x2fe)](_0x424e83){const _0x58f78c=_0x426d7e;this[_0x58f78c(0x1c8)][_0x58f78c(0x277)]=_0x424e83[_0x58f78c(0x1c8)][_0x58f78c(0x277)],this[_0x58f78c(0x1c8)][_0x58f78c(0x1e3)]=_0x424e83['item'][_0x58f78c(0x1e3)];}['update_max'](){const _0x4530f4=_0x426d7e;if(this['max']=this[_0x4530f4(0x1c8)][_0x4530f4(0x277)]?this['item'][_0x4530f4(0x277)][_0x4530f4(0x2dc)]:void 0x0,this['right']&&this[_0x4530f4(0x232)][_0x4530f4(0x2dc)]){const _0xa4e425=this[_0x4530f4(0x1c8)][_0x4530f4(0x277)][_0x4530f4(0x291)][_0x4530f4(0x2c2)];this[_0x4530f4(0x2dc)]=_0xa4e425(this[_0x4530f4(0x2dc)],this['right'][_0x4530f4(0x2dc)]);}if(this[_0x4530f4(0x163)]&&this[_0x4530f4(0x163)]['max']){const _0x589986=this[_0x4530f4(0x1c8)][_0x4530f4(0x277)][_0x4530f4(0x291)]['comparable_max'];this['max']=_0x589986(this['max'],this[_0x4530f4(0x163)][_0x4530f4(0x2dc)]);}}['not_intersect_left_subtree'](_0x425c52){const _0x50b130=_0x426d7e,_0x166b15=this[_0x50b130(0x1c8)]['key'][_0x50b130(0x291)]['comparable_less_than'];let _0x34063b=this['left'][_0x50b130(0x2dc)]['high']!==void 0x0?this[_0x50b130(0x163)][_0x50b130(0x2dc)]['high']:this['left'][_0x50b130(0x2dc)];return _0x166b15(_0x34063b,_0x425c52[_0x50b130(0x1c8)][_0x50b130(0x277)][_0x50b130(0x13d)]);}['not_intersect_right_subtree'](_0x51c2a8){const _0x4b4357=_0x426d7e,_0xa5e0bf=this[_0x4b4357(0x1c8)][_0x4b4357(0x277)][_0x4b4357(0x291)][_0x4b4357(0x2f8)];let _0x90464c=this['right']['max'][_0x4b4357(0x13d)]!==void 0x0?this['right'][_0x4b4357(0x2dc)][_0x4b4357(0x13d)]:this[_0x4b4357(0x232)][_0x4b4357(0x1c8)]['key']['low'];return _0xa5e0bf(_0x51c2a8['item']['key'][_0x4b4357(0xe3)],_0x90464c);}};__name(_Node,_0x426d7e(0xcf));let Node=_Node;const _IntervalTree=class _IntervalTree{constructor(){const _0x2d647a=_0x426d7e;this[_0x2d647a(0x138)]=null,this[_0x2d647a(0x1eb)]=new Node();}get['size'](){const _0x57bc69=_0x426d7e;let _0x468044=0x0;return this[_0x57bc69(0x1dd)](this[_0x57bc69(0x138)],()=>_0x468044++),_0x468044;}get[_0x426d7e(0x1f3)](){const _0x1718c7=_0x426d7e;let _0x109065=[];return this[_0x1718c7(0x1dd)](this[_0x1718c7(0x138)],_0x1e3f5a=>_0x109065['push'](_0x1e3f5a[_0x1718c7(0x1c8)][_0x1718c7(0x277)][_0x1718c7(0x2b3)]?_0x1e3f5a[_0x1718c7(0x1c8)][_0x1718c7(0x277)][_0x1718c7(0x2b3)]():_0x1e3f5a[_0x1718c7(0x1c8)][_0x1718c7(0x277)])),_0x109065;}get['values'](){const _0x5baa5a=_0x426d7e;let _0x22c180=[];return this[_0x5baa5a(0x1dd)](this[_0x5baa5a(0x138)],_0x508412=>_0x22c180[_0x5baa5a(0x2a1)](_0x508412[_0x5baa5a(0x1c8)][_0x5baa5a(0x1e3)])),_0x22c180;}get[_0x426d7e(0x2fb)](){const _0x24692b=_0x426d7e;let _0xfc550e=[];return this[_0x24692b(0x1dd)](this['root'],_0x52503a=>_0xfc550e[_0x24692b(0x2a1)]({'key':_0x52503a[_0x24692b(0x1c8)]['key'][_0x24692b(0x2b3)]?_0x52503a[_0x24692b(0x1c8)]['key']['output']():_0x52503a[_0x24692b(0x1c8)][_0x24692b(0x277)],'value':_0x52503a[_0x24692b(0x1c8)][_0x24692b(0x1e3)]})),_0xfc550e;}[_0x426d7e(0x226)](){const _0x397364=_0x426d7e;return this['root']==null||this[_0x397364(0x138)]===this['nil_node'];}[_0x426d7e(0x2c4)](){this['root']=null;}[_0x426d7e(0x117)](_0x4fb709,_0x4e9134=_0x4fb709){const _0x2d11db=_0x426d7e;if(_0x4fb709===void 0x0)return;let _0x5b449e=new Node(_0x4fb709,_0x4e9134,this[_0x2d11db(0x1eb)],this['nil_node'],null,RB_TREE_COLOR_RED);return this[_0x2d11db(0x23c)](_0x5b449e),this['recalc_max'](_0x5b449e),_0x5b449e;}[_0x426d7e(0x210)](_0x28315c,_0x5940d5=_0x28315c){const _0x595043=_0x426d7e;let _0x454f59=new Node(_0x28315c,_0x5940d5);return!!this['tree_search'](this[_0x595043(0x138)],_0x454f59);}['remove'](_0xf77906,_0x3def4e=_0xf77906){const _0x431fc0=_0x426d7e;let _0x58e63=new Node(_0xf77906,_0x3def4e),_0x18b4db=this[_0x431fc0(0x124)](this[_0x431fc0(0x138)],_0x58e63);return _0x18b4db&&this[_0x431fc0(0x156)](_0x18b4db),_0x18b4db;}['search'](_0xe80706,_0x55d54e=(_0x57cfe9,_0x449bdc)=>_0x57cfe9===_0x449bdc?_0x449bdc[_0x426d7e(0x2b3)]():_0x57cfe9){const _0x977ebf=_0x426d7e;let _0x33108b=new Node(_0xe80706),_0x569be4=[];return this[_0x977ebf(0x118)](this['root'],_0x33108b,_0x569be4),_0x569be4[_0x977ebf(0xd7)](_0x36e5a9=>_0x55d54e(_0x36e5a9[_0x977ebf(0x1c8)]['value'],_0x36e5a9[_0x977ebf(0x1c8)]['key']));}[_0x426d7e(0x1bc)](_0x1050e6){const _0x89451c=_0x426d7e;let _0x425185=new Node(_0x1050e6);return this[_0x89451c(0x265)](this[_0x89451c(0x138)],_0x425185);}['forEach'](_0x57eaca){const _0x3d16b5=_0x426d7e;this[_0x3d16b5(0x1dd)](this[_0x3d16b5(0x138)],_0x454d42=>_0x57eaca(_0x454d42[_0x3d16b5(0x1c8)][_0x3d16b5(0x277)],_0x454d42['item'][_0x3d16b5(0x1e3)]));}['map'](_0x4913d8){const _0x3429e4=_0x426d7e,_0x583c88=new _IntervalTree();return this[_0x3429e4(0x1dd)](this['root'],_0x4752d8=>_0x583c88[_0x3429e4(0x117)](_0x4752d8[_0x3429e4(0x1c8)][_0x3429e4(0x277)],_0x4913d8(_0x4752d8[_0x3429e4(0x1c8)][_0x3429e4(0x1e3)],_0x4752d8[_0x3429e4(0x1c8)][_0x3429e4(0x277)]))),_0x583c88;}*[_0x426d7e(0x19f)](_0xc90a03,_0x4f5356=(_0x447197,_0x2badea)=>_0x447197===_0x2badea?_0x2badea[_0x426d7e(0x2b3)]():_0x447197){const _0x28b18a=_0x426d7e;let _0xb97976;for(_0xc90a03?_0xb97976=this[_0x28b18a(0x2db)](this[_0x28b18a(0x138)],new Node(_0xc90a03)):this[_0x28b18a(0x138)]&&(_0xb97976=this[_0x28b18a(0xfc)](this['root']));_0xb97976;)yield _0x4f5356(_0xb97976[_0x28b18a(0x1c8)][_0x28b18a(0x1e3)],_0xb97976[_0x28b18a(0x1c8)][_0x28b18a(0x277)]),_0xb97976=this[_0x28b18a(0x215)](_0xb97976);}[_0x426d7e(0xc9)](_0x42d4ac){const _0x162a9c=_0x426d7e;let _0x24a63f=_0x42d4ac;for(;_0x24a63f[_0x162a9c(0x2f0)]!=null;)_0x24a63f[_0x162a9c(0x2f0)][_0x162a9c(0x1dc)](),_0x24a63f=_0x24a63f[_0x162a9c(0x2f0)];}[_0x426d7e(0x23c)](_0x3a12be){const _0x44c01b=_0x426d7e;let _0x5e996d=this[_0x44c01b(0x138)],_0x28c8ce=null;if(this[_0x44c01b(0x138)]==null||this['root']===this[_0x44c01b(0x1eb)])this[_0x44c01b(0x138)]=_0x3a12be;else{for(;_0x5e996d!==this[_0x44c01b(0x1eb)];)_0x28c8ce=_0x5e996d,_0x3a12be[_0x44c01b(0x1e4)](_0x5e996d)?_0x5e996d=_0x5e996d['left']:_0x5e996d=_0x5e996d[_0x44c01b(0x232)];_0x3a12be[_0x44c01b(0x2f0)]=_0x28c8ce,_0x3a12be[_0x44c01b(0x1e4)](_0x28c8ce)?_0x28c8ce[_0x44c01b(0x163)]=_0x3a12be:_0x28c8ce['right']=_0x3a12be;}this['insert_fixup'](_0x3a12be);}[_0x426d7e(0x18a)](_0x1bff40){const _0x126467=_0x426d7e;let _0x3bd814,_0x372971;for(_0x3bd814=_0x1bff40;_0x3bd814!==this[_0x126467(0x138)]&&_0x3bd814[_0x126467(0x2f0)][_0x126467(0x282)]===RB_TREE_COLOR_RED;)_0x3bd814['parent']===_0x3bd814[_0x126467(0x2f0)]['parent'][_0x126467(0x163)]?(_0x372971=_0x3bd814[_0x126467(0x2f0)][_0x126467(0x2f0)][_0x126467(0x232)],_0x372971[_0x126467(0x282)]===RB_TREE_COLOR_RED?(_0x3bd814[_0x126467(0x2f0)]['color']=RB_TREE_COLOR_BLACK,_0x372971['color']=RB_TREE_COLOR_BLACK,_0x3bd814[_0x126467(0x2f0)]['parent'][_0x126467(0x282)]=RB_TREE_COLOR_RED,_0x3bd814=_0x3bd814['parent'][_0x126467(0x2f0)]):(_0x3bd814===_0x3bd814[_0x126467(0x2f0)]['right']&&(_0x3bd814=_0x3bd814['parent'],this[_0x126467(0x2f6)](_0x3bd814)),_0x3bd814['parent'][_0x126467(0x282)]=RB_TREE_COLOR_BLACK,_0x3bd814[_0x126467(0x2f0)][_0x126467(0x2f0)][_0x126467(0x282)]=RB_TREE_COLOR_RED,this[_0x126467(0x165)](_0x3bd814[_0x126467(0x2f0)][_0x126467(0x2f0)]))):(_0x372971=_0x3bd814[_0x126467(0x2f0)]['parent'][_0x126467(0x163)],_0x372971[_0x126467(0x282)]===RB_TREE_COLOR_RED?(_0x3bd814['parent'][_0x126467(0x282)]=RB_TREE_COLOR_BLACK,_0x372971[_0x126467(0x282)]=RB_TREE_COLOR_BLACK,_0x3bd814['parent']['parent'][_0x126467(0x282)]=RB_TREE_COLOR_RED,_0x3bd814=_0x3bd814['parent'][_0x126467(0x2f0)]):(_0x3bd814===_0x3bd814['parent'][_0x126467(0x163)]&&(_0x3bd814=_0x3bd814[_0x126467(0x2f0)],this[_0x126467(0x165)](_0x3bd814)),_0x3bd814[_0x126467(0x2f0)][_0x126467(0x282)]=RB_TREE_COLOR_BLACK,_0x3bd814['parent'][_0x126467(0x2f0)][_0x126467(0x282)]=RB_TREE_COLOR_RED,this['rotate_left'](_0x3bd814['parent']['parent'])));this[_0x126467(0x138)][_0x126467(0x282)]=RB_TREE_COLOR_BLACK;}[_0x426d7e(0x156)](_0x2df25a){const _0x5b12d9=_0x426d7e;let _0x289feb,_0x5349e2;_0x2df25a['left']===this['nil_node']||_0x2df25a[_0x5b12d9(0x232)]===this['nil_node']?_0x289feb=_0x2df25a:_0x289feb=this[_0x5b12d9(0x215)](_0x2df25a),_0x289feb[_0x5b12d9(0x163)]!==this[_0x5b12d9(0x1eb)]?_0x5349e2=_0x289feb[_0x5b12d9(0x163)]:_0x5349e2=_0x289feb['right'],_0x5349e2['parent']=_0x289feb['parent'],_0x289feb===this[_0x5b12d9(0x138)]?this[_0x5b12d9(0x138)]=_0x5349e2:(_0x289feb===_0x289feb[_0x5b12d9(0x2f0)]['left']?_0x289feb[_0x5b12d9(0x2f0)][_0x5b12d9(0x163)]=_0x5349e2:_0x289feb['parent'][_0x5b12d9(0x232)]=_0x5349e2,_0x289feb[_0x5b12d9(0x2f0)][_0x5b12d9(0x1dc)]()),this[_0x5b12d9(0xc9)](_0x5349e2),_0x289feb!==_0x2df25a&&(_0x2df25a['copy_data'](_0x289feb),_0x2df25a[_0x5b12d9(0x1dc)](),this[_0x5b12d9(0xc9)](_0x2df25a)),_0x289feb[_0x5b12d9(0x282)]===RB_TREE_COLOR_BLACK&&this['delete_fixup'](_0x5349e2);}['delete_fixup'](_0x5700b3){const _0x5b34df=_0x426d7e;let _0x46f7ce=_0x5700b3,_0x40d475;for(;_0x46f7ce!==this[_0x5b34df(0x138)]&&_0x46f7ce[_0x5b34df(0x2f0)]!=null&&_0x46f7ce[_0x5b34df(0x282)]===RB_TREE_COLOR_BLACK;)_0x46f7ce===_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x163)]?(_0x40d475=_0x46f7ce[_0x5b34df(0x2f0)]['right'],_0x40d475[_0x5b34df(0x282)]===RB_TREE_COLOR_RED&&(_0x40d475[_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x282)]=RB_TREE_COLOR_RED,this[_0x5b34df(0x2f6)](_0x46f7ce[_0x5b34df(0x2f0)]),_0x40d475=_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x232)]),_0x40d475[_0x5b34df(0x163)]['color']===RB_TREE_COLOR_BLACK&&_0x40d475[_0x5b34df(0x232)][_0x5b34df(0x282)]===RB_TREE_COLOR_BLACK?(_0x40d475[_0x5b34df(0x282)]=RB_TREE_COLOR_RED,_0x46f7ce=_0x46f7ce[_0x5b34df(0x2f0)]):(_0x40d475[_0x5b34df(0x232)][_0x5b34df(0x282)]===RB_TREE_COLOR_BLACK&&(_0x40d475[_0x5b34df(0x282)]=RB_TREE_COLOR_RED,_0x40d475['left'][_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,this['rotate_right'](_0x40d475),_0x40d475=_0x46f7ce[_0x5b34df(0x2f0)]['right']),_0x40d475[_0x5b34df(0x282)]=_0x46f7ce[_0x5b34df(0x2f0)]['color'],_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,_0x40d475[_0x5b34df(0x232)][_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,this['rotate_left'](_0x46f7ce['parent']),_0x46f7ce=this[_0x5b34df(0x138)])):(_0x40d475=_0x46f7ce['parent']['left'],_0x40d475[_0x5b34df(0x282)]===RB_TREE_COLOR_RED&&(_0x40d475[_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,_0x46f7ce['parent']['color']=RB_TREE_COLOR_RED,this[_0x5b34df(0x165)](_0x46f7ce[_0x5b34df(0x2f0)]),_0x40d475=_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x163)]),_0x40d475[_0x5b34df(0x163)][_0x5b34df(0x282)]===RB_TREE_COLOR_BLACK&&_0x40d475[_0x5b34df(0x232)]['color']===RB_TREE_COLOR_BLACK?(_0x40d475[_0x5b34df(0x282)]=RB_TREE_COLOR_RED,_0x46f7ce=_0x46f7ce[_0x5b34df(0x2f0)]):(_0x40d475[_0x5b34df(0x163)][_0x5b34df(0x282)]===RB_TREE_COLOR_BLACK&&(_0x40d475[_0x5b34df(0x282)]=RB_TREE_COLOR_RED,_0x40d475[_0x5b34df(0x232)][_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,this[_0x5b34df(0x2f6)](_0x40d475),_0x40d475=_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x163)]),_0x40d475[_0x5b34df(0x282)]=_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x282)],_0x46f7ce[_0x5b34df(0x2f0)][_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,_0x40d475[_0x5b34df(0x163)][_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK,this[_0x5b34df(0x165)](_0x46f7ce[_0x5b34df(0x2f0)]),_0x46f7ce=this[_0x5b34df(0x138)]));_0x46f7ce[_0x5b34df(0x282)]=RB_TREE_COLOR_BLACK;}[_0x426d7e(0x124)](_0x378b43,_0x1bf177){const _0x1bf751=_0x426d7e;if(!(_0x378b43==null||_0x378b43===this[_0x1bf751(0x1eb)]))return _0x1bf177['equal_to'](_0x378b43)?_0x378b43:_0x1bf177[_0x1bf751(0x1e4)](_0x378b43)?this[_0x1bf751(0x124)](_0x378b43['left'],_0x1bf177):this['tree_search'](_0x378b43['right'],_0x1bf177);}[_0x426d7e(0x2db)](_0x19d001,_0x5597bd){const _0x53e2aa=_0x426d7e;let _0x485723,_0x526c6b=_0x19d001;for(;_0x526c6b&&_0x526c6b!==this['nil_node'];)_0x526c6b[_0x53e2aa(0x1e4)](_0x5597bd)?_0x526c6b['intersect'](_0x5597bd)?(_0x485723=_0x526c6b,_0x526c6b=_0x526c6b[_0x53e2aa(0x163)]):_0x526c6b=_0x526c6b[_0x53e2aa(0x232)]:((!_0x485723||_0x526c6b[_0x53e2aa(0x1e4)](_0x485723))&&(_0x485723=_0x526c6b),_0x526c6b=_0x526c6b['left']);return _0x485723||null;}[_0x426d7e(0x118)](_0xdf7498,_0x9011e5,_0x1d7455){const _0x13980a=_0x426d7e;_0xdf7498!=null&&_0xdf7498!==this[_0x13980a(0x1eb)]&&(_0xdf7498[_0x13980a(0x163)]!==this['nil_node']&&!_0xdf7498['not_intersect_left_subtree'](_0x9011e5)&&this[_0x13980a(0x118)](_0xdf7498[_0x13980a(0x163)],_0x9011e5,_0x1d7455),_0xdf7498[_0x13980a(0x12a)](_0x9011e5)&&_0x1d7455['push'](_0xdf7498),_0xdf7498[_0x13980a(0x232)]!==this[_0x13980a(0x1eb)]&&!_0xdf7498[_0x13980a(0xee)](_0x9011e5)&&this['tree_search_interval'](_0xdf7498[_0x13980a(0x232)],_0x9011e5,_0x1d7455));}['tree_find_any_interval'](_0x270132,_0x3df84f){const _0x576eab=_0x426d7e;let _0x57da6f=!0x1;return _0x270132!=null&&_0x270132!==this[_0x576eab(0x1eb)]&&(_0x270132[_0x576eab(0x163)]!==this['nil_node']&&!_0x270132[_0x576eab(0x1a2)](_0x3df84f)&&(_0x57da6f=this[_0x576eab(0x265)](_0x270132[_0x576eab(0x163)],_0x3df84f)),_0x57da6f||(_0x57da6f=_0x270132['intersect'](_0x3df84f)),!_0x57da6f&&_0x270132[_0x576eab(0x232)]!==this[_0x576eab(0x1eb)]&&!_0x270132[_0x576eab(0xee)](_0x3df84f)&&(_0x57da6f=this[_0x576eab(0x265)](_0x270132[_0x576eab(0x232)],_0x3df84f))),_0x57da6f;}[_0x426d7e(0xfc)](_0x2bbb57){const _0x3ed4ca=_0x426d7e;let _0x5b14b0=_0x2bbb57;for(;_0x5b14b0[_0x3ed4ca(0x163)]!=null&&_0x5b14b0['left']!==this[_0x3ed4ca(0x1eb)];)_0x5b14b0=_0x5b14b0['left'];return _0x5b14b0;}[_0x426d7e(0x1a1)](_0x465246){const _0x5bb2f8=_0x426d7e;let _0x4550db=_0x465246;for(;_0x4550db[_0x5bb2f8(0x232)]!=null&&_0x4550db[_0x5bb2f8(0x232)]!==this[_0x5bb2f8(0x1eb)];)_0x4550db=_0x4550db[_0x5bb2f8(0x232)];return _0x4550db;}[_0x426d7e(0x215)](_0x2c1bd5){const _0x379410=_0x426d7e;let _0x376f94,_0x515eff,_0x5a630b;if(_0x2c1bd5[_0x379410(0x232)]!==this[_0x379410(0x1eb)])_0x376f94=this[_0x379410(0xfc)](_0x2c1bd5['right']);else{for(_0x515eff=_0x2c1bd5,_0x5a630b=_0x2c1bd5[_0x379410(0x2f0)];_0x5a630b!=null&&_0x5a630b[_0x379410(0x232)]===_0x515eff;)_0x515eff=_0x5a630b,_0x5a630b=_0x5a630b[_0x379410(0x2f0)];_0x376f94=_0x5a630b;}return _0x376f94;}[_0x426d7e(0x2f6)](_0x1f8011){const _0x11b460=_0x426d7e;let _0x4de7ce=_0x1f8011[_0x11b460(0x232)];_0x1f8011['right']=_0x4de7ce[_0x11b460(0x163)],_0x4de7ce[_0x11b460(0x163)]!==this[_0x11b460(0x1eb)]&&(_0x4de7ce[_0x11b460(0x163)][_0x11b460(0x2f0)]=_0x1f8011),_0x4de7ce[_0x11b460(0x2f0)]=_0x1f8011[_0x11b460(0x2f0)],_0x1f8011===this['root']?this[_0x11b460(0x138)]=_0x4de7ce:_0x1f8011===_0x1f8011['parent']['left']?_0x1f8011[_0x11b460(0x2f0)]['left']=_0x4de7ce:_0x1f8011[_0x11b460(0x2f0)]['right']=_0x4de7ce,_0x4de7ce[_0x11b460(0x163)]=_0x1f8011,_0x1f8011['parent']=_0x4de7ce,_0x1f8011!=null&&_0x1f8011!==this[_0x11b460(0x1eb)]&&_0x1f8011[_0x11b460(0x1dc)](),_0x4de7ce=_0x1f8011[_0x11b460(0x2f0)],_0x4de7ce!=null&&_0x4de7ce!==this['nil_node']&&_0x4de7ce['update_max']();}[_0x426d7e(0x165)](_0x1d2e8b){const _0x4fe55f=_0x426d7e;let _0x59d417=_0x1d2e8b[_0x4fe55f(0x163)];_0x1d2e8b[_0x4fe55f(0x163)]=_0x59d417['right'],_0x59d417[_0x4fe55f(0x232)]!==this[_0x4fe55f(0x1eb)]&&(_0x59d417[_0x4fe55f(0x232)][_0x4fe55f(0x2f0)]=_0x1d2e8b),_0x59d417['parent']=_0x1d2e8b[_0x4fe55f(0x2f0)],_0x1d2e8b===this[_0x4fe55f(0x138)]?this[_0x4fe55f(0x138)]=_0x59d417:_0x1d2e8b===_0x1d2e8b[_0x4fe55f(0x2f0)][_0x4fe55f(0x163)]?_0x1d2e8b[_0x4fe55f(0x2f0)][_0x4fe55f(0x163)]=_0x59d417:_0x1d2e8b[_0x4fe55f(0x2f0)][_0x4fe55f(0x232)]=_0x59d417,_0x59d417[_0x4fe55f(0x232)]=_0x1d2e8b,_0x1d2e8b['parent']=_0x59d417,_0x1d2e8b!==null&&_0x1d2e8b!==this[_0x4fe55f(0x1eb)]&&_0x1d2e8b[_0x4fe55f(0x1dc)](),_0x59d417=_0x1d2e8b[_0x4fe55f(0x2f0)],_0x59d417!=null&&_0x59d417!==this[_0x4fe55f(0x1eb)]&&_0x59d417[_0x4fe55f(0x1dc)]();}[_0x426d7e(0x1dd)](_0x4b42b0,_0x1eaa09){const _0x15bb43=_0x426d7e;_0x4b42b0!=null&&_0x4b42b0!==this[_0x15bb43(0x1eb)]&&(this[_0x15bb43(0x1dd)](_0x4b42b0['left'],_0x1eaa09),_0x1eaa09(_0x4b42b0),this[_0x15bb43(0x1dd)](_0x4b42b0[_0x15bb43(0x232)],_0x1eaa09));}[_0x426d7e(0x22d)](){const _0x4c3768=_0x426d7e;let _0x1f0148=!0x0;return this[_0x4c3768(0x1dd)](this[_0x4c3768(0x138)],function(_0x419df0){const _0x267789=_0x4c3768;_0x419df0[_0x267789(0x282)]===RB_TREE_COLOR_RED&&(_0x419df0[_0x267789(0x163)]['color']===RB_TREE_COLOR_BLACK&&_0x419df0[_0x267789(0x232)][_0x267789(0x282)]===RB_TREE_COLOR_BLACK||(_0x1f0148=!0x1));}),_0x1f0148;}[_0x426d7e(0x108)](_0x27e9f6){const _0x454d5a=_0x426d7e;let _0x26204c=0x0,_0x2ee71c=0x0,_0x278543=0x0;if(_0x27e9f6[_0x454d5a(0x282)]===RB_TREE_COLOR_BLACK&&_0x26204c++,_0x27e9f6[_0x454d5a(0x163)]!==this[_0x454d5a(0x1eb)]?_0x2ee71c=this[_0x454d5a(0x108)](_0x27e9f6[_0x454d5a(0x163)]):_0x2ee71c=0x1,_0x27e9f6[_0x454d5a(0x232)]!==this[_0x454d5a(0x1eb)]?_0x278543=this[_0x454d5a(0x108)](_0x27e9f6[_0x454d5a(0x232)]):_0x278543=0x1,_0x2ee71c!==_0x278543)throw new Error('Red-black\x20height\x20property\x20violated');return _0x26204c+=_0x2ee71c,_0x26204c;}};__name(_IntervalTree,_0x426d7e(0xce));let IntervalTree=_IntervalTree;const _RuleMatrix=class _RuleMatrix{constructor(_0x28a4c8,_0x140e92,_0x18c9b3,_0x184790,_0x3db066=!0x1){const _0x253cb6=_0x426d7e;__publicField(this,_0x253cb6(0x213)),__publicField(this,_0x253cb6(0x2eb),new Map()),__publicField(this,_0x253cb6(0x292),!0x0),__publicField(this,'_buildTree',__name(()=>{const _0x10eacd=_0x253cb6;if(!this[_0x10eacd(0x292)]||this['_disableTree'])return;const _0x56bce4=new Map();this['_map'][_0x10eacd(0x262)]((_0x3839e7,_0x433b27)=>{const _0x24a4f7=_0x10eacd;_0x3839e7[_0x24a4f7(0x262)](_0x1f001f=>{const _0x285722=_0x24a4f7;for(let _0x103dc8=_0x1f001f['startColumn'];_0x103dc8<=_0x1f001f[_0x285722(0x24e)];_0x103dc8++){let _0x260aa7=_0x56bce4[_0x285722(0x264)](_0x103dc8);_0x260aa7||(_0x260aa7=[],_0x56bce4['set'](_0x103dc8,_0x260aa7)),_0x260aa7[_0x285722(0x2a1)]({'startRow':_0x1f001f['startRow'],'endRow':_0x1f001f[_0x285722(0x2c1)],'ruleId':_0x433b27});}});});const _0x4e06f7=new Map();_0x56bce4[_0x10eacd(0x262)]((_0x5c0110,_0x1de92e)=>{const _0x4455e9=_0x10eacd,_0x3d8bfc=new IntervalTree();_0x5c0110[_0x4455e9(0x262)](_0x17d082=>{const _0x4a392b=_0x4455e9;_0x3d8bfc[_0x4a392b(0x117)]([_0x17d082[_0x4a392b(0x19c)],_0x17d082['endRow']],_0x17d082[_0x4a392b(0x20f)]);}),_0x4e06f7[_0x4455e9(0x15c)](_0x1de92e,_0x3d8bfc);}),this[_0x10eacd(0x2eb)]=_0x4e06f7,this['_dirty']=!0x1;},_0x253cb6(0x2dd))),__publicField(this,_0x253cb6(0xf7),core[_0x253cb6(0xfd)](this[_0x253cb6(0x2dd)],0x0)),(this[_0x253cb6(0x12e)]=_0x140e92,this[_0x253cb6(0x22f)]=_0x18c9b3,this[_0x253cb6(0x289)]=_0x184790,this[_0x253cb6(0x26f)]=_0x3db066,this[_0x253cb6(0x213)]=_0x28a4c8,this['_buildTree']());}get['_worksheet'](){const _0x363018=_0x426d7e;var _0x451df9;return(_0x451df9=this[_0x363018(0x289)][_0x363018(0x2af)](this[_0x363018(0x12e)],core[_0x363018(0x2c7)][_0x363018(0x2a6)]))==null?void 0x0:_0x451df9['getSheetBySheetId'](this[_0x363018(0x22f)]);}[_0x426d7e(0x1f8)](_0x328520){const _0x2bd42b=_0x426d7e;if(!this[_0x2bd42b(0x272)])return;const _0xe69ffb=_0x328520[_0x2bd42b(0x17b)],_0x3902cb=_0x328520['ranges']['map'](_0x3ac3fc=>core[_0x2bd42b(0x227)][_0x2bd42b(0x2bc)](_0x3ac3fc,this[_0x2bd42b(0x272)]));this[_0x2bd42b(0x213)]['forEach']((_0x3b70bf,_0x24e1d3)=>{const _0x139115=_0x2bd42b,_0x2b807f=core[_0x139115(0x253)][_0x139115(0x14d)](_0x3b70bf,_0x3902cb);_0x2b807f[_0x139115(0x1f9)]===0x0?this[_0x139115(0x213)][_0x139115(0x296)](_0x24e1d3):this[_0x139115(0x213)]['set'](_0x24e1d3,_0x2b807f);}),this[_0x2bd42b(0x292)]=!0x0,this['_map'][_0x2bd42b(0x15c)](_0xe69ffb,_0x3902cb),this['_debonceBuildTree']();}[_0x426d7e(0x2f4)](_0x3ce260){const _0x14a7a8=_0x426d7e;if(!this['_worksheet'])return;const _0x580863=_0x3ce260['map'](_0x5b7372=>core[_0x14a7a8(0x227)]['transformRange'](_0x5b7372,this[_0x14a7a8(0x272)]));this['_map'][_0x14a7a8(0x262)]((_0x11dfdf,_0x13b4fd)=>{const _0x17bf03=_0x14a7a8,_0x3c01dd=core[_0x17bf03(0x253)][_0x17bf03(0x14d)](_0x11dfdf,_0x580863);_0x3c01dd['length']===0x0?this[_0x17bf03(0x213)][_0x17bf03(0x296)](_0x13b4fd):this[_0x17bf03(0x213)][_0x17bf03(0x15c)](_0x13b4fd,_0x3c01dd);}),this[_0x14a7a8(0x292)]=!0x0,this[_0x14a7a8(0xf7)]();}[_0x426d7e(0x15b)](_0x3aedbd){const _0x2a7194=_0x426d7e;this[_0x2a7194(0x213)][_0x2a7194(0x296)](_0x3aedbd['uid']),this['_dirty']=!0x0,this[_0x2a7194(0xf7)]();}[_0x426d7e(0x186)](_0x55d90e,_0x268fd2){const _0xcc9b7e=_0x426d7e;if(!this[_0xcc9b7e(0x272)])return;this[_0xcc9b7e(0x213)][_0xcc9b7e(0x296)](_0x55d90e);const _0x45a7ee=_0x268fd2[_0xcc9b7e(0xd7)](_0xdb4c19=>core[_0xcc9b7e(0x227)][_0xcc9b7e(0x2bc)](_0xdb4c19,this[_0xcc9b7e(0x272)]));this[_0xcc9b7e(0x213)]['forEach']((_0x29b421,_0x24129e)=>{const _0x775274=_0xcc9b7e,_0x574906=core['Rectangle'][_0x775274(0x14d)](_0x29b421,_0x45a7ee);_0x574906[_0x775274(0x1f9)]===0x0?this[_0x775274(0x213)]['delete'](_0x24129e):this['_map'][_0x775274(0x15c)](_0x24129e,_0x574906);}),this[_0xcc9b7e(0x213)][_0xcc9b7e(0x15c)](_0x55d90e,_0x45a7ee),this[_0xcc9b7e(0x292)]=!0x0,this[_0xcc9b7e(0xf7)]();}[_0x426d7e(0x2b0)](_0x36e7ac){const _0x5b1029=_0x426d7e;_0x36e7ac[_0x5b1029(0x262)](({id:_0x25bdb7,ranges:_0x4e89df})=>{const _0x427eb2=_0x5b1029;if(!_0x4e89df[_0x427eb2(0x1f9)])return;let _0x58c14a=this[_0x427eb2(0x213)][_0x427eb2(0x264)](_0x25bdb7);_0x58c14a?(this['_map']['set'](_0x25bdb7,core[_0x427eb2(0x253)][_0x427eb2(0x157)]([..._0x58c14a,..._0x4e89df])),_0x58c14a=this[_0x427eb2(0x213)][_0x427eb2(0x264)](_0x25bdb7)):(_0x58c14a=_0x4e89df,this['_map'][_0x427eb2(0x15c)](_0x25bdb7,_0x58c14a)),this[_0x427eb2(0x213)]['forEach']((_0xa81d72,_0x4b4e92)=>{const _0x5a0971=_0x427eb2;if(_0x4b4e92===_0x25bdb7)return;const _0x166079=core['Rectangle'][_0x5a0971(0x14d)](_0xa81d72,_0x4e89df);_0x166079[_0x5a0971(0x1f9)]===0x0?this[_0x5a0971(0x213)][_0x5a0971(0x296)](_0x4b4e92):this[_0x5a0971(0x213)]['set'](_0x4b4e92,_0x166079);});}),this['_dirty']=!0x0,this[_0x5b1029(0xf7)]();}['diff'](_0x142d17){const _0x51b025=_0x426d7e,_0x170930=[];let _0x51b103=0x0;return _0x142d17[_0x51b025(0x262)]((_0x214099,_0x34f99a)=>{const _0x552163=_0x51b025;var _0xf35ac6;const _0xe07050=(_0xf35ac6=this[_0x552163(0x213)]['get'](_0x214099[_0x552163(0x17b)]))!=null?_0xf35ac6:[],_0x554f31=_0x214099[_0x552163(0xdc)];_0xe07050['length']!==0x0&&(_0xe07050[_0x552163(0x1f9)]!==_0x554f31['length']||_0xe07050[_0x552163(0x11b)]((_0x3e6e91,_0x2b4e99)=>!core[_0x552163(0x253)][_0x552163(0x2e8)](_0x3e6e91,_0x554f31[_0x2b4e99])))&&_0x170930['push']({'type':_0x552163(0x2f5),'ruleId':_0x214099[_0x552163(0x17b)],'oldRanges':_0x554f31,'newRanges':_0xe07050}),_0xe07050[_0x552163(0x1f9)]===0x0&&(_0x170930[_0x552163(0x2a1)]({'type':'delete','rule':_0x214099,'index':_0x34f99a-_0x51b103}),_0x51b103++);}),_0x170930;}[_0x426d7e(0xde)](_0x310770,_0x45360a){const _0x48b19e=_0x426d7e,_0x5c96b5=[];let _0x140024=0x0;return _0x310770['forEach']((_0x4e88cb,_0x40ca25)=>{const _0x5c7f36=_0x3883;var _0x188471;const _0x5582a9=(_0x188471=this[_0x5c7f36(0x213)][_0x5c7f36(0x264)](_0x4e88cb[_0x5c7f36(0x17b)]))!=null?_0x188471:[],_0x199aef=_0x4e88cb['ranges'];_0x5582a9['length']!==0x0&&(_0x5582a9[_0x5c7f36(0x1f9)]!==_0x199aef[_0x5c7f36(0x1f9)]||_0x5582a9[_0x5c7f36(0x11b)]((_0x3b03fa,_0x2f0d34)=>!core['Rectangle']['equals'](_0x3b03fa,_0x199aef[_0x2f0d34])))&&_0x5c96b5[_0x5c7f36(0x2a1)]({'type':_0x5c7f36(0x2f5),'ruleId':_0x4e88cb[_0x5c7f36(0x17b)],'oldRanges':_0x199aef,'newRanges':_0x5582a9}),_0x5582a9[_0x5c7f36(0x1f9)]===0x0&&(_0x5c96b5['push']({'type':_0x5c7f36(0x296),'rule':_0x4e88cb,'index':_0x40ca25-_0x140024}),_0x140024++);}),Array['from'](_0x45360a)[_0x48b19e(0x262)](_0x240897=>{const _0x2e3b6b=_0x48b19e;var _0x296d6e;const _0x393dda=(_0x296d6e=this[_0x2e3b6b(0x213)][_0x2e3b6b(0x264)](_0x240897['uid']))!=null?_0x296d6e:[];_0x5c96b5[_0x2e3b6b(0x2a1)]({'type':_0x2e3b6b(0x235),'rule':{..._0x240897,'ranges':_0x393dda}});}),_0x5c96b5;}[_0x426d7e(0x245)](){const _0x2ff2e3=_0x426d7e;return new _RuleMatrix(new Map(core['Tools'][_0x2ff2e3(0x1e1)](Array[_0x2ff2e3(0x116)](this[_0x2ff2e3(0x213)]['entries']()))),this[_0x2ff2e3(0x12e)],this['_subUnitId'],this[_0x2ff2e3(0x289)],!0x0);}['getValue'](_0x19c6ed,_0x23b1a7){const _0x3187d7=_0x426d7e;this[_0x3187d7(0x292)]&&this[_0x3187d7(0x2dd)]();const _0x2fde49=this[_0x3187d7(0x2eb)]['get'](_0x23b1a7);if(!_0x2fde49)return;const _0x3950df=_0x2fde49[_0x3187d7(0xd1)]([_0x19c6ed,_0x19c6ed]);return _0x3950df[_0x3187d7(0x1f9)]>0x0?_0x3950df[0x0]:void 0x0;}};__name(_RuleMatrix,_0x426d7e(0x1ff));let RuleMatrix=_RuleMatrix;var __defProp$6=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$6=Object[_0x426d7e(0x2cc)],__decorateClass$6=__name((_0x530a7c,_0x37debe,_0xcb0314,_0xa6cf68)=>{const _0x2297c3=_0x426d7e;for(var _0x4adee1=_0xa6cf68>0x1?void 0x0:_0xa6cf68?__getOwnPropDesc$6(_0x37debe,_0xcb0314):_0x37debe,_0x48baf0=_0x530a7c[_0x2297c3(0x1f9)]-0x1,_0x1abdbb;_0x48baf0>=0x0;_0x48baf0--)(_0x1abdbb=_0x530a7c[_0x48baf0])&&(_0x4adee1=(_0xa6cf68?_0x1abdbb(_0x37debe,_0xcb0314,_0x4adee1):_0x1abdbb(_0x4adee1))||_0x4adee1);return _0xa6cf68&&_0x4adee1&&__defProp$6(_0x37debe,_0xcb0314,_0x4adee1),_0x4adee1;},_0x426d7e(0xf8)),__decorateParam$6=__name((_0xe07346,_0x5c5221)=>(_0x2b1cfe,_0xe43ca5)=>_0x5c5221(_0x2b1cfe,_0xe43ca5,_0xe07346),_0x426d7e(0x27e)),_a4;exports[_0x426d7e(0x173)]=(_a4=class extends core[_0x426d7e(0x20c)]{constructor(_0x50e946,_0x5263ac,_0x31d367,_0xe866ee,_0x1998d7,_0x3dfd76,_0x3a480d){const _0x5f479b=_0x426d7e;super(),__publicField(this,_0x5f479b(0x177),new Map()),__publicField(this,_0x5f479b(0x1b2),new rxjs['Subject']()),__publicField(this,_0x5f479b(0x1a5),new rxjs[(_0x5f479b(0x1d4))]()),__publicField(this,'ruleChange$',this['_ruleChange$'][_0x5f479b(0x21f)]()),__publicField(this,_0x5f479b(0x2d3),this[_0x5f479b(0x1b2)][_0x5f479b(0x21f)]()),(this[_0x5f479b(0x1c9)]=_0x50e946,this['_univerInstanceService']=_0x5263ac,this[_0x5f479b(0x211)]=_0x31d367,this[_0x5f479b(0x2ab)]=_0xe866ee,this[_0x5f479b(0x1cf)]=_0x1998d7,this['_dataValidationCustomFormulaService']=_0x3dfd76,this['_commandService']=_0x3a480d,this[_0x5f479b(0x1cb)](),this[_0x5f479b(0xc4)](()=>{const _0x535395=_0x5f479b;this[_0x535395(0x1a5)][_0x535395(0x294)](),this[_0x535395(0x1b2)][_0x535395(0x294)]();}),this[_0x5f479b(0x11e)]());}['_initUniverInstanceListener'](){const _0x50c935=_0x426d7e;this[_0x50c935(0xc4)](this[_0x50c935(0x289)]['unitDisposed$']['subscribe'](_0x280eb7=>{const _0x57a179=_0x50c935;this[_0x57a179(0x177)]['delete'](_0x280eb7[_0x57a179(0x1e2)]());})),this[_0x50c935(0xc4)](this['_commandService'][_0x50c935(0x267)](_0x52c529=>{const _0x19242e=_0x50c935;if(_0x52c529['id']===sheets[_0x19242e(0xeb)]['id']){const {unitId:_0x1e51d0,subUnitId:_0x59d388}=_0x52c529[_0x19242e(0x1a4)],_0x4753ae=this['_ruleMatrixMap']['get'](_0x1e51d0);_0x4753ae&&_0x4753ae[_0x19242e(0x296)](_0x59d388);}}));}[_0x426d7e(0x1cb)](){const _0xb09f9f=_0x426d7e,_0x40b5cf=this[_0xb09f9f(0x1c9)]['getAll']();for(const [_0x413052,_0x5407b7]of _0x40b5cf)for(const [_0x4d8215,_0x21197f]of _0x5407b7)for(const _0x3ad50c of _0x21197f)this[_0xb09f9f(0x1a5)][_0xb09f9f(0x123)]({'type':_0xb09f9f(0x235),'unitId':_0x413052,'subUnitId':_0x4d8215,'rule':_0x3ad50c,'source':_0xb09f9f(0x2a0)}),this[_0xb09f9f(0xf3)](_0x413052,_0x4d8215,_0x3ad50c);this[_0xb09f9f(0xc4)](this['_dataValidationModel'][_0xb09f9f(0xd3)]['subscribe'](_0x19c536=>{const _0x1374bc=_0xb09f9f;switch(this[_0x1374bc(0x1a5)][_0x1374bc(0x123)](_0x19c536),_0x19c536[_0x1374bc(0x1e6)]){case _0x1374bc(0x235):this[_0x1374bc(0xf3)](_0x19c536[_0x1374bc(0x16d)],_0x19c536[_0x1374bc(0x15f)],_0x19c536[_0x1374bc(0x293)]);break;case _0x1374bc(0x2f5):this[_0x1374bc(0x145)](_0x19c536[_0x1374bc(0x16d)],_0x19c536[_0x1374bc(0x15f)],_0x19c536[_0x1374bc(0x293)][_0x1374bc(0x17b)],_0x19c536[_0x1374bc(0x2d6)],_0x19c536[_0x1374bc(0x15a)]);break;case _0x1374bc(0x11a):this[_0x1374bc(0xc2)](_0x19c536[_0x1374bc(0x16d)],_0x19c536[_0x1374bc(0x15f)],_0x19c536[_0x1374bc(0x293)]);break;}}));}['_ensureRuleMatrix'](_0x567f9b,_0x3bc15c){const _0x4b79a3=_0x426d7e;let _0x543cf8=this[_0x4b79a3(0x177)][_0x4b79a3(0x264)](_0x567f9b);_0x543cf8||(_0x543cf8=new Map(),this[_0x4b79a3(0x177)][_0x4b79a3(0x15c)](_0x567f9b,_0x543cf8));let _0x4daccf=_0x543cf8['get'](_0x3bc15c);return _0x4daccf||(_0x4daccf=new RuleMatrix(new Map(),_0x567f9b,_0x3bc15c,this[_0x4b79a3(0x289)]),_0x543cf8[_0x4b79a3(0x15c)](_0x3bc15c,_0x4daccf)),_0x4daccf;}['_addRuleSideEffect'](_0x27d819,_0xe108ac,_0x42679e){const _0x2a6f77=_0x426d7e;this[_0x2a6f77(0x285)](_0x27d819,_0xe108ac)['addRule'](_0x42679e),this[_0x2a6f77(0x2ab)][_0x2a6f77(0x1f8)](_0x27d819,_0xe108ac,_0x42679e),this[_0x2a6f77(0x1cf)]['addRule'](_0x27d819,_0xe108ac,_0x42679e[_0x2a6f77(0x17b)],_0x42679e['formula1'],_0x42679e['formula2']),this[_0x2a6f77(0x1fe)]['addRule'](_0x27d819,_0xe108ac,_0x42679e);}[_0x426d7e(0xf3)](_0x20aa1c,_0x385484,_0x560a06){const _0x2bc5b9=_0x426d7e;(Array[_0x2bc5b9(0x2b4)](_0x560a06)?_0x560a06:[_0x560a06])['forEach'](_0x467e97=>{const _0x2eb271=_0x2bc5b9;this[_0x2eb271(0x1c0)](_0x20aa1c,_0x385484,_0x467e97);});}[_0x426d7e(0x145)](_0x27aa95,_0x5b0ba1,_0x415577,_0x18bd93,_0xce3e60){const _0x344bd1=_0x426d7e,_0x32eb5e=this[_0x344bd1(0x285)](_0x27aa95,_0x5b0ba1);_0xce3e60[_0x344bd1(0x1e6)]===dataValidation['UpdateRuleType']['RANGE']?(_0x32eb5e[_0x344bd1(0x186)](_0x415577,_0xce3e60[_0x344bd1(0x139)]),this[_0x344bd1(0x2ab)]['updateRuleRanges'](_0x27aa95,_0x5b0ba1,_0x415577,_0xce3e60[_0x344bd1(0x139)],_0x18bd93[_0x344bd1(0xdc)]),this[_0x344bd1(0x1fe)]['updateRuleRanges'](_0x27aa95,_0x5b0ba1,_0x415577,_0x18bd93[_0x344bd1(0xdc)],_0xce3e60[_0x344bd1(0x139)])):_0xce3e60[_0x344bd1(0x1e6)]===dataValidation['UpdateRuleType']['SETTING']&&(this[_0x344bd1(0x2ab)]['markRangeDirty'](_0x27aa95,_0x5b0ba1,_0x18bd93[_0x344bd1(0xdc)]),this[_0x344bd1(0x1cf)][_0x344bd1(0x228)](_0x27aa95,_0x5b0ba1,_0x415577,_0xce3e60[_0x344bd1(0x139)]['formula1'],_0xce3e60[_0x344bd1(0x139)][_0x344bd1(0x1fc)]),this[_0x344bd1(0x1fe)]['updateRuleFormula'](_0x27aa95,_0x5b0ba1,_0x415577,_0x18bd93[_0x344bd1(0xdc)],_0xce3e60[_0x344bd1(0x139)][_0x344bd1(0x1b1)]));}['_removeRule'](_0x36e8b3,_0x15826c,_0x12f60e){this['_ensureRuleMatrix'](_0x36e8b3,_0x15826c)['removeRule'](_0x12f60e),this['_dataValidationCacheService']['removeRule'](_0x36e8b3,_0x15826c,_0x12f60e);}['getValidator'](_0x230f6f){const _0x5be1fd=_0x426d7e;return this['_dataValidatorRegistryService'][_0x5be1fd(0x125)](_0x230f6f);}['getRuleIdByLocation'](_0x29a8c7,_0x5de984,_0x11ec1c,_0x123c7f){const _0x5d84d8=_0x426d7e;return this[_0x5d84d8(0x285)](_0x29a8c7,_0x5de984)[_0x5d84d8(0x17c)](_0x11ec1c,_0x123c7f);}[_0x426d7e(0x1af)](_0x1c25da,_0x112405,_0x15397e,_0x47d9df){const _0x4b2f86=_0x426d7e,_0xdc56a1=this[_0x4b2f86(0x212)](_0x1c25da,_0x112405,_0x15397e,_0x47d9df);if(_0xdc56a1)return this[_0x4b2f86(0x1c9)][_0x4b2f86(0x22a)](_0x1c25da,_0x112405,_0xdc56a1);}[_0x426d7e(0x2ac)](_0x31e43e,_0x184db4,_0x29a3da,_0x227ed2){const _0x337b18=_0x426d7e,{col:_0x284fac,row:_0x20a66c,unitId:_0x1d425f,subUnitId:_0x5e6f67,worksheet:_0x5524b5}=_0x29a3da,_0x4b3b02=_0x184db4[_0x337b18(0x17b)],_0x22e036=__name((_0x1ded41,_0x557596)=>{const _0x27e9ca=_0x337b18;_0x227ed2&&_0x227ed2(_0x1ded41,_0x557596),_0x557596&&this['_validStatusChange$'][_0x27e9ca(0x123)]({'unitId':_0x1d425f,'subUnitId':_0x5e6f67,'ruleId':_0x184db4[_0x27e9ca(0x17b)],'status':_0x1ded41});},'onCompete'),_0x48f1c8=this[_0x337b18(0x29d)](_0x184db4[_0x337b18(0x1e6)]),_0x508bd0=_0x5524b5['getCellRaw'](_0x20a66c,_0x284fac),_0x471754=getCellValueOrigin(_0x508bd0),_0x4549b1=getCellValueOrigin(_0x31e43e);if(_0x48f1c8){const _0x33169f=this[_0x337b18(0x2ab)][_0x337b18(0x2fc)](_0x1d425f,_0x5e6f67),_0x54b79c=_0x33169f[_0x337b18(0x17c)](_0x20a66c,_0x284fac);return!_0x54b79c||_0x54b79c['value']!==_0x471754||_0x54b79c[_0x337b18(0x2b7)]!==_0x4549b1||_0x54b79c[_0x337b18(0x20f)]!==_0x4b3b02?(_0x33169f[_0x337b18(0x1a7)](_0x20a66c,_0x284fac,{'value':_0x471754,'interceptValue':_0x4549b1,'status':core[_0x337b18(0x19a)][_0x337b18(0x205)],'ruleId':_0x4b3b02}),_0x48f1c8[_0x337b18(0x2ac)]({'value':_0x471754,'unitId':_0x1d425f,'subUnitId':_0x5e6f67,'row':_0x20a66c,'column':_0x284fac,'worksheet':_0x29a3da[_0x337b18(0x174)],'workbook':_0x29a3da[_0x337b18(0x301)],'interceptValue':getCellValueOrigin(_0x31e43e),'t':_0x508bd0==null?void 0x0:_0x508bd0['t']},_0x184db4)[_0x337b18(0x13b)](_0x1cf760=>{const _0x24cb73=_0x337b18,_0x3aa942=_0x1cf760?core[_0x24cb73(0x19a)][_0x24cb73(0x114)]:core[_0x24cb73(0x19a)][_0x24cb73(0xfa)];_0x33169f[_0x24cb73(0x1a7)](_0x20a66c,_0x284fac,{'value':_0x471754,'status':_0x3aa942,'ruleId':_0x4b3b02,'interceptValue':_0x4549b1}),_0x22e036(_0x3aa942,!0x0);}),core[_0x337b18(0x19a)][_0x337b18(0x205)]):(_0x22e036(_0x54b79c[_0x337b18(0x1fb)],!0x1),_0x54b79c[_0x337b18(0x1fb)]);}else return _0x22e036(core['DataValidationStatus'][_0x337b18(0x114)],!0x1),core['DataValidationStatus'][_0x337b18(0x114)];}[_0x426d7e(0x180)](_0x3fbf9e,_0xb5ebc4,_0x1632a9){const _0x313000=_0x426d7e,_0xcbe955=this[_0x313000(0x1c9)][_0x313000(0x22a)](_0x3fbf9e,_0xb5ebc4,_0x1632a9);if(!_0xcbe955)return'';const _0x5e48a9=this['_dataValidatorRegistryService'][_0x313000(0x125)](_0xcbe955[_0x313000(0x1e6)]);return _0xcbe955[_0x313000(0x28e)]?_0xcbe955[_0x313000(0x28e)]:_0x5e48a9?_0x5e48a9['getRuleFinalError'](_0xcbe955):'';}[_0x426d7e(0x203)](_0x2e9ca7,_0x43f27d){const _0x38c4c4=_0x426d7e;return this[_0x38c4c4(0x285)](_0x2e9ca7,_0x43f27d);}['getRuleById'](_0x11a639,_0x462265,_0xd87b0){const _0xbb1f82=_0x426d7e;return this[_0xbb1f82(0x1c9)]['getRuleById'](_0x11a639,_0x462265,_0xd87b0);}[_0x426d7e(0x1a0)](_0x46e136,_0x2d7ec8,_0x277ce4){const _0x321ecf=_0x426d7e;return this[_0x321ecf(0x1c9)][_0x321ecf(0x1a0)](_0x46e136,_0x2d7ec8,_0x277ce4);}['getRules'](_0x158426,_0x1ef692){const _0x47350b=_0x426d7e;return[...this[_0x47350b(0x1c9)][_0x47350b(0x2b9)](_0x158426,_0x1ef692)];}['getUnitRules'](_0x4510a0){const _0x5695de=_0x426d7e;return this[_0x5695de(0x1c9)][_0x5695de(0x29f)](_0x4510a0);}['deleteUnitRules'](_0x217499){const _0x54702a=_0x426d7e;return this[_0x54702a(0x1c9)]['deleteUnitRules'](_0x217499);}[_0x426d7e(0x2f7)](_0x57119a){const _0x35cc48=_0x426d7e;return this[_0x35cc48(0x1c9)]['getSubUnitIds'](_0x57119a);}[_0x426d7e(0xdf)](){const _0x965be3=_0x426d7e;return this[_0x965be3(0x1c9)][_0x965be3(0xdf)]();}},__name(_a4,_0x426d7e(0x173)),_a4),exports[_0x426d7e(0x173)]=__decorateClass$6([__decorateParam$6(0x0,core['Inject'](dataValidation[_0x426d7e(0x11f)])),__decorateParam$6(0x1,core[_0x426d7e(0x1e0)]),__decorateParam$6(0x2,core[_0x426d7e(0x147)](dataValidation[_0x426d7e(0x1b5)])),__decorateParam$6(0x3,core[_0x426d7e(0x147)](DataValidationCacheService)),__decorateParam$6(0x4,core[_0x426d7e(0x147)](exports['DataValidationFormulaService'])),__decorateParam$6(0x5,core[_0x426d7e(0x147)](exports[_0x426d7e(0x306)])),__decorateParam$6(0x6,core[_0x426d7e(0x224)])],exports[_0x426d7e(0x173)]);function getFormulaResult(_0x233c11){var _0x49f32e,_0x191bb;return(_0x191bb=(_0x49f32e=_0x233c11==null?void 0x0:_0x233c11[0x0])==null?void 0x0:_0x49f32e[0x0])==null?void 0x0:_0x191bb['v'];}__name(getFormulaResult,_0x426d7e(0x1ed));function getFormulaCellData(_0x417d2e){var _0x4a2d27;return(_0x4a2d27=_0x417d2e==null?void 0x0:_0x417d2e[0x0])==null?void 0x0:_0x4a2d27[0x0];}__name(getFormulaCellData,_0x426d7e(0x1ba));const CHECKBOX_FORMULA_1=0x1,CHECKBOX_FORMULA_2=0x0;function getFailMessage(_0x26093a,_0x53f476){const _0x464d93=_0x426d7e;return core[_0x464d93(0x188)][_0x464d93(0x1da)](_0x26093a)?_0x53f476['t']('dataValidation.validFail.value'):core[_0x464d93(0x1ae)](_0x26093a)?_0x53f476['t'](_0x464d93(0x120)):'';}__name(getFailMessage,'getFailMessage');const transformCheckboxValue=__name(_0x3d457d=>core['Tools']['isDefine'](_0x3d457d)&&String(_0x3d457d)[_0x426d7e(0x238)]()===_0x426d7e(0x162)?'1':String(_0x3d457d)[_0x426d7e(0x238)]()==='false'?'0':_0x3d457d,_0x426d7e(0x1c6)),_CheckboxValidator=class _CheckboxValidator extends dataValidation[_0x426d7e(0x181)]{constructor(){const _0x335fe8=_0x426d7e;super(...arguments),__publicField(this,'id',core[_0x335fe8(0x1b3)][_0x335fe8(0x229)]),__publicField(this,_0x335fe8(0x2df),'dataValidation.checkbox.title'),__publicField(this,_0x335fe8(0x2cd),[]),__publicField(this,_0x335fe8(0x1d0),[_0x335fe8(0x219)]),__publicField(this,'_formulaService',this[_0x335fe8(0x102)][_0x335fe8(0x264)](exports['DataValidationFormulaService'])),__publicField(this,_0x335fe8(0x25f),__name((_0x4d819c,_0x26bea8,_0x4c582f)=>{const _0x1063e1=_0x335fe8,{formula1:_0x2a741b,formula2:_0x395de9}=this['parseFormulaSync'](_0x4d819c,_0x4c582f[_0x1063e1(0x16d)],_0x4c582f[_0x1063e1(0x15f)]),_0x3ef70d=''+(_0x26bea8!=null?_0x26bea8:'');return!_0x3ef70d||_0x3ef70d===''+_0x2a741b||_0x3ef70d===''+_0x395de9;},'skipDefaultFontRender'));}[_0x426d7e(0x185)](_0x314caf,_0x541214,_0x4b7405){const _0x538b47=_0x426d7e,{formula1:_0xe487a1,formula2:_0x300b85}=_0x314caf,_0x35443e=_0xe487a1===_0x300b85;if(core['Tools'][_0x538b47(0x1da)](_0xe487a1)&&core[_0x538b47(0x188)]['isBlank'](_0x300b85))return{'success':!0x0};if(_0x35443e)return{'success':!0x1,'formula1':this['localeService']['t'](_0x538b47(0x271)),'formula2':this['localeService']['t'](_0x538b47(0x271))};const _0x7ebf62=getFailMessage(_0xe487a1,this['localeService']),_0x346659=getFailMessage(_0x300b85,this[_0x538b47(0x307)]);return{'success':!_0x7ebf62&&!_0x346659,'formula1':_0x7ebf62,'formula2':_0x346659};}async[_0x426d7e(0x2b5)](_0x3a8315,_0x59030d,_0xb68669){const _0x6c21e7=_0x426d7e;var _0x2eddae,_0x472a3b;const {formula1:formula1=CHECKBOX_FORMULA_1,formula2:formula2=CHECKBOX_FORMULA_2}=_0x3a8315,_0x4d365d=await this[_0x6c21e7(0x1d8)][_0x6c21e7(0x178)](_0x59030d,_0xb68669,_0x3a8315[_0x6c21e7(0x17b)]),_0x570965=core[_0x6c21e7(0x1ae)](formula1)?getFormulaResult((_0x2eddae=_0x4d365d==null?void 0x0:_0x4d365d[0x0])==null?void 0x0:_0x2eddae[_0x6c21e7(0x297)]):formula1,_0x4c1beb=core['isFormulaString'](formula2)?getFormulaResult((_0x472a3b=_0x4d365d==null?void 0x0:_0x4d365d[0x1])==null?void 0x0:_0x472a3b[_0x6c21e7(0x297)]):formula2;return{'formula1':transformCheckboxValue(_0x570965),'formula2':transformCheckboxValue(_0x4c1beb),'originFormula1':_0x570965,'originFormula2':_0x4c1beb};}['getExtraStyle'](_0x2d4104,_0x6ed846){const _0x498438=_0x426d7e;return{'tb':core[_0x498438(0x2f3)][_0x498438(0x146)]};}[_0x426d7e(0x194)](_0x3763f0,_0x3a4a39,_0x23d789){const _0x2127bc=_0x426d7e;var _0x413bac,_0x24a2fd;const {formula1:formula1=CHECKBOX_FORMULA_1,formula2:formula2=CHECKBOX_FORMULA_2}=_0x3763f0,_0x1cbc7a=this['_formulaService'][_0x2127bc(0x1ce)](_0x3a4a39,_0x23d789,_0x3763f0[_0x2127bc(0x17b)]),_0x44844a=core[_0x2127bc(0x1ae)](formula1)?getFormulaResult((_0x413bac=_0x1cbc7a==null?void 0x0:_0x1cbc7a[0x0])==null?void 0x0:_0x413bac[_0x2127bc(0x297)]):formula1,_0x51757e=core[_0x2127bc(0x1ae)](formula2)?getFormulaResult((_0x24a2fd=_0x1cbc7a==null?void 0x0:_0x1cbc7a[0x1])==null?void 0x0:_0x24a2fd[_0x2127bc(0x297)]):formula2;return{'formula1':transformCheckboxValue(_0x44844a),'formula2':transformCheckboxValue(_0x51757e),'originFormula1':_0x44844a,'originFormula2':_0x51757e};}async[_0x426d7e(0x27a)](_0xd11b6d,_0x3be295,_0x4319ec){const _0x27a848=_0x426d7e,{value:_0x1a1456,unitId:_0x44b33e,subUnitId:_0x43fa76}=_0xd11b6d,{formula1:_0x1144a6,formula2:_0x64740,originFormula1:_0x3aa18f,originFormula2:_0x2e24d4}=await this[_0x27a848(0x2b5)](_0x4319ec,_0x44b33e,_0x43fa76);return!core[_0x27a848(0x188)][_0x27a848(0x12b)](_0x1144a6)||!core[_0x27a848(0x188)][_0x27a848(0x12b)](_0x64740)?!0x0:core[_0x27a848(0x188)][_0x27a848(0x12b)](_0x1a1456)&&(String(_0x1a1456)===String(_0x1144a6)||String(_0x1a1456)===String(_0x64740)||String(_0x1a1456)===String(_0x3aa18f!=null?_0x3aa18f:'')||String(_0x1a1456)===String(_0x2e24d4!=null?_0x2e24d4:''));}['generateRuleErrorMessage'](_0x368736){const _0x50226e=_0x426d7e;return this[_0x50226e(0x307)]['t'](_0x50226e(0x1b9));}};__name(_CheckboxValidator,'CheckboxValidator');let CheckboxValidator=_CheckboxValidator;const DateOperatorNameMap={[core['DataValidationOperator'][_0x426d7e(0x288)]]:'dataValidation.date.operators.between',[core[_0x426d7e(0x14a)]['EQUAL']]:_0x426d7e(0x149),[core[_0x426d7e(0x14a)][_0x426d7e(0xea)]]:_0x426d7e(0x13f),[core[_0x426d7e(0x14a)][_0x426d7e(0x2ca)]]:'dataValidation.date.operators.greaterThanOrEqual',[core['DataValidationOperator'][_0x426d7e(0x29a)]]:'dataValidation.date.operators.lessThan',[core['DataValidationOperator'][_0x426d7e(0x2ee)]]:_0x426d7e(0xe9),[core[_0x426d7e(0x14a)][_0x426d7e(0x1f5)]]:_0x426d7e(0x2c8),[core[_0x426d7e(0x14a)][_0x426d7e(0xe0)]]:_0x426d7e(0x107)};core['DataValidationOperator'][_0x426d7e(0x288)]+'',core['DataValidationOperator']['EQUAL']+'',core[_0x426d7e(0x14a)][_0x426d7e(0xea)]+'',core['DataValidationOperator'][_0x426d7e(0x2ca)]+'',core[_0x426d7e(0x14a)]['LESS_THAN']+'',core[_0x426d7e(0x14a)][_0x426d7e(0x2ee)]+'',core['DataValidationOperator']['NOT_BETWEEN']+'',core[_0x426d7e(0x14a)][_0x426d7e(0xe0)]+'';const DateOperatorTitleMap={[core[_0x426d7e(0x14a)][_0x426d7e(0x288)]]:_0x426d7e(0x2a2),[core[_0x426d7e(0x14a)][_0x426d7e(0x27c)]]:_0x426d7e(0x25d),[core[_0x426d7e(0x14a)][_0x426d7e(0xea)]]:_0x426d7e(0x244),[core[_0x426d7e(0x14a)][_0x426d7e(0x2ca)]]:_0x426d7e(0x17d),[core[_0x426d7e(0x14a)][_0x426d7e(0x29a)]]:'dataValidation.date.ruleName.lessThan',[core[_0x426d7e(0x14a)]['LESS_THAN_OR_EQUAL']]:'dataValidation.date.ruleName.lessThanOrEqual',[core[_0x426d7e(0x14a)][_0x426d7e(0x1f5)]]:_0x426d7e(0x2c6),[core[_0x426d7e(0x14a)][_0x426d7e(0xe0)]]:_0x426d7e(0x2a8)},DateOperatorErrorTitleMap={[core[_0x426d7e(0x14a)][_0x426d7e(0x288)]]:_0x426d7e(0xed),[core[_0x426d7e(0x14a)][_0x426d7e(0x27c)]]:_0x426d7e(0x29e),[core[_0x426d7e(0x14a)]['GREATER_THAN']]:'dataValidation.date.errorMsg.greaterThan',[core[_0x426d7e(0x14a)][_0x426d7e(0x2ca)]]:_0x426d7e(0xda),[core['DataValidationOperator'][_0x426d7e(0x29a)]]:_0x426d7e(0xc3),[core[_0x426d7e(0x14a)][_0x426d7e(0x2ee)]]:_0x426d7e(0x14f),[core[_0x426d7e(0x14a)][_0x426d7e(0x1f5)]]:_0x426d7e(0x2d9),[core['DataValidationOperator']['NOT_EQUAL']]:_0x426d7e(0xe4)},TWO_FORMULA_OPERATOR_COUNT=[core[_0x426d7e(0x14a)][_0x426d7e(0x288)],core[_0x426d7e(0x14a)]['NOT_BETWEEN']],FORMULA1$1=_0x426d7e(0x2cf),FORMULA2$1=_0x426d7e(0x23a),transformDate2SerialNumber=__name(_0x537087=>{const _0x9d5e94=_0x426d7e;var _0x5eff1c,_0x1694cc;if(_0x537087==null||typeof _0x537087==_0x9d5e94(0x21b))return;if(typeof _0x537087=='number'||!Number[_0x9d5e94(0x1bb)](+_0x537087))return+_0x537087;const _0x3960c5=(_0x5eff1c=core[_0x9d5e94(0x258)][_0x9d5e94(0xec)](_0x537087))==null?void 0x0:_0x5eff1c['v'];return core[_0x9d5e94(0x188)][_0x9d5e94(0x12b)](_0x3960c5)?_0x3960c5:(_0x1694cc=core['numfmt']['parseDate'](dayjs(_0x537087)[_0x9d5e94(0x164)](_0x9d5e94(0x2e6))))==null?void 0x0:_0x1694cc['v'];},_0x426d7e(0x2e9)),_DateValidator=class _DateValidator extends dataValidation[_0x426d7e(0x181)]{constructor(){const _0x240da7=_0x426d7e;super(...arguments),__publicField(this,'id',core[_0x240da7(0x1b3)][_0x240da7(0x1e5)]),__publicField(this,_0x240da7(0x2df),_0x240da7(0x2ef)),__publicField(this,_0x240da7(0x2cd),[core[_0x240da7(0x14a)][_0x240da7(0x288)],core[_0x240da7(0x14a)][_0x240da7(0x27c)],core[_0x240da7(0x14a)]['GREATER_THAN'],core['DataValidationOperator'][_0x240da7(0x2ca)],core[_0x240da7(0x14a)]['LESS_THAN'],core['DataValidationOperator']['LESS_THAN_OR_EQUAL'],core[_0x240da7(0x14a)][_0x240da7(0x1f5)],core[_0x240da7(0x14a)][_0x240da7(0xe0)]]),__publicField(this,_0x240da7(0x1d0),[_0x240da7(0x219)]),__publicField(this,_0x240da7(0x1d8),this[_0x240da7(0x102)]['get'](exports[_0x240da7(0x20d)]));}async['parseFormula'](_0x7941bd,_0x5046a7,_0x1821d6){const _0x3b7f04=_0x426d7e;var _0xce60b,_0x2572d9;const _0x2da9ba=await this['_formulaService']['getRuleFormulaResult'](_0x5046a7,_0x1821d6,_0x7941bd['uid']),{formula1:_0x2f350e,formula2:_0x172977}=_0x7941bd;return{'formula1':transformDate2SerialNumber(core[_0x3b7f04(0x1ae)](_0x2f350e)?getFormulaResult((_0xce60b=_0x2da9ba==null?void 0x0:_0x2da9ba[0x0])==null?void 0x0:_0xce60b[_0x3b7f04(0x297)]):_0x2f350e),'formula2':transformDate2SerialNumber(core[_0x3b7f04(0x1ae)](_0x172977)?getFormulaResult((_0x2572d9=_0x2da9ba==null?void 0x0:_0x2da9ba[0x1])==null?void 0x0:_0x2572d9[_0x3b7f04(0x297)]):_0x172977)};}[_0x426d7e(0x194)](_0x587e39,_0x487e7b,_0x45f47f){const _0x9c6903=_0x426d7e;var _0x8ab2d1,_0x101f0c;const _0x32153e=this['_formulaService'][_0x9c6903(0x1ce)](_0x487e7b,_0x45f47f,_0x587e39[_0x9c6903(0x17b)]),{formula1:_0x4fd566,formula2:_0x40edf9}=_0x587e39;return{'formula1':transformDate2SerialNumber(core[_0x9c6903(0x1ae)](_0x4fd566)?getFormulaResult((_0x8ab2d1=_0x32153e==null?void 0x0:_0x32153e[0x0])==null?void 0x0:_0x8ab2d1[_0x9c6903(0x297)]):_0x4fd566),'formula2':transformDate2SerialNumber(core[_0x9c6903(0x1ae)](_0x40edf9)?getFormulaResult((_0x101f0c=_0x32153e==null?void 0x0:_0x32153e[0x1])==null?void 0x0:_0x101f0c['result']):_0x40edf9)};}async['isValidType'](_0x547081){const _0x211d3d=_0x426d7e,{interceptValue:_0x14e7f3,value:_0x5deab8}=_0x547081;return typeof _0x5deab8==_0x211d3d(0x237)&&typeof _0x14e7f3==_0x211d3d(0x202)?!0x0:typeof _0x14e7f3==_0x211d3d(0x202)?!!core['numfmt'][_0x211d3d(0xec)](_0x14e7f3):!0x1;}[_0x426d7e(0x2fa)](_0x1b001f){const _0x4aae14=_0x426d7e;return!core[_0x4aae14(0x188)][_0x4aae14(0x1da)](_0x1b001f)&&(core[_0x4aae14(0x1ae)](_0x1b001f)||!Number['isNaN'](+_0x1b001f)||!!(_0x1b001f&&core[_0x4aae14(0x258)][_0x4aae14(0xec)](_0x1b001f)));}[_0x426d7e(0x185)](_0x4a4c18,_0x4385a3,_0x346d5a){const _0x33e10c=_0x426d7e,_0x23f22f=_0x4a4c18[_0x33e10c(0x273)];if(!_0x23f22f)return{'success':!0x1};const _0x3e3c2a=this[_0x33e10c(0x2fa)](_0x4a4c18[_0x33e10c(0x1b1)]),_0x5c71f3=this[_0x33e10c(0x307)]['t'](_0x33e10c(0x2c0));if(TWO_FORMULA_OPERATOR_COUNT['includes'](_0x23f22f)){const _0xdf1c6c=this['_validatorSingleFormula'](_0x4a4c18[_0x33e10c(0x1fc)]);return{'success':_0x3e3c2a&&_0xdf1c6c,'formula1':_0x3e3c2a?void 0x0:_0x5c71f3,'formula2':_0xdf1c6c?void 0x0:_0x5c71f3};}return{'success':_0x3e3c2a,'formula1':_0x3e3c2a?void 0x0:_0x5c71f3};}[_0x426d7e(0x260)](_0x2b4f0d,_0x58e3ae,_0x2285a7){const _0x45901c=_0x426d7e,{formula1:_0x4a7ded,formula2:_0x1826bd,bizInfo:_0xafbceb}=_0x2b4f0d,_0x140f31=__name(_0x1bcb49=>{const _0x3fc7f4=_0x3883;var _0x48b85c;if(!_0x1bcb49)return _0x1bcb49;let _0x3faed3;if(!Number[_0x3fc7f4(0x1bb)](+_0x1bcb49))_0x3faed3=core[_0x3fc7f4(0x258)]['dateFromSerial'](+_0x1bcb49);else{const _0x6d5ec8=(_0x48b85c=core[_0x3fc7f4(0x258)][_0x3fc7f4(0xec)](_0x1bcb49))==null?void 0x0:_0x48b85c['v'];if(_0x6d5ec8==null)return'';_0x3faed3=core[_0x3fc7f4(0x258)][_0x3fc7f4(0x2ed)](_0x6d5ec8);}return dayjs(_0x3faed3[0x0]+'/'+_0x3faed3[0x1]+'/'+_0x3faed3[0x2]+'\x20'+_0x3faed3[0x3]+':'+_0x3faed3[0x4]+':'+_0x3faed3[0x5])[_0x3fc7f4(0x164)](_0xafbceb!=null&&_0xafbceb[_0x3fc7f4(0x189)]?_0x3fc7f4(0x2e6):_0x3fc7f4(0x208));},_0x45901c(0x222));return{'formula1':core[_0x45901c(0x1ae)](_0x4a7ded)?_0x4a7ded:_0x140f31(''+_0x4a7ded),'formula2':core[_0x45901c(0x1ae)](_0x1826bd)?_0x1826bd:_0x140f31(''+_0x1826bd)};}[_0x426d7e(0x13c)](_0x2394dc,_0x436a8a,_0x22cc88){const {value:_0xecea3}=_0x2394dc;return{..._0x2394dc,'value':transformDate2SerialNumber(_0xecea3)};}async['validatorIsEqual'](_0x28d047,_0x4f5e93,_0x358255){const _0x1ad238=_0x426d7e,{formula1:_0x3545ad}=_0x4f5e93,{value:_0x18afcf}=_0x28d047;return Number[_0x1ad238(0x1bb)](_0x3545ad)?!0x0:_0x18afcf===_0x3545ad;}async[_0x426d7e(0x10d)](_0xa70a5,_0x42517d,_0x5634bf){const _0x323ee2=_0x426d7e,{formula1:_0x5e6d1d}=_0x42517d;return Number[_0x323ee2(0x1bb)](_0x5e6d1d)?!0x0:_0xa70a5['value']!==_0x5e6d1d;}async[_0x426d7e(0x281)](_0x4d6e4e,_0x29b841,_0x409e6c){const _0x10ccd4=_0x426d7e,{formula1:_0x1c12cc,formula2:_0x258c0e}=_0x29b841;if(Number['isNaN'](_0x1c12cc)||Number[_0x10ccd4(0x1bb)](_0x258c0e))return!0x0;const _0x330869=Math[_0x10ccd4(0xe6)](_0x1c12cc,_0x258c0e),_0x451091=Math['max'](_0x1c12cc,_0x258c0e);return _0x4d6e4e[_0x10ccd4(0x1e3)]>=_0x330869&&_0x4d6e4e[_0x10ccd4(0x1e3)]<=_0x451091;}async[_0x426d7e(0x269)](_0x17acff,_0x488956,_0x32cc89){const _0x5f99c5=_0x426d7e,{formula1:_0x54365d,formula2:_0x16bc3d}=_0x488956;if(Number['isNaN'](_0x54365d)||Number[_0x5f99c5(0x1bb)](_0x16bc3d))return!0x0;const _0x18050a=Math[_0x5f99c5(0xe6)](_0x54365d,_0x16bc3d),_0x25fda3=Math[_0x5f99c5(0x2dc)](_0x54365d,_0x16bc3d);return _0x17acff[_0x5f99c5(0x1e3)]<_0x18050a||_0x17acff[_0x5f99c5(0x1e3)]>_0x25fda3;}async['validatorIsGreaterThan'](_0x30cb26,_0x102087,_0x2dbdc8){const _0x42468e=_0x426d7e,{formula1:_0x10927d}=_0x102087;return Number[_0x42468e(0x1bb)](_0x10927d)?!0x0:_0x30cb26[_0x42468e(0x1e3)]>_0x10927d;}async['validatorIsGreaterThanOrEqual'](_0xd43324,_0x212896,_0x44634b){const _0x59369d=_0x426d7e,{formula1:_0x415ca4}=_0x212896;return Number[_0x59369d(0x1bb)](_0x415ca4)?!0x0:_0xd43324[_0x59369d(0x1e3)]>=_0x415ca4;}async[_0x426d7e(0x2da)](_0x6f92b9,_0xcb6087,_0xdd2ed8){const _0x25e4d1=_0x426d7e,{formula1:_0x6c8921}=_0xcb6087;return Number['isNaN'](_0x6c8921)?!0x0:_0x6f92b9[_0x25e4d1(0x1e3)]<_0x6c8921;}async[_0x426d7e(0x21d)](_0x51edf6,_0x49b33a,_0x23a02a){const _0x46c487=_0x426d7e,{formula1:_0x143bc2}=_0x49b33a;return Number[_0x46c487(0x1bb)](_0x143bc2)?!0x0:_0x51edf6[_0x46c487(0x1e3)]<=_0x143bc2;}get[_0x426d7e(0x12f)](){const _0x241ded=_0x426d7e;return this[_0x241ded(0x2cd)][_0x241ded(0xd7)](_0x2b9e17=>this[_0x241ded(0x307)]['t'](DateOperatorNameMap[_0x2b9e17]));}[_0x426d7e(0x2b2)](_0x4c8311){const _0x34adaa=_0x426d7e;var _0x4790a8,_0x4948ec;if(!_0x4c8311[_0x34adaa(0x273)])return this[_0x34adaa(0x257)];const _0x577d81=this[_0x34adaa(0x307)]['t'](DateOperatorTitleMap[_0x4c8311[_0x34adaa(0x273)]])[_0x34adaa(0xf4)](FORMULA1$1,(_0x4790a8=_0x4c8311['formula1'])!=null?_0x4790a8:'')['replace'](FORMULA2$1,(_0x4948ec=_0x4c8311['formula2'])!=null?_0x4948ec:'');return this[_0x34adaa(0x257)]+'\x20'+_0x577d81;}[_0x426d7e(0xe5)](_0x4deee0){const _0xd46fea=_0x426d7e;var _0x23569a,_0x56909d;return _0x4deee0['operator']?''+this[_0xd46fea(0x307)]['t'](DateOperatorErrorTitleMap[_0x4deee0[_0xd46fea(0x273)]])[_0xd46fea(0xf4)](FORMULA1$1,(_0x23569a=_0x4deee0[_0xd46fea(0x1b1)])!=null?_0x23569a:'')[_0xd46fea(0xf4)](FORMULA2$1,(_0x56909d=_0x4deee0['formula2'])!=null?_0x56909d:''):this[_0xd46fea(0x257)];}};__name(_DateValidator,_0x426d7e(0x23b));let DateValidator=_DateValidator;function getCellValueNumber(_0x1d06ab){const _0x5ce6f1=_0x426d7e;let _0x1590e5=_0x1d06ab;return typeof _0x1d06ab=='string'?((_0x1d06ab[_0x5ce6f1(0x1d5)]('¥')||_0x1d06ab[_0x5ce6f1(0x1d5)]('$'))&&(_0x1590e5=_0x1d06ab[_0x5ce6f1(0x13a)](0x1)),+_0x1590e5):+_0x1d06ab;}__name(getCellValueNumber,_0x426d7e(0xd9));const _DecimalValidator=class _DecimalValidator extends dataValidation[_0x426d7e(0x181)]{constructor(){const _0x41b125=_0x426d7e;super(...arguments),__publicField(this,_0x41b125(0x1d8),this[_0x41b125(0x102)][_0x41b125(0x264)](exports[_0x41b125(0x20d)])),__publicField(this,'id',core[_0x41b125(0x1b3)]['DECIMAL']),__publicField(this,_0x41b125(0x2df),_0x41b125(0x24f)),__publicField(this,_0x41b125(0x2cd),[core[_0x41b125(0x14a)][_0x41b125(0x288)],core[_0x41b125(0x14a)]['EQUAL'],core[_0x41b125(0x14a)][_0x41b125(0xea)],core[_0x41b125(0x14a)][_0x41b125(0x2ca)],core[_0x41b125(0x14a)][_0x41b125(0x29a)],core[_0x41b125(0x14a)][_0x41b125(0x2ee)],core['DataValidationOperator'][_0x41b125(0x1f5)],core[_0x41b125(0x14a)][_0x41b125(0xe0)]]),__publicField(this,'scopes',['sheet']);}[_0x426d7e(0x136)](_0x1c462f){const _0x2ea45e=_0x426d7e;return!core[_0x2ea45e(0x188)]['isBlank'](_0x1c462f)&&(core[_0x2ea45e(0x1ae)](_0x1c462f)||!Number[_0x2ea45e(0x1bb)](+_0x1c462f));}async['isValidType'](_0x31af1a,_0x2903ef,_0x36a0a8){const _0x5238a4=_0x426d7e,{value:_0x580b59}=_0x31af1a;return!Number[_0x5238a4(0x1bb)](getCellValueNumber(_0x580b59));}[_0x426d7e(0x13c)](_0x10b09d,_0x4eee50,_0x1ad6aa){const {value:_0x358569}=_0x10b09d;return{..._0x10b09d,'value':getCellValueNumber(_0x358569)};}[_0x426d7e(0x1f1)](_0x6c76f3){return _0x6c76f3==null?Number['NaN']:+_0x6c76f3;}async['parseFormula'](_0x4393dd,_0x35c0d6,_0x1388c9){const _0x521111=_0x426d7e;var _0x1dde3a,_0xf7306e,_0x463c3f,_0xb973e4,_0x37984a,_0x3efa97,_0x479d44,_0x59008a;const _0x26b5ed=await this[_0x521111(0x1d8)][_0x521111(0x178)](_0x35c0d6,_0x1388c9,_0x4393dd['uid']),{formula1:_0x3344bb,formula2:_0x3cad18}=_0x4393dd;return{'formula1':this[_0x521111(0x1f1)](core[_0x521111(0x1ae)](_0x3344bb)?(_0xb973e4=(_0x463c3f=(_0xf7306e=(_0x1dde3a=_0x26b5ed==null?void 0x0:_0x26b5ed[0x0])==null?void 0x0:_0x1dde3a[_0x521111(0x297)])==null?void 0x0:_0xf7306e[0x0])==null?void 0x0:_0x463c3f[0x0])==null?void 0x0:_0xb973e4['v']:_0x3344bb),'formula2':this[_0x521111(0x1f1)](core[_0x521111(0x1ae)](_0x3cad18)?(_0x59008a=(_0x479d44=(_0x3efa97=(_0x37984a=_0x26b5ed==null?void 0x0:_0x26b5ed[0x1])==null?void 0x0:_0x37984a[_0x521111(0x297)])==null?void 0x0:_0x3efa97[0x0])==null?void 0x0:_0x479d44[0x0])==null?void 0x0:_0x59008a['v']:_0x3cad18)};}[_0x426d7e(0x185)](_0x409e5c,_0x45c18b,_0x4f0fc6){const _0x1e1a8c=_0x426d7e,_0x4e3d58=_0x409e5c[_0x1e1a8c(0x273)];if(!_0x4e3d58)return{'success':!0x1};const _0x332309=core[_0x1e1a8c(0x188)][_0x1e1a8c(0x12b)](_0x409e5c[_0x1e1a8c(0x1b1)])&&this[_0x1e1a8c(0x136)](_0x409e5c[_0x1e1a8c(0x1b1)]),_0x119b69=core[_0x1e1a8c(0x188)][_0x1e1a8c(0x12b)](_0x409e5c[_0x1e1a8c(0x1fc)])&&this[_0x1e1a8c(0x136)](_0x409e5c[_0x1e1a8c(0x1fc)]),_0x5225bc=TWO_FORMULA_OPERATOR_COUNT[_0x1e1a8c(0x240)](_0x4e3d58),_0x26e225=this[_0x1e1a8c(0x307)]['t'](_0x1e1a8c(0x27f));return _0x5225bc?{'success':_0x332309&&_0x119b69,'formula1':_0x332309?void 0x0:_0x26e225,'formula2':_0x119b69?void 0x0:_0x26e225}:{'success':_0x332309,'formula1':_0x332309?'':_0x26e225};}async[_0x426d7e(0x2cb)](_0x598ff3,_0x53fdfd,_0x44d38e){const _0x596b74=_0x426d7e,{formula1:_0x20cb96}=_0x53fdfd,{value:_0x12b601}=_0x598ff3;return Number[_0x596b74(0x1bb)](_0x20cb96)?!0x0:_0x12b601===_0x20cb96;}async['validatorIsNotEqual'](_0x3d14b7,_0x43a0ad,_0x45ab22){const _0x98ed4d=_0x426d7e,{formula1:_0x1c9009}=_0x43a0ad;return Number[_0x98ed4d(0x1bb)](_0x1c9009)?!0x0:_0x3d14b7['value']!==_0x1c9009;}async[_0x426d7e(0x281)](_0x552d6d,_0x416f42,_0x1833b8){const _0x5473f4=_0x426d7e,{formula1:_0x4ade7f,formula2:_0x45902a}=_0x416f42;if(Number[_0x5473f4(0x1bb)](_0x4ade7f)||Number[_0x5473f4(0x1bb)](_0x45902a))return!0x0;const _0x2f1752=Math[_0x5473f4(0xe6)](_0x4ade7f,_0x45902a),_0x37543f=Math['max'](_0x4ade7f,_0x45902a);return _0x552d6d[_0x5473f4(0x1e3)]>=_0x2f1752&&_0x552d6d[_0x5473f4(0x1e3)]<=_0x37543f;}async[_0x426d7e(0x269)](_0x2b94a4,_0x188e0b,_0xe81927){const _0x2f626a=_0x426d7e,{formula1:_0x4b320d,formula2:_0x184463}=_0x188e0b;if(Number[_0x2f626a(0x1bb)](_0x4b320d)||Number[_0x2f626a(0x1bb)](_0x184463))return!0x0;const _0x38f65f=Math[_0x2f626a(0xe6)](_0x4b320d,_0x184463),_0x5468f8=Math[_0x2f626a(0x2dc)](_0x4b320d,_0x184463);return _0x2b94a4[_0x2f626a(0x1e3)]<_0x38f65f||_0x2b94a4[_0x2f626a(0x1e3)]>_0x5468f8;}async['validatorIsGreaterThan'](_0x3679da,_0x2bdee7,_0x718103){const _0x286922=_0x426d7e,{formula1:_0x20ca87}=_0x2bdee7;return Number['isNaN'](_0x20ca87)?!0x0:_0x3679da[_0x286922(0x1e3)]>_0x20ca87;}async[_0x426d7e(0x2e4)](_0x4a4cae,_0x3a7afc,_0x59591c){const _0x2e9610=_0x426d7e,{formula1:_0x17fd04}=_0x3a7afc;return Number['isNaN'](_0x17fd04)?!0x0:_0x4a4cae[_0x2e9610(0x1e3)]>=_0x17fd04;}async['validatorIsLessThan'](_0x34d2d1,_0x444be1,_0x2aa55e){const _0x50ca68=_0x426d7e,{formula1:_0x1f5077}=_0x444be1;return Number['isNaN'](_0x1f5077)?!0x0:_0x34d2d1[_0x50ca68(0x1e3)]<_0x1f5077;}async[_0x426d7e(0x21d)](_0x5034b6,_0x1ed0fb,_0x4b1a0a){const _0x36df9e=_0x426d7e,{formula1:_0x3fbba9}=_0x1ed0fb;return Number[_0x36df9e(0x1bb)](_0x3fbba9)?!0x0:_0x5034b6[_0x36df9e(0x1e3)]<=_0x3fbba9;}};__name(_DecimalValidator,_0x426d7e(0x1bd));let DecimalValidator=_DecimalValidator;function serializeListOptions(_0x10f843){const _0x56ef6b=_0x426d7e;return _0x10f843[_0x56ef6b(0xf5)](Boolean)[_0x56ef6b(0x183)](',');}__name(serializeListOptions,_0x426d7e(0x16e));function deserializeListOptions(_0x173bd5){const _0x3f13bb=_0x426d7e;return _0x173bd5['split'](',')[_0x3f13bb(0xf5)](Boolean);}__name(deserializeListOptions,_0x426d7e(0x280));function getDataValidationCellValue(_0x197abc){const _0x217423=_0x426d7e,_0x30a47f=getCellValueOrigin(_0x197abc);return _0x30a47f==null?'':_0x30a47f[_0x217423(0x106)]();}__name(getDataValidationCellValue,_0x426d7e(0x29c));function getRuleFormulaResultSet(_0x71f8be){if(!_0x71f8be)return[];const _0x238616=new Set();return _0x71f8be['forEach'](_0x195116=>{const _0x57cf7d=_0x3883;_0x195116[_0x57cf7d(0x262)](_0x50f28e=>{const _0x5810fe=_0x57cf7d;var _0x2caf17,_0x5c6bd7;const _0x3bf0ab=getCellValueOrigin(_0x50f28e);if(_0x3bf0ab!=null){if(typeof _0x3bf0ab!=_0x5810fe(0x202)&&typeof(_0x50f28e==null?void 0x0:_0x50f28e['s'])==_0x5810fe(0x25b)&&((_0x5c6bd7=(_0x2caf17=_0x50f28e['s'])==null?void 0x0:_0x2caf17['n'])!=null&&_0x5c6bd7['pattern'])){_0x238616[_0x5810fe(0x235)](core[_0x5810fe(0x258)][_0x5810fe(0x164)](_0x50f28e['s']['n'][_0x5810fe(0x144)],_0x3bf0ab,{'throws':!0x1}));return;}_0x238616[_0x5810fe(0x235)](_0x3bf0ab['toString']());}});}),[..._0x238616];}__name(getRuleFormulaResultSet,_0x426d7e(0x1ec));const supportedFormula=['if',_0x426d7e(0x20b),'choose',_0x426d7e(0x1f2)];function isValidListFormula(_0x50062e,_0x146a2f){const _0x47dd73=_0x426d7e;if(!core['isFormulaString'](_0x50062e)||engineFormula[_0x47dd73(0x20a)](_0x50062e[_0x47dd73(0x13a)](0x1)))return!0x0;const _0x19a200=_0x146a2f[_0x47dd73(0x1a3)](_0x50062e);return _0x19a200&&_0x19a200['some'](_0x5ba3e7=>typeof _0x5ba3e7==_0x47dd73(0x25b)&&_0x5ba3e7[_0x47dd73(0xff)]===engineFormula[_0x47dd73(0x1b7)][_0x47dd73(0x24a)]&&supportedFormula[_0x47dd73(0x21a)](_0x5ba3e7[_0x47dd73(0x1f4)]['toLowerCase']())>-0x1);}__name(isValidListFormula,_0x426d7e(0x179));function isRuleIntersects(_0x572538,_0x5520cf){const _0x2cc709=_0x426d7e,{formula1:formula1='',ranges:_0x25986c}=_0x572538;if(engineFormula[_0x2cc709(0x20a)](formula1['slice'](0x1))){const _0x3dbf95=engineFormula[_0x2cc709(0x217)](formula1[_0x2cc709(0x13a)](0x1));if((!_0x3dbf95[_0x2cc709(0x284)]||_0x3dbf95[_0x2cc709(0x284)]===_0x5520cf)&&_0x25986c[_0x2cc709(0x11b)](_0x107bf1=>core['Rectangle'][_0x2cc709(0x2c3)](_0x107bf1,_0x3dbf95['range'])))return!0x0;}return!0x1;}__name(isRuleIntersects,_0x426d7e(0x1d2));const _ListValidator=class _ListValidator extends dataValidation['BaseDataValidator']{constructor(){const _0x15c8d9=_0x426d7e;super(...arguments),__publicField(this,_0x15c8d9(0x1db),this['injector'][_0x15c8d9(0x264)](exports[_0x15c8d9(0x20d)])),__publicField(this,_0x15c8d9(0x195),this[_0x15c8d9(0x102)]['get'](engineFormula[_0x15c8d9(0x172)])),__publicField(this,'_univerInstanceService',this[_0x15c8d9(0x102)][_0x15c8d9(0x264)](core[_0x15c8d9(0x1e0)])),__publicField(this,'id',core['DataValidationType']['LIST']),__publicField(this,_0x15c8d9(0x2df),'dataValidation.list.title'),__publicField(this,_0x15c8d9(0x2cd),[]),__publicField(this,_0x15c8d9(0x1d0),[_0x15c8d9(0x219)]),__publicField(this,'skipDefaultFontRender',__name(_0x5b9adc=>_0x5b9adc['renderMode']!==core['DataValidationRenderMode'][_0x15c8d9(0x255)],'skipDefaultFontRender'));}[_0x426d7e(0x185)](_0x54591a,_0x5a826d,_0x598905){const _0x28de7b=_0x426d7e;var _0x44591a,_0xd89fdc,_0x562180;const _0x3d445a=!core[_0x28de7b(0x188)]['isBlank'](_0x54591a['formula1']),_0x12e842=isValidListFormula((_0x44591a=_0x54591a[_0x28de7b(0x1b1)])!=null?_0x44591a:'',this[_0x28de7b(0x195)]),_0x2fc0ad=(_0x562180=(_0xd89fdc=this[_0x28de7b(0x289)][_0x28de7b(0x2af)](_0x5a826d,core[_0x28de7b(0x2c7)][_0x28de7b(0x2a6)]))==null?void 0x0:_0xd89fdc[_0x28de7b(0x1ad)](_0x598905))==null?void 0x0:_0x562180[_0x28de7b(0x166)](),_0x37f383=isRuleIntersects(_0x54591a,_0x2fc0ad!=null?_0x2fc0ad:'');return{'success':!!(_0x3d445a&&_0x12e842&&!_0x37f383),'formula1':_0x3d445a?_0x12e842?_0x37f383?this[_0x28de7b(0x307)]['t'](_0x28de7b(0x276)):void 0x0:this[_0x28de7b(0x307)]['t'](_0x28de7b(0x236)):this[_0x28de7b(0x307)]['t'](_0x28de7b(0x171))};}['getExtraStyle'](_0x55c8f4,_0x37a801,{style:_0x16947e}){const _0x116891=_0x426d7e;var _0x52223c;const _0xa0b05=(_0x52223c=_0x16947e['tb']!==core[_0x116891(0x2f3)][_0x116891(0x161)]?_0x16947e['tb']:core[_0x116891(0x2f3)][_0x116891(0x146)])!=null?_0x52223c:core[_0x116891(0x2f3)]['WRAP'];if(_0x55c8f4[_0x116891(0x1e6)]===core['DataValidationType'][_0x116891(0x20e)]&&(_0x55c8f4[_0x116891(0x230)]===core[_0x116891(0x2fd)][_0x116891(0xc1)]||_0x55c8f4['renderMode']===core[_0x116891(0x2fd)][_0x116891(0x255)])){const _0x42f4e8=this[_0x116891(0x23d)](_0x55c8f4),_0x13c318=''+(_0x37a801!=null?_0x37a801:''),_0x1aefad=_0x42f4e8[_0x13c318];if(_0x1aefad)return{'bg':{'rgb':_0x1aefad},'tb':_0xa0b05};}return{'tb':_0xa0b05};}[_0x426d7e(0x1d1)](_0x5de691){const _0x369480=_0x426d7e,_0x463755=_0x5de691[_0x369480(0x106)]();return deserializeListOptions(_0x463755);}async['parseFormula'](_0x422b15,_0x211417,_0x5aa7e7){const _0x222541=_0x426d7e;var _0x36c3c1;const {formula1:formula1=''}=_0x422b15,_0x3c897d=await this[_0x222541(0x1db)][_0x222541(0x178)](_0x211417,_0x5aa7e7,_0x422b15[_0x222541(0x17b)]);return{'formula1':core[_0x222541(0x1ae)](formula1)?getRuleFormulaResultSet((_0x36c3c1=_0x3c897d==null?void 0x0:_0x3c897d[0x0])==null?void 0x0:_0x36c3c1[_0x222541(0x297)]):deserializeListOptions(formula1),'formula2':void 0x0};}async[_0x426d7e(0x27a)](_0x5003c1,_0x32fd28,_0x42eed8){const _0x31dfc4=_0x426d7e,{value:_0x2fd864}=_0x5003c1,{formula1:formula1=[]}=_0x32fd28;return this[_0x31dfc4(0x1d1)](_0x2fd864)[_0x31dfc4(0x1cc)](_0x4f07e9=>formula1['includes'](_0x4f07e9));}['generateRuleName'](){const _0x41bd84=_0x426d7e;return this[_0x41bd84(0x307)]['t'](_0x41bd84(0x1cd));}[_0x426d7e(0xe5)](){const _0x3a4ec0=_0x426d7e;return this[_0x3a4ec0(0x307)]['t'](_0x3a4ec0(0x14e));}[_0x426d7e(0xe8)](_0x59f947,_0x4a52ae,_0x1b6524){const _0x5bd5bb=_0x426d7e;var _0x4b6a88,_0x2aba9f,_0x3742f9;const {formula1:formula1=''}=_0x59f947,_0x352a64=this[_0x5bd5bb(0x102)][_0x5bd5bb(0x264)](core[_0x5bd5bb(0x1e0)]),_0x49c2d6=(_0x4b6a88=_0x4a52ae?_0x352a64[_0x5bd5bb(0x2c9)](_0x4a52ae):void 0x0)!=null?_0x4b6a88:_0x352a64[_0x5bd5bb(0x23f)](core[_0x5bd5bb(0x2c7)][_0x5bd5bb(0x2a6)]);if(!_0x49c2d6)return[];const _0xaa21da=(_0x2aba9f=_0x1b6524?_0x49c2d6[_0x5bd5bb(0x1ad)](_0x1b6524):void 0x0)!=null?_0x2aba9f:_0x49c2d6[_0x5bd5bb(0x24c)]();if(!_0xaa21da)return[];const _0x892a11=_0x49c2d6[_0x5bd5bb(0x1e2)](),_0x28710a=_0xaa21da[_0x5bd5bb(0x2ad)](),_0x34a896=this['formulaService']['getRuleFormulaResultSync'](_0x892a11,_0x28710a,_0x59f947[_0x5bd5bb(0x17b)]);return core['isFormulaString'](formula1)?getRuleFormulaResultSet((_0x3742f9=_0x34a896==null?void 0x0:_0x34a896[0x0])==null?void 0x0:_0x3742f9[_0x5bd5bb(0x297)]):deserializeListOptions(formula1);}async[_0x426d7e(0x275)](_0x5225f2,_0x240486,_0x3078e3){const _0x15cd29=_0x426d7e;var _0x4e4990,_0x43ca34,_0x3c2fc8;const {formula1:formula1=''}=_0x5225f2,_0x43c40f=this[_0x15cd29(0x102)]['get'](core[_0x15cd29(0x1e0)]),_0x51f0cc=(_0x4e4990=_0x240486?_0x43c40f[_0x15cd29(0x2c9)](_0x240486):void 0x0)!=null?_0x4e4990:_0x43c40f[_0x15cd29(0x23f)](core[_0x15cd29(0x2c7)][_0x15cd29(0x2a6)]);if(!_0x51f0cc)return[];const _0x457da4=(_0x43ca34=_0x3078e3?_0x51f0cc[_0x15cd29(0x1ad)](_0x3078e3):void 0x0)!=null?_0x43ca34:_0x51f0cc[_0x15cd29(0x24c)]();if(!_0x457da4)return[];const _0x34bb65=_0x51f0cc[_0x15cd29(0x1e2)](),_0x477366=_0x457da4[_0x15cd29(0x2ad)](),_0x86424b=await this['formulaService'][_0x15cd29(0x178)](_0x34bb65,_0x477366,_0x5225f2[_0x15cd29(0x17b)]);return core[_0x15cd29(0x1ae)](formula1)?getRuleFormulaResultSet((_0x3c2fc8=_0x86424b==null?void 0x0:_0x86424b[0x0])==null?void 0x0:_0x3c2fc8[_0x15cd29(0x297)]):deserializeListOptions(formula1);}['getListWithColor'](_0x580c15,_0x2489d6,_0x1485bd){const _0x429bcb=_0x426d7e,_0x5af8e7=this[_0x429bcb(0xe8)](_0x580c15,_0x2489d6,_0x1485bd),_0x436a29=(_0x580c15['formula2']||'')[_0x429bcb(0x266)](',');return _0x5af8e7[_0x429bcb(0xd7)]((_0x296960,_0x514229)=>({'label':_0x296960,'color':_0x436a29[_0x514229]}));}[_0x426d7e(0x23d)](_0x25bf71,_0x16739d,_0x1fafa8){const _0x1c2e48=_0x426d7e,_0x359271=this[_0x1c2e48(0x2d7)](_0x25bf71,_0x16739d,_0x1fafa8),_0x1a350d={};return _0x359271[_0x1c2e48(0x262)](_0x5172cd=>{const _0x2c0e06=_0x1c2e48;_0x5172cd[_0x2c0e06(0x282)]&&(_0x1a350d[_0x5172cd[_0x2c0e06(0x12d)]]=_0x5172cd[_0x2c0e06(0x282)]);}),_0x1a350d;}};__name(_ListValidator,_0x426d7e(0x154));let ListValidator=_ListValidator;const FORMULA1=_0x426d7e(0x2cf),FORMULA2=_0x426d7e(0x23a),_TextLengthValidator=class _TextLengthValidator extends dataValidation[_0x426d7e(0x181)]{constructor(){const _0x3cb501=_0x426d7e;super(...arguments),__publicField(this,'id',core['DataValidationType'][_0x3cb501(0x261)]),__publicField(this,_0x3cb501(0x2df),_0x3cb501(0xfe)),__publicField(this,'operators',[core[_0x3cb501(0x14a)][_0x3cb501(0x288)],core[_0x3cb501(0x14a)][_0x3cb501(0x27c)],core[_0x3cb501(0x14a)]['GREATER_THAN'],core['DataValidationOperator'][_0x3cb501(0x2ca)],core[_0x3cb501(0x14a)][_0x3cb501(0x29a)],core['DataValidationOperator'][_0x3cb501(0x2ee)],core[_0x3cb501(0x14a)]['NOT_BETWEEN'],core[_0x3cb501(0x14a)][_0x3cb501(0xe0)]]),__publicField(this,_0x3cb501(0x1d0),['sheet']),__publicField(this,_0x3cb501(0x1d8),this[_0x3cb501(0x102)]['get'](exports[_0x3cb501(0x20d)]));}[_0x426d7e(0x141)](_0x10d316){const _0x1b3215=_0x426d7e;return!core[_0x1b3215(0x188)]['isBlank'](_0x10d316)&&(core[_0x1b3215(0x1ae)](_0x10d316)||!Number[_0x1b3215(0x1bb)](+_0x10d316)&&Number[_0x1b3215(0x28b)](+_0x10d316));}['validatorFormula'](_0x21350a,_0x36748c,_0x20a1d5){const _0x181f2b=_0x426d7e,_0x509bdf=_0x21350a[_0x181f2b(0x273)];if(!_0x509bdf)return{'success':!0x1};const _0x4c5cea=core[_0x181f2b(0x188)][_0x181f2b(0x12b)](_0x21350a[_0x181f2b(0x1b1)])&&this['_isFormulaOrInt'](_0x21350a[_0x181f2b(0x1b1)]),_0x50864c=core[_0x181f2b(0x188)][_0x181f2b(0x12b)](_0x21350a['formula2'])&&this[_0x181f2b(0x141)](_0x21350a[_0x181f2b(0x1fc)]),_0x13bdad=TWO_FORMULA_OPERATOR_COUNT[_0x181f2b(0x240)](_0x509bdf),_0x51df32=this['localeService']['t'](_0x181f2b(0x27f));return _0x13bdad?{'success':_0x4c5cea&&_0x50864c,'formula1':_0x4c5cea?void 0x0:_0x51df32,'formula2':_0x50864c?void 0x0:_0x51df32}:{'success':_0x4c5cea,'formula1':_0x51df32};}[_0x426d7e(0x1f1)](_0x4f95d4){const _0x53420f=_0x426d7e;return _0x4f95d4==null?Number[_0x53420f(0x104)]:+_0x4f95d4;}['_isValidFormula'](_0x196804){const _0x306569=_0x426d7e;return!Number[_0x306569(0x1bb)](_0x196804);}async[_0x426d7e(0x2b5)](_0x571390,_0x3a0ed9,_0x166899){const _0x3d5151=_0x426d7e;var _0x5f2c6a,_0x31f0b8,_0x1eaf41,_0x57dea6,_0x4385b8,_0x5e1c23,_0x38e3dd,_0x19def9;const _0x5a0299=await this[_0x3d5151(0x1d8)]['getRuleFormulaResult'](_0x3a0ed9,_0x166899,_0x571390[_0x3d5151(0x17b)]),{formula1:_0x26ecd7,formula2:_0x4810fe}=_0x571390;return{'formula1':this[_0x3d5151(0x1f1)](core[_0x3d5151(0x1ae)](_0x26ecd7)?(_0x57dea6=(_0x1eaf41=(_0x31f0b8=(_0x5f2c6a=_0x5a0299==null?void 0x0:_0x5a0299[0x0])==null?void 0x0:_0x5f2c6a['result'])==null?void 0x0:_0x31f0b8[0x0])==null?void 0x0:_0x1eaf41[0x0])==null?void 0x0:_0x57dea6['v']:_0x26ecd7),'formula2':this['_parseNumber'](core['isFormulaString'](_0x4810fe)?(_0x19def9=(_0x38e3dd=(_0x5e1c23=(_0x4385b8=_0x5a0299==null?void 0x0:_0x5a0299[0x1])==null?void 0x0:_0x4385b8['result'])==null?void 0x0:_0x5e1c23[0x0])==null?void 0x0:_0x38e3dd[0x0])==null?void 0x0:_0x19def9['v']:_0x4810fe)};}[_0x426d7e(0x13c)](_0x1cb261,_0x12305a,_0x285c3b){const _0xc4dddf=_0x426d7e;return{..._0x1cb261,'value':_0x1cb261[_0xc4dddf(0x1e3)][_0xc4dddf(0x106)]()[_0xc4dddf(0x1f9)]};}async[_0x426d7e(0x27a)](_0x2921eb,_0x5c396f,_0x7e4fb8){const _0x3ffa00=_0x426d7e,{value:_0x4e6c5e}=_0x2921eb;return typeof _0x4e6c5e==_0x3ffa00(0x202)||typeof _0x4e6c5e==_0x3ffa00(0x237);}async[_0x426d7e(0x2cb)](_0x48830b,_0x252f9a,_0x4641af){const _0x5d367e=_0x426d7e,{formula1:_0x48f12c}=_0x252f9a;return core['Tools'][_0x5d367e(0x12b)](_0x48f12c)?_0x48830b[_0x5d367e(0x1e3)]===_0x48f12c:!0x1;}async[_0x426d7e(0x10d)](_0x3b5c8e,_0x5eddd0,_0x44076f){const {formula1:_0x1e84b0}=_0x5eddd0;return core['Tools']['isDefine'](_0x1e84b0)?_0x3b5c8e['value']!==_0x1e84b0:!0x1;}async[_0x426d7e(0x281)](_0x27e328,_0x30aeba,_0x1320a8){const _0x289b35=_0x426d7e,{formula1:_0x1c2d45,formula2:_0x333ce7}=_0x30aeba,{value:_0x529dce}=_0x27e328;if(!this[_0x289b35(0x126)](_0x1c2d45)||!this[_0x289b35(0x126)](_0x333ce7))return!0x1;const _0x587a53=Math[_0x289b35(0x2dc)](_0x1c2d45,_0x333ce7),_0x1d3b2f=Math[_0x289b35(0xe6)](_0x1c2d45,_0x333ce7);return _0x529dce>=_0x1d3b2f&&_0x529dce<=_0x587a53;}async[_0x426d7e(0x269)](_0x577b2e,_0x2c179c,_0x22fa29){const _0x504e0c=_0x426d7e,{formula1:_0x47f78e,formula2:_0x49440e}=_0x2c179c,{value:_0x310017}=_0x577b2e;if(!this['_isValidFormula'](_0x47f78e)||!this[_0x504e0c(0x126)](_0x49440e))return!0x1;const _0x21e272=Math[_0x504e0c(0x2dc)](_0x47f78e,_0x49440e),_0x10f10b=Math[_0x504e0c(0xe6)](_0x47f78e,_0x49440e);return _0x310017<_0x10f10b||_0x310017>_0x21e272;}async[_0x426d7e(0x169)](_0x319a0c,_0x214551,_0x14ffce){const _0x5bf1f0=_0x426d7e,{formula1:_0x43bd26}=_0x214551,{value:_0x2de5e6}=_0x319a0c;return this[_0x5bf1f0(0x126)](_0x43bd26)?_0x2de5e6>_0x43bd26:!0x1;}async['validatorIsGreaterThanOrEqual'](_0x2355fa,_0x61859,_0xd43781){const {formula1:_0x1b93ed}=_0x61859,{value:_0x231cdb}=_0x2355fa;return this['_isValidFormula'](_0x1b93ed)?_0x231cdb>=_0x1b93ed:!0x1;}async[_0x426d7e(0x2da)](_0x38937a,_0x74c979,_0x57f7fa){const _0x55c39e=_0x426d7e,{formula1:_0x4145ab}=_0x74c979,{value:_0x283e36}=_0x38937a;return this[_0x55c39e(0x126)](_0x4145ab)?_0x283e36<_0x4145ab:!0x1;}async[_0x426d7e(0x21d)](_0x982f23,_0x2ee2cb,_0x1711ca){const _0x9a2533=_0x426d7e,{formula1:_0x2b6a58}=_0x2ee2cb,{value:_0x2ae24d}=_0x982f23;return this[_0x9a2533(0x126)](_0x2b6a58)?_0x2ae24d<=_0x2b6a58:!0x1;}[_0x426d7e(0xe5)](_0x5d90ca){const _0x5b956f=_0x426d7e;var _0x5c1013,_0x274a06;return _0x5d90ca[_0x5b956f(0x273)]?''+this['localeService']['t'](dataValidation['TextLengthErrorTitleMap'][_0x5d90ca[_0x5b956f(0x273)]])[_0x5b956f(0xf4)](FORMULA1,(_0x5c1013=_0x5d90ca[_0x5b956f(0x1b1)])!=null?_0x5c1013:'')[_0x5b956f(0xf4)](FORMULA2,(_0x274a06=_0x5d90ca['formula2'])!=null?_0x274a06:''):this[_0x5b956f(0x257)];}};__name(_TextLengthValidator,_0x426d7e(0x268));let TextLengthValidator=_TextLengthValidator;function isBlankCell(_0xe77d9f){const _0x23735a=_0x426d7e;var _0x47c2ee,_0x44d59b;return _0xe77d9f?_0xe77d9f['p']?!((_0x44d59b=(_0x47c2ee=_0xe77d9f['p'][_0x23735a(0x290)])==null?void 0x0:_0x47c2ee['dataStream'])!=null?_0x44d59b:'')[_0x23735a(0x13a)](0x0,-0x2)['trim']():core['Tools']['isBlank'](_0xe77d9f['v']):!0x0;}__name(isBlankCell,_0x426d7e(0x1f7));function getDataValidationDiffMutations(_0x503fd6,_0x4b19f1,_0x5e6e00,_0x17d180,_0x130c32='command',_0xcba9c4=!0x0){const _0xad4270=_0x426d7e,_0x285973=[],_0x26cf61=[],_0x344046=_0x17d180[_0xad4270(0x264)](exports[_0xad4270(0x173)]),_0xcff397=_0x17d180[_0xad4270(0x264)](core[_0xad4270(0x1e0)]),_0x4887b1=sheets[_0xad4270(0x196)](_0xcff397,{'unitId':_0x503fd6,'subUnitId':_0x4b19f1});if(!_0x4887b1)return{'redoMutations':_0x285973,'undoMutations':_0x26cf61};const {worksheet:_0x4f440b}=_0x4887b1,_0x206da7=new core[(_0xad4270(0x1b8))]();function _0x1364cf(_0x38baa9,_0x32fbb9){const _0x577c4b=_0xad4270;_0xcba9c4&&_0x38baa9[_0x577c4b(0x262)](_0x1994fc=>{const _0x18cd42=_0x577c4b;core['Range'][_0x18cd42(0x298)](_0x1994fc,(_0x29e561,_0x5b0083)=>{const _0x4a38a3=_0x18cd42,_0x1d5dcf=_0x4f440b[_0x4a38a3(0x204)](_0x29e561,_0x5b0083),_0x392fdc=getStringCellValue(_0x1d5dcf);(isBlankCell(_0x1d5dcf)||_0x392fdc===_0x32fbb9)&&_0x206da7[_0x4a38a3(0x1a7)](_0x29e561,_0x5b0083,{'v':_0x32fbb9,'p':null});});});}__name(_0x1364cf,'setRangesDefaultValue'),_0x5e6e00[_0xad4270(0x262)](_0x302bf6=>{const _0x51f3bf=_0xad4270;switch(_0x302bf6[_0x51f3bf(0x1e6)]){case'delete':_0x285973[_0x51f3bf(0x2a1)]({'id':dataValidation[_0x51f3bf(0x2d4)]['id'],'params':{'unitId':_0x503fd6,'subUnitId':_0x4b19f1,'ruleId':_0x302bf6[_0x51f3bf(0x293)]['uid'],'source':_0x130c32}}),_0x26cf61[_0x51f3bf(0x234)]({'id':dataValidation[_0x51f3bf(0x10a)]['id'],'params':{'unitId':_0x503fd6,'subUnitId':_0x4b19f1,'rule':_0x302bf6[_0x51f3bf(0x293)],'index':_0x302bf6[_0x51f3bf(0x201)],'source':_0x130c32}});break;case _0x51f3bf(0x2f5):{_0x285973[_0x51f3bf(0x2a1)]({'id':dataValidation[_0x51f3bf(0x1df)]['id'],'params':{'unitId':_0x503fd6,'subUnitId':_0x4b19f1,'ruleId':_0x302bf6[_0x51f3bf(0x20f)],'payload':{'type':dataValidation[_0x51f3bf(0x1d7)][_0x51f3bf(0x274)],'payload':_0x302bf6[_0x51f3bf(0x127)]},'source':_0x130c32}}),_0x26cf61['unshift']({'id':dataValidation[_0x51f3bf(0x1df)]['id'],'params':{'unitId':_0x503fd6,'subUnitId':_0x4b19f1,'ruleId':_0x302bf6[_0x51f3bf(0x20f)],'payload':{'type':dataValidation['UpdateRuleType']['RANGE'],'payload':_0x302bf6['oldRanges']},'source':_0x130c32}});const _0x2dafe5=_0x344046[_0x51f3bf(0x22a)](_0x503fd6,_0x4b19f1,_0x302bf6[_0x51f3bf(0x20f)]);if(_0x2dafe5&&_0x2dafe5['type']===core[_0x51f3bf(0x1b3)][_0x51f3bf(0x229)]){const _0x44227f=_0x344046['getValidator'](core[_0x51f3bf(0x1b3)][_0x51f3bf(0x229)])['parseFormulaSync'](_0x2dafe5,_0x503fd6,_0x4b19f1);_0x1364cf(_0x302bf6[_0x51f3bf(0x127)],_0x44227f[_0x51f3bf(0x1fc)]);}break;}case _0x51f3bf(0x235):{if(_0x285973[_0x51f3bf(0x2a1)]({'id':dataValidation[_0x51f3bf(0x10a)]['id'],'params':{'unitId':_0x503fd6,'subUnitId':_0x4b19f1,'rule':_0x302bf6[_0x51f3bf(0x293)],'source':_0x130c32}}),_0x26cf61[_0x51f3bf(0x234)]({'id':dataValidation[_0x51f3bf(0x2d4)]['id'],'params':{'unitId':_0x503fd6,'subUnitId':_0x4b19f1,'ruleId':_0x302bf6['rule']['uid'],'source':_0x130c32}}),_0x302bf6['rule']['type']===core['DataValidationType'][_0x51f3bf(0x229)]){const _0xed7e15=_0x344046[_0x51f3bf(0x29d)](core[_0x51f3bf(0x1b3)]['CHECKBOX'])[_0x51f3bf(0x194)](_0x302bf6['rule'],_0x503fd6,_0x4b19f1);_0x1364cf(_0x302bf6[_0x51f3bf(0x293)][_0x51f3bf(0xdc)],_0xed7e15[_0x51f3bf(0x105)]);}break;}}});const _0x3bec2d={'id':sheets[_0xad4270(0xd2)]['id'],'params':{'unitId':_0x503fd6,'subUnitId':_0x4b19f1,'cellValue':_0x206da7[_0xad4270(0xf1)]()}},_0x187440={'id':sheets['SetRangeValuesMutation']['id'],'params':sheets[_0xad4270(0x10e)](_0x17d180,_0x3bec2d[_0xad4270(0x1a4)])};return _0x285973[_0xad4270(0x2a1)](_0x3bec2d),_0x26cf61[_0xad4270(0x2a1)](_0x187440),{'redoMutations':_0x285973,'undoMutations':_0x26cf61};}__name(getDataValidationDiffMutations,_0x426d7e(0x17e));const UpdateSheetDataValidationRangeCommand={'type':core['CommandType']['COMMAND'],'id':_0x426d7e(0xf0),async 'handler'(_0x5a0c08,_0x2ba0e3){const _0x839151=_0x426d7e;if(!_0x2ba0e3)return!0x1;const {unitId:_0x45851f,subUnitId:_0x338253,ranges:_0x25e2fd,ruleId:_0x50f8fd}=_0x2ba0e3,_0x1b7383=_0x5a0c08[_0x839151(0x264)](exports[_0x839151(0x173)]),_0x44cd91=_0x5a0c08['get'](core[_0x839151(0x224)]),_0x5c3c84=_0x5a0c08['get'](core[_0x839151(0x199)]);if(!_0x1b7383[_0x839151(0x22a)](_0x45851f,_0x338253,_0x50f8fd))return!0x1;const _0x242194=_0x1b7383['getRuleObjectMatrix'](_0x45851f,_0x338253)[_0x839151(0x245)]();_0x242194[_0x839151(0x186)](_0x50f8fd,_0x25e2fd);const _0x1f82ee=_0x242194['diff'](_0x1b7383['getRules'](_0x45851f,_0x338253)),{redoMutations:_0x454161,undoMutations:_0x245585}=getDataValidationDiffMutations(_0x45851f,_0x338253,_0x1f82ee,_0x5a0c08);return _0x5c3c84[_0x839151(0xc8)]({'undoMutations':_0x245585,'redoMutations':_0x454161,'unitID':_0x45851f}),await core[_0x839151(0x2d1)](_0x454161,_0x44cd91),!0x0;}},AddSheetDataValidationCommand={'type':core[_0x426d7e(0x279)][_0x426d7e(0x27d)],'id':_0x426d7e(0x137),async 'handler'(_0x3e4236,_0x3cb85f){const _0x3fa1a9=_0x426d7e;if(!_0x3cb85f)return!0x1;const {unitId:_0x3503b1,subUnitId:_0x2240a8,rule:_0x7fc9a7}=_0x3cb85f,_0x547c61=_0x3e4236[_0x3fa1a9(0x264)](exports[_0x3fa1a9(0x173)]),_0x10a4de=_0x3e4236[_0x3fa1a9(0x264)](core[_0x3fa1a9(0x224)]),_0x28445f=_0x3e4236[_0x3fa1a9(0x264)](core[_0x3fa1a9(0x199)]),_0xd8eb14=_0x547c61[_0x3fa1a9(0x203)](_0x3503b1,_0x2240a8)[_0x3fa1a9(0x245)]();_0xd8eb14[_0x3fa1a9(0x1f8)](_0x7fc9a7);const _0x17b986=_0xd8eb14[_0x3fa1a9(0x216)](_0x547c61[_0x3fa1a9(0x2b9)](_0x3503b1,_0x2240a8)),_0x54a089={'unitId':_0x3503b1,'subUnitId':_0x2240a8,'rule':_0x7fc9a7},{redoMutations:_0x591a88,undoMutations:_0x5ae3f2}=getDataValidationDiffMutations(_0x3503b1,_0x2240a8,_0x17b986,_0x3e4236);return _0x591a88[_0x3fa1a9(0x2a1)]({'id':dataValidation[_0x3fa1a9(0x10a)]['id'],'params':_0x54a089}),_0x5ae3f2[_0x3fa1a9(0x234)]({'id':dataValidation[_0x3fa1a9(0x2d4)]['id'],'params':{'unitId':_0x3503b1,'subUnitId':_0x2240a8,'ruleId':_0x7fc9a7[_0x3fa1a9(0x17b)]}}),_0x28445f[_0x3fa1a9(0xc8)]({'unitID':_0x3503b1,'redoMutations':_0x591a88,'undoMutations':_0x5ae3f2}),await core[_0x3fa1a9(0x2d1)](_0x591a88,_0x10a4de),!0x0;}},UpdateSheetDataValidationSettingCommand={'type':core[_0x426d7e(0x279)][_0x426d7e(0x27d)],'id':_0x426d7e(0x28a),'handler'(_0x13ab2c,_0x56b4a2){const _0x3da3d7=_0x426d7e;if(!_0x56b4a2)return!0x1;const _0x9d8405=_0x13ab2c[_0x3da3d7(0x264)](core[_0x3da3d7(0x224)]),_0x143737=_0x13ab2c['get'](core['IUndoRedoService']),_0x500063=_0x13ab2c['get'](exports['SheetDataValidationModel']),_0x1f05e5=_0x13ab2c['get'](dataValidation[_0x3da3d7(0x1b5)]),{unitId:_0x28bf22,subUnitId:_0x45da27,ruleId:_0x3f7979,setting:_0x2dee79}=_0x56b4a2,_0x53106f=_0x1f05e5[_0x3da3d7(0x125)](_0x2dee79[_0x3da3d7(0x1e6)]);if(!_0x53106f)return!0x1;const _0x53ad9d=_0x500063[_0x3da3d7(0x22a)](_0x28bf22,_0x45da27,_0x3f7979);if(!_0x53ad9d)return!0x1;const _0x1e5749={..._0x53ad9d,..._0x2dee79};if(!_0x53106f[_0x3da3d7(0x185)](_0x1e5749,_0x28bf22,_0x45da27)[_0x3da3d7(0x21e)])return!0x1;const _0x32c7e4={'unitId':_0x28bf22,'subUnitId':_0x45da27,'ruleId':_0x3f7979,'payload':{'type':dataValidation[_0x3da3d7(0x1d7)][_0x3da3d7(0x110)],'payload':{..._0x2dee79,..._0x53106f['normalizeFormula'](_0x1e5749,_0x28bf22,_0x45da27)}}},_0x56a87a=[{'id':dataValidation[_0x3da3d7(0x1df)]['id'],'params':_0x32c7e4}],_0x12a414={'unitId':_0x28bf22,'subUnitId':_0x45da27,'ruleId':_0x3f7979,'payload':{'type':dataValidation['UpdateRuleType'][_0x3da3d7(0x110)],'payload':dataValidation['getRuleSetting'](_0x53ad9d)}},_0x1aed54=[{'id':dataValidation[_0x3da3d7(0x1df)]['id'],'params':_0x12a414}];if(_0x2dee79[_0x3da3d7(0x1e6)]===core[_0x3da3d7(0x1b3)][_0x3da3d7(0x229)]){const _0x243705=_0x53ad9d[_0x3da3d7(0xdc)],_0x5e0c9d=_0x13ab2c['get'](core['IUniverInstanceService']),_0x29f917=sheets[_0x3da3d7(0x196)](_0x5e0c9d,{'unitId':_0x28bf22,'subUnitId':_0x45da27});if(_0x29f917){const _0x1fcfb8=new core[(_0x3da3d7(0x1b8))](),{worksheet:_0x982f42}=_0x29f917,{formula2:_0x42f1b9=CHECKBOX_FORMULA_2,formula1:_0x23cb4c=CHECKBOX_FORMULA_1}=_0x53ad9d,{formula2:formula2=CHECKBOX_FORMULA_2,formula1:formula1=CHECKBOX_FORMULA_1}=_0x2dee79;_0x243705[_0x3da3d7(0x262)](_0xcb5f70=>{const _0x19fb56=_0x3da3d7;core[_0x19fb56(0x227)][_0x19fb56(0x298)](_0xcb5f70,(_0xc118a7,_0x48bc79)=>{const _0x1dafba=_0x19fb56,_0x882e8=_0x982f42[_0x1dafba(0x204)](_0xc118a7,_0x48bc79),_0x271524=getStringCellValue(_0x882e8);isBlankCell(_0x882e8)||_0x271524===String(_0x42f1b9)?_0x1fcfb8[_0x1dafba(0x1a7)](_0xc118a7,_0x48bc79,{'v':formula2,'p':null}):_0x271524===String(_0x23cb4c)&&_0x1fcfb8[_0x1dafba(0x1a7)](_0xc118a7,_0x48bc79,{'v':formula1,'p':null});});});const _0x2a6d48={'id':sheets['SetRangeValuesMutation']['id'],'params':{'unitId':_0x28bf22,'subUnitId':_0x45da27,'cellValue':_0x1fcfb8[_0x3da3d7(0xf1)]()}},_0x533dc3={'id':sheets['SetRangeValuesMutation']['id'],'params':sheets[_0x3da3d7(0x10e)](_0x13ab2c,_0x2a6d48[_0x3da3d7(0x1a4)])};_0x56a87a['push'](_0x2a6d48),_0x1aed54[_0x3da3d7(0x2a1)](_0x533dc3);}}return core[_0x3da3d7(0x192)](_0x56a87a,_0x9d8405)['result']?(_0x143737[_0x3da3d7(0xc8)]({'unitID':_0x28bf22,'redoMutations':_0x56a87a,'undoMutations':_0x1aed54}),!0x0):!0x1;}},UpdateSheetDataValidationOptionsCommand={'type':core[_0x426d7e(0x279)][_0x426d7e(0x27d)],'id':_0x426d7e(0x26e),'handler'(_0x2550b0,_0x5853ce){const _0x4cad96=_0x426d7e;if(!_0x5853ce)return!0x1;const _0x5137bd=_0x2550b0['get'](core[_0x4cad96(0x224)]),_0xcccb=_0x2550b0[_0x4cad96(0x264)](core[_0x4cad96(0x199)]),_0x987a8e=_0x2550b0[_0x4cad96(0x264)](exports[_0x4cad96(0x173)]),{unitId:_0x5174d2,subUnitId:_0x1b56cc,ruleId:_0xdcc60e,options:_0x3018e}=_0x5853ce,_0xce4646=_0x987a8e[_0x4cad96(0x22a)](_0x5174d2,_0x1b56cc,_0xdcc60e);if(!_0xce4646)return!0x1;const _0xbd76be={'unitId':_0x5174d2,'subUnitId':_0x1b56cc,'ruleId':_0xdcc60e,'payload':{'type':dataValidation['UpdateRuleType'][_0x4cad96(0x2e1)],'payload':_0x3018e}},_0xefd5af=[{'id':dataValidation[_0x4cad96(0x1df)]['id'],'params':_0xbd76be}],_0x152ccd={'unitId':_0x5174d2,'subUnitId':_0x1b56cc,'ruleId':_0xdcc60e,'payload':{'type':dataValidation['UpdateRuleType'][_0x4cad96(0x2e1)],'payload':dataValidation[_0x4cad96(0x1ef)](_0xce4646)}},_0x22a455=[{'id':dataValidation[_0x4cad96(0x1df)]['id'],'params':_0x152ccd}];return _0xcccb[_0x4cad96(0xc8)]({'unitID':_0x5174d2,'redoMutations':_0xefd5af,'undoMutations':_0x22a455}),_0x5137bd[_0x4cad96(0x287)](dataValidation[_0x4cad96(0x1df)]['id'],_0xbd76be),!0x0;}},ClearRangeDataValidationCommand={'type':core[_0x426d7e(0x279)][_0x426d7e(0x27d)],'id':_0x426d7e(0x16c),'handler'(_0x103be3,_0x17fa55){const _0x550982=_0x426d7e;if(!_0x17fa55)return!0x1;const {unitId:_0x2ad7ae,subUnitId:_0x304d8d,ranges:_0x4bbb26}=_0x17fa55,_0x1211b7=_0x103be3['get'](core[_0x550982(0x224)]),_0x4004dc=_0x103be3[_0x550982(0x264)](core[_0x550982(0x1e0)]),_0x186e99=sheets[_0x550982(0x196)](_0x4004dc,{'unitId':_0x2ad7ae,'subUnitId':_0x304d8d}),_0x92ad00=_0x103be3[_0x550982(0x264)](exports[_0x550982(0x173)]);if(!_0x186e99)return!0x1;const _0x86d35=_0x103be3[_0x550982(0x264)](core[_0x550982(0x199)]),_0x2ebedb=_0x92ad00[_0x550982(0x203)](_0x2ad7ae,_0x304d8d)[_0x550982(0x245)]();_0x2ebedb[_0x550982(0x2f4)](_0x4bbb26);const _0x44e9ae=_0x2ebedb['diff'](_0x92ad00[_0x550982(0x2b9)](_0x2ad7ae,_0x304d8d)),{redoMutations:_0x37966d,undoMutations:_0x2bca54}=getDataValidationDiffMutations(_0x2ad7ae,_0x304d8d,_0x44e9ae,_0x103be3);return _0x86d35[_0x550982(0xc8)]({'unitID':_0x2ad7ae,'redoMutations':_0x37966d,'undoMutations':_0x2bca54}),core[_0x550982(0x192)](_0x37966d,_0x1211b7)[_0x550982(0x297)];}},RemoveSheetAllDataValidationCommand={'type':core[_0x426d7e(0x279)][_0x426d7e(0x27d)],'id':_0x426d7e(0x263),'handler'(_0x15a17e,_0x458693){const _0x5ec327=_0x426d7e;if(!_0x458693)return!0x1;const {unitId:_0x47607a,subUnitId:_0xc24185}=_0x458693,_0x2d76d6=_0x15a17e['get'](core['ICommandService']),_0xd731d1=_0x15a17e[_0x5ec327(0x264)](exports[_0x5ec327(0x173)]),_0x389f63=_0x15a17e['get'](core['IUndoRedoService']),_0x5b2071=[..._0xd731d1['getRules'](_0x47607a,_0xc24185)],_0x39bddc={'unitId':_0x47607a,'subUnitId':_0xc24185,'ruleId':_0x5b2071[_0x5ec327(0xd7)](_0x35423a=>_0x35423a[_0x5ec327(0x17b)])},_0x20ec61=[{'id':dataValidation['RemoveDataValidationMutation']['id'],'params':_0x39bddc}],_0x483543=[{'id':dataValidation[_0x5ec327(0x10a)]['id'],'params':{'unitId':_0x47607a,'subUnitId':_0xc24185,'rule':_0x5b2071}}];return _0x389f63['pushUndoRedo']({'redoMutations':_0x20ec61,'undoMutations':_0x483543,'unitID':_0x47607a}),_0x2d76d6['executeCommand'](dataValidation['RemoveDataValidationMutation']['id'],_0x39bddc),!0x0;}},removeDataValidationUndoFactory=__name((_0x4c698f,_0x4decc1)=>{const _0x8adb53=_0x426d7e,_0x2e024f=_0x4c698f[_0x8adb53(0x264)](exports[_0x8adb53(0x173)]),{unitId:_0x3a6894,subUnitId:_0x57fcfb,ruleId:_0xf5f85,source:_0x81f5f9}=_0x4decc1;if(Array[_0x8adb53(0x2b4)](_0xf5f85)){const _0x12eff3=_0xf5f85[_0x8adb53(0xd7)](_0x53532d=>_0x2e024f[_0x8adb53(0x22a)](_0x3a6894,_0x57fcfb,_0x53532d))[_0x8adb53(0xf5)](Boolean);return[{'id':dataValidation['AddDataValidationMutation']['id'],'params':{'unitId':_0x3a6894,'subUnitId':_0x57fcfb,'rule':_0x12eff3,'source':_0x81f5f9}}];}return[{'id':dataValidation[_0x8adb53(0x10a)]['id'],'params':{'unitId':_0x3a6894,'subUnitId':_0x57fcfb,'rule':{..._0x2e024f[_0x8adb53(0x22a)](_0x3a6894,_0x57fcfb,_0xf5f85)},'index':_0x2e024f['getRuleIndex'](_0x3a6894,_0x57fcfb,_0xf5f85)}}];},_0x426d7e(0x214)),RemoveSheetDataValidationCommand={'type':core[_0x426d7e(0x279)]['COMMAND'],'id':'sheet.command.remove-data-validation-rule','handler'(_0xfa3562,_0x2c616e){const _0x3e4ae9=_0x426d7e;if(!_0x2c616e)return!0x1;const {unitId:_0x28f0ad,subUnitId:_0x2543ab,ruleId:_0xff1326}=_0x2c616e,_0x51b67b=_0xfa3562[_0x3e4ae9(0x264)](core[_0x3e4ae9(0x224)]),_0x53ad39=_0xfa3562[_0x3e4ae9(0x264)](core[_0x3e4ae9(0x199)]),_0x245fb2=_0xfa3562['get'](exports[_0x3e4ae9(0x173)]),_0x4134c5=[{'id':dataValidation[_0x3e4ae9(0x2d4)]['id'],'params':_0x2c616e}],_0x16858d=[{'id':dataValidation[_0x3e4ae9(0x10a)]['id'],'params':{'unitId':_0x28f0ad,'subUnitId':_0x2543ab,'rule':{..._0x245fb2['getRuleById'](_0x28f0ad,_0x2543ab,_0xff1326)},'index':_0x245fb2[_0x3e4ae9(0x1a0)](_0x28f0ad,_0x2543ab,_0xff1326)}}];return _0x53ad39[_0x3e4ae9(0xc8)]({'undoMutations':_0x16858d,'redoMutations':_0x4134c5,'unitID':_0x2c616e[_0x3e4ae9(0x16d)]}),_0x51b67b[_0x3e4ae9(0x287)](dataValidation[_0x3e4ae9(0x2d4)]['id'],_0x2c616e),!0x0;}};function isLegalFormulaResult(_0x22f97c){const _0x1a60ec=_0x426d7e;return!engineFormula[_0x1a60ec(0xca)]['has'](_0x22f97c);}__name(isLegalFormulaResult,_0x426d7e(0x10c));const _CustomFormulaValidator=class _CustomFormulaValidator extends dataValidation[_0x426d7e(0x181)]{constructor(){const _0x2589dc=_0x426d7e;super(...arguments),__publicField(this,'id',core[_0x2589dc(0x1b3)][_0x2589dc(0x10b)]),__publicField(this,_0x2589dc(0x2df),_0x2589dc(0x131)),__publicField(this,'operators',[]),__publicField(this,_0x2589dc(0x1d0),[_0x2589dc(0x219)]),__publicField(this,_0x2589dc(0x24d),this['injector'][_0x2589dc(0x264)](exports[_0x2589dc(0x306)]));}[_0x426d7e(0x185)](_0x521fb5,_0x998d7c,_0x3fd6b8){const _0x508edc=_0x426d7e,_0x7942b4=core[_0x508edc(0x1ae)](_0x521fb5[_0x508edc(0x1b1)]);return{'success':_0x7942b4,'formula1':_0x7942b4?'':this[_0x508edc(0x307)]['t'](_0x508edc(0xef))};}async['parseFormula'](_0x3c9b73,_0xed6810,_0x2bb526){return{'formula1':void 0x0,'formula2':void 0x0};}async[_0x426d7e(0x27a)](_0x36c25e,_0x3500ac,_0x3a6045){const _0x4a2218=_0x426d7e,{column:_0x57254a,row:_0x853dc2,unitId:_0x188c61,subUnitId:_0x4307f7}=_0x36c25e,_0x2ced2e=await this['_customFormulaService'][_0x4a2218(0x13e)](_0x188c61,_0x4307f7,_0x853dc2,_0x57254a),_0x74b4c7=getFormulaCellData(_0x2ced2e==null?void 0x0:_0x2ced2e[_0x4a2218(0x297)]),_0x17d5c5=_0x74b4c7==null?void 0x0:_0x74b4c7['v'];return core[_0x4a2218(0x188)][_0x4a2218(0x12b)](_0x17d5c5)&&_0x17d5c5!==''?_0x74b4c7['t']===core[_0x4a2218(0x209)][_0x4a2218(0x2f9)]?!!_0x17d5c5:typeof _0x17d5c5=='boolean'?_0x17d5c5:typeof _0x17d5c5==_0x4a2218(0x237)?!!_0x17d5c5:typeof _0x17d5c5==_0x4a2218(0x202)?isLegalFormulaResult(_0x17d5c5):!!_0x17d5c5:!0x1;}[_0x426d7e(0xe5)](_0x125498){return this['localeService']['t']('dataValidation.custom.error');}};__name(_CustomFormulaValidator,_0x426d7e(0x100));let CustomFormulaValidator=_CustomFormulaValidator;const _ListMultipleValidator=class _ListMultipleValidator extends ListValidator{constructor(){const _0x3d54bc=_0x426d7e;super(...arguments),__publicField(this,'id',core[_0x3d54bc(0x1b3)][_0x3d54bc(0x25e)]),__publicField(this,_0x3d54bc(0x2df),_0x3d54bc(0x1d3)),__publicField(this,_0x3d54bc(0x25f),__name(()=>!0x0,'skipDefaultFontRender'));}};__name(_ListMultipleValidator,_0x426d7e(0x19e));let ListMultipleValidator=_ListMultipleValidator;const _WholeValidator=class _WholeValidator extends dataValidation[_0x426d7e(0x181)]{constructor(){const _0xa13304=_0x426d7e;super(...arguments),__publicField(this,_0xa13304(0x1d8),this[_0xa13304(0x102)][_0xa13304(0x264)](exports[_0xa13304(0x20d)])),__publicField(this,'id',core[_0xa13304(0x1b3)]['WHOLE']),__publicField(this,_0xa13304(0x2df),_0xa13304(0x251)),__publicField(this,'operators',[core[_0xa13304(0x14a)]['BETWEEN'],core['DataValidationOperator'][_0xa13304(0x27c)],core[_0xa13304(0x14a)][_0xa13304(0xea)],core[_0xa13304(0x14a)][_0xa13304(0x2ca)],core[_0xa13304(0x14a)]['LESS_THAN'],core[_0xa13304(0x14a)][_0xa13304(0x2ee)],core[_0xa13304(0x14a)][_0xa13304(0x1f5)],core[_0xa13304(0x14a)][_0xa13304(0xe0)]]),__publicField(this,_0xa13304(0x1d0),[_0xa13304(0x219)]);}[_0x426d7e(0x141)](_0x507c9f){const _0x5b9d7a=_0x426d7e;return!core[_0x5b9d7a(0x188)][_0x5b9d7a(0x1da)](_0x507c9f)&&(core[_0x5b9d7a(0x1ae)](_0x507c9f)||!Number[_0x5b9d7a(0x1bb)](+_0x507c9f)&&Number[_0x5b9d7a(0x28b)](+_0x507c9f));}async[_0x426d7e(0x27a)](_0x3ffece,_0x34508e,_0x2c3625){const _0x5943ed=_0x426d7e,{value:_0x5d4363}=_0x3ffece,_0x1f48bc=getCellValueNumber(_0x5d4363);return!Number[_0x5943ed(0x1bb)](_0x1f48bc)&&Number[_0x5943ed(0x28b)](_0x1f48bc);}[_0x426d7e(0x13c)](_0x5dba82,_0x28353f,_0x4ca179){const {value:_0xe2605e}=_0x5dba82;return{..._0x5dba82,'value':getCellValueNumber(_0xe2605e)};}[_0x426d7e(0x1f1)](_0x455ea6){return _0x455ea6==null?Number['NaN']:+_0x455ea6;}async[_0x426d7e(0x2b5)](_0xb32c9b,_0x2f60d2,_0x317fba){const _0xa8f962=_0x426d7e;var _0x52b11d,_0x4705e3,_0x2a99ef,_0x1b016e,_0x3efb93,_0x2fe103,_0x346fa6,_0x297f37;const _0x2362e8=await this[_0xa8f962(0x1d8)][_0xa8f962(0x178)](_0x2f60d2,_0x317fba,_0xb32c9b[_0xa8f962(0x17b)]),{formula1:_0x5a66e4,formula2:_0x92bff1}=_0xb32c9b;return{'formula1':this[_0xa8f962(0x1f1)](core[_0xa8f962(0x1ae)](_0x5a66e4)?(_0x1b016e=(_0x2a99ef=(_0x4705e3=(_0x52b11d=_0x2362e8==null?void 0x0:_0x2362e8[0x0])==null?void 0x0:_0x52b11d[_0xa8f962(0x297)])==null?void 0x0:_0x4705e3[0x0])==null?void 0x0:_0x2a99ef[0x0])==null?void 0x0:_0x1b016e['v']:_0x5a66e4),'formula2':this[_0xa8f962(0x1f1)](core[_0xa8f962(0x1ae)](_0x92bff1)?(_0x297f37=(_0x346fa6=(_0x2fe103=(_0x3efb93=_0x2362e8==null?void 0x0:_0x2362e8[0x1])==null?void 0x0:_0x3efb93[_0xa8f962(0x297)])==null?void 0x0:_0x2fe103[0x0])==null?void 0x0:_0x346fa6[0x0])==null?void 0x0:_0x297f37['v']:_0x92bff1)};}['validatorFormula'](_0x127e5d,_0xb48dbd,_0x1cc5eb){const _0x5f3ae1=_0x426d7e,_0x45abb4=_0x127e5d[_0x5f3ae1(0x273)];if(!_0x45abb4)return{'success':!0x1};const _0x283804=core[_0x5f3ae1(0x188)]['isDefine'](_0x127e5d[_0x5f3ae1(0x1b1)])&&this[_0x5f3ae1(0x141)](_0x127e5d[_0x5f3ae1(0x1b1)]),_0x488592=core['Tools'][_0x5f3ae1(0x12b)](_0x127e5d[_0x5f3ae1(0x1fc)])&&this['_isFormulaOrInt'](_0x127e5d['formula2']),_0x4a76b0=TWO_FORMULA_OPERATOR_COUNT[_0x5f3ae1(0x240)](_0x45abb4),_0x2f7d6e=this[_0x5f3ae1(0x307)]['t']('dataValidation.validFail.number');return _0x4a76b0?{'success':_0x283804&&_0x488592,'formula1':_0x283804?void 0x0:_0x2f7d6e,'formula2':_0x488592?void 0x0:_0x2f7d6e}:{'success':_0x283804,'formula1':_0x2f7d6e};}async[_0x426d7e(0x2cb)](_0x4869df,_0x2f7135,_0x7007bb){const _0x12e4db=_0x426d7e,{formula1:_0x129028}=_0x2f7135,{value:_0x57b47d}=_0x4869df;return Number[_0x12e4db(0x1bb)](_0x129028)?!0x0:_0x57b47d===_0x129028;}async['validatorIsNotEqual'](_0x15f5b8,_0x71ff21,_0x7995b2){const _0x14ca2a=_0x426d7e,{formula1:_0x406069}=_0x71ff21;return Number[_0x14ca2a(0x1bb)](_0x406069)?!0x0:_0x15f5b8[_0x14ca2a(0x1e3)]!==_0x406069;}async['validatorIsBetween'](_0x37fac6,_0x1c5652,_0x505532){const _0xe4b424=_0x426d7e,{formula1:_0x5f310a,formula2:_0x38ffd3}=_0x1c5652;if(Number[_0xe4b424(0x1bb)](_0x5f310a)||Number[_0xe4b424(0x1bb)](_0x38ffd3))return!0x0;const _0x36f4f5=Math[_0xe4b424(0xe6)](_0x5f310a,_0x38ffd3),_0x53c338=Math[_0xe4b424(0x2dc)](_0x5f310a,_0x38ffd3);return _0x37fac6[_0xe4b424(0x1e3)]>=_0x36f4f5&&_0x37fac6[_0xe4b424(0x1e3)]<=_0x53c338;}async[_0x426d7e(0x269)](_0x4595c7,_0x54a9b9,_0x2a1cd3){const _0x136883=_0x426d7e,{formula1:_0x5d4798,formula2:_0x218ef5}=_0x54a9b9;if(Number[_0x136883(0x1bb)](_0x5d4798)||Number['isNaN'](_0x218ef5))return!0x0;const _0x4fb0fb=Math[_0x136883(0xe6)](_0x5d4798,_0x218ef5),_0x122a7c=Math[_0x136883(0x2dc)](_0x5d4798,_0x218ef5);return _0x4595c7[_0x136883(0x1e3)]<_0x4fb0fb||_0x4595c7[_0x136883(0x1e3)]>_0x122a7c;}async[_0x426d7e(0x169)](_0x1059fb,_0xcd2889,_0x11a9e3){const _0x4b7cca=_0x426d7e,{formula1:_0x2f0635}=_0xcd2889;return Number[_0x4b7cca(0x1bb)](_0x2f0635)?!0x0:_0x1059fb[_0x4b7cca(0x1e3)]>_0x2f0635;}async[_0x426d7e(0x2e4)](_0xfa9568,_0x42b0f8,_0x5da672){const _0x4d5023=_0x426d7e,{formula1:_0xde8f05}=_0x42b0f8;return Number[_0x4d5023(0x1bb)](_0xde8f05)?!0x0:_0xfa9568[_0x4d5023(0x1e3)]>=_0xde8f05;}async[_0x426d7e(0x2da)](_0x4a3c59,_0x46e28c,_0x4f7a42){const _0x1d49b1=_0x426d7e,{formula1:_0x1a1585}=_0x46e28c;return Number[_0x1d49b1(0x1bb)](_0x1a1585)?!0x0:_0x4a3c59[_0x1d49b1(0x1e3)]<_0x1a1585;}async[_0x426d7e(0x21d)](_0x54489e,_0x48944e,_0x3c8f2d){const _0x286d7d=_0x426d7e,{formula1:_0xb8ce4}=_0x48944e;return Number[_0x286d7d(0x1bb)](_0xb8ce4)?!0x0:_0x54489e['value']<=_0xb8ce4;}};__name(_WholeValidator,_0x426d7e(0x2a9));let WholeValidator=_WholeValidator;var __defProp$5=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$5=Object['getOwnPropertyDescriptor'],__decorateClass$5=__name((_0x28ffce,_0x5825e0,_0x55563a,_0x1f8155)=>{for(var _0xc5e842=_0x1f8155>0x1?void 0x0:_0x1f8155?__getOwnPropDesc$5(_0x5825e0,_0x55563a):_0x5825e0,_0x1a3798=_0x28ffce['length']-0x1,_0x5d9d26;_0x1a3798>=0x0;_0x1a3798--)(_0x5d9d26=_0x28ffce[_0x1a3798])&&(_0xc5e842=(_0x1f8155?_0x5d9d26(_0x5825e0,_0x55563a,_0xc5e842):_0x5d9d26(_0xc5e842))||_0xc5e842);return _0x1f8155&&_0xc5e842&&__defProp$5(_0x5825e0,_0x55563a,_0xc5e842),_0xc5e842;},_0x426d7e(0x15d)),__decorateParam$5=__name((_0x2832e9,_0x4164f4)=>(_0x168f22,_0x117a5a)=>_0x4164f4(_0x168f22,_0x117a5a,_0x2832e9),_0x426d7e(0x2ba)),_a5;let DataValidationController=(_a5=class extends core[_0x426d7e(0x12c)]{constructor(_0x51994e,_0x20659c,_0x3fd0a9,_0x2220b9,_0xe593b1,_0x4d0274){const _0x395143=_0x426d7e;super(),this[_0x395143(0x289)]=_0x51994e,this[_0x395143(0x211)]=_0x20659c,this[_0x395143(0x26c)]=_0x3fd0a9,this[_0x395143(0x21c)]=_0x2220b9,this[_0x395143(0x176)]=_0xe593b1,this[_0x395143(0x1fa)]=_0x4d0274,this[_0x395143(0x111)]();}[_0x426d7e(0x111)](){const _0x1946a4=_0x426d7e;this[_0x1946a4(0xcc)](),this[_0x1946a4(0x150)]();}[_0x426d7e(0xcc)](){[DecimalValidator,WholeValidator,TextLengthValidator,DateValidator,CheckboxValidator,ListValidator,ListMultipleValidator,CustomFormulaValidator]['forEach'](_0x5a7a27=>{const _0x2ed8fa=_0x3883,_0x58f612=this[_0x2ed8fa(0x26c)][_0x2ed8fa(0x19b)](_0x5a7a27);this['disposeWithMe'](this[_0x2ed8fa(0x211)][_0x2ed8fa(0x28d)](_0x58f612)),this[_0x2ed8fa(0xc4)](core[_0x2ed8fa(0x1c7)](()=>this[_0x2ed8fa(0x26c)][_0x2ed8fa(0x296)](_0x5a7a27)));});}[_0x426d7e(0x150)](){const _0xff334=_0x426d7e;this[_0xff334(0x176)][_0xff334(0x135)]({'getMutations':__name(_0x56834c=>{const _0x135386=_0xff334;var _0x555506;if(_0x56834c['id']===sheets[_0x135386(0x2d5)]['id']){const _0x160ec3=this[_0x135386(0x289)][_0x135386(0x23f)](core[_0x135386(0x2c7)]['UNIVER_SHEET']),_0x1c0cc1=_0x160ec3[_0x135386(0x1e2)](),_0x4c48e5=_0x160ec3[_0x135386(0x24c)]();if(!_0x4c48e5)throw new Error('No\x20active\x20sheet\x20found');const _0x449453=_0x4c48e5[_0x135386(0x2ad)](),_0x30117a=(_0x555506=this['_selectionManagerService'][_0x135386(0x2d2)]())==null?void 0x0:_0x555506[_0x135386(0xd7)](_0x95431c=>_0x95431c[_0x135386(0x28f)]),_0x402d1b=this[_0x135386(0x1fa)][_0x135386(0x203)](_0x1c0cc1,_0x449453)[_0x135386(0x245)]();_0x30117a&&_0x402d1b['removeRange'](_0x30117a);const _0x23ee1b=_0x402d1b[_0x135386(0x216)](this[_0x135386(0x1fa)][_0x135386(0x2b9)](_0x1c0cc1,_0x449453)),{redoMutations:_0x2bfebe,undoMutations:_0x48f8d5}=getDataValidationDiffMutations(_0x1c0cc1,_0x449453,_0x23ee1b,this['_injector'],_0x135386(0x2a0));return{'undos':_0x48f8d5,'redos':_0x2bfebe};}return{'undos':[],'redos':[]};},'getMutations')});}},__name(_a5,_0x426d7e(0x182)),_a5);DataValidationController=__decorateClass$5([__decorateParam$5(0x0,core[_0x426d7e(0x1e0)]),__decorateParam$5(0x1,core[_0x426d7e(0x147)](dataValidation[_0x426d7e(0x1b5)])),__decorateParam$5(0x2,core[_0x426d7e(0x147)](core['Injector'])),__decorateParam$5(0x3,core[_0x426d7e(0x147)](sheets[_0x426d7e(0x175)])),__decorateParam$5(0x4,core[_0x426d7e(0x147)](sheets[_0x426d7e(0x286)])),__decorateParam$5(0x5,core[_0x426d7e(0x147)](exports[_0x426d7e(0x173)]))],DataValidationController);var P=(_0x4117b4=>(_0x4117b4[_0x4117b4[_0x426d7e(0x259)]=0x0]='View',_0x4117b4[_0x4117b4[_0x426d7e(0x191)]=0x1]=_0x426d7e(0x191),_0x4117b4[_0x4117b4[_0x426d7e(0xcd)]=0x2]='ManageCollaborator',_0x4117b4[_0x4117b4[_0x426d7e(0x14b)]=0x3]=_0x426d7e(0x14b),_0x4117b4[_0x4117b4[_0x426d7e(0x167)]=0x4]=_0x426d7e(0x167),_0x4117b4[_0x4117b4[_0x426d7e(0x1ca)]=0x5]=_0x426d7e(0x1ca),_0x4117b4[_0x4117b4[_0x426d7e(0x130)]=0x6]=_0x426d7e(0x130),_0x4117b4[_0x4117b4['Share']=0x7]=_0x426d7e(0x200),_0x4117b4[_0x4117b4['Export']=0x8]=_0x426d7e(0x2a3),_0x4117b4[_0x4117b4[_0x426d7e(0x10f)]=0x9]='MoveWorksheet',_0x4117b4[_0x4117b4[_0x426d7e(0x299)]=0xa]='DeleteWorksheet',_0x4117b4[_0x4117b4['HideWorksheet']=0xb]='HideWorksheet',_0x4117b4[_0x4117b4[_0x426d7e(0xbf)]=0xc]=_0x426d7e(0xbf),_0x4117b4[_0x4117b4[_0x426d7e(0x2ec)]=0xd]=_0x426d7e(0x2ec),_0x4117b4[_0x4117b4['SetWorksheetStyle']=0xe]=_0x426d7e(0x109),_0x4117b4[_0x4117b4[_0x426d7e(0x2e7)]=0xf]=_0x426d7e(0x2e7),_0x4117b4[_0x4117b4[_0x426d7e(0x152)]=0x10]=_0x426d7e(0x152),_0x4117b4[_0x4117b4[_0x426d7e(0x239)]=0x11]=_0x426d7e(0x239),_0x4117b4[_0x4117b4['Filter']=0x12]=_0x426d7e(0x256),_0x4117b4[_0x4117b4[_0x426d7e(0x129)]=0x13]='PivotTable',_0x4117b4[_0x4117b4[_0x426d7e(0x248)]=0x14]=_0x426d7e(0x248),_0x4117b4[_0x4117b4[_0x426d7e(0x22c)]=0x15]='History',_0x4117b4[_0x4117b4['RwHgtClWdt']=0x16]=_0x426d7e(0xe7),_0x4117b4[_0x4117b4[_0x426d7e(0x2bb)]=0x17]='ViemRwHgtClWdt',_0x4117b4[_0x4117b4['ViewFilter']=0x18]=_0x426d7e(0x197),_0x4117b4[_0x4117b4[_0x426d7e(0x140)]=0x19]=_0x426d7e(0x140),_0x4117b4[_0x4117b4[_0x426d7e(0xfb)]=0x1a]='DeleteSheet',_0x4117b4[_0x4117b4[_0x426d7e(0x1de)]=0x1b]=_0x426d7e(0x1de),_0x4117b4[_0x4117b4[_0x426d7e(0x1e8)]=0x1c]=_0x426d7e(0x1e8),_0x4117b4[_0x4117b4[_0x426d7e(0x1ab)]=0x1d]=_0x426d7e(0x1ab),_0x4117b4[_0x4117b4[_0x426d7e(0x1c2)]=0x1e]=_0x426d7e(0x1c2),_0x4117b4[_0x4117b4['SelectProtectedCells']=0x1f]=_0x426d7e(0xf6),_0x4117b4[_0x4117b4['SelectUnProtectedCells']=0x20]=_0x426d7e(0x133),_0x4117b4[_0x4117b4[_0x426d7e(0x26a)]=0x21]=_0x426d7e(0x26a),_0x4117b4[_0x4117b4[_0x426d7e(0xd6)]=0x22]=_0x426d7e(0xd6),_0x4117b4[_0x4117b4['SetRowStyle']=0x23]=_0x426d7e(0x1c1),_0x4117b4[_0x4117b4['SetColumnStyle']=0x24]=_0x426d7e(0x1a9),_0x4117b4[_0x4117b4[_0x426d7e(0xd0)]=0x25]=_0x426d7e(0xd0),_0x4117b4[_0x4117b4[_0x426d7e(0x305)]=0x26]='InsertColumn',_0x4117b4[_0x4117b4[_0x426d7e(0x28c)]=0x27]=_0x426d7e(0x28c),_0x4117b4[_0x4117b4[_0x426d7e(0x112)]=0x28]=_0x426d7e(0x112),_0x4117b4[_0x4117b4[_0x426d7e(0x25c)]=0x29]=_0x426d7e(0x25c),_0x4117b4[_0x4117b4[_0x426d7e(0x19d)]=0x2a]=_0x426d7e(0x19d),_0x4117b4[_0x4117b4[_0x426d7e(0xf9)]=0x2b]=_0x426d7e(0xf9),_0x4117b4[_0x4117b4['ViewHistory']=0x2c]=_0x426d7e(0x1be),_0x4117b4[_0x4117b4[_0x426d7e(0x168)]=-0x1]=_0x426d7e(0x168),_0x4117b4))(P||{}),__defProp$4=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$4=Object[_0x426d7e(0x2cc)],__decorateClass$4=__name((_0x1bc218,_0x4202bd,_0x24206d,_0x6f3fbb)=>{const _0x5e67e2=_0x426d7e;for(var _0x5b2330=_0x6f3fbb>0x1?void 0x0:_0x6f3fbb?__getOwnPropDesc$4(_0x4202bd,_0x24206d):_0x4202bd,_0x572fee=_0x1bc218[_0x5e67e2(0x1f9)]-0x1,_0x2cc553;_0x572fee>=0x0;_0x572fee--)(_0x2cc553=_0x1bc218[_0x572fee])&&(_0x5b2330=(_0x6f3fbb?_0x2cc553(_0x4202bd,_0x24206d,_0x5b2330):_0x2cc553(_0x5b2330))||_0x5b2330);return _0x6f3fbb&&_0x5b2330&&__defProp$4(_0x4202bd,_0x24206d,_0x5b2330),_0x5b2330;},'__decorateClass$4'),__decorateParam$4=__name((_0x4a99fe,_0x4808ce)=>(_0xe818e3,_0x1cbcd7)=>_0x4808ce(_0xe818e3,_0x1cbcd7,_0x4a99fe),_0x426d7e(0x303)),_a6;exports[_0x426d7e(0x17f)]=(_a6=class extends core[_0x426d7e(0x20c)]{constructor(_0x159626,_0x57889d,_0x5e1c5a){const _0x45ce40=_0x426d7e;super(),this['_univerInstanceService']=_0x159626,this[_0x45ce40(0x16b)]=_0x57889d,this[_0x45ce40(0x2de)]=_0x5e1c5a;}[_0x426d7e(0x247)](_0x2f7f90){const _0x3901e3=_0x426d7e;var _0x549ee0,_0x25e15c;const _0x2da956=this[_0x3901e3(0x2de)][_0x3901e3(0x1a3)](_0x2f7f90);if(!_0x2da956)return!0x0;for(let _0x1e2f53=0x0;_0x1e2f53<_0x2da956['length'];_0x1e2f53++){const _0x5d8fec=_0x2da956[_0x1e2f53];if(typeof _0x5d8fec==_0x3901e3(0x202))continue;const {token:_0x6be070}=_0x5d8fec,_0x584926=engineFormula[_0x3901e3(0x217)](_0x6be070),_0x4ced7c=this[_0x3901e3(0x289)][_0x3901e3(0x23f)](core[_0x3901e3(0x2c7)]['UNIVER_SHEET']);let _0x4549e5=_0x4ced7c[_0x3901e3(0x24c)]();const _0x49f938=_0x4ced7c['getUnitId']();if(_0x584926[_0x3901e3(0x284)]){if(_0x4549e5=_0x4ced7c[_0x3901e3(0x1ac)](_0x584926[_0x3901e3(0x284)]),!_0x4549e5)return!0x1;const _0x22aca2=_0x4549e5==null?void 0x0:_0x4549e5[_0x3901e3(0x2ad)]();if(!this['_permissionService'][_0x3901e3(0x11d)](new sheets[(_0x3901e3(0xc7))](_0x49f938,_0x22aca2)['id']))return!0x1;}if(!_0x4549e5)return!0x1;const {startRow:_0x40ce24,endRow:_0x4b8048,startColumn:_0x5d5be1,endColumn:_0xd1154a}=_0x584926[_0x3901e3(0x28f)];for(let _0xee4627=_0x40ce24;_0xee4627<=_0x4b8048;_0xee4627++)for(let _0xe5754=_0x5d5be1;_0xe5754<=_0xd1154a;_0xe5754++){const _0x249eea=(_0x25e15c=(_0x549ee0=_0x4549e5[_0x3901e3(0x304)](_0xee4627,_0xe5754))==null?void 0x0:_0x549ee0[_0x3901e3(0x2b8)])==null?void 0x0:_0x25e15c[0x0];if((_0x249eea==null?void 0x0:_0x249eea[P[_0x3901e3(0x259)]])===!0x1)return!0x1;}}return!0x0;}},__name(_a6,'DataValidationFormulaController'),_a6),exports[_0x426d7e(0x17f)]=__decorateClass$4([__decorateParam$4(0x0,core[_0x426d7e(0x1e0)]),__decorateParam$4(0x1,core[_0x426d7e(0x23e)]),__decorateParam$4(0x2,core[_0x426d7e(0x147)](engineFormula[_0x426d7e(0x172)]))],exports[_0x426d7e(0x17f)]);var __defProp$3=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$3=Object[_0x426d7e(0x2cc)],__decorateClass$3=__name((_0x28a054,_0x551473,_0x5bd708,_0x5b43fe)=>{const _0x4b8637=_0x426d7e;for(var _0x566019=_0x5b43fe>0x1?void 0x0:_0x5b43fe?__getOwnPropDesc$3(_0x551473,_0x5bd708):_0x551473,_0x537f51=_0x28a054[_0x4b8637(0x1f9)]-0x1,_0x486c15;_0x537f51>=0x0;_0x537f51--)(_0x486c15=_0x28a054[_0x537f51])&&(_0x566019=(_0x5b43fe?_0x486c15(_0x551473,_0x5bd708,_0x566019):_0x486c15(_0x566019))||_0x566019);return _0x5b43fe&&_0x566019&&__defProp$3(_0x551473,_0x5bd708,_0x566019),_0x566019;},'__decorateClass$3'),__decorateParam$3=__name((_0x786aad,_0x3a6975)=>(_0x1650bc,_0x228cb3)=>_0x3a6975(_0x1650bc,_0x228cb3,_0x786aad),'__decorateParam$3'),_a7;let DataValidationRefRangeController=(_a7=class extends core[_0x426d7e(0x20c)]{constructor(_0x399756,_0xc2bc4c,_0x1d8709,_0x139651,_0x3f2720,_0x24ba13){const _0xbda8c3=_0x426d7e;super(),__publicField(this,'_disposableMap',new Map()),__publicField(this,_0xbda8c3(0x26b),__name((_0x2c4b2a,_0x3bbe06,_0x140a89)=>{const _0x4c1f76=_0xbda8c3;this[_0x4c1f76(0x28d)](_0x2c4b2a,_0x3bbe06,_0x140a89),this[_0x4c1f76(0x2aa)](_0x2c4b2a,_0x3bbe06,_0x140a89);},_0xbda8c3(0x26b))),(this[_0xbda8c3(0x1c9)]=_0x399756,this[_0xbda8c3(0x26c)]=_0xc2bc4c,this[_0xbda8c3(0xd8)]=_0x1d8709,this[_0xbda8c3(0x1fe)]=_0x139651,this[_0xbda8c3(0x1cf)]=_0x3f2720,this['_formulaRefRangeService']=_0x24ba13,this['_initRefRange']());}['_getIdWithUnitId'](_0x514e5f,_0x2acb6b,_0x296a3b){return _0x514e5f+'_'+_0x2acb6b+'_'+_0x296a3b;}['registerFormula'](_0x44eb41,_0x441b4c,_0x4d68c2){const _0x505943=_0x426d7e;var _0x943d0b;const _0x265ad3=_0x4d68c2[_0x505943(0x17b)],_0x5c0bbf=this[_0x505943(0x250)](_0x44eb41,_0x441b4c,_0x265ad3),_0x49cf9b=(_0x943d0b=this['_disposableMap'][_0x505943(0x264)](_0x5c0bbf))!=null?_0x943d0b:new Set(),_0x588e08=__name((_0x29b5cb,_0x59ae39)=>{const _0x23270d=_0x505943,_0x41feca=this[_0x23270d(0x1c9)][_0x23270d(0x22a)](_0x44eb41,_0x441b4c,_0x265ad3);if(!_0x41feca)return{'redos':[],'undos':[]};const _0x458b10=_0x41feca[_0x29b5cb];if(!_0x458b10||_0x458b10===_0x59ae39)return{'redos':[],'undos':[]};const _0x4f9fd1={'unitId':_0x44eb41,'subUnitId':_0x441b4c,'ruleId':_0x4d68c2['uid'],'payload':{'type':dataValidation[_0x23270d(0x1d7)][_0x23270d(0x110)],'payload':{'type':_0x41feca[_0x23270d(0x1e6)],'formula1':_0x41feca[_0x23270d(0x1b1)],'formula2':_0x41feca[_0x23270d(0x1fc)],[_0x29b5cb]:_0x59ae39}}},_0x353143={'unitId':_0x44eb41,'subUnitId':_0x441b4c,'ruleId':_0x4d68c2['uid'],'payload':{'type':dataValidation[_0x23270d(0x1d7)][_0x23270d(0x110)],'payload':{'type':_0x41feca[_0x23270d(0x1e6)],'formula1':_0x41feca[_0x23270d(0x1b1)],'formula2':_0x41feca['formula2']}}},_0x29cf75=[{'id':dataValidation[_0x23270d(0x1df)]['id'],'params':_0x4f9fd1}],_0x9514b7=[{'id':dataValidation['UpdateDataValidationMutation']['id'],'params':_0x353143}];return{'redos':_0x29cf75,'undos':_0x9514b7};},'handleFormulaChange');if(_0x4d68c2[_0x505943(0x1e6)]===core[_0x505943(0x1b3)]['CUSTOM']){const _0x13c3d6=this['_dataValidationCustomFormulaService'][_0x505943(0xc5)](_0x44eb41,_0x441b4c,_0x265ad3);if(_0x13c3d6){const _0x1198c0=this['_formulaRefRangeService']['registerFormula'](_0x13c3d6[_0x505943(0x14c)],_0x14afcd=>_0x588e08(_0x505943(0x1b1),_0x14afcd));_0x49cf9b[_0x505943(0x235)](()=>_0x1198c0[_0x505943(0x1b0)]());}}if(_0x4d68c2[_0x505943(0x1e6)]!==core[_0x505943(0x1b3)][_0x505943(0x10b)]){const _0x2f7d74=this[_0x505943(0x1cf)][_0x505943(0xc5)](_0x44eb41,_0x441b4c,_0x265ad3);if(_0x2f7d74){const [_0x236e27,_0x1ee2d2]=_0x2f7d74;if(_0x236e27){const _0x59e11b=this[_0x505943(0x283)]['registerFormula'](_0x236e27[_0x505943(0x242)],_0x3d6c16=>_0x588e08('formula1',_0x3d6c16));_0x49cf9b['add'](()=>_0x59e11b[_0x505943(0x1b0)]());}if(_0x1ee2d2){const _0x2f41eb=this[_0x505943(0x283)][_0x505943(0x2aa)](_0x1ee2d2[_0x505943(0x242)],_0x4b9bd3=>_0x588e08(_0x505943(0x1fc),_0x4b9bd3));_0x49cf9b[_0x505943(0x235)](()=>_0x2f41eb[_0x505943(0x1b0)]());}}}}['register'](_0x4f9f5e,_0x343f51,_0x5ae250){const _0x4b8344=_0x426d7e;var _0x9a027d;const _0x41a0d5=__name(_0x3cac53=>{const _0x16dc08=_0x3883,_0x10ea4a=[..._0x5ae250[_0x16dc08(0xdc)]],_0x594947=_0x10ea4a[_0x16dc08(0xd7)](_0x36eaa2=>sheets['handleCommonDefaultRangeChangeWithEffectRefCommands'](_0x36eaa2,_0x3cac53))[_0x16dc08(0xf5)](_0x888fb9=>!!_0x888fb9)[_0x16dc08(0x1e9)]();if(core[_0x16dc08(0x2d8)](_0x594947,_0x10ea4a))return{'redos':[],'undos':[]};if(_0x594947['length']){const _0x4a3053={'unitId':_0x4f9f5e,'subUnitId':_0x343f51,'ruleId':_0x5ae250['uid'],'payload':{'type':dataValidation[_0x16dc08(0x1d7)][_0x16dc08(0x274)],'payload':_0x594947},'source':_0x16dc08(0x2a0)},_0x326510=[{'id':dataValidation[_0x16dc08(0x1df)]['id'],'params':_0x4a3053}],_0x20b55e=[{'id':dataValidation[_0x16dc08(0x1df)]['id'],'params':{'unitId':_0x4f9f5e,'subUnitId':_0x343f51,'ruleId':_0x5ae250[_0x16dc08(0x17b)],'payload':{'type':dataValidation['UpdateRuleType'][_0x16dc08(0x274)],'payload':_0x10ea4a},'source':_0x16dc08(0x2a0)}}];return{'redos':_0x326510,'undos':_0x20b55e};}else{const _0x1701c4={'unitId':_0x4f9f5e,'subUnitId':_0x343f51,'ruleId':_0x5ae250[_0x16dc08(0x17b)]},_0x59616b=[{'id':dataValidation[_0x16dc08(0x2d4)]['id'],'params':_0x1701c4}],_0x547e92=removeDataValidationUndoFactory(this[_0x16dc08(0x26c)],_0x1701c4);return{'redos':_0x59616b,'undos':_0x547e92};}},'handleRangeChange'),_0x56f963=[];_0x5ae250[_0x4b8344(0xdc)][_0x4b8344(0x262)](_0x2fad04=>{const _0x414da4=_0x4b8344,_0x5930aa=this[_0x414da4(0xd8)][_0x414da4(0x158)](_0x2fad04,_0x41a0d5,_0x4f9f5e,_0x343f51);_0x56f963['push'](()=>_0x5930aa[_0x414da4(0x1b0)]());});const _0x2c96d4=this[_0x4b8344(0x250)](_0x4f9f5e,_0x343f51,_0x5ae250[_0x4b8344(0x17b)]),_0x219705=(_0x9a027d=this[_0x4b8344(0x27b)][_0x4b8344(0x264)](_0x2c96d4))!=null?_0x9a027d:new Set();_0x219705[_0x4b8344(0x235)](()=>_0x56f963[_0x4b8344(0x262)](_0x55b32a=>_0x55b32a())),this['_disposableMap'][_0x4b8344(0x15c)](_0x2c96d4,_0x219705);}['_initRefRange'](){const _0x455bd6=_0x426d7e,_0x5c9034=this['_dataValidationModel'][_0x455bd6(0xdf)]();for(const [_0x116edb,_0x1b3664]of _0x5c9034)for(const [_0x53bbc1,_0x7f6fca]of _0x1b3664)for(const _0x21c7a0 of _0x7f6fca)this['registerRule'](_0x116edb,_0x53bbc1,_0x21c7a0);this[_0x455bd6(0xc4)](this[_0x455bd6(0x1c9)][_0x455bd6(0xd3)][_0x455bd6(0x2a4)](_0x37c32e=>{const _0xfa9cab=_0x455bd6,{unitId:_0x401a2b,subUnitId:_0x302b34,rule:_0x1e273f}=_0x37c32e;switch(_0x37c32e[_0xfa9cab(0x1e6)]){case _0xfa9cab(0x235):{const _0x1efd1a=_0x37c32e[_0xfa9cab(0x293)];this['registerRule'](_0x37c32e[_0xfa9cab(0x16d)],_0x37c32e[_0xfa9cab(0x15f)],_0x1efd1a);break;}case _0xfa9cab(0x11a):{const _0x50c470=this['_disposableMap'][_0xfa9cab(0x264)](this[_0xfa9cab(0x250)](_0x401a2b,_0x302b34,_0x1e273f[_0xfa9cab(0x17b)]));_0x50c470&&_0x50c470[_0xfa9cab(0x262)](_0x2844b0=>_0x2844b0());break;}case _0xfa9cab(0x2f5):{const _0x4d4ebd=_0x37c32e[_0xfa9cab(0x293)],_0x184deb=this[_0xfa9cab(0x27b)]['get'](this[_0xfa9cab(0x250)](_0x401a2b,_0x302b34,_0x4d4ebd[_0xfa9cab(0x17b)]));_0x184deb&&_0x184deb['forEach'](_0x28da1a=>_0x28da1a()),this[_0xfa9cab(0x26b)](_0x37c32e[_0xfa9cab(0x16d)],_0x37c32e[_0xfa9cab(0x15f)],_0x4d4ebd);break;}}})),this[_0x455bd6(0xc4)](core['toDisposable'](()=>{const _0x5d4710=_0x455bd6;this[_0x5d4710(0x27b)]['forEach'](_0x3008fc=>{_0x3008fc['forEach'](_0xc5ad17=>_0xc5ad17());}),this[_0x5d4710(0x27b)][_0x5d4710(0x2c4)]();}));}},__name(_a7,_0x426d7e(0x2f2)),_a7);DataValidationRefRangeController=__decorateClass$3([__decorateParam$3(0x0,core[_0x426d7e(0x147)](exports[_0x426d7e(0x173)])),__decorateParam$3(0x1,core[_0x426d7e(0x147)](core['Injector'])),__decorateParam$3(0x2,core[_0x426d7e(0x147)](sheets['RefRangeService'])),__decorateParam$3(0x3,core[_0x426d7e(0x147)](exports[_0x426d7e(0x306)])),__decorateParam$3(0x4,core[_0x426d7e(0x147)](exports[_0x426d7e(0x20d)])),__decorateParam$3(0x5,core[_0x426d7e(0x147)](sheetsFormula[_0x426d7e(0xd5)]))],DataValidationRefRangeController);var __defProp$2=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$2=Object[_0x426d7e(0x2cc)],__decorateClass$2=__name((_0x219889,_0x9bd93e,_0x2ab488,_0x2e9765)=>{const _0x4db7cd=_0x426d7e;for(var _0x59a58a=_0x2e9765>0x1?void 0x0:_0x2e9765?__getOwnPropDesc$2(_0x9bd93e,_0x2ab488):_0x9bd93e,_0xf08df5=_0x219889[_0x4db7cd(0x1f9)]-0x1,_0x582b89;_0xf08df5>=0x0;_0xf08df5--)(_0x582b89=_0x219889[_0xf08df5])&&(_0x59a58a=(_0x2e9765?_0x582b89(_0x9bd93e,_0x2ab488,_0x59a58a):_0x582b89(_0x59a58a))||_0x59a58a);return _0x2e9765&&_0x59a58a&&__defProp$2(_0x9bd93e,_0x2ab488,_0x59a58a),_0x59a58a;},_0x426d7e(0x1a8)),__decorateParam$2=__name((_0x598240,_0x4c731b)=>(_0x3b4b51,_0x2be64a)=>_0x4c731b(_0x3b4b51,_0x2be64a,_0x598240),_0x426d7e(0x198)),_a8;let SheetDataValidationSheetController=(_a8=class extends core[_0x426d7e(0x20c)]{constructor(_0x49eb3f,_0x2db6d7,_0x4301a4){const _0x3da23b=_0x426d7e;super(),this['_sheetInterceptorService']=_0x49eb3f,this[_0x3da23b(0x289)]=_0x2db6d7,this[_0x3da23b(0x1fa)]=_0x4301a4,this[_0x3da23b(0x2ea)]();}[_0x426d7e(0x2ea)](){const _0x2418fc=_0x426d7e;this[_0x2418fc(0xc4)](this[_0x2418fc(0x176)][_0x2418fc(0x135)]({'getMutations':__name(_0x140147=>{const _0x4afe75=_0x2418fc;var _0x4e57cc;if(_0x140147['id']===sheets[_0x4afe75(0x121)]['id']){const _0x1f19cb=_0x140147[_0x4afe75(0x1a4)],_0x1cec73=_0x1f19cb[_0x4afe75(0x16d)]||this[_0x4afe75(0x289)][_0x4afe75(0x23f)](core[_0x4afe75(0x2c7)][_0x4afe75(0x2a6)])['getUnitId'](),_0x400ccd=this[_0x4afe75(0x289)][_0x4afe75(0x2c9)](_0x1cec73);if(!_0x400ccd)return{'redos':[],'undos':[]};const _0x125e0d=_0x1f19cb[_0x4afe75(0x15f)]||((_0x4e57cc=_0x400ccd[_0x4afe75(0x24c)]())==null?void 0x0:_0x4e57cc[_0x4afe75(0x2ad)]());if(!_0x125e0d)return{'redos':[],'undos':[]};const _0x187e55=this[_0x4afe75(0x1fa)][_0x4afe75(0x2b9)](_0x1cec73,_0x125e0d);if(_0x187e55[_0x4afe75(0x1f9)]===0x0)return{'redos':[],'undos':[]};const _0xbd0b40=_0x187e55[_0x4afe75(0xd7)](_0x4a4879=>_0x4a4879[_0x4afe75(0x17b)]),_0x4498e3={'unitId':_0x1cec73,'subUnitId':_0x125e0d,'ruleId':_0xbd0b40,'source':_0x4afe75(0x2a0)},_0x3c86c5={'unitId':_0x1cec73,'subUnitId':_0x125e0d,'rule':[..._0x187e55],'source':_0x4afe75(0x2a0)};return{'redos':[{'id':dataValidation[_0x4afe75(0x2d4)]['id'],'params':_0x4498e3}],'undos':[{'id':dataValidation[_0x4afe75(0x10a)]['id'],'params':_0x3c86c5}]};}return{'redos':[],'undos':[]};},_0x2418fc(0x233))}));}},__name(_a8,_0x426d7e(0x1d9)),_a8);SheetDataValidationSheetController=__decorateClass$2([__decorateParam$2(0x0,core[_0x426d7e(0x147)](sheets['SheetInterceptorService'])),__decorateParam$2(0x1,core['Inject'](core['IUniverInstanceService'])),__decorateParam$2(0x2,core[_0x426d7e(0x147)](exports[_0x426d7e(0x173)]))],SheetDataValidationSheetController);var __defProp$1=Object[_0x426d7e(0x2d0)],__getOwnPropDesc$1=Object[_0x426d7e(0x2cc)],__decorateClass$1=__name((_0x6973cf,_0x196e39,_0x7694fb,_0x3cb6af)=>{const _0x307dd7=_0x426d7e;for(var _0xc4df03=_0x3cb6af>0x1?void 0x0:_0x3cb6af?__getOwnPropDesc$1(_0x196e39,_0x7694fb):_0x196e39,_0x1df755=_0x6973cf[_0x307dd7(0x1f9)]-0x1,_0x3466fa;_0x1df755>=0x0;_0x1df755--)(_0x3466fa=_0x6973cf[_0x1df755])&&(_0xc4df03=(_0x3cb6af?_0x3466fa(_0x196e39,_0x7694fb,_0xc4df03):_0x3466fa(_0xc4df03))||_0xc4df03);return _0x3cb6af&&_0xc4df03&&__defProp$1(_0x196e39,_0x7694fb,_0xc4df03),_0xc4df03;},'__decorateClass$1'),__decorateParam$1=__name((_0x2b4dcd,_0x28f1c8)=>(_0x21b8bd,_0x43db79)=>_0x28f1c8(_0x21b8bd,_0x43db79,_0x2b4dcd),'__decorateParam$1'),_a9;exports[_0x426d7e(0x221)]=(_a9=class{constructor(_0x3c54f6,_0x497670,_0x442cc9){const _0x22bef0=_0x426d7e;this[_0x22bef0(0x289)]=_0x3c54f6,this[_0x22bef0(0x1fa)]=_0x497670,this[_0x22bef0(0x2ab)]=_0x442cc9;}async[_0x426d7e(0x18b)](_0x42be3c,_0x58826a,_0xc36f11,_0x35bb79){const _0x4dde38=_0x426d7e,_0x59b1aa=this[_0x4dde38(0x289)]['getUnit'](_0x42be3c,core['UniverInstanceType'][_0x4dde38(0x2a6)]);if(!_0x59b1aa)throw new Error('cannot\x20find\x20current\x20workbook,\x20unitId:\x20'+_0x42be3c);const _0x1a3764=_0x59b1aa['getSheetBySheetId'](_0x58826a);if(!_0x1a3764)throw new Error(_0x4dde38(0x220)+_0x58826a);if(!core['Tools'][_0x4dde38(0x12b)](_0xc36f11)||!core[_0x4dde38(0x188)]['isDefine'](_0x35bb79))throw new Error('row\x20or\x20col\x20is\x20not\x20defined,\x20row:\x20'+_0xc36f11+_0x4dde38(0x143)+_0x35bb79);const _0x3bf8d1=_0x1a3764['getCell'](_0xc36f11,_0x35bb79),_0x1f91fc=this['_sheetDataValidationModel'][_0x4dde38(0x1af)](_0x42be3c,_0x58826a,_0xc36f11,_0x35bb79);return _0x1f91fc?new Promise(_0x54b8d6=>{const _0x50b5ab=_0x4dde38;this[_0x50b5ab(0x1fa)][_0x50b5ab(0x2ac)](_0x3bf8d1,_0x1f91fc,{'unitId':_0x42be3c,'subUnitId':_0x58826a,'row':_0xc36f11,'col':_0x35bb79,'worksheet':_0x1a3764,'workbook':_0x59b1aa},_0x54b8d6);}):core[_0x4dde38(0x19a)][_0x4dde38(0x114)];}['validatorRanges'](_0x54f892,_0x3aa4a9,_0x5b50f9){const _0x463059=_0x426d7e;return Promise['all'](_0x5b50f9[_0x463059(0xd7)](_0x426c5c=>{const _0x129e3c=_0x463059,_0x32419b=[];return core[_0x129e3c(0x227)][_0x129e3c(0x298)](_0x426c5c,(_0x4579b7,_0x1d90ec)=>{const _0x107fb0=_0x129e3c;_0x32419b[_0x107fb0(0x2a1)](this[_0x107fb0(0x18b)](_0x54f892,_0x3aa4a9,_0x4579b7,_0x1d90ec));}),_0x32419b;}));}async[_0x426d7e(0x25a)](_0x24fcc8,_0x1d1009){const _0x5b8463=_0x426d7e,_0x3f773f=this['_sheetDataValidationModel'][_0x5b8463(0x2b9)](_0x24fcc8,_0x1d1009);return await Promise[_0x5b8463(0x184)](_0x3f773f['map'](_0x394cdb=>Promise[_0x5b8463(0x184)](_0x394cdb[_0x5b8463(0xdc)][_0x5b8463(0xd7)](_0x5d78c2=>{const _0x53ce45=_0x5b8463,_0x3d5106=[];return core[_0x53ce45(0x227)]['foreach'](_0x5d78c2,(_0x324e05,_0x78a614)=>{const _0x41d170=_0x53ce45;_0x3d5106[_0x41d170(0x2a1)](this['validatorCell'](_0x24fcc8,_0x1d1009,_0x324e05,_0x78a614));}),_0x3d5106;})))),this[_0x5b8463(0x2ab)]['ensureCache'](_0x24fcc8,_0x1d1009);}async[_0x426d7e(0x2f1)](_0x157fd9){const _0x5ec4b3=_0x426d7e,_0x58001d=this[_0x5ec4b3(0x1fa)][_0x5ec4b3(0x2f7)](_0x157fd9),_0x5e9523=await Promise['all'](_0x58001d[_0x5ec4b3(0xd7)](_0x161cc6=>this[_0x5ec4b3(0x25a)](_0x157fd9,_0x161cc6))),_0x10e844={};return _0x5e9523['forEach']((_0x4f752a,_0x2d603a)=>{_0x10e844[_0x58001d[_0x2d603a]]=_0x4f752a;}),_0x10e844;}[_0x426d7e(0x18e)](_0x135777,_0x3daf23,_0x18c0fd){const _0x1c9c0a=_0x426d7e,_0x461dca=this[_0x1c9c0a(0x1fa)][_0x1c9c0a(0x203)](_0x135777,_0x3daf23),_0x157571=new Set();return _0x18c0fd[_0x1c9c0a(0x262)](_0x42b8e3=>{const _0x42d583=_0x1c9c0a;core[_0x42d583(0x227)][_0x42d583(0x298)](_0x42b8e3,(_0x4cbeff,_0x1bb923)=>{const _0x4ccc1e=_0x42d583,_0x37d3c1=_0x461dca['getValue'](_0x4cbeff,_0x1bb923);_0x37d3c1&&_0x157571[_0x4ccc1e(0x235)](_0x37d3c1);});}),Array[_0x1c9c0a(0x116)](_0x157571)['map'](_0x5cf9b8=>this[_0x1c9c0a(0x1fa)][_0x1c9c0a(0x22a)](_0x135777,_0x3daf23,_0x5cf9b8))[_0x1c9c0a(0xf5)](Boolean);}[_0x426d7e(0x2be)](_0x37f455,_0x356360,_0x24f3bf){const _0x4b1b93=_0x426d7e;return this[_0x4b1b93(0x18e)](_0x37f455,_0x356360,_0x24f3bf)[0x0];}},__name(_a9,'SheetsDataValidationValidatorService'),_a9),exports['SheetsDataValidationValidatorService']=__decorateClass$1([__decorateParam$1(0x0,core[_0x426d7e(0x1e0)]),__decorateParam$1(0x1,core[_0x426d7e(0x147)](exports[_0x426d7e(0x173)])),__decorateParam$1(0x2,core[_0x426d7e(0x147)](DataValidationCacheService))],exports[_0x426d7e(0x221)]);var __defProp2=Object[_0x426d7e(0x2d0)],__getOwnPropDesc=Object[_0x426d7e(0x2cc)],__defNormalProp2=__name((_0xcc3e2a,_0x13c73d,_0x1872da)=>_0x13c73d in _0xcc3e2a?__defProp2(_0xcc3e2a,_0x13c73d,{'enumerable':!0x0,'configurable':!0x0,'writable':!0x0,'value':_0x1872da}):_0xcc3e2a[_0x13c73d]=_0x1872da,_0x426d7e(0x2bd)),__decorateClass=__name((_0x3bbb46,_0x42cda4,_0x7cd895,_0x36c793)=>{const _0x5ae188=_0x426d7e;for(var _0x55efed=_0x36c793>0x1?void 0x0:_0x36c793?__getOwnPropDesc(_0x42cda4,_0x7cd895):_0x42cda4,_0x2c2637=_0x3bbb46[_0x5ae188(0x1f9)]-0x1,_0x3428d0;_0x2c2637>=0x0;_0x2c2637--)(_0x3428d0=_0x3bbb46[_0x2c2637])&&(_0x55efed=(_0x36c793?_0x3428d0(_0x42cda4,_0x7cd895,_0x55efed):_0x3428d0(_0x55efed))||_0x55efed);return _0x36c793&&_0x55efed&&__defProp2(_0x42cda4,_0x7cd895,_0x55efed),_0x55efed;},_0x426d7e(0x223)),__decorateParam=__name((_0xdc1fbc,_0x444f49)=>(_0x1b5f75,_0x51303a)=>_0x444f49(_0x1b5f75,_0x51303a,_0xdc1fbc),_0x426d7e(0x18f)),__publicField2=__name((_0x515470,_0x187cb2,_0x48f096)=>__defNormalProp2(_0x515470,typeof _0x187cb2!=_0x426d7e(0x2e3)?_0x187cb2+'':_0x187cb2,_0x48f096),_0x426d7e(0x17a)),_a10;exports[_0x426d7e(0x1c5)]=(_a10=class extends core[_0x426d7e(0x270)]{constructor(_0x35e8b5=void 0x0,_0x572db9,_0x2e93ba){const _0xa76d85=_0x426d7e;super(),this[_0xa76d85(0x26c)]=_0x572db9,this[_0xa76d85(0x170)]=_0x2e93ba;}[_0x426d7e(0x1ea)](){const _0x520611=_0x426d7e;[[DataValidationCacheService],[exports[_0x520611(0x20d)]],[exports[_0x520611(0x306)]],[exports[_0x520611(0x221)]],[exports[_0x520611(0x173)]],[DataValidationController],[DataValidationRefRangeController],[exports[_0x520611(0x17f)]],[SheetDataValidationSheetController]][_0x520611(0x262)](_0x4087ed=>{const _0x14d45d=_0x520611;this[_0x14d45d(0x26c)]['add'](_0x4087ed);}),[AddSheetDataValidationCommand,UpdateSheetDataValidationRangeCommand,UpdateSheetDataValidationSettingCommand,UpdateSheetDataValidationOptionsCommand,RemoveSheetDataValidationCommand,RemoveSheetAllDataValidationCommand,ClearRangeDataValidationCommand][_0x520611(0x262)](_0x28ec04=>{const _0x1ba962=_0x520611;this[_0x1ba962(0x170)]['registerCommand'](_0x28ec04);}),this[_0x520611(0x26c)]['get'](DataValidationRefRangeController);}['onReady'](){const _0x14753b=_0x426d7e;this[_0x14753b(0x26c)]['get'](SheetDataValidationSheetController);}['onRendered'](){const _0x5747d3=_0x426d7e;this[_0x5747d3(0x26c)][_0x5747d3(0x264)](DataValidationController),this[_0x5747d3(0x26c)][_0x5747d3(0x264)](exports[_0x5747d3(0x17f)]);}},__name(_a10,_0x426d7e(0x1c5)),_a10),__publicField2(exports[_0x426d7e(0x1c5)],'pluginName',DATA_VALIDATION_PLUGIN_NAME),__publicField2(exports['UniverSheetsDataValidationPlugin'],_0x426d7e(0x1e6),core[_0x426d7e(0x2c7)][_0x426d7e(0x2a6)]),exports[_0x426d7e(0x1c5)]=__decorateClass([core['DependentOn'](sheetsNumfmt[_0x426d7e(0x207)],dataValidation['UniverDataValidationPlugin']),__decorateParam(0x1,core[_0x426d7e(0x147)](core[_0x426d7e(0x115)])),__decorateParam(0x2,core[_0x426d7e(0x224)])],exports[_0x426d7e(0x1c5)]);function createDefaultNewRule(_0x570aa6){const _0x5a536b=_0x426d7e,_0x3154dc=_0x570aa6[_0x5a536b(0x264)](sheets[_0x5a536b(0x175)])[_0x5a536b(0x2d2)]()['map'](_0xcf296c=>_0xcf296c[_0x5a536b(0x28f)]);return{'uid':core['Tools']['generateRandomId'](0x6),'type':core[_0x5a536b(0x1b3)][_0x5a536b(0x113)],'operator':core[_0x5a536b(0x14a)]['EQUAL'],'formula1':_0x5a536b(0x243),'ranges':_0x3154dc!=null?_0x3154dc:[{'startColumn':0x0,'endColumn':0x0,'startRow':0x0,'endRow':0x0}]};}__name(createDefaultNewRule,_0x426d7e(0x1b6)),Object[_0x426d7e(0x2d0)](exports,_0x426d7e(0x11f),{'enumerable':!0x0,'get':__name(()=>dataValidation['DataValidationModel'],_0x426d7e(0x264))}),exports['AddSheetDataValidationCommand']=AddSheetDataValidationCommand,exports[_0x426d7e(0x160)]=CHECKBOX_FORMULA_1,exports['CHECKBOX_FORMULA_2']=CHECKBOX_FORMULA_2,exports[_0x426d7e(0x148)]=CheckboxValidator,exports[_0x426d7e(0xe1)]=ClearRangeDataValidationCommand,exports[_0x426d7e(0x1e7)]=DATA_VALIDATION_PLUGIN_NAME,exports['DataValidationCacheService']=DataValidationCacheService,exports[_0x426d7e(0x23b)]=DateValidator,exports[_0x426d7e(0x19e)]=ListMultipleValidator,exports[_0x426d7e(0x154)]=ListValidator,exports[_0x426d7e(0x22e)]=RemoveSheetAllDataValidationCommand,exports[_0x426d7e(0xdb)]=RemoveSheetDataValidationCommand,exports['UpdateSheetDataValidationOptionsCommand']=UpdateSheetDataValidationOptionsCommand,exports[_0x426d7e(0x300)]=UpdateSheetDataValidationRangeCommand,exports[_0x426d7e(0x18c)]=UpdateSheetDataValidationSettingCommand,exports[_0x426d7e(0x1b6)]=createDefaultNewRule,exports[_0x426d7e(0x280)]=deserializeListOptions,exports[_0x426d7e(0x1f6)]=getCellValueOrigin,exports['getDataValidationCellValue']=getDataValidationCellValue,exports[_0x426d7e(0x17e)]=getDataValidationDiffMutations,exports[_0x426d7e(0x1ba)]=getFormulaCellData,exports['getFormulaResult']=getFormulaResult,exports[_0x426d7e(0x16e)]=serializeListOptions,exports[_0x426d7e(0x1c6)]=transformCheckboxValue;