@univerjs/sheets-data-validation 0.24.0 → 0.25.0-insiders.20260608-e4336f7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/facade.js +114 -128
- package/lib/cjs/index.js +185 -160
- package/lib/cjs/locale/ar-SA.js +139 -0
- package/lib/cjs/locale/ca-ES.js +139 -0
- package/lib/cjs/locale/de-DE.js +139 -0
- package/lib/cjs/locale/en-US.js +154 -0
- package/lib/cjs/locale/es-ES.js +139 -0
- package/lib/cjs/locale/fa-IR.js +139 -0
- package/lib/cjs/locale/fr-FR.js +139 -0
- package/lib/cjs/locale/id-ID.js +139 -0
- package/lib/cjs/locale/it-IT.js +139 -0
- package/lib/cjs/locale/ja-JP.js +139 -0
- package/lib/cjs/locale/ko-KR.js +139 -0
- package/lib/cjs/locale/pl-PL.js +139 -0
- package/lib/cjs/locale/pt-BR.js +139 -0
- package/lib/cjs/locale/ru-RU.js +139 -0
- package/lib/cjs/locale/sk-SK.js +139 -0
- package/lib/cjs/locale/vi-VN.js +139 -0
- package/lib/cjs/locale/zh-CN.js +139 -0
- package/lib/cjs/locale/zh-HK.js +139 -0
- package/lib/cjs/locale/zh-TW.js +139 -0
- package/lib/es/facade.js +115 -129
- package/lib/es/index.js +183 -156
- package/lib/es/locale/ar-SA.js +138 -0
- package/lib/es/locale/ca-ES.js +138 -0
- package/lib/es/locale/de-DE.js +138 -0
- package/lib/es/locale/en-US.js +153 -0
- package/lib/es/locale/es-ES.js +138 -0
- package/lib/es/locale/fa-IR.js +138 -0
- package/lib/es/locale/fr-FR.js +138 -0
- package/lib/es/locale/id-ID.js +138 -0
- package/lib/es/locale/it-IT.js +138 -0
- package/lib/es/locale/ja-JP.js +138 -0
- package/lib/es/locale/ko-KR.js +138 -0
- package/lib/es/locale/pl-PL.js +138 -0
- package/lib/es/locale/pt-BR.js +138 -0
- package/lib/es/locale/ru-RU.js +138 -0
- package/lib/es/locale/sk-SK.js +138 -0
- package/lib/es/locale/vi-VN.js +138 -0
- package/lib/es/locale/zh-CN.js +138 -0
- package/lib/es/locale/zh-HK.js +138 -0
- package/lib/es/locale/zh-TW.js +138 -0
- package/lib/facade.js +115 -129
- package/lib/index.js +183 -156
- package/lib/locale/ar-SA.js +138 -0
- package/lib/locale/ca-ES.js +138 -0
- package/lib/locale/de-DE.js +138 -0
- package/lib/locale/en-US.js +153 -0
- package/lib/locale/es-ES.js +138 -0
- package/lib/locale/fa-IR.js +138 -0
- package/lib/locale/fr-FR.js +138 -0
- package/lib/locale/id-ID.js +138 -0
- package/lib/locale/it-IT.js +138 -0
- package/lib/locale/ja-JP.js +138 -0
- package/lib/locale/ko-KR.js +138 -0
- package/lib/locale/pl-PL.js +138 -0
- package/lib/locale/pt-BR.js +138 -0
- package/lib/locale/ru-RU.js +138 -0
- package/lib/locale/sk-SK.js +138 -0
- package/lib/locale/vi-VN.js +138 -0
- package/lib/locale/zh-CN.js +138 -0
- package/lib/locale/zh-HK.js +138 -0
- package/lib/locale/zh-TW.js +138 -0
- package/lib/types/facade/f-data-validation-builder.d.ts +50 -25
- package/lib/types/facade/f-data-validation.d.ts +26 -13
- package/lib/types/facade/f-range.d.ts +10 -5
- package/lib/types/facade/f-univer.d.ts +2 -1
- package/lib/types/facade/f-workbook.d.ts +1 -43
- package/lib/types/facade/f-worksheet.d.ts +8 -9
- package/lib/types/index.d.ts +5 -5
- package/lib/types/locale/ar-SA.d.ts +18 -0
- package/lib/types/locale/ca-ES.d.ts +18 -0
- package/lib/types/locale/de-DE.d.ts +18 -0
- package/lib/types/locale/en-US.d.ts +156 -0
- package/lib/types/locale/es-ES.d.ts +18 -0
- package/lib/types/locale/fa-IR.d.ts +18 -0
- package/lib/types/locale/fr-FR.d.ts +18 -0
- package/lib/types/locale/id-ID.d.ts +18 -0
- package/lib/types/locale/it-IT.d.ts +18 -0
- package/lib/types/locale/ja-JP.d.ts +18 -0
- package/lib/types/locale/ko-KR.d.ts +18 -0
- package/lib/types/locale/pl-PL.d.ts +18 -0
- package/lib/types/locale/pt-BR.d.ts +18 -0
- package/lib/types/locale/ru-RU.d.ts +18 -0
- package/lib/types/locale/sk-SK.d.ts +18 -0
- package/lib/types/locale/vi-VN.d.ts +18 -0
- package/lib/types/locale/zh-CN.d.ts +18 -0
- package/lib/types/locale/zh-HK.d.ts +18 -0
- package/lib/types/locale/zh-TW.d.ts +18 -0
- package/lib/types/types/const/operator-text-map.d.ts +2 -1
- package/lib/types/validators/any-validator.d.ts +2 -2
- package/lib/types/validators/base-sheet-validator.d.ts +26 -0
- package/lib/types/validators/checkbox-validator.d.ts +2 -2
- package/lib/types/validators/custom-validator.d.ts +2 -2
- package/lib/types/validators/date-validator.d.ts +2 -2
- package/lib/types/validators/decimal-validator.d.ts +2 -2
- package/lib/types/validators/list-validator.d.ts +2 -2
- package/lib/types/validators/text-length-validator.d.ts +2 -2
- package/lib/types/validators/util.d.ts +0 -2
- package/lib/types/validators/whole-validator.d.ts +2 -2
- package/lib/umd/facade.js +1 -1
- package/lib/umd/index.js +1 -1
- package/lib/umd/locale/ar-SA.js +1 -0
- package/lib/umd/locale/ca-ES.js +1 -0
- package/lib/umd/locale/de-DE.js +1 -0
- package/lib/umd/locale/en-US.js +1 -0
- package/lib/umd/locale/es-ES.js +1 -0
- package/lib/umd/locale/fa-IR.js +1 -0
- package/lib/umd/locale/fr-FR.js +1 -0
- package/lib/umd/locale/id-ID.js +1 -0
- package/lib/umd/locale/it-IT.js +1 -0
- package/lib/umd/locale/ja-JP.js +1 -0
- package/lib/umd/locale/ko-KR.js +1 -0
- package/lib/umd/locale/pl-PL.js +1 -0
- package/lib/umd/locale/pt-BR.js +1 -0
- package/lib/umd/locale/ru-RU.js +1 -0
- package/lib/umd/locale/sk-SK.js +1 -0
- package/lib/umd/locale/vi-VN.js +1 -0
- package/lib/umd/locale/zh-CN.js +1 -0
- package/lib/umd/locale/zh-HK.js +1 -0
- package/lib/umd/locale/zh-TW.js +1 -0
- package/package.json +14 -9
- package/LICENSE +0 -176
package/lib/umd/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`@univerjs/core`),require(`@univerjs/data-validation`),require(`@univerjs/engine-formula`),require(`@univerjs/sheets`),require(`rxjs`),require(`@univerjs/protocol`),require(`@univerjs/sheets-formula`)):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/data-validation`,`@univerjs/engine-formula`,`@univerjs/sheets`,`rxjs`,`@univerjs/protocol`,`@univerjs/sheets-formula`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsDataValidation={},e.UniverCore,e.UniverDataValidation,e.UniverEngineFormula,e.UniverSheets,e.rxjs,e.UniverProtocol,e.UniverSheetsFormula))})(this,function(e,t,n,r,i,a,o,s){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});function c(e){"@babel/helpers - typeof";return c=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},c(e)}function l(e,t){if(c(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(c(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function u(e){var t=l(e,`string`);return c(t)==`symbol`?t:t+``}function d(e,t,n){return(t=u(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function f(e,t){return function(n,r){t(n,r,e)}}function p(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let m=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._univerInstanceService=t,this._sheetDataValidationModel=n,d(this,`_cacheMatrix`,new Map),d(this,`_dirtyRanges$`,new a.Subject),d(this,`dirtyRanges$`,this._dirtyRanges$.asObservable()),this._initDirtyRanges(),this._initSheetRemove()}_initDirtyRanges(){this.disposeWithMe(this._commandService.onCommandExecuted((e,n)=>{if(e.id===i.SetRangeValuesMutation.id&&!(n!=null&&n.onlyLocal)){let{cellValue:n,unitId:r,subUnitId:i}=e.params;if(n){let e=new t.ObjectMatrix(n).getDataRange();if(e.endRow===-1)return;let a=this._sheetDataValidationModel.getRules(r,i),o=[];for(let e of a)o.push(...e.ranges);let s=[];for(let n of o){let r=(0,t.getIntersectRange)(n,e);r&&s.push(r)}s.length&&this.markRangeDirty(r,i,s,!0)}}}))}_initSheetRemove(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===i.RemoveSheetMutation.id){var t;let{unitId:n,subUnitId:r}=e.params;(t=this._cacheMatrix.get(n))==null||t.delete(r)}})),this.disposeWithMe(this._univerInstanceService.unitDisposed$.subscribe(e=>{e.type===t.UniverInstanceType.UNIVER_SHEET&&this._cacheMatrix.delete(e.getUnitId())}))}_ensureCache(e,n){let r=this._cacheMatrix.get(e);r||(r=new Map,this._cacheMatrix.set(e,r));let i=r.get(n);return i||(i=new t.ObjectMatrix,r.set(n,i)),i}ensureCache(e,t){return this._ensureCache(e,t)}addRule(e,t,n){this.markRangeDirty(e,t,n.ranges)}removeRule(e,t,n){this._deleteRange(e,t,n.ranges)}markRangeDirty(e,n,r,i){let a=this._ensureCache(e,n);r.forEach(e=>{t.Range.foreach(e,(e,t)=>{a.getValue(e,t)!==void 0&&a.setValue(e,t,void 0)})}),this._dirtyRanges$.next({unitId:e,subUnitId:n,ranges:r,isSetRange:i})}_deleteRange(e,n,r){let i=this._ensureCache(e,n);r.forEach(e=>{t.Range.foreach(e,(e,t)=>{i.realDeleteValue(e,t)})}),this._dirtyRanges$.next({unitId:e,subUnitId:n,ranges:r})}getValue(e,t,n,r){return this._ensureCache(e,t).getValue(n,r)}};m=p([f(0,(0,t.Inject)(t.ICommandService)),f(1,(0,t.Inject)(t.IUniverInstanceService)),f(2,(0,t.Inject)(n.DataValidationModel))],m);function h(e){var t;return e==null||(t=e[0])==null||(t=t[0])==null?void 0:t.v}function g(e){var t;return e==null||(t=e[0])==null?void 0:t[0]}function _(e){return!r.ERROR_TYPE_SET.has(e)}function v(e,t){var n;let r=t.getValidatorItem(e);return(n=r==null?void 0:r.offsetFormulaByRange)==null?!1:n}let y=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._instanceSrv=e,this._registerOtherFormulaService=t,this._dataValidationModel=n,this._dataValidationCacheService=r,this._validatorRegistryService=i,d(this,`_ruleFormulaMap`,new Map),d(this,`_ruleFormulaMap2`,new Map),this._initFormulaResultHandler(),this._initDirtyRanges()}dispose(){super.dispose(),this._ruleFormulaMap.clear(),this._ruleFormulaMap2.clear()}_initFormulaResultHandler(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(e=>{for(let n in e){let r=e[n];if(this._instanceSrv.getUnitType(n)===t.UniverInstanceType.UNIVER_SHEET)for(let e in r){let t=r[e],{ruleFormulaMap:i}=this._ensureMaps(n,e);t.forEach(t=>{var r,a;let o=i.get((r=t.extra)==null?void 0:r.ruleId),s=this._dataValidationModel.getRuleById(n,e,(a=t.extra)==null?void 0:a.ruleId);s&&o&&this._dataValidationCacheService.markRangeDirty(n,e,s.ranges)})}}}))}_ensureMaps(e,t){let n=this._ruleFormulaMap.get(e),r=this._ruleFormulaMap2.get(e);n||(n=new Map,this._ruleFormulaMap.set(e,n)),r||(r=new Map,this._ruleFormulaMap2.set(e,r));let i=n.get(t);i||(i=new Map,n.set(t,i));let a=r.get(t);return a||(a=new Map,r.set(t,a)),{ruleFormulaMap:i,ruleFormulaMap2:a}}_registerFormula(e,t,n,i,a){return this._registerOtherFormulaService.registerFormulaWithRange(e,t,i,a,{ruleId:n},r.OtherFormulaBizType.DATA_VALIDATION_CUSTOM,n)}_handleDirtyRanges(e,n,r){this._dataValidationModel.getRules(e,n).forEach(i=>{let a=i.ranges;t.Rectangle.doAnyRangesIntersect(a,r)&&this.makeRuleDirty(e,n,i.uid)})}_initDirtyRanges(){this.disposeWithMe(this._dataValidationCacheService.dirtyRanges$.subscribe(e=>{e.isSetRange&&this._handleDirtyRanges(e.unitId,e.subUnitId,e.ranges)}))}deleteByRuleId(e,t,n){let{ruleFormulaMap:r,ruleFormulaMap2:i}=this._ensureMaps(e,t),a=this._dataValidationModel.getRuleById(e,t,n),o=r.get(n);if(!a||!o)return;let s=r.get(n);s&&(r.delete(n),this._registerOtherFormulaService.deleteFormula(e,t,[s.formulaId]));let c=i.get(n);c&&(i.delete(n),this._registerOtherFormulaService.deleteFormula(e,t,[c.formulaId]))}_addFormulaByRange(e,n,r,i,a,o){let{ruleFormulaMap:s,ruleFormulaMap2:c}=this._ensureMaps(e,n),l=o[0].startRow,u=o[0].startColumn;if(i&&(0,t.isFormulaString)(i)){let t=this._registerFormula(e,n,r,i,o);s.set(r,{formula:i,originCol:u,originRow:l,formulaId:t})}if(a&&(0,t.isFormulaString)(a)){let t=this._registerFormula(e,n,r,a,o);c.set(r,{formula:a,originCol:u,originRow:l,formulaId:t})}}addRule(e,t,n){if(v(n.type,this._validatorRegistryService)){let{ranges:r,formula1:i,formula2:a,uid:o}=n;this._addFormulaByRange(e,t,o,i,a,r)}}async getCellFormulaValue(e,t,n,r,i){var a;let{ruleFormulaMap:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return Promise.resolve(void 0);let c=await this._registerOtherFormulaService.getFormulaValue(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}async getCellFormula2Value(e,t,n,r,i){var a;let{ruleFormulaMap2:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return Promise.resolve(void 0);let c=await this._registerOtherFormulaService.getFormulaValue(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}getCellFormulaValueSync(e,t,n,r,i){var a;let{ruleFormulaMap:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return;let c=this._registerOtherFormulaService.getFormulaValueSync(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}getCellFormula2ValueSync(e,t,n,r,i){var a;let{ruleFormulaMap2:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return;let c=this._registerOtherFormulaService.getFormulaValueSync(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}getRuleFormulaInfo(e,t,n){let{ruleFormulaMap:r}=this._ensureMaps(e,t);return r.get(n)}makeRuleDirty(e,t,n){var r,i;let a=(r=this._ruleFormulaMap.get(e))==null||(r=r.get(t))==null?void 0:r.get(n),o=(i=this._ruleFormulaMap2.get(e))==null||(i=i.get(t))==null?void 0:i.get(n);a&&this._registerOtherFormulaService.markFormulaDirty(e,t,a.formulaId),o&&this._registerOtherFormulaService.markFormulaDirty(e,t,o.formulaId)}};y=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(r.RegisterOtherFormulaService)),f(2,(0,t.Inject)(n.DataValidationModel)),f(3,(0,t.Inject)(m)),f(4,(0,t.Inject)(n.DataValidatorRegistryService))],y);function b(e){return(0,t.getOriginCellValue)(e)}function ee(e){var t;return String((t=b(e))==null?``:t)}function te(e){return e.filter(Boolean).join(`,`)}function x(e){return e.split(`,`).filter(Boolean)}function ne(e){let t=b(e);return t==null?``:t.toString()}function S(e,n,r){let{formula1:i,formula2:a}=n,o=n.ranges[0].startRow,s=n.ranges[0].startColumn,c=r.row-o,l=r.col-s;return{transformedFormula1:(0,t.isFormulaString)(i)?e.moveFormulaRefOffset(i,l,c,!0):i,transformedFormula2:(0,t.isFormulaString)(a)?e.moveFormulaRefOffset(a,l,c,!0):a}}let C=class extends t.Disposable{constructor(e,t){super(),this._injector=e,this._dataValidationModel=t,d(this,`_cache`,new Map),this._initRuleChangeListener()}_initRuleChangeListener(){this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{(e.type===`remove`||e.type===`update`)&&this.markRuleDirty(e.unitId,e.subUnitId,e.rule.uid)}))}getOrCompute(e,t,n){let r=this.getCache(e,t,n.uid);if(r)return r;let i=this._injector.get(w).getRuleFormulaResultSync(e,t,n.uid);return this.computeAndCache(e,t,n,i)}_ensureCache(e,t){let n=this._cache.get(e);n||(n=new Map,this._cache.set(e,n));let r=n.get(t);return r||(r=new Map,n.set(t,r)),r}getCache(e,t,n){var r;return(r=this._cache.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}setCache(e,t,n,r){this._ensureCache(e,t).set(n,r)}markRuleDirty(e,t,n){var r;(r=this._cache.get(e))==null||(r=r.get(t))==null||r.delete(n)}clear(){this._cache.clear()}computeAndCache(e,n,r,i){var a;let{formula1:o=``,formula2:s=``}=r,c=(0,t.isFormulaString)(o)?this._getRuleFormulaResultSet(i==null||(a=i[0])==null||(a=a.result)==null||(a=a[0])==null?void 0:a[0]):x(o),l=s.split(`,`),u=c.map((e,t)=>({label:e,color:l[t]||``})),d={};for(let e of u)e.color&&(d[e.label]=e.color);let f={list:c,listWithColor:u,colorMap:d,set:new Set(c)};return this.setCache(e,n,r.uid,f),f}_getRuleFormulaResultSet(e){if(!e)return[];let n=new Set;for(let i=0,a=e.length;i<a;i++){let a=e[i];if(a)for(let e=0,i=a.length;e<i;e++){let i=a[e],o=b(i);if(o!=null){var r;if(typeof o!=`string`&&typeof(i==null?void 0:i.s)==`object`&&!((r=i.s)==null||(r=r.n)==null)&&r.pattern){n.add(t.numfmt.format(i.s.n.pattern,o,{throws:!1}));continue}let e=typeof o==`string`?o:String(o);_(e)&&n.add(e)}}}return[...n]}};C=p([f(0,(0,t.Inject)(t.Injector)),f(1,(0,t.Inject)(n.DataValidationModel))],C);let w=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._instanceService=e,this._registerOtherFormulaService=t,this._dataValidationCacheService=n,this._dataValidationModel=r,this._validatorRegistryService=i,this._listCacheService=a,d(this,`_formulaRuleMap`,new Map),this._initFormulaResultHandler()}_initFormulaResultHandler(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(e=>{for(let n in e){let r=e[n];if(this._instanceService.getUnitType(n)===t.UniverInstanceType.UNIVER_SHEET)for(let e in r){let t=r[e],i=this._ensureRuleFormulaMap(n,e);t.forEach(t=>{var r;let a=(r=t.extra)==null?void 0:r.ruleId;if(a&&i.get(a)){let t=this._dataValidationModel.getRuleById(n,e,a);t&&(this._listCacheService.markRuleDirty(n,e,a),this._dataValidationCacheService.markRangeDirty(n,e,t.ranges))}})}}}))}_ensureRuleFormulaMap(e,t){let n=this._formulaRuleMap.get(e);n||(n=new Map,this._formulaRuleMap.set(e,n));let r=n.get(t);return r||(r=new Map,n.set(t,r)),r}_registerSingleFormula(e,t,n,i){return this._registerOtherFormulaService.registerFormulaWithRange(e,t,n,[{startColumn:0,endColumn:0,startRow:0,endRow:0}],{ruleId:i},r.OtherFormulaBizType.DATA_VALIDATION,i)}addRule(e,n,r){if(!v(r.type,this._validatorRegistryService)&&r.type!==t.DataValidationType.CHECKBOX){let{formula1:i,formula2:a,uid:o}=r,s=(0,t.isFormulaString)(i),c=(0,t.isFormulaString)(a);if(!s&&!c)return;let l=this._ensureRuleFormulaMap(e,n),u=[void 0,void 0];s&&(u[0]={id:this._registerSingleFormula(e,n,i,o),text:i}),c&&(u[1]={id:this._registerSingleFormula(e,n,a,o),text:a}),l.set(o,u)}}removeRule(e,t,n){let r=this._ensureRuleFormulaMap(e,t).get(n);if(!r)return;let[i,a]=r,o=[i==null?void 0:i.id,a==null?void 0:a.id].filter(Boolean);o.length&&this._registerOtherFormulaService.deleteFormula(e,t,o)}getRuleFormulaResult(e,t,n){let r=this._ensureRuleFormulaMap(e,t).get(n);if(!r)return Promise.resolve(null);let i=async n=>n&&this._registerOtherFormulaService.getFormulaValue(e,t,n.id);return Promise.all([i(r[0]),i(r[1])])}getRuleFormulaResultSync(e,t,n){let r=this._ensureRuleFormulaMap(e,t).get(n);if(r)return r.map(n=>{if(n)return this._registerOtherFormulaService.getFormulaValueSync(e,t,n.id)})}getRuleFormulaInfo(e,t,n){return this._ensureRuleFormulaMap(e,t).get(n)}};w=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(r.RegisterOtherFormulaService)),f(2,(0,t.Inject)(m)),f(3,(0,t.Inject)(n.DataValidationModel)),f(4,(0,t.Inject)(n.DataValidatorRegistryService)),f(5,(0,t.Inject)(C))],w);var re=class e{constructor(e,n,r,i,a=!1){this._unitId=n,this._subUnitId=r,this._univerInstanceService=i,this._disableTree=a,d(this,`_map`,void 0),d(this,`_tree`,new t.RBush),d(this,`_dirty`,!0),d(this,`_buildTree`,()=>{if(!this._dirty||this._disableTree)return;this._tree.clear();let e=[];this._map.forEach((t,n)=>{t.forEach(t=>{e.push({minX:t.startRow,maxX:t.endRow,minY:t.startColumn,maxY:t.endColumn,ruleId:n})})}),this._tree.load(e),this._dirty=!1}),d(this,`_debonceBuildTree`,(0,t.debounce)(this._buildTree,0)),this._map=e,this._buildTree()}get _worksheet(){var e;return(e=this._univerInstanceService.getUnit(this._unitId,t.UniverInstanceType.UNIVER_SHEET))==null?void 0:e.getSheetBySheetId(this._subUnitId)}_addRule(e,n){if(!this._worksheet)return;let r=t.Rectangle.mergeRanges(n.map(e=>t.Range.transformRange(e,this._worksheet)));this._map.forEach((e,n)=>{let i=t.Rectangle.subtractMulti(e,r);i.length===0?this._map.delete(n):this._map.set(n,i)}),this._dirty=!0,this._map.set(e,r),this._debonceBuildTree()}addRule(e){this._addRule(e.uid,e.ranges)}removeRange(e){if(!this._worksheet)return;let n=e.map(e=>t.Range.transformRange(e,this._worksheet));this._map.forEach((e,r)=>{let i=t.Rectangle.subtractMulti(e,n);i.length===0?this._map.delete(r):this._map.set(r,i)}),this._dirty=!0,this._debonceBuildTree()}_removeRule(e){this._map.delete(e),this._dirty=!0,this._debonceBuildTree()}removeRule(e){this._removeRule(e.uid)}updateRange(e,t){this._removeRule(e),this._addRule(e,t)}addRangeRules(e){e.forEach(({id:e,ranges:n})=>{if(!n.length)return;let r=this._map.get(e);r?(this._map.set(e,t.Rectangle.mergeRanges([...r,...n])),r=this._map.get(e)):(r=n,this._map.set(e,r)),this._map.forEach((r,i)=>{if(i===e)return;let a=t.Rectangle.subtractMulti(r,n);a.length===0?this._map.delete(i):this._map.set(i,a)})}),this._dirty=!0,this._debonceBuildTree()}diff(e){let n=[],r=0;return e.forEach((e,i)=>{var a;let o=(a=this._map.get(e.uid))==null?[]:a,s=e.ranges;o.length!==0&&(o.length!==s.length||o.some((e,n)=>!t.Rectangle.equals(e,s[n])))&&n.push({type:`update`,ruleId:e.uid,oldRanges:s,newRanges:t.Rectangle.sort(o),rule:e}),o.length===0&&(n.push({type:`delete`,rule:e,index:i-r}),r++)}),n}diffWithAddition(e,n){let r=[],i=0;return e.forEach((e,n)=>{var a;let o=(a=this._map.get(e.uid))==null?[]:a,s=e.ranges;o.length!==0&&(o.length!==s.length||o.some((e,n)=>!t.Rectangle.equals(e,s[n])))&&r.push({type:`update`,ruleId:e.uid,oldRanges:s,newRanges:t.Rectangle.sort(o),rule:e}),o.length===0&&(r.push({type:`delete`,rule:e,index:n-i}),i++)}),Array.from(n).forEach(e=>{var n;let i=(n=this._map.get(e.uid))==null?[]:n;r.push({type:`add`,rule:{...e,ranges:t.Rectangle.sort(i)}})}),r}clone(){return new e(new Map(t.Tools.deepClone(Array.from(this._map.entries()))),this._unitId,this._subUnitId,this._univerInstanceService,!0)}getValue(e,t){this._dirty&&this._buildTree();let n=this._tree.search({minX:e,maxX:e,minY:t,maxY:t});return n.length>0?n[0].ruleId:void 0}};let T=class extends t.Disposable{constructor(e,t,n,r,i,o,s){super(),this._dataValidationModel=e,this._univerInstanceService=t,this._dataValidatorRegistryService=n,this._dataValidationCacheService=r,this._dataValidationFormulaService=i,this._dataValidationCustomFormulaService=o,this._commandService=s,d(this,`_ruleMatrixMap`,new Map),d(this,`_validStatusChange$`,new a.Subject),d(this,`_ruleChange$`,new a.Subject),d(this,`ruleChange$`,this._ruleChange$.asObservable()),d(this,`validStatusChange$`,this._validStatusChange$.asObservable()),this._initRuleUpdateListener(),this.disposeWithMe(()=>{this._ruleChange$.complete(),this._validStatusChange$.complete()}),this._initUniverInstanceListener()}_initUniverInstanceListener(){this.disposeWithMe(this._univerInstanceService.unitDisposed$.subscribe(e=>{this._ruleMatrixMap.delete(e.getUnitId())})),this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===i.RemoveSheetMutation.id){let{unitId:t,subUnitId:n}=e.params,r=this._ruleMatrixMap.get(t);r&&r.delete(n)}}))}_initRuleUpdateListener(){let e=this._dataValidationModel.getAll();for(let[t,n]of e)for(let[e,r]of n)for(let n of r)this._addRule(t,e,n),this._ruleChange$.next({type:`add`,unitId:t,subUnitId:e,rule:n,source:`patched`});this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{switch(e.type){case`add`:this._addRule(e.unitId,e.subUnitId,e.rule);break;case`update`:this._updateRule(e.unitId,e.subUnitId,e.rule.uid,e.oldRule,e.updatePayload);break;case`remove`:this._removeRule(e.unitId,e.subUnitId,e.rule);break}this._ruleChange$.next(e)}))}_ensureRuleMatrix(e,t){let n=this._ruleMatrixMap.get(e);n||(n=new Map,this._ruleMatrixMap.set(e,n));let r=n.get(t);return r||(r=new re(new Map,e,t,this._univerInstanceService),n.set(t,r)),r}_addRuleSideEffect(e,t,n){this._ensureRuleMatrix(e,t).addRule(n),this._dataValidationCacheService.addRule(e,t,n),this._dataValidationFormulaService.addRule(e,t,n),this._dataValidationCustomFormulaService.addRule(e,t,n)}_addRule(e,t,n){(Array.isArray(n)?n:[n]).forEach(n=>{this._addRuleSideEffect(e,t,n)})}_updateRule(e,t,r,i,a){let o=this._ensureRuleMatrix(e,t),s={...i,...a.payload};a.type===n.UpdateRuleType.RANGE?o.updateRange(r,a.payload):a.type===n.UpdateRuleType.ALL&&o.updateRange(r,a.payload.ranges),this._dataValidationCacheService.removeRule(e,t,i),this._dataValidationCacheService.addRule(e,t,s),this._dataValidationFormulaService.removeRule(e,t,i.uid),this._dataValidationFormulaService.addRule(e,t,s),this._dataValidationCustomFormulaService.deleteByRuleId(e,t,r),this._dataValidationCustomFormulaService.addRule(e,t,s)}_removeRule(e,t,n){this._ensureRuleMatrix(e,t).removeRule(n),this._dataValidationCacheService.removeRule(e,t,n),this._dataValidationCustomFormulaService.deleteByRuleId(e,t,n.uid)}getValidator(e){return this._dataValidatorRegistryService.getValidatorItem(e)}getRuleIdByLocation(e,t,n,r){return this._ensureRuleMatrix(e,t).getValue(n,r)}getRuleByLocation(e,t,n,r){let i=this.getRuleIdByLocation(e,t,n,r);if(i)return this._dataValidationModel.getRuleById(e,t,i)}validator(e,n,r){let{col:i,row:a,unitId:o,subUnitId:s,worksheet:c}=n,l=(t,n)=>{r&&r(t,n),n&&this._validStatusChange$.next({unitId:o,subUnitId:s,ruleId:e.uid,status:t,row:a,col:i})},u=c.getCellValueOnly(a,i),d=this.getValidator(e.type),f=c.getCellRaw(a,i),p=b(f);if(d){let r=this._dataValidationCacheService.ensureCache(o,s),c=r.getValue(a,i);return c==null?(r.setValue(a,i,t.DataValidationStatus.VALIDATING),d.validator({value:p,unitId:o,subUnitId:s,row:a,column:i,worksheet:n.worksheet,workbook:n.workbook,interceptValue:b(u),t:f==null?void 0:f.t},e).then(e=>{let n=e?t.DataValidationStatus.VALID:t.DataValidationStatus.INVALID,o=r.getValue(a,i);n===t.DataValidationStatus.VALID?r.realDeleteValue(a,i):r.setValue(a,i,n),l(n,c!==o)}),t.DataValidationStatus.VALIDATING):(l(c==null?t.DataValidationStatus.VALID:c,!1),c==null?t.DataValidationStatus.VALID:c)}else return l(t.DataValidationStatus.VALID,!1),t.DataValidationStatus.VALID}getRuleObjectMatrix(e,t){return this._ensureRuleMatrix(e,t)}getRuleById(e,t,n){return this._dataValidationModel.getRuleById(e,t,n)}getRuleIndex(e,t,n){return this._dataValidationModel.getRuleIndex(e,t,n)}getRules(e,t){return[...this._dataValidationModel.getRules(e,t)]}getUnitRules(e){return this._dataValidationModel.getUnitRules(e)}deleteUnitRules(e){return this._dataValidationModel.deleteUnitRules(e)}getSubUnitIds(e){return this._dataValidationModel.getSubUnitIds(e)}getAll(){return this._dataValidationModel.getAll()}};T=p([f(0,(0,t.Inject)(n.DataValidationModel)),f(1,t.IUniverInstanceService),f(2,(0,t.Inject)(n.DataValidatorRegistryService)),f(3,(0,t.Inject)(m)),f(4,(0,t.Inject)(w)),f(5,(0,t.Inject)(y)),f(6,t.ICommandService)],T);function ie(e,n){return t.Tools.isBlank(e)?n.t(`dataValidation.validFail.value`):(0,t.isFormulaString)(e)?n.t(`dataValidation.validFail.primitive`):``}let E=e=>t.Tools.isDefine(e)&&String(e).toLowerCase()===`true`?`1`:String(e).toLowerCase()===`false`?`0`:e;var D=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.CHECKBOX),d(this,`title`,`dataValidation.checkbox.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`order`,41),d(this,`offsetFormulaByRange`,!1),d(this,`_formulaService`,this.injector.get(w)),d(this,`skipDefaultFontRender`,(e,t,n)=>{let{unitId:r,subUnitId:i}=n,{formula1:a,formula2:o}=this.parseFormulaSync(e,r,i),s=`${t==null?``:t}`;return!s||s===`${a}`||s===`${o}`})}validatorFormula(e,n,r){let{formula1:i,formula2:a}=e,o=i===a;if(t.Tools.isBlank(i)&&t.Tools.isBlank(a))return{success:!0};if(o)return{success:!1,formula1:this.localeService.t(`dataValidation.validFail.checkboxEqual`),formula2:this.localeService.t(`dataValidation.validFail.checkboxEqual`)};let s=ie(i,this.localeService),c=ie(a,this.localeService);return{success:!s&&!c,formula1:s,formula2:c}}async parseFormula(e,n,r){var i,a;let{formula1:o=1,formula2:s=0}=e,c=await this._formulaService.getRuleFormulaResult(n,r,e.uid),l=(0,t.isFormulaString)(o)?h(c==null||(i=c[0])==null||(i=i.result)==null?void 0:i[0][0]):o,u=(0,t.isFormulaString)(s)?h(c==null||(a=c[1])==null||(a=a.result)==null?void 0:a[0][0]):s,d=_(String(l))&&_(String(u));return{formula1:E(l),formula2:E(u),originFormula1:l,originFormula2:u,isFormulaValid:d}}getExtraStyle(e,n){return{tb:t.WrapStrategy.CLIP}}parseFormulaSync(e,n,r){var i,a;let{formula1:o=1,formula2:s=0}=e,c=this._formulaService.getRuleFormulaResultSync(n,r,e.uid),l=(0,t.isFormulaString)(o)?h(c==null||(i=c[0])==null||(i=i.result)==null?void 0:i[0][0]):o,u=(0,t.isFormulaString)(s)?h(c==null||(a=c[1])==null||(a=a.result)==null?void 0:a[0][0]):s,d=_(String(l))&&_(String(u));return{formula1:E(l),formula2:E(u),originFormula1:l,originFormula2:u,isFormulaValid:d}}async isValidType(e,n,r){let{value:i,unitId:a,subUnitId:o}=e,{formula1:s,formula2:c,originFormula1:l,originFormula2:u}=await this.parseFormula(r,a,o);return!t.Tools.isDefine(s)||!t.Tools.isDefine(c)?!0:t.Tools.isDefine(i)&&(String(i)===String(s)||String(i)===String(c)||String(i)===String(l==null?``:l)||String(i)===String(u==null?``:u))}generateRuleErrorMessage(e){return this.localeService.t(`dataValidation.checkbox.error`)}generateRuleName(e){return this.titleStr}};let ae={[t.DataValidationOperator.BETWEEN]:`dataValidation.date.operators.between`,[t.DataValidationOperator.EQUAL]:`dataValidation.date.operators.equal`,[t.DataValidationOperator.GREATER_THAN]:`dataValidation.date.operators.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`dataValidation.date.operators.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`dataValidation.date.operators.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`dataValidation.date.operators.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`dataValidation.date.operators.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`dataValidation.date.operators.notEqual`};t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL;let O={[t.DataValidationOperator.BETWEEN]:`dataValidation.date.ruleName.between`,[t.DataValidationOperator.EQUAL]:`dataValidation.date.ruleName.equal`,[t.DataValidationOperator.GREATER_THAN]:`dataValidation.date.ruleName.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`dataValidation.date.ruleName.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`dataValidation.date.ruleName.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`dataValidation.date.ruleName.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`dataValidation.date.ruleName.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`dataValidation.date.ruleName.notEqual`,NONE:`dataValidation.date.ruleName.legal`},oe={[t.DataValidationOperator.BETWEEN]:`dataValidation.date.errorMsg.between`,[t.DataValidationOperator.EQUAL]:`dataValidation.date.errorMsg.equal`,[t.DataValidationOperator.GREATER_THAN]:`dataValidation.date.errorMsg.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`dataValidation.date.errorMsg.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`dataValidation.date.errorMsg.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`dataValidation.date.errorMsg.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`dataValidation.date.errorMsg.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`dataValidation.date.errorMsg.notEqual`,NONE:`dataValidation.date.errorMsg.legal`},k=[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.NOT_BETWEEN],A=`{FORMULA1}`,j=`{FORMULA2}`,M=e=>{var n,r;if(e==null||typeof e==`boolean`)return;if(typeof e==`number`||!Number.isNaN(+e))return+e;let i=(n=t.numfmt.parseDate(e))==null?void 0:n.v;return t.Tools.isDefine(i)?i:(r=t.numfmt.parseDate((0,t.dateKit)(e).format(`YYYY-MM-DD HH:mm:ss`)))==null?void 0:r.v};var N=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.DATE),d(this,`title`,`dataValidation.date.title`),d(this,`order`,40),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`]),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder))}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=_(String(o==null?void 0:o.v))&&_(String(s==null?void 0:s.v));return{formula1:M((0,t.isFormulaString)(c)?o==null?void 0:o.v:c),formula2:M((0,t.isFormulaString)(l)?s==null?void 0:s.v:l),isFormulaValid:u}}async isValidType(e){let{interceptValue:n,value:r}=e;return typeof r==`number`&&typeof n==`string`||typeof n==`string`?!!t.numfmt.parseDate(n):!1}_validatorSingleFormula(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e)||!!(e&&t.numfmt.parseDate(e)))}validatorFormula(e,t,n){let r=e.operator;if(!r)return{success:!0};let i=this._validatorSingleFormula(e.formula1),a=this.localeService.t(`dataValidation.validFail.date`);if(k.includes(r)){let t=this._validatorSingleFormula(e.formula2);return{success:i&&t,formula1:i?void 0:a,formula2:t?void 0:a}}return{success:i,formula1:i?void 0:a}}normalizeFormula(e,n,r){let{formula1:i,formula2:a,bizInfo:o}=e,s=e=>{if(!e)return e;let n;if(!Number.isNaN(+e))n=t.numfmt.dateFromSerial(+e);else{var r;let i=(r=t.numfmt.parseDate(e))==null?void 0:r.v;if(i==null)return``;n=t.numfmt.dateFromSerial(i)}return(0,t.dateKit)(`${n[0]}/${n[1]}/${n[2]} ${n[3]}:${n[4]}:${n[5]}`).format(o!=null&&o.showTime?`YYYY-MM-DD HH:mm:ss`:`YYYY-MM-DD`)};return{formula1:(0,t.isFormulaString)(i)?i:s(`${i}`),formula2:(0,t.isFormulaString)(a)?a:s(`${a}`)}}transform(e,t,n){let{value:r}=e;return{...e,value:M(r)}}get operatorNames(){return this.operators.map(e=>this.localeService.t(ae[e]))}generateRuleName(e){var t,n;if(!e.operator)return this.localeService.t(O.NONE);let r=this.localeService.t(O[e.operator]).replace(A,(t=e.formula1)==null?``:t).replace(j,(n=e.formula2)==null?``:n);return`${this.titleStr} ${r}`}generateRuleErrorMessage(e,t){if(!e.operator)return this.titleStr;let{transformedFormula1:n,transformedFormula2:r}=S(this._lexerTreeBuilder,e,t);return`${this.localeService.t(oe[e.operator]).replace(A,n==null?``:n).replace(j,r==null?``:r)}`}};t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL,t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL;let P={[t.DataValidationOperator.BETWEEN]:`dataValidation.errorMsg.between`,[t.DataValidationOperator.EQUAL]:`dataValidation.errorMsg.equal`,[t.DataValidationOperator.GREATER_THAN]:`dataValidation.errorMsg.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`dataValidation.errorMsg.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`dataValidation.errorMsg.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`dataValidation.errorMsg.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`dataValidation.errorMsg.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`dataValidation.errorMsg.notEqual`,NONE:`dataValidation.errorMsg.legal`};function F(e){return+e}var se=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`id`,t.DataValidationType.DECIMAL),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder)),d(this,`title`,`dataValidation.decimal.title`),d(this,`order`,20),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`])}_isFormulaOrNumber(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e))}async isValidType(e,t,n){let{value:r}=e;return!Number.isNaN(F(r))}transform(e,t,n){let{value:r}=e;return{...e,value:F(r)}}_parseNumber(e){return e==null?NaN:+e}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=_(String(o==null?void 0:o.v))&&_(String(s==null?void 0:s.v));return{formula1:this._parseNumber((0,t.isFormulaString)(c)?o==null?void 0:o.v:c),formula2:this._parseNumber((0,t.isFormulaString)(l)?s==null?void 0:s.v:l),isFormulaValid:u}}validatorFormula(e,n,r){let i=e.operator;if(!i)return{success:!0};let a=t.Tools.isDefine(e.formula1)&&this._isFormulaOrNumber(e.formula1),o=t.Tools.isDefine(e.formula2)&&this._isFormulaOrNumber(e.formula2),s=k.includes(i),c=this.localeService.t(`dataValidation.validFail.number`);return s?{success:a&&o,formula1:a?void 0:c,formula2:o?void 0:c}:{success:a,formula1:a?``:c}}generateRuleErrorMessage(e,t){if(!e.operator)return this.localeService.t(P.NONE).replace(`{TYPE}`,this.titleStr);let{transformedFormula1:n,transformedFormula2:r}=S(this._lexerTreeBuilder,e,t);return`${this.localeService.t(P[e.operator]).replace(A,n==null?``:n).replace(j,r==null?``:r)}`}};function ce(e){if(!e)return[];let n=new Set;for(let i=0,a=e.length;i<a;i++){let a=e[i];if(a)for(let e=0,i=a.length;e<i;e++){let i=a[e],o=b(i);if(o!=null){var r;if(typeof o!=`string`&&typeof(i==null?void 0:i.s)==`object`&&!((r=i.s)==null||(r=r.n)==null)&&r.pattern){n.add(t.numfmt.format(i.s.n.pattern,o,{throws:!1}));continue}let e=typeof o==`string`?o:String(o);_(e)&&n.add(e)}}}return[...n]}let le=[`if`,`indirect`,`choose`,`offset`];function ue(e,n){if(!(0,t.isFormulaString)(e)||(0,r.isReferenceString)(e.slice(1)))return!0;let i=n.sequenceNodesBuilder(e);return i&&i.some(e=>typeof e==`object`&&e.nodeType===r.sequenceNodeType.FUNCTION&&le.indexOf(e.token.toLowerCase())>-1)}function de(e,n){let{formula1:i=``,ranges:a}=e;if((0,r.isReferenceString)(i.slice(1))){let e=(0,r.deserializeRangeWithSheet)(i.slice(1));if((!e.sheetName||e.sheetName===n)&&a.some(n=>t.Rectangle.intersects(n,e.range)))return!0}return!1}var I=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`formulaService`,this.injector.get(w)),d(this,`_lexer`,this.injector.get(r.LexerTreeBuilder)),d(this,`_univerInstanceService`,this.injector.get(t.IUniverInstanceService)),d(this,`_listCacheService`,this.injector.get(C)),d(this,`order`,50),d(this,`offsetFormulaByRange`,!1),d(this,`id`,t.DataValidationType.LIST),d(this,`title`,`dataValidation.list.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`skipDefaultFontRender`,e=>e.renderMode!==t.DataValidationRenderMode.TEXT)}validatorFormula(e,n,r){var i,a;let o=!t.Tools.isBlank(e.formula1),s=ue((i=e.formula1)==null?``:i,this._lexer),c=(a=this._univerInstanceService.getUnit(n,t.UniverInstanceType.UNIVER_SHEET))==null||(a=a.getSheetBySheetId(r))==null?void 0:a.getName(),l=de(e,c==null?``:c);return{success:!!(o&&s&&!l),formula1:o?s?l?this.localeService.t(`dataValidation.validFail.listIntersects`):void 0:this.localeService.t(`dataValidation.validFail.listInvalid`):this.localeService.t(`dataValidation.validFail.list`)}}getExtraStyle(e,n,{style:r}){var i;let a=(i=r.tb===t.WrapStrategy.OVERFLOW?t.WrapStrategy.CLIP:r.tb)==null?t.WrapStrategy.WRAP:i;if(e.type===t.DataValidationType.LIST&&(e.renderMode===t.DataValidationRenderMode.ARROW||e.renderMode===t.DataValidationRenderMode.TEXT)){let t=this.getListWithColorMap(e)[`${n==null?``:n}`];if(t)return{bg:{rgb:t},tb:a}}return{tb:a}}parseCellValue(e){return x(e.toString())}async parseFormula(e,t,n){var r;let i=await this.formulaService.getRuleFormulaResult(t,n,e.uid),a=h(i==null||(r=i[0])==null||(r=r.result)==null?void 0:r[0][0]);return{formula1:void 0,formula2:void 0,isFormulaValid:_(String(a))}}async isValidType(e,n,r){let{value:i,unitId:a,subUnitId:o}=e,{formula1:s=``}=r,c=(0,t.isFormulaString)(s)?this._listCacheService.getOrCompute(a,o,r).list:x(s);return this.parseCellValue(i).every(e=>c.includes(e))}generateRuleName(){return this.localeService.t(`dataValidation.list.name`)}generateRuleErrorMessage(){return this.localeService.t(`dataValidation.list.error`)}_getUnitAndSubUnit(e,n){var r,i;let a=(r=e?this._univerInstanceService.getUniverSheetInstance(e):void 0)==null?this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET):r;if(!a)return null;let o=(i=n?a.getSheetBySheetId(n):void 0)==null?a.getActiveSheet():i;return o?{unitId:a.getUnitId(),subUnitId:o.getSheetId()}:null}getList(e,t,n){let r=this._getUnitAndSubUnit(t,n);if(!r)return[];let{unitId:i,subUnitId:a}=r;return this._listCacheService.getOrCompute(i,a,e).list}async getListAsync(e,n,r){var i;let{formula1:a=``}=e,o=this._getUnitAndSubUnit(n,r);if(!o)return[];let{unitId:s,subUnitId:c}=o,l=await this.formulaService.getRuleFormulaResult(s,c,e.uid);return(0,t.isFormulaString)(a)?ce(l==null||(i=l[0])==null||(i=i.result)==null?void 0:i[0][0]):x(a)}getListWithColor(e,t,n){let r=this._getUnitAndSubUnit(t,n);if(!r)return[];let{unitId:i,subUnitId:a}=r;return this._listCacheService.getOrCompute(i,a,e).listWithColor}getListWithColorMap(e,t,n){let r=this._getUnitAndSubUnit(t,n);if(!r)return{};let{unitId:i,subUnitId:a}=r;return this._listCacheService.getOrCompute(i,a,e).colorMap}},fe=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.TEXT_LENGTH),d(this,`title`,`dataValidation.textLength.title`),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder)),d(this,`order`,30),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`]),d(this,`_customFormulaService`,this.injector.get(y))}_isFormulaOrInt(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e)&&Number.isInteger(+e))}validatorFormula(e,n,r){let i=e.operator;if(!i)return{success:!1};let a=t.Tools.isDefine(e.formula1)&&this._isFormulaOrInt(e.formula1),o=t.Tools.isDefine(e.formula2)&&this._isFormulaOrInt(e.formula2),s=k.includes(i),c=this.localeService.t(`dataValidation.validFail.number`);return s?{success:a&&o,formula1:a?void 0:c,formula2:o?void 0:c}:{success:a,formula1:c}}_parseNumber(e){return e==null?NaN:+e}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=_(String(o==null?void 0:o.v))&&_(String(s==null?void 0:s.v));return{formula1:this._parseNumber((0,t.isFormulaString)(c)?o==null?void 0:o.v:c),formula2:this._parseNumber((0,t.isFormulaString)(l)?s==null?void 0:s.v:l),isFormulaValid:u}}transform(e,t,n){return{...e,value:e.value.toString().length}}async isValidType(e,t,n){let{value:r}=e;return typeof r==`string`||typeof r==`number`}generateRuleErrorMessage(e,t){if(!e.operator)return this.titleStr;let{transformedFormula1:r,transformedFormula2:i}=S(this._lexerTreeBuilder,e,t);return`${this.localeService.t(n.TextLengthErrorTitleMap[e.operator]).replace(A,r==null?``:r).replace(j,i==null?``:i)}`}};function L(e){var n,r;return e?e.p?!((n=(r=e.p.body)==null?void 0:r.dataStream)==null?``:n).slice(0,-2).trim():t.Tools.isBlank(e.v):!0}function R(e,a,o,s,c=`command`,l=!0){let u=s.get(r.LexerTreeBuilder),d=s.get(n.DataValidatorRegistryService),f=[],p=[],m=s.get(T),h=(0,i.getSheetCommandTarget)(s.get(t.IUniverInstanceService),{unitId:e,subUnitId:a});if(!h)return{redoMutations:f,undoMutations:p};let{worksheet:g}=h,_=new t.ObjectMatrix,y=!1;function b(e,n){l&&e.forEach(e=>{t.Range.foreach(e,(e,t)=>{let r=g.getCellRaw(e,t),i=ee(r);(L(r)||i===n)&&!(r!=null&&r.p)&&(y=!0,_.setValue(e,t,{v:n,p:null}))})})}if(o.forEach(r=>{switch(r.type){case`delete`:f.push({id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.rule.uid,source:c}}),p.unshift({id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:a,rule:r.rule,index:r.index,source:c}});break;case`update`:{if(v(r.rule.type,d)){let i=r.oldRanges[0].startRow,o=r.oldRanges[0].startColumn,s=r.newRanges[0].startRow,l=r.newRanges[0].startColumn,d=s-i,m=l-o,h=(0,t.isFormulaString)(r.rule.formula1)?u.moveFormulaRefOffset(r.rule.formula1,m,d):r.rule.formula1,g=(0,t.isFormulaString)(r.rule.formula2)?u.moveFormulaRefOffset(r.rule.formula2,m,d):r.rule.formula2;h!==r.rule.formula1||g!==r.rule.formula2||!(0,t.isRangesEqual)(r.newRanges,r.oldRanges)?(f.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.ALL,payload:{formula1:h,formula2:g,ranges:r.newRanges}}}}),p.unshift({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.ALL,payload:{formula1:r.rule.formula1,formula2:r.rule.formula2,ranges:r.oldRanges}}}})):(f.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.newRanges},source:c}}),p.unshift({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.oldRanges},source:c}}))}else f.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.newRanges},source:c}}),p.unshift({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.oldRanges},source:c}});let i=m.getRuleById(e,a,r.ruleId);if(i&&i.type===t.DataValidationType.CHECKBOX){let n=m.getValidator(t.DataValidationType.CHECKBOX).parseFormulaSync(i,e,a);b(r.newRanges,n.formula2)}break}case`add`:if(f.push({id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:a,rule:r.rule,source:c}}),p.unshift({id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.rule.uid,source:c}}),r.rule.type===t.DataValidationType.CHECKBOX){let n=m.getValidator(t.DataValidationType.CHECKBOX).parseFormulaSync(r.rule,e,a);b(r.rule.ranges,n.originFormula2)}break;default:break}}),y){let t={id:i.SetRangeValuesMutation.id,params:{unitId:e,subUnitId:a,cellValue:_.getData()}},n={id:i.SetRangeValuesMutation.id,params:(0,i.SetRangeValuesUndoMutationFactory)(s,t.params)};f.push(t),p.push(n)}return{redoMutations:f,undoMutations:p}}let z={type:t.CommandType.COMMAND,id:`sheet.command.updateDataValidationRuleRange`,handler(e,n){if(!n)return!1;let{unitId:r,subUnitId:i,ranges:a,ruleId:o}=n,s=e.get(T),c=e.get(t.ICommandService),l=e.get(t.IUndoRedoService);if(!s.getRuleById(r,i,o))return!1;let u=s.getRuleObjectMatrix(r,i).clone();u.updateRange(o,a);let{redoMutations:d,undoMutations:f}=R(r,i,u.diff(s.getRules(r,i)),e);return l.pushUndoRedo({undoMutations:f,redoMutations:d,unitID:r}),(0,t.sequenceExecute)(d,c),!0}},B={type:t.CommandType.COMMAND,id:`sheet.command.addDataValidation`,handler(e,r){if(!r)return!1;let{unitId:i,subUnitId:a,rule:o}=r,s=e.get(T),c=e.get(t.ICommandService),l=e.get(t.IUndoRedoService),u=s.getRuleObjectMatrix(i,a).clone();u.addRule(o);let d=u.diff(s.getRules(i,a)),f=s.getValidator(o.type),p={unitId:i,subUnitId:a,rule:{...o,...f==null?void 0:f.normalizeFormula(o,i,a)}},{redoMutations:m,undoMutations:h}=R(i,a,d,e);return m.push({id:n.AddDataValidationMutation.id,params:p}),h.unshift({id:n.RemoveDataValidationMutation.id,params:{unitId:i,subUnitId:a,ruleId:o.uid}}),l.pushUndoRedo({unitID:i,redoMutations:m,undoMutations:h}),(0,t.sequenceExecute)(m,c),!0}},V={type:t.CommandType.COMMAND,id:`sheets.command.update-data-validation-setting`,handler(e,r){if(!r)return!1;let a=e.get(t.ICommandService),o=e.get(t.IUndoRedoService),s=e.get(T),c=e.get(n.DataValidatorRegistryService),{unitId:l,subUnitId:u,ruleId:d,setting:f}=r,p=c.getValidatorItem(f.type);if(!p)return!1;let m=s.getRuleById(l,u,d);if(!m)return!1;let h={...m,...f};if(!p.validatorFormula(h,l,u).success)return!1;let g={unitId:l,subUnitId:u,ruleId:d,payload:{type:n.UpdateRuleType.SETTING,payload:{...f,...p.normalizeFormula(h,l,u)}}},_=[{id:n.UpdateDataValidationMutation.id,params:g}],v={unitId:l,subUnitId:u,ruleId:d,payload:{type:n.UpdateRuleType.SETTING,payload:(0,n.getRuleSetting)(m)}},y=[{id:n.UpdateDataValidationMutation.id,params:v}];if(f.type===t.DataValidationType.CHECKBOX){let n=m.ranges,r=(0,i.getSheetCommandTarget)(e.get(t.IUniverInstanceService),{unitId:l,subUnitId:u});if(r){let a=new t.ObjectMatrix,{worksheet:o}=r,{formula2:s=0,formula1:c=1}=m,{formula2:d=0,formula1:p=1}=f,h=!1;if(n.forEach(e=>{t.Range.foreach(e,(e,t)=>{let n=o.getCellRaw(e,t),r=ee(n);(L(n)||r===String(s))&&!(n!=null&&n.p)?(a.setValue(e,t,{v:d,p:null}),h=!0):r===String(c)&&!(n!=null&&n.p)&&(a.setValue(e,t,{v:p,p:null}),h=!0)})}),h){let t={id:i.SetRangeValuesMutation.id,params:{unitId:l,subUnitId:u,cellValue:a.getData()}},n={id:i.SetRangeValuesMutation.id,params:(0,i.SetRangeValuesUndoMutationFactory)(e,t.params)};_.push(t),y.push(n)}}}return(0,t.sequenceExecute)(_,a).result?(o.pushUndoRedo({unitID:l,redoMutations:_,undoMutations:y}),!0):!1}},H={type:t.CommandType.COMMAND,id:`sheets.command.update-data-validation-options`,handler(e,r){if(!r)return!1;let i=e.get(t.ICommandService),a=e.get(t.IUndoRedoService),o=e.get(T),{unitId:s,subUnitId:c,ruleId:l,options:u}=r,d=o.getRuleById(s,c,l);if(!d)return!1;let f={unitId:s,subUnitId:c,ruleId:l,payload:{type:n.UpdateRuleType.OPTIONS,payload:u}},p=[{id:n.UpdateDataValidationMutation.id,params:f}],m={unitId:s,subUnitId:c,ruleId:l,payload:{type:n.UpdateRuleType.OPTIONS,payload:(0,n.getRuleOptions)(d)}},h=[{id:n.UpdateDataValidationMutation.id,params:m}];return a.pushUndoRedo({unitID:s,redoMutations:p,undoMutations:h}),i.executeCommand(n.UpdateDataValidationMutation.id,f),!0}},U={type:t.CommandType.COMMAND,id:`sheets.command.clear-range-data-validation`,handler(e,n){if(!n)return!1;let{unitId:r,subUnitId:a,ranges:o}=n,s=e.get(t.ICommandService),c=(0,i.getSheetCommandTarget)(e.get(t.IUniverInstanceService),{unitId:r,subUnitId:a}),l=e.get(T);if(!c)return!1;let u=e.get(t.IUndoRedoService),d=l.getRuleObjectMatrix(r,a).clone();d.removeRange(o);let{redoMutations:f,undoMutations:p}=R(r,a,d.diff(l.getRules(r,a)),e);return u.pushUndoRedo({unitID:r,redoMutations:f,undoMutations:p}),(0,t.sequenceExecute)(f,s).result}},W={type:t.CommandType.COMMAND,id:`sheet.command.remove-all-data-validation`,handler(e,r){if(!r)return!1;let{unitId:i,subUnitId:a}=r,o=e.get(t.ICommandService),s=e.get(T),c=e.get(t.IUndoRedoService),l=[...s.getRules(i,a)],u={unitId:i,subUnitId:a,ruleId:l.map(e=>e.uid)},d=[{id:n.RemoveDataValidationMutation.id,params:u}],f=[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:l}}];return c.pushUndoRedo({redoMutations:d,undoMutations:f,unitID:i}),o.executeCommand(n.RemoveDataValidationMutation.id,u),!0}},pe=(e,t)=>{let r=e.get(T),{unitId:i,subUnitId:a,ruleId:o,source:s}=t;if(Array.isArray(o)){let e=o.map(e=>r.getRuleById(i,a,e)).filter(Boolean);return[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:e,source:s}}]}return[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:{...r.getRuleById(i,a,o)},index:r.getRuleIndex(i,a,o)}}]},me={type:t.CommandType.COMMAND,id:`sheet.command.remove-data-validation-rule`,handler(e,r){if(!r)return!1;let{unitId:i,subUnitId:a,ruleId:o}=r,s=e.get(t.ICommandService),c=e.get(t.IUndoRedoService),l=e.get(T),u=[{id:n.RemoveDataValidationMutation.id,params:r}],d=[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:{...l.getRuleById(i,a,o)},index:l.getRuleIndex(i,a,o)}}];return c.pushUndoRedo({undoMutations:d,redoMutations:u,unitID:r.unitId}),s.executeCommand(n.RemoveDataValidationMutation.id,r),!0}},G=`SHEET_DATA_VALIDATION_PLUGIN`,K=class extends t.Disposable{constructor(e,t,n){super(),this._univerInstanceService=e,this._permissionService=t,this._lexerTreeBuilder=n}getFormulaRefCheck(e){let n=this._lexerTreeBuilder.sequenceNodesBuilder(e);if(!n)return!0;for(let e=0;e<n.length;e++){let s=n[e];if(typeof s==`string`)continue;let{token:c}=s,l=(0,r.deserializeRangeWithSheetWithCache)(c),u=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),d=u.getActiveSheet(),f=u.getUnitId();if(l.sheetName){if(d=u.getSheetBySheetName(l.sheetName),!d)return!1;let e=d==null?void 0:d.getSheetId();if(!this._permissionService.getPermissionPoint(new i.WorksheetViewPermission(f,e).id))return!1}if(!d)return!1;let{startRow:p,endRow:m,startColumn:h,endColumn:g}=l.range;for(let e=p;e<=m;e++)for(let t=h;t<=g;t++){var a;let n=(a=d.getCell(e,t))==null||(a=a.selectionProtection)==null?void 0:a[0];if((n==null?void 0:n[o.UnitAction.View])===!1)return!1}}return!0}};K=p([f(0,t.IUniverInstanceService),f(1,t.IPermissionService),f(2,(0,t.Inject)(r.LexerTreeBuilder))],K);var he=`@univerjs/sheets-data-validation`,ge=`0.24.0`;let q=`sheets-data-validation.config`;Symbol(q);let _e={},J=class extends t.Disposable{constructor(e,t,n){super(),this._dataValidationModel=e,this._formulaRefRangeService=t,this._validatorRegistryService=n,d(this,`_disposableMap`,new Map),d(this,`registerRule`,(e,t,n)=>{v(n.type,this._validatorRegistryService)&&this.register(e,t,n)}),this._initRefRange()}_getIdWithUnitId(e,t,n){return`${e}_${t}_${n}`}register(e,r,i){let a=i.ranges,o=i.formula1,s=i.formula2,c=this._formulaRefRangeService.registerRangeFormula(e,r,a,[o==null?``:o,s==null?``:s],c=>{if(c.length===0)return{undos:[{id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:r,rule:i,source:`patched`}}],redos:[{id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:i.uid,source:`patched`}}]};let l=[],u=[],d=c[0];l.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:i.uid,payload:{type:n.UpdateRuleType.ALL,payload:{ranges:d.ranges,formula1:d.formulas[0],formula2:d.formulas[1]}},source:`patched`}}),u.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:i.uid,payload:{type:n.UpdateRuleType.ALL,payload:{ranges:a,formula1:o,formula2:s}},source:`patched`}});for(let a=1;a<c.length;a++){let o=c[a],s=(0,t.generateRandomId)();l.push({id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:r,rule:{...i,uid:s,formula1:o.formulas[0],formula2:o.formulas[1],ranges:o.ranges},source:`patched`}}),u.push({id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:s,source:`patched`}})}return{undos:u,redos:l}}),l=this._getIdWithUnitId(e,r,i.uid);this._disposableMap.set(l,c)}_initRefRange(){let e=this._dataValidationModel.getAll();for(let[t,n]of e)for(let[e,r]of n)for(let n of r)this.registerRule(t,e,n);this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{let{unitId:t,subUnitId:n,rule:r}=e;switch(e.type){case`add`:{let t=e.rule;this.registerRule(e.unitId,e.subUnitId,t);break}case`remove`:{let e=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));e&&e.dispose();break}case`update`:{let r=e.rule,i=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));i&&i.dispose(),this.registerRule(e.unitId,e.subUnitId,r);break}}})),this.disposeWithMe((0,t.toDisposable)(()=>{this._disposableMap.forEach(e=>{e.dispose()}),this._disposableMap.clear()}))}};J=p([f(0,(0,t.Inject)(T)),f(1,(0,t.Inject)(s.FormulaRefRangeService)),f(2,(0,t.Inject)(n.DataValidatorRegistryService))],J);let Y=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._dataValidationModel=e,this._injector=t,this._refRangeService=n,this._dataValidationFormulaService=r,this._formulaRefRangeService=i,this._validatorRegistryService=a,d(this,`_disposableMap`,new Map),d(this,`registerRule`,(e,t,n)=>{v(n.type,this._validatorRegistryService)||(this.register(e,t,n),this.registerFormula(e,t,n))}),this._initRefRange()}_getIdWithUnitId(e,t,n){return`${e}_${t}_${n}`}registerFormula(e,t,r){var i;let a=r.uid,o=this._getIdWithUnitId(e,t,a),s=(i=this._disposableMap.get(o))==null?new Set:i,c=(i,o)=>{let s=this._dataValidationModel.getRuleById(e,t,a);if(!s)return{redos:[],undos:[]};let c=s[i];if(!c||c===o)return{redos:[],undos:[]};let l={unitId:e,subUnitId:t,ruleId:r.uid,payload:{type:n.UpdateRuleType.SETTING,payload:{type:s.type,formula1:s.formula1,formula2:s.formula2,[i]:o}},source:`patched`},u={unitId:e,subUnitId:t,ruleId:r.uid,payload:{type:n.UpdateRuleType.SETTING,payload:{type:s.type,formula1:s.formula1,formula2:s.formula2}},source:`patched`};return{redos:[{id:n.UpdateDataValidationMutation.id,params:l}],undos:[{id:n.UpdateDataValidationMutation.id,params:u}]}},l=this._dataValidationFormulaService.getRuleFormulaInfo(e,t,a);if(l){let[n,r]=l;if(n){let r=this._formulaRefRangeService.registerFormula(e,t,n.text,e=>c(`formula1`,e));s.add(()=>r.dispose())}if(r){let n=this._formulaRefRangeService.registerFormula(e,t,r.text,e=>c(`formula2`,e));s.add(()=>n.dispose())}}}register(e,r,a){var o;let s=o=>{let s=[...a.ranges],c=s.map(e=>(0,i.handleCommonDefaultRangeChangeWithEffectRefCommands)(e,o)).filter(e=>!!e).flat();if((0,t.isRangesEqual)(c,s))return{redos:[],undos:[]};if(c.length){let t={unitId:e,subUnitId:r,ruleId:a.uid,payload:{type:n.UpdateRuleType.RANGE,payload:c},source:`patched`};return{redos:[{id:n.UpdateDataValidationMutation.id,params:t}],undos:[{id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:a.uid,payload:{type:n.UpdateRuleType.RANGE,payload:s},source:`patched`}}]}}else{let t={unitId:e,subUnitId:r,ruleId:a.uid};return{redos:[{id:n.RemoveDataValidationMutation.id,params:t}],undos:pe(this._injector,t)}}},c=[];a.ranges.forEach(t=>{let n=this._refRangeService.registerRefRange(t,s,e,r);c.push(()=>n.dispose())});let l=this._getIdWithUnitId(e,r,a.uid),u=(o=this._disposableMap.get(l))==null?new Set:o;u.add(()=>c.forEach(e=>e())),this._disposableMap.set(l,u)}_initRefRange(){let e=this._dataValidationModel.getAll();for(let[t,n]of e)for(let[e,r]of n)for(let n of r)this.registerRule(t,e,n);this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{let{unitId:t,subUnitId:n,rule:r}=e;switch(e.type){case`add`:{let t=e.rule;this.registerRule(e.unitId,e.subUnitId,t);break}case`remove`:{let e=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));e&&e.forEach(e=>e());break}case`update`:{let r=e.rule,i=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));i&&i.forEach(e=>e()),this.registerRule(e.unitId,e.subUnitId,r);break}}})),this.disposeWithMe((0,t.toDisposable)(()=>{this._disposableMap.forEach(e=>{e.forEach(e=>e())}),this._disposableMap.clear()}))}};Y=p([f(0,(0,t.Inject)(T)),f(1,(0,t.Inject)(t.Injector)),f(2,(0,t.Inject)(i.RefRangeService)),f(3,(0,t.Inject)(w)),f(4,(0,t.Inject)(s.FormulaRefRangeService)),f(5,(0,t.Inject)(n.DataValidatorRegistryService))],Y);let X=class extends t.Disposable{constructor(e,t,n){super(),this._sheetInterceptorService=e,this._univerInstanceService=t,this._sheetDataValidationModel=n,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:e=>{if(e.id===i.RemoveSheetCommand.id){var r;let i=e.params,a=i.unitId||this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET).getUnitId(),o=this._univerInstanceService.getUniverSheetInstance(a);if(!o)return{redos:[],undos:[]};let s=i.subUnitId||((r=o.getActiveSheet())==null?void 0:r.getSheetId());if(!s)return{redos:[],undos:[]};let c=this._sheetDataValidationModel.getRules(a,s);if(c.length===0)return{redos:[],undos:[]};let l={unitId:a,subUnitId:s,ruleId:c.map(e=>e.uid),source:`patched`},u={unitId:a,subUnitId:s,rule:[...c],source:`patched`};return{redos:[{id:n.RemoveDataValidationMutation.id,params:l}],undos:[{id:n.AddDataValidationMutation.id,params:u}]}}else if(e.id===i.CopySheetCommand.id){let{unitId:r,subUnitId:i,targetSubUnitId:a}=e.params;if(!r||!i||!a)return{redos:[],undos:[]};let o=this._sheetDataValidationModel.getRules(r,i);if(o.length===0)return{redos:[],undos:[]};let s=o.map(e=>({...e,uid:(0,t.generateRandomId)(6)}));return{redos:[{id:n.AddDataValidationMutation.id,params:{unitId:r,subUnitId:a,rule:s,source:`patched`}}],undos:[{id:n.RemoveDataValidationMutation.id,params:{unitId:r,subUnitId:a,ruleId:s.map(e=>e.uid),source:`patched`}}]}}return{redos:[],undos:[]}}}))}};X=p([f(0,(0,t.Inject)(i.SheetInterceptorService)),f(1,(0,t.Inject)(t.IUniverInstanceService)),f(2,(0,t.Inject)(T))],X);var ve=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.ANY),d(this,`title`,`dataValidation.any.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`order`,0),d(this,`offsetFormulaByRange`,!1)}async parseFormula(e,t,n){return{formula1:e.formula1,formula2:e.formula2,isFormulaValid:!0}}validatorFormula(e,t,n){return{success:!0}}async isValidType(e,t,n){return!0}generateRuleErrorMessage(e){return this.localeService.t(`dataValidation.any.error`)}},ye=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.CUSTOM),d(this,`title`,`dataValidation.custom.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`order`,60),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder))}validatorFormula(e,n,i){var a;let o=(0,t.isFormulaString)(e.formula1),s=(a=e.formula1)==null?``:a,c=this._lexerTreeBuilder.checkIfAddBracket(s)===0&&s.startsWith(r.operatorToken.EQUALS);return{success:o&&c,formula1:o&&c?``:this.localeService.t(`dataValidation.validFail.formula`)}}async parseFormula(e,t,n){return{formula1:void 0,formula2:void 0,isFormulaValid:!0}}async isValidType(e,n,r){let{column:i,row:a,unitId:o,subUnitId:s}=e,c=await this._customFormulaService.getCellFormulaValue(o,s,r.uid,a,i),l=c==null?void 0:c.v;return _(String(l))&&t.Tools.isDefine(l)&&l!==``?c.t===t.CellValueType.BOOLEAN?!!l:typeof l==`boolean`?l:typeof l==`number`?!!l:typeof l==`string`?_(l):!!l:!1}generateRuleErrorMessage(e){return this.localeService.t(`dataValidation.custom.error`)}generateRuleName(e){var t;return this.localeService.t(`dataValidation.custom.ruleName`).replace(`{FORMULA1}`,(t=e.formula1)==null?``:t)}},be=class extends I{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.LIST_MULTIPLE),d(this,`title`,`dataValidation.listMultiple.title`),d(this,`offsetFormulaByRange`,!1),d(this,`skipDefaultFontRender`,()=>!0)}},xe=class extends n.BaseDataValidator{constructor(...e){super(...e),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder)),d(this,`id`,t.DataValidationType.WHOLE),d(this,`title`,`dataValidation.whole.title`),d(this,`order`,10),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`])}_isFormulaOrInt(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e)&&Number.isInteger(+e))}async isValidType(e,t,n){let{value:r}=e,i=F(r);return!Number.isNaN(i)&&Number.isInteger(i)}transform(e,t,n){let{value:r}=e;return{...e,value:F(r)}}_parseNumber(e){return e==null?NaN:+e}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=(0,t.isFormulaString)(c)?o==null?void 0:o.v:c,d=(0,t.isFormulaString)(l)?s==null?void 0:s.v:l,f=_(`${u}`)&&_(`${d}`);return{formula1:this._parseNumber(u),formula2:this._parseNumber(d),isFormulaValid:f}}validatorFormula(e,n,r){let i=e.operator;if(!i)return{success:!0};let a=t.Tools.isDefine(e.formula1)&&this._isFormulaOrInt(e.formula1),o=t.Tools.isDefine(e.formula2)&&this._isFormulaOrInt(e.formula2),s=k.includes(i),c=this.localeService.t(`dataValidation.validFail.number`);return s?{success:a&&o,formula1:a?void 0:c,formula2:o?void 0:c}:{success:a,formula1:c}}generateRuleErrorMessage(e,t){if(!e.operator)return this.localeService.t(P.NONE).replace(`{TYPE}`,this.titleStr);let{transformedFormula1:n,transformedFormula2:r}=S(this._lexerTreeBuilder,e,t);return`${this.localeService.t(P[e.operator]).replace(A,n==null?``:n).replace(j,r==null?``:r)}`}};let Z=class extends t.RxDisposable{constructor(e,t,n,r,i,a){super(),this._univerInstanceService=e,this._dataValidatorRegistryService=t,this._injector=n,this._selectionManagerService=r,this._sheetInterceptorService=i,this._sheetDataValidationModel=a,this._init()}_init(){this._registerValidators(),this._initCommandInterceptor()}_registerValidators(){[ve,se,xe,fe,N,D,I,be,ye].forEach(e=>{let n=this._injector.createInstance(e);this.disposeWithMe(this._dataValidatorRegistryService.register(n)),this.disposeWithMe((0,t.toDisposable)(()=>this._injector.delete(e)))})}_initCommandInterceptor(){this._sheetInterceptorService.interceptCommand({getMutations:e=>{if(e.id===i.ClearSelectionAllCommand.id){var n;let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),r=e.getUnitId(),i=e.getActiveSheet();if(!i)throw Error(`No active sheet found`);let a=i.getSheetId(),o=(n=this._selectionManagerService.getCurrentSelections())==null?void 0:n.map(e=>e.range),s=this._sheetDataValidationModel.getRuleObjectMatrix(r,a).clone();o&&s.removeRange(o);let{redoMutations:c,undoMutations:l}=R(r,a,s.diff(this._sheetDataValidationModel.getRules(r,a)),this._injector,`patched`);return{undos:l,redos:c}}return{undos:[],redos:[]}}})}};Z=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(n.DataValidatorRegistryService)),f(2,(0,t.Inject)(t.Injector)),f(3,(0,t.Inject)(i.SheetsSelectionsService)),f(4,(0,t.Inject)(i.SheetInterceptorService)),f(5,(0,t.Inject)(T))],Z);let Q=class extends t.Disposable{constructor(e,t,n,r){super(),this._univerInstanceService=e,this._sheetDataValidationModel=t,this._dataValidationCacheService=n,this._lifecycleService=r,this._initRecalculate()}_initRecalculate(){let e=e=>{if(e.length===0)return;let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),r=n==null?void 0:n.getActiveSheet(),i={};e.flat().forEach(e=>{i[e.unitId]||(i[e.unitId]={}),i[e.unitId][e.subUnitId]||(i[e.unitId][e.subUnitId]=[]);let n=this._univerInstanceService.getUnit(e.unitId,t.UniverInstanceType.UNIVER_SHEET),r=n==null?void 0:n.getSheetBySheetId(e.subUnitId);r&&i[e.unitId][e.subUnitId].push(...e.ranges.map(e=>t.Range.transformRange(e,r)))}),Object.entries(i).forEach(([e,t])=>{Object.entries(t).forEach(([t,i])=>{(n==null?void 0:n.getUnitId())===e&&(r==null?void 0:r.getSheetId())===t?this.validatorRanges(e,t,i):requestIdleCallback(()=>{this.validatorRanges(e,t,i)})})})};this.disposeWithMe(this._dataValidationCacheService.dirtyRanges$.pipe((0,a.bufferWhen)(()=>this._lifecycleService.lifecycle$.pipe((0,a.skip)(1),(0,a.filter)(e=>e===t.LifecycleStages.Rendered)))).subscribe(e)),this.disposeWithMe(this._dataValidationCacheService.dirtyRanges$.pipe((0,a.filter)(()=>this._lifecycleService.stage>=t.LifecycleStages.Rendered),(0,t.bufferDebounceTime)(20)).subscribe(e))}async _validatorByCell(e,n,r,i){let a=e.getUnitId(),o=n.getSheetId();if(!t.Tools.isDefine(r)||!t.Tools.isDefine(i))throw Error(`row or col is not defined, row: ${r}, col: ${i}`);let s=r,c=i,l=n.getMergedCell(r,i);l&&(s=l.startRow,c=l.startColumn);let u=this._sheetDataValidationModel.getRuleByLocation(a,o,s,c);return u?new Promise(t=>{this._sheetDataValidationModel.validator(u,{unitId:a,subUnitId:o,row:s,col:c,worksheet:n,workbook:e},e=>{t(e)})}):t.DataValidationStatus.VALID}async validatorCell(e,n,r,i){let a=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!a)throw Error(`cannot find current workbook, unitId: ${e}`);let o=a.getSheetBySheetId(n);if(!o)throw Error(`cannot find current worksheet, sheetId: ${n}`);return this._validatorByCell(a,o,r,i)}async validatorRanges(e,n,r){if(!r.length)return Promise.resolve([]);let i=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!i)throw Error(`cannot find current workbook, unitId: ${e}`);let a=i.getSheetBySheetId(n);if(!a)throw Error(`cannot find current worksheet, sheetId: ${n}`);let o=this._sheetDataValidationModel.getRules(e,n),s=[];for(let e of o)s.push(...e.ranges);let c=[];for(let e of r)for(let n of s){let r=(0,t.getIntersectRange)(e,n);r&&c.push(r)}let l=[],u=await Promise.all(c.map((e,t)=>{let n=[];for(let r=e.startRow;r<=e.endRow;r++)for(let o=e.startColumn;o<=e.endColumn;o++){n.push(this._validatorByCell(i,a,r,o));let e=a.getMergedCell(r,o);e&&l.push({resultRowIndex:t,resultColIndex:n.length-1,row:e.startRow,col:e.startColumn})}return Promise.all(n)}));return l.length&&l.forEach(({resultRowIndex:r,resultColIndex:i,row:a,col:o})=>{if(u[r][i]===t.DataValidationStatus.VALIDATING){var s;u[r][i]=(s=this._dataValidationCacheService.getValue(e,n,a,o))==null?t.DataValidationStatus.VALID:s}}),u}async validatorWorksheet(e,n){let r=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!r)throw Error(`cannot find current workbook, unitId: ${e}`);let i=r.getSheetBySheetId(n);if(!i)throw Error(`cannot find current worksheet, sheetId: ${n}`);let a=this._sheetDataValidationModel.getRules(e,n);return await Promise.all(a.map(e=>Promise.all(e.ranges.map(e=>{let n=[];return t.Range.foreach(e,(e,t)=>{n.push(this._validatorByCell(r,i,e,t))}),Promise.all(n)})))),this._dataValidationCacheService.ensureCache(e,n)}async validatorWorkbook(e){let t=this._sheetDataValidationModel.getSubUnitIds(e),n=await Promise.all(t.map(t=>this.validatorWorksheet(e,t))),r={};return n.forEach((e,n)=>{r[t[n]]=e}),r}getDataValidations(e,n,r){let i=this._sheetDataValidationModel.getRuleObjectMatrix(e,n),a=new Set;r.forEach(e=>{t.Range.foreach(e,(e,t)=>{let n=i.getValue(e,t);n&&a.add(n)})});let o=[];for(let t of a){let r=this._sheetDataValidationModel.getRuleById(e,n,t);r&&o.push(r)}return o}getDataValidation(e,t,n){return this.getDataValidations(e,t,n)[0]}};Q=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(T)),f(2,(0,t.Inject)(m)),f(3,(0,t.Inject)(t.LifecycleService))],Q);let $=class extends t.Plugin{constructor(e=_e,n,r,i){super(),this._config=e,this._injector=n,this._commandService=r,this._configService=i;let{...a}=(0,t.merge)({},_e,this._config);this._configService.setConfig(q,a)}onStarting(){[[m],[C],[w],[y],[Q],[T],[Z],[K],[X],[Y],[J]].forEach(e=>{this._injector.add(e)}),[B,z,V,H,me,W,U].forEach(e=>{this._commandService.registerCommand(e)}),this._injector.get(m),this._injector.get(Q),this._injector.get(Z),this._injector.get(J),this._injector.get(Y)}onReady(){this._injector.get(X)}onRendered(){this._injector.get(K)}};d($,`pluginName`,G),d($,`packageName`,he),d($,`version`,ge),d($,`type`,t.UniverInstanceType.UNIVER_SHEET),$=p([(0,t.DependentOn)(s.UniverSheetsFormulaPlugin,n.UniverDataValidationPlugin),f(1,(0,t.Inject)(t.Injector)),f(2,t.ICommandService),f(3,t.IConfigService)],$);function Se(e){let n=e.get(i.SheetsSelectionsService).getCurrentSelections().map(e=>e.range);return{uid:(0,t.generateRandomId)(6),type:t.DataValidationType.DECIMAL,operator:t.DataValidationOperator.EQUAL,formula1:`100`,ranges:n==null?[{startColumn:0,endColumn:0,startRow:0,endRow:0}]:n}}e.AddSheetDataValidationCommand=B,e.BASE_FORMULA_INPUT_NAME=`data-validation.formula-input`,e.CHECKBOX_FORMULA_1=1,e.CHECKBOX_FORMULA_2=0,e.CHECKBOX_FORMULA_INPUT_NAME=`data-validation.checkbox-formula-input`,e.CUSTOM_FORMULA_INPUT_NAME=`data-validation.custom-formula-input`,e.CheckboxValidator=D,e.ClearRangeDataValidationCommand=U,e.DATA_VALIDATION_PLUGIN_NAME=G,Object.defineProperty(e,`DataValidationCacheService`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(e,`DataValidationCustomFormulaService`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(e,`DataValidationFormulaController`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(e,`DataValidationFormulaService`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(e,`DataValidationListCacheService`,{enumerable:!0,get:function(){return C}}),e.DateValidator=N,e.LIST_FORMULA_INPUT_NAME=`data-validation.list-formula-input`,e.ListMultipleValidator=be,e.ListValidator=I,e.RemoveSheetAllDataValidationCommand=W,e.RemoveSheetDataValidationCommand=me,Object.defineProperty(e,`SheetDataValidationModel`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(e,`SheetsDataValidationValidatorService`,{enumerable:!0,get:function(){return Q}}),Object.defineProperty(e,`UniverSheetsDataValidationPlugin`,{enumerable:!0,get:function(){return $}}),e.UpdateSheetDataValidationOptionsCommand=H,e.UpdateSheetDataValidationRangeCommand=z,e.UpdateSheetDataValidationSettingCommand=V,e.createDefaultNewRule=Se,e.deserializeListOptions=x,e.getCellValueNumber=F,e.getCellValueOrigin=b,e.getDataValidationCellValue=ne,e.getDataValidationDiffMutations=R,e.getFormulaCellData=g,e.getFormulaResult=h,e.getTransformedFormula=S,e.isLegalFormulaResult=_,e.serializeListOptions=te,e.transformCheckboxValue=E});
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("@univerjs/core"),require("@univerjs/data-validation"),require("@univerjs/engine-formula"),require("@univerjs/sheets"),require("rxjs"),require("@univerjs/protocol"),require("@univerjs/sheets-formula")):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/data-validation`,`@univerjs/engine-formula`,`@univerjs/sheets`,`rxjs`,`@univerjs/protocol`,`@univerjs/sheets-formula`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsDataValidation={},e.UniverCore,e.UniverDataValidation,e.UniverEngineFormula,e.UniverSheets,e.rxjs,e.UniverProtocol,e.UniverSheetsFormula))})(this,function(e,t,n,r,i,a,o,s){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});function c(e){"@babel/helpers - typeof";return c=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},c(e)}function l(e,t){if(c(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(c(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function u(e){var t=l(e,`string`);return c(t)==`symbol`?t:t+``}function d(e,t,n){return(t=u(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function f(e,t){return function(n,r){t(n,r,e)}}function p(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let m=class extends t.Disposable{constructor(e,t,n){super(),this._commandService=e,this._univerInstanceService=t,this._sheetDataValidationModel=n,d(this,`_cacheMatrix`,new Map),d(this,`_dirtyRanges$`,new a.Subject),d(this,`dirtyRanges$`,this._dirtyRanges$.asObservable()),this._initDirtyRanges(),this._initSheetRemove()}_initDirtyRanges(){this.disposeWithMe(this._commandService.onCommandExecuted((e,n)=>{if(e.id===i.SetRangeValuesMutation.id&&!(n!=null&&n.onlyLocal)){let{cellValue:n,unitId:r,subUnitId:i}=e.params;if(n){let e=new t.ObjectMatrix(n).getDataRange();if(e.endRow===-1)return;let a=this._sheetDataValidationModel.getRules(r,i),o=[];for(let e of a)o.push(...e.ranges);let s=[];for(let n of o){let r=(0,t.getIntersectRange)(n,e);r&&s.push(r)}s.length&&this.markRangeDirty(r,i,s,!0)}}}))}_initSheetRemove(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===i.RemoveSheetMutation.id){var t;let{unitId:n,subUnitId:r}=e.params;(t=this._cacheMatrix.get(n))==null||t.delete(r)}})),this.disposeWithMe(this._univerInstanceService.unitDisposed$.subscribe(e=>{e.type===t.UniverInstanceType.UNIVER_SHEET&&this._cacheMatrix.delete(e.getUnitId())}))}_ensureCache(e,n){let r=this._cacheMatrix.get(e);r||(r=new Map,this._cacheMatrix.set(e,r));let i=r.get(n);return i||(i=new t.ObjectMatrix,r.set(n,i)),i}ensureCache(e,t){return this._ensureCache(e,t)}addRule(e,t,n){this.markRangeDirty(e,t,n.ranges)}removeRule(e,t,n){this._deleteRange(e,t,n.ranges)}markRangeDirty(e,n,r,i){let a=this._ensureCache(e,n);r.forEach(e=>{t.Range.foreach(e,(e,t)=>{a.getValue(e,t)!==void 0&&a.setValue(e,t,void 0)})}),this._dirtyRanges$.next({unitId:e,subUnitId:n,ranges:r,isSetRange:i})}_deleteRange(e,n,r){let i=this._ensureCache(e,n);r.forEach(e=>{t.Range.foreach(e,(e,t)=>{i.realDeleteValue(e,t)})}),this._dirtyRanges$.next({unitId:e,subUnitId:n,ranges:r})}getValue(e,t,n,r){return this._ensureCache(e,t).getValue(n,r)}};m=p([f(0,(0,t.Inject)(t.ICommandService)),f(1,(0,t.Inject)(t.IUniverInstanceService)),f(2,(0,t.Inject)(n.DataValidationModel))],m);function h(e){var t;return e==null||(t=e[0])==null||(t=t[0])==null?void 0:t.v}function g(e){var t;return e==null||(t=e[0])==null?void 0:t[0]}function _(e){return!r.ERROR_TYPE_SET.has(e)}function v(e,t){var n;let r=t.getValidatorItem(e);return(n=r==null?void 0:r.offsetFormulaByRange)==null?!1:n}let y=class extends t.Disposable{constructor(e,t,n,r,i){super(),this._instanceSrv=e,this._registerOtherFormulaService=t,this._dataValidationModel=n,this._dataValidationCacheService=r,this._validatorRegistryService=i,d(this,`_ruleFormulaMap`,new Map),d(this,`_ruleFormulaMap2`,new Map),this._initFormulaResultHandler(),this._initDirtyRanges()}dispose(){super.dispose(),this._ruleFormulaMap.clear(),this._ruleFormulaMap2.clear()}_initFormulaResultHandler(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(e=>{for(let n in e){let r=e[n];if(this._instanceSrv.getUnitType(n)===t.UniverInstanceType.UNIVER_SHEET)for(let e in r){let t=r[e],{ruleFormulaMap:i}=this._ensureMaps(n,e);t.forEach(t=>{var r,a;let o=i.get((r=t.extra)==null?void 0:r.ruleId),s=this._dataValidationModel.getRuleById(n,e,(a=t.extra)==null?void 0:a.ruleId);s&&o&&this._dataValidationCacheService.markRangeDirty(n,e,s.ranges)})}}}))}_ensureMaps(e,t){let n=this._ruleFormulaMap.get(e),r=this._ruleFormulaMap2.get(e);n||(n=new Map,this._ruleFormulaMap.set(e,n)),r||(r=new Map,this._ruleFormulaMap2.set(e,r));let i=n.get(t);i||(i=new Map,n.set(t,i));let a=r.get(t);return a||(a=new Map,r.set(t,a)),{ruleFormulaMap:i,ruleFormulaMap2:a}}_registerFormula(e,t,n,i,a){return this._registerOtherFormulaService.registerFormulaWithRange(e,t,i,a,{ruleId:n},r.OtherFormulaBizType.DATA_VALIDATION_CUSTOM,n)}_handleDirtyRanges(e,n,r){this._dataValidationModel.getRules(e,n).forEach(i=>{let a=i.ranges;t.Rectangle.doAnyRangesIntersect(a,r)&&this.makeRuleDirty(e,n,i.uid)})}_initDirtyRanges(){this.disposeWithMe(this._dataValidationCacheService.dirtyRanges$.subscribe(e=>{e.isSetRange&&this._handleDirtyRanges(e.unitId,e.subUnitId,e.ranges)}))}deleteByRuleId(e,t,n){let{ruleFormulaMap:r,ruleFormulaMap2:i}=this._ensureMaps(e,t),a=this._dataValidationModel.getRuleById(e,t,n),o=r.get(n);if(!a||!o)return;let s=r.get(n);s&&(r.delete(n),this._registerOtherFormulaService.deleteFormula(e,t,[s.formulaId]));let c=i.get(n);c&&(i.delete(n),this._registerOtherFormulaService.deleteFormula(e,t,[c.formulaId]))}_addFormulaByRange(e,n,r,i,a,o){let{ruleFormulaMap:s,ruleFormulaMap2:c}=this._ensureMaps(e,n),l=o[0].startRow,u=o[0].startColumn;if(i&&(0,t.isFormulaString)(i)){let t=this._registerFormula(e,n,r,i,o);s.set(r,{formula:i,originCol:u,originRow:l,formulaId:t})}if(a&&(0,t.isFormulaString)(a)){let t=this._registerFormula(e,n,r,a,o);c.set(r,{formula:a,originCol:u,originRow:l,formulaId:t})}}addRule(e,t,n){if(v(n.type,this._validatorRegistryService)){let{ranges:r,formula1:i,formula2:a,uid:o}=n;this._addFormulaByRange(e,t,o,i,a,r)}}async getCellFormulaValue(e,t,n,r,i){var a;let{ruleFormulaMap:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return Promise.resolve(void 0);let c=await this._registerOtherFormulaService.getFormulaValue(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}async getCellFormula2Value(e,t,n,r,i){var a;let{ruleFormulaMap2:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return Promise.resolve(void 0);let c=await this._registerOtherFormulaService.getFormulaValue(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}getCellFormulaValueSync(e,t,n,r,i){var a;let{ruleFormulaMap:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return;let c=this._registerOtherFormulaService.getFormulaValueSync(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}getCellFormula2ValueSync(e,t,n,r,i){var a;let{ruleFormulaMap2:o}=this._ensureMaps(e,t),s=o.get(n);if(!s)return;let c=this._registerOtherFormulaService.getFormulaValueSync(e,t,s.formulaId),{originRow:l,originCol:u}=s,d=r-l,f=i-u;return g(c==null||(a=c.result)==null||(a=a[d])==null?void 0:a[f])}getRuleFormulaInfo(e,t,n){let{ruleFormulaMap:r}=this._ensureMaps(e,t);return r.get(n)}makeRuleDirty(e,t,n){var r,i;let a=(r=this._ruleFormulaMap.get(e))==null||(r=r.get(t))==null?void 0:r.get(n),o=(i=this._ruleFormulaMap2.get(e))==null||(i=i.get(t))==null?void 0:i.get(n);a&&this._registerOtherFormulaService.markFormulaDirty(e,t,a.formulaId),o&&this._registerOtherFormulaService.markFormulaDirty(e,t,o.formulaId)}};y=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(r.RegisterOtherFormulaService)),f(2,(0,t.Inject)(n.DataValidationModel)),f(3,(0,t.Inject)(m)),f(4,(0,t.Inject)(n.DataValidatorRegistryService))],y);function b(e){return(0,t.getOriginCellValue)(e)}function ee(e){var t;return String((t=b(e))==null?``:t)}let x=class extends t.Disposable{constructor(e,t){super(),this._injector=e,this._dataValidationModel=t,d(this,`_cache`,new Map),this._initRuleChangeListener()}_initRuleChangeListener(){this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{(e.type===`remove`||e.type===`update`)&&this.markRuleDirty(e.unitId,e.subUnitId,e.rule.uid)}))}getOrCompute(e,t,n){let r=this.getCache(e,t,n.uid);if(r)return r;let i=this._injector.get(S).getRuleFormulaResultSync(e,t,n.uid);return this.computeAndCache(e,t,n,i)}_ensureCache(e,t){let n=this._cache.get(e);n||(n=new Map,this._cache.set(e,n));let r=n.get(t);return r||(r=new Map,n.set(t,r)),r}getCache(e,t,n){var r;return(r=this._cache.get(e))==null||(r=r.get(t))==null?void 0:r.get(n)}setCache(e,t,n,r){this._ensureCache(e,t).set(n,r)}markRuleDirty(e,t,n){var r;(r=this._cache.get(e))==null||(r=r.get(t))==null||r.delete(n)}clear(){this._cache.clear()}computeAndCache(e,n,r,a){var o;let{formula1:s=``,formula2:c=``}=r,l=(0,t.isFormulaString)(s)?this._getRuleFormulaResultSet(a==null||(o=a[0])==null||(o=o.result)==null||(o=o[0])==null?void 0:o[0]):(0,i.deserializeListOptions)(s),u=c.split(`,`),d=l.map((e,t)=>({label:e,color:u[t]||``})),f={};for(let e of d)e.color&&(f[e.label]=e.color);let p={list:l,listWithColor:d,colorMap:f,set:new Set(l)};return this.setCache(e,n,r.uid,p),p}_getRuleFormulaResultSet(e){if(!e)return[];let n=new Set;for(let i=0,a=e.length;i<a;i++){let a=e[i];if(a)for(let e=0,i=a.length;e<i;e++){let i=a[e],o=b(i);if(o!=null){var r;if(typeof o!=`string`&&typeof(i==null?void 0:i.s)==`object`&&!((r=i.s)==null||(r=r.n)==null)&&r.pattern){n.add(t.numfmt.format(i.s.n.pattern,o,{throws:!1}));continue}let e=typeof o==`string`?o:String(o);_(e)&&n.add(e)}}}return[...n]}};x=p([f(0,(0,t.Inject)(t.Injector)),f(1,(0,t.Inject)(n.DataValidationModel))],x);let S=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._instanceService=e,this._registerOtherFormulaService=t,this._dataValidationCacheService=n,this._dataValidationModel=r,this._validatorRegistryService=i,this._listCacheService=a,d(this,`_formulaRuleMap`,new Map),this._initFormulaResultHandler()}_initFormulaResultHandler(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(e=>{for(let n in e){let r=e[n];if(this._instanceService.getUnitType(n)===t.UniverInstanceType.UNIVER_SHEET)for(let e in r){let t=r[e],i=this._ensureRuleFormulaMap(n,e);t.forEach(t=>{var r;let a=(r=t.extra)==null?void 0:r.ruleId;if(a&&i.get(a)){let t=this._dataValidationModel.getRuleById(n,e,a);t&&(this._listCacheService.markRuleDirty(n,e,a),this._dataValidationCacheService.markRangeDirty(n,e,t.ranges))}})}}}))}_ensureRuleFormulaMap(e,t){let n=this._formulaRuleMap.get(e);n||(n=new Map,this._formulaRuleMap.set(e,n));let r=n.get(t);return r||(r=new Map,n.set(t,r)),r}_registerSingleFormula(e,t,n,i){return this._registerOtherFormulaService.registerFormulaWithRange(e,t,n,[{startColumn:0,endColumn:0,startRow:0,endRow:0}],{ruleId:i},r.OtherFormulaBizType.DATA_VALIDATION,i)}addRule(e,n,r){if(!v(r.type,this._validatorRegistryService)&&r.type!==t.DataValidationType.CHECKBOX){let{formula1:i,formula2:a,uid:o}=r,s=(0,t.isFormulaString)(i),c=(0,t.isFormulaString)(a);if(!s&&!c)return;let l=this._ensureRuleFormulaMap(e,n),u=[void 0,void 0];s&&(u[0]={id:this._registerSingleFormula(e,n,i,o),text:i}),c&&(u[1]={id:this._registerSingleFormula(e,n,a,o),text:a}),l.set(o,u)}}removeRule(e,t,n){let r=this._ensureRuleFormulaMap(e,t).get(n);if(!r)return;let[i,a]=r,o=[i==null?void 0:i.id,a==null?void 0:a.id].filter(Boolean);o.length&&this._registerOtherFormulaService.deleteFormula(e,t,o)}getRuleFormulaResult(e,t,n){let r=this._ensureRuleFormulaMap(e,t).get(n);if(!r)return Promise.resolve(null);let i=async n=>n&&this._registerOtherFormulaService.getFormulaValue(e,t,n.id);return Promise.all([i(r[0]),i(r[1])])}getRuleFormulaResultSync(e,t,n){let r=this._ensureRuleFormulaMap(e,t).get(n);if(r)return r.map(n=>{if(n)return this._registerOtherFormulaService.getFormulaValueSync(e,t,n.id)})}getRuleFormulaInfo(e,t,n){return this._ensureRuleFormulaMap(e,t).get(n)}};S=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(r.RegisterOtherFormulaService)),f(2,(0,t.Inject)(m)),f(3,(0,t.Inject)(n.DataValidationModel)),f(4,(0,t.Inject)(n.DataValidatorRegistryService)),f(5,(0,t.Inject)(x))],S);var te=class e{constructor(e,n,r,i,a=!1){this._unitId=n,this._subUnitId=r,this._univerInstanceService=i,this._disableTree=a,d(this,`_map`,void 0),d(this,`_tree`,new t.RBush),d(this,`_dirty`,!0),d(this,`_buildTree`,()=>{if(!this._dirty||this._disableTree)return;this._tree.clear();let e=[];this._map.forEach((t,n)=>{t.forEach(t=>{e.push({minX:t.startRow,maxX:t.endRow,minY:t.startColumn,maxY:t.endColumn,ruleId:n})})}),this._tree.load(e),this._dirty=!1}),d(this,`_debonceBuildTree`,(0,t.debounce)(this._buildTree,0)),this._map=e,this._buildTree()}get _worksheet(){var e;return(e=this._univerInstanceService.getUnit(this._unitId,t.UniverInstanceType.UNIVER_SHEET))==null?void 0:e.getSheetBySheetId(this._subUnitId)}_addRule(e,n){if(!this._worksheet)return;let r=t.Rectangle.mergeRanges(n.map(e=>t.Range.transformRange(e,this._worksheet)));this._map.forEach((e,n)=>{let i=t.Rectangle.subtractMulti(e,r);i.length===0?this._map.delete(n):this._map.set(n,i)}),this._dirty=!0,this._map.set(e,r),this._debonceBuildTree()}addRule(e){this._addRule(e.uid,e.ranges)}removeRange(e){if(!this._worksheet)return;let n=e.map(e=>t.Range.transformRange(e,this._worksheet));this._map.forEach((e,r)=>{let i=t.Rectangle.subtractMulti(e,n);i.length===0?this._map.delete(r):this._map.set(r,i)}),this._dirty=!0,this._debonceBuildTree()}_removeRule(e){this._map.delete(e),this._dirty=!0,this._debonceBuildTree()}removeRule(e){this._removeRule(e.uid)}updateRange(e,t){this._removeRule(e),this._addRule(e,t)}addRangeRules(e){e.forEach(({id:e,ranges:n})=>{if(!n.length)return;let r=this._map.get(e);r?(this._map.set(e,t.Rectangle.mergeRanges([...r,...n])),r=this._map.get(e)):(r=n,this._map.set(e,r)),this._map.forEach((r,i)=>{if(i===e)return;let a=t.Rectangle.subtractMulti(r,n);a.length===0?this._map.delete(i):this._map.set(i,a)})}),this._dirty=!0,this._debonceBuildTree()}diff(e){let n=[],r=0;return e.forEach((e,i)=>{var a;let o=(a=this._map.get(e.uid))==null?[]:a,s=e.ranges;o.length!==0&&(o.length!==s.length||o.some((e,n)=>!t.Rectangle.equals(e,s[n])))&&n.push({type:`update`,ruleId:e.uid,oldRanges:s,newRanges:t.Rectangle.sort(o),rule:e}),o.length===0&&(n.push({type:`delete`,rule:e,index:i-r}),r++)}),n}diffWithAddition(e,n){let r=[],i=0;return e.forEach((e,n)=>{var a;let o=(a=this._map.get(e.uid))==null?[]:a,s=e.ranges;o.length!==0&&(o.length!==s.length||o.some((e,n)=>!t.Rectangle.equals(e,s[n])))&&r.push({type:`update`,ruleId:e.uid,oldRanges:s,newRanges:t.Rectangle.sort(o),rule:e}),o.length===0&&(r.push({type:`delete`,rule:e,index:n-i}),i++)}),Array.from(n).forEach(e=>{var n;let i=(n=this._map.get(e.uid))==null?[]:n;r.push({type:`add`,rule:{...e,ranges:t.Rectangle.sort(i)}})}),r}clone(){return new e(new Map(t.Tools.deepClone(Array.from(this._map.entries()))),this._unitId,this._subUnitId,this._univerInstanceService,!0)}getValue(e,t){this._dirty&&this._buildTree();let n=this._tree.search({minX:e,maxX:e,minY:t,maxY:t});return n.length>0?n[0].ruleId:void 0}};let C=class extends t.Disposable{constructor(e,t,n,r,i,o,s){super(),this._dataValidationModel=e,this._univerInstanceService=t,this._dataValidatorRegistryService=n,this._dataValidationCacheService=r,this._dataValidationFormulaService=i,this._dataValidationCustomFormulaService=o,this._commandService=s,d(this,`_ruleMatrixMap`,new Map),d(this,`_validStatusChange$`,new a.Subject),d(this,`_ruleChange$`,new a.Subject),d(this,`ruleChange$`,this._ruleChange$.asObservable()),d(this,`validStatusChange$`,this._validStatusChange$.asObservable()),this._initRuleUpdateListener(),this.disposeWithMe(()=>{this._ruleChange$.complete(),this._validStatusChange$.complete()}),this._initUniverInstanceListener()}_initUniverInstanceListener(){this.disposeWithMe(this._univerInstanceService.unitDisposed$.subscribe(e=>{this._ruleMatrixMap.delete(e.getUnitId())})),this.disposeWithMe(this._commandService.onCommandExecuted(e=>{if(e.id===i.RemoveSheetMutation.id){let{unitId:t,subUnitId:n}=e.params,r=this._ruleMatrixMap.get(t);r&&r.delete(n)}}))}_initRuleUpdateListener(){let e=this._dataValidationModel.getAll();for(let[t,n]of e)for(let[e,r]of n)for(let n of r)this._addRule(t,e,n),this._ruleChange$.next({type:`add`,unitId:t,subUnitId:e,rule:n,source:`patched`});this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{switch(e.type){case`add`:this._addRule(e.unitId,e.subUnitId,e.rule);break;case`update`:this._updateRule(e.unitId,e.subUnitId,e.rule.uid,e.oldRule,e.updatePayload);break;case`remove`:this._removeRule(e.unitId,e.subUnitId,e.rule);break}this._ruleChange$.next(e)}))}_ensureRuleMatrix(e,t){let n=this._ruleMatrixMap.get(e);n||(n=new Map,this._ruleMatrixMap.set(e,n));let r=n.get(t);return r||(r=new te(new Map,e,t,this._univerInstanceService),n.set(t,r)),r}_addRuleSideEffect(e,t,n){this._ensureRuleMatrix(e,t).addRule(n),this._dataValidationCacheService.addRule(e,t,n),this._dataValidationFormulaService.addRule(e,t,n),this._dataValidationCustomFormulaService.addRule(e,t,n)}_addRule(e,t,n){(Array.isArray(n)?n:[n]).forEach(n=>{this._addRuleSideEffect(e,t,n)})}_updateRule(e,t,r,i,a){let o=this._ensureRuleMatrix(e,t),s={...i,...a.payload};a.type===n.UpdateRuleType.RANGE?o.updateRange(r,a.payload):a.type===n.UpdateRuleType.ALL&&o.updateRange(r,a.payload.ranges),this._dataValidationCacheService.removeRule(e,t,i),this._dataValidationCacheService.addRule(e,t,s),this._dataValidationFormulaService.removeRule(e,t,i.uid),this._dataValidationFormulaService.addRule(e,t,s),this._dataValidationCustomFormulaService.deleteByRuleId(e,t,r),this._dataValidationCustomFormulaService.addRule(e,t,s)}_removeRule(e,t,n){this._ensureRuleMatrix(e,t).removeRule(n),this._dataValidationCacheService.removeRule(e,t,n),this._dataValidationCustomFormulaService.deleteByRuleId(e,t,n.uid)}getValidator(e){return this._dataValidatorRegistryService.getValidatorItem(e)}getRuleIdByLocation(e,t,n,r){return this._ensureRuleMatrix(e,t).getValue(n,r)}getRuleByLocation(e,t,n,r){let i=this.getRuleIdByLocation(e,t,n,r);if(i)return this._dataValidationModel.getRuleById(e,t,i)}validator(e,n,r){let{col:i,row:a,unitId:o,subUnitId:s,worksheet:c}=n,l=(t,n)=>{r&&r(t,n),n&&this._validStatusChange$.next({unitId:o,subUnitId:s,ruleId:e.uid,status:t,row:a,col:i})},u=c.getCellValueOnly(a,i),d=this.getValidator(e.type),f=c.getCellRaw(a,i),p=b(f);if(d){let r=this._dataValidationCacheService.ensureCache(o,s),c=r.getValue(a,i);return c==null?(r.setValue(a,i,t.DataValidationStatus.VALIDATING),d.validator({value:p,unitId:o,subUnitId:s,row:a,column:i,worksheet:n.worksheet,workbook:n.workbook,interceptValue:b(u),t:f==null?void 0:f.t},e).then(e=>{let n=e?t.DataValidationStatus.VALID:t.DataValidationStatus.INVALID,o=r.getValue(a,i);n===t.DataValidationStatus.VALID?r.realDeleteValue(a,i):r.setValue(a,i,n),l(n,c!==o)}),t.DataValidationStatus.VALIDATING):(l(c==null?t.DataValidationStatus.VALID:c,!1),c==null?t.DataValidationStatus.VALID:c)}else return l(t.DataValidationStatus.VALID,!1),t.DataValidationStatus.VALID}getRuleObjectMatrix(e,t){return this._ensureRuleMatrix(e,t)}getRuleById(e,t,n){return this._dataValidationModel.getRuleById(e,t,n)}getRuleIndex(e,t,n){return this._dataValidationModel.getRuleIndex(e,t,n)}getRules(e,t){return[...this._dataValidationModel.getRules(e,t)]}getUnitRules(e){return this._dataValidationModel.getUnitRules(e)}deleteUnitRules(e){return this._dataValidationModel.deleteUnitRules(e)}getSubUnitIds(e){return this._dataValidationModel.getSubUnitIds(e)}getAll(){return this._dataValidationModel.getAll()}};C=p([f(0,(0,t.Inject)(n.DataValidationModel)),f(1,t.IUniverInstanceService),f(2,(0,t.Inject)(n.DataValidatorRegistryService)),f(3,(0,t.Inject)(m)),f(4,(0,t.Inject)(S)),f(5,(0,t.Inject)(y)),f(6,t.ICommandService)],C);let ne={[t.DataValidationOperator.BETWEEN]:`sheets-data-validation.operators.between`,[t.DataValidationOperator.EQUAL]:`sheets-data-validation.operators.equal`,[t.DataValidationOperator.GREATER_THAN]:`sheets-data-validation.operators.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`sheets-data-validation.operators.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`sheets-data-validation.operators.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`sheets-data-validation.operators.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`sheets-data-validation.operators.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`sheets-data-validation.operators.notEqual`},w={[t.DataValidationOperator.BETWEEN]:`sheets-data-validation.ruleName.between`,[t.DataValidationOperator.EQUAL]:`sheets-data-validation.ruleName.equal`,[t.DataValidationOperator.GREATER_THAN]:`sheets-data-validation.ruleName.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`sheets-data-validation.ruleName.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`sheets-data-validation.ruleName.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`sheets-data-validation.ruleName.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`sheets-data-validation.ruleName.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`sheets-data-validation.ruleName.notEqual`,NONE:`sheets-data-validation.ruleName.legal`},T={[t.DataValidationOperator.BETWEEN]:`sheets-data-validation.errorMsg.between`,[t.DataValidationOperator.EQUAL]:`sheets-data-validation.errorMsg.equal`,[t.DataValidationOperator.GREATER_THAN]:`sheets-data-validation.errorMsg.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`sheets-data-validation.errorMsg.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`sheets-data-validation.errorMsg.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`sheets-data-validation.errorMsg.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`sheets-data-validation.errorMsg.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`sheets-data-validation.errorMsg.notEqual`,NONE:`sheets-data-validation.errorMsg.legal`},re={[t.DataValidationOperator.BETWEEN]:`sheets-data-validation.textLength.errorMsg.between`,[t.DataValidationOperator.EQUAL]:`sheets-data-validation.textLength.errorMsg.equal`,[t.DataValidationOperator.GREATER_THAN]:`sheets-data-validation.textLength.errorMsg.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`sheets-data-validation.textLength.errorMsg.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`sheets-data-validation.textLength.errorMsg.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`sheets-data-validation.textLength.errorMsg.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`sheets-data-validation.textLength.errorMsg.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`sheets-data-validation.textLength.errorMsg.notEqual`},E=`{FORMULA1}`,ie=`{FORMULA2}`,D=`{TYPE}`;var O=class extends n.BaseDataValidator{get operatorNames(){return this.operators.map(e=>this.localeService.t(ne[e]))}generateRuleName(e){var t,n;if(!e.operator)return this.localeService.t(w.NONE).replace(D,this.titleStr);let r=this.localeService.t(w[e.operator]).replace(E,(t=e.formula1)==null?``:t).replace(ie,(n=e.formula2)==null?``:n);return`${this.titleStr} ${r}`}generateRuleErrorMessage(e,t){var n,r;return e.operator?`${this.localeService.t(T[e.operator]).replace(E,(n=e.formula1)==null?``:n).replace(ie,(r=e.formula2)==null?``:r)}`:this.localeService.t(T.NONE).replace(D,this.titleStr)}};function ae(e,n){return t.Tools.isBlank(e)?n.t(`sheets-data-validation.validFail.value`):(0,t.isFormulaString)(e)?n.t(`sheets-data-validation.validFail.primitive`):``}let k=e=>t.Tools.isDefine(e)&&String(e).toLowerCase()===`true`?`1`:String(e).toLowerCase()===`false`?`0`:e;var oe=class extends O{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.CHECKBOX),d(this,`title`,`sheets-data-validation.checkbox.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`order`,41),d(this,`offsetFormulaByRange`,!1),d(this,`_formulaService`,this.injector.get(S)),d(this,`skipDefaultFontRender`,(e,t,n)=>{let{unitId:r,subUnitId:i}=n,{formula1:a,formula2:o}=this.parseFormulaSync(e,r,i),s=`${t==null?``:t}`;return!s||s===`${a}`||s===`${o}`})}validatorFormula(e,n,r){let{formula1:i,formula2:a}=e,o=i===a;if(t.Tools.isBlank(i)&&t.Tools.isBlank(a))return{success:!0};if(o)return{success:!1,formula1:this.localeService.t(`sheets-data-validation.validFail.checkboxEqual`),formula2:this.localeService.t(`sheets-data-validation.validFail.checkboxEqual`)};let s=ae(i,this.localeService),c=ae(a,this.localeService);return{success:!s&&!c,formula1:s,formula2:c}}async parseFormula(e,n,r){var i,a;let{formula1:o=1,formula2:s=0}=e,c=await this._formulaService.getRuleFormulaResult(n,r,e.uid),l=(0,t.isFormulaString)(o)?h(c==null||(i=c[0])==null||(i=i.result)==null?void 0:i[0][0]):o,u=(0,t.isFormulaString)(s)?h(c==null||(a=c[1])==null||(a=a.result)==null?void 0:a[0][0]):s,d=_(String(l))&&_(String(u));return{formula1:k(l),formula2:k(u),originFormula1:l,originFormula2:u,isFormulaValid:d}}getExtraStyle(e,n){return{tb:t.WrapStrategy.CLIP}}parseFormulaSync(e,n,r){var i,a;let{formula1:o=1,formula2:s=0}=e,c=this._formulaService.getRuleFormulaResultSync(n,r,e.uid),l=(0,t.isFormulaString)(o)?h(c==null||(i=c[0])==null||(i=i.result)==null?void 0:i[0][0]):o,u=(0,t.isFormulaString)(s)?h(c==null||(a=c[1])==null||(a=a.result)==null?void 0:a[0][0]):s,d=_(String(l))&&_(String(u));return{formula1:k(l),formula2:k(u),originFormula1:l,originFormula2:u,isFormulaValid:d}}async isValidType(e,n,r){let{value:i,unitId:a,subUnitId:o}=e,{formula1:s,formula2:c,originFormula1:l,originFormula2:u}=await this.parseFormula(r,a,o);return!t.Tools.isDefine(s)||!t.Tools.isDefine(c)?!0:t.Tools.isDefine(i)&&(String(i)===String(s)||String(i)===String(c)||String(i)===String(l==null?``:l)||String(i)===String(u==null?``:u))}generateRuleErrorMessage(e){return this.localeService.t(`sheets-data-validation.checkbox.error`)}generateRuleName(e){return this.titleStr}};let se={[t.DataValidationOperator.BETWEEN]:`sheets-data-validation.date.operators.between`,[t.DataValidationOperator.EQUAL]:`sheets-data-validation.date.operators.equal`,[t.DataValidationOperator.GREATER_THAN]:`sheets-data-validation.date.operators.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`sheets-data-validation.date.operators.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`sheets-data-validation.date.operators.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`sheets-data-validation.date.operators.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`sheets-data-validation.date.operators.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`sheets-data-validation.date.operators.notEqual`};t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL;let ce={[t.DataValidationOperator.BETWEEN]:`sheets-data-validation.date.ruleName.between`,[t.DataValidationOperator.EQUAL]:`sheets-data-validation.date.ruleName.equal`,[t.DataValidationOperator.GREATER_THAN]:`sheets-data-validation.date.ruleName.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`sheets-data-validation.date.ruleName.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`sheets-data-validation.date.ruleName.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`sheets-data-validation.date.ruleName.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`sheets-data-validation.date.ruleName.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`sheets-data-validation.date.ruleName.notEqual`,NONE:`sheets-data-validation.date.ruleName.legal`},le={[t.DataValidationOperator.BETWEEN]:`sheets-data-validation.date.errorMsg.between`,[t.DataValidationOperator.EQUAL]:`sheets-data-validation.date.errorMsg.equal`,[t.DataValidationOperator.GREATER_THAN]:`sheets-data-validation.date.errorMsg.greaterThan`,[t.DataValidationOperator.GREATER_THAN_OR_EQUAL]:`sheets-data-validation.date.errorMsg.greaterThanOrEqual`,[t.DataValidationOperator.LESS_THAN]:`sheets-data-validation.date.errorMsg.lessThan`,[t.DataValidationOperator.LESS_THAN_OR_EQUAL]:`sheets-data-validation.date.errorMsg.lessThanOrEqual`,[t.DataValidationOperator.NOT_BETWEEN]:`sheets-data-validation.date.errorMsg.notBetween`,[t.DataValidationOperator.NOT_EQUAL]:`sheets-data-validation.date.errorMsg.notEqual`,NONE:`sheets-data-validation.date.errorMsg.legal`},A=[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.NOT_BETWEEN],j=`{FORMULA1}`,M=`{FORMULA2}`;function ue(e){let t=b(e);return t==null?``:t.toString()}function N(e,n,r){let{formula1:i,formula2:a}=n,o=n.ranges[0].startRow,s=n.ranges[0].startColumn,c=r.row-o,l=r.col-s;return{transformedFormula1:(0,t.isFormulaString)(i)?e.moveFormulaRefOffset(i,l,c,!0):i,transformedFormula2:(0,t.isFormulaString)(a)?e.moveFormulaRefOffset(a,l,c,!0):a}}let P=e=>{var n,r;if(e==null||typeof e==`boolean`)return;if(typeof e==`number`||!Number.isNaN(+e))return+e;let i=(n=t.numfmt.parseDate(e))==null?void 0:n.v;return t.Tools.isDefine(i)?i:(r=t.numfmt.parseDate((0,t.dateKit)(e).format(`YYYY-MM-DD HH:mm:ss`)))==null?void 0:r.v};var de=class extends O{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.DATE),d(this,`title`,`sheets-data-validation.date.title`),d(this,`order`,40),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`]),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder))}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=_(String(o==null?void 0:o.v))&&_(String(s==null?void 0:s.v));return{formula1:P((0,t.isFormulaString)(c)?o==null?void 0:o.v:c),formula2:P((0,t.isFormulaString)(l)?s==null?void 0:s.v:l),isFormulaValid:u}}async isValidType(e){let{interceptValue:n,value:r}=e;return typeof r==`number`&&typeof n==`string`||typeof n==`string`?!!t.numfmt.parseDate(n):!1}_validatorSingleFormula(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e)||!!(e&&t.numfmt.parseDate(e)))}validatorFormula(e,t,n){let r=e.operator;if(!r)return{success:!0};let i=this._validatorSingleFormula(e.formula1),a=this.localeService.t(`sheets-data-validation.validFail.date`);if(A.includes(r)){let t=this._validatorSingleFormula(e.formula2);return{success:i&&t,formula1:i?void 0:a,formula2:t?void 0:a}}return{success:i,formula1:i?void 0:a}}normalizeFormula(e,n,r){let{formula1:i,formula2:a,bizInfo:o}=e,s=e=>{if(!e)return e;let n;if(!Number.isNaN(+e))n=t.numfmt.dateFromSerial(+e);else{var r;let i=(r=t.numfmt.parseDate(e))==null?void 0:r.v;if(i==null)return``;n=t.numfmt.dateFromSerial(i)}return(0,t.dateKit)(`${n[0]}/${n[1]}/${n[2]} ${n[3]}:${n[4]}:${n[5]}`).format(o!=null&&o.showTime?`YYYY-MM-DD HH:mm:ss`:`YYYY-MM-DD`)};return{formula1:(0,t.isFormulaString)(i)?i:s(`${i}`),formula2:(0,t.isFormulaString)(a)?a:s(`${a}`)}}transform(e,t,n){let{value:r}=e;return{...e,value:P(r)}}get operatorNames(){return this.operators.map(e=>this.localeService.t(se[e]))}generateRuleName(e){var t,n;if(!e.operator)return this.localeService.t(ce.NONE);let r=this.localeService.t(ce[e.operator]).replace(j,(t=e.formula1)==null?``:t).replace(M,(n=e.formula2)==null?``:n);return`${this.titleStr} ${r}`}generateRuleErrorMessage(e,t){if(!e.operator)return this.titleStr;let{transformedFormula1:n,transformedFormula2:r}=N(this._lexerTreeBuilder,e,t);return`${this.localeService.t(le[e.operator]).replace(j,n==null?``:n).replace(M,r==null?``:r)}`}};function F(e){return+e}var fe=class extends O{constructor(...e){super(...e),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`id`,t.DataValidationType.DECIMAL),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder)),d(this,`title`,`sheets-data-validation.decimal.title`),d(this,`order`,20),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`])}_isFormulaOrNumber(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e))}async isValidType(e,t,n){let{value:r}=e;return!Number.isNaN(F(r))}transform(e,t,n){let{value:r}=e;return{...e,value:F(r)}}_parseNumber(e){return e==null?NaN:+e}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=_(String(o==null?void 0:o.v))&&_(String(s==null?void 0:s.v));return{formula1:this._parseNumber((0,t.isFormulaString)(c)?o==null?void 0:o.v:c),formula2:this._parseNumber((0,t.isFormulaString)(l)?s==null?void 0:s.v:l),isFormulaValid:u}}validatorFormula(e,n,r){let i=e.operator;if(!i)return{success:!0};let a=t.Tools.isDefine(e.formula1)&&this._isFormulaOrNumber(e.formula1),o=t.Tools.isDefine(e.formula2)&&this._isFormulaOrNumber(e.formula2),s=A.includes(i),c=this.localeService.t(`sheets-data-validation.validFail.number`);return s?{success:a&&o,formula1:a?void 0:c,formula2:o?void 0:c}:{success:a,formula1:a?``:c}}generateRuleErrorMessage(e,t){if(!e.operator)return this.localeService.t(T.NONE).replace(`{TYPE}`,this.titleStr);let{transformedFormula1:n,transformedFormula2:r}=N(this._lexerTreeBuilder,e,t);return`${this.localeService.t(T[e.operator]).replace(j,n==null?``:n).replace(M,r==null?``:r)}`}};function pe(e){if(!e)return[];let n=new Set;for(let i=0,a=e.length;i<a;i++){let a=e[i];if(a)for(let e=0,i=a.length;e<i;e++){let i=a[e],o=b(i);if(o!=null){var r;if(typeof o!=`string`&&typeof(i==null?void 0:i.s)==`object`&&!((r=i.s)==null||(r=r.n)==null)&&r.pattern){n.add(t.numfmt.format(i.s.n.pattern,o,{throws:!1}));continue}let e=typeof o==`string`?o:String(o);_(e)&&n.add(e)}}}return[...n]}let me=[`if`,`indirect`,`choose`,`offset`];function he(e,n){if(!(0,t.isFormulaString)(e)||(0,r.isReferenceString)(e.slice(1)))return!0;let i=n.sequenceNodesBuilder(e);return i&&i.some(e=>typeof e==`object`&&e.nodeType===r.sequenceNodeType.FUNCTION&&me.indexOf(e.token.toLowerCase())>-1)}function ge(e,n){let{formula1:i=``,ranges:a}=e;if((0,r.isReferenceString)(i.slice(1))){let e=(0,r.deserializeRangeWithSheet)(i.slice(1));if((!e.sheetName||e.sheetName===n)&&a.some(n=>t.Rectangle.intersects(n,e.range)))return!0}return!1}var I=class extends O{constructor(...e){super(...e),d(this,`formulaService`,this.injector.get(S)),d(this,`_lexer`,this.injector.get(r.LexerTreeBuilder)),d(this,`_univerInstanceService`,this.injector.get(t.IUniverInstanceService)),d(this,`_listCacheService`,this.injector.get(x)),d(this,`order`,50),d(this,`offsetFormulaByRange`,!1),d(this,`id`,t.DataValidationType.LIST),d(this,`title`,`sheets-data-validation.list.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`skipDefaultFontRender`,e=>e.renderMode!==t.DataValidationRenderMode.TEXT)}validatorFormula(e,n,r){var i,a;let o=!t.Tools.isBlank(e.formula1),s=he((i=e.formula1)==null?``:i,this._lexer),c=(a=this._univerInstanceService.getUnit(n,t.UniverInstanceType.UNIVER_SHEET))==null||(a=a.getSheetBySheetId(r))==null?void 0:a.getName(),l=ge(e,c==null?``:c);return{success:!!(o&&s&&!l),formula1:o?s?l?this.localeService.t(`sheets-data-validation.validFail.listIntersects`):void 0:this.localeService.t(`sheets-data-validation.validFail.listInvalid`):this.localeService.t(`sheets-data-validation.validFail.list`)}}getExtraStyle(e,n,{style:r}){var i;let a=(i=r.tb===t.WrapStrategy.OVERFLOW?t.WrapStrategy.CLIP:r.tb)==null?t.WrapStrategy.WRAP:i;if(e.type===t.DataValidationType.LIST&&(e.renderMode===t.DataValidationRenderMode.ARROW||e.renderMode===t.DataValidationRenderMode.TEXT)){let t=this.getListWithColorMap(e)[`${n==null?``:n}`];if(t)return{bg:{rgb:t},tb:a}}return{tb:a}}parseCellValue(e){return(0,i.deserializeListOptions)(e.toString())}async parseFormula(e,t,n){var r;let i=await this.formulaService.getRuleFormulaResult(t,n,e.uid),a=h(i==null||(r=i[0])==null||(r=r.result)==null?void 0:r[0][0]);return{formula1:void 0,formula2:void 0,isFormulaValid:_(String(a))}}async isValidType(e,n,r){let{value:a,unitId:o,subUnitId:s}=e,{formula1:c=``}=r,l=(0,t.isFormulaString)(c)?this._listCacheService.getOrCompute(o,s,r).list:(0,i.deserializeListOptions)(c);return(r.type===t.DataValidationType.LIST?a==null||a===``?[]:[`${a}`]:this.parseCellValue(a)).every(e=>l.includes(e))}generateRuleName(){return this.localeService.t(`sheets-data-validation.list.name`)}generateRuleErrorMessage(){return this.localeService.t(`sheets-data-validation.list.error`)}_getUnitAndSubUnit(e,n){var r,i;let a=(r=e?this._univerInstanceService.getUniverSheetInstance(e):void 0)==null?this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET):r;if(!a)return null;let o=(i=n?a.getSheetBySheetId(n):void 0)==null?a.getActiveSheet():i;return o?{unitId:a.getUnitId(),subUnitId:o.getSheetId()}:null}getList(e,t,n){let r=this._getUnitAndSubUnit(t,n);if(!r)return[];let{unitId:i,subUnitId:a}=r;return this._listCacheService.getOrCompute(i,a,e).list}async getListAsync(e,n,r){var a;let{formula1:o=``}=e,s=this._getUnitAndSubUnit(n,r);if(!s)return[];let{unitId:c,subUnitId:l}=s,u=await this.formulaService.getRuleFormulaResult(c,l,e.uid);return(0,t.isFormulaString)(o)?pe(u==null||(a=u[0])==null||(a=a.result)==null?void 0:a[0][0]):(0,i.deserializeListOptions)(o)}getListWithColor(e,t,n){let r=this._getUnitAndSubUnit(t,n);if(!r)return[];let{unitId:i,subUnitId:a}=r;return this._listCacheService.getOrCompute(i,a,e).listWithColor}getListWithColorMap(e,t,n){let r=this._getUnitAndSubUnit(t,n);if(!r)return{};let{unitId:i,subUnitId:a}=r;return this._listCacheService.getOrCompute(i,a,e).colorMap}},_e=class extends O{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.TEXT_LENGTH),d(this,`title`,`sheets-data-validation.textLength.title`),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder)),d(this,`order`,30),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`]),d(this,`_customFormulaService`,this.injector.get(y))}_isFormulaOrInt(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e)&&Number.isInteger(+e))}validatorFormula(e,n,r){let i=e.operator;if(!i)return{success:!1};let a=t.Tools.isDefine(e.formula1)&&this._isFormulaOrInt(e.formula1),o=t.Tools.isDefine(e.formula2)&&this._isFormulaOrInt(e.formula2),s=A.includes(i),c=this.localeService.t(`sheets-data-validation.validFail.number`);return s?{success:a&&o,formula1:a?void 0:c,formula2:o?void 0:c}:{success:a,formula1:c}}_parseNumber(e){return e==null?NaN:+e}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=_(String(o==null?void 0:o.v))&&_(String(s==null?void 0:s.v));return{formula1:this._parseNumber((0,t.isFormulaString)(c)?o==null?void 0:o.v:c),formula2:this._parseNumber((0,t.isFormulaString)(l)?s==null?void 0:s.v:l),isFormulaValid:u}}transform(e,t,n){return{...e,value:e.value.toString().length}}async isValidType(e,t,n){let{value:r}=e;return typeof r==`string`||typeof r==`number`}generateRuleErrorMessage(e,t){if(!e.operator)return this.titleStr;let{transformedFormula1:n,transformedFormula2:r}=N(this._lexerTreeBuilder,e,t);return`${this.localeService.t(re[e.operator]).replace(j,n==null?``:n).replace(M,r==null?``:r)}`}};function L(e){var n,r;return e?e.p?!((n=(r=e.p.body)==null?void 0:r.dataStream)==null?``:n).slice(0,-2).trim():t.Tools.isBlank(e.v):!0}function R(e,a,o,s,c=`command`,l=!0){let u=s.get(r.LexerTreeBuilder),d=s.get(n.DataValidatorRegistryService),f=[],p=[],m=s.get(C),h=(0,i.getSheetCommandTarget)(s.get(t.IUniverInstanceService),{unitId:e,subUnitId:a});if(!h)return{redoMutations:f,undoMutations:p};let{worksheet:g}=h,_=new t.ObjectMatrix,y=!1;function b(e,n){l&&e.forEach(e=>{t.Range.foreach(e,(e,t)=>{let r=g.getCellRaw(e,t),i=ee(r);(L(r)||i===n)&&!(r!=null&&r.p)&&(y=!0,_.setValue(e,t,{v:n,p:null}))})})}if(o.forEach(r=>{switch(r.type){case`delete`:f.push({id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.rule.uid,source:c}}),p.unshift({id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:a,rule:r.rule,index:r.index,source:c}});break;case`update`:{if(v(r.rule.type,d)){let i=r.oldRanges[0].startRow,o=r.oldRanges[0].startColumn,s=r.newRanges[0].startRow,l=r.newRanges[0].startColumn,d=s-i,m=l-o,h=(0,t.isFormulaString)(r.rule.formula1)?u.moveFormulaRefOffset(r.rule.formula1,m,d):r.rule.formula1,g=(0,t.isFormulaString)(r.rule.formula2)?u.moveFormulaRefOffset(r.rule.formula2,m,d):r.rule.formula2;h!==r.rule.formula1||g!==r.rule.formula2||!(0,t.isRangesEqual)(r.newRanges,r.oldRanges)?(f.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.ALL,payload:{formula1:h,formula2:g,ranges:r.newRanges}}}}),p.unshift({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.ALL,payload:{formula1:r.rule.formula1,formula2:r.rule.formula2,ranges:r.oldRanges}}}})):(f.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.newRanges},source:c}}),p.unshift({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.oldRanges},source:c}}))}else f.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.newRanges},source:c}}),p.unshift({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.ruleId,payload:{type:n.UpdateRuleType.RANGE,payload:r.oldRanges},source:c}});let i=m.getRuleById(e,a,r.ruleId);if(i&&i.type===t.DataValidationType.CHECKBOX){let n=m.getValidator(t.DataValidationType.CHECKBOX).parseFormulaSync(i,e,a);b(r.newRanges,n.formula2)}break}case`add`:if(f.push({id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:a,rule:r.rule,source:c}}),p.unshift({id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:a,ruleId:r.rule.uid,source:c}}),r.rule.type===t.DataValidationType.CHECKBOX){let n=m.getValidator(t.DataValidationType.CHECKBOX).parseFormulaSync(r.rule,e,a);b(r.rule.ranges,n.originFormula2)}break;default:break}}),y){let t={id:i.SetRangeValuesMutation.id,params:{unitId:e,subUnitId:a,cellValue:_.getData()}},n={id:i.SetRangeValuesMutation.id,params:(0,i.SetRangeValuesUndoMutationFactory)(s,t.params)};f.push(t),p.push(n)}return{redoMutations:f,undoMutations:p}}let z={type:t.CommandType.COMMAND,id:`sheet.command.updateDataValidationRuleRange`,handler(e,n){if(!n)return!1;let{unitId:r,subUnitId:i,ranges:a,ruleId:o}=n,s=e.get(C),c=e.get(t.ICommandService),l=e.get(t.IUndoRedoService);if(!s.getRuleById(r,i,o))return!1;let u=s.getRuleObjectMatrix(r,i).clone();u.updateRange(o,a);let{redoMutations:d,undoMutations:f}=R(r,i,u.diff(s.getRules(r,i)),e);return l.pushUndoRedo({undoMutations:f,redoMutations:d,unitID:r}),(0,t.sequenceExecute)(d,c),!0}},B={type:t.CommandType.COMMAND,id:`sheet.command.addDataValidation`,handler(e,r){if(!r)return!1;let{unitId:i,subUnitId:a,rule:o}=r,s=e.get(C),c=e.get(t.ICommandService),l=e.get(t.IUndoRedoService),u=s.getRuleObjectMatrix(i,a).clone();u.addRule(o);let d=u.diff(s.getRules(i,a)),f=s.getValidator(o.type),p={unitId:i,subUnitId:a,rule:{...o,...f==null?void 0:f.normalizeFormula(o,i,a)}},{redoMutations:m,undoMutations:h}=R(i,a,d,e);return m.push({id:n.AddDataValidationMutation.id,params:p}),h.unshift({id:n.RemoveDataValidationMutation.id,params:{unitId:i,subUnitId:a,ruleId:o.uid}}),l.pushUndoRedo({unitID:i,redoMutations:m,undoMutations:h}),(0,t.sequenceExecute)(m,c),!0}},V={type:t.CommandType.COMMAND,id:`sheets.command.update-data-validation-setting`,handler(e,r){if(!r)return!1;let a=e.get(t.ICommandService),o=e.get(t.IUndoRedoService),s=e.get(C),c=e.get(n.DataValidatorRegistryService),{unitId:l,subUnitId:u,ruleId:d,setting:f}=r,p=c.getValidatorItem(f.type);if(!p)return!1;let m=s.getRuleById(l,u,d);if(!m)return!1;let h={...m,...f};if(!p.validatorFormula(h,l,u).success)return!1;let g={unitId:l,subUnitId:u,ruleId:d,payload:{type:n.UpdateRuleType.SETTING,payload:{...f,...p.normalizeFormula(h,l,u)}}},_=[{id:n.UpdateDataValidationMutation.id,params:g}],v={unitId:l,subUnitId:u,ruleId:d,payload:{type:n.UpdateRuleType.SETTING,payload:(0,n.getRuleSetting)(m)}},y=[{id:n.UpdateDataValidationMutation.id,params:v}];if(f.type===t.DataValidationType.CHECKBOX){let n=m.ranges,r=(0,i.getSheetCommandTarget)(e.get(t.IUniverInstanceService),{unitId:l,subUnitId:u});if(r){let a=new t.ObjectMatrix,{worksheet:o}=r,{formula2:s=0,formula1:c=1}=m,{formula2:d=0,formula1:p=1}=f,h=!1;if(n.forEach(e=>{t.Range.foreach(e,(e,t)=>{let n=o.getCellRaw(e,t),r=ee(n);(L(n)||r===String(s))&&!(n!=null&&n.p)?(a.setValue(e,t,{v:d,p:null}),h=!0):r===String(c)&&!(n!=null&&n.p)&&(a.setValue(e,t,{v:p,p:null}),h=!0)})}),h){let t={id:i.SetRangeValuesMutation.id,params:{unitId:l,subUnitId:u,cellValue:a.getData()}},n={id:i.SetRangeValuesMutation.id,params:(0,i.SetRangeValuesUndoMutationFactory)(e,t.params)};_.push(t),y.push(n)}}}return(0,t.sequenceExecute)(_,a).result?(o.pushUndoRedo({unitID:l,redoMutations:_,undoMutations:y}),!0):!1}},H={type:t.CommandType.COMMAND,id:`sheets.command.update-data-validation-options`,handler(e,r){if(!r)return!1;let i=e.get(t.ICommandService),a=e.get(t.IUndoRedoService),o=e.get(C),{unitId:s,subUnitId:c,ruleId:l,options:u}=r,d=o.getRuleById(s,c,l);if(!d)return!1;let f={unitId:s,subUnitId:c,ruleId:l,payload:{type:n.UpdateRuleType.OPTIONS,payload:u}},p=[{id:n.UpdateDataValidationMutation.id,params:f}],m={unitId:s,subUnitId:c,ruleId:l,payload:{type:n.UpdateRuleType.OPTIONS,payload:(0,n.getRuleOptions)(d)}},h=[{id:n.UpdateDataValidationMutation.id,params:m}];return a.pushUndoRedo({unitID:s,redoMutations:p,undoMutations:h}),i.executeCommand(n.UpdateDataValidationMutation.id,f),!0}},U={type:t.CommandType.COMMAND,id:`sheets.command.clear-range-data-validation`,handler(e,n){if(!n)return!1;let{unitId:r,subUnitId:a,ranges:o}=n,s=e.get(t.ICommandService),c=(0,i.getSheetCommandTarget)(e.get(t.IUniverInstanceService),{unitId:r,subUnitId:a}),l=e.get(C);if(!c)return!1;let u=e.get(t.IUndoRedoService),d=l.getRuleObjectMatrix(r,a).clone();d.removeRange(o);let{redoMutations:f,undoMutations:p}=R(r,a,d.diff(l.getRules(r,a)),e);return u.pushUndoRedo({unitID:r,redoMutations:f,undoMutations:p}),(0,t.sequenceExecute)(f,s).result}},W={type:t.CommandType.COMMAND,id:`sheet.command.remove-all-data-validation`,handler(e,r){if(!r)return!1;let{unitId:i,subUnitId:a}=r,o=e.get(t.ICommandService),s=e.get(C),c=e.get(t.IUndoRedoService),l=[...s.getRules(i,a)],u={unitId:i,subUnitId:a,ruleId:l.map(e=>e.uid)},d=[{id:n.RemoveDataValidationMutation.id,params:u}],f=[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:l}}];return c.pushUndoRedo({redoMutations:d,undoMutations:f,unitID:i}),o.executeCommand(n.RemoveDataValidationMutation.id,u),!0}},ve=(e,t)=>{let r=e.get(C),{unitId:i,subUnitId:a,ruleId:o,source:s}=t;if(Array.isArray(o)){let e=o.map(e=>r.getRuleById(i,a,e)).filter(Boolean);return[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:e,source:s}}]}return[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:{...r.getRuleById(i,a,o)},index:r.getRuleIndex(i,a,o)}}]},G={type:t.CommandType.COMMAND,id:`sheet.command.remove-data-validation-rule`,handler(e,r){if(!r)return!1;let{unitId:i,subUnitId:a,ruleId:o}=r,s=e.get(t.ICommandService),c=e.get(t.IUndoRedoService),l=e.get(C),u=[{id:n.RemoveDataValidationMutation.id,params:r}],d=[{id:n.AddDataValidationMutation.id,params:{unitId:i,subUnitId:a,rule:{...l.getRuleById(i,a,o)},index:l.getRuleIndex(i,a,o)}}];return c.pushUndoRedo({undoMutations:d,redoMutations:u,unitID:r.unitId}),s.executeCommand(n.RemoveDataValidationMutation.id,r),!0}},K=`SHEET_DATA_VALIDATION_PLUGIN`,q=class extends t.Disposable{constructor(e,t,n){super(),this._univerInstanceService=e,this._permissionService=t,this._lexerTreeBuilder=n}getFormulaRefCheck(e){let n=this._lexerTreeBuilder.sequenceNodesBuilder(e);if(!n)return!0;for(let e=0;e<n.length;e++){let s=n[e];if(typeof s==`string`)continue;let{token:c}=s,l=(0,r.deserializeRangeWithSheetWithCache)(c),u=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),d=u.getActiveSheet(),f=u.getUnitId();if(l.sheetName){if(d=u.getSheetBySheetName(l.sheetName),!d)return!1;let e=d==null?void 0:d.getSheetId();if(!this._permissionService.getPermissionPoint(new i.WorksheetViewPermission(f,e).id))return!1}if(!d)return!1;let{startRow:p,endRow:m,startColumn:h,endColumn:g}=l.range;for(let e=p;e<=m;e++)for(let t=h;t<=g;t++){var a;let n=(a=d.getCell(e,t))==null||(a=a.selectionProtection)==null?void 0:a[0];if((n==null?void 0:n[o.UnitAction.View])===!1)return!1}}return!0}};q=p([f(0,t.IUniverInstanceService),f(1,t.IPermissionService),f(2,(0,t.Inject)(r.LexerTreeBuilder))],q);var ye=`@univerjs/sheets-data-validation`,be=`0.25.0-insiders.20260608-e4336f7`;let xe={},J=class extends t.Disposable{constructor(e,t,n){super(),this._dataValidationModel=e,this._formulaRefRangeService=t,this._validatorRegistryService=n,d(this,`_disposableMap`,new Map),d(this,`registerRule`,(e,t,n)=>{v(n.type,this._validatorRegistryService)&&this.register(e,t,n)}),this._initRefRange()}_getIdWithUnitId(e,t,n){return`${e}_${t}_${n}`}register(e,r,i){let a=i.ranges,o=i.formula1,s=i.formula2,c=this._formulaRefRangeService.registerRangeFormula(e,r,a,[o==null?``:o,s==null?``:s],c=>{if(c.length===0)return{undos:[{id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:r,rule:i,source:`patched`}}],redos:[{id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:i.uid,source:`patched`}}]};let l=[],u=[],d=c[0];l.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:i.uid,payload:{type:n.UpdateRuleType.ALL,payload:{ranges:d.ranges,formula1:d.formulas[0],formula2:d.formulas[1]}},source:`patched`}}),u.push({id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:i.uid,payload:{type:n.UpdateRuleType.ALL,payload:{ranges:a,formula1:o,formula2:s}},source:`patched`}});for(let a=1;a<c.length;a++){let o=c[a],s=(0,t.generateRandomId)();l.push({id:n.AddDataValidationMutation.id,params:{unitId:e,subUnitId:r,rule:{...i,uid:s,formula1:o.formulas[0],formula2:o.formulas[1],ranges:o.ranges},source:`patched`}}),u.push({id:n.RemoveDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:s,source:`patched`}})}return{undos:u,redos:l}}),l=this._getIdWithUnitId(e,r,i.uid);this._disposableMap.set(l,c)}_initRefRange(){let e=this._dataValidationModel.getAll();for(let[t,n]of e)for(let[e,r]of n)for(let n of r)this.registerRule(t,e,n);this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{let{unitId:t,subUnitId:n,rule:r}=e;switch(e.type){case`add`:{let t=e.rule;this.registerRule(e.unitId,e.subUnitId,t);break}case`remove`:{let e=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));e&&e.dispose();break}case`update`:{let r=e.rule,i=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));i&&i.dispose(),this.registerRule(e.unitId,e.subUnitId,r);break}}})),this.disposeWithMe((0,t.toDisposable)(()=>{this._disposableMap.forEach(e=>{e.dispose()}),this._disposableMap.clear()}))}};J=p([f(0,(0,t.Inject)(C)),f(1,(0,t.Inject)(s.FormulaRefRangeService)),f(2,(0,t.Inject)(n.DataValidatorRegistryService))],J);let Y=class extends t.Disposable{constructor(e,t,n,r,i,a){super(),this._dataValidationModel=e,this._injector=t,this._refRangeService=n,this._dataValidationFormulaService=r,this._formulaRefRangeService=i,this._validatorRegistryService=a,d(this,`_disposableMap`,new Map),d(this,`registerRule`,(e,t,n)=>{v(n.type,this._validatorRegistryService)||(this.register(e,t,n),this.registerFormula(e,t,n))}),this._initRefRange()}_getIdWithUnitId(e,t,n){return`${e}_${t}_${n}`}registerFormula(e,t,r){var i;let a=r.uid,o=this._getIdWithUnitId(e,t,a),s=(i=this._disposableMap.get(o))==null?new Set:i,c=(i,o)=>{let s=this._dataValidationModel.getRuleById(e,t,a);if(!s)return{redos:[],undos:[]};let c=s[i];if(!c||c===o)return{redos:[],undos:[]};let l={unitId:e,subUnitId:t,ruleId:r.uid,payload:{type:n.UpdateRuleType.SETTING,payload:{type:s.type,formula1:s.formula1,formula2:s.formula2,[i]:o}},source:`patched`},u={unitId:e,subUnitId:t,ruleId:r.uid,payload:{type:n.UpdateRuleType.SETTING,payload:{type:s.type,formula1:s.formula1,formula2:s.formula2}},source:`patched`};return{redos:[{id:n.UpdateDataValidationMutation.id,params:l}],undos:[{id:n.UpdateDataValidationMutation.id,params:u}]}},l=this._dataValidationFormulaService.getRuleFormulaInfo(e,t,a);if(l){let[n,r]=l;if(n){let r=this._formulaRefRangeService.registerFormula(e,t,n.text,e=>c(`formula1`,e));s.add(()=>r.dispose())}if(r){let n=this._formulaRefRangeService.registerFormula(e,t,r.text,e=>c(`formula2`,e));s.add(()=>n.dispose())}}}register(e,r,a){var o;let s=o=>{let s=[...a.ranges],c=s.map(e=>(0,i.handleCommonDefaultRangeChangeWithEffectRefCommands)(e,o)).filter(e=>!!e).flat();if((0,t.isRangesEqual)(c,s))return{redos:[],undos:[]};if(c.length){let t={unitId:e,subUnitId:r,ruleId:a.uid,payload:{type:n.UpdateRuleType.RANGE,payload:c},source:`patched`};return{redos:[{id:n.UpdateDataValidationMutation.id,params:t}],undos:[{id:n.UpdateDataValidationMutation.id,params:{unitId:e,subUnitId:r,ruleId:a.uid,payload:{type:n.UpdateRuleType.RANGE,payload:s},source:`patched`}}]}}else{let t={unitId:e,subUnitId:r,ruleId:a.uid};return{redos:[{id:n.RemoveDataValidationMutation.id,params:t}],undos:ve(this._injector,t)}}},c=[];a.ranges.forEach(t=>{let n=this._refRangeService.registerRefRange(t,s,e,r);c.push(()=>n.dispose())});let l=this._getIdWithUnitId(e,r,a.uid),u=(o=this._disposableMap.get(l))==null?new Set:o;u.add(()=>c.forEach(e=>e())),this._disposableMap.set(l,u)}_initRefRange(){let e=this._dataValidationModel.getAll();for(let[t,n]of e)for(let[e,r]of n)for(let n of r)this.registerRule(t,e,n);this.disposeWithMe(this._dataValidationModel.ruleChange$.subscribe(e=>{let{unitId:t,subUnitId:n,rule:r}=e;switch(e.type){case`add`:{let t=e.rule;this.registerRule(e.unitId,e.subUnitId,t);break}case`remove`:{let e=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));e&&e.forEach(e=>e());break}case`update`:{let r=e.rule,i=this._disposableMap.get(this._getIdWithUnitId(t,n,r.uid));i&&i.forEach(e=>e()),this.registerRule(e.unitId,e.subUnitId,r);break}}})),this.disposeWithMe((0,t.toDisposable)(()=>{this._disposableMap.forEach(e=>{e.forEach(e=>e())}),this._disposableMap.clear()}))}};Y=p([f(0,(0,t.Inject)(C)),f(1,(0,t.Inject)(t.Injector)),f(2,(0,t.Inject)(i.RefRangeService)),f(3,(0,t.Inject)(S)),f(4,(0,t.Inject)(s.FormulaRefRangeService)),f(5,(0,t.Inject)(n.DataValidatorRegistryService))],Y);let X=class extends t.Disposable{constructor(e,t,n){super(),this._sheetInterceptorService=e,this._univerInstanceService=t,this._sheetDataValidationModel=n,this._initSheetChange()}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:e=>{if(e.id===i.RemoveSheetCommand.id){var r;let i=e.params,a=i.unitId||this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET).getUnitId(),o=this._univerInstanceService.getUniverSheetInstance(a);if(!o)return{redos:[],undos:[]};let s=i.subUnitId||((r=o.getActiveSheet())==null?void 0:r.getSheetId());if(!s)return{redos:[],undos:[]};let c=this._sheetDataValidationModel.getRules(a,s);if(c.length===0)return{redos:[],undos:[]};let l={unitId:a,subUnitId:s,ruleId:c.map(e=>e.uid),source:`patched`},u={unitId:a,subUnitId:s,rule:[...c],source:`patched`};return{redos:[{id:n.RemoveDataValidationMutation.id,params:l}],undos:[{id:n.AddDataValidationMutation.id,params:u}]}}else if(e.id===i.CopySheetCommand.id){let{unitId:r,subUnitId:i,targetSubUnitId:a}=e.params;if(!r||!i||!a)return{redos:[],undos:[]};let o=this._sheetDataValidationModel.getRules(r,i);if(o.length===0)return{redos:[],undos:[]};let s=o.map(e=>({...e,uid:(0,t.generateRandomId)(6)}));return{redos:[{id:n.AddDataValidationMutation.id,params:{unitId:r,subUnitId:a,rule:s,source:`patched`}}],undos:[{id:n.RemoveDataValidationMutation.id,params:{unitId:r,subUnitId:a,ruleId:s.map(e=>e.uid),source:`patched`}}]}}return{redos:[],undos:[]}}}))}};X=p([f(0,(0,t.Inject)(i.SheetInterceptorService)),f(1,(0,t.Inject)(t.IUniverInstanceService)),f(2,(0,t.Inject)(C))],X);var Se=class extends O{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.ANY),d(this,`title`,`sheets-data-validation.any.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`order`,0),d(this,`offsetFormulaByRange`,!1)}async parseFormula(e,t,n){return{formula1:e.formula1,formula2:e.formula2,isFormulaValid:!0}}validatorFormula(e,t,n){return{success:!0}}async isValidType(e,t,n){return!0}generateRuleErrorMessage(e){return this.localeService.t(`sheets-data-validation.any.error`)}},Ce=class extends O{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.CUSTOM),d(this,`title`,`sheets-data-validation.custom.title`),d(this,`operators`,[]),d(this,`scopes`,[`sheet`]),d(this,`order`,60),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder))}validatorFormula(e,n,i){var a;let o=(0,t.isFormulaString)(e.formula1),s=(a=e.formula1)==null?``:a,c=this._lexerTreeBuilder.checkIfAddBracket(s)===0&&s.startsWith(r.operatorToken.EQUALS);return{success:o&&c,formula1:o&&c?``:this.localeService.t(`sheets-data-validation.validFail.formula`)}}async parseFormula(e,t,n){return{formula1:void 0,formula2:void 0,isFormulaValid:!0}}async isValidType(e,n,r){let{column:i,row:a,unitId:o,subUnitId:s}=e,c=await this._customFormulaService.getCellFormulaValue(o,s,r.uid,a,i),l=c==null?void 0:c.v;return _(String(l))&&t.Tools.isDefine(l)&&l!==``?c.t===t.CellValueType.BOOLEAN?!!l:typeof l==`boolean`?l:typeof l==`number`?!!l:typeof l==`string`?_(l):!!l:!1}generateRuleErrorMessage(e){return this.localeService.t(`sheets-data-validation.custom.error`)}generateRuleName(e){var t;return this.localeService.t(`sheets-data-validation.custom.ruleName`).replace(`{FORMULA1}`,(t=e.formula1)==null?``:t)}},we=class extends I{constructor(...e){super(...e),d(this,`id`,t.DataValidationType.LIST_MULTIPLE),d(this,`title`,`sheets-data-validation.listMultiple.title`),d(this,`offsetFormulaByRange`,!1),d(this,`skipDefaultFontRender`,()=>!0)}},Te=class extends O{constructor(...e){super(...e),d(this,`_customFormulaService`,this.injector.get(y)),d(this,`_lexerTreeBuilder`,this.injector.get(r.LexerTreeBuilder)),d(this,`id`,t.DataValidationType.WHOLE),d(this,`title`,`sheets-data-validation.whole.title`),d(this,`order`,10),d(this,`operators`,[t.DataValidationOperator.BETWEEN,t.DataValidationOperator.EQUAL,t.DataValidationOperator.GREATER_THAN,t.DataValidationOperator.GREATER_THAN_OR_EQUAL,t.DataValidationOperator.LESS_THAN,t.DataValidationOperator.LESS_THAN_OR_EQUAL,t.DataValidationOperator.NOT_BETWEEN,t.DataValidationOperator.NOT_EQUAL]),d(this,`scopes`,[`sheet`])}_isFormulaOrInt(e){return!t.Tools.isBlank(e)&&((0,t.isFormulaString)(e)||!Number.isNaN(+e)&&Number.isInteger(+e))}async isValidType(e,t,n){let{value:r}=e,i=F(r);return!Number.isNaN(i)&&Number.isInteger(i)}transform(e,t,n){let{value:r}=e;return{...e,value:F(r)}}_parseNumber(e){return e==null?NaN:+e}async parseFormula(e,n,r,i,a){let o=await this._customFormulaService.getCellFormulaValue(n,r,e.uid,i,a),s=await this._customFormulaService.getCellFormula2Value(n,r,e.uid,i,a),{formula1:c,formula2:l}=e,u=(0,t.isFormulaString)(c)?o==null?void 0:o.v:c,d=(0,t.isFormulaString)(l)?s==null?void 0:s.v:l,f=_(`${u}`)&&_(`${d}`);return{formula1:this._parseNumber(u),formula2:this._parseNumber(d),isFormulaValid:f}}validatorFormula(e,n,r){let i=e.operator;if(!i)return{success:!0};let a=t.Tools.isDefine(e.formula1)&&this._isFormulaOrInt(e.formula1),o=t.Tools.isDefine(e.formula2)&&this._isFormulaOrInt(e.formula2),s=A.includes(i),c=this.localeService.t(`sheets-data-validation.validFail.number`);return s?{success:a&&o,formula1:a?void 0:c,formula2:o?void 0:c}:{success:a,formula1:c}}generateRuleErrorMessage(e,t){if(!e.operator)return this.localeService.t(T.NONE).replace(`{TYPE}`,this.titleStr);let{transformedFormula1:n,transformedFormula2:r}=N(this._lexerTreeBuilder,e,t);return`${this.localeService.t(T[e.operator]).replace(j,n==null?``:n).replace(M,r==null?``:r)}`}};let Z=class extends t.RxDisposable{constructor(e,t,n,r,i,a){super(),this._univerInstanceService=e,this._dataValidatorRegistryService=t,this._injector=n,this._selectionManagerService=r,this._sheetInterceptorService=i,this._sheetDataValidationModel=a,this._init()}_init(){this._registerValidators(),this._initCommandInterceptor()}_registerValidators(){[Se,fe,Te,_e,de,oe,I,we,Ce].forEach(e=>{let n=this._injector.createInstance(e);this.disposeWithMe(this._dataValidatorRegistryService.register(n)),this.disposeWithMe((0,t.toDisposable)(()=>this._injector.delete(e)))})}_initCommandInterceptor(){this._sheetInterceptorService.interceptCommand({getMutations:e=>{if(e.id===i.ClearSelectionAllCommand.id){var n;let e=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),r=e.getUnitId(),i=e.getActiveSheet();if(!i)throw Error(`No active sheet found`);let a=i.getSheetId(),o=(n=this._selectionManagerService.getCurrentSelections())==null?void 0:n.map(e=>e.range),s=this._sheetDataValidationModel.getRuleObjectMatrix(r,a).clone();o&&s.removeRange(o);let{redoMutations:c,undoMutations:l}=R(r,a,s.diff(this._sheetDataValidationModel.getRules(r,a)),this._injector,`patched`);return{undos:l,redos:c}}return{undos:[],redos:[]}}})}};Z=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(n.DataValidatorRegistryService)),f(2,(0,t.Inject)(t.Injector)),f(3,(0,t.Inject)(i.SheetsSelectionsService)),f(4,(0,t.Inject)(i.SheetInterceptorService)),f(5,(0,t.Inject)(C))],Z);let Q=class extends t.Disposable{constructor(e,t,n,r){super(),this._univerInstanceService=e,this._sheetDataValidationModel=t,this._dataValidationCacheService=n,this._lifecycleService=r,this._initRecalculate()}_initRecalculate(){let e=e=>{if(e.length===0)return;let n=this._univerInstanceService.getCurrentUnitOfType(t.UniverInstanceType.UNIVER_SHEET),r=n==null?void 0:n.getActiveSheet(),i={};e.flat().forEach(e=>{i[e.unitId]||(i[e.unitId]={}),i[e.unitId][e.subUnitId]||(i[e.unitId][e.subUnitId]=[]);let n=this._univerInstanceService.getUnit(e.unitId,t.UniverInstanceType.UNIVER_SHEET),r=n==null?void 0:n.getSheetBySheetId(e.subUnitId);r&&i[e.unitId][e.subUnitId].push(...e.ranges.map(e=>t.Range.transformRange(e,r)))}),Object.entries(i).forEach(([e,t])=>{Object.entries(t).forEach(([t,i])=>{(n==null?void 0:n.getUnitId())===e&&(r==null?void 0:r.getSheetId())===t?this.validatorRanges(e,t,i):requestIdleCallback(()=>{this.validatorRanges(e,t,i)})})})};this.disposeWithMe(this._dataValidationCacheService.dirtyRanges$.pipe((0,a.bufferWhen)(()=>this._lifecycleService.lifecycle$.pipe((0,a.skip)(1),(0,a.filter)(e=>e===t.LifecycleStages.Rendered)))).subscribe(e)),this.disposeWithMe(this._dataValidationCacheService.dirtyRanges$.pipe((0,a.filter)(()=>this._lifecycleService.stage>=t.LifecycleStages.Rendered),(0,t.bufferDebounceTime)(20)).subscribe(e))}async _validatorByCell(e,n,r,i){let a=e.getUnitId(),o=n.getSheetId();if(!t.Tools.isDefine(r)||!t.Tools.isDefine(i))throw Error(`row or col is not defined, row: ${r}, col: ${i}`);let s=r,c=i,l=n.getMergedCell(r,i);l&&(s=l.startRow,c=l.startColumn);let u=this._sheetDataValidationModel.getRuleByLocation(a,o,s,c);return u?new Promise(t=>{this._sheetDataValidationModel.validator(u,{unitId:a,subUnitId:o,row:s,col:c,worksheet:n,workbook:e},e=>{t(e)})}):t.DataValidationStatus.VALID}async validatorCell(e,n,r,i){let a=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!a)throw Error(`cannot find current workbook, unitId: ${e}`);let o=a.getSheetBySheetId(n);if(!o)throw Error(`cannot find current worksheet, sheetId: ${n}`);return this._validatorByCell(a,o,r,i)}async validatorRanges(e,n,r){if(!r.length)return Promise.resolve([]);let i=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!i)throw Error(`cannot find current workbook, unitId: ${e}`);let a=i.getSheetBySheetId(n);if(!a)throw Error(`cannot find current worksheet, sheetId: ${n}`);let o=this._sheetDataValidationModel.getRules(e,n),s=[];for(let e of o)s.push(...e.ranges);let c=[];for(let e of r)for(let n of s){let r=(0,t.getIntersectRange)(e,n);r&&c.push(r)}let l=[],u=await Promise.all(c.map((e,t)=>{let n=[];for(let r=e.startRow;r<=e.endRow;r++)for(let o=e.startColumn;o<=e.endColumn;o++){n.push(this._validatorByCell(i,a,r,o));let e=a.getMergedCell(r,o);e&&l.push({resultRowIndex:t,resultColIndex:n.length-1,row:e.startRow,col:e.startColumn})}return Promise.all(n)}));return l.length&&l.forEach(({resultRowIndex:r,resultColIndex:i,row:a,col:o})=>{if(u[r][i]===t.DataValidationStatus.VALIDATING){var s;u[r][i]=(s=this._dataValidationCacheService.getValue(e,n,a,o))==null?t.DataValidationStatus.VALID:s}}),u}async validatorWorksheet(e,n){let r=this._univerInstanceService.getUnit(e,t.UniverInstanceType.UNIVER_SHEET);if(!r)throw Error(`cannot find current workbook, unitId: ${e}`);let i=r.getSheetBySheetId(n);if(!i)throw Error(`cannot find current worksheet, sheetId: ${n}`);let a=this._sheetDataValidationModel.getRules(e,n);return await Promise.all(a.map(e=>Promise.all(e.ranges.map(e=>{let n=[];return t.Range.foreach(e,(e,t)=>{n.push(this._validatorByCell(r,i,e,t))}),Promise.all(n)})))),this._dataValidationCacheService.ensureCache(e,n)}async validatorWorkbook(e){let t=this._sheetDataValidationModel.getSubUnitIds(e),n=await Promise.all(t.map(t=>this.validatorWorksheet(e,t))),r={};return n.forEach((e,n)=>{r[t[n]]=e}),r}getDataValidations(e,n,r){let i=this._sheetDataValidationModel.getRuleObjectMatrix(e,n),a=new Set;r.forEach(e=>{t.Range.foreach(e,(e,t)=>{let n=i.getValue(e,t);n&&a.add(n)})});let o=[];for(let t of a){let r=this._sheetDataValidationModel.getRuleById(e,n,t);r&&o.push(r)}return o}getDataValidation(e,t,n){return this.getDataValidations(e,t,n)[0]}};Q=p([f(0,t.IUniverInstanceService),f(1,(0,t.Inject)(C)),f(2,(0,t.Inject)(m)),f(3,(0,t.Inject)(t.LifecycleService))],Q);let $=class extends t.Plugin{constructor(e=xe,n,r,i){super(),this._config=e,this._injector=n,this._commandService=r,this._configService=i;let{...a}=(0,t.merge)({},xe,this._config);this._configService.setConfig(`sheets-data-validation.config`,a)}onStarting(){[[m],[x],[S],[y],[Q],[C],[Z],[q],[X],[Y],[J]].forEach(e=>{this._injector.add(e)}),[B,z,V,H,G,W,U].forEach(e=>{this._commandService.registerCommand(e)}),this._injector.get(m),this._injector.get(Q),this._injector.get(Z),this._injector.get(J),this._injector.get(Y)}onReady(){this._injector.get(X)}onRendered(){this._injector.get(q)}};d($,`pluginName`,K),d($,`packageName`,ye),d($,`version`,be),d($,`type`,t.UniverInstanceType.UNIVER_SHEET),$=p([(0,t.DependentOn)(s.UniverSheetsFormulaPlugin,n.UniverDataValidationPlugin),f(1,(0,t.Inject)(t.Injector)),f(2,t.ICommandService),f(3,t.IConfigService)],$);function Ee(e){let n=e.get(i.SheetsSelectionsService).getCurrentSelections().map(e=>e.range);return{uid:(0,t.generateRandomId)(6),type:t.DataValidationType.DECIMAL,operator:t.DataValidationOperator.EQUAL,formula1:`100`,ranges:n==null?[{startColumn:0,endColumn:0,startRow:0,endRow:0}]:n}}e.AddSheetDataValidationCommand=B,e.BASE_FORMULA_INPUT_NAME=`sheets-data-validation.formula-input`,e.CHECKBOX_FORMULA_1=1,e.CHECKBOX_FORMULA_2=0,e.CHECKBOX_FORMULA_INPUT_NAME=`sheets-data-validation.checkbox-formula-input`,e.CUSTOM_FORMULA_INPUT_NAME=`sheets-data-validation.custom-formula-input`,e.CheckboxValidator=oe,e.ClearRangeDataValidationCommand=U,e.DATA_VALIDATION_PLUGIN_NAME=K,Object.defineProperty(e,"DataValidationCacheService",{enumerable:!0,get:function(){return m}}),Object.defineProperty(e,"DataValidationCustomFormulaService",{enumerable:!0,get:function(){return y}}),Object.defineProperty(e,"DataValidationFormulaController",{enumerable:!0,get:function(){return q}}),Object.defineProperty(e,"DataValidationFormulaService",{enumerable:!0,get:function(){return S}}),Object.defineProperty(e,"DataValidationListCacheService",{enumerable:!0,get:function(){return x}}),e.DateValidator=de,e.LIST_FORMULA_INPUT_NAME=`sheets-data-validation.list-formula-input`,e.ListMultipleValidator=we,e.ListValidator=I,e.RemoveSheetAllDataValidationCommand=W,e.RemoveSheetDataValidationCommand=G,Object.defineProperty(e,"SheetDataValidationModel",{enumerable:!0,get:function(){return C}}),Object.defineProperty(e,"SheetsDataValidationValidatorService",{enumerable:!0,get:function(){return Q}}),Object.defineProperty(e,"UniverSheetsDataValidationPlugin",{enumerable:!0,get:function(){return $}}),e.UpdateSheetDataValidationOptionsCommand=H,e.UpdateSheetDataValidationRangeCommand=z,e.UpdateSheetDataValidationSettingCommand=V,e.createDefaultNewRule=Ee,e.getCellValueNumber=F,e.getCellValueOrigin=b,e.getDataValidationCellValue=ue,e.getDataValidationDiffMutations=R,e.getFormulaCellData=g,e.getFormulaResult=h,e.getTransformedFormula=N,e.isLegalFormulaResult=_,e.transformCheckboxValue=k});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationArSA=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`بين`,greaterThan:`أكبر من`,greaterThanOrEqual:`أكبر من أو يساوي`,lessThan:`أقل من`,lessThanOrEqual:`أقل من أو يساوي`,equal:`يساوي`,notEqual:`لا يساوي`,notBetween:`ليس بين`,legal:`نوع قانوني`},ruleName:{between:`بين {FORMULA1} و{FORMULA2}`,greaterThan:`أكبر من {FORMULA1}`,greaterThanOrEqual:`أكبر من أو يساوي {FORMULA1}`,lessThan:`أقل من {FORMULA1}`,lessThanOrEqual:`أقل من أو يساوي {FORMULA1}`,equal:`يساوي {FORMULA1}`,notEqual:`لا يساوي {FORMULA1}`,notBetween:`ليس بين {FORMULA1} و{FORMULA2}`,legal:`نوع قانوني {TYPE}`},errorMsg:{between:`يجب أن تكون القيمة بين {FORMULA1} و{FORMULA2}`,greaterThan:`يجب أن تكون القيمة أكبر من {FORMULA1}`,greaterThanOrEqual:`يجب أن تكون القيمة أكبر من أو تساوي {FORMULA1}`,lessThan:`يجب أن تكون القيمة أقل من {FORMULA1}`,lessThanOrEqual:`يجب أن تكون القيمة أقل من أو تساوي {FORMULA1}`,equal:`يجب أن تكون القيمة تساوي {FORMULA1}`,notEqual:`يجب ألا تكون القيمة تساوي {FORMULA1}`,notBetween:`يجب ألا تكون القيمة بين {FORMULA1} و{FORMULA2}`,legal:`يجب أن تكون القيمة من نوع قانوني {TYPE}`},date:{operators:{between:`بين`,greaterThan:`بعد`,greaterThanOrEqual:`في أو بعد`,lessThan:`قبل`,lessThanOrEqual:`في أو قبل`,equal:`يساوي`,notEqual:`لا يساوي`,notBetween:`ليس بين`,legal:`تاريخ قانوني`},ruleName:{between:`بين {FORMULA1} و{FORMULA2}`,greaterThan:`بعد {FORMULA1}`,greaterThanOrEqual:`في أو بعد {FORMULA1}`,lessThan:`قبل {FORMULA1}`,lessThanOrEqual:`في أو قبل {FORMULA1}`,equal:`في {FORMULA1}`,notEqual:`ليس في {FORMULA1}`,notBetween:`ليس بين {FORMULA1}`,legal:`تاريخ قانوني`},errorMsg:{between:`يجب أن تكون القيمة تاريخًا قانونيًا وبين {FORMULA1} و{FORMULA2}`,greaterThan:`يجب أن تكون القيمة تاريخًا قانونيًا وبعد {FORMULA1}`,greaterThanOrEqual:`يجب أن تكون القيمة تاريخًا قانونيًا وفي أو بعد {FORMULA1}`,lessThan:`يجب أن تكون القيمة تاريخًا قانونيًا وقبل {FORMULA1}`,lessThanOrEqual:`يجب أن تكون القيمة تاريخًا قانونيًا وفي أو قبل {FORMULA1}`,equal:`يجب أن تكون القيمة تاريخًا قانونيًا وفي {FORMULA1}`,notEqual:`يجب أن تكون القيمة تاريخًا قانونيًا وليس في {FORMULA1}`,notBetween:`يجب أن تكون القيمة تاريخًا قانونيًا وليس بين {FORMULA1}`,legal:`يجب أن تكون القيمة تاريخًا قانونيًا`},title:`تاريخ`},textLength:{errorMsg:{between:`يجب أن يكون طول النص بين {FORMULA1} و{FORMULA2}`,greaterThan:`يجب أن يكون طول النص أكبر من {FORMULA1}`,greaterThanOrEqual:`يجب أن يكون طول النص أكبر من أو يساوي {FORMULA1}`,lessThan:`يجب أن يكون طول النص أقل من {FORMULA1}`,lessThanOrEqual:`يجب أن يكون طول النص أقل من أو يساوي {FORMULA1}`,equal:`يجب أن يكون طول النص يساوي {FORMULA1}`,notEqual:`يجب ألا يكون طول النص يساوي {FORMULA1}`,notBetween:`يجب ألا يكون طول النص بين {FORMULA1}`},title:`طول النص`},custom:{ruleName:`الصيغة المخصصة هي {FORMULA1}`,title:`صيغة مخصصة`,validFail:`يرجى إدخال صيغة صالحة`,error:`محتويات هذه الخلية تنتهك قاعدة التحقق`},validFail:{value:`يرجى إدخال قيمة`,common:`يرجى إدخال قيمة أو صيغة`,number:`يرجى إدخال رقم أو صيغة`,formula:`يرجى إدخال صيغة`,integer:`يرجى إدخال عدد صحيح أو صيغة`,date:`يرجى إدخال تاريخ أو صيغة`,list:`يرجى إدخال خيارات`,listInvalid:`يجب أن يكون مصدر القائمة قائمة محددة بفواصل أو مرجعًا لصف أو عمود واحد`,checkboxEqual:`أدخل قيمًا مختلفة لمحتويات الخلية المحددة وغير المحددة.`,formulaError:`يحتوي نطاق المرجع على بيانات غير مرئية، يرجى إعادة ضبط النطاق`,listIntersects:`لا يمكن أن يتقاطع النطاق المحدد مع نطاق القواعد`,primitive:`غير مسموح بالصيغ لقيم المحدد وغير المحدد المخصصة.`},any:{title:`أي قيمة`,error:`محتوى هذه الخلية ينتهك قاعدة التحقق`},list:{title:`قائمة منسدلة`,name:`القيمة تحتوي على واحدة من النطاق`,error:`يجب أن يكون الإدخال ضمن النطاق المحدد`,emptyError:`يرجى إدخال قيمة`,add:`إضافة`,dropdown:`تحديد`,options:`خيارات`,customOptions:`مخصص`,refOptions:`من نطاق`,formulaError:`يجب أن يكون مصدر القائمة قائمة بيانات محددة بفواصل، أو مرجعًا لصف أو عمود واحد.`,edit:`تحرير`},listMultiple:{title:`قائمة منسدلة - متعددة`,dropdown:`تحديد متعدد`},decimal:{title:`رقم`},whole:{title:`عدد صحيح`},checkbox:{title:`خانة اختيار`,error:`محتويات هذه الخلية تنتهك قاعدة التحقق`,tips:`استخدم قيمًا مخصصة داخل الخلايا`,checked:`القيمة المحددة`,unchecked:`القيمة غير المحددة`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationCaES=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`entre`,greaterThan:`més gran que`,greaterThanOrEqual:`més gran o igual que`,lessThan:`menys que`,lessThanOrEqual:`menys o igual que`,equal:`igual`,notEqual:`no igual`,notBetween:`no entre`,legal:`és tipus legal`},ruleName:{between:`Està entre {FORMULA1} i {FORMULA2}`,greaterThan:`És més gran que {FORMULA1}`,greaterThanOrEqual:`És més gran o igual que {FORMULA1}`,lessThan:`És menys que {FORMULA1}`,lessThanOrEqual:`És menys o igual que {FORMULA1}`,equal:`És igual a {FORMULA1}`,notEqual:`No és igual a {FORMULA1}`,notBetween:`No està entre {FORMULA1} i {FORMULA2}`,legal:`És un {TYPE} legal`},errorMsg:{between:`El valor ha d’estar entre {FORMULA1} i {FORMULA2}`,greaterThan:`El valor ha de ser més gran que {FORMULA1}`,greaterThanOrEqual:`El valor ha de ser més gran o igual que {FORMULA1}`,lessThan:`El valor ha de ser menys que {FORMULA1}`,lessThanOrEqual:`El valor ha de ser menys o igual que {FORMULA1}`,equal:`El valor ha de ser igual a {FORMULA1}`,notEqual:`El valor no ha de ser igual a {FORMULA1}`,notBetween:`El valor no ha d’estar entre {FORMULA1} i {FORMULA2}`,legal:`El valor ha de ser un {TYPE} legal`},date:{operators:{between:`entre`,greaterThan:`després de`,greaterThanOrEqual:`en o després de`,lessThan:`abans de`,lessThanOrEqual:`en o abans de`,equal:`igual`,notEqual:`no igual`,notBetween:`no entre`,legal:`és una data legal`},ruleName:{between:`està entre {FORMULA1} i {FORMULA2}`,greaterThan:`és després de {FORMULA1}`,greaterThanOrEqual:`és en o després de {FORMULA1}`,lessThan:`és abans de {FORMULA1}`,lessThanOrEqual:`és en o abans de {FORMULA1}`,equal:`és {FORMULA1}`,notEqual:`no és {FORMULA1}`,notBetween:`no està entre {FORMULA1}`,legal:`és una data legal`},errorMsg:{between:`El valor ha de ser una data legal i estar entre {FORMULA1} i {FORMULA2}`,greaterThan:`El valor ha de ser una data legal i després de {FORMULA1}`,greaterThanOrEqual:`El valor ha de ser una data legal i en o després de {FORMULA1}`,lessThan:`El valor ha de ser una data legal i abans de {FORMULA1}`,lessThanOrEqual:`El valor ha de ser una data legal i en o abans de {FORMULA1}`,equal:`El valor ha de ser una data legal i {FORMULA1}`,notEqual:`El valor ha de ser una data legal i no {FORMULA1}`,notBetween:`El valor ha de ser una data legal i no estar entre {FORMULA1}`,legal:`El valor ha de ser una data legal`},title:`Data`},textLength:{errorMsg:{between:`La longitud del text ha d’estar entre {FORMULA1} i {FORMULA2}`,greaterThan:`La longitud del text ha de ser més gran que {FORMULA1}`,greaterThanOrEqual:`La longitud del text ha de ser més gran o igual que {FORMULA1}`,lessThan:`La longitud del text ha de ser menys que {FORMULA1}`,lessThanOrEqual:`La longitud del text ha de ser menys o igual que {FORMULA1}`,equal:`La longitud del text ha de ser {FORMULA1}`,notEqual:`La longitud del text no ha de ser {FORMULA1}`,notBetween:`La longitud del text no ha d’estar entre {FORMULA1}`},title:`Longitud del text`},custom:{ruleName:`La fórmula personalitzada és {FORMULA1}`,title:`Fórmula personalitzada`,validFail:`Si us plau, introdueix una fórmula vàlida`,error:`El contingut d’aquesta cel·la incompleix la seva regla de validació`},validFail:{value:`Si us plau, introdueix un valor`,common:`Si us plau, introdueix un valor o una fórmula`,number:`Si us plau, introdueix un número o una fórmula`,formula:`Si us plau, introdueix una fórmula`,integer:`Si us plau, introdueix un enter o una fórmula`,date:`Si us plau, introdueix una data o una fórmula`,list:`Si us plau, introdueix opcions`,listInvalid:`La font de la llista ha de ser una llista delimitada o una referència a una sola fila o columna`,checkboxEqual:`Introdueix valors diferents per als continguts de cel·la marcats i desmarcats.`,formulaError:`L’interval de referència conté dades invisibles, ajusta l’interval`,listIntersects:`L’interval seleccionat no pot creuar-se amb l’àmbit de les regles`,primitive:`No es permeten fórmules per a valors personalitzats marcats i desmarcats.`},any:{title:`Qualsevol valor`,error:`El contingut d’aquesta cel·la incompleix la regla de validació`},list:{title:`Desplegable`,name:`El valor conté un del rang`,error:`L’entrada ha d’estar dins del rang especificat`,emptyError:`Si us plau, introdueix un valor`,add:`Afegeix`,dropdown:`Selecciona`,options:`Opcions`,customOptions:`Personalitzat`,refOptions:`D’un interval`,formulaError:`La font de la llista ha de ser una llista delimitada de dades o una referència a una sola fila o columna.`,edit:`Edita`},listMultiple:{title:`Desplegable-múltiple`,dropdown:`Selecció múltiple`},decimal:{title:`Número`},whole:{title:`Enter`},checkbox:{title:`Casella de selecció`,error:`El contingut d’aquesta cel·la incompleix la seva regla de validació`,tips:`Utilitza valors personalitzats dins de les cel·les`,checked:`Valor seleccionat`,unchecked:`Valor no seleccionat`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationDeDE=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`zwischen`,greaterThan:`größer als`,greaterThanOrEqual:`größer als oder gleich`,lessThan:`kleiner als`,lessThanOrEqual:`kleiner als oder gleich`,equal:`gleich`,notEqual:`ungleich`,notBetween:`nicht zwischen`,legal:`ist gültiger Typ`},ruleName:{between:`Ist zwischen {FORMULA1} und {FORMULA2}`,greaterThan:`Ist größer als {FORMULA1}`,greaterThanOrEqual:`Ist größer als oder gleich {FORMULA1}`,lessThan:`Ist kleiner als {FORMULA1}`,lessThanOrEqual:`Ist kleiner als oder gleich {FORMULA1}`,equal:`Ist gleich {FORMULA1}`,notEqual:`Ist ungleich {FORMULA1}`,notBetween:`Ist nicht zwischen {FORMULA1} und {FORMULA2}`,legal:`Ist ein gültiger {TYPE}`},errorMsg:{between:`Wert muss zwischen {FORMULA1} und {FORMULA2} liegen`,greaterThan:`Wert muss größer als {FORMULA1} sein`,greaterThanOrEqual:`Wert muss größer als oder gleich {FORMULA1} sein`,lessThan:`Wert muss kleiner als {FORMULA1} sein`,lessThanOrEqual:`Wert muss kleiner als oder gleich {FORMULA1} sein`,equal:`Wert muss gleich {FORMULA1} sein`,notEqual:`Wert muss ungleich {FORMULA1} sein`,notBetween:`Wert muss nicht zwischen {FORMULA1} und {FORMULA2} liegen`,legal:`Wert muss ein gültiger {TYPE} sein`},date:{operators:{between:`zwischen`,greaterThan:`nach`,greaterThanOrEqual:`am oder nach`,lessThan:`vor`,lessThanOrEqual:`am oder vor`,equal:`gleich`,notEqual:`ungleich`,notBetween:`nicht zwischen`,legal:`ist ein gültiges Datum`},ruleName:{between:`ist zwischen {FORMULA1} und {FORMULA2}`,greaterThan:`ist nach {FORMULA1}`,greaterThanOrEqual:`ist am oder nach {FORMULA1}`,lessThan:`ist vor {FORMULA1}`,lessThanOrEqual:`ist am oder vor {FORMULA1}`,equal:`ist {FORMULA1}`,notEqual:`ist nicht {FORMULA1}`,notBetween:`ist nicht zwischen {FORMULA1}`,legal:`ist ein gültiges Datum`},errorMsg:{between:`Wert muss ein gültiges Datum sein und zwischen {FORMULA1} und {FORMULA2} liegen`,greaterThan:`Wert muss ein gültiges Datum sein und nach {FORMULA1} liegen`,greaterThanOrEqual:`Wert muss ein gültiges Datum sein und am oder nach {FORMULA1} liegen`,lessThan:`Wert muss ein gültiges Datum sein und vor {FORMULA1} liegen`,lessThanOrEqual:`Wert muss ein gültiges Datum sein und am oder vor {FORMULA1} liegen`,equal:`Wert muss ein gültiges Datum sein und {FORMULA1} entsprechen`,notEqual:`Wert muss ein gültiges Datum sein und nicht {FORMULA1} entsprechen`,notBetween:`Wert muss ein gültiges Datum sein und nicht zwischen {FORMULA1} liegen`,legal:`Wert muss ein gültiges Datum sein`},title:`Datum`},textLength:{errorMsg:{between:`Textlänge muss zwischen {FORMULA1} und {FORMULA2} liegen`,greaterThan:`Textlänge muss größer als {FORMULA1} sein`,greaterThanOrEqual:`Textlänge muss größer als oder gleich {FORMULA1} sein`,lessThan:`Textlänge muss kleiner als {FORMULA1} sein`,lessThanOrEqual:`Textlänge muss kleiner als oder gleich {FORMULA1} sein`,equal:`Textlänge muss {FORMULA1} sein`,notEqual:`Textlänge muss ungleich {FORMULA1} sein`,notBetween:`Textlänge muss nicht zwischen {FORMULA1} liegen`},title:`Textlänge`},custom:{ruleName:`Benutzerdefinierte Formel ist {FORMULA1}`,title:`Benutzerdefinierte Formel`,validFail:`Bitte geben Sie eine gültige Formel ein`,error:`Der Inhalt dieser Zelle verstößt gegen die Überprüfungsregel`},validFail:{value:`Bitte geben Sie einen Wert ein`,common:`Bitte geben Sie einen Wert oder eine Formel ein`,number:`Bitte geben Sie eine Zahl oder eine Formel ein`,formula:`Bitte geben Sie eine Formel ein`,integer:`Bitte geben Sie eine ganze Zahl oder eine Formel ein`,date:`Bitte geben Sie ein Datum oder eine Formel ein`,list:`Bitte geben Sie Optionen ein`,listInvalid:`Die Listenquelle muss eine durch Trennzeichen getrennte Liste oder ein Bezug auf eine einzelne Zeile oder Spalte sein`,checkboxEqual:`Geben Sie unterschiedliche Werte für angekreuzte und nicht angekreuzte Zelleninhalte ein.`,formulaError:`Der Bezugsbereich enthält unsichtbare Daten, bitte passen Sie den Bereich an`,listIntersects:`Der ausgewählte Bereich darf sich nicht mit dem Geltungsbereich der Regeln überschneiden`,primitive:`Formeln sind für benutzerdefinierte angekreuzte und nicht angekreuzte Werte nicht zulässig.`},any:{title:`Beliebiger Wert`,error:`Der Inhalt dieser Zelle verstößt gegen die Überprüfungsregel`},list:{title:`Dropdown`,name:`Wert enthält einen aus dem Bereich`,error:`Eingabe muss im angegebenen Bereich liegen`,emptyError:`Bitte geben Sie einen Wert ein`,add:`Hinzufügen`,dropdown:`Auswählen`,options:`Optionen`,customOptions:`Benutzerdefiniert`,refOptions:`Aus einem Bereich`,formulaError:`Die Listenquelle muss eine durch Trennzeichen getrennte Datenliste oder ein Bezug auf eine einzelne Zeile oder Spalte sein.`,edit:`Bearbeiten`},listMultiple:{title:`Dropdown-Mehrfachauswahl`,dropdown:`Mehrfachauswahl`},decimal:{title:`Zahl`},whole:{title:`Ganze Zahl`},checkbox:{title:`Kontrollkästchen`,error:`Der Inhalt dieser Zelle verstößt gegen die Überprüfungsregel`,tips:`Benutzerdefinierte Werte in Zellen verwenden`,checked:`Ausgewählter Wert`,unchecked:`Nicht ausgewählter Wert`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationEnUS=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`between`,greaterThan:`greater than`,greaterThanOrEqual:`greater than or equal`,lessThan:`less than`,lessThanOrEqual:`less than or equal`,equal:`equal`,notEqual:`not equal`,notBetween:`not between`,legal:`is legal type`},ruleName:{between:`Is between {FORMULA1} and {FORMULA2}`,greaterThan:`Is greater than {FORMULA1}`,greaterThanOrEqual:`Is greater than or equal to {FORMULA1}`,lessThan:`Is less than {FORMULA1}`,lessThanOrEqual:`Is less than or equal to {FORMULA1}`,equal:`Is equal to {FORMULA1}`,notEqual:`Is not equal to {FORMULA1}`,notBetween:`Is not between {FORMULA1} and {FORMULA2}`,legal:`Is a legal {TYPE}`},errorMsg:{between:`Value must be between {FORMULA1} and {FORMULA2}`,greaterThan:`Value must be greater than {FORMULA1}`,greaterThanOrEqual:`Value must be greater than or equal to {FORMULA1}`,lessThan:`Value must be less than {FORMULA1}`,lessThanOrEqual:`Value must be less than or equal to {FORMULA1}`,equal:`Value must be equal to {FORMULA1}`,notEqual:`Value must be not equal to {FORMULA1}`,notBetween:`Value must be not between {FORMULA1} and {FORMULA2}`,legal:`Value must be a legal {TYPE}`},date:{operators:{between:`between`,greaterThan:`after`,greaterThanOrEqual:`on or after`,lessThan:`before`,lessThanOrEqual:`on or before`,equal:`equal`,notEqual:`not equal`,notBetween:`not between`,legal:`is a legal date`},ruleName:{between:`is between {FORMULA1} and {FORMULA2}`,greaterThan:`is after {FORMULA1}`,greaterThanOrEqual:`is on or after {FORMULA1}`,lessThan:`is before {FORMULA1}`,lessThanOrEqual:`is on or before {FORMULA1}`,equal:`is {FORMULA1}`,notEqual:`is not {FORMULA1}`,notBetween:`is not between {FORMULA1}`,legal:`is a legal date`},errorMsg:{between:`Value must be a legal date and between {FORMULA1} and {FORMULA2}`,greaterThan:`Value must be a legal date and after {FORMULA1}`,greaterThanOrEqual:`Value must be a legal date and on or after {FORMULA1}`,lessThan:`Value must be a legal date and before {FORMULA1}`,lessThanOrEqual:`Value must be a legal date and on or before {FORMULA1}`,equal:`Value must be a legal date and {FORMULA1}`,notEqual:`Value must be a legal date and not {FORMULA1}`,notBetween:`Value must be a legal date and not between {FORMULA1}`,legal:`Value must be a legal date`},title:`Date`},textLength:{errorMsg:{between:`Text length must be between {FORMULA1} and {FORMULA2}`,greaterThan:`Text length must be after {FORMULA1}`,greaterThanOrEqual:`Text length must be on or after {FORMULA1}`,lessThan:`Text length must be before {FORMULA1}`,lessThanOrEqual:`Text length must be on or before {FORMULA1}`,equal:`Text length must be {FORMULA1}`,notEqual:`Text length must be not {FORMULA1}`,notBetween:`Text length must be not between {FORMULA1}`},title:`Text length`},custom:{ruleName:`Custom formula is {FORMULA1}`,title:`Custom formula`,validFail:`Please input a valid formula`,error:`This cell's contents violate its validation rule`},validFail:{value:`Please input a value`,common:`Please input value or formula`,number:`Please input number or formula`,formula:`Please input formula`,integer:`Please input integer or formula`,date:`Please input date or formula`,list:`Please input options`,listInvalid:`The list source must be a delimited list or a reference to a single row or column`,checkboxEqual:`Enter different values for ticked and unticked cell contents.`,formulaError:`The reference range contains invisible data, please readjust the range`,listIntersects:`The selected range cannot intersect with the scope of the rules`,primitive:`Formulas are not permitted for custom ticked and unticked values.`},any:{title:`Any value`,error:`The content of this cell violates the validation rule`},list:{title:`Dropdown`,name:`Value contains one from range`,error:`Input must fall within specified range`,emptyError:`Please enter a value`,add:`Add`,dropdown:`Select`,options:`Options`,customOptions:`Custom`,refOptions:`From a range`,formulaError:`The list source must be a delimited list of data, or a reference to a single row or column.`,edit:`Edit`},listMultiple:{title:`Dropdown-Multiple`,dropdown:`Multiple select`},decimal:{title:`Number`},whole:{title:`Integer`},checkbox:{title:`Checkbox`,error:`This cell's contents violate its validation rule`,tips:`Use custom values within cells`,checked:`Selected value`,unchecked:`Unselected value`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationEsES=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`entre`,greaterThan:`mayor que`,greaterThanOrEqual:`mayor o igual que`,lessThan:`menor que`,lessThanOrEqual:`menor o igual que`,equal:`igual`,notEqual:`no igual`,notBetween:`no entre`,legal:`es tipo legal`},ruleName:{between:`Está entre {FORMULA1} y {FORMULA2}`,greaterThan:`Es mayor que {FORMULA1}`,greaterThanOrEqual:`Es mayor o igual que {FORMULA1}`,lessThan:`Es menor que {FORMULA1}`,lessThanOrEqual:`Es menor o igual que {FORMULA1}`,equal:`Es igual a {FORMULA1}`,notEqual:`No es igual a {FORMULA1}`,notBetween:`No está entre {FORMULA1} y {FORMULA2}`,legal:`Es un {TYPE} legal`},errorMsg:{between:`El valor debe estar entre {FORMULA1} y {FORMULA2}`,greaterThan:`El valor debe ser mayor que {FORMULA1}`,greaterThanOrEqual:`El valor debe ser mayor o igual que {FORMULA1}`,lessThan:`El valor debe ser menor que {FORMULA1}`,lessThanOrEqual:`El valor debe ser menor o igual que {FORMULA1}`,equal:`El valor debe ser igual a {FORMULA1}`,notEqual:`El valor no debe ser igual a {FORMULA1}`,notBetween:`El valor no debe estar entre {FORMULA1} y {FORMULA2}`,legal:`El valor debe ser un {TYPE} legal`},date:{operators:{between:`entre`,greaterThan:`después de`,greaterThanOrEqual:`en o después de`,lessThan:`antes de`,lessThanOrEqual:`en o antes de`,equal:`igual`,notEqual:`no igual`,notBetween:`no entre`,legal:`es una fecha legal`},ruleName:{between:`está entre {FORMULA1} y {FORMULA2}`,greaterThan:`es después de {FORMULA1}`,greaterThanOrEqual:`es en o después de {FORMULA1}`,lessThan:`es antes de {FORMULA1}`,lessThanOrEqual:`es en o antes de {FORMULA1}`,equal:`es {FORMULA1}`,notEqual:`no es {FORMULA1}`,notBetween:`no está entre {FORMULA1}`,legal:`es una fecha legal`},errorMsg:{between:`El valor debe ser una fecha legal y estar entre {FORMULA1} y {FORMULA2}`,greaterThan:`El valor debe ser una fecha legal y después de {FORMULA1}`,greaterThanOrEqual:`El valor debe ser una fecha legal y en o después de {FORMULA1}`,lessThan:`El valor debe ser una fecha legal y antes de {FORMULA1}`,lessThanOrEqual:`El valor debe ser una fecha legal y en o antes de {FORMULA1}`,equal:`El valor debe ser una fecha legal y {FORMULA1}`,notEqual:`El valor debe ser una fecha legal y no {FORMULA1}`,notBetween:`El valor debe ser una fecha legal y no estar entre {FORMULA1}`,legal:`El valor debe ser una fecha legal`},title:`Fecha`},textLength:{errorMsg:{between:`La longitud del texto debe estar entre {FORMULA1} y {FORMULA2}`,greaterThan:`La longitud del texto debe ser mayor que {FORMULA1}`,greaterThanOrEqual:`La longitud del texto debe ser mayor o igual que {FORMULA1}`,lessThan:`La longitud del texto debe ser menor que {FORMULA1}`,lessThanOrEqual:`La longitud del texto debe ser menor o igual que {FORMULA1}`,equal:`La longitud del texto debe ser {FORMULA1}`,notEqual:`La longitud del texto no debe ser {FORMULA1}`,notBetween:`La longitud del texto no debe estar entre {FORMULA1}`},title:`Longitud del texto`},custom:{ruleName:`La fórmula personalizada es {FORMULA1}`,title:`Fórmula personalizada`,validFail:`Por favor, introduce una fórmula válida`,error:`El contenido de esta celda viola su regla de validación`},validFail:{value:`Por favor, introduce un valor`,common:`Por favor, introduce un valor o fórmula`,number:`Por favor, introduce un número o fórmula`,formula:`Por favor, introduce una fórmula`,integer:`Por favor, introduce un entero o fórmula`,date:`Por favor, introduce una fecha o fórmula`,list:`Por favor, introduce opciones`,listInvalid:`La fuente de la lista debe ser una lista delimitada o una referencia a una sola fila o columna`,checkboxEqual:`Introduce valores diferentes para los contenidos de celda marcados y desmarcados.`,formulaError:`El rango de referencia contiene datos invisibles, ajusta el rango`,listIntersects:`El rango seleccionado no puede cruzarse con el ámbito de las reglas`,primitive:`No se permiten fórmulas para valores personalizados marcados y desmarcados.`},any:{title:`Cualquier valor`,error:`El contenido de esta celda viola la regla de validación`},list:{title:`Desplegable`,name:`El valor contiene uno del rango`,error:`La entrada debe estar dentro del rango especificado`,emptyError:`Por favor, introduce un valor`,add:`Añadir`,dropdown:`Seleccionar`,options:`Opciones`,customOptions:`Personalizado`,refOptions:`De un rango`,formulaError:`La fuente de la lista debe ser una lista delimitada de datos o una referencia a una sola fila o columna.`,edit:`Editar`},listMultiple:{title:`Desplegable-múltiple`,dropdown:`Selección múltiple`},decimal:{title:`Número`},whole:{title:`Entero`},checkbox:{title:`Casilla de verificación`,error:`El contenido de esta celda viola su regla de validación`,tips:`Usa valores personalizados dentro de las celdas`,checked:`Valor seleccionado`,unchecked:`Valor no seleccionado`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationFaIR=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`بین`,greaterThan:`بزرگتر از`,greaterThanOrEqual:`بزرگتر از یا برابر با`,lessThan:`کوچکتر از`,lessThanOrEqual:`کوچکتر از یا برابر با`,equal:`برابر با`,notEqual:`نابرابر با`,notBetween:`بین نیست`,legal:`نوع قانونی است`},ruleName:{between:`بین {FORMULA1} و {FORMULA2} است`,greaterThan:`بزرگتر از {FORMULA1} است`,greaterThanOrEqual:`بزرگتر از یا برابر با {FORMULA1} است`,lessThan:`کوچکتر از {FORMULA1} است`,lessThanOrEqual:`کوچکتر از یا برابر با {FORMULA1} است`,equal:`برابر است با {FORMULA1}`,notEqual:`برابر نیست با {FORMULA1}`,notBetween:`بین {FORMULA1} و {FORMULA2} نیست`,legal:`یک {TYPE} قانونی است`},errorMsg:{between:`مقدار باید بین {FORMULA1} و {FORMULA2} باشد`,greaterThan:`مقدار باید بزرگتر از {FORMULA1} باشد`,greaterThanOrEqual:`مقدار باید بزرگتر از یا برابر با {FORMULA1} باشد`,lessThan:`مقدار باید کوچکتر از {FORMULA1} باشد`,lessThanOrEqual:`مقدار باید کوچکتر از یا برابر با {FORMULA1} باشد`,equal:`مقدار باید برابر با {FORMULA1} باشد`,notEqual:`مقدار باید برابر نیست با {FORMULA1}`,notBetween:`مقدار باید بین {FORMULA1} و {FORMULA2} نباشد`,legal:`مقدار باید یک {TYPE} قانونی باشد`},date:{operators:{between:`بین`,greaterThan:`بعد از`,greaterThanOrEqual:`روی یا بعد از`,lessThan:`قبل از`,lessThanOrEqual:`روی یا قبل از`,equal:`برابر است با`,notEqual:`برابر نیست با`,notBetween:`بین ... و ... نیست`,legal:`یک تاریخ قانونی است`},ruleName:{between:`بین {FORMULA1} و {FORMULA2} است`,greaterThan:`بعد از {FORMULA1} است`,greaterThanOrEqual:`روی یا بعد از {FORMULA1} است`,lessThan:`قبل از {FORMULA1} است`,lessThanOrEqual:`روی یا قبل از {FORMULA1} است`,equal:`برابر است با {FORMULA1}`,notEqual:`برابر نیست با {FORMULA1}`,notBetween:`بین {FORMULA1} و {FORMULA2} نیست`,legal:`یک تاریخ قانونی است`},errorMsg:{between:`مقدار باید یک تاریخ معتبر و بین {FORMULA1} و {FORMULA2} باشد`,greaterThan:`مقدار باید یک تاریخ معتبر و بعد از {FORMULA1} باشد`,greaterThanOrEqual:`مقدار باید یک تاریخ معتبر و روی یا بعد از {FORMULA1} باشد`,lessThan:`مقدار باید یک تاریخ معتبر و قبل از {FORMULA1} باشد`,lessThanOrEqual:`مقدار باید یک تاریخ معتبر و روی یا قبل از {FORMULA1} باشد`,equal:`مقدار باید یک تاریخ معتبر و {FORMULA1} باشد`,notEqual:`مقدار باید یک تاریخ معتبر و نه {FORMULA1} باشد`,notBetween:`مقدار باید یک تاریخ معتبر و بین {FORMULA1} و {FORMULA2} نباشد`,legal:`مقدار باید یک تاریخ قانونی باشد`},title:`تاریخ`},textLength:{errorMsg:{between:`طول متن باید بین {FORMULA1} و {FORMULA2} باشد`,greaterThan:`طول متن باید بعد از {FORMULA1} باشد`,greaterThanOrEqual:`طول متن باید روی یا بعد از {FORMULA1} باشد`,lessThan:`طول متن باید قبل از {FORMULA1} باشد`,lessThanOrEqual:`طول متن باید روی یا قبل از {FORMULA1} باشد`,equal:`طول متن باید {FORMULA1} باشد`,notEqual:`طول متن باید {FORMULA1} نباشد`,notBetween:`طول متن باید بین {FORMULA1} و {FORMULA2} نباشد`},title:`طول متن`},custom:{ruleName:`فرمول سفارشی {FORMULA1}`,title:`فرمول سفارشی `,validFail:`لطفا یک فرمول معتبر وارد کنید`,error:`محتوای این سلول با قانون اعتبارسنجی آن نقض میشود`},validFail:{value:`لطفا یک مقدار وارد کنید`,common:`لطفا مقدار یا فرمول را وارد کنید`,number:`لطفا عدد یا فرمول را وارد کنید`,formula:`لطفا فرمول را وارد کنید`,integer:`لطفا عدد صحیح یا فرمول را وارد کنید`,date:`لطفا تاریخ یا فرمول را وارد کنید`,list:`لطفا گزینهها را وارد کنید`,listInvalid:`منبع لیست باید یک لیست جدا شده یا یک مرجع به یک سطر یا ستون منفرد باشد`,checkboxEqual:`برای محتوای سلولهای علامتدار و علامتگذاری نشده، مقادیر متفاوتی وارد کنید.`,formulaError:`محدوده مرجع حاوی دادههای نامرئی است، لطفا محدوده را دوباره تنظیم کنید`,listIntersects:`محدوده انتخاب شده نمیتواند با دامنه قوانین تداخل داشته باشد`,primitive:`فرمولها برای مقادیر سفارشی علامتدار و علامتگذاری نشده مجاز نیستند.`},any:{title:`هر مقدار`,error:`محتوای این سلول نقض قانون اعتبارسنجی است`},list:{title:`لیست کشویی`,name:`مقدار شامل یکی از محدوده است`,error:`ورود باید در محدوده مشخص شده قرار گیرد`,emptyError:`لطفا یک مقدار وارد کنید`,add:`افزودن`,dropdown:`انتخاب`,options:`گزینهها`,customOptions:`سفارشی`,refOptions:`از یک محدوده`,formulaError:`منبع لیست باید یک لیست جدا شده از دادهها یا یک مرجع به یک سطر یا ستون منفرد باشد.`,edit:`ویرایش`},listMultiple:{title:`لیست کشویی چندگانه`,dropdown:`انتخاب چندگانه`},decimal:{title:`عدد`},whole:{title:`عدد صحیح`},checkbox:{title:`کادر انتخاب`,error:`محتوای این سلول با قانون اعتبارسنجی آن نقض میشود`,tips:`از مقادیر سفارشی در سلولها استفاده کنید`,checked:`مقدار انتخاب شده`,unchecked:`مقدار انتخاب نشده`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationFrFR=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`entre`,greaterThan:`supérieur à`,greaterThanOrEqual:`supérieur ou égal à`,lessThan:`inférieur à`,lessThanOrEqual:`inférieur ou égal à`,equal:`égal à`,notEqual:`différent de`,notBetween:`pas entre`,legal:`est de type légal`},ruleName:{between:`est entre {FORMULA1} et {FORMULA2}`,greaterThan:`est supérieur à {FORMULA1}`,greaterThanOrEqual:`est supérieur ou égal à {FORMULA1}`,lessThan:`est inférieur à {FORMULA1}`,lessThanOrEqual:`est inférieur ou égal à {FORMULA1}`,equal:`est égal à {FORMULA1}`,notEqual:`est différent de {FORMULA1}`,notBetween:`n'est pas entre {FORMULA1} et {FORMULA2}`,legal:`est un {TYPE} légal`},errorMsg:{between:`La valeur doit être entre {FORMULA1} et {FORMULA2}`,greaterThan:`La valeur doit être supérieure à {FORMULA1}`,greaterThanOrEqual:`La valeur doit être supérieure ou égale à {FORMULA1}`,lessThan:`La valeur doit être inférieure à {FORMULA1}`,lessThanOrEqual:`La valeur doit être inférieure ou égale à {FORMULA1}`,equal:`La valeur doit être égale à {FORMULA1}`,notEqual:`La valeur doit être différente de {FORMULA1}`,notBetween:`La valeur ne doit pas être entre {FORMULA1} et {FORMULA2}`,legal:`La valeur doit être un {TYPE} légal`},date:{operators:{between:`entre`,greaterThan:`après`,greaterThanOrEqual:`le ou après`,lessThan:`avant`,lessThanOrEqual:`le ou avant`,equal:`égal à`,notEqual:`différent de`,notBetween:`pas entre`,legal:`est une date légale`},ruleName:{between:`est entre {FORMULA1} et {FORMULA2}`,greaterThan:`est après {FORMULA1}`,greaterThanOrEqual:`est le ou après {FORMULA1}`,lessThan:`est avant {FORMULA1}`,lessThanOrEqual:`est le ou avant {FORMULA1}`,equal:`est {FORMULA1}`,notEqual:`n'est pas {FORMULA1}`,notBetween:`n'est pas entre {FORMULA1}`,legal:`est une date légale`},errorMsg:{between:`La valeur doit être une date légale et entre {FORMULA1} et {FORMULA2}`,greaterThan:`La valeur doit être une date légale et après {FORMULA1}`,greaterThanOrEqual:`La valeur doit être une date légale et le ou après {FORMULA1}`,lessThan:`La valeur doit être une date légale et avant {FORMULA1}`,lessThanOrEqual:`La valeur doit être une date légale et le ou avant {FORMULA1}`,equal:`La valeur doit être une date légale et {FORMULA1}`,notEqual:`La valeur doit être une date légale et non {FORMULA1}`,notBetween:`La valeur doit être une date légale et non entre {FORMULA1}`,legal:`La valeur doit être une date légale`},title:`Date`},textLength:{errorMsg:{between:`La longueur du texte doit être entre {FORMULA1} et {FORMULA2}`,greaterThan:`La longueur du texte doit être supérieure à {FORMULA1}`,greaterThanOrEqual:`La longueur du texte doit être supérieure ou égale à {FORMULA1}`,lessThan:`La longueur du texte doit être inférieure à {FORMULA1}`,lessThanOrEqual:`La longueur du texte doit être inférieure ou égale à {FORMULA1}`,equal:`La longueur du texte doit être {FORMULA1}`,notEqual:`La longueur du texte doit être différente de {FORMULA1}`,notBetween:`La longueur du texte ne doit pas être entre {FORMULA1} et {FORMULA2}`},title:`Longueur du texte`},custom:{ruleName:`La formule personnalisée est {FORMULA1}`,title:`Formule personnalisée`,validFail:`Veuillez entrer une formule valide`,error:`Le contenu de cette cellule viole sa règle de validation`},validFail:{value:`Veuillez entrer une valeur`,common:`Veuillez entrer une valeur ou une formule`,number:`Veuillez entrer un nombre ou une formule`,formula:`Veuillez entrer une formule`,integer:`Veuillez entrer un entier ou une formule`,date:`Veuillez entrer une date ou une formule`,list:`Veuillez entrer des options`,listInvalid:`La source de la liste doit être une liste délimitée ou une référence à une seule ligne ou colonne`,checkboxEqual:`Entrez des valeurs différentes pour les contenus des cellules cochées et décochées.`,formulaError:`La plage de référence contient des données invisibles, veuillez réajuster la plage`,listIntersects:`La plage sélectionnée ne peut pas croiser le champ des règles`,primitive:`Les formules ne sont pas autorisées pour les valeurs personnalisées cochées et décochées.`},any:{title:`N'importe quelle valeur`,error:`Le contenu de cette cellule viole la règle de validation`},list:{title:`Liste déroulante`,name:`La valeur contient une de la plage`,error:`L'entrée doit être dans la plage spécifiée`,emptyError:`Veuillez entrer une valeur`,add:`Ajouter`,dropdown:`Sélectionner`,options:`Options`,customOptions:`Personnalisé`,refOptions:`D'une plage`,formulaError:`La source de la liste doit être une liste délimitée de données, ou une référence à une seule ligne ou colonne.`,edit:`Éditer`},listMultiple:{title:`Liste déroulante-Multiple`,dropdown:`Sélection multiple`},decimal:{title:`Nombre`},whole:{title:`Entier`},checkbox:{title:`Case à cocher`,error:`Le contenu de cette cellule viole sa règle de validation`,tips:`Utiliser des valeurs personnalisées dans les cellules`,checked:`Valeur sélectionnée`,unchecked:`Valeur non sélectionnée`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationIdID=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`antara`,greaterThan:`lebih besar dari`,greaterThanOrEqual:`lebih besar dari atau sama dengan`,lessThan:`kurang dari`,lessThanOrEqual:`kurang dari atau sama dengan`,equal:`sama dengan`,notEqual:`tidak sama dengan`,notBetween:`tidak antara`,legal:`tipe yang sah`},ruleName:{between:`Di antara {FORMULA1} dan {FORMULA2}`,greaterThan:`Lebih besar dari {FORMULA1}`,greaterThanOrEqual:`Lebih besar dari atau sama dengan {FORMULA1}`,lessThan:`Kurang dari {FORMULA1}`,lessThanOrEqual:`Kurang dari atau sama dengan {FORMULA1}`,equal:`Sama dengan {FORMULA1}`,notEqual:`Tidak sama dengan {FORMULA1}`,notBetween:`Tidak di antara {FORMULA1} dan {FORMULA2}`,legal:`Tipe {TYPE} yang sah`},errorMsg:{between:`Nilai harus di antara {FORMULA1} dan {FORMULA2}`,greaterThan:`Nilai harus lebih besar dari {FORMULA1}`,greaterThanOrEqual:`Nilai harus lebih besar dari atau sama dengan {FORMULA1}`,lessThan:`Nilai harus kurang dari {FORMULA1}`,lessThanOrEqual:`Nilai harus kurang dari atau sama dengan {FORMULA1}`,equal:`Nilai harus sama dengan {FORMULA1}`,notEqual:`Nilai harus tidak sama dengan {FORMULA1}`,notBetween:`Nilai harus tidak di antara {FORMULA1} dan {FORMULA2}`,legal:`Nilai harus tipe {TYPE} yang sah`},date:{operators:{between:`antara`,greaterThan:`setelah`,greaterThanOrEqual:`pada atau setelah`,lessThan:`sebelum`,lessThanOrEqual:`pada atau sebelum`,equal:`sama dengan`,notEqual:`tidak sama dengan`,notBetween:`tidak antara`,legal:`tanggal yang sah`},ruleName:{between:`antara {FORMULA1} dan {FORMULA2}`,greaterThan:`setelah {FORMULA1}`,greaterThanOrEqual:`pada atau setelah {FORMULA1}`,lessThan:`sebelum {FORMULA1}`,lessThanOrEqual:`pada atau sebelum {FORMULA1}`,equal:`adalah {FORMULA1}`,notEqual:`bukan {FORMULA1}`,notBetween:`tidak antara {FORMULA1}`,legal:`tanggal yang sah`},errorMsg:{between:`Nilai harus tanggal yang sah dan di antara {FORMULA1} dan {FORMULA2}`,greaterThan:`Nilai harus tanggal yang sah dan setelah {FORMULA1}`,greaterThanOrEqual:`Nilai harus tanggal yang sah dan pada atau setelah {FORMULA1}`,lessThan:`Nilai harus tanggal yang sah dan sebelum {FORMULA1}`,lessThanOrEqual:`Nilai harus tanggal yang sah dan pada atau sebelum {FORMULA1}`,equal:`Nilai harus tanggal yang sah dan {FORMULA1}`,notEqual:`Nilai harus tanggal yang sah dan bukan {FORMULA1}`,notBetween:`Nilai harus tanggal yang sah dan tidak antara {FORMULA1}`,legal:`Nilai harus tanggal yang sah`},title:`Tanggal`},textLength:{errorMsg:{between:`Panjang teks harus di antara {FORMULA1} dan {FORMULA2}`,greaterThan:`Panjang teks harus lebih besar dari {FORMULA1}`,greaterThanOrEqual:`Panjang teks harus lebih besar dari atau sama dengan {FORMULA1}`,lessThan:`Panjang teks harus kurang dari {FORMULA1}`,lessThanOrEqual:`Panjang teks harus kurang dari atau sama dengan {FORMULA1}`,equal:`Panjang teks harus {FORMULA1}`,notEqual:`Panjang teks harus tidak sama dengan {FORMULA1}`,notBetween:`Panjang teks harus tidak di antara {FORMULA1}`},title:`Panjang teks`},custom:{ruleName:`Rumus kustom adalah {FORMULA1}`,title:`Rumus kustom`,validFail:`Harap masukkan rumus yang valid`,error:`Konten sel ini melanggar aturan validasinya`},validFail:{value:`Harap masukkan nilai`,common:`Harap masukkan nilai atau rumus`,number:`Harap masukkan angka atau rumus`,formula:`Harap masukkan rumus`,integer:`Harap masukkan bilangan bulat atau rumus`,date:`Harap masukkan tanggal atau rumus`,list:`Harap masukkan opsi`,listInvalid:`Sumber daftar harus berupa daftar yang dipisahkan atau referensi ke satu baris atau kolom`,checkboxEqual:`Masukkan nilai yang berbeda untuk konten sel yang dicentang dan tidak dicentang`,formulaError:`Rentang referensi berisi data yang tidak terlihat, harap sesuaikan rentangnya`,listIntersects:`Rentang yang dipilih tidak boleh berpotongan dengan cakupan aturan`,primitive:`Rumus tidak diizinkan untuk nilai kustom yang dicentang dan tidak dicentang`},any:{title:`Nilai apa saja`,error:`Konten sel ini melanggar aturan validasi`},list:{title:`Dropdown`,name:`Nilai mengandung satu dari rentang`,error:`Input harus berada dalam rentang yang ditentukan`,emptyError:`Harap masukkan nilai`,add:`Tambah`,dropdown:`Pilih`,options:`Opsi`,customOptions:`Kustom`,refOptions:`Dari rentang`,formulaError:`Sumber daftar harus berupa daftar data yang dipisahkan, atau referensi ke satu baris atau kolom`,edit:`Edit`},listMultiple:{title:`Dropdown-Multiple`,dropdown:`Pilih banyak`},decimal:{title:`Angka`},whole:{title:`Bilangan bulat`},checkbox:{title:`Kotak centang`,error:`Konten sel ini melanggar aturan validasinya`,tips:`Gunakan nilai kustom dalam sel`,checked:`Nilai terpilih`,unchecked:`Nilai tidak terpilih`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationItIT=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`tra`,greaterThan:`maggiore di`,greaterThanOrEqual:`maggiore o uguale a`,lessThan:`minore di`,lessThanOrEqual:`minore o uguale a`,equal:`uguale a`,notEqual:`diverso da`,notBetween:`non tra`,legal:`è un tipo valido`},ruleName:{between:`È tra {FORMULA1} e {FORMULA2}`,greaterThan:`È maggiore di {FORMULA1}`,greaterThanOrEqual:`È maggiore o uguale a {FORMULA1}`,lessThan:`È minore di {FORMULA1}`,lessThanOrEqual:`È minore o uguale a {FORMULA1}`,equal:`È uguale a {FORMULA1}`,notEqual:`È diverso da {FORMULA1}`,notBetween:`Non è tra {FORMULA1} e {FORMULA2}`,legal:`È un {TYPE} valido`},errorMsg:{between:`Il valore deve essere tra {FORMULA1} e {FORMULA2}`,greaterThan:`Il valore deve essere maggiore di {FORMULA1}`,greaterThanOrEqual:`Il valore deve essere maggiore o uguale a {FORMULA1}`,lessThan:`Il valore deve essere minore di {FORMULA1}`,lessThanOrEqual:`Il valore deve essere minore o uguale a {FORMULA1}`,equal:`Il valore deve essere uguale a {FORMULA1}`,notEqual:`Il valore deve essere diverso da {FORMULA1}`,notBetween:`Il valore non deve essere tra {FORMULA1} e {FORMULA2}`,legal:`Il valore deve essere un {TYPE} valido`},date:{operators:{between:`tra`,greaterThan:`dopo`,greaterThanOrEqual:`il giorno o dopo`,lessThan:`prima`,lessThanOrEqual:`il giorno o prima`,equal:`uguale`,notEqual:`diverso`,notBetween:`non tra`,legal:`è una data valida`},ruleName:{between:`è tra {FORMULA1} e {FORMULA2}`,greaterThan:`è dopo {FORMULA1}`,greaterThanOrEqual:`è il giorno o dopo {FORMULA1}`,lessThan:`è prima di {FORMULA1}`,lessThanOrEqual:`è il giorno o prima di {FORMULA1}`,equal:`è {FORMULA1}`,notEqual:`non è {FORMULA1}`,notBetween:`non è tra {FORMULA1}`,legal:`è una data valida`},errorMsg:{between:`Il valore deve essere una data valida e tra {FORMULA1} e {FORMULA2}`,greaterThan:`Il valore deve essere una data valida e dopo {FORMULA1}`,greaterThanOrEqual:`Il valore deve essere una data valida e il giorno o dopo {FORMULA1}`,lessThan:`Il valore deve essere una data valida e prima di {FORMULA1}`,lessThanOrEqual:`Il valore deve essere una data valida e il giorno o prima di {FORMULA1}`,equal:`Il valore deve essere una data valida e {FORMULA1}`,notEqual:`Il valore deve essere una data valida e non {FORMULA1}`,notBetween:`Il valore deve essere una data valida e non tra {FORMULA1}`,legal:`Il valore deve essere una data valida`},title:`Data`},textLength:{errorMsg:{between:`La lunghezza del testo deve essere tra {FORMULA1} e {FORMULA2}`,greaterThan:`La lunghezza del testo deve essere maggiore di {FORMULA1}`,greaterThanOrEqual:`La lunghezza del testo deve essere maggiore o uguale a {FORMULA1}`,lessThan:`La lunghezza del testo deve essere minore di {FORMULA1}`,lessThanOrEqual:`La lunghezza del testo deve essere minore o uguale a {FORMULA1}`,equal:`La lunghezza del testo deve essere {FORMULA1}`,notEqual:`La lunghezza del testo deve essere diversa da {FORMULA1}`,notBetween:`La lunghezza del testo non deve essere tra {FORMULA1}`},title:`Lunghezza testo`},custom:{ruleName:`La formula personalizzata è {FORMULA1}`,title:`Formula personalizzata`,validFail:`Inserire una formula valida`,error:`Il contenuto di questa cella viola la regola di convalida`},validFail:{value:`Inserire un valore`,common:`Inserire valore o formula`,number:`Inserire numero o formula`,formula:`Inserire formula`,integer:`Inserire numero intero o formula`,date:`Inserire data o formula`,list:`Inserire opzioni`,listInvalid:`L'origine dell'elenco deve essere un elenco delimitato o un riferimento a una singola riga o colonna`,checkboxEqual:`Inserire valori diversi per i contenuti delle celle selezionate e non selezionate.`,formulaError:`L'intervallo di riferimento contiene dati invisibili, riaggiustare l'intervallo`,listIntersects:`L'intervallo selezionato non può intersecarsi con l'ambito delle regole`,primitive:`Le formule non sono consentite per i valori personalizzati di selezionato e non selezionato.`},any:{title:`Qualsiasi valore`,error:`Il contenuto di questa cella viola la regola di convalida`},list:{title:`Menu a discesa`,name:`Il valore contiene uno dall'intervallo`,error:`L'input deve rientrare nell'intervallo specificato`,emptyError:`Inserire un valore`,add:`Aggiungi`,dropdown:`Seleziona`,options:`Opzioni`,customOptions:`Personalizzato`,refOptions:`Da un intervallo`,formulaError:`L'origine dell'elenco deve essere un elenco delimitato di dati o un riferimento a una singola riga o colonna.`,edit:`Modifica`},listMultiple:{title:`Menu a discesa - Multiplo`,dropdown:`Selezione multipla`},decimal:{title:`Numero`},whole:{title:`Numero intero`},checkbox:{title:`Casella di controllo`,error:`Il contenuto di questa cella viola la regola di convalida`,tips:`Usa valori personalizzati nelle celle`,checked:`Valore selezionato`,unchecked:`Valore non selezionato`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationJaJP=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`次の値の間`,greaterThan:`次の値より大きい`,greaterThanOrEqual:`次の値以上`,lessThan:`次の値より小さい`,lessThanOrEqual:`次の値以下`,equal:`次の値に等しい`,notEqual:`次の値に等しくない`,notBetween:`次の値の間以外`,legal:`有効な形式`},ruleName:{between:`{FORMULA1} と {FORMULA2} の間`,greaterThan:`{FORMULA1} より大きい`,greaterThanOrEqual:`{FORMULA1} 以上`,lessThan:`{FORMULA1} より小さい`,lessThanOrEqual:`{FORMULA1} 以下`,equal:`{FORMULA1} に等しい`,notEqual:`{FORMULA1} に等しくない`,notBetween:`{FORMULA1} と {FORMULA2} の間以外`,legal:`有効な {TYPE} 形式`},errorMsg:{between:`値は {FORMULA1} と {FORMULA2} の間である必要があります`,greaterThan:`値は {FORMULA1} より大きい必要があります`,greaterThanOrEqual:`値は {FORMULA1} 以上である必要があります`,lessThan:`値は {FORMULA1} より小さい必要があります`,lessThanOrEqual:`値は {FORMULA1} 以下である必要があります`,equal:`値は {FORMULA1} に等しい必要があります`,notEqual:`値は {FORMULA1} に等しくない必要があります`,notBetween:`値は {FORMULA1} と {FORMULA2} の間以外である必要があります`,legal:`値は有効な {TYPE} 形式である必要があります`},date:{operators:{between:`次の値の間`,greaterThan:`次の値より大きい`,greaterThanOrEqual:`次の値以上`,lessThan:`次の値より小さい`,lessThanOrEqual:`次の値以下`,equal:`次の値に等しい`,notEqual:`次の値に等しくない`,notBetween:`次の値の間以外`,legal:`有効な日付`},ruleName:{between:`{FORMULA1} と {FORMULA2} の間`,greaterThan:`{FORMULA1} より後`,greaterThanOrEqual:`{FORMULA1} 以降`,lessThan:`{FORMULA1} より前`,lessThanOrEqual:`{FORMULA1} 以前`,equal:`{FORMULA1} に等しい`,notEqual:`{FORMULA1} に等しくない`,notBetween:`{FORMULA1} と {FORMULA2} の間以外`,legal:`有効な日付`},errorMsg:{between:`値は有効な日付で、{FORMULA1} と {FORMULA2} の間である必要があります`,greaterThan:`値は有効な日付で、{FORMULA1} より後である必要があります`,greaterThanOrEqual:`値は有効な日付で、{FORMULA1} 以降である必要があります`,lessThan:`値は有効な日付で、{FORMULA1} より前である必要があります`,lessThanOrEqual:`値は有効な日付で、{FORMULA1} 以前である必要があります`,equal:`値は有効な日付で、{FORMULA1} に等しい必要があります`,notEqual:`値は有効な日付で、{FORMULA1} に等しくない必要があります`,notBetween:`値は有効な日付で、{FORMULA1} と {FORMULA2} の間以外である必要があります`,legal:`値は有効な日付である必要があります`},title:`日付`},textLength:{errorMsg:{between:`文字列の長さは {FORMULA1} と {FORMULA2} の間である必要があります`,greaterThan:`文字列の長さは {FORMULA1} より長い必要があります`,greaterThanOrEqual:`文字列の長さは {FORMULA1} 以上である必要があります`,lessThan:`文字列の長さは {FORMULA1} より短い必要があります`,lessThanOrEqual:`文字列の長さは {FORMULA1} 以下である必要があります`,equal:`文字列の長さは {FORMULA1} に等しい必要があります`,notEqual:`文字列の長さは {FORMULA1} に等しくない必要があります`,notBetween:`文字列の長さは {FORMULA1} と {FORMULA2} の間以外である必要があります`},title:`文字列の長さ`},custom:{ruleName:`ユーザー設定数式: {FORMULA1}`,title:`ユーザー設定`,validFail:`有効な数式を入力してください`,error:`このセルの内容は入力規則に違反しています`},validFail:{value:`値を入力してください`,common:`値または数式を入力してください`,number:`数値または数式を入力してください`,formula:`数式を入力してください`,integer:`整数または数式を入力してください`,date:`日付または数式を入力してください`,list:`リストのオプションを入力してください`,listInvalid:`リスト元の値は、区切りリスト、または単一の行または列の参照である必要があります`,checkboxEqual:`チェックされた値とチェックされていない値には異なる値を入力してください`,formulaError:`参照範囲に見えないデータが含まれています。範囲を再設定してください`,listIntersects:`選択した範囲はルール範囲と重なることはできません`,primitive:`カスタムの選択/未選択値には数式を使用できません`},any:{title:`すべての値`,error:`このセルの内容は入力規則に違反しています`},list:{title:`リスト`,name:`リスト範囲内の値`,error:`入力値は指定された範囲内にある必要があります`,emptyError:`値を入力してください`,add:`追加`,dropdown:`ドロップダウンリストから選択する`,options:`オプション`,customOptions:`カスタム`,refOptions:`範囲を参照`,formulaError:`リスト元の値は、区切りリスト、または単一の行または列の参照である必要があります`,edit:`編集`},listMultiple:{title:`複数選択リスト`,dropdown:`複数項目を選択`},decimal:{title:`小数点数`},whole:{title:`整数`},checkbox:{title:`チェックボックス`,error:`このセルの内容は入力規則に違反しています`,tips:`セル内のカスタム値を使用してください`,checked:`チェックされた値`,unchecked:`チェックされていない値`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationKoKR=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`사이`,greaterThan:`초과`,greaterThanOrEqual:`이상`,lessThan:`미만`,lessThanOrEqual:`이하`,equal:`같음`,notEqual:`같지 않음`,notBetween:`사이가 아님`,legal:`유효한 형식`},ruleName:{between:`{FORMULA1}와 {FORMULA2} 사이`,greaterThan:`{FORMULA1} 초과`,greaterThanOrEqual:`{FORMULA1} 이상`,lessThan:`{FORMULA1} 미만`,lessThanOrEqual:`{FORMULA1} 이하`,equal:`{FORMULA1}와 같음`,notEqual:`{FORMULA1}와 다름`,notBetween:`{FORMULA1}와 {FORMULA2} 사이 아님`,legal:`유효한 {TYPE} 형식`},errorMsg:{between:`값은 {FORMULA1}와 {FORMULA2} 사이여야 합니다`,greaterThan:`값은 {FORMULA1} 초과여야 합니다`,greaterThanOrEqual:`값은 {FORMULA1} 이상이어야 합니다`,lessThan:`값은 {FORMULA1} 미만이어야 합니다`,lessThanOrEqual:`값은 {FORMULA1} 이하이어야 합니다`,equal:`값은 {FORMULA1}와 같아야 합니다`,notEqual:`값은 {FORMULA1}와 달라야 합니다`,notBetween:`값은 {FORMULA1}와 {FORMULA2} 사이가 아니어야 합니다`,legal:`값은 유효한 {TYPE} 형식이어야 합니다`},date:{operators:{between:`사이`,greaterThan:`이후`,greaterThanOrEqual:`이거나 이후`,lessThan:`이전`,lessThanOrEqual:`이거나 이전`,equal:`같음`,notEqual:`다름`,notBetween:`사이가 아님`,legal:`유효한 날짜`},ruleName:{between:`{FORMULA1}와 {FORMULA2} 사이`,greaterThan:`{FORMULA1} 이후`,greaterThanOrEqual:`{FORMULA1} 이거나 이후`,lessThan:`{FORMULA1} 이전`,lessThanOrEqual:`{FORMULA1} 이거나 이전`,equal:`{FORMULA1}와 같음`,notEqual:`{FORMULA1}와 다름`,notBetween:`{FORMULA1}와 {FORMULA2} 사이 아님`,legal:`유효한 날짜`},errorMsg:{between:`값은 유효한 날짜이며 {FORMULA1}와 {FORMULA2} 사이여야 합니다`,greaterThan:`값은 유효한 날짜이며 {FORMULA1} 이후여야 합니다`,greaterThanOrEqual:`값은 유효한 날짜이며 {FORMULA1} 이거나 이후여야 합니다`,lessThan:`값은 유효한 날짜이며 {FORMULA1} 이전이어야 합니다`,lessThanOrEqual:`값은 유효한 날짜이며 {FORMULA1} 이거나 이전이어야 합니다`,equal:`값은 유효한 날짜이며 {FORMULA1}와 같아야 합니다`,notEqual:`값은 유효한 날짜이며 {FORMULA1}와 달라야 합니다`,notBetween:`값은 유효한 날짜이며 {FORMULA1}와 {FORMULA2} 사이가 아니어야 합니다`,legal:`값은 유효한 날짜여야 합니다`},title:`날짜`},textLength:{errorMsg:{between:`텍스트 길이는 {FORMULA1}와 {FORMULA2} 사이여야 합니다`,greaterThan:`텍스트 길이는 {FORMULA1} 초과여야 합니다`,greaterThanOrEqual:`텍스트 길이는 {FORMULA1} 이상이어야 합니다`,lessThan:`텍스트 길이는 {FORMULA1} 미만이어야 합니다`,lessThanOrEqual:`텍스트 길이는 {FORMULA1} 이하이어야 합니다`,equal:`텍스트 길이는 {FORMULA1}와 같아야 합니다`,notEqual:`텍스트 길이는 {FORMULA1}와 달라야 합니다`,notBetween:`텍스트 길이는 {FORMULA1}와 {FORMULA2} 사이가 아니어야 합니다`},title:`텍스트 길이`},custom:{ruleName:`사용자 지정 수식: {FORMULA1}`,title:`사용자 지정 수식`,validFail:`유효한 수식을 입력하세요`,error:`이 셀의 내용이 유효성 검사 규칙을 위반했습니다`},validFail:{value:`값을 입력하세요`,common:`값 또는 수식을 입력하세요`,number:`숫자 또는 수식을 입력하세요`,formula:`수식을 입력하세요`,integer:`정수 또는 수식을 입력하세요`,date:`날짜 또는 수식을 입력하세요`,list:`목록 옵션을 입력하세요`,listInvalid:`목록 소스는 구분된 목록이거나 단일 행 또는 열 참조여야 합니다`,checkboxEqual:`선택된 값과 선택되지 않은 값에 서로 다른 값을 입력하세요`,formulaError:`참조 범위에 보이지 않는 데이터가 포함되어 있습니다. 범위를 다시 설정하세요`,listIntersects:`선택한 범위가 규칙 범위와 겹칠 수 없습니다`,primitive:`사용자 지정 선택/미선택 값에는 수식을 사용할 수 없습니다`},any:{title:`모든 값`,error:`이 셀의 내용이 유효성 검사 규칙을 위반했습니다`},list:{title:`목록`,name:`목록 범위 내 값`,error:`입력 값이 지정된 범위 내에 있어야 합니다`,emptyError:`값을 입력하세요`,add:`추가`,dropdown:`목록 표시`,options:`옵션`,customOptions:`사용자 지정`,refOptions:`범위 참조`,formulaError:`목록 소스는 구분된 목록이거나 단일 행 또는 열 참조여야 합니다`,edit:`수정`},listMultiple:{title:`복수 선택 목록`,dropdown:`여러 항목 선택`},decimal:{title:`숫자`},whole:{title:`정수`},checkbox:{title:`체크박스`,error:`이 셀의 내용이 유효성 검사 규칙을 위반했습니다`,tips:`셀 내 사용자 지정 값을 사용하세요`,checked:`선택된 값`,unchecked:`선택되지 않은 값`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationPlPL=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`między`,greaterThan:`większe niż`,greaterThanOrEqual:`większe lub równe`,lessThan:`mniejsze niż`,lessThanOrEqual:`mniejsze lub równe`,equal:`równe`,notEqual:`różne od`,notBetween:`nie między`,legal:`jest prawidłowym typem`},ruleName:{between:`Jest między {FORMULA1} a {FORMULA2}`,greaterThan:`Jest większe niż {FORMULA1}`,greaterThanOrEqual:`Jest większe lub równe {FORMULA1}`,lessThan:`Jest mniejsze niż {FORMULA1}`,lessThanOrEqual:`Jest mniejsze lub równe {FORMULA1}`,equal:`Jest równe {FORMULA1}`,notEqual:`Jest różne od {FORMULA1}`,notBetween:`Nie jest między {FORMULA1} a {FORMULA2}`,legal:`Jest prawidłowym {TYPE}`},errorMsg:{between:`Wartość musi być między {FORMULA1} a {FORMULA2}`,greaterThan:`Wartość musi być większa niż {FORMULA1}`,greaterThanOrEqual:`Wartość musi być większa lub równa {FORMULA1}`,lessThan:`Wartość musi być mniejsza niż {FORMULA1}`,lessThanOrEqual:`Wartość musi być mniejsza lub równa {FORMULA1}`,equal:`Wartość musi być równa {FORMULA1}`,notEqual:`Wartość musi być różna od {FORMULA1}`,notBetween:`Wartość nie może być między {FORMULA1} a {FORMULA2}`,legal:`Wartość musi być prawidłowym {TYPE}`},date:{operators:{between:`między`,greaterThan:`po`,greaterThanOrEqual:`w dniu lub po`,lessThan:`przed`,lessThanOrEqual:`w dniu lub przed`,equal:`równe`,notEqual:`różne od`,notBetween:`nie między`,legal:`jest prawidłową datą`},ruleName:{between:`jest między {FORMULA1} a {FORMULA2}`,greaterThan:`jest po {FORMULA1}`,greaterThanOrEqual:`jest w dniu {FORMULA1} lub po`,lessThan:`jest przed {FORMULA1}`,lessThanOrEqual:`jest w dniu {FORMULA1} lub przed`,equal:`jest {FORMULA1}`,notEqual:`nie jest {FORMULA1}`,notBetween:`nie jest między {FORMULA1}`,legal:`jest prawidłową datą`},errorMsg:{between:`Wartość musi być prawidłową datą i między {FORMULA1} a {FORMULA2}`,greaterThan:`Wartość musi być prawidłową datą i po {FORMULA1}`,greaterThanOrEqual:`Wartość musi być prawidłową datą i w dniu {FORMULA1} lub po`,lessThan:`Wartość musi być prawidłową datą i przed {FORMULA1}`,lessThanOrEqual:`Wartość musi być prawidłową datą i w dniu {FORMULA1} lub przed`,equal:`Wartość musi być prawidłową datą i {FORMULA1}`,notEqual:`Wartość musi być prawidłową datą i nie być {FORMULA1}`,notBetween:`Wartość musi być prawidłową datą i nie być między {FORMULA1}`,legal:`Wartość musi być prawidłową datą`},title:`Data`},textLength:{errorMsg:{between:`Długość tekstu musi być między {FORMULA1} a {FORMULA2}`,greaterThan:`Długość tekstu musi być większa niż {FORMULA1}`,greaterThanOrEqual:`Długość tekstu musi być większa lub równa {FORMULA1}`,lessThan:`Długość tekstu musi być mniejsza niż {FORMULA1}`,lessThanOrEqual:`Długość tekstu musi być mniejsza lub równa {FORMULA1}`,equal:`Długość tekstu musi być równa {FORMULA1}`,notEqual:`Długość tekstu musi być różna od {FORMULA1}`,notBetween:`Długość tekstu nie może być między {FORMULA1}`},title:`Długość tekstu`},custom:{ruleName:`Formuła niestandardowa to {FORMULA1}`,title:`Formuła niestandardowa`,validFail:`Wprowadź prawidłową formułę`,error:`Zawartość tej komórki narusza regułę sprawdzania poprawności`},validFail:{value:`Wprowadź wartość`,common:`Wprowadź wartość lub formułę`,number:`Wprowadź liczbę lub formułę`,formula:`Wprowadź formułę`,integer:`Wprowadź liczbę całkowitą lub formułę`,date:`Wprowadź datę lub formułę`,list:`Wprowadź opcje`,listInvalid:`Źródło listy musi być rozdzieloną listą lub odwołaniem do pojedynczego wiersza lub kolumny`,checkboxEqual:`Wprowadź różne wartości dla zaznaczonej i niezaznaczonej zawartości komórki.`,formulaError:`Zakres odwołania zawiera niewidoczne dane, dostosuj zakres`,listIntersects:`Wybrany zakres nie może przecinać się z zakresem reguł`,primitive:`Formuły nie są dozwolone dla niestandardowych wartości zaznaczonych i niezaznaczonych.`},any:{title:`Dowolna wartość`,error:`Zawartość tej komórki narusza regułę sprawdzania poprawności`},list:{title:`Lista rozwijana`,name:`Wartość zawiera element z zakresu`,error:`Wartość musi należeć do określonego zakresu`,emptyError:`Wprowadź wartość`,add:`Dodaj`,dropdown:`Wybierz`,options:`Opcje`,customOptions:`Niestandardowe`,refOptions:`Z zakresu`,formulaError:`Źródło listy musi być rozdzieloną listą danych lub odwołaniem do pojedynczego wiersza lub kolumny.`,edit:`Edytuj`},listMultiple:{title:`Lista rozwijana — wielokrotny wybór`,dropdown:`Wielokrotny wybór`},decimal:{title:`Liczba`},whole:{title:`Liczba całkowita`},checkbox:{title:`Pole wyboru`,error:`Zawartość tej komórki narusza regułę sprawdzania poprawności`,tips:`Użyj niestandardowych wartości w komórkach`,checked:`Wartość zaznaczona`,unchecked:`Wartość niezaznaczona`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationPtBR=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`entre`,greaterThan:`maior que`,greaterThanOrEqual:`maior ou igual`,lessThan:`menor que`,lessThanOrEqual:`menor ou igual`,equal:`igual`,notEqual:`diferente`,notBetween:`não está entre`,legal:`é tipo válido`},ruleName:{between:`Está entre {FORMULA1} e {FORMULA2}`,greaterThan:`É maior que {FORMULA1}`,greaterThanOrEqual:`É maior ou igual a {FORMULA1}`,lessThan:`É menor que {FORMULA1}`,lessThanOrEqual:`É menor ou igual a {FORMULA1}`,equal:`É igual a {FORMULA1}`,notEqual:`É diferente de {FORMULA1}`,notBetween:`Não está entre {FORMULA1} e {FORMULA2}`,legal:`É um {TYPE} válido`},errorMsg:{between:`O valor deve estar entre {FORMULA1} e {FORMULA2}`,greaterThan:`O valor deve ser maior que {FORMULA1}`,greaterThanOrEqual:`O valor deve ser maior ou igual a {FORMULA1}`,lessThan:`O valor deve ser menor que {FORMULA1}`,lessThanOrEqual:`O valor deve ser menor ou igual a {FORMULA1}`,equal:`O valor deve ser igual a {FORMULA1}`,notEqual:`O valor deve ser diferente de {FORMULA1}`,notBetween:`O valor não deve estar entre {FORMULA1} e {FORMULA2}`,legal:`O valor deve ser um {TYPE} válido`},date:{operators:{between:`entre`,greaterThan:`depois de`,greaterThanOrEqual:`em ou depois de`,lessThan:`antes de`,lessThanOrEqual:`em ou antes de`,equal:`igual`,notEqual:`diferente`,notBetween:`não está entre`,legal:`é uma data válida`},ruleName:{between:`está entre {FORMULA1} e {FORMULA2}`,greaterThan:`é depois de {FORMULA1}`,greaterThanOrEqual:`é em ou depois de {FORMULA1}`,lessThan:`é antes de {FORMULA1}`,lessThanOrEqual:`é em ou antes de {FORMULA1}`,equal:`é {FORMULA1}`,notEqual:`não é {FORMULA1}`,notBetween:`não está entre {FORMULA1}`,legal:`é uma data válida`},errorMsg:{between:`O valor deve ser uma data válida e estar entre {FORMULA1} e {FORMULA2}`,greaterThan:`O valor deve ser uma data válida e ser depois de {FORMULA1}`,greaterThanOrEqual:`O valor deve ser uma data válida e ser em ou depois de {FORMULA1}`,lessThan:`O valor deve ser uma data válida e ser antes de {FORMULA1}`,lessThanOrEqual:`O valor deve ser uma data válida e ser em ou antes de {FORMULA1}`,equal:`O valor deve ser uma data válida e {FORMULA1}`,notEqual:`O valor deve ser uma data válida e não ser {FORMULA1}`,notBetween:`O valor deve ser uma data válida e não estar entre {FORMULA1}`,legal:`O valor deve ser uma data válida`},title:`Data`},textLength:{errorMsg:{between:`O comprimento do texto deve estar entre {FORMULA1} e {FORMULA2}`,greaterThan:`O comprimento do texto deve ser maior que {FORMULA1}`,greaterThanOrEqual:`O comprimento do texto deve ser maior ou igual a {FORMULA1}`,lessThan:`O comprimento do texto deve ser menor que {FORMULA1}`,lessThanOrEqual:`O comprimento do texto deve ser menor ou igual a {FORMULA1}`,equal:`O comprimento do texto deve ser {FORMULA1}`,notEqual:`O comprimento do texto não deve ser {FORMULA1}`,notBetween:`O comprimento do texto não deve estar entre {FORMULA1}`},title:`Comprimento do texto`},custom:{ruleName:`A fórmula personalizada é {FORMULA1}`,title:`Fórmula personalizada`,validFail:`Por favor, insira uma fórmula válida`,error:`O conteúdo desta célula viola sua regra de validação`},validFail:{value:`Por favor, insira um valor`,common:`Por favor, insira um valor ou fórmula`,number:`Por favor, insira um número ou fórmula`,formula:`Por favor, insira uma fórmula`,integer:`Por favor, insira um inteiro ou fórmula`,date:`Por favor, insira uma data ou fórmula`,list:`Por favor, insira opções`,listInvalid:`A fonte da lista deve ser uma lista delimitada ou uma referência a uma única linha ou coluna`,checkboxEqual:`Insira valores diferentes para o conteúdo das células marcadas e desmarcadas.`,formulaError:`O intervalo de referência contém dados invisíveis, por favor, reajuste o intervalo`,listIntersects:`O intervalo selecionado não pode intersectar com o escopo das regras`,primitive:`Fórmulas não são permitidas para valores personalizados de marcado e desmarcado.`},any:{title:`Qualquer valor`,error:`O conteúdo desta célula viola a regra de validação`},list:{title:`Lista suspensa`,name:`O valor contém um do intervalo`,error:`A entrada deve estar dentro do intervalo especificado`,emptyError:`Por favor, insira um valor`,add:`Adicionar`,dropdown:`Selecionar`,options:`Opções`,customOptions:`Personalizado`,refOptions:`De um intervalo`,formulaError:`A fonte da lista deve ser uma lista delimitada de dados, ou uma referência a uma única linha ou coluna.`,edit:`Editar`},listMultiple:{title:`Lista suspensa - Múltipla`,dropdown:`Seleção múltipla`},decimal:{title:`Número`},whole:{title:`Número inteiro`},checkbox:{title:`Caixa de seleção`,error:`O conteúdo desta célula viola sua regra de validação`,tips:`Use valores personalizados dentro das células`,checked:`Valor selecionado`,unchecked:`Valor não selecionado`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationRuRU=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`между`,greaterThan:`больше чем`,greaterThanOrEqual:`больше или равно`,lessThan:`меньше чем`,lessThanOrEqual:`меньше или равно`,equal:`равно`,notEqual:`не равно`,notBetween:`не между`,legal:`является допустимым типом`},ruleName:{between:`между {FORMULA1} и {FORMULA2}`,greaterThan:`больше чем {FORMULA1}`,greaterThanOrEqual:`больше или равно {FORMULA1}`,lessThan:`меньше чем {FORMULA1}`,lessThanOrEqual:`меньше или равно {FORMULA1}`,equal:`равно {FORMULA1}`,notEqual:`не равно {FORMULA1}`,notBetween:`не между {FORMULA1} и {FORMULA2}`,legal:`является допустимым {TYPE}`},errorMsg:{between:`Значение должно быть между {FORMULA1} и {FORMULA2}`,greaterThan:`Значение должно быть больше {FORMULA1}`,greaterThanOrEqual:`Значение должно быть больше или равно {FORMULA1}`,lessThan:`Значение должно быть меньше {FORMULA1}`,lessThanOrEqual:`Значение должно быть меньше или равно {FORMULA1}`,equal:`Значение должно быть равно {FORMULA1}`,notEqual:`Значение должно быть не равно {FORMULA1}`,notBetween:`Значение должно быть не между {FORMULA1} и {FORMULA2}`,legal:`Значение должно быть допустимым {TYPE}`},date:{operators:{between:`между`,greaterThan:`после`,greaterThanOrEqual:`в или после`,lessThan:`до`,lessThanOrEqual:`в или до`,equal:`равно`,notEqual:`не равно`,notBetween:`не между`,legal:`является допустимой датой`},ruleName:{between:`между {FORMULA1} и {FORMULA2}`,greaterThan:`после {FORMULA1}`,greaterThanOrEqual:`в или после {FORMULA1}`,lessThan:`до {FORMULA1}`,lessThanOrEqual:`в или до {FORMULA1}`,equal:`равно {FORMULA1}`,notEqual:`не равно {FORMULA1}`,notBetween:`не между {FORMULA1} и {FORMULA2}`,legal:`является допустимой датой`},errorMsg:{between:`Значение должно быть между {FORMULA1} и {FORMULA2}`,greaterThan:`Значение должно быть после {FORMULA1}`,greaterThanOrEqual:`Значение должно быть в или после {FORMULA1}`,lessThan:`Значение должно быть до {FORMULA1}`,lessThanOrEqual:`Значение должно быть в или до {FORMULA1}`,equal:`Значение должно быть {FORMULA1}`,notEqual:`Значение должно быть не {FORMULA1}`,notBetween:`Значение должно быть не между {FORMULA1} и {FORMULA2}`,legal:`Значение должно быть допустимой датой`},title:`Дата`},textLength:{errorMsg:{between:`Длина текста должна быть между {FORMULA1} и {FORMULA2}`,greaterThan:`Длина текста должна быть больше {FORMULA1}`,greaterThanOrEqual:`Длина текста должна быть больше или равна {FORMULA1}`,lessThan:`Длина текста должна быть меньше {FORMULA1}`,lessThanOrEqual:`Длина текста должна быть меньше или равна {FORMULA1}`,equal:`Длина текста должна быть равна {FORMULA1}`,notEqual:`Длина текста должна быть не равна {FORMULA1}`,notBetween:`Длина текста должна быть не между {FORMULA1} и {FORMULA2}`},title:`Длина текста`},custom:{ruleName:`Пользовательская формула {FORMULA1}`,title:`Пользовательская формула`,validFail:`Пожалуйста, введите допустимую формулу`,error:`Содержимое этой ячейки нарушает правило проверки`},validFail:{value:`Пожалуйста, введите значение`,common:`Пожалуйста, введите значение или формулу`,number:`Пожалуйста, введите число или формулу`,formula:`Пожалуйста, введите формулу`,integer:`Пожалуйста, введите целое число или формулу`,date:`Пожалуйста, введите дату или формулу`,list:`Пожалуйста, введите параметры`,listInvalid:`Источник списка должен быть разделенным списком или ссылкой на одну строку или столбец`,checkboxEqual:`Для выбранных и не выбранных ячеек введите разные значения`,formulaError:`Диапазон ссылок содержит невидимые данные, пожалуйста, пересмотрите диапазон`,listIntersects:`Выбранный диапазон не может пересекаться с диапазоном правила.`,primitive:`Формулы не разрешены для пользовательских отмеченных и неотмеченных значений.`},any:{title:`Любое значение`,error:`Содержимое этой ячейки нарушает правило проверки`},list:{title:`Выпадающий список`,name:`Значение содержит одно из диапазона`,error:`Ввод должен соответствовать указанному диапазону`,emptyError:`Пожалуйста, введите значение`,add:`Добавить`,dropdown:`Выбрать`,options:`Параметры`,customOptions:`Пользовательские`,refOptions:`Из диапазона`,formulaError:`Источник списка должен быть разделенным списком данных или ссылкой на одну строку или столбец.`,edit:`Редактировать`},listMultiple:{title:`Выпадающий список - Множественный`,dropdown:`Множественный выбор`},decimal:{title:`Число`},whole:{title:`Целое число`},checkbox:{title:`Флажок`,error:`Содержимое этой ячейки нарушает правило проверки`,tips:`Используйте пользовательские значения в ячейках`,checked:`Выбранное значение`,unchecked:`Не выбранное значение`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationSkSK=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`medzi`,greaterThan:`väčšie ako`,greaterThanOrEqual:`väčšie alebo rovné`,lessThan:`menšie ako`,lessThanOrEqual:`menšie alebo rovné`,equal:`rovné`,notEqual:`nerovné`,notBetween:`nie medzi`,legal:`je platný typ`},ruleName:{between:`Je medzi {FORMULA1} a {FORMULA2}`,greaterThan:`Je väčšie ako {FORMULA1}`,greaterThanOrEqual:`Je väčšie alebo rovné {FORMULA1}`,lessThan:`Je menšie ako {FORMULA1}`,lessThanOrEqual:`Je menšie alebo rovné {FORMULA1}`,equal:`Je rovné {FORMULA1}`,notEqual:`Nie je rovné {FORMULA1}`,notBetween:`Nie je medzi {FORMULA1} a {FORMULA2}`,legal:`Je platný {TYPE}`},errorMsg:{between:`Hodnota musí byť medzi {FORMULA1} a {FORMULA2}`,greaterThan:`Hodnota musí byť väčšia ako {FORMULA1}`,greaterThanOrEqual:`Hodnota musí byť väčšia alebo rovná {FORMULA1}`,lessThan:`Hodnota musí byť menšia ako {FORMULA1}`,lessThanOrEqual:`Hodnota musí byť menšia alebo rovná {FORMULA1}`,equal:`Hodnota musí byť rovná {FORMULA1}`,notEqual:`Hodnota nesmie byť rovná {FORMULA1}`,notBetween:`Hodnota nesmie byť medzi {FORMULA1} a {FORMULA2}`,legal:`Hodnota musí byť platný {TYPE}`},date:{operators:{between:`medzi`,greaterThan:`po`,greaterThanOrEqual:`v alebo po`,lessThan:`pred`,lessThanOrEqual:`v alebo pred`,equal:`rovné`,notEqual:`nerovné`,notBetween:`nie medzi`,legal:`je platný dátum`},ruleName:{between:`je medzi {FORMULA1} a {FORMULA2}`,greaterThan:`je po {FORMULA1}`,greaterThanOrEqual:`je v alebo po {FORMULA1}`,lessThan:`je pred {FORMULA1}`,lessThanOrEqual:`je v alebo pred {FORMULA1}`,equal:`je {FORMULA1}`,notEqual:`nie je {FORMULA1}`,notBetween:`nie je medzi {FORMULA1}`,legal:`je platný dátum`},errorMsg:{between:`Hodnota musí byť platný dátum a medzi {FORMULA1} a {FORMULA2}`,greaterThan:`Hodnota musí byť platný dátum a po {FORMULA1}`,greaterThanOrEqual:`Hodnota musí byť platný dátum a v alebo po {FORMULA1}`,lessThan:`Hodnota musí byť platný dátum a pred {FORMULA1}`,lessThanOrEqual:`Hodnota musí byť platný dátum a v alebo pred {FORMULA1}`,equal:`Hodnota musí byť platný dátum a {FORMULA1}`,notEqual:`Hodnota musí byť platný dátum a nie {FORMULA1}`,notBetween:`Hodnota musí byť platný dátum a nie medzi {FORMULA1}`,legal:`Hodnota musí byť platný dátum`},title:`Dátum`},textLength:{errorMsg:{between:`Dĺžka textu musí byť medzi {FORMULA1} a {FORMULA2}`,greaterThan:`Dĺžka textu musí byť po {FORMULA1}`,greaterThanOrEqual:`Dĺžka textu musí byť v alebo po {FORMULA1}`,lessThan:`Dĺžka textu musí byť pred {FORMULA1}`,lessThanOrEqual:`Dĺžka textu musí byť v alebo pred {FORMULA1}`,equal:`Dĺžka textu musí byť {FORMULA1}`,notEqual:`Dĺžka textu nesmie byť {FORMULA1}`,notBetween:`Dĺžka textu nesmie byť medzi {FORMULA1}`},title:`Dĺžka textu`},custom:{ruleName:`Vlastný vzorec je {FORMULA1}`,title:`Vlastný vzorec`,validFail:`Zadajte platný vzorec`,error:`Obsah tejto bunky porušuje pravidlo overenia`},validFail:{value:`Zadajte hodnotu`,common:`Zadajte hodnotu alebo vzorec`,number:`Zadajte číslo alebo vzorec`,formula:`Zadajte vzorec`,integer:`Zadajte celé číslo alebo vzorec`,date:`Zadajte dátum alebo vzorec`,list:`Zadajte možnosti`,listInvalid:`Zdroj zoznamu musí byť zoznam oddelený oddeľovačmi alebo odkaz na jeden riadok alebo stĺpec`,checkboxEqual:`Zadajte odlišné hodnoty pre označený a neoznačený obsah bunky.`,formulaError:`Referenčný rozsah obsahuje neviditeľné údaje, upravte rozsah`,listIntersects:`Vybraný rozsah sa nemôže prekrývať s rozsahom pravidiel`,primitive:`Vzorce nie sú povolené pre vlastné hodnoty označené/neoznačené.`},any:{title:`Ľubovoľná hodnota`,error:`Obsah tejto bunky porušuje pravidlo overenia`},list:{title:`Rozbaľovací zoznam`,name:`Hodnota obsahuje jednu z rozsahu`,error:`Vstup musí spadať do zadaného rozsahu`,emptyError:`Zadajte hodnotu`,add:`Pridať`,dropdown:`Vybrať`,options:`Možnosti`,customOptions:`Vlastné`,refOptions:`Z rozsahu`,formulaError:`Zdroj zoznamu musí byť zoznam oddelený oddeľovačmi alebo odkaz na jeden riadok alebo stĺpec.`,edit:`Upraviť`},listMultiple:{title:`Rozbaľovací zoznam – viacnásobný`,dropdown:`Viacnásobný výber`},decimal:{title:`Číslo`},whole:{title:`Celé číslo`},checkbox:{title:`Začiarkavacie políčko`,error:`Obsah tejto bunky porušuje pravidlo overenia`,tips:`Použite vlastné hodnoty v bunkách`,checked:`Vybraná hodnota`,unchecked:`Nevybraná hodnota`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationViVN=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`Giữa`,greaterThan:`Lớn hơn`,greaterThanOrEqual:`Lớn hơn hoặc bằng`,lessThan:`Nhỏ hơn`,lessThanOrEqual:`Nhỏ hơn hoặc bằng`,equal:`Bằng`,notEqual:`Không bằng`,notBetween:`Không nằm giữa`,legal:`là kiểu hợp lệ`},ruleName:{between:`Giữa {FORMULA1} và {FORMULA2}`,greaterThan:`Lớn hơn {FORMULA1}`,greaterThanOrEqual:`Lớn hơn hoặc bằng {FORMULA1}`,lessThan:`Nhỏ hơn {FORMULA1}`,lessThanOrEqual:`Nhỏ hơn hoặc bằng {FORMULA1}`,equal:`Bằng {FORMULA1}`,notEqual:`Không bằng {FORMULA1}`,notBetween:`Không nằm giữa {FORMULA1} và {FORMULA2}`,legal:`là một {TYPE} hợp lệ`},errorMsg:{between:`Giá trị phải nằm giữa {FORMULA1} và {FORMULA2}`,greaterThan:`Giá trị phải lớn hơn {FORMULA1}`,greaterThanOrEqual:`Giá trị phải lớn hơn hoặc bằng {FORMULA1}`,lessThan:`Giá trị phải nhỏ hơn {FORMULA1}`,lessThanOrEqual:`Giá trị phải nhỏ hơn hoặc bằng {FORMULA1}`,equal:`Giá trị phải bằng {FORMULA1}`,notEqual:`Giá trị phải không bằng {FORMULA1}`,notBetween:`Giá trị phải không nằm giữa {FORMULA1} và {FORMULA2}`,legal:`Giá trị phải là một {TYPE} hợp lệ`},date:{operators:{between:`Giữa`,greaterThan:`Sau`,greaterThanOrEqual:`Sau hoặc bằng`,lessThan:`Trước`,lessThanOrEqual:`Trước hoặc bằng`,equal:`Bằng`,notEqual:`Không bằng`,notBetween:`Không nằm giữa`,legal:`là ngày hợp lệ`},ruleName:{between:`Giữa {FORMULA1} và {FORMULA2}`,greaterThan:`Sau {FORMULA1}`,greaterThanOrEqual:`Sau hoặc bằng {FORMULA1}`,lessThan:`Trước {FORMULA1}`,lessThanOrEqual:`Trước hoặc bằng {FORMULA1}`,equal:`Bằng {FORMULA1}`,notEqual:`Không bằng {FORMULA1}`,notBetween:`Không nằm giữa {FORMULA1} và {FORMULA2}`,legal:`là một ngày hợp lệ`},errorMsg:{between:`Ngày phải nằm giữa {FORMULA1} và {FORMULA2}`,greaterThan:`Ngày phải sau {FORMULA1}`,greaterThanOrEqual:`Ngày phải sau hoặc bằng {FORMULA1}`,lessThan:`Ngày phải trước {FORMULA1}`,lessThanOrEqual:`Ngày phải trước hoặc bằng {FORMULA1}`,equal:`Ngày phải bằng {FORMULA1}`,notEqual:`Ngày phải không bằng {FORMULA1}`,notBetween:`Ngày phải không nằm giữa {FORMULA1} và {FORMULA2}`,legal:`Giá trị phải là một ngày hợp lệ`},title:`Ngày`},textLength:{errorMsg:{between:`Độ dài văn bản phải nằm giữa {FORMULA1} và {FORMULA2}`,greaterThan:`Độ dài văn bản phải lớn hơn {FORMULA1}`,greaterThanOrEqual:`Độ dài văn bản phải lớn hơn hoặc bằng {FORMULA1}`,lessThan:`Độ dài văn bản phải nhỏ hơn {FORMULA1}`,lessThanOrEqual:`Độ dài văn bản phải nhỏ hơn hoặc bằng {FORMULA1}`,equal:`Độ dài văn bản phải bằng {FORMULA1}`,notEqual:`Độ dài văn bản phải không bằng {FORMULA1}`,notBetween:`Độ dài văn bản phải không nằm giữa {FORMULA1} và {FORMULA2}`},title:`Độ dài văn bản`},custom:{ruleName:`Công thức tùy chỉnh {FORMULA1}`,title:`Công thức tùy chỉnh`,validFail:`Vui lòng nhập một công thức hợp lệ`,error:`Nội dung của ô này vi phạm quy tắc xác thực`},validFail:{value:`Vui lòng nhập một giá trị hợp lệ`,common:`Vui lòng nhập giá trị hoặc công thức`,number:`Vui lòng nhập một số hợp lệ hoặc công thức`,formula:`Vui lòng nhập một công thức hợp lệ`,integer:`Vui lòng nhập một số nguyên hợp lệ hoặc công thức`,date:`Vui lòng nhập một ngày hợp lệ hoặc công thức`,list:`Vui lòng nhập ít nhất một tùy chọn hợp lệ`,listInvalid:`Nguồn danh sách phải là một danh sách phân tách hoặc một tham chiếu đến một hàng hoặc cột đơn.`,checkboxEqual:`Nhập các giá trị khác nhau cho các ô được chọn và không được chọn.`,formulaError:`Phạm vi tham chiếu chứa dữ liệu không hiển thị, vui lòng điều chỉnh lại phạm vi`,listIntersects:`Phạm vi đã chọn không thể giao với phạm vi quy tắc`,primitive:`Các giá trị tùy chỉnh cho ô được chọn và không được chọn không được phép sử dụng công thức.`},any:{title:`Bất kỳ giá trị`,error:`Nội dung của ô này vi phạm quy tắc xác thực`},list:{title:`Danh sách thả xuống`,name:`Giá trị phải nằm trong danh sách`,error:`Đầu vào phải nằm trong phạm vi chỉ định`,emptyError:`Vui lòng nhập một giá trị`,add:`Thêm tùy chọn`,dropdown:`Chọn một`,options:`Nguồn tùy chọn`,customOptions:`Tùy chỉnh`,refOptions:`Tham chiếu dữ liệu`,formulaError:`Nguồn danh sách phải là danh sách dữ liệu đã được phân chia rõ ràng, hoặc là tham chiếu đến một hàng hoặc cột đơn.`,edit:`Biên tập`},listMultiple:{title:`Danh sách thả xuống - Chọn nhiều`,dropdown:`Chọn nhiều`},decimal:{title:`Số thập phân`},whole:{title:`Số nguyên`},checkbox:{title:`Hộp kiểm`,error:`Nội dung của ô này vi phạm quy tắc xác thực`,tips:`Sử dụng giá trị tùy chỉnh trong ô`,checked:`Giá trị khi chọn`,unchecked:`Giá trị khi không chọn`}}}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?module.exports=t():typeof define==`function`&&define.amd?define([],t):(e=typeof globalThis<`u`?globalThis:e||self,e.UniverSheetsDataValidationZhCN=t())})(this,function(){return{"sheets-data-validation":{operators:{between:`介于`,greaterThan:`大于`,greaterThanOrEqual:`大于或等于`,lessThan:`小于`,lessThanOrEqual:`小于或等于`,equal:`等于`,notEqual:`不等于`,notBetween:`未介于`,legal:`是合法类型`},ruleName:{between:`介于 {FORMULA1} 和 {FORMULA2} 之间`,greaterThan:`大于 {FORMULA1}`,greaterThanOrEqual:`大于或等于 {FORMULA1}`,lessThan:`小于 {FORMULA1}`,lessThanOrEqual:`小于或等于 {FORMULA1}`,equal:`等于 {FORMULA1}`,notEqual:`不等于 {FORMULA1}`,notBetween:`在 {FORMULA1} 和 {FORMULA2} 范围之外`,legal:`是一个合法的 {TYPE}`},errorMsg:{between:`值必须介于 {FORMULA1} 和 {FORMULA2} 之间`,greaterThan:`值必须大于 {FORMULA1}`,greaterThanOrEqual:`值必须大于或等于 {FORMULA1}`,lessThan:`值必须小于 {FORMULA1}`,lessThanOrEqual:`值必须小于或等于 {FORMULA1}`,equal:`值必须等于 {FORMULA1}`,notEqual:`值必须不等于 {FORMULA1}`,notBetween:`值必须在 {FORMULA1} 和 {FORMULA2} 范围之外`,legal:`值必须是一个合法的 {TYPE}`},date:{operators:{between:`介于`,greaterThan:`晚于`,greaterThanOrEqual:`晚于或等于`,lessThan:`早于`,lessThanOrEqual:`早于或等于`,equal:`等于`,notEqual:`不等于`,notBetween:`未介于`,legal:`是合法日期`},ruleName:{between:`介于 {FORMULA1} 和 {FORMULA2} 之间`,greaterThan:`晚于 {FORMULA1}`,greaterThanOrEqual:`晚于或等于 {FORMULA1}`,lessThan:`早于 {FORMULA1}`,lessThanOrEqual:`早于或等于 {FORMULA1}`,equal:`等于 {FORMULA1}`,notEqual:`不等于 {FORMULA1}`,notBetween:`在 {FORMULA1} 和 {FORMULA2} 范围之外`,legal:`是一个合法的日期`},errorMsg:{between:`必须为有效日期且介于 {FORMULA1} 和 {FORMULA2} 之间`,greaterThan:`必须为有效日期且晚于 {FORMULA1}`,greaterThanOrEqual:`必须为有效日期且晚于或等于 {FORMULA1}`,lessThan:`必须为有效日期且早于 {FORMULA1}`,lessThanOrEqual:`必须为有效日期且早于或等于 {FORMULA1}`,equal:`必须为有效日期且等于 {FORMULA1}`,notEqual:`必须为有效日期且不等于 {FORMULA1}`,notBetween:`必须为有效日期且在 {FORMULA1} 和 {FORMULA2} 范围之外`,legal:`值必须是一个合法的日期`},title:`日期`},textLength:{errorMsg:{between:`文本长度必须介于 {FORMULA1} 和 {FORMULA2} 之间`,greaterThan:`文本长度必须大于 {FORMULA1}`,greaterThanOrEqual:`文本长度必须大于或等于 {FORMULA1}`,lessThan:`文本长度必须小于 {FORMULA1}`,lessThanOrEqual:`文本长度必须小于或等于 {FORMULA1}`,equal:`文本长度必须等于 {FORMULA1}`,notEqual:`文本长度必须不等于 {FORMULA1}`,notBetween:`文本长度必须在 {FORMULA1} 和 {FORMULA2} 范围之外`},title:`文本长度`},custom:{ruleName:`自定义公式 {FORMULA1}`,title:`自定义公式`,validFail:`请输入合法的公式`,error:`此单元格的内容违反了验证规则`},validFail:{value:`请输入一个合法值`,common:`请输入值或公式`,number:`请输入合法的数字或公式`,formula:`请输入合法的公式`,integer:`请输入合法的整数或公式`,date:`请输入合法的日期或公式`,list:`请输入至少一个合法选项`,listInvalid:`列表源必须是分隔列表或对单行或列的引用。`,checkboxEqual:`为勾选和未勾选的单元格内容输入不同的值。`,formulaError:`引用范围内包含不可见的数据,请重新调整范围`,listIntersects:`所选范围不能和规则范围相交`,primitive:`自定义勾选和未勾选值不允许使用公式。`},any:{title:`任意值`,error:`此单元格的内容违反了验证规则`},list:{title:`下拉菜单`,name:`值必须是列表中的值`,error:`输入必须在指定的范围内`,emptyError:`请输入一个值`,add:`添加选项`,dropdown:`单选`,options:`选项来源`,customOptions:`自定义`,refOptions:`引用数据`,formulaError:`列表源必须是划定分界后的数据列表,或是对单一行或一列的引用。`,edit:`编辑`},listMultiple:{title:`下拉菜单-多选`,dropdown:`多选`},decimal:{title:`数字`},whole:{title:`整数`},checkbox:{title:`复选框`,error:`此单元格的内容违反了验证规则`,tips:`在单元格内使用自定义值`,checked:`选中值`,unchecked:`未选中值`}}}});
|